:root{color-scheme:dark}
:root[data-theme=light]{color-scheme:light;--black:#f8f4eb;--panel:#efe8d9;--gold:#95651e;--gold-light:#765019;--white:#30271c;--muted:#71634f;--line:#98702b40}
.header-actions,.booking-header-tools{display:flex;align-items:center;gap:22px;flex-shrink:0}
.theme-toggle{display:grid;place-items:center;width:42px;height:42px;padding:10px;border:1px solid var(--line);border-radius:50%;background:transparent;color:var(--gold-light);flex-shrink:0;cursor:pointer}
.theme-toggle:hover{border-color:var(--gold);background:#bb8c3012}
.theme-toggle svg{width:19px;height:19px;fill:none;stroke:currentColor;stroke-width:1.4;stroke-linecap:round;stroke-linejoin:round}
.theme-icon-moon{display:none}
:root[data-theme=light] .theme-icon-moon{display:block}
:root[data-theme=light] .theme-icon-sun{display:none}
.not-found-page>.theme-toggle{position:fixed;right:24px;top:24px}

/* Ivory and bronze preserve the poster's gold identity with readable light surfaces. */
:root[data-theme=light] body{background:var(--black);color:var(--white)}
:root[data-theme=light] body::after{opacity:.025}
:root[data-theme=light] .site-header,:root[data-theme=light] .booking-header{background:var(--black)}
:root[data-theme=light] .desktop-nav a,:root[data-theme=light] .booking-exit{color:#645640}
:root[data-theme=light] .hero{background:radial-gradient(ellipse at 50% 85%,#c0985420,transparent 65%),var(--black)}
:root[data-theme=light] .simple-home .hero-vignette{background:linear-gradient(180deg,#f8f4eb00 30%,#f8f4eb22 70%,#f8f4eb 100%),radial-gradient(ellipse at 50% 30%,#f8f4ebc0 8%,#f8f4eb70 40%,transparent 70%)}
:root[data-theme=light] .simple-home .hero h1{background-image:linear-gradient(135deg,#654312,#a47120 45%,#704914 85%);filter:none}
:root[data-theme=light] .simple-home .hero-company>p{color:#756044}
:root[data-theme=light] .simple-home .hero-company h2{color:var(--gold-light)}
:root[data-theme=light] .simple-home .hero-company>span{color:#76521f}
:root[data-theme=light] .hero-edition{color:#786346}
:root[data-theme=light] .hero-stars{opacity:.3}
:root[data-theme=light] .event-location,:root[data-theme=light] .event-inclusions{color:#6e5d42}
:root[data-theme=light] .event-note,:root[data-theme=light] .itinerary-note,:root[data-theme=light] .film-caption,:root[data-theme=light] .event-footer,:root[data-theme=light] .event-booking>p{color:#75644b}
:root[data-theme=light] .event-travel>div>p:not(.event-note):not(.copy-status),:root[data-theme=light] .event-venue address,:root[data-theme=light] .compact-detail>p{color:#67583f}
:root[data-theme=light] .event-travel strong,:root[data-theme=light] .event-venue h3,:root[data-theme=light] .compact-detail summary{color:#6e4e20}
:root[data-theme=light] .button-outline:hover{background:#b58b3315}
:root[data-theme=light] .itinerary-jumps a{color:#796342}
:root[data-theme=light] .itinerary-jumps a[aria-current=true]{color:#704b16}
:root[data-theme=light] .session-text .micro,:root[data-theme=light] .session-counter>span:last-child{color:#7a6645}
:root[data-theme=light] .session-icon,:root[data-theme=light] .session-counter{color:#90621e}
:root[data-theme=light] .session-orb{background:radial-gradient(ellipse at 25% 20%,#c49b4030,transparent 70%);border-color:#9e742b60;box-shadow:0 0 50px #b68a2112}
:root[data-theme=light] .session-orb::before{border-color:#aa81302a}
:root[data-theme=light] .session-orb::after{border-color:#a47b323a}
:root[data-theme=light] .itinerary-session[data-current-phase=morning] .session-orb{background:radial-gradient(ellipse at center,#cba4453b,transparent 72%)}
:root[data-theme=light] .itinerary-group>h3{color:#7a541b}
:root[data-theme=light] .itinerary-group>h3>span{color:#7e6b4c}
:root[data-theme=light] .itinerary-line{background:#9c793440}
:root[data-theme=light] .itinerary-line>span{background:linear-gradient(#b88d39,#855918);box-shadow:0 0 10px #a77b3625}
:root[data-theme=light] .stage-marker{background:var(--black);border-color:#9f78325e;color:#856126}
:root[data-theme=light] .stage-copy h4{color:#766647}
:root[data-theme=light] .stage-copy p{color:#776952}
:root[data-theme=light] .itinerary-stage.is-current .stage-marker{background:#875b1b;border-color:#875b1b;color:#fff6e1;box-shadow:0 0 0 5px #b58c3110,0 0 24px #a57a3620}
:root[data-theme=light] .itinerary-stage.is-current .stage-copy h4{color:#664315}
:root[data-theme=light] .itinerary-stage.is-current .stage-copy p{color:#5e4f38}
:root[data-theme=light] .itinerary-stage.is-complete .stage-marker{border-color:#a57a2b;color:#79551d}
:root[data-theme=light] .itinerary-stage.is-complete .stage-copy h4{color:#6e5024}
:root[data-theme=light] .cinema-play{color:#f8e4b7}
:root[data-theme=light] .cinema .play-ring{border-color:#e0ba6d;outline-color:#e0ba6d50}
:root[data-theme=light] .cinema .play-ring .icon{fill:#f5dfaa}
:root[data-theme=light] .mobile-nav{background:var(--black);box-shadow:0 35px 40px #6f54201c}
:root[data-theme=light] .mobile-nav a{color:#6f4c19}
:root[data-theme=light] .share-dialog{background:var(--black);color:var(--white);box-shadow:0 0 80px #6f542025}
:root[data-theme=light] .share-dialog textarea{background:#efe9dc;color:#51432e}
:root[data-theme=light] .share-dialog::backdrop{background:#2e251bb3}
:root[data-theme=light] .not-found-page{background:radial-gradient(ellipse at bottom,#c49b4320,var(--black))}

/* Booking screens and dynamically added guest fields use the same preference. */
:root[data-theme=light] .booking-page{background:radial-gradient(ellipse at 40% 100%,#d1ae6620,transparent 65%),var(--black)}
:root[data-theme=light] .booking-stages li{color:#7b6c54}
:root[data-theme=light] .booking-stages li.is-current{color:#6c4918}
:root[data-theme=light] .booking-stages li>span:first-child{color:#8a682e}
:root[data-theme=light] .booking-stages li.is-complete{color:#79613a}
:root[data-theme=light] .booking-aside{background:radial-gradient(ellipse at 70% 30%,#cda44e1f,transparent 65%)}
:root[data-theme=light] .aside-year{color:#92703c}
:root[data-theme=light] .aside-facts>p{color:#7b5a26}
:root[data-theme=light] .aside-facts span,:root[data-theme=light] .aside-selection{color:#6e5d43}
:root[data-theme=light] .question-description strong,:root[data-theme=light] .contact-detail{color:#624c2b}
:root[data-theme=light] .large-input::placeholder,:root[data-theme=light] .guest-input::placeholder{color:#7b6c56}
:root[data-theme=light] .field-label,:root[data-theme=light] .field-help,:root[data-theme=light] .guest-context{color:#756345}
:root[data-theme=light] .choice-copy{color:#443621}
:root[data-theme=light] .choice-copy small{color:#716046}
:root[data-theme=light] .choice-key{color:#795824}
:root[data-theme=light] .choice input:checked+.choice-body .choice-key{color:#21170a}
:root[data-theme=light] .booking-footer{background:#f8f4ebf7}
:root[data-theme=light] .booking-progress{background:#d4c4a3}
:root[data-theme=light] #progress-label,:root[data-theme=light] .keyboard-hint{color:#786447}
:root[data-theme=light] .booking-back,:root[data-theme=light] .keyboard-hint kbd{color:#725321}
:root[data-theme=light] .prototype-label{color:#77551f}
:root[data-theme=light] .prototype-label small{color:#72634c}
:root[data-theme=light] .form-error{color:#a04225}
:root[data-theme=light] .large-input[aria-invalid=true],:root[data-theme=light] .guest-input[aria-invalid=true],:root[data-theme=light] .guest-stay-options input[aria-invalid=true]+span{border-color:#a7502c}
:root[data-theme=light] .directory-status,:root[data-theme=light] .masjid-result small{color:#756345}
:root[data-theme=light] .masjid-distance{color:#7e5a20}
:root[data-theme=light] .selected-masjid p,:root[data-theme=light] .reuse-contact{color:#6e5c40}
:root[data-theme=light] .review-lead{color:#614b29}
:root[data-theme=light] .summary-item dt,:root[data-theme=light] .review-block-head h2{color:#775a2d}
:root[data-theme=light] .summary-item dd{color:#3c3020}
:root[data-theme=light] .guest-summary-head h3>span,:root[data-theme=light] .guest-summary>p{color:#6e5c40}
:root[data-theme=light] .review-consent{color:#67502b}
:root[data-theme=light] .review-endnote,:root[data-theme=light] .contact-note,:root[data-theme=light] .empty-guests{color:#79684c}
:root[data-theme=light] .completion-summary>p{color:#68512f}
:root[data-theme=light] .completion-summary span{color:#7b694d}
:root[data-theme=light] .guest-list-count,:root[data-theme=light] .guest-list-note{color:#79613d}
:root[data-theme=light] .guest-editor-card .guest-row-remove{background:var(--black)}
:root[data-theme=light] .guest-editor-card .field-label,:root[data-theme=light] .guest-stay-field>legend{color:#785c30}
:root[data-theme=light] .guest-input{background:#ffffff60}
:root[data-theme=light] .guest-input:disabled,:root[data-theme=light] .large-input:disabled{opacity:.85;background:#b7944420;color:#715b35}
:root[data-theme=light] .guest-stay-options label>span{color:#6e542d;background:#ffffff40}
:root[data-theme=light] .guest-stay-options small{color:#7c694a}
:root[data-theme=light] .guest-stay-options input:checked+span{background:#c99e3920;color:#5d3e12;border-color:#996d23}
:root[data-theme=light] .guest-list-empty p{color:#77664a}
@media(max-width:850px){.header-actions{gap:17px}.booking-header-tools{gap:15px}}
@media(max-width:650px){.header-actions{gap:10px}.theme-toggle{width:40px;height:40px;padding:10px}.theme-toggle svg{width:18px;height:18px}.booking-header .prototype-label{display:block;font-size:6px;letter-spacing:.6px;text-align:right}.booking-header .prototype-label .gold-dot{display:none}.booking-header .prototype-label small{display:none}.booking-header-tools{gap:0}:root[data-theme=light] .itinerary-session{background:#f8f4ebf5}}
@media(max-width:360px){.booking-header .prototype-label{font-size:5px;letter-spacing:.3px}.booking-header{gap:9px}.theme-toggle{width:38px;height:38px}.header-actions{gap:6px}}
@media print{.theme-toggle{display:none!important}}
