/**************************************
 * SLOT CARDS
 **************************************/
.slot-card {
  border: 1px solid #d1d5db;         /* gray-300 */
  background: #ffffff;
  border-radius: 10px;
  padding: 12px;
  box-shadow: 0 1px 4px rgba(0,0,0,0.06);
  display: flex;
  flex-direction: column;
  align-items: center;
  transition: all .15s ease;
}

.dark .slot-card {
  border-color: #374151;             /* gray-700 */
  background: #1f2937;               /* gray-800 */
}

.slot-card:hover {
  border-color: #60a5fa;             /* blue-400 */
  box-shadow: 0 3px 10px rgba(0,0,0,0.18);
  transform: translateY(-1px);
}


/**************************************
 * WEATHER ICON (sprite sheet)
 **************************************/
.event-weather-icon {
  --icon-size: 40px;
  --frames: 12;        /* 0..10 + 11 unavailable */
  --i-unavail: 11;

  width: var(--icon-size);
  height: var(--icon-size);

  background-image: url("/static/img/icons/icon_weather.svg");
  background-repeat: no-repeat;

  /* EXACT same calculation as LT */
  background-size: calc(var(--frames) * 100%) 100%;
  background-position: calc(
      (var(--i, var(--i-unavail)) / (var(--frames) - 1)) * 100%
  ) 0%;

  /* Visibility improvements */
  background-color: #2d2d2d;
  border: 2px solid #000;
  border-radius: 6px;
}


/**************************************
 * RAIN BAR + TOOLTIP
 **************************************/
.rain-bar {
  position: relative;
  width: 100%;
  height: 6px;
  background: #1f2937;     /* slate-800 */
  border-radius: 4px;
  overflow: hidden;
}

.dark .rain-bar {
  background: #111827;     /* slate-900 */
}

.rain-bar-fill {
  height: 100%;
  background: #3b82f6;     /* blue-500 */
  transition: width .25s ease;
}

.rain-bar:hover::after {
  content: attr(data-tooltip);
  position: absolute;
  top: -24px;
  left: 0;
  padding: 2px 6px;
  font-size: 11px;
  background: black;
  color: white;
  border-radius: 4px;
  pointer-events: none;
  white-space: nowrap;
  opacity: 0.9;
}
