/**
 * Premium site light theme — toggled via html[data-fc-theme="light"].
 * Dark remains the default design; these rules override CDN Tailwind utilities where needed.
 */

[data-fc-theme='light'] {
    color-scheme: light;
}

[data-fc-theme='light'] body#top {
    background-color: #f1f5f9 !important;
    color: #0f172a !important;
}

/* Core ink surfaces → light */
[data-fc-theme='light'] .bg-ink {
    background-color: #f1f5f9 !important;
}
[data-fc-theme='light'] .bg-ink-soft,
[data-fc-theme='light'] .bg-ink-soft\/30,
[data-fc-theme='light'] .bg-ink-soft\/40,
[data-fc-theme='light'] .bg-ink-soft\/80,
[data-fc-theme='light'] .bg-ink-soft\/90,
[data-fc-theme='light'] .bg-ink-soft\/95,
[data-fc-theme='light'] .bg-ink-soft\/98 {
    background-color: rgba(255, 255, 255, 0.96) !important;
}
[data-fc-theme='light'] .bg-ink\/80,
[data-fc-theme='light'] .bg-ink\/90,
[data-fc-theme='light'] .bg-ink\/93,
[data-fc-theme='light'] .bg-ink\/95 {
    background-color: rgba(241, 245, 249, 0.95) !important;
}

/* Subtle grid / hero accents in light */
[data-fc-theme='light'] .bg-grid-fade {
    background-image: radial-gradient(ellipse 80% 50% at 50% -20%, rgba(24, 145, 237, 0.08), transparent) !important;
}

/* Borders: white/5 → slate */
[data-fc-theme='light'] .border-white\/5 {
    border-color: rgba(15, 23, 42, 0.08) !important;
}
[data-fc-theme='light'] .border-white\/10 {
    border-color: rgba(15, 23, 42, 0.1) !important;
}
[data-fc-theme='light'] .bg-black\/30 {
    background-color: rgba(15, 23, 42, 0.22) !important;
}
[data-fc-theme='light'] .border-white\/25 {
    border-color: rgba(15, 23, 42, 0.18) !important;
}
[data-fc-theme='light'] .divide-white\/5 > :not([hidden]) ~ :not([hidden]) {
    border-color: rgba(15, 23, 42, 0.06) !important;
}
[data-fc-theme='light'] .divide-white\/10 > :not([hidden]) ~ :not([hidden]) {
    border-color: rgba(15, 23, 42, 0.1) !important;
}

/* Primary text on light shells */
[data-fc-theme='light'] .text-slate-100,
[data-fc-theme='light'] .text-slate-200 {
    color: #1e293b !important;
}
[data-fc-theme='light'] .text-slate-300 {
    color: #475569 !important;
}
[data-fc-theme='light'] .text-slate-400 {
    color: #64748b !important;
}
[data-fc-theme='light'] .text-slate-500 {
    color: #64748b !important;
}
[data-fc-theme='light'] .text-slate-600 {
    color: #475569 !important;
}

/* Headings / body copy that used text-white — except hero (#search) & solid buttons */
[data-fc-theme='light'] .text-white {
    color: #0f172a !important;
}
/* Hero stays light-on-image (headlines outside the pale search panel) */
[data-fc-theme='light'] #search .text-white,
[data-fc-theme='light'] #search .text-white\/95 {
    color: #ffffff !important;
}
/* Light search panel sits on hero — From/To etc. must not inherit forced white text */
[data-fc-theme='light'] #search #fc-search-panel input[type='text'],
[data-fc-theme='light'] #search #fc-search-panel input[type='search'],
[data-fc-theme='light'] #search #fc-search-panel select,
[data-fc-theme='light'] #search #fc-search-panel textarea {
    color: #0f172a !important;
    -webkit-text-fill-color: #0f172a !important;
}
[data-fc-theme='light'] #search #fc-search-panel input::placeholder,
[data-fc-theme='light'] #search #fc-search-panel textarea::placeholder {
    color: #94a3b8 !important;
    -webkit-text-fill-color: #94a3b8 !important;
    opacity: 1 !important;
}
[data-fc-theme='light'] #search #fc-search-panel select option {
    color: #0f172a;
    background-color: #ffffff;
}
[data-fc-theme='light'] #search .text-sky-300\/90 {
    color: rgba(186, 230, 253, 0.95) !important;
}
[data-fc-theme='light'] #search #fc-recap .text-slate-100 {
    color: #0f172a !important;
}
[data-fc-theme='light'] #search #fc-recap .text-white,
[data-fc-theme='light'] #search #fc-recap span.font-semibold {
    color: #0c4a6e !important;
}
[data-fc-theme='light'] .bg-brand .text-white,
[data-fc-theme='light'] a.bg-brand,
[data-fc-theme='light'] button.bg-brand,
[data-fc-theme='light'] button[type='submit'].bg-brand,
[data-fc-theme='light'] span.inline-flex.bg-brand,
[data-fc-theme='light'] span.rounded-full.bg-brand,
[data-fc-theme='light'] .fc-wa-btn,
[data-fc-theme='light'] .fc-wa-btn .text-white,
[data-fc-theme='light'] .bg-\[\#0a1f3d\] .text-white,
[data-fc-theme='light'] .bg-\[\#0a1f3d\] span.text-white {
    color: #ffffff !important;
}
[data-fc-theme='light'] .text-gold,
[data-fc-theme='light'] .text-amber-500 {
    color: #b45309 !important;
}

/* Top strip + header */
[data-fc-theme='light'] .border-b.border-white\/5.bg-ink-soft\/90 .text-white,
[data-fc-theme='light'] .border-b.border-white\/5.bg-ink-soft\/90 .text-white\/75 {
    color: #334155 !important;
}
[data-fc-theme='light'] header.fc-site-header {
    background-color: rgba(255, 255, 255, 0.88) !important;
    border-color: rgba(15, 23, 42, 0.08) !important;
}
[data-fc-theme='light'] header .border-white\/25 {
    border-color: rgba(15, 23, 42, 0.15) !important;
}
[data-fc-theme='light'] header .bg-white\/10 {
    background-color: rgba(15, 23, 42, 0.06) !important;
}
[data-fc-theme='light'] #fc-nav-toggle {
    border-color: rgba(15, 23, 42, 0.2) !important;
    background-color: rgba(255, 255, 255, 0.9) !important;
    color: #0f172a !important;
}
[data-fc-theme='light'] #fc-nav-toggle .fc-nav-bars-lines span {
    background-color: #0f172a !important;
}
[data-fc-theme='light'] #fc-nav-toggle .fc-nav-close {
    color: #0f172a !important;
    stroke: #0f172a !important;
}

/* Nav links */
[data-fc-theme='light'] nav[aria-label='Primary'] a.text-white,
[data-fc-theme='light'] nav[aria-label='Primary'] a.text-slate-300 {
    color: #475569 !important;
}
[data-fc-theme='light'] nav[aria-label='Primary'] a:hover {
    color: #0f172a !important;
}
/* Tailwind hover:text-white — keep readable on light shells */
[data-fc-theme='light'] .hover\:text-white:hover {
    color: #0f172a !important;
}
[data-fc-theme='light'] #search .hover\:text-white:hover {
    color: #ffffff !important;
}

/* Destinations flyout */
[data-fc-theme='light'] .group .rounded-2xl.border.border-white\/10.bg-ink-soft\/95 {
    background-color: rgba(255, 255, 255, 0.98) !important;
    border-color: rgba(15, 23, 42, 0.1) !important;
    box-shadow:
        0 20px 50px rgba(15, 23, 42, 0.12),
        0 0 0 1px rgba(255, 255, 255, 0.8) inset !important;
}
[data-fc-theme='light'] .group .rounded-2xl a.text-slate-200 {
    color: #334155 !important;
}
[data-fc-theme='light'] .group .rounded-2xl a.text-white {
    color: #0f172a !important;
}

/* Mobile panel */
[data-fc-theme='light'] #fc-mobile-panel {
    background-color: rgba(255, 255, 255, 0.98) !important;
    border-color: rgba(15, 23, 42, 0.1) !important;
}
[data-fc-theme='light'] #fc-mobile-panel nav a {
    color: #334155 !important;
}
[data-fc-theme='light'] #fc-mobile-panel .text-slate-500 {
    color: #64748b !important;
}
[data-fc-theme='light'] #fc-mobile-panel .border-white\/10.bg-ink\/90 {
    background-color: #f8fafc !important;
}
[data-fc-theme='light'] #fc-nav-backdrop {
    background-color: rgba(15, 23, 42, 0.35) !important;
}

/* Footer */
[data-fc-theme='light'] #main-footer {
    background-color: #e2e8f0 !important;
    border-color: rgba(15, 23, 42, 0.1) !important;
    color: #475569 !important;
}
[data-fc-theme='light'] #main-footer .text-white {
    color: #0f172a !important;
}
[data-fc-theme='light'] #main-footer .text-slate-200,
[data-fc-theme='light'] #main-footer .text-slate-300,
[data-fc-theme='light'] #main-footer .text-slate-400 {
    color: #64748b !important;
}
[data-fc-theme='light'] #main-footer .text-slate-500 {
    color: #94a3b8 !important;
}
[data-fc-theme='light'] #main-footer .rounded-lg.bg-\[\#0a1f3d\] {
    background: linear-gradient(180deg, #f8fafc 0%, #eef2f7 100%) !important;
    box-shadow: 0 8px 30px rgba(15, 23, 42, 0.08) !important;
}
[data-fc-theme='light'] #main-footer a:hover {
    color: #0f172a !important;
}

/* Glass cards (booking, home) */
[data-fc-theme='light'] .fc-glass {
    background: rgba(255, 255, 255, 0.88) !important;
    border-color: rgba(15, 23, 42, 0.08) !important;
    box-shadow: 0 8px 32px rgba(15, 23, 42, 0.08) !important;
}
[data-fc-theme='light'] .fc-glass-light {
    background: rgba(255, 255, 255, 0.72) !important;
    border-color: rgba(15, 23, 42, 0.07) !important;
}

/* Booking itinerary box */
[data-fc-theme='light'] .fc-booking-itinerary-wrap {
    background: linear-gradient(180deg, #ffffff 0%, #f8fafc 100%) !important;
    border-color: rgba(24, 145, 237, 0.25) !important;
    box-shadow: inset 0 1px 0 rgba(255, 255, 255, 0.9) !important;
}
[data-fc-theme='light'] .ring-white\/5,
[data-fc-theme='light'] .ring-white\/10 {
    --tw-ring-color: rgba(15, 23, 42, 0.06) !important;
}

/* Loading overlay */
[data-fc-theme='light'] #fc-loading-overlay {
    background-color: rgba(241, 245, 249, 0.94) !important;
}
[data-fc-theme='light'] #fc-loading-overlay .rounded-3xl.border.border-white\/10.bg-ink-soft\/95 {
    background-color: rgba(255, 255, 255, 0.96) !important;
    border-color: rgba(15, 23, 42, 0.1) !important;
    color: #0f172a !important;
}
[data-fc-theme='light'] #fc-loading-overlay .text-white {
    color: #0f172a !important;
}

/* Theme toggle control */
.fc-theme-toggle {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: center;
    width: 2.75rem;
    height: 2.75rem;
    min-width: 2.75rem;
    min-height: 2.75rem;
    border-radius: 0.75rem;
    border: 2px solid rgba(255, 255, 255, 0.22);
    background: rgba(255, 255, 255, 0.08);
    color: #f8fafc;
    cursor: pointer;
    transition:
        background 0.2s ease,
        border-color 0.2s ease,
        color 0.2s ease,
        transform 0.15s ease;
    -webkit-tap-highlight-color: transparent;
}
.fc-theme-toggle:hover {
    background: rgba(24, 145, 237, 0.18);
    border-color: rgba(24, 145, 237, 0.45);
}
.fc-theme-toggle:focus-visible {
    outline: 2px solid #1891ed;
    outline-offset: 2px;
}
.fc-theme-toggle:active {
    transform: scale(0.96);
}
[data-fc-theme='light'] .fc-theme-toggle {
    border-color: rgba(15, 23, 42, 0.15);
    background: rgba(255, 255, 255, 0.95);
    color: #0f172a;
    box-shadow: 0 1px 2px rgba(15, 23, 42, 0.06);
}
[data-fc-theme='light'] .fc-theme-toggle:hover {
    background: #e0f2fe;
    border-color: rgba(24, 145, 237, 0.45);
}
.fc-theme-toggle .fc-theme-icon-moon,
.fc-theme-toggle .fc-theme-icon-sun {
    width: 1.25rem;
    height: 1.25rem;
}
[data-fc-theme='dark'] .fc-theme-toggle .fc-theme-icon-sun,
[data-fc-theme='light'] .fc-theme-toggle .fc-theme-icon-moon {
    display: none;
}
[data-fc-theme='dark'] .fc-theme-toggle .fc-theme-icon-moon,
[data-fc-theme='light'] .fc-theme-toggle .fc-theme-icon-sun {
    display: block;
}

/* Inputs on dark sections — booking forms often use bg-ink-soft inputs */
[data-fc-theme='light'] input.border-white\/10,
[data-fc-theme='light'] textarea.border-white\/10,
[data-fc-theme='light'] select.border-white\/10 {
    background-color: #ffffff !important;
    color: #0f172a !important;
    border-color: #cbd5e1 !important;
}

/* Home: Featured / Discover / Deals — card polish in light mode */
[data-fc-theme='light'] #destinations article,
[data-fc-theme='light'] section article.overflow-hidden.rounded-2xl.border.border-white\/10 {
    box-shadow: 0 4px 20px rgba(15, 23, 42, 0.07) !important;
}
[data-fc-theme='light'] #destinations article:hover,
[data-fc-theme='light'] section article.overflow-hidden.rounded-2xl.border.border-white\/10:hover {
    box-shadow: 0 8px 28px rgba(15, 23, 42, 0.1) !important;
}
[data-fc-theme='light'] .group .rounded-full.bg-white\/90.text-ink,
[data-fc-theme='light'] span.rounded-full.bg-white\/90.text-sm.font-bold.text-ink {
    color: #0a0f1a !important;
    background-color: rgba(255, 255, 255, 0.98) !important;
    box-shadow: 0 2px 12px rgba(15, 23, 42, 0.12) !important;
}

/* “Best price” row — light panel */
[data-fc-theme='light'] section.border-t.border-white\/5.bg-ink-soft\/40 .bg-brand\/20 {
    background-color: rgba(24, 145, 237, 0.12) !important;
}

/* Mobile bottom bar */
[data-fc-theme='light'] .fc-mobile-actions {
    background-color: rgba(255, 255, 255, 0.98) !important;
    border-color: rgba(15, 23, 42, 0.1) !important;
    backdrop-filter: blur(12px);
}
[data-fc-theme='light'] .fc-mobile-actions a.border-white\/15.bg-white\/5.text-white {
    background-color: #f1f5f9 !important;
    border-color: #cbd5e1 !important;
    color: #0f172a !important;
}

/* Desktop chat FAB ring */
[data-fc-theme='light'] .fc-open-chat.fixed.bottom-24 {
    border-color: rgba(24, 145, 237, 0.35) !important;
}

/* Hero search panel — trip pills track in light (inside #search) */
[data-fc-theme='light'] #search .fc-trip-pills {
    background: rgba(255, 255, 255, 0.65) !important;
    border: 1px solid rgba(15, 23, 42, 0.08) !important;
}
[data-fc-theme='light'] #search .fc-trip-pills label span {
    color: #64748b;
}
[data-fc-theme='light'] #search label:has(.fc-trip-radio:checked) span {
    color: #ffffff !important;
}

/* Home section backgrounds between bands */
[data-fc-theme='light'] section#destinations {
    background-color: #f8fafc !important;
}
[data-fc-theme='light'] section.border-t.border-white\/5.bg-ink-soft\/30 {
    background-color: #f1f5f9 !important;
}
[data-fc-theme='light'] section.py-16:not(#destinations):not(#search) {
    background-color: #ffffff !important;
}
