:root{--page-bg:#f8f1e1;--page-ink:#21494f;--page-muted:#50665b;--page-line:#b5aa89;--page-surface:#f1e9d5;--page-link:#245b65;--page-accent:#9a4c27;--page-pattern:url('assets/page-light-pattern.jpg');--page-pattern-size:96px 96px;color-scheme:light}
:root[data-page-theme=dark]{--page-bg:#35290f;--page-ink:#fff3d4;--page-muted:#ddcbaa;--page-line:#8d7b52;--page-surface:#46381e;--page-link:#a9e2e5;--page-accent:#ffd38a;--page-pattern:url('assets/page-dark-pattern.jpg');--page-pattern-size:65.6667px 65.6667px;color-scheme:dark}
html{background-color:var(--page-bg)}body:not(.booting),body.focused:not(.booting){background-color:var(--page-bg);background-image:var(--page-pattern);background-size:var(--page-pattern-size);color:var(--page-ink)}
#page-theme-toggle{display:inline-grid;place-items:center;flex:0 0 44px;width:44px;height:44px;padding:0;border:1px solid var(--page-line);border-radius:50%;background:var(--page-surface);color:var(--page-ink);font:26px/1 system-ui;touch-action:manipulation}
.topbar{flex-wrap:wrap;gap:12px}.topbar nav{margin-left:auto;gap:12px}
[data-page-theme=dark] :is(.topbar,.guide,.leaderboard,.research details,.mode-row,footer){border-color:var(--page-line)}
[data-page-theme=dark] :is(.editorial,.research-body,.section-heading>p,.small-note,.ride-tip,.below-game,.mode-row,.music-card,footer){color:var(--page-muted)}
[data-page-theme=dark] :is(h1,h2,h3,h4,.research summary,.brand,.text-button){color:var(--page-ink)}
[data-page-theme=dark] :is(h1>span,.byline,.section-heading .eyebrow,.research summary span,.card-number,.ride-tip .eyebrow){color:var(--page-accent)}
[data-page-theme=dark] :is(.research-body a,.art-frame a,footer a,.below-game button,.mode-row button){color:var(--page-link)}
[data-page-theme=dark] :is(.guide-card,.leaderboard-table,.local-badge,.art-frame,.powerup-guide article,.manual-note){background:var(--page-surface);border-color:var(--page-line);color:var(--page-ink)}
[data-page-theme=dark] :is(.guide-card p,.controls-guide .manual-intro,.controls-guide h4,.controller-schematic figcaption,.art-frame figcaption,#empty-board,.music-card small,#music-player p,.below-game>span,.game-topline,#offline-status){color:var(--page-muted)}
[data-page-theme=dark] :is(th,td,.controls-guide table th,.controls-guide table td){color:var(--page-ink);border-color:var(--page-line)}
[data-page-theme=dark] :is(.controls-guide table thead th,.your-record){background:#554322;color:var(--page-ink)}
[data-page-theme=dark] .leaderboard-table td:last-child{color:var(--page-accent)}
[data-page-theme=dark] :is(.mode-row select,.board-tools select,.music-card button,dialog input,dialog select,dialog textarea){color:var(--page-ink);background:var(--page-surface);border-color:var(--page-line)}
[data-page-theme=dark] dialog:not(.shore-dialog),[data-page-theme=dark] #souvenir-dialog{background:var(--page-bg) var(--page-pattern);background-size:var(--page-pattern-size);color:var(--page-ink);border-color:var(--page-line)}
[data-page-theme=dark] dialog :is(p,label,.muted){color:var(--page-muted)}
[data-page-theme=dark] .secondary{color:var(--page-link);border-color:var(--page-line)}
[data-page-theme=dark] :is(.character-overlay,.level-overlay,.pause-overlay,.result-overlay,.faint-overlay){background-color:#35290ff5;color:var(--page-ink)}
[data-page-theme=dark] :is(.character-choice,.level-choice,.faint-dialog){background:var(--page-surface);color:var(--page-ink);border-color:var(--page-line)}
[data-page-theme=dark] :is(.character-choice small,.level-choice small,.character-overlay>p,.level-overlay>p){color:var(--page-muted)}
[data-page-theme=dark] :is(.character-choice,.level-choice)[aria-pressed=true]{background:#655023;border-color:#f4cb73;color:#fff3d4}
[data-page-theme=dark] .start-button{color:#193d43}[data-page-theme=dark] :is(.result-total,.light-text){color:#ffe5a3}
@media print{html,body:not(.booting){background:white!important;color:black!important}#print-ticket,#print-ticket *{color:black!important}}

/* Stronger blue lettering on the light paper, with the dark palette retained. */
:root[data-page-theme=light] :is(.brand,.editorial h1,.editorial h1 small,.editorial>.eyebrow){color:#245b65}
:root[data-page-theme=light] .brand-mark{color:#16727a}
.brand,.editorial h1{-webkit-text-stroke:.12px currentColor}
.editorial h1 small{font-weight:700}
.editorial>.eyebrow{font-weight:900}

:root[data-page-theme=light]{--page-ink:#245b65;--page-link:#245b65}
:root[data-page-theme=light] :is(.section-heading h2,.board-heading h2,.guide-card h3,.research summary,.research-body h3,.research-body h4,.controls-guide h4,.topbar nav,.research-body a,.art-frame a,.below-game button,.mode-row button,footer,footer a){color:var(--page-ink)}
:is(.section-heading h2,.board-heading h2,.guide-card h3,.research-body h3,.research-body h4,.controls-guide h4){font-weight:800}
.research summary{font-weight:800}
:is(.research-body a,.art-frame a,.below-game button,.mode-row button,footer a){font-weight:600}
footer i{font-weight:500}

/* Approved blue dot texture for the main page's light-mode palette. */
:root:not([data-page-theme=dark]){--page-bg:#063e55;--page-ink:#f3f6e9;--page-muted:#d2e5e7;--page-link:#d4f3f4;--page-line:#6295a5;--page-surface:#164f63;--page-accent:#ffc797;--page-pattern:url('assets/page-blue-dots.webp');--page-pattern-size:627px 627px}
:root[data-page-theme=light] :is(.brand,.brand-mark,.editorial h1,.editorial h1 small,.editorial>.eyebrow,.topbar nav,.section-heading h2,.board-heading h2,.research summary,.research-body h3,.research-body h4,footer,footer a,.game-topline.wave-divider){color:var(--page-ink)}
:root[data-page-theme=light] :is(.editorial,.intro,.research-body,.section-heading>p,.small-note,.ride-tip,.below-game,.mode-row,.music-card,footer,#empty-board,.music-card small,#music-player p,.below-game>span){color:var(--page-muted)}
:root[data-page-theme=light] :is(.byline,.section-heading .eyebrow,.board-heading .eyebrow,.research summary span,.ride-tip .eyebrow){color:var(--page-accent)}
:root[data-page-theme=light] :is(.research-body a,footer a,.below-game button,.mode-row button){color:var(--page-link)}
:root[data-page-theme=light] :is(.topbar,.guide,.leaderboard,.research details,.mode-row,footer){border-color:var(--page-line)}
/* Paper cards keep their familiar dark lettering and readable light surfaces. */
:root[data-page-theme=light] :is(.guide-card,.leaderboard-table,.art-frame,.powerup-guide article,.manual-note){--page-ink:#245b65;--page-muted:#50665b;--page-link:#245b65;--page-accent:#9a4c27;color:#245b65}
:root[data-page-theme=light] :is(.guide-card p,.art-frame figcaption,.powerup-guide article p,.manual-note){color:#245b65}
:root[data-page-theme=light] .controls-guide :is(.manual-intro,h4){color:var(--page-ink)}
:root[data-page-theme=light] .controls-guide table :is(th,td){color:var(--page-ink);border-color:var(--page-line)}
:root[data-page-theme=light] .controls-guide table thead th{background:var(--page-surface)}
:root[data-page-theme=light] :is(.mode-row select,.board-tools select,.music-card button){color:var(--page-ink);background:var(--page-surface);border-color:var(--page-line)}

:root[data-page-theme=light] :is(.powerup-guide article,.manual-note){background:#f1e9d5}
:root[data-page-theme=light] .controller-schematic figcaption{color:var(--page-muted)}
/* Let the fitted heading shrink within its desktop grid column. */
.hero>.editorial{min-width:0}
