/* ============================================
   TRAVUNET DARK MODE
   ============================================ */

[data-theme="dark"] {
    --tv-primary: #2ec4f6;
    --tv-primary-dark: #0db3ea;
    --tv-primary-light: #0c2a3a;
    --tv-accent: #fbbf24;
    --tv-ink: #e2e8f0;
    --tv-muted: #94a3b8;
    --tv-line: #1e293b;
    --tv-surface: #0f172a;
    --tv-soft: #1e293b;
    --tv-success: #34d399;
    color-scheme: dark;
}

[data-theme="dark"] body,
[data-theme="dark"] .premium-home {
    background: #0b1120;
    color: #e2e8f0;
}

/* Navbar */
[data-theme="dark"] .navbar {
    background: rgba(15,23,42,.88);
    border-bottom-color: rgba(255,255,255,.06);
}
[data-theme="dark"] .navbar.tv-scrolled {
    background: rgba(15,23,42,.96);
}
[data-theme="dark"] .nav-menu a { color: #94a3b8; }
[data-theme="dark"] .nav-menu a:hover,
[data-theme="dark"] .nav-menu a.active { color: #e2e8f0; }
[data-theme="dark"] .sign-in-pill {
    border-color: #334155;
    background: #1e293b;
    color: #e2e8f0 !important;
}
[data-theme="dark"] .currency-select {
    border-color: #334155;
    background: #1e293b;
    color: #e2e8f0;
}
[data-theme="dark"] .dropdown-menu {
    background: #1e293b;
    border-color: #334155;
}
[data-theme="dark"] .dropdown-menu a { color: #cbd5e1; }
[data-theme="dark"] .dropdown-menu a:hover { background: #334155; color: #fff; }

/* Cards & surfaces */
[data-theme="dark"] .service-search-panel,
[data-theme="dark"] .service-result-card,
[data-theme="dark"] .flt-card,
[data-theme="dark"] .flt-sidebar,
[data-theme="dark"] .flt-results-bar,
[data-theme="dark"] .empty-results-state,
[data-theme="dark"] .service-loading {
    background: #1e293b;
    border-color: #334155;
    color: #e2e8f0;
}
[data-theme="dark"] .flt-footer { background: #162032; border-color: #334155; }
[data-theme="dark"] .service-result-footer { border-color: #334155; }

/* Inputs */
[data-theme="dark"] .field-shell {
    background: #0f172a;
    border-color: #334155;
    color: #e2e8f0;
}
[data-theme="dark"] .field-shell input,
[data-theme="dark"] .field-shell select,
[data-theme="dark"] .field-shell textarea { color: #e2e8f0; }
[data-theme="dark"] .field-shell i { color: var(--tv-primary); }
[data-theme="dark"] input[type="date"] { color-scheme: dark; }

/* Tags */
[data-theme="dark"] .flt-tag { background: #0f172a; border-color: #334155; color: #94a3b8; }
[data-theme="dark"] .flt-tag.cabin { background: var(--tv-primary-light); color: var(--tv-primary); }
[data-theme="dark"] .flt-tag.good { background: #052e16; color: #34d399; }
[data-theme="dark"] .flt-tag.warn { background: #451a03; color: #fbbf24; }

/* Filter sidebar */
[data-theme="dark"] .flt-check { color: #cbd5e1; }
[data-theme="dark"] .flt-check:hover { color: #fff; }
[data-theme="dark"] .flt-filter-group { border-color: #334155; }
[data-theme="dark"] .flt-sidebar-header { border-color: #334155; }
[data-theme="dark"] .flt-price-range input[type="range"] { background: #334155; }
[data-theme="dark"] .flt-results-bar select { background: #0f172a; border-color: #334155; color: #e2e8f0; }

/* Hotel cards */
[data-theme="dark"] .hotel-result-body { color: #e2e8f0; }
[data-theme="dark"] .hotel-amenities { color: #34d399; }
[data-theme="dark"] .service-rating { background: #451a03; color: #fbbf24; }

/* Hero */
[data-theme="dark"] .service-hero { background-blend-mode: multiply; }

/* Footer */
[data-theme="dark"] .footer { background: #020617; border-color: #1e293b; }
[data-theme="dark"] .footer-section h3,
[data-theme="dark"] .footer-section h4 { color: #e2e8f0; }
[data-theme="dark"] .footer-bottom { border-color: #1e293b; }

/* Homepage sections */
[data-theme="dark"] .premium-section:nth-child(even) { background: #0f172a; }
[data-theme="dark"] .trust-grid article { background: #1e293b; border-color: #334155; }
[data-theme="dark"] .trust-grid article i { background: var(--tv-primary-light); }
[data-theme="dark"] .flight-deal { background: #1e293b; border-color: #334155; color: #e2e8f0; }
[data-theme="dark"] .flight-deal:hover { border-color: var(--tv-primary); }
[data-theme="dark"] .flight-deal small { color: #94a3b8; }
[data-theme="dark"] .product-card { background: #1e293b; border-color: #334155; }
[data-theme="dark"] .product-card h3 { color: #e2e8f0; }
[data-theme="dark"] .car-card-premium { background: #1e293b; border-color: #334155; }
[data-theme="dark"] .car-card-premium div:last-child { border-color: #334155; }
[data-theme="dark"] .section-heading h2 { color: #e2e8f0; }

/* Premium search widget */
[data-theme="dark"] .premium-search .search-content { background: #1e293b; }
[data-theme="dark"] .premium-field { border-color: #334155; }
[data-theme="dark"] .premium-field input,
[data-theme="dark"] .premium-field select { color: #e2e8f0; }
[data-theme="dark"] .trip-options select { background: #0f172a; border-color: #334155; color: #e2e8f0; }
[data-theme="dark"] .premium-suggestions { background: #1e293b; border-color: #334155; }
[data-theme="dark"] .traveler-popover { background: #1e293b; border-color: #334155; }

/* Load more */
[data-theme="dark"] .tv-load-more-btn { background: #1e293b; border-color: #334155; }
[data-theme="dark"] .tv-load-more-btn:hover { background: var(--tv-primary-light); }

/* Auth */
[data-theme="dark"] .auth-card { background: #1e293b; }

/* Scrollbar */
[data-theme="dark"] ::-webkit-scrollbar-thumb { background: #334155; }
[data-theme="dark"] ::-webkit-scrollbar-thumb:hover { background: #475569; }

/* Dark mode toggle button */
.theme-toggle {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 36px;
    height: 36px;
    border: 1px solid var(--tv-line, #e2e8f0);
    border-radius: 8px;
    background: transparent;
    color: var(--tv-muted, #64748b);
    cursor: pointer;
    transition: all .25s ease;
    font-size: .9rem;
    flex-shrink: 0;
}
.theme-toggle:hover {
    background: var(--tv-primary-light, #e6f7fb);
    color: var(--tv-primary, #0db3ea);
    border-color: var(--tv-primary, #0db3ea);
}
[data-theme="dark"] .theme-toggle { border-color: #334155; color: #94a3b8; }
[data-theme="dark"] .theme-toggle:hover { background: #334155; color: #fbbf24; }
