/* ═══════════════════════════════════════
   EVENTS MAP — DARK THEME OVERRIDES
   Covers: /events/map, inline hero-map
   ═══════════════════════════════════════ */

/* ─── MAP CONTAINER ─── */
.hero-map-container {
  background: var(--t-bg-deep) !important;
}

/* ─── LOADING / ERROR OVERLAYS ─── */
.map-loading-overlay,
.map-error-overlay {
  background: rgba(5, 5, 8, 0.92) !important;
  color: var(--t-text-primary) !important;
}

.map-loading-overlay .spinner-border {
  color: var(--t-accent) !important;
}

.error-message {
  color: var(--t-text-secondary) !important;
}

/* ─── SEARCH / FILTER BAR ─── */
.hero-map-header {
  background: var(--t-bg-card) !important;
  border-bottom: 1px solid var(--t-border) !important;
}

.map-search-input,
.hero-map-search input {
  background: var(--t-bg-deep) !important;
  border: 1px solid var(--t-border) !important;
  color: var(--t-text-primary) !important;
  border-radius: 0 !important;
}

.map-search-input:focus,
.hero-map-search input:focus {
  border-color: var(--t-accent) !important;
  box-shadow: 0 0 0 2px rgba(230, 57, 70, 0.15) !important;
}

.map-search-input::placeholder,
.hero-map-search input::placeholder {
  color: var(--t-text-dim) !important;
}

/* ─── INFO WINDOWS (map popups) ─── */
.custom-info-window,
.gm-style-iw,
.gm-style-iw-d {
  background: var(--t-bg-card) !important;
  color: var(--t-text-primary) !important;
}

.custom-info-window h4,
.custom-info-window .info-title {
  color: var(--t-text-hero) !important;
  font-family: var(--t-font-headline);
}

.custom-info-window .info-location {
  color: var(--t-text-muted) !important;
}

.custom-info-window .info-description {
  color: var(--t-text-secondary) !important;
}

.custom-info-window a {
  color: var(--t-accent) !important;
}

/* Google Maps info window close button */
.gm-style-iw button[aria-label="Close"] {
  filter: invert(1) !important;
}

/* ─── MAP SIDEBAR / EVENT LIST ─── */
.map-sidebar,
.map-event-list {
  background: var(--t-bg-card) !important;
  border: 1px solid var(--t-border) !important;
}

.map-event-item {
  border-bottom: 1px solid var(--t-border) !important;
  color: var(--t-text-primary) !important;
}

.map-event-item:hover {
  background: var(--t-bg-card-hover) !important;
}

.map-event-item h5,
.map-event-item .event-title {
  color: var(--t-text-hero) !important;
}

.map-event-item .event-date,
.map-event-item .event-location {
  color: var(--t-text-muted) !important;
}

/* ─── MAP CONTROLS ─── */
.map-controls,
.map-filter-bar {
  background: var(--t-bg-card) !important;
  border: 1px solid var(--t-border) !important;
}

.map-controls select,
.map-filter-bar select {
  background: var(--t-bg-deep) !important;
  border: 1px solid var(--t-border) !important;
  color: var(--t-text-secondary) !important;
  border-radius: 0 !important;
}

/* ─── EVENTS MAP PAGE WRAPPER ─── */
.events-map-page {
  background: var(--t-bg-abyss) !important;
}

.events-map-page .section-title {
  color: var(--t-text-hero) !important;
  font-family: var(--t-font-headline);
}

.events-map-page .text-muted {
  color: var(--t-text-muted) !important;
}
