/* Shared appearance controls for all Crewleaf surfaces. */
:root {color-scheme:light; --theme-surface:#fff; --theme-text:#21372f; --theme-border:#dce4de;}
.appearance-control {position:fixed;right:16px;bottom:16px;z-index:80;display:flex;align-items:center;gap:8px;padding:8px 12px;border:1px solid var(--theme-border);border-radius:30px;background:var(--theme-surface);color:var(--theme-text);font:500 12px/1.4 system-ui;box-shadow:0 3px 16px #0001;}
.appearance-control select {background:var(--theme-surface);color:var(--theme-text);border:0;min-height:32px;font:inherit;max-width:90px;cursor:pointer;}
:root[data-theme=dark] {color-scheme:dark;--paper:#101b18;--white:#192720;--ink:#e9f1e8;--muted:#b1c1b7;--line:#3b5147;--green:#bddd9b;--lime:#d6ebac;--pale:#263b2d;--amber:#f5ce89;--amber-bg:#3a2e1d;--theme-surface:#192720;--theme-text:#e9f1e8;--theme-border:#3b5147;background:#101b18;color:#e9f1e8;}
[data-theme=dark] body {background:#101b18;color:#e9f1e8;}
[data-theme=dark] :is(.sidebar,.topbar,.panel,.event-card,.dialog,.modal,dialog,.account-card,.profile-card,.card,.offline-panel,.booking-editor,.flight-fields,.table-wrap,.person-card,.portal-header,.landing-header,.site-header,.pricing-card,.plan-card,.feature-card,.faq-item,.preview-banner,.calendar-choice,.import-event,.import-review-card) {background:#192720;color:#e9f1e8;border-color:#3b5147;}
[data-theme=dark] :is(input,select,textarea) {background:#101b18;color:#e9f1e8;border-color:#526c5d;}
[data-theme=dark] :is(h1,h2,h3,h4,label,legend,strong,summary,.brand,.wordmark,.section-nav a,.account-nav a,.text-link,.quick-contact,.confirmation,.ticket-name,.field,.page-heading p,.nav-item) {color:inherit;}
[data-theme=dark] :is(.muted,.form-help,.status-line,.footer-note,small,.eyebrow,.guest-note) {color:#b1c1b7;}
[data-theme=dark] :is(.btn,button.secondary,.button.secondary) {background:#243a30;color:#e9f1e8;border-color:#526c5d;}
[data-theme=dark] :is(.btn.primary,.button,button.primary,.primary.full) {background:#c9e8a8;color:#14281f;border-color:#c9e8a8;}
[data-theme=dark] :is(.hero,.next-card,.day-hero) {background:#234c3c;color:#f2f8ee;}
[data-theme=dark] :is(.hero h2,.next-card h2,.day-hero h2,.hero .eyebrow,.day-hero .eyebrow) {color:#f2f8ee;}
[data-theme=dark] :is(.notice,.tip,.badge,.check,.check-grid label,.flight-booking,.portal-booking-shortcut,.tabs,.event-icon,.avatar,.sample-notice,.day-picker,.import-source,.confirmation-row,.stats .stat) {background:#263b2d;color:#e0edda;border-color:#3b5147;}
[data-theme=dark] :is(.notice.warn,.pending,.badge.pending,.warn,.issue) {background:#3a2e1d;color:#f5ce89;border-color:#695033;}
[data-theme=dark] :is(.dialog-header,.dialog-footer,.modal-header,.modal-footer,th,.event-detail,.details-row,.operations-panel,.readiness-issue) {border-color:#3b5147;}
[data-theme=dark] :is(.dialog-header,.dialog-footer,th) {background:#192720;color:#e9f1e8;}
[data-theme=dark] a {color:#c9e8a8;}
[data-theme=dark] .nav button.active {background:#314e3b;color:#e9f1e8;}
[data-theme=dark] :is(.landing,.pricing-page) {background:#101b18;}
[data-theme=dark] :is(.hero-description,.hero-note,.section-description,.faq-answer,.feature-description) {color:#b1c1b7;}
@media(max-width:680px){.appearance-control{position:absolute;top:16px;bottom:auto;right:14px;font-size:11px;padding:4px 8px;gap:4px;box-shadow:none}.appearance-control select{min-height:36px;max-width:75px}}
@media print {.appearance-control{display:none!important} :root[data-theme=dark]{color-scheme:light} [data-theme=dark] body,[data-theme=dark] .panel,[data-theme=dark] .event-card{background:white!important;color:black!important}}

[data-theme=dark] :is(.itinerary-preview,.details-section,.preview-footer,.confirmation-label,.password-control button){background:#263b2d;color:#e9f1e8}
[data-theme=dark] :is(.scene-note,.closing-section){background:#234c3c;color:#f2f8ee}
[data-theme=dark] :is(.feature p,.detail-note p,.step-foot,.step-number,.micro-label,.sample-caption,.preview-published,.hero h1 em){color:#b1c1b7}
[data-theme=dark] .button-lime{background:#c9e8a8;color:#14281f}
@media(max-width:680px){body:has(.site-header) .appearance-control{position:static;width:max-content;margin:12px auto}body:has(.site-header){padding-bottom:0}}

@media(max-width:680px){.site-header .header-inner{flex-wrap:wrap}.site-header .appearance-control{margin:0 0 12px auto}}

[data-theme=dark] h1 span{color:#c9e8a8}
@media print{[data-theme=dark] body *{color:#111!important;background-color:transparent!important;border-color:#bbb!important}}
@media(max-width:680px){body:has(.preview-banner) .appearance-control{position:static;width:max-content;margin:12px 18px 100px auto}}
