/* Shared reading themes. Light keeps each guide's original palette. */
html[data-theme=light]{color-scheme:light}
html[data-theme=dark]{
  color-scheme:dark;
  --bg:#17191a;--canvas:#17191a;--page:#17191a;--paper:#222526;
  --surface:#222526;--surface-alt:#2b2e30;--surface-soft:#2b2e30;--paper-warm:#292c2d;
  --ink:#f0efeb;--ink-light:#d7d7d2;--text:#f0efeb;--text-2:#cbc7c0;--text-m:#b7b3ad;
  --muted:#b7b3ad;--faint:#aaa69f;--line:#464a4c;--line-dark:#686d6f;--line-strong:#686d6f;
  --rule:#464a4c;--rule-soft:#363a3c;--border:#464a4c;--border-soft:#686d6f;
  --accent:#a7cab8;--accent-dark:#214639;--accent-light:#b8d5c6;--accent-hover:#c5e0d2;
  --accent-soft:#293e35;--accent-t:#b8d5c6;--soft:#303a35;--link:#a8cde9;
  --tag-bg:#2b2e30;--tag-bdr:#464a4c;--tag-c:#cbc7c0;
  --green:#a2d0b5;--green-dark:#214639;--green-bg:#293e35;--green-soft:#293e35;
  --warm:#e6bd89;--warm-soft:#3d3328;--sun:#e6bd89;--sun-soft:#3d3328;
  --orange:#e6bd89;--orange-soft:#3d3328;--amber:#e6c788;--amber-bg:#3d3728;--amber-soft:#3d3728;
  --red:#efb1ac;--red-bg:#432e2e;--red-soft:#432e2e;--danger:#efb1ac;--danger-soft:#432e2e;
  --blue-bg:#293946;--blue-soft:#293946;--gray-bg:#313638;--dot:rgba(240,238,235,.05);
  --shadow:0 1px 4px rgba(0,0,0,.25);--sh:0 1px 3px rgba(0,0,0,.3);--sh-h:0 4px 12px rgba(0,0,0,.4);
  background:#17191a;color:var(--ink);
}
html[data-theme=dark] body{background-color:#17191a;color:var(--ink)}
html[data-theme=dark] :is(input,select,textarea){color:var(--ink);background-color:var(--surface);border-color:var(--line)}
html[data-theme=dark] :is(.site-bar,.site-header,.topbar,.bar,.section-nav,.nav-shell){background:rgba(23,25,26,.97);border-color:var(--line)}
html[data-theme=dark] :is(.hero-intro,.intro-copy,.standfirst,.home-hero .intro,.route-index-detail,.route-strip,.timeline-row p,.segment-body,.segment p,.weather-now p,.hour span,.decision p,.alert p,.top-nav a,.home-link,.recommendation-note,.output-list li,.not-first-list li,.final-order,.caution-box p,.caution-box strong,.lede,.feature-card>p,.day-event,.event-details p,.site-nav a,.section-tabs a,.cell-copy,.hours-primary){color:var(--ink-light)}
html[data-theme=dark] :is(.note,.plain-note,.decision,.specification-box,.output-list,.notice-box,.status-notice,.live-section){background:var(--surface-alt);color:var(--ink-light);border-color:var(--line)}
html[data-theme=dark] :is(.guide-table,.guide-table th,.guide-table td,.copy-button,.search-box input,.search-box button,.plain-button,.empty-state,.empty-state button,.filter-button,.sort-control select,.toast,.new-opening-note,.directory-table tr,#lounge .lounge-table tr){background:var(--surface);color:var(--ink);border-color:var(--line)}
html[data-theme=dark] :is(.guide-table thead th,.guide-table tbody tr:hover td,.guide-table tbody tr:hover,.recommended-row td,.tag,.status-pill,.site-footer){background:var(--surface-alt);color:var(--ink-light);border-color:var(--line)}
html[data-theme=dark] :is(.tag.is-spirits,.tag.is-cocktails,.tag.is-live,.tag.is-quiet,.tag.is-lounge,.status-pill.is-event){background:var(--accent-soft);color:var(--ink-light);border-color:var(--line)}
html[data-theme=dark] :is(.button:not(.secondary),.filter-button.is-active,.filter-btn.has-active,.lang-sw button.active,.section-title>span,.steps li::before,.to-top,.save-button.is-saved,.save-button:hover,.calendar-day.is-today .day-number){background:var(--accent);color:#17231d}
html[data-theme=dark] .button.secondary{color:var(--accent)}
html[data-theme=dark] :is(.button.primary,.month-tabs button.is-active,.category-row button.is-active,.calendar-arrows button:hover:not(:disabled),.event-links a:first-child,.event-links a:hover,.event-links button:hover){background:#384c42;color:#f0efeb;border-color:var(--accent)}
html[data-theme=dark] :is(.footer,.footer strong,.footer p){background:#222526;color:var(--ink-light)}
html[data-theme=dark] :is(.badge-online,.badge-new,.badge-status-older){background:var(--surface-alt);color:var(--ink-light)}
html[data-theme=dark] :is(.trail-red,.trail-yellow,.trail-green){color:var(--ink-light)}

/* These two pages originally followed the OS unconditionally. Explicit light
   overrides their media-query palettes even when the device uses dark mode. */
html[data-theme=light][data-guide=guides]{--bg:#f8f8f7;--surface:#fff;--surface-alt:#f5f5f4;--border:#e7e5e4;--border-soft:#d6d3d1;--text:#1c1917;--text-2:#57534e;--text-m:#78716c;--accent:hsl(243,75%,46%);--accent-soft:hsl(243,60%,94%);--accent-t:hsl(243,60%,35%);--tag-bg:#f5f5f4;--tag-bdr:#e7e5e4;--tag-c:#57534e;--sh:0 1px 3px rgba(28,25,23,.06);--sh-h:0 4px 12px rgba(28,25,23,.08);--dot:rgba(28,25,23,.06)}
html[data-theme=light][data-guide=francophone-sport-careers]{--bg:#f8f8f7;--surface:#fff;--ink:#1c1917;--muted:#78716c;--line:#e7e5e4;--accent:hsl(243,75%,46%);--accent-hover:hsl(243,75%,38%);--soft:hsl(243,40%,96%)}
html[data-theme=dark][data-guide=francophone-sport-careers]{--accent:#b3a6ff;--accent-hover:#cec5ff;--soft:#343047}
html[data-theme=dark][data-guide=guides]{--accent:#b3a6ff;--accent-t:#cec5ff;--accent-soft:#343047}
html[data-theme=dark][data-guide=francophone-sport-careers] :is(.tab[aria-pressed=true],.button.primary){color:#201936;background:var(--accent)}
html[data-theme=light] .badge.listed{background:hsl(143,30%,93%);color:hsl(143,50%,30%)}
html[data-theme=light] .badge.limited{background:#f7f0e3;color:#82622c}
html[data-theme=light] .badge.expired{background:hsl(10,30%,93%);color:hsl(10,40%,38%)}
html[data-theme=dark] .badge.listed{background:#293e35;color:#a2d0b5}
html[data-theme=dark] .badge.limited{background:#3d3328;color:#e6bd89}
html[data-theme=dark] .badge.expired{background:#432e2e;color:#efb1ac}

/* Fixed-colour documents and football panels. */
html[data-theme=dark][data-guide=musee-prague] :is(.document,th,td){background:var(--surface);border-color:var(--line)}
html[data-theme=dark][data-guide=musee-prague] :is(th,tbody tr:nth-child(even) td,.type-label){background:var(--surface-alt);color:var(--ink-light)}
html[data-theme=dark][data-guide=musee-prague] :is(.note,.page-footer,.page-nav a,.page-nav a.active){color:var(--ink-light)}
html[data-theme=dark][data-guide=musee-prague] .main-table td::before,html[data-theme=dark][data-guide=musee-prague] .route-table td::before{color:var(--muted)}
html[data-theme=dark][data-guide=musee-prague] .page-nav a.active::after{background:var(--ink)}
html[data-theme=dark][data-guide=musee-prague] :is(.map-link,.official-link){color:var(--link)}
html[data-theme=dark][data-guide=recruit] a{color:var(--ink-light)}
html[data-theme=dark][data-guide=man-city-ucl-away-guide-2026-27]{--city-navy:#9cbee9;--barca-red:#f6a3bc;--psg-blue:#92bceb}
html[data-theme=dark] .recommendation-note strong{color:var(--accent)}
html[data-theme=dark][data-guide=medvedin] :is(.status-line,.segment-no){color:var(--accent);border-color:var(--line)}
html[data-theme=dark][data-guide=man-city-ucl-away-guide-2026-27] :is(.kicker,.meta-chip,.view-note,.nav a,.nav-view,.notice,.tab-btn,th,.steps li,.clean-list li,.rank-card li,.checklist-card li,.source-group a){color:var(--ink-light)}
html[data-theme=dark][data-guide=man-city-ucl-away-guide-2026-27] :is(.meta-chip,.view-note,.nav a:hover,.nav a.active,.nav-view,.notice,.notice.psg,th,tbody tr:hover td,.trip-day,.flag-note,.sources){background:var(--surface-alt);border-color:var(--line)}
html[data-theme=dark][data-guide=man-city-ucl-away-guide-2026-27] :is(.home-base.barca-base,.home-base.psg-base,.match-section.city-trip){background:var(--paper)}
html[data-theme=dark][data-guide=man-city-ucl-away-guide-2026-27] :is(.badge.wait,.badge.barca,.badge.psg,.badge.city,.badge.shared,.badge.official,.badge.estimate){background:var(--surface-alt);color:var(--ink-light)}
html[data-theme=dark][data-guide=man-city-ucl-away-guide-2026-27] :is(.btn,.tab-btn.active){background:#384c42;color:#f0efeb;border-color:var(--accent)}
html[data-theme=dark][data-guide=man-city-ucl-away-guide-2026-27] .btn.secondary{background:var(--surface);color:var(--ink)}
html[data-theme=dark][data-guide=man-city-ucl-away-guide-2026-27] .btn:hover{background:#435c50}
html[data-theme=dark][data-guide=man-city-ucl-away-guide-2026-27] :is(.base-code,.match-number,.trip-index){color:#9eaaa9}
html[data-theme=dark] :is(.search-field,.select-field){background:var(--surface);border-color:var(--line)}
html[data-theme=dark] :is(.topnav a,.category-row button){color:var(--ink-light)}
@media print{
  html[data-theme=dark]{--paper:#fff;--surface:#fff;--surface-alt:#f2f2f2;--ink:#222;--ink-light:#333;--muted:#555;--line:#ccc;--rule:#ccc;--rule-soft:#ddd;--accent:#285140;--accent-soft:#eef4f0;--link:#245b8a}
  html[data-theme=dark],html[data-theme=dark] body{color:#222;background:#fff;color-scheme:light}
}
