/* ========================================
   LIGHT MODE THEME OVERRIDES
   Shared across all Anna Nagar Reborn pages
   ======================================== */

/* Light mode CSS custom property overrides */
[data-theme="light"] {
  --dark: #FAFAF7; --card: #FFFFFF; --g9: #F0EFE9; --g8: #E5E3DC; --g7: #D6D4CC;
  --g4: #6B7280; --g3: #374151; --white: #111827;
  --red: #DC2626; --red-dark: #B91C1C; --gold: #D97706; --gold-light: #F59E0B;
}

/* Shared overrides for rgba-based styles */
[data-theme="light"] .navbar {
  background: rgba(250,250,247,0.94) !important;
  border-bottom-color: rgba(0,0,0,0.08) !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.06);
}
[data-theme="light"] .navbar::before {
  background: linear-gradient(90deg, transparent, rgba(217,119,6,0.06), rgba(220,38,38,0.06), transparent);
}
[data-theme="light"] .mobile-menu {
  background: rgba(250,250,247,0.98) !important;
}
[data-theme="light"] .mobile-menu .close-btn { color: #111827 !important; }
[data-theme="light"] .accent {
  background: linear-gradient(135deg, #DC2626, #D97706);
  -webkit-background-clip: text; -webkit-text-fill-color: transparent; background-clip: text;
}

/* Card borders & backgrounds — crisp with subtle depth */
[data-theme="light"] .problem-card,
[data-theme="light"] .sol-card,
[data-theme="light"] .dash-card,
[data-theme="light"] .gallery-item,
[data-theme="light"] .story-card,
[data-theme="light"] .help-card,
[data-theme="light"] .pillar-nav-item,
[data-theme="light"] .phase-card,
[data-theme="light"] .pcard,
[data-theme="light"] .bearer-card,
[data-theme="light"] .sym-card,
[data-theme="light"] .float-card {
  border-color: rgba(0,0,0,0.08) !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.04), 0 4px 16px rgba(0,0,0,0.04);
}

[data-theme="light"] .sol-card:hover,
[data-theme="light"] .phase-card:hover,
[data-theme="light"] .help-card:hover,
[data-theme="light"] .bearer-card:hover,
[data-theme="light"] .pillar-nav-item:hover {
  border-color: rgba(220,38,38,0.25) !important;
  box-shadow: 0 4px 20px rgba(220,38,38,0.08), 0 1px 3px rgba(0,0,0,0.06);
}

[data-theme="light"] .problem-card-overlay,
[data-theme="light"] .gallery-item-caption {
  background: linear-gradient(to top, rgba(250,250,247,0.95), transparent) !important;
}
[data-theme="light"] .problem-card-text,
[data-theme="light"] .gallery-item-caption {
  color: #111827 !important;
}

[data-theme="light"] .pillar-hero-overlay {
  background: linear-gradient(to top, rgba(250,250,247,0.97) 0%, rgba(250,250,247,0.6) 40%, rgba(250,250,247,0.2) 100%) !important;
}
[data-theme="light"] .pillar-hero-stats {
  border-top-color: rgba(0,0,0,0.1) !important;
}

[data-theme="light"] .story-card::before {
  color: rgba(217,119,6,0.2);
}

[data-theme="light"] .sol-tools span {
  background: rgba(217,119,6,0.1);
  border-color: rgba(217,119,6,0.25);
  color: #92400E;
}

[data-theme="light"] .cta-section {
  background: linear-gradient(135deg, rgba(220,38,38,0.04), rgba(217,119,6,0.06)) !important;
  border-color: rgba(217,119,6,0.2) !important;
}
[data-theme="light"] .btn-p { color: #fff !important; }
[data-theme="light"] .btn-s {
  background: #fff !important;
  border-color: rgba(0,0,0,0.15) !important;
  color: #111827 !important;
  box-shadow: 0 1px 2px rgba(0,0,0,0.05);
}
[data-theme="light"] .btn-s:hover {
  background: #F0EFE9 !important;
  border-color: rgba(220,38,38,0.2) !important;
}

[data-theme="light"] .pillar-nav {
  border-top-color: rgba(0,0,0,0.08) !important;
}

[data-theme="light"] .dash-row {
  border-bottom-color: rgba(0,0,0,0.06) !important;
}
[data-theme="light"] .dash-bar { background: #E5E3DC; }

[data-theme="light"] .problem-narrative {
  border-color: #D6D4CC !important;
}

/* Ticker */
[data-theme="light"] .ticker {
  border-color: rgba(0,0,0,0.06) !important;
  background: #fff !important;
}

/* Hero badge */
[data-theme="light"] .hero-badge {
  background: rgba(220,38,38,0.08);
  border-color: rgba(220,38,38,0.25);
}

/* Tags */
[data-theme="light"] .ptag { background: rgba(217,119,6,0.12); color: #92400E; }
[data-theme="light"] .tools span {
  background: #F0EFE9 !important;
  border-color: rgba(0,0,0,0.1) !important;
}
[data-theme="light"] .promise { border-top-color: rgba(0,0,0,0.06) !important; }
[data-theme="light"] .pcard.full,
[data-theme="light"] .bearer-card.lead {
  background: linear-gradient(135deg, rgba(220,38,38,0.03), rgba(217,119,6,0.05)) !important;
  border-color: rgba(217,119,6,0.2) !important;
}

[data-theme="light"] .bearer-avatar { border-color: rgba(0,0,0,0.12) !important; }
[data-theme="light"] .bearer-avatar.placeholder { background: linear-gradient(135deg, #E5E3DC, #D6D4CC) !important; }
[data-theme="light"] .sym-card.whistle img { filter: invert(0) !important; }

/* Footer */
[data-theme="light"] .footer {
  background: #F0EFE9 !important;
  border-top-color: rgba(0,0,0,0.08) !important;
}
[data-theme="light"] .footer-bottom { border-top-color: rgba(0,0,0,0.08) !important; }

/* Hero image overlays */
[data-theme="light"] .hero-image-overlay {
  background: linear-gradient(to top, rgba(250,250,247,0.95), transparent) !important;
}
[data-theme="light"] .hero-image-name { color: #111827 !important; }

/* Live wait banner */
[data-theme="light"] .live-wait-banner {
  background: #fff !important;
  border-color: rgba(0,0,0,0.1) !important;
  box-shadow: 0 2px 8px rgba(0,0,0,0.06);
}

/* CTA section radial */
[data-theme="light"] .cta-section::before {
  background: radial-gradient(ellipse at center, rgba(220,38,38,0.04) 0%, transparent 70%);
}

/* Loader bar */
[data-theme="light"] .loader-bar { background: #E5E3DC; }
[data-theme="light"] #preloader img { filter: invert(0) !important; mix-blend-mode: multiply; }

/* FC bar */
[data-theme="light"] .fc-bar { background: #E5E3DC; }

/* Hero sweep & glow — subtle in light mode */
[data-theme="light"] .hero-scan::before { filter: blur(4px); opacity: 0.6; }
[data-theme="light"] .hero-scan::after { box-shadow: inset 0 0 30px rgba(220,38,38,0.03), inset 0 0 60px rgba(217,119,6,0.02) !important; }
[data-theme="light"] .hero-image-wrapper { background: #FAFAF7 !important; }
[data-theme="light"] .hero-image-wrapper::after { opacity: 0.2; }
/* Vision section image container in light mode */
[data-theme="light"] .vision-img-wrap { background: #FAFAF7 !important; border: 1px solid rgba(0,0,0,0.06) !important; }

/* Table overrides for voter-booth & all pages */
[data-theme="light"] table th {
  background: #F0EFE9 !important;
  color: #111827 !important;
  border-color: rgba(0,0,0,0.1) !important;
}
[data-theme="light"] table td {
  border-color: rgba(0,0,0,0.06) !important;
}
[data-theme="light"] table tr:hover td {
  background: rgba(217,119,6,0.06) !important;
}

/* Wait badges keep their colors */
[data-theme="light"] .wait-badge { color: #fff !important; }

/* Queue cards */
[data-theme="light"] .queue-card {
  border-color: rgba(0,0,0,0.08) !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.04), 0 4px 16px rgba(0,0,0,0.04);
}

/* ===== REPORT ISSUE PAGE ===== */
[data-theme="light"] .report-form,
[data-theme="light"] .report-card,
[data-theme="light"] .heatmap-card {
  border-color: rgba(0,0,0,0.08) !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.04), 0 4px 16px rgba(0,0,0,0.04);
}
[data-theme="light"] input, [data-theme="light"] select, [data-theme="light"] textarea {
  background: #fff !important;
  border-color: rgba(0,0,0,0.15) !important;
  color: #111827 !important;
  box-shadow: inset 0 1px 2px rgba(0,0,0,0.04);
}
[data-theme="light"] input:focus, [data-theme="light"] select:focus, [data-theme="light"] textarea:focus {
  border-color: #D97706 !important;
  box-shadow: 0 0 0 3px rgba(217,119,6,0.12);
}
[data-theme="light"] input::placeholder, [data-theme="light"] textarea::placeholder {
  color: #9CA3AF !important;
}
/* Stat cards — vibrant numbers */
[data-theme="light"] .stat-card {
  background: #fff !important;
  border: 1px solid rgba(0,0,0,0.08) !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.04), 0 4px 16px rgba(0,0,0,0.04);
}
[data-theme="light"] .stat-value {
  color: #D97706 !important;
}
/* Category cards */
[data-theme="light"] .category-card {
  background: #fff !important;
  border: 1px solid rgba(0,0,0,0.08) !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.04), 0 4px 16px rgba(0,0,0,0.04);
}
[data-theme="light"] .category-card:hover {
  border-color: rgba(217,119,6,0.3) !important;
  box-shadow: 0 4px 20px rgba(217,119,6,0.12) !important;
  transform: translateY(-4px);
}
[data-theme="light"] .category-count {
  color: #D97706 !important;
}
[data-theme="light"] .trend {
  background-color: rgba(220,38,38,0.1) !important;
  color: #DC2626 !important;
}
/* Progress bar */
[data-theme="light"] .progress-bar {
  background-color: #E5E3DC !important;
}
/* How It Works section */
[data-theme="light"] .how-it-works {
  background: linear-gradient(135deg, #F0EFE9 0%, #E5E3DC 100%) !important;
  border-color: rgba(0,0,0,0.06) !important;
}
/* Step numbers — keep white text on red bg */
[data-theme="light"] .step-number {
  color: #fff !important;
  box-shadow: 0 4px 12px rgba(220,38,38,0.25);
}
/* Form section */
[data-theme="light"] .form-section {
  border-color: rgba(0,0,0,0.08) !important;
  background: #fff !important;
}
/* Heatmap */
[data-theme="light"] .heatmap-grid > div {
  border-color: rgba(0,0,0,0.08) !important;
}
[data-theme="light"] .overlay {
  background-color: rgba(250,250,247,0.85) !important;
}
/* Dashboard section */
[data-theme="light"] .dashboard-section {
  box-shadow: 0 1px 3px rgba(0,0,0,0.04);
}
/* Success modal */
[data-theme="light"] .modal-content {
  background: #fff !important;
  border-color: rgba(0,0,0,0.1) !important;
}
/* Submit button keeps white text */
[data-theme="light"] .submit-btn,
[data-theme="light"] .search-btn { color: #fff !important; }

/* ===== VOTER BOOTH PAGE ===== */
[data-theme="light"] .search-container {
  background: #fff !important;
  border-color: rgba(0,0,0,0.08) !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.06) !important;
}
[data-theme="light"] .search-tabs {
  border-bottom-color: rgba(0,0,0,0.08) !important;
}
[data-theme="light"] .result-card {
  border-color: #D97706 !important;
  background: #fff !important;
}
[data-theme="light"] .result-header {
  border-bottom-color: rgba(0,0,0,0.08) !important;
}
[data-theme="light"] .result-status {
  background: rgba(220,38,38,0.1);
  color: #DC2626;
}
[data-theme="light"] .map-placeholder {
  background: linear-gradient(135deg, #F0EFE9 0%, #E5E3DC 100%);
  border-color: #D97706;
}
[data-theme="light"] .booths-table {
  border-color: rgba(0,0,0,0.08) !important;
}
[data-theme="light"] .booths-table thead {
  border-bottom-color: #D97706 !important;
}
[data-theme="light"] .booth-ward {
  background: rgba(217,119,6,0.12);
  color: #92400E;
}
[data-theme="light"] .queue-how-card {
  border-color: rgba(0,0,0,0.08) !important;
  background: #fff !important;
}
[data-theme="light"] .wait-result {
  background: linear-gradient(135deg, rgba(34,197,94,0.06), rgba(217,119,6,0.04));
  border-color: rgba(34,197,94,0.2);
}
[data-theme="light"] .directory-search input,
[data-theme="light"] .directory-filter {
  background: #fff !important;
  border-color: rgba(0,0,0,0.15) !important;
  color: #111827 !important;
}

/* Info section cards */
[data-theme="light"] .info-section {
  background: linear-gradient(135deg, #F0EFE9 0%, #E5E3DC 100%) !important;
}
[data-theme="light"] .info-card {
  background: #fff !important;
  border-color: rgba(0,0,0,0.08) !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.04), 0 4px 16px rgba(0,0,0,0.04);
}
[data-theme="light"] .info-card:hover {
  border-color: rgba(217,119,6,0.25) !important;
  box-shadow: 0 4px 20px rgba(217,119,6,0.1);
}
[data-theme="light"] .emergency-box {
  background: rgba(220,38,38,0.06) !important;
  border-left-color: #DC2626 !important;
}

/* FAQ */
[data-theme="light"] .faq-item {
  border-color: rgba(0,0,0,0.08) !important;
}
[data-theme="light"] .faq-question {
  background: #F0EFE9 !important;
}
[data-theme="light"] .faq-question:hover {
  background: #E5E3DC !important;
  color: #D97706 !important;
}
[data-theme="light"] .faq-answer {
  background: #fff !important;
}

/* Division cards (voter-booth) */
[data-theme="light"] .division-card {
  background: #fff !important;
  border-color: rgba(0,0,0,0.08) !important;
  box-shadow: 0 1px 3px rgba(0,0,0,0.04), 0 4px 16px rgba(0,0,0,0.04);
}
[data-theme="light"] .division-card:hover {
  border-color: rgba(217,119,6,0.3) !important;
  box-shadow: 0 4px 20px rgba(217,119,6,0.12);
}

/* Voter ID section */
[data-theme="light"] .voter-id-section {
  background: linear-gradient(135deg, #F0EFE9 0%, #E5E3DC 100%) !important;
}
[data-theme="light"] .voter-card-demo {
  background: #fff !important;
  border-color: rgba(0,0,0,0.1) !important;
  box-shadow: 0 4px 24px rgba(0,0,0,0.08);
}

/* Weather card */
[data-theme="light"] .weather-card {
  background: linear-gradient(135deg, #FFFBEB, #FEF3C7) !important;
  border-color: rgba(217,119,6,0.2) !important;
}

/* ===== PILLAR DETAIL PAGE ===== */
[data-theme="light"] .pillar-hero {
  background: linear-gradient(135deg, #F0EFE9 0%, #E5E3DC 100%) !important;
}

/* Smooth transitions */
body, .navbar, .phase-card, .pcard, .bearer-card, .sym-card, .float-card,
.live-wait-banner, .footer, .ticker, .sol-card, .dash-card, .story-card,
.help-card, .pillar-nav-item, .problem-narrative, .cta-section, .hero-image-overlay,
.stat-card, .category-card, .info-card, .search-container, .result-card,
.division-card, .faq-item, .faq-question {
  transition: background 0.4s, color 0.4s, border-color 0.4s, box-shadow 0.4s;
}

/* ===== THEME TOGGLE BUTTON ===== */
.theme-toggle {
  position: fixed;
  bottom: 24px;
  right: 24px;
  z-index: 1001;
  width: 52px;
  height: 52px;
  border-radius: 50%;
  border: 1px solid rgba(255,255,255,0.08);
  background: #0A0A0A;
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  box-shadow: 0 4px 20px rgba(0,0,0,0.3);
  transition: all 0.3s;
  backdrop-filter: blur(10px);
}
.theme-toggle:hover { transform: scale(1.1); box-shadow: 0 6px 28px rgba(0,0,0,0.4); }
.theme-toggle svg { width: 22px; height: 22px; transition: transform 0.3s; }
.theme-toggle:hover svg { transform: rotate(20deg); }
.theme-toggle .icon-sun { display: none; }
.theme-toggle .icon-moon { display: block; }
[data-theme="light"] .theme-toggle {
  background: #fff;
  color: #111827;
  border-color: rgba(0,0,0,0.1);
  box-shadow: 0 2px 12px rgba(0,0,0,0.1);
}
[data-theme="light"] .theme-toggle:hover {
  box-shadow: 0 4px 20px rgba(0,0,0,0.15);
}
[data-theme="light"] .theme-toggle .icon-sun { display: block; }
[data-theme="light"] .theme-toggle .icon-moon { display: none; }

/* ===== LANGUAGE TOGGLE BUTTON (navbar) ===== */
.lang-toggle {
  height: 32px;
  padding: 0 14px;
  border-radius: 16px;
  border: 1px solid rgba(255,255,255,0.12);
  background: rgba(255,255,255,0.06);
  color: #fff;
  display: flex;
  align-items: center;
  justify-content: center;
  cursor: pointer;
  transition: all 0.3s;
  font-family: var(--sans), 'Inter', -apple-system, sans-serif;
  font-size: 0.78rem;
  font-weight: 700;
  letter-spacing: 0.02em;
  flex-shrink: 0;
  margin-left: 8px;
}
.lang-toggle:hover { background: rgba(255,255,255,0.12); }
[data-theme="light"] .lang-toggle {
  background: rgba(0,0,0,0.05);
  color: #111827;
  border-color: rgba(0,0,0,0.1);
}
[data-theme="light"] .lang-toggle:hover {
  background: rgba(0,0,0,0.1);
}
@media (max-width: 480px) {
  .lang-toggle { height: 28px; padding: 0 10px; font-size: 0.72rem; margin-left: 4px; }
}
