@font-face{font-family:'Fraunces';font-style:italic;font-weight:300 900;font-display:swap;src:url(../fonts/fraunces-italic-latin-ext.woff2?v=1e0d114a) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Fraunces';font-style:italic;font-weight:300 900;font-display:swap;src:url(../fonts/fraunces-italic-latin.woff2?v=4af9c759) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:300 900;font-display:swap;src:url(../fonts/fraunces-normal-latin-ext.woff2?v=f120089b) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Fraunces';font-style:normal;font-weight:300 900;font-display:swap;src:url(../fonts/fraunces-normal-latin.woff2?v=48282a41) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Source Serif 4';font-style:italic;font-weight:300 700;font-display:swap;src:url(../fonts/source-serif-4-italic-latin-ext.woff2?v=513549ab) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Source Serif 4';font-style:italic;font-weight:300 700;font-display:swap;src:url(../fonts/source-serif-4-italic-latin.woff2?v=011e0ca2) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Source Serif 4';font-style:normal;font-weight:300 700;font-display:swap;src:url(../fonts/source-serif-4-normal-latin-ext.woff2?v=a0cd390d) format('woff2');unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}
@font-face{font-family:'Source Serif 4';font-style:normal;font-weight:300 700;font-display:swap;src:url(../fonts/source-serif-4-normal-latin.woff2?v=2a24bad4) format('woff2');unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}
@font-face{font-family:'Atkinson';src:url(../fonts/AtkinsonHyperlegibleNext.woff2?v=abde1ad5) format('woff2');font-weight:100 900;font-display:swap}
:root{
--topbar-h:3.25rem;
--bg:#070a12;--bg2:#0d1322;--bg3:#111830;
--ink:#e9e4d6;--ink-dim:#b9b3a3;--ink-faint:#8b8577;
--line:#2a3247;--line-soft:#1c2334;
--gold:#e6c15a;--gold-deep:#c9a13f;--on-gold:#14100a;
--ok:#8fd694;--no:#ef8f7d;
--bb:#8fc1e9;--lm:#eda154;--ms:#e0604d;--wd:#c8cfd8;--nsm:#e6c15a;--cr:#6fc2b4;
--shadow:0 1px 0 rgba(0,0,0,.4),0 12px 32px -16px rgba(0,0,0,.6);
--r:14px;
}
html[data-theme="light"]{
--bg:#f4eee1;--bg2:#fffdf6;--bg3:#ece4d2;
--ink:#1a1712;--ink-dim:#5a5347;--ink-faint:#7d7565;
--line:#cfc4ad;--line-soft:#e2d8c2;
--gold:#8a6414;--gold-deep:#75530f;--on-gold:#fffdf6;
--ok:#2c7a3d;--no:#b23a2a;
--bb:#2b6ea5;--lm:#b25f1a;--ms:#b23a2a;--wd:#5a6472;--nsm:#8a6414;--cr:#2a7d6f;
--shadow:0 1px 0 rgba(26,23,18,.12),0 12px 32px -20px rgba(26,23,18,.35);
}
*{box-sizing:border-box}
html{scroll-behavior:smooth;-webkit-text-size-adjust:100%}
html,body{overflow-x:clip}
body{background:var(--bg);color:var(--ink);font-family:'Source Serif 4',Georgia,'Times New Roman',serif;font-size:clamp(1.02rem,.98rem + .2vw,1.12rem);line-height:1.68;margin:0}
::selection{background:var(--gold);color:var(--on-gold)}
a{color:inherit;text-underline-offset:.18em}
button{font:inherit;color:inherit}
:focus-visible{outline:2px solid var(--gold);outline-offset:2px;border-radius:4px}
.skip{position:absolute;left:.75rem;top:-4rem;background:var(--gold);color:var(--on-gold);padding:.6rem 1rem;border-radius:.6rem;z-index:60;font-family:'Atkinson',system-ui,sans-serif;font-weight:700;text-decoration:none;transition:top .15s}
.skip:focus{top:.6rem}
html:not(.js) .needs-js{display:none}
h1,h2,h3{font-family:'Fraunces',Georgia,serif;line-height:1.06;letter-spacing:-.015em;text-wrap:balance}
h1{font-size:clamp(2.7rem,7vw,5rem);font-weight:800;margin:.35em 0 .3em;max-width:15ch;font-variation-settings:'opsz' 144,'SOFT' 30,'WONK' 1}
h2{font-size:clamp(1.85rem,3.6vw,2.7rem);font-weight:650;margin:0 0 .5em;font-variation-settings:'opsz' 100,'SOFT' 20}
h3{font-size:1.22rem;font-weight:650;margin:1.6em 0 .4em}
.kicker{font-family:'Atkinson',system-ui,sans-serif;font-size:.78rem;font-weight:700;letter-spacing:.14em;text-transform:uppercase;color:var(--ink-dim);margin:0 0 .6em}
.lede{font-size:1.22em;line-height:1.5}
cite{font-style:italic}
/* top bar */
.topbar{position:sticky;top:0;z-index:50;height:var(--topbar-h);display:flex;align-items:center;gap:.9rem;padding:0 .9rem;background:color-mix(in srgb,var(--bg) 93%,transparent);border-bottom:1px solid var(--line-soft);backdrop-filter:blur(8px)}
.topbar .home{font-family:'Fraunces',serif;font-weight:700;text-decoration:none;white-space:nowrap;font-size:1rem}
.topnav{display:flex;gap:.2rem;overflow-x:auto;scrollbar-width:none}
.topnav::-webkit-scrollbar{display:none}
.topnav a{font-family:'Atkinson',system-ui,sans-serif;font-size:.86rem;text-decoration:none;padding:.45rem .6rem;border-radius:.55rem;white-space:nowrap;color:var(--ink-dim)}
.topnav a:hover{color:var(--ink)}
.topnav a[aria-current="true"]{color:var(--gold);font-weight:700}
.spacer{flex:1}
.chip{font-family:'Atkinson',system-ui,sans-serif;font-size:.84rem;font-weight:700;text-decoration:none;border:1px solid var(--line);border-radius:999px;padding:.32rem .8rem;white-space:nowrap}
.chip:hover{border-color:var(--gold)}
.icon-btn{display:inline-grid;place-items:center;width:2.4rem;height:2.4rem;border-radius:50%;border:1px solid var(--line);background:transparent;cursor:pointer}
.icon-btn:hover{border-color:var(--gold)}
.icon-btn svg{display:block}
.icon-btn svg[hidden]{display:none}
/* hero */
.hero{position:relative;min-height:92svh;display:flex;align-items:flex-end;overflow:hidden}
.stars{position:absolute;inset:0;width:100%;height:100%}
.hero-in{position:relative;padding:0 clamp(1.1rem,5vw,4rem) clamp(3rem,9vh,5rem);max-width:60rem}
.hero .kicker{color:var(--gold)}
.deck{max-width:34ch;font-size:clamp(1.15rem,1.05rem + .8vw,1.45rem);line-height:1.55}
.cue{margin:2.2em 0 0;font-family:'Atkinson',system-ui,sans-serif;font-size:.92rem}
.cue a{color:var(--gold);text-decoration:none;border-bottom:1px solid var(--gold)}
/* share */
.share{display:flex;align-items:center;gap:.8rem;flex-wrap:wrap;padding:1.1rem clamp(1.1rem,5vw,4rem);border-top:1px solid var(--line-soft);border-bottom:1px solid var(--line-soft)}
.share-label{font-family:'Atkinson',system-ui,sans-serif;font-size:.86rem;color:var(--ink-dim)}
.share-row{display:flex;gap:.55rem;flex-wrap:wrap}
.share-btn{display:inline-grid;place-items:center;width:40px;height:40px;border-radius:50%;border:1px solid var(--line);background:transparent;cursor:pointer;color:var(--ink);text-decoration:none}
@media(pointer:coarse){.share-btn{width:44px;height:44px}}
.share-btn:hover,.share-btn:focus-visible{border-color:var(--gold);color:var(--gold)}
.share-btn[hidden]{display:none}
html:not(.js) .share-btn[data-share]{display:none}
.share-status{font-family:'Atkinson',system-ui,sans-serif;font-size:.84rem;color:var(--ink-dim);min-height:1.2em}
/* story grid */
.story{display:grid;grid-template-columns:minmax(0,1fr);gap:0;max-width:78rem;margin:0 auto;padding:0 clamp(1.1rem,4vw,3rem)}
@media(min-width:60rem){.story{grid-template-columns:19rem minmax(0,1fr);gap:clamp(2rem,4vw,4rem)}}
.chapters{min-width:0;max-width:44rem}
.chapter{padding:clamp(3rem,7vh,4.5rem) 0;scroll-margin-top:calc(var(--topbar-h) + .8rem)}
.chapter + .chapter{border-top:1px solid var(--line-soft)}
.chapter p{max-width:66ch}
.plink{font-size:.62em;text-decoration:none;color:var(--ink-faint);display:inline-grid;place-items:center;min-width:44px;min-height:44px;vertical-align:baseline;opacity:0}
h2:hover .plink,h2:focus-within .plink,.plink:focus-visible{opacity:1}
@media(pointer:coarse){.plink{opacity:.75}}
/* journey rail */
.journey{display:block}
.hud{background:var(--bg2);border:1px solid var(--line-soft);border-radius:var(--r);padding:1rem 1.1rem;box-shadow:var(--shadow)}
.hud p{margin:0}
.hud-era{font-family:'Fraunces',serif;font-weight:700;font-size:1.25rem}
.hud-ago{font-family:'Atkinson',system-ui,sans-serif;font-size:.86rem;color:var(--ink-dim);margin-top:.15em}
.hud-forged{font-family:'Atkinson',system-ui,sans-serif;font-size:.86rem;font-weight:700;color:var(--gold);margin-top:.35em;font-variant-numeric:tabular-nums}
.stops{list-style:none;margin:1rem 0 0;padding:0;display:grid;gap:.15rem}
.stops a{display:grid;grid-template-columns:auto 1fr;gap:.15rem .7rem;align-items:baseline;text-decoration:none;padding:.5rem .6rem;border-radius:.6rem;color:var(--ink-dim)}
.stops a:hover{color:var(--ink)}
.stops a .dot{grid-row:span 2;width:.6rem;height:.6rem;border-radius:50%;background:var(--line);align-self:center}
.stops a .stop-t{font-family:'Atkinson',system-ui,sans-serif;font-weight:700;font-size:.92rem}
.stops a .stop-a{font-family:'Atkinson',system-ui,sans-serif;font-size:.78rem;color:var(--ink-faint);font-variant-numeric:tabular-nums}
.stops a[aria-current="true"]{color:var(--ink)}
.stops a[aria-current="true"] .dot{background:var(--gold)}
@media(min-width:60rem){.journey{position:sticky;top:calc(var(--topbar-h) + 1rem);align-self:start;padding:clamp(3rem,7vh,4.5rem) 0}}
@media(max-width:59.99rem){.journey .stops{display:none}.journey{position:sticky;top:var(--topbar-h);z-index:40;padding:.5rem 0}.hud{padding:.55rem .9rem}.hud-era{font-size:1rem;display:inline}.hud-ago{display:inline;font-size:.82rem;margin-left:.6em}.hud-forged{font-size:.8rem;margin-top:.1em}}
/* stat tiles + strip */
.stats{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:.7rem;padding:0;margin:1.6em 0}
@media(max-width:34rem){.stats{grid-template-columns:1fr}}
.stats li{background:var(--bg2);border:1px solid var(--line-soft);border-radius:var(--r);padding:.9rem 1rem}
.stats .num{display:block;font-family:'Fraunces',serif;font-weight:750;font-size:1.7rem;font-variant-numeric:tabular-nums}
.stats .lbl{display:block;font-family:'Atkinson',system-ui,sans-serif;font-size:.8rem;color:var(--ink-dim);margin-top:.2em}
.strip{list-style:none;padding:0;margin:1.8em 0;display:grid;gap:.6rem}
.strip li{display:grid;grid-template-columns:7.5rem 1fr;gap:.8rem;align-items:baseline;border-top:1px solid var(--line-soft);padding-top:.6rem}
.strip .t{font-family:'Atkinson',system-ui,sans-serif;font-weight:700;color:var(--gold);font-variant-numeric:tabular-nums}
.strip .d{font-size:.98em}
/* lifecycle steps */
.steps ol{list-style:none;padding:0;margin:1.6em 0;display:grid;grid-template-columns:repeat(4,1fr);gap:.7rem}
@media(max-width:44rem){.steps ol{grid-template-columns:1fr 1fr}}
.steps li{background:var(--bg2);border:1px solid var(--line-soft);border-radius:var(--r);padding:.8rem;text-align:center}
.steps li p{font-size:.88em;margin:.5em 0 0;font-family:'Atkinson',system-ui,sans-serif;line-height:1.5}
.steps svg{max-width:100%;height:auto}
html.js .steps ol{grid-template-columns:1fr}
html.js .steps ol li{display:none}
html.js .steps ol li.active{display:block}
.step-ctl{display:flex;align-items:center;gap:.8rem;font-family:'Atkinson',system-ui,sans-serif}
.step-ctl button{border:1px solid var(--line);background:transparent;border-radius:.6rem;padding:.5rem 1rem;cursor:pointer;font-weight:700}
.step-ctl button:hover{border-color:var(--gold)}
.card{background:var(--bg2);border:1px solid var(--line-soft);border-radius:var(--r);padding:1.2rem 1.3rem;margin:1.8em 0;box-shadow:var(--shadow)}
.card p:first-child{font-size:1.1em}
/* element table */
.etable{scroll-margin-top:calc(var(--topbar-h) + .8rem)}
.legend{list-style:none;display:flex;flex-wrap:wrap;gap:.4rem 1rem;padding:0;margin:1.4em 0;font-family:'Atkinson',system-ui,sans-serif;font-size:.84rem;color:var(--ink-dim)}
.legend .sw{display:inline-block;width:.7rem;height:.7rem;border-radius:50%;background:var(--c);margin-right:.4em;vertical-align:baseline}
.elgrid{display:grid;grid-template-columns:repeat(auto-fill,minmax(4.4rem,1fr));gap:.5rem;margin:1em 0}
.el{display:grid;gap:.1rem;justify-items:center;background:var(--bg2);border:1px solid var(--line-soft);border-radius:.8rem;padding:.6rem .3rem;cursor:pointer;min-height:4.6rem}
.el:hover{border-color:var(--gold)}
.el[aria-pressed="true"]{border-color:var(--gold);box-shadow:inset 0 0 0 1px var(--gold)}
.el .sym{font-family:'Fraunces',serif;font-weight:750;font-size:1.3rem;line-height:1}
.el .nm{font-family:'Atkinson',system-ui,sans-serif;font-size:.68rem;color:var(--ink-dim)}
.el .dots{display:flex;gap:.25rem}
.el .dots i{width:.5rem;height:.5rem;border-radius:50%;background:var(--c)}
.ecards{display:grid;grid-template-columns:1fr 1fr;gap:.7rem;margin:1em 0}
@media(max-width:36rem){.ecards{grid-template-columns:1fr}}
html.js .ecards{grid-template-columns:1fr}
html.js .ecard{display:none}
html.js .ecard.active{display:block}
.ecard{background:var(--bg2);border:1px solid var(--line-soft);border-radius:var(--r);padding:1rem 1.1rem;cursor:pointer}
.ecard.active{border-color:var(--gold)}
.ecard.found{box-shadow:inset 0 0 0 2px var(--gold)}
.ecard h3{margin:0;font-size:1.25rem}
.ecard h3 .z{font-family:'Atkinson',system-ui,sans-serif;font-size:.75rem;color:var(--ink-faint);font-weight:400;margin-left:.4em}
.ecard .ch{font-family:'Atkinson',system-ui,sans-serif;font-size:.78rem;font-weight:700;letter-spacing:.06em;text-transform:uppercase;color:var(--gold);margin:.3em 0}
.ecard p{margin:.3em 0;font-size:.95em}
.ecard .amt{font-family:'Atkinson',system-ui,sans-serif;font-variant-numeric:tabular-nums;color:var(--ink-dim)}
.tbl-note{font-family:'Atkinson',system-ui,sans-serif;font-size:.84rem;color:var(--ink-dim)}
/* kilonova figure */
.kilonova{margin:1.8em 0;background:var(--bg2);border:1px solid var(--line-soft);border-radius:var(--r);padding:1rem;text-align:center}
.kilonova svg{max-width:100%;height:auto}
.kilonova figcaption{font-family:'Atkinson',system-ui,sans-serif;font-size:.86rem;color:var(--ink-dim);margin-top:.6em}
/* body bars */
.bars{list-style:none;padding:0;margin:1.8em 0;display:grid;gap:.5rem}
.bars li{display:grid;grid-template-columns:8.5rem 1fr 3.6rem;gap:.8rem;align-items:center}
.b-name{font-family:'Atkinson',system-ui,sans-serif;font-size:.88rem}
.b-track{display:block;height:.8rem;background:var(--bg3);border-radius:999px;overflow:hidden}
.b-fill{display:block;height:100%;width:max(var(--w),3px);background:var(--gold);border-radius:999px}
.b-val{font-family:'Atkinson',system-ui,sans-serif;font-size:.88rem;text-align:right;font-variant-numeric:tabular-nums}
/* calculator */
.calc{background:var(--bg2);border:1px solid var(--line-soft);border-radius:var(--r);padding:1.2rem 1.3rem;margin:1.8em 0;box-shadow:var(--shadow);scroll-margin-top:calc(var(--topbar-h) + .8rem)}
.calc h3{margin-top:0}
.calc p{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}
.calc label{font-family:'Atkinson',system-ui,sans-serif;font-size:.9rem}
.calc input{font:inherit;background:var(--bg);color:var(--ink);border:1px solid var(--line);border-radius:.6rem;padding:.5rem .7rem;width:6.5rem;font-variant-numeric:tabular-nums}
.calc button{border:1px solid var(--gold);background:var(--gold);color:var(--on-gold);border-radius:.6rem;padding:.55rem 1.1rem;cursor:pointer;font-family:'Atkinson',system-ui,sans-serif;font-weight:700}
.calc button[type="button"]{background:transparent;color:var(--ink);border-color:var(--line)}
.calc-out{list-style:none;padding:0;margin:1em 0 0;display:grid;grid-template-columns:1fr 1fr;gap:.6rem}
@media(max-width:30rem){.calc-out{grid-template-columns:1fr}}
.calc-out li{background:var(--bg);border:1px solid var(--line-soft);border-radius:.7rem;padding:.7rem .9rem}
.c-name{display:block;font-family:'Atkinson',system-ui,sans-serif;font-size:.78rem;color:var(--ink-dim)}
.c-val{display:block;font-family:'Fraunces',serif;font-weight:700;font-size:1.2rem;font-variant-numeric:tabular-nums;margin-top:.15em}
.calc-note{font-family:'Atkinson',system-ui,sans-serif;font-size:.84rem;color:var(--ink-dim)}
.calc-note.err{color:var(--no);font-weight:700}
/* sagan + related */
.sagan{margin:2.2em 0;padding:0}
.sagan p{font-family:'Fraunces',serif;font-style:italic;font-size:clamp(1.25rem,1.1rem + 1vw,1.6rem);line-height:1.45}
.sagan footer{font-family:'Atkinson',system-ui,sans-serif;font-size:.88rem;color:var(--ink-dim);margin-top:.6em}
.related{border-top:1px solid var(--line-soft);margin-top:2em;padding-top:1em;font-family:'Atkinson',system-ui,sans-serif}
.related p{margin:0 0 .4em;color:var(--ink-dim);font-size:.9rem}
.related ul{list-style:none;margin:0;padding:0;display:flex;flex-wrap:wrap;gap:.4rem 1.2rem}
.related a{color:var(--gold)}
/* finder */
#finder input{font:inherit;background:var(--bg2);color:var(--ink);border:1px solid var(--line);border-radius:.6rem;padding:.55rem .8rem;min-width:min(16rem,100%)}
#finder button{border:1px solid var(--gold);background:var(--gold);color:var(--on-gold);border-radius:.6rem;padding:.55rem 1.1rem;cursor:pointer;font-family:'Atkinson',system-ui,sans-serif;font-weight:700}
#finder p{display:flex;flex-wrap:wrap;gap:.6rem;align-items:center}
#finder label{font-family:'Atkinson',system-ui,sans-serif;font-size:.9rem}
.find-out{font-family:'Atkinson',system-ui,sans-serif;min-height:1.4em}
.chips{list-style:none;display:flex;flex-wrap:wrap;gap:.45rem;padding:0;margin:1em 0}
.chips a{display:inline-grid;place-items:center;min-width:2.75rem;min-height:2.75rem;border:1px solid var(--line);border-radius:.7rem;text-decoration:none;font-family:'Fraunces',serif;font-weight:700}
.chips a:hover{border-color:var(--gold)}
/* player */
.play{background:var(--bg2);border:1px solid var(--line-soft);border-radius:var(--r);padding:1.2rem 1.3rem}
.play-screen{font-family:'Fraunces',serif;font-size:clamp(1.3rem,1.1rem + 1.2vw,1.8rem);font-weight:700;margin:0 0 .8em}
.play-stops{list-style:none;display:flex;flex-wrap:wrap;gap:.45rem;padding:0;margin:0 0 1em}
.play-stops li{font-family:'Atkinson',system-ui,sans-serif;font-size:.82rem;border:1px solid var(--line);border-radius:999px;padding:.35rem .8rem;color:var(--ink-dim)}
.play-stops li.on{border-color:var(--gold);color:var(--gold);font-weight:700}
.play-ctl{display:flex;gap:.6rem;flex-wrap:wrap;margin:0}
.play-ctl button{border:1px solid var(--line);background:transparent;border-radius:.6rem;padding:.55rem 1.1rem;cursor:pointer;font-family:'Atkinson',system-ui,sans-serif;font-weight:700}
.play-ctl button[data-play]{border-color:var(--gold);background:var(--gold);color:var(--on-gold)}
/* quiz */
.score{font-family:'Atkinson',system-ui,sans-serif;font-weight:700;font-variant-numeric:tabular-nums}
.score button{border:1px solid var(--line);background:transparent;border-radius:.6rem;padding:.4rem .9rem;cursor:pointer;font-weight:700;margin-left:.6em}
.quiz-list{list-style:none;padding:0;margin:1.4em 0;display:grid;gap:1rem;counter-reset:qq}
.q{background:var(--bg2);border:1px solid var(--line-soft);border-radius:var(--r);padding:1.1rem 1.2rem;counter-increment:qq}
.q-tag{font-family:'Atkinson',system-ui,sans-serif;font-size:.76rem;font-weight:700;letter-spacing:.1em;text-transform:uppercase;color:var(--ink-dim);margin:0}
.q-tag::after{content:" · " counter(qq) " / 5";font-variant-numeric:tabular-nums}
.q h3{margin:.3em 0 .7em}
.opts{display:grid;gap:.5rem}
.opts button{text-align:left;background:var(--bg);border:1px solid var(--line);border-radius:.7rem;padding:.65rem .9rem;cursor:pointer;font-family:'Atkinson',system-ui,sans-serif}
.opts button:hover:not(:disabled){border-color:var(--gold)}
.opts button:disabled{cursor:default;opacity:.85}
.opts button.right{border-color:var(--ok);box-shadow:inset 0 0 0 1px var(--ok)}
.opts button.wrong{border-color:var(--no);box-shadow:inset 0 0 0 1px var(--no)}
.verdict{font-family:'Atkinson',system-ui,sans-serif;min-height:1.4em;margin:.7em 0 0}
.verdict.ok{color:var(--ok)}
.verdict.no{color:var(--no)}
.quiz-share button{border:1px solid var(--gold);background:transparent;color:var(--gold);border-radius:.6rem;padding:.55rem 1.1rem;cursor:pointer;font-family:'Atkinson',system-ui,sans-serif;font-weight:700}
/* sources + footer */
#sources li{margin:.4em 0}
#sources li::marker{color:var(--ink-faint)}
.foot{border-top:1px solid var(--line-soft);margin-top:2rem;padding:1.6rem clamp(1.1rem,5vw,4rem) 3rem;font-family:'Atkinson',system-ui,sans-serif;font-size:.88rem;color:var(--ink-dim)}
.foot p{margin:.3em 0}
.foot a{color:var(--gold)}
/* back to top (also injected) */
.to-top{position:fixed;right:1rem;bottom:calc(1rem + env(safe-area-inset-bottom));z-index:55;width:3rem;height:3rem;border-radius:50%;border:1px solid var(--line);background:var(--bg2);color:var(--ink);cursor:pointer;font-family:'Atkinson',system-ui,sans-serif;font-size:.8rem;font-weight:700;box-shadow:var(--shadow)}
.to-top[hidden]{display:none}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none;transition:none}}
