/* ==========================================================================
   KIDS BIRTHDAY PARTY VENUE — DARK MODE STYLESHEET (dark-mode.css)
   ========================================================================== */

/* Dark Mode root overrides applied when body or html has .dark-theme */
body.dark-theme {
  --bg-cream: #090d16;
  --bg-white: #111827;
  --surface-alt: #0f172a;
  --surface-card: #1e293b;

  --border-soft: #2d3748;
  --border-subtle: #1f293d;

  --text-main: #f8fafc;
  --text-body: #cbd5e1;
  --text-muted: #94a3b8;
  --text-light: #64748b;

  --primary-light: rgba(255, 94, 136, 0.15);
  --secondary-light: rgba(124, 92, 191, 0.2);
  --accent-amber-light: rgba(245, 158, 11, 0.18);
  --accent-mint-light: rgba(16, 185, 129, 0.18);
  --accent-sky-light: rgba(14, 165, 233, 0.18);

  background-color: var(--bg-cream);
  color: var(--text-body);
}

body.dark-theme .site-header {
  background: rgba(15, 23, 42, 0.94);
  border-bottom-color: var(--border-soft);
}

body.dark-theme .site-header.scrolled {
  background: rgba(15, 23, 42, 0.98);
  border-bottom-color: #334155;
  box-shadow: 0 4px 20px rgba(0, 0, 0, 0.4);
}

body.dark-theme .nav-link {
  color: #cbd5e1;
}

body.dark-theme .nav-link:hover,
body.dark-theme .nav-link.active {
  color: var(--primary);
}

body.dark-theme .header-toggle-group,
body.dark-theme .nav-login-btn,
body.dark-theme .nav-toggle-btn {
  background: #1e293b;
  border-color: #334155;
  color: #f8fafc;
}

body.dark-theme .header-toggle-btn {
  color: #cbd5e1;
}

body.dark-theme .header-toggle-btn:hover,
body.dark-theme .header-toggle-btn.active {
  background: #334155;
  color: var(--primary);
}

body.dark-theme .mobile-nav-content {
  background: #111827;
  border-left: 1px solid #334155;
}

body.dark-theme .mobile-nav-header,
body.dark-theme .mobile-nav-footer {
  border-color: #1f2937;
  background: #0f172a;
}

body.dark-theme .mobile-nav-link {
  color: #f8fafc;
}

body.dark-theme .mobile-nav-link:hover,
body.dark-theme .mobile-nav-link.active {
  background: rgba(255, 94, 136, 0.15);
  color: var(--primary);
}

body.dark-theme .mobile-nav-close {
  background: #1e293b;
  color: #f8fafc;
}

/* Home & Section Surfaces */
body.dark-theme .home-hero-section {
  background: radial-gradient(circle at 80% 20%, rgba(255, 94, 136, 0.08) 0%, transparent 40%),
              radial-gradient(circle at 10% 80%, rgba(124, 92, 191, 0.08) 0%, transparent 40%),
              var(--bg-cream);
}

body.dark-theme .hero-image-wrapper {
  background: #1e293b;
  border: 1px solid #334155;
}

body.dark-theme .hero-badge-float {
  background: rgba(30, 41, 59, 0.95);
  border: 1px solid #334155;
  color: #f8fafc;
}

body.dark-theme .highlights-strip-section {
  background: #111827;
  border-color: #1f2937;
}

body.dark-theme .h2-themes-section {
  background: linear-gradient(180deg, #0b1120 0%, #111827 100%);
}

body.dark-theme .h2-themes-section .section-title {
  color: #f8fafc;
}

body.dark-theme .h2-themes-section .section-subtitle {
  color: #cbd5e1;
}

body.dark-theme .highlight-icon-box {
  background: #1e293b;
  color: #ff8ea9;
}

body.dark-theme .card,
body.dark-theme .package-full-card,
body.dark-theme .package-aside-card,
body.dark-theme .testimonial-card,
body.dark-theme .menu-food-card,
body.dark-theme .booking-calendar-wrapper,
body.dark-theme .sticky-summary-panel,
body.dark-theme .dash-widget,
body.dark-theme .auth-card,
body.dark-theme .stats-counter-strip {
  background: #1e293b;
  border-color: #334155;
  box-shadow: 0 4px 15px rgba(0, 0, 0, 0.25);
}

body.dark-theme .theme-card-overlay {
  background: linear-gradient(180deg, rgba(2, 6, 23, 0.1) 18%, rgba(2, 6, 23, 0.82) 72%, rgba(2, 6, 23, 0.94) 100%);
}

body.dark-theme .theme-card-overlay .btn {
  background: rgba(255, 255, 255, 0.08);
  border-color: rgba(255, 255, 255, 0.6);
  color: #ffffff;
}

body.dark-theme .theme-card-overlay .btn:hover {
  background: rgba(255, 255, 255, 0.16);
  border-color: rgba(255, 255, 255, 0.9);
  color: #ffffff;
}

body.dark-theme .journey-timeline-section {
  background: #0b1120;
}

body.dark-theme .timeline-step-badge {
  background: #1e293b;
  border-color: #334155;
  color: #ff8ea9;
}

body.dark-theme .comparison-table-wrapper {
  background: #1e293b;
  border-color: #334155;
}

body.dark-theme .comparison-table th {
  background: #0f172a;
  color: #f8fafc;
}

body.dark-theme .comparison-table td {
  border-bottom-color: #334155;
  color: #cbd5e1;
}

/* Forms & Inputs */
body.dark-theme .form-control,
body.dark-theme .form-select,
body.dark-theme textarea.form-control {
  background: #0f172a;
  border-color: #334155;
  color: #f8fafc;
}

body.dark-theme .form-control:focus,
body.dark-theme .form-select:focus,
body.dark-theme textarea.form-control:focus {
  border-color: var(--primary);
  background: #111827;
}

body.dark-theme .calendar-date-cell {
  background: #0f172a;
  border-color: #334155;
  color: #e2e8f0;
}

body.dark-theme .calendar-date-cell.disabled {
  background: #1e293b;
  color: #64748b;
}

body.dark-theme .hall-card-option {
  background: #0f172a;
  border-color: #334155;
  color: #f8fafc;
}

body.dark-theme .dashboard-sidebar {
  background: #111827;
  border-color: #1f2937;
}

body.dark-theme .dash-nav-item {
  color: #94a3b8;
}

body.dark-theme .dash-nav-item:hover,
body.dark-theme .dash-nav-item.active {
  background: rgba(255, 94, 136, 0.15);
  color: var(--primary);
}

body.dark-theme .social-btn {
  background: #0f172a;
  border-color: #334155;
  color: #f8fafc;
}

body.dark-theme .filter-btn {
  background: #1e293b;
  border-color: #334155;
  color: #cbd5e1;
}

body.dark-theme .filter-btn.active {
  background: var(--primary);
  color: #fff;
  border-color: var(--primary);
}

body.dark-theme .gallery-hover-overlay {
  background: linear-gradient(180deg, rgba(2, 6, 23, 0.08) 12%, rgba(2, 6, 23, 0.8) 70%, rgba(2, 6, 23, 0.94) 100%);
}

body.dark-theme .gallery-hover-overlay h4 {
  color: #ffffff;
}

body.dark-theme .gallery-hover-overlay p {
  color: #e2e8f0;
}

body.dark-theme .joyful-arrival-section .joyful-arrival-card {
  background: linear-gradient(135deg, rgba(19, 30, 50, 0.98), rgba(15, 23, 42, 0.92)) !important;
  border-color: rgba(255, 168, 92, 0.35) !important;
  box-shadow: 0 16px 35px rgba(0, 0, 0, 0.28);
}

body.dark-theme .joyful-arrival-section .section-title {
  color: #f8fafc !important;
}

body.dark-theme .joyful-arrival-section p,
body.dark-theme .joyful-arrival-section li {
  color: #e2e8f0 !important;
}

body.dark-theme .joyful-arrival-section .joyful-arrival-card,
body.dark-theme .theme-spotlight-section .theme-spotlight-card {
  background: linear-gradient(135deg, rgba(19, 30, 50, 0.98), rgba(15, 23, 42, 0.92)) !important;
  border-color: rgba(255, 168, 92, 0.35) !important;
  box-shadow: 0 16px 35px rgba(0, 0, 0, 0.28);
}

body.dark-theme .joyful-arrival-section .section-title,
body.dark-theme .theme-spotlight-section .section-title {
  color: #f8fafc !important;
}

body.dark-theme .joyful-arrival-section p,
body.dark-theme .joyful-arrival-section li,
body.dark-theme .theme-spotlight-section p,
body.dark-theme .theme-spotlight-section li {
  color: #e2e8f0 !important;
}

body.dark-theme .site-footer {
  background: #070d18;
}

body.dark-theme .section-title {
  color: var(--text-main);
}

body.dark-theme .section-subtitle {
  color: var(--text-muted);
}

/* Loader in dark mode */
body.dark-theme #page-loader {
  background: #090d16;
}
body.dark-theme .loader-brand {
  color: #f8fafc;
}
