/* Semantic light palette. Dark declarations retain their exact original fallback. */
:root[data-theme="light"] {
  --appearance-page:#eaf0f5; --appearance-surface:#fff;
  --appearance-subtle:#edf2f7; --appearance-raised:#f8fafc;
  --appearance-glass:rgba(255,255,255,.96); --appearance-wash:rgba(30,65,100,.045);
  --appearance-ink:#101c2b; --appearance-muted:#4b5e72;
  --appearance-border:#ced9e4; --appearance-divider:#e0e7ee;
  --appearance-action:#0869c4; --appearance-action-hover:#07559e;
  --appearance-selected:#e2efff; --appearance-on-action:#fff;
  --appearance-success:#096b46; --appearance-success-wash:#e6f5ed;
  --appearance-warning:#825000; --appearance-warning-wash:#fff3d9;
  --appearance-danger:#b32940; --appearance-danger-wash:#fff0f2;
  --appearance-overlay:rgba(17,30,46,.58);
  --appearance-shadow:rgba(30,50,75,.10);
  --appearance-decoration:rgba(30,65,100,.07);
  --bg:var(--appearance-page); --bg-2:var(--appearance-subtle);
  --surface:var(--appearance-surface); --surface-2:var(--appearance-raised);
  --text:var(--appearance-ink); --muted:var(--appearance-muted);
  --line:var(--appearance-border); --blue:var(--appearance-action);
  --blue-2:var(--appearance-action); --red:var(--appearance-danger);
  --shadow:0 18px 50px var(--appearance-shadow);
}
:root {color-scheme:dark}
:root[data-theme="light"] {color-scheme:light}
.appearance-control {display:flex;align-items:center;gap:8px;font:600 12px/1.4 Inter,system-ui,sans-serif;letter-spacing:normal;text-transform:none;min-width:0}
.appearance-control select {min-height:44px;max-width:100%;border:1px solid var(--line,#33475d);border-radius:9px;background:var(--surface,#14171c);color:var(--text,#f7f8fa);padding:8px 26px 8px 10px;font:inherit;cursor:pointer;color-scheme:inherit}
.appearance-control select:focus-visible,.appearance-personal>summary:focus-visible {outline:3px solid var(--blue,#4da3ff);outline-offset:3px}
.appearance-panel {padding:18px;border:1px solid var(--line);border-radius:14px;background:var(--surface);margin-bottom:18px}
.appearance-panel h3 {margin:0 0 8px;font-size:18px}
.appearance-panel p {margin:8px 0 0;color:var(--muted);font-size:13px}
.appearance-personal {position:relative}
.appearance-personal>summary {cursor:pointer;min-height:44px;display:flex;align-items:center;padding:8px;white-space:nowrap;font-size:12px}
.appearance-personal>.appearance-control {position:absolute;right:0;top:100%;z-index:120;padding:12px;background:var(--surface);border:1px solid var(--line);border-radius:12px;box-shadow:var(--shadow);width:220px}
.member-live-more .appearance-control,.admin-live-more .appearance-control {padding:8px;flex-wrap:wrap;color:var(--text)}
.member-live-more .appearance-control select,.admin-live-more .appearance-control select {width:100%}
/* Photographic stages deliberately remain dark islands, never image inversion. */
:root[data-theme="light"] :is(.hero,.weekend-stage,.media-caption,.category-showcase-media,.judging-stage,.community-cta,.community-section,.accommodation-visual,.planner-visual,.planner-context-preview:not(.planner-context-preview--crew),.member-auth-media,.member-live-carwash,.video-poster,.gallery-item) {
  --appearance-ink:#fff;--appearance-muted:#e0e8f1;--appearance-action:#8bc9ff;
  --appearance-border:rgba(255,255,255,.3);--appearance-glass:initial;--appearance-selected:initial;
  --appearance-surface:#0c1722;--appearance-subtle:#142535;--appearance-raised:#192c3e;
  --appearance-wash:rgba(255,255,255,.08);--text:#fff;--muted:#e0e8f1;
  color:#fff;
}
:root[data-theme="light"] .preview-choice-media {--appearance-glass:initial}
:root[data-theme="light"] .member-logged-hero[data-hero-state="photo"] .member-logged-hero-shade {background:linear-gradient(90deg,#fff 0%,rgba(255,255,255,.96) 23%,rgba(255,255,255,.85) 36%,rgba(255,255,255,.12) 58%,transparent 72%)}
:root[data-theme="light"] .site-header {background:rgba(255,255,255,.96);border-bottom-color:var(--line)}
:root[data-theme="light"] .brand-mark {background:#101d2c;border-color:#d3dfeb}
:root[data-theme="light"] .menu-btn span {background:var(--appearance-ink)}
:root[data-theme="light"] .merch-hero-copy h1 i {-webkit-text-stroke-color:var(--appearance-ink)}
:root[data-theme="light"] :is(.btn-primary,.admin-button--primary,.member-primary) {background:#0869c4;border-color:#0869c4;color:#fff}
:root[data-theme="light"] :is(.btn-primary,.admin-button--primary,.member-primary):hover {background:#07559e;color:#fff}
:root[data-theme="light"] .admin-action-count {color:#fff}
:root[data-theme="light"] :is(.member-live-quick .live-primary,.member-live-current button,.member-live-tabs button.is-active span,.admin-live-tabs button.is-active span) {color:#fff}
/* Let the existing table scroller, rather than the page, own wide payment rows. */
.admin-payment-workspace,.admin-payment-list {min-width:0}
:root[data-theme="light"] :is(.hero-glow,.admin-command-glow) {opacity:.25}
:root[data-theme="light"] :is(input,select,textarea) {accent-color:var(--appearance-action)}
:root[data-theme="light"] :is(button,input,select,textarea,a):focus-visible {outline-color:#0869c4}
:root[data-theme="light"] :is(button,input,select,textarea):disabled {opacity:.72}
/* QR code modules and quiet zones are intentionally theme independent. */
:root[data-theme="light"] :is([data-live-qr-image],[data-payment-qr],.member-qr-code,.member-live-qr-image) {background:#fff;color:#000}
.footer-bottom .appearance-control{margin-left:auto;color:var(--muted)}
/* These are component surfaces, not selected controls. Keep selection/focus blue. */
:root[data-theme="light"] :is(body,.history-section,.member-app){background:var(--appearance-page)}
:root[data-theme="light"] :is(.page-hero,.experience-section,.gallery-media-nav-wrap,.site-footer){background:var(--appearance-surface)}
:root[data-theme="light"] :is(.showshine-winners--v8,.planner-shell--v8,.info-card,.member-photo-upload,.member-gallery-status-card,.member-card-achievements){background:var(--appearance-surface)}
:root[data-theme="light"] :is(.category-showcase-copy,.member-gallery-item){background:var(--appearance-raised)}
:root[data-theme="light"] :is(.venue-card,.route-calculator){background:var(--appearance-surface)}
:root[data-theme="light"] :is(.choice,.stay-segment):not(.is-active){background:var(--appearance-surface)}
:root[data-theme="light"] :is(.choice,.stay-segment).is-active{background:var(--appearance-selected);border-color:var(--appearance-action)}
:root[data-theme="light"] .hero-media::after {background:linear-gradient(90deg,rgba(5,10,17,.76),rgba(5,10,17,.12) 74%),linear-gradient(0deg,#101c2b 0%,rgba(5,10,17,.55) 22%,transparent 65%)}
:root[data-theme="light"] .hero {border-bottom:8px solid var(--appearance-page)}
:root[data-theme="light"] .weekend-tab{background:var(--appearance-raised)}
:root[data-theme="light"] .weekend-tab.is-active{background:var(--appearance-selected);border-color:var(--appearance-action);box-shadow:inset 4px 0 var(--appearance-action)}
:root[data-theme="light"] .category-selector .winner-card{
  --appearance-glass:initial;--appearance-ink:#fff;--appearance-muted:#fff;
  --appearance-shadow:rgba(0,0,0,.8);
}
:root[data-theme="light"] .category-selector .winner-card .winner-thumb{filter:none}
:root[data-theme="light"] .category-selector .winner-card::before{background:linear-gradient(0deg,rgba(4,9,15,.94),rgba(4,9,15,.72) 24%,transparent 64%)}
:root[data-theme="light"] .category-selector .winner-card>span{background:rgba(4,9,15,.8);border-radius:4px;padding:4px}
:root[data-theme="light"] .category-selector .winner-card>small{background:rgba(4,9,15,.85)}
:root[data-theme="light"] .category-selector .winner-card.is-active{border-color:var(--appearance-action);box-shadow:0 0 0 2px var(--appearance-action)}
:root[data-theme="light"] .planner-topbar{background:var(--appearance-surface);box-shadow:none;border-radius:inherit}
:root[data-theme="light"] .planner-intro-v8 .section-title{text-shadow:none}
:root[data-theme="light"] .planner-topbar .planner-status{background:var(--appearance-warning-wash);color:var(--appearance-warning)}
:root[data-theme="light"] .info-contact{background:var(--appearance-selected)}
:root[data-theme="light"] .route-input-row button{color:var(--appearance-on-action)}
:root[data-theme="light"] .venue-map{--appearance-glass:initial}
:root[data-theme="light"] .venue-map::after{background:none}
:root[data-theme="light"] .venue-map iframe{filter:none}
:root[data-theme="light"] .gallery-hero{padding-block:130px 48px}
:root[data-theme="light"] .gallery-media-nav a{min-height:44px;font-size:13px}
:root[data-theme="light"] .member-merch-callout{background:var(--appearance-subtle)}
:root[data-theme="light"] .member-merch-callout[data-benefit-state="member"]{background:var(--appearance-subtle)}
:root[data-theme="light"] .overview-reservation-status::after{content:none}
:root[data-theme="light"] .overview-reservation-status.is-status-approved{border-color:#9acbb6;background:var(--appearance-success-wash)}
:root[data-theme="light"] .member-sidebar-logout{color:var(--appearance-danger);background:var(--appearance-surface)}
:root[data-theme="light"] .member-gallery-thumb{border-radius:8px}
:root[data-theme="light"] .member-gallery-thumb img{border-radius:8px}
:root[data-theme="light"] .member-photo-upload button[type="submit"]{background:var(--appearance-action);color:#fff;border-radius:10px;padding:13px 18px}
:root[data-theme="light"] .member-gallery-item .status-pending{color:var(--appearance-warning)}
:root[data-theme="light"] .member-gallery-item .status-rejected{color:var(--appearance-danger)}
:root[data-theme="light"] [data-reservation-car-save]{white-space:nowrap;width:auto;min-width:110px}
:root[data-theme="light"] .member-nav-external{background:transparent;border-color:transparent}
:root[data-theme="light"] .featured-achievement{background:var(--appearance-raised);border-color:var(--appearance-border)}
:root[data-theme="light"] :is(.admin-panel,.admin-payment-overview,.admin-payment-totals span,.admin-payment-editor,.admin-payment-table){background:var(--appearance-surface)}
:root[data-theme="light"] :is(.member-gallery-lightbox-close,.member-gallery-lightbox-nav){color:#fff}
:root[data-theme="light"] :is(.member-gallery-lightbox,.lightbox){--appearance-ink:#fff;--appearance-muted:#e0e8f1;color:#fff}
@media(min-width:1100px){
 :root[data-theme="light"] .history-layout{grid-template-columns:minmax(220px,.65fr) minmax(0,2fr);gap:48px}
}
@media(max-width:680px){
 .footer-bottom .appearance-control{margin-left:0;flex-wrap:wrap}
 :root[data-theme="light"] .gallery-hero{padding-block:110px 32px}
 :root[data-theme="light"] .member-logged-hero[data-hero-state="photo"] .member-logged-hero-shade{background:linear-gradient(0deg,rgba(255,255,255,.97),rgba(255,255,255,.9) 40%,rgba(255,255,255,.1) 85%)}
}
