/* Night palette keeps project colours, photographs and the eight-colour logo. */
.appearance-toggle { display:inline-grid; place-items:center; flex:none; width:44px; height:44px; padding:.5rem; border:1px solid var(--line); border-radius:50%; color:var(--ink); background:var(--paper); cursor:pointer; }
.appearance-dialog { width:min(34rem,calc(100% - 2rem)); max-height:85svh; overflow:auto; border:1px solid var(--line); border-radius:1.3rem; padding:1.6rem; background:var(--paper); color:var(--ink); box-shadow:0 24px 80px #0005; }
.appearance-dialog::backdrop { background:#041421aa; backdrop-filter:blur(4px); }
.appearance-heading { display:flex; align-items:center; justify-content:space-between; gap:1rem; }
.appearance-heading h2 { margin:0; font-size:1.65rem; }
.appearance-heading button { background:transparent; color:inherit; border:0; font-size:2rem; min-width:44px; min-height:44px; cursor:pointer; }
.appearance-options { display:flex; flex-wrap:wrap; gap:.5rem; }
.appearance-options button,.appearance-forget { min-height:44px; padding:.6rem .9rem; background:var(--paper); color:var(--ink); border:1px solid var(--line); border-radius:.6rem; cursor:pointer; }
.appearance-options button[aria-pressed="true"] { background:#06365b; color:#fff; border-color:#5298bd; }
.appearance-dialog .button { background:#06365b; color:white; border-color:#5298bd; }
.appearance-note { font-size:.85rem; color:var(--ink-soft); }
html[data-theme="night"] { --ink:#e6eff6; --ink-soft:#b8cbd9; --cream:#0c1925; --paper:#142736; --mist:#102232; --line:#385467; --violet:#8dcdf2; --berry:#adddfa; --shadow:0 20px 55px #0004; }
html[data-theme="night"] body { background:#0c1925; color:var(--ink); }
html[data-theme="night"] .site-header { background:#0c1925e8; }
html[data-theme="night"] :is(.nav-shell,.site-menu) { background:#142736f5; border-color:var(--line); }
html[data-theme="night"] :is(.brand,.brand small,.header-links a,.site-menu-toggle,.site-menu a,.site-menu h2,.site-menu-heading p,.site-menu-heading span,.site-menu-utility a) { color:#e6eff6; }
html[data-theme="night"] :is(.site-menu-toggle,.header-socials .social-icon) { background:#203b50; border-color:var(--line); color:#d9efff; }
html[data-theme="night"] :is(.header-links a,.site-menu a):hover { background:#234158; }
html[data-theme="night"] .hero { background:radial-gradient(circle at 80% 20%,#17426377,transparent 32rem),#0c1925; }
html[data-theme="night"] .page-hero:not(.project-hero) { background:#102838; }
html[data-theme="night"] :is(.hero h1,.hero h1 em,.page-hero:not(.project-hero) h1,.mark-prompt,.mark-help,.breadcrumbs,.breadcrumbs a,.eyebrow) { color:#d9efff; }
html[data-theme="night"] :is(.section--paper,.section--mist,.section--cream) { background:var(--cream); }
html[data-theme="night"] :is(.card,.tool-panel,.form-panel,.checkin-controls,details,.article-card,.metric-card,.dimension-card) { background:var(--paper); color:var(--ink); border-color:var(--line); }
html[data-theme="night"] :is(input,select,textarea) { background:#0c1925; color:#e6eff6; border-color:#587489; }
html[data-theme="night"] :is(.card h3,.card p,.card ul,.card a:not(.button),summary,.event-facts dt,.event-facts dd) { color:var(--ink); }
html[data-theme="night"] :is(.button--secondary,.filter-button) { color:#d9efff; border-color:#719eb9; background:transparent; }
html[data-theme="night"] .button--secondary:hover { background:#234158; }
html[data-theme="night"] .offer-code { color:#ccecff; background:#244458; }
html[data-theme="night"] body[data-project-theme] { --project-paper:#0e202b; --project-tint:#192f3b; --project-ink:#e3eef5; --project-muted:#bdd0dc; }
html[data-theme="night"] .project-section .card { background:#142736; border-color:#385467; border-top-color:var(--project-accent); }
html[data-theme="night"] .project-section :is(.card h3,.card p,.card ul,.card a:not(.button)) { color:#e3eef5; }
html[data-theme="night"] .project-section :is(details,summary,.guidance-panel) { background:#192f3b; color:#e3eef5; }
html[data-theme="night"] .project-section--gold { background:#443d28; }
html[data-theme="night"] .project-section a:not(.button) { color:#a9d9f8; }
html[data-theme="night"] .form-success { background:#143b30; color:#d6f5e7; border-color:#5c9d7d; }
@media (prefers-reduced-motion:no-preference) { body,.nav-shell,.card,.section,.site-header { transition:background-color .7s ease,color .7s ease,border-color .7s ease; } }
@media (max-width:40rem) { .header-actions { gap:.45rem; } .appearance-toggle { width:44px; height:44px; } }
@media print { html[data-theme="night"] { --ink:#111; --ink-soft:#333; --paper:#fff; --cream:#fff; --mist:#fff; } .appearance-toggle,.appearance-dialog { display:none!important; } html[data-theme="night"] body,html[data-theme="night"] .section,html[data-theme="night"] .card { background:#fff!important; color:#111!important; } }
html[data-theme="night"] .mark-help strong { color:#d9efff; }
html[data-theme="night"] .hero h1 em { color:#8dcdf2; }
/* Separate appearance slider; centred navigation has its own row. */
.site-header .nav-shell { display:grid; grid-template-columns:minmax(0,1fr) auto; gap:.7rem 1.5rem; }
.header-actions { grid-column:2; grid-row:1; margin:0; }
.header-toolbar { grid-column:1/-1; display:flex; align-items:center; justify-content:center; gap:2rem; padding-top:.65rem; border-top:1px solid var(--line); }
.header-toolbar .header-links { display:flex; margin:0; flex-wrap:wrap; justify-content:center; }
.header-toolbar .header-support { margin-left:.6rem; color:#fff; }
.appearance-control { display:flex; align-items:center; gap:.6rem; padding-left:1.5rem; border-left:1px solid var(--line); flex:none; }
.appearance-control-label { font-size:.75rem; font-weight:700; color:var(--ink-soft); }
.appearance-slider { display:grid; grid-template-columns:repeat(3,1fr); isolation:isolate; position:relative; padding:3px; border:1px solid var(--line); border-radius:2rem; background:var(--mist); }
.appearance-slider::before { content:""; position:absolute; z-index:-1; top:3px; bottom:3px; left:3px; width:calc((100% - 6px)/3); border-radius:2rem; background:#06365b; transition:transform .25s ease; }
html[data-appearance="day"] .appearance-slider::before { transform:translateX(100%); }
html[data-appearance="night"] .appearance-slider::before { transform:translateX(200%); }
.appearance-slider button { border:0; background:transparent; color:var(--ink); min-width:3.3rem; min-height:44px; padding:.45rem .65rem; border-radius:2rem; font-size:.8rem; font-weight:700; cursor:pointer; }
.appearance-slider button[aria-pressed="true"] { color:#fff; }
.appearance-location { border:0; background:transparent; color:var(--violet); text-decoration:underline; text-underline-offset:.2em; padding:.5rem .2rem; min-height:44px; cursor:pointer; font-size:.75rem; }
@media (max-width:65rem) { .header-toolbar { flex-wrap:wrap; gap:.75rem; } .appearance-control { border:0; padding-left:0; } }
@media (max-width:50rem) { .site-header .nav-shell { grid-template-columns:1fr; } .header-identity { justify-content:center; } .header-actions { grid-column:1; grid-row:2; justify-content:center; padding:0; border:0; } .header-toolbar { grid-row:3; } .header-toolbar .header-links { display:none; } .appearance-control-label { display:none; } }
@media (prefers-reduced-motion:reduce) { .appearance-slider::before { transition:none; } }
/* Complete surface coverage, including feature panels, archives and feed states. */
html[data-theme="night"] { --danger:#ffb0ba; }
html[data-theme="night"] :is(.feature-split,.feature-copy,.aside-card,.metric-context,.support-option,.dimension-detail,.social-channel,.social-consent,.wellness-orbit) { background:#142736; color:#e6eff6; border-color:#385467; }
html[data-theme="night"] :is(.section--sun,.callout,.status-note) { background:#253340; color:#e6eff6; border-color:#719eb9; }
html[data-theme="night"] :is(.article-card h3 a,.article-link,.article-source,.social-channel h3,.feature-copy h2,.feature-copy p,.feature-copy .eyebrow,.dimension-index a:hover,.dimension-index a:focus-visible) { color:#d9efff; }
html[data-theme="night"] :is(.article-source,.tag--archive,.tag--verified,.disabled-action) { background:#244458; color:#e6eff6; border-color:#587489; }
html[data-theme="night"] .dimension-index a:hover,html[data-theme="night"] .dimension-index a:focus-visible { background:#244458; }
html[data-theme="night"] :is(.form-success h3,.form-success p) { color:#d6f5e7; }
html[data-theme="night"] ::placeholder { color:#a9bfce; opacity:1; }
html[data-theme="night"] :is(.header-toolbar .header-support,.project-section .button) { color:#fff; }
html[data-theme="night"] .project-section .button { background:#06365b; border-color:#719eb9; }
html[data-theme="night"] .project-section .button--secondary { background:transparent; color:#d9efff; }
html[data-theme="night"] .project-section .tag { background:#244458; color:#e6eff6; }
html[data-theme="night"] .project-card-symbol { color:var(--project-accent); background:#244458; }
html[data-theme="night"] .project-section .source-poster { background:#192f3b; border-color:#385467; }
html[data-theme="night"] .project-section .guidance-panel p { color:#bdd0dc; }
html[data-theme="night"] .social-feed-mount :is(.crt-post,.crt-post-border,.crt-post-header,.crt-post-content,.crt-post-footer,.crt-post-content-text,.crt-post-text) { background-color:#142736!important; color:#e6eff6!important; border-color:#385467!important; }
html[data-theme="night"] .social-feed-mount :is(.crt-post a,.crt-post-fullname,.crt-post-date,.crt-post-userimage a,.crt-post-read-more,.crt-social-icon,.crt-post-content-text p) { color:#b6dfff!important; }
html[data-theme="night"] .filter-button[aria-pressed="true"] { background:#244458; color:#fff; border-color:#a9d9f8; }
html[data-theme="night"] .header-links .header-support:hover { background:#145f8c; color:#fff; }
@media print { .appearance-control { display:none!important; } }
html[data-theme="night"] body[data-project-theme] .project-section .card,
html[data-theme="night"] body[data-project-theme="comfort"] #packing-list .card { background:#142736; }
html[data-theme="night"] body[data-project-theme] .project-card-symbol,
html[data-theme="night"] body[data-project-theme="comfort"] #packing-list .project-card-symbol { background:#244458; color:var(--project-accent); }
html[data-theme="night"] .dimension-detail-number { color:color-mix(in srgb,var(--dimension-colour) 40%,white); }
html[data-theme="night"] .button--light { background:#244458; color:#e6eff6; border-color:#719eb9; }
html[data-theme="night"] .button--light:hover { background:#315a73; color:#fff; }
/* One desktop header row: identity, centred destinations/appearance, social links. */
.site-header { transform:translate3d(0,var(--header-offset,0px),0); transition:background-color .7s ease; will-change:transform; }
.site-header .nav-shell { grid-template-columns:auto minmax(0,1fr) auto; column-gap:.8rem; }
.header-identity { grid-column:1; grid-row:1; }
.header-toolbar { grid-column:2; grid-row:1; border:0; padding:0; gap:1rem; flex-wrap:nowrap; justify-content:center; }
.header-actions { grid-column:3; grid-row:1; }
.header-toolbar .header-links { flex-wrap:nowrap; }
.header-toolbar .header-links a { padding:.7rem .5rem; font-size:.78rem; }
.header-toolbar .header-support { margin-left:.25rem; }
.appearance-control { padding-left:.8rem; gap:.4rem; }
.appearance-control-label { display:none; }
.appearance-slider button { min-width:2.8rem; padding:.45rem .4rem; }
.site-header .header-socials .social-icon { width:2.25rem; height:2.25rem; }
@media (max-width:90rem) {
 .site-header .nav-shell { padding-inline:.8rem; column-gap:.65rem; }
 .header-identity { gap:.5rem; }
 .site-header .brand strong { font-size:1rem; }
 .site-header .brand small { font-size:.48rem; }
 .site-header .brand img { width:3rem; height:3rem; }
 .site-menu-toggle { padding-inline:.6rem; }
 .header-toolbar { gap:.65rem; }
 .header-toolbar .header-links a { font-size:.72rem; padding-inline:.4rem; }
 .appearance-location { font-size:.7rem; }
}
@media (max-width:78rem) {
 .header-toolbar .header-links { display:none; }
 .appearance-control { border:0; padding-left:0; }
 .header-toolbar { justify-content:center; }
}
@media (max-width:50rem) {
 .site-header .nav-shell { grid-template-columns:1fr auto; row-gap:.35rem; }
 .header-identity { grid-column:1/-1; justify-content:center; }
 .header-toolbar { grid-column:1; grid-row:2; justify-content:flex-start; }
 .header-actions { grid-column:2; grid-row:2; }
 .site-header .header-socials .social-icon { width:2rem; height:2rem; }
 .appearance-location { display:none; }
 .appearance-slider button { min-width:2.7rem; }
}
@media (max-width:23rem) {
 .site-header .nav-shell { grid-template-columns:1fr; }
 .header-toolbar { grid-column:1; grid-row:2; justify-content:center; }
 .header-actions { grid-column:1; grid-row:3; justify-content:center; }
}
@media print { .site-header { transform:none!important; } }
