@font-face{font-family:Overpass;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/3cb665d501b8f698-s.3o1y55efrlo0f.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Overpass;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/1807ddda53c489fb-s.0_7qhy9i89rsg.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Overpass;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/bdce30ed8d477cec-s.0evnxvc4a3ofl.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Overpass;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/b714fc4ca4e4599c-s.1s0ba8mpf540k.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Overpass;font-style:normal;font-weight:100 900;font-display:swap;src:url(../media/8c686831cca8fbc0-s.p.2xfjm66ra2yn5.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Overpass Fallback;src:local(Arial);ascent-override:87.67%;descent-override:38.03%;line-gap-override:0.0%;size-adjust:100.72%}.overpass_a1a7fcab-module__tHjGGq__className{font-family:Overpass,Overpass Fallback;font-style:normal}.overpass_a1a7fcab-module__tHjGGq__variable{--font-display:"Overpass", "Overpass Fallback"}
@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/6632a144c419935f.38msdipe8z81f.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/7b27d9904b50e540.30bhvdlsk8sra.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Newsreader;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/d38f3bca7db33566.p.3se9ogqst-d6c.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.newsreader_5da85078-module__rLCM_G__className{font-family:Newsreader,Georgia,serif;font-style:normal}.newsreader_5da85078-module__rLCM_G__variable{--font-guide:"Newsreader", Georgia, serif}
@font-face{font-family:Atkinson Hyperlegible Next;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/e664fdf150ece08d.3skiflm26ffbo.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Atkinson Hyperlegible Next;font-style:normal;font-weight:200 800;font-display:swap;src:url(../media/847c6af3f14ca2aa.p.1mi1ugkk0px41.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}.atkinson_hyperlegible_next_951c06ba-module__qC6iIq__className{font-family:Atkinson Hyperlegible Next,system-ui,sans-serif;font-style:normal}.atkinson_hyperlegible_next_951c06ba-module__qC6iIq__variable{--font-body:"Atkinson Hyperlegible Next", system-ui, sans-serif}
@font-face{font-family:Overpass Mono;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/c9ac8022747e5bc6-s.1edcimvavlx1t.woff2)format("woff2");unicode-range:U+460-52F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Overpass Mono;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/e107f9632452e134-s.076gk9104-itc.woff2)format("woff2");unicode-range:U+301,U+400-45F,U+490-491,U+4B0-4B1,U+2116}@font-face{font-family:Overpass Mono;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/9eb1fa291a52974e-s.32ez4aq0wy5vb.woff2)format("woff2");unicode-range:U+102-103,U+110-111,U+128-129,U+168-169,U+1A0-1A1,U+1AF-1B0,U+300-301,U+303-304,U+308-309,U+323,U+329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Overpass Mono;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/585ad3fb8bf41c01-s.2opfr29dwkml-.woff2)format("woff2");unicode-range:U+100-2BA,U+2BD-2C5,U+2C7-2CC,U+2CE-2D7,U+2DD-2FF,U+304,U+308,U+329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C4,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Overpass Mono;font-style:normal;font-weight:300 700;font-display:swap;src:url(../media/b0fb7b4004470e87-s.p.0e-3rvg6xaqtn.woff2)format("woff2");unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+304,U+308,U+329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Overpass Mono Fallback;src:local(Arial);ascent-override:63.9%;descent-override:27.72%;line-gap-override:0.0%;size-adjust:138.18%}.overpass_mono_da1a8546-module__BfwuXq__className{font-family:Overpass Mono,Overpass Mono Fallback;font-style:normal}.overpass_mono_da1a8546-module__BfwuXq__variable{--font-mono:"Overpass Mono", "Overpass Mono Fallback"}
:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#f4f3ef;--surface:#fdfcfa;--stage:#faf9f6;--card:#fff;--ink:#15171c;--ink-2:#3b3f48;--muted:#666b74;--rule:#e3e1db;--track:#e6e4de;--rail:#a3aab5;--rail-core:#eceef1;--socket:#ecebe6;--socket-edge:#d3d0c8;--accent:#3d63ff;--accent-hover:#2a4fe0;--on-accent:#fff;--dot-req:#3d63ff;--dot-slow:#f29e0c;--dot-ok:#12a35c;--dot-stale:#8b5cf6;--dot-turned:#8a94a6;--dot-err:#e5383b;--t-ok:#0b7a44;--t-warn:#9a5b00;--t-bad:#c01f2b;--t-stale:#6d3fd6;--t-req:#2a4fe0;--bad:#c01f2b;--on-bad:#fff;--warn:#f29e0c;--on-warn:#15171c;--good:#12a35c;--on-good:#15171c;--stale:#6d3fd6;--on-stale:#fff;--l-networking:#6e7d14;--l-networking-ink:#56620d;--l-foundations:#0b8a8a;--l-foundations-ink:#087070;--l-caching:#e0560c;--l-caching-ink:#b94406;--l-data:#c2255c;--l-data-ink:#a81f4f;--l-async:#2f3e9e;--l-async-ink:#2a3790;--l-resilience:#8f6516;--l-resilience-ink:#7a5410;--l-operating:#7a2f5e;--l-operating-ink:#7a2f5e;--l-stories:#15171c;--l-stories-ink:#15171c;--fs-caption:12px;--fs-meta:13px;--fs-ui:14px;--fs-body:15.5px;--fs-home:17px;--fs-h3:20px;--fs-step:24px;--fs-section:32px;--fs-hero:44px;--fs-h1:60px;--label-px:13px;--sub-px:12px;--badge-px:11px;--sp-1:4px;--sp-2:8px;--sp-3:12px;--sp-4:16px;--sp-5:24px;--sp-6:32px;--sp-7:48px;--sp-8:64px;--sp-9:96px;--r-chip:4px;--r-ctl:8px;--r-card:12px;--r-sheet:20px;--r-round:999px;--e-raised:0 1px 0 #15171c0a, 0 12px 32px -20px #15171c47;--e-sheet:inset 0 1px 0 #ffffffd9;--dur-fast:.12s;--dur-base:.24s;--dur-exit:.16s;--dur-switch:.48s;--dur-hero:.9s;--beat:.12s;--intro-step:60ms;--intro-node:.36s;--intro-stroke:.42s;--ease-out:cubic-bezier(.22, 1, .36, 1);--ease-exit:cubic-bezier(.4, 0, 1, 1);--ease-linear:linear}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--paper:#0e1116;--surface:#151921;--stage:#11151c;--card:#171c25;--ink:#ecebe6;--ink-2:#c3c5cc;--muted:#8e939d;--rule:#262b35;--track:#282e3a;--rail:#4b5464;--rail-core:#1c222d;--socket:#232a36;--socket-edge:#374050;--accent:#6c8aff;--accent-hover:#8aa2ff;--on-accent:#0e1116;--dot-req:#6c8aff;--dot-slow:#ffb13b;--dot-ok:#2fd28a;--dot-stale:#a98bff;--dot-turned:#8f9bb1;--dot-err:#ff5c60;--t-ok:#4fe0a0;--t-warn:#ffbf5c;--t-bad:#ff7a7d;--t-stale:#b9a2ff;--t-req:#8aa2ff;--bad:#ff5c60;--on-bad:#0e1116;--warn:#ffb13b;--on-warn:#0e1116;--good:#2fd28a;--on-good:#0e1116;--stale:#a98bff;--on-stale:#0e1116;--l-networking:#a8bb3a;--l-networking-ink:#a8bb3a;--l-foundations:#25b8b8;--l-foundations-ink:#25b8b8;--l-caching:#ff7a33;--l-caching-ink:#ff7a33;--l-data:#f0508a;--l-data-ink:#f0508a;--l-async:#7a8cf5;--l-async-ink:#7a8cf5;--l-resilience:#d2a043;--l-resilience-ink:#d2a043;--l-operating:#d888b8;--l-operating-ink:#d888b8;--l-stories:#ecebe6;--l-stories-ink:#ecebe6;--e-raised:0 1px 0 #00000040, 0 18px 40px -24px #000000bf;--e-sheet:inset 0 1px 0 #ffffff08}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:color-mix(in srgb, var(--accent) 16%, transparent);accent-color:var(--accent);scrollbar-color:color-mix(in srgb, var(--ink) 28%, transparent) transparent;scroll-padding-top:80px}a,button,summary,label,input{touch-action:manipulation}body{background:var(--paper);color:var(--ink);font-family:var(--font-body), system-ui, sans-serif;font-size:var(--fs-home);-webkit-font-smoothing:antialiased;margin:0;line-height:1.6}::selection{background:color-mix(in srgb, var(--accent) 24%, transparent)}h1,h2,h3{font-family:var(--font-display), system-ui, sans-serif;text-wrap:balance;line-height:1.05}a{color:var(--t-req);text-underline-offset:3px;text-decoration-thickness:1px}button,input{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0}button:disabled{cursor:not-allowed}fieldset{border:0;min-width:0;margin:0;padding:0}:focus-visible{outline:3px solid var(--accent);outline-offset:2px;border-radius:var(--r-ctl)}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip{z-index:50;border-radius:var(--r-ctl);background:var(--ink);color:var(--paper);padding:10px 14px;font-weight:700;position:absolute;top:-60px;left:12px}.skip:focus{top:12px}.wrap{width:min(1120px,100% - 2*clamp(16px,4vw,40px));margin-inline:auto}.wrap-wide{width:min(1320px,100% - 2*clamp(16px,3vw,40px));margin-inline:auto}.brand{min-height:40px;color:var(--ink);font:800 19px/1 var(--font-display);letter-spacing:-.02em;flex:none;align-items:center;gap:10px;text-decoration:none;display:inline-flex}.brand-mark{fill:none;width:30px;height:30px;stroke:var(--ink);stroke-width:3px}.brand-dot{fill:var(--dot-req);stroke:none}.brand-compact .brand-mark{width:26px;height:26px}.brand-compact .brand-name{font-size:16px}.site-head{z-index:20;justify-content:space-between;align-items:center;gap:var(--sp-4);padding:var(--sp-2) clamp(16px, 3vw, 40px);border-bottom:1px solid var(--rule);background:var(--paper);display:flex;position:sticky;top:0}.site-nav{gap:var(--sp-1);display:flex}.site-nav a{min-height:44px;padding:0 var(--sp-3);border-radius:var(--r-ctl);color:var(--ink-2);font:600 15px/1 var(--font-body);transition:background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);align-items:center;text-decoration:none;display:inline-flex}.site-nav a:hover{background:var(--surface);color:var(--ink)}.site-foot{justify-content:space-between;gap:var(--sp-2) var(--sp-5);margin-top:var(--sp-8);padding:var(--sp-5) clamp(16px, 3vw, 40px) var(--sp-6);border-top:1px solid var(--rule);color:var(--muted);font-size:var(--fs-ui);flex-wrap:wrap;display:flex}.site-foot p{margin:0}.btn{border:1px solid var(--rule);border-radius:var(--r-ctl);background:var(--surface);height:40px;color:var(--ink);font:600 var(--fs-ui)/1 var(--font-body);transition:background-color var(--dur-fast) var(--ease-out), border-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;gap:7px;padding:0 14px;display:inline-flex}.btn:hover{border-color:var(--muted)}.btn:active,.btn-primary:active,.tab:active{transform:scale(.97)}.btn svg,.btn-primary svg,.icon-link svg{fill:currentColor;flex:none;width:16px;height:16px}svg.stroke{stroke:currentColor;stroke-width:1.8px;stroke-linecap:round;stroke-linejoin:round;fill:none!important}.btn-play{border-color:var(--ink);background:var(--ink);color:var(--paper)}.btn-play:hover{border-color:var(--ink-2);background:var(--ink-2)}.btn-icon{width:40px;padding:0}.transport .btn-play{width:44px;padding:0}.btn-fault{border-color:color-mix(in srgb, var(--t-bad) 45%, var(--rule));color:var(--t-bad)}.btn-fault.on{border-color:var(--bad);background:var(--bad);color:var(--on-bad)}.btn-primary{border-radius:var(--r-ctl);background:var(--accent);height:48px;color:var(--on-accent);font:700 16px/1 var(--font-display);transition:background-color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);justify-content:center;align-items:center;gap:8px;padding:0 22px;text-decoration:none;display:inline-flex}.btn-primary:hover{background:var(--accent-hover)}.btn-quiet{border:1px solid var(--rule);border-radius:var(--r-ctl);height:48px;color:var(--ink);font:700 16px/1 var(--font-display);transition:border-color var(--dur-fast) var(--ease-out);align-items:center;padding:0 18px;text-decoration:none;display:inline-flex}.btn-quiet:hover{border-color:var(--muted)}.icon-link{border-radius:var(--r-ctl);width:40px;height:40px;color:var(--ink-2);transition:background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);place-items:center;display:inline-grid}.icon-link:hover{background:var(--paper);color:var(--ink)}.seg{border:1px solid var(--rule);border-radius:var(--r-ctl);background:var(--paper);gap:2px;padding:3px;display:inline-flex}.seg-wrap{flex-wrap:wrap}.seg label{display:block;position:relative}.seg input{opacity:0;cursor:pointer;margin:0;position:absolute;inset:0}.seg span{border-radius:calc(var(--r-ctl) - 3px);min-height:32px;color:var(--ink-2);font:600 var(--fs-meta)/1.1 var(--font-mono);white-space:nowrap;cursor:pointer;transition:background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out);place-items:center;padding:0 11px;display:grid}.seg input:checked+span{background:var(--surface);color:var(--ink);box-shadow:0 0 0 1px var(--rule)}.seg input:focus-visible+span{outline:2px solid var(--accent);outline-offset:1px}.transport{align-items:center;gap:var(--sp-2);display:flex}.speed-cycle{width:44px;font:600 var(--fs-meta)/1 var(--font-mono)}.slowmo{color:var(--muted);font:500 var(--fs-caption) var(--font-mono);white-space:nowrap;flex:none}.masthead{align-items:center;gap:var(--sp-6) var(--sp-7);grid-template-columns:minmax(340px,.92fr) minmax(0,1.38fr);min-height:min(58svh,620px);padding-block:clamp(24px,4.5vh,48px) clamp(20px,3vh,36px);display:grid}.eyebrow{color:var(--t-req);font:600 var(--fs-meta)/1.3 var(--font-mono);letter-spacing:.08em;text-transform:uppercase;margin:0}.masthead h1{letter-spacing:-.035em;margin:0;font-size:clamp(2.4rem,3.6vw,3.6rem);font-weight:800;line-height:.98}.masthead h1 span{color:var(--muted);display:block}.lede{max-width:34em;margin:var(--sp-4) 0 0;color:var(--ink-2);font-size:1.1rem;line-height:1.5}.cta{margin-top:var(--sp-5);flex-wrap:wrap;gap:10px;display:flex}.line-index{gap:2px var(--sp-5);margin:var(--sp-5) 0 0;padding:var(--sp-4) 0 0;border-top:1px solid var(--rule);grid-template-columns:repeat(2,minmax(0,max-content));list-style:none;display:grid}.line-index a{min-height:40px;color:var(--ink);grid-template-columns:auto minmax(0,1fr);align-items:center;gap:4px 10px;padding:4px 0;text-decoration:none;display:grid}.line-index .roundel-sm{grid-row:span 2;width:26px;height:26px;font-size:13px}.li-name{font:700 15px/1.2 var(--font-display)}.line-index a:hover .li-name{text-underline-offset:3px;text-decoration:underline}.li-pips{flex-wrap:wrap;gap:4px;display:flex}.li-pips i{border-radius:var(--r-round);width:7px;height:7px;box-shadow:inset 0 0 0 1.5px var(--lc)}.li-pips i.on{background:var(--lc)}.hero-fig{border:1px solid var(--rule);border-radius:var(--r-sheet);background:var(--surface);grid-template-rows:minmax(0,1fr) auto;height:clamp(340px,52svh,540px);margin:0;padding:10px;display:grid}.hero-stage{min-height:0;position:relative}.hero-bar{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px 18px;padding:10px 4px 2px;display:flex}.hero-bar .mlist{flex-wrap:wrap;gap:4px 18px;display:flex}.hero-bar .mrow{border:0;grid-template-columns:auto auto;padding:0}.hero-bar .mspark{display:none}.route,.journeys,.read{margin-top:clamp(40px,7vh,88px);scroll-margin-top:64px}.section-head{margin-bottom:var(--sp-5);flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:8px 32px;display:flex}.section-h{letter-spacing:-.03em;margin:0;font-size:clamp(1.9rem,3.2vw,2.5rem);font-weight:800}.section-sub{max-width:60ch;color:var(--ink-2);margin:0}.fast-lane{margin-top:var(--sp-6);padding-top:var(--sp-5);border-top:1px solid var(--rule)}.fast-lane h3{margin:0 0 var(--sp-3);letter-spacing:-.01em;font-size:17px;font-weight:800}.fast-lane ol{columns:4 220px;column-gap:var(--sp-6);font-size:var(--fs-ui);margin:0;padding-left:1.6em}.fast-lane li{break-inside:avoid;padding:3px 0}.fast-lane li::marker{color:var(--muted);font:500 var(--fs-caption) var(--font-mono)}.fast-lane a{color:var(--ink);text-decoration:none}.fast-lane a:hover{text-decoration:underline}.fast-lane .stop-code{min-width:2.4em;color:var(--lc-ink);font:600 var(--fs-caption) var(--font-mono);display:inline-block}.mini-scene{width:100%;height:100%;min-height:0;position:relative}.mini-scene>.stage{position:absolute;inset:0}.code-chip{border-radius:var(--r-chip);background:var(--lc-ink);color:var(--paper);font:600 var(--fs-caption)/1.25 var(--font-mono);letter-spacing:0;vertical-align:.15em;padding:2px 6px;display:inline-block}.journey-cards{gap:var(--sp-5);margin:0;padding:0;list-style:none;display:grid}.journey-card{gap:var(--sp-6);padding:var(--sp-5);border:1px solid var(--rule);border-radius:var(--r-sheet);background:var(--surface);grid-template-columns:minmax(300px,.72fr) minmax(0,1.5fr);display:grid}.journey-copy{flex-direction:column;min-width:0;display:flex}.journey-title{font:600 clamp(1.5rem, 2.2vw, 1.9rem)/1.15 var(--font-guide), Georgia, serif;letter-spacing:-.01em;margin:0}.journey-title .code-chip{margin-right:6px}.journey-why{margin:var(--sp-3) 0 0;color:var(--ink-2);font-size:var(--fs-body);line-height:1.55}.journey-sub{margin:var(--sp-5) 0 var(--sp-2);color:var(--ink-2);font:700 var(--fs-meta)/1.2 var(--font-body)}.journey-stops{flex-wrap:wrap;gap:6px;margin:0;padding:0;list-style:none;display:flex}.journey-stops a{border:1px solid var(--rule);border-radius:var(--r-round);min-height:36px;color:var(--ink);font-size:var(--fs-meta);transition:border-color var(--dur-fast) var(--ease-out);align-items:center;gap:6px;padding:3px 12px 3px 4px;text-decoration:none;display:inline-flex}.journey-stops a:hover,.journey-stops .seen a{border-color:var(--lc)}.roundel-xs{border-radius:var(--r-round);background:var(--lc-ink);width:26px;height:26px;color:var(--paper);font:800 12px/1 var(--font-display);flex:none;place-items:center;display:inline-grid}.journey-stop-code{color:var(--lc-ink);font:600 var(--fs-caption) var(--font-mono)}.journey-go{align-items:center;gap:var(--sp-3) var(--sp-4);padding-top:var(--sp-5);flex-wrap:wrap;margin-top:auto;display:flex}.journey-facts{color:var(--muted);font:500 var(--fs-meta) var(--font-mono)}.journey-scene{gap:var(--sp-2);grid-template-rows:minmax(0,1fr) auto;min-width:0;margin:0;display:grid}.journey-scene .sheet{border-radius:var(--r-card);grid-template-rows:minmax(0,1fr);height:clamp(300px,34vw,440px)}.journey-scene figcaption{color:var(--muted);font-size:var(--fs-meta)}.specimens{gap:var(--sp-3) var(--sp-6);grid-template-columns:repeat(auto-fill,minmax(min(100%,400px),1fr));margin:0;padding:0;list-style:none;display:grid}.specimen{align-items:center;gap:var(--sp-4);border-bottom:1px solid var(--rule);grid-template-columns:200px minmax(0,1fr);min-height:56px;padding:4px 0;display:grid}.specimen svg{width:200px;height:46px;display:block;overflow:visible}.specimen p{color:var(--ink-2);font-size:var(--fs-ui);margin:0;line-height:1.4}.specimen strong{color:var(--ink)}.spec-user,.spec-station{fill:var(--card);stroke:var(--ink);stroke-width:1.5px}.spec-rail,.spec-core{fill:none;stroke-linecap:round}.spec-rail{stroke:var(--rail);stroke-width:8px}.spec-core{stroke:var(--rail-core);stroke-width:5px}.spec-target path{stroke:var(--t-warn);stroke-width:1.5px;stroke-dasharray:2 3}.spec-target text{fill:var(--muted);font:500 11px var(--font-mono)}.spec-gate{stroke:var(--ink);stroke-width:3px;stroke-linecap:round}.m-req{fill:var(--dot-req)}.m-slow{fill:var(--dot-slow)}.m-ok{fill:var(--dot-ok)}.m-stale{fill:var(--dot-stale)}.m-turned{fill:var(--dot-turned)}.m-err{fill:var(--dot-err)}.spec-gaveup{fill:none;stroke:var(--dot-err);stroke-width:1.8px;transform-box:fill-box;transform-origin:50%}.spec-mover{transform:translate(var(--rest), 20px)}.spec-late .m-before{opacity:0}.spec-failed .spec-mover{transform:translate(var(--rest), 29px) rotate(24deg)}.specimens.playing .spec-mover{animation:spec-travel 1.5s var(--ease-linear) calc(var(--i) * .18s) both}@keyframes spec-travel{0%{transform:translate(var(--from), 20px)}}.specimens.playing .spec-late .m-before{animation:spec-swap-out 1.5s var(--ease-linear) calc(var(--i) * .18s) both}.specimens.playing .spec-late .m-after{animation:spec-swap-in 1.5s var(--ease-linear) calc(var(--i) * .18s) both}@keyframes spec-swap-out{0%,52%{opacity:1}}@keyframes spec-swap-in{0%,52%{opacity:0}}.specimens.playing .spec-turned .spec-mover{animation-name:spec-turn-back}@keyframes spec-turn-back{0%{transform:translate(var(--from), 20px)}55%{transform:translate(78px,20px)}}.specimens.playing .spec-failed .spec-mover{animation-name:spec-fall}@keyframes spec-fall{0%{transform:translate(var(--from), 20px)}72%{transform:translate(var(--rest), 20px) rotate(0deg)}}.specimens.playing .spec-gaveup{animation:spec-give-up 1.5s var(--ease-out) calc(var(--i) * .18s) both}@keyframes spec-give-up{0%,66%{opacity:0;transform:scale(.6)}}.btn-replay{margin-top:var(--sp-4)}.dot{flex:none;width:20px;height:20px}.dot-req{fill:var(--dot-req)}.dot-ok{fill:var(--dot-ok)}.dot-slow{fill:var(--dot-slow)}.dot-err{fill:var(--dot-err)}.dot-stale{fill:var(--dot-stale)}.dot-turned{fill:var(--dot-turned)}.dot .ring{fill:none;stroke:var(--dot-err);stroke-width:1.7px}.dot .hollow{fill:none;stroke:var(--muted);stroke-width:1.6px}.dot .cross{fill:none;stroke:var(--dot-err);stroke-width:2.2px;stroke-linecap:round}.dot .socket-demo{fill:var(--socket);stroke:var(--dot-req);stroke-width:1.6px}.key-btn{border-radius:var(--r-round);height:36px;color:var(--ink-2);font-size:var(--fs-meta);flex:none;margin-left:auto}.key-btn:hover{border-color:var(--ink);color:var(--ink)}.key-btn:has(+.key-pop:popover-open){border-color:var(--ink);color:var(--ink)}.key-pop{inset:calc(var(--bar-h,56px) + 8px) 12px auto auto;width:min(320px,100vw - 24px);max-height:calc(100svh - var(--bar-h,56px) - 24px);border:1px solid var(--rule);border-radius:var(--r-card);background:var(--surface);color:var(--ink);box-shadow:var(--e-raised);transform-origin:100% 0;margin:0;padding:8px 14px 14px;position:fixed;overflow-y:auto}.key-pop:popover-open{animation:pop-in var(--dur-base) var(--ease-out) both}.key-head{justify-content:space-between;align-items:center;gap:var(--sp-2);margin:0 -6px 6px 0;display:flex}.key-head h2{font:700 var(--fs-ui)/1.2 var(--font-display);letter-spacing:0;margin:0}.key-close{border-color:#0000;width:36px;height:36px}.key-pop ul{gap:8px;margin:0;padding:0;list-style:none;display:grid}.key-pop li{color:var(--ink-2);font-size:var(--fs-meta);gap:10px;line-height:1.4;display:flex}.key-pop strong{color:var(--ink)}@keyframes pop-in{0%{opacity:0;transform:translateY(-4px)scale(.97)}}.key-sub{color:var(--muted);font:700 var(--fs-caption)/1 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;margin:0 0 8px}.key-rest{border-top:1px solid var(--rule);margin-top:12px;padding-top:10px}.key-rest summary{color:var(--ink-2);font-size:var(--fs-meta);cursor:pointer;margin-bottom:8px}.line-networking{--lc:var(--l-networking);--lc-ink:var(--l-networking-ink)}.line-foundations{--lc:var(--l-foundations);--lc-ink:var(--l-foundations-ink)}.line-caching{--lc:var(--l-caching);--lc-ink:var(--l-caching-ink)}.line-data{--lc:var(--l-data);--lc-ink:var(--l-data-ink)}.line-async{--lc:var(--l-async);--lc-ink:var(--l-async-ink)}.line-resilience{--lc:var(--l-resilience);--lc-ink:var(--l-resilience-ink)}.line-operating{--lc:var(--l-operating);--lc-ink:var(--l-operating-ink)}.line-stories{--lc:var(--l-stories);--lc-ink:var(--l-stories-ink)}.route-poster{border-top:1px solid var(--rule);border-bottom:1px solid var(--rule);grid-template-columns:188px minmax(0,1fr);display:grid;position:relative}.poster-heads{border-right:1px solid var(--rule)}.poster-head{padding-right:var(--sp-4);align-items:center;gap:12px;display:flex}.poster-head strong{font:800 18px/1.15 var(--font-display);letter-spacing:-.01em;display:block}.poster-blurb{color:var(--muted);font-size:var(--fs-caption);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin-top:2px;line-height:1.35;display:-webkit-box;overflow:hidden}.roundel-lg{border-radius:var(--r-round);background:var(--lc);width:38px;height:38px;color:var(--paper);font:800 19px/1 var(--font-display);flex:none;place-items:center;display:inline-grid}.poster-frame{--fade-l:0px;--fade-r:0px;overscroll-behavior-x:contain;scrollbar-width:thin;-webkit-mask-image:linear-gradient(to right, transparent, #000 var(--fade-l), #000 calc(100% - var(--fade-r)), transparent);mask-image:linear-gradient(to right, transparent, #000 var(--fade-l), #000 calc(100% - var(--fade-r)), transparent);overflow:auto hidden}.poster-frame[data-more-left]{--fade-l:48px}.poster-frame[data-more-right]{--fade-r:72px}.route-svg{max-width:none;display:block;overflow:visible}.zone-band{fill:#0000}.zone-2 .zone-band{fill:color-mix(in srgb, var(--ink) 3.5%, transparent)}.zone-edge{stroke:var(--rule);stroke-width:1.5px;stroke-dasharray:3 6}.zone-label{fill:var(--muted);font:600 var(--fs-caption) var(--font-mono);letter-spacing:.08em;text-transform:uppercase}.zone-name{fill:var(--ink);font:800 17px var(--font-display);letter-spacing:-.01em}.zone-count{fill:var(--muted);font:500 var(--fs-caption) var(--font-mono);letter-spacing:0}.route-line .track{fill:none;stroke:var(--lc);stroke-width:9px;stroke-linecap:round}.station{cursor:pointer}.station .hit{fill:#0000}.station-dot{fill:var(--paper);stroke:var(--lc);stroke-width:5px;transform-box:fill-box;transform-origin:50%;transition:transform var(--dur-fast) var(--ease-out)}.station:hover .station-dot,.station:focus-visible .station-dot{transform:scale(1.27)}.station.seen .station-dot{fill:var(--lc)}.station-check{fill:none;stroke:var(--paper);stroke-width:2.6px;stroke-linecap:round;stroke-linejoin:round;pointer-events:none}.station-code{fill:var(--lc-ink);font:600 var(--fs-caption) var(--font-mono)}.station-name{fill:var(--ink);font:700 14px var(--font-body)}.station.early .station-dot{stroke:color-mix(in srgb, var(--lc) 42%, var(--paper))}.station.early .station-name{fill:var(--muted)}.station:hover .station-name,.station:focus-visible .station-name{text-decoration:underline}.next-flag rect{fill:var(--ink)}.next-flag text{fill:var(--paper);font:700 11px var(--font-mono);letter-spacing:.08em}.station:focus-visible,.terminal:focus-visible{outline:none}.station:focus-visible .hit{stroke:var(--accent);stroke-width:2.5px}.terminal{cursor:pointer}.terminal-pill{fill:var(--surface);stroke:var(--ink);stroke-width:2.5px}.terminal-code{fill:var(--ink);font:600 var(--fs-caption) var(--font-mono)}.terminal-name{fill:var(--ink);font:800 15px var(--font-display)}.terminal.early .terminal-pill{stroke:var(--muted)}.terminal:hover .terminal-name,.terminal:focus-visible .terminal-name{text-decoration:underline}.terminal:focus-visible .terminal-pill{stroke:var(--accent)}.journey-route{fill:none;stroke:var(--ink);stroke-width:2.5px;stroke-dasharray:1 7;stroke-linecap:round;animation:fade-in var(--dur-base) var(--ease-out) both}.journey-stop{fill:none;stroke:var(--ink);stroke-width:2px;transform-box:fill-box;transform-origin:50%;animation:stop-in var(--dur-base) var(--ease-out) both}@keyframes stop-in{0%{opacity:0;transform:scale(.6)}}.poster-tools{justify-content:space-between;align-items:center;gap:var(--sp-3) var(--sp-5);padding:var(--sp-3) 0;border-top:1px solid var(--rule);flex-wrap:wrap;grid-column:1/-1;display:flex}.poster-key{color:var(--muted);font-size:var(--fs-meta);flex-wrap:wrap;align-items:center;gap:6px;margin:0;display:flex}.key-stop{border:3.5px solid var(--ink-2);border-radius:var(--r-round);background:var(--paper);width:14px;height:14px;margin-left:12px}.key-stop:first-child{margin-left:0}.key-stop.seen{background:var(--ink-2)}.key-stop.early{border-color:color-mix(in srgb, var(--ink-2) 42%, var(--paper))}.journey-toggles{gap:var(--sp-2);flex-wrap:wrap;display:flex}.chip-toggle{border:1px solid var(--rule);border-radius:var(--r-round);background:var(--surface);min-height:36px;color:var(--ink-2);font:600 var(--fs-meta)/1 var(--font-body);transition:border-color var(--dur-fast) var(--ease-out), background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);align-items:center;gap:6px;padding:0 14px;display:inline-flex}.chip-toggle:hover{border-color:var(--ink);color:var(--ink)}.chip-toggle[aria-pressed=true]{border-color:var(--ink);background:var(--ink);color:var(--paper)}.preview{z-index:6;border:1px solid var(--rule);border-radius:var(--r-card);background:var(--surface);width:360px;box-shadow:var(--e-raised);pointer-events:none;transform-origin:top;animation:pop-in var(--dur-base) var(--ease-out) both;padding:12px 12px 14px;position:absolute}.preview[data-side=above]{transform-origin:bottom;translate:0 -100%}.preview-meta{color:var(--muted);font:500 var(--fs-caption) var(--font-mono);align-items:center;gap:8px;margin:0;display:flex}.preview-title{font:600 20px/1.2 var(--font-guide), Georgia, serif;margin:6px 0 0}.preview-scene{border:1px solid var(--rule);border-radius:var(--r-ctl);background:var(--stage);height:184px;margin:10px 0 0;overflow:hidden}.preview-why{color:var(--ink-2);font-size:var(--fs-meta);-webkit-line-clamp:3;-webkit-box-orient:vertical;margin:10px 0 0;line-height:1.45;display:-webkit-box;overflow:hidden}.preview-after{color:var(--muted);font-size:var(--fs-caption);margin:6px 0 0}.route-board{display:none}.board-tools{gap:var(--sp-2);display:grid}.board-levels{grid-template-columns:repeat(4,minmax(0,1fr));display:grid}.board-levels span{min-height:40px;font:600 var(--fs-meta)/1.1 var(--font-body);padding:0 4px}.board-search{border:1px solid var(--rule);border-radius:var(--r-ctl);background:var(--surface);min-height:46px;color:var(--muted);align-items:center;gap:8px;padding:0 12px;display:flex}.board-search:focus-within{outline:3px solid var(--accent);outline-offset:2px}.board-search svg{flex:none;width:18px;height:18px}.board-search input{min-width:0;height:44px;color:var(--ink);font:16px var(--font-body);background:0 0;border:0;outline:none;flex:1}.board-search input::placeholder{color:var(--muted)}.board-found{min-height:1.4em;color:var(--muted);font-size:var(--fs-meta);margin:0}.board-lines{margin:var(--sp-2) 0 0;padding:0;list-style:none}.board-line{border-top:1px solid var(--rule)}.board-line summary{cursor:pointer;align-items:center;gap:12px;min-height:60px;list-style:none;display:flex}.board-line summary::-webkit-details-marker{display:none}.board-name{flex:1;min-width:0}.board-name strong{font:800 18px/1.2 var(--font-display);display:block}.board-count{color:var(--muted);font:500 var(--fs-caption) var(--font-mono)}.board-chevron{width:20px;height:20px;color:var(--muted);transition:transform var(--dur-base) var(--ease-out);flex:none}.board-line details[open] .board-chevron{transform:rotate(180deg)}.board-line details>ol{margin:0 0 var(--sp-4) 14px;border-left:6px solid var(--lc);padding:2px 0;list-style:none}.board-line a{min-height:52px;color:var(--ink);align-items:center;gap:12px;padding:4px 0;text-decoration:none;display:flex}.stop-dot{border:4px solid var(--lc);border-radius:var(--r-round);background:var(--paper);flex:none;width:18px;height:18px;margin-left:-12px}.board-line a.seen .stop-dot{background:var(--lc)}.board-line a.early .stop-dot{border-color:color-mix(in srgb, var(--lc) 42%, var(--paper))}.stop-code{width:30px;color:var(--lc-ink);font:600 var(--fs-caption) var(--font-mono);flex:none}.stop-text{min-width:0;display:grid}.stop-name{font:700 16px/1.25 var(--font-display)}.stop-meta{color:var(--muted);font:500 var(--fs-caption)/1.4 var(--font-mono)}.stop-next{color:var(--t-req);font-weight:700}.roundel-sm{border-radius:var(--r-round);background:var(--lc-ink);width:30px;height:30px;color:var(--paper);font:800 15px/1 var(--font-display);flex:none;place-items:center;text-decoration:none;display:inline-grid}.shell{--bar-h:56px;--dock-h:60px;grid-template-columns:minmax(0,1fr) clamp(368px,31vw,440px);grid-template-rows:var(--bar-h) minmax(0, 1fr) var(--dock-h);background:var(--paper);grid-template-areas:"bar bar""theatre panel""dock dock";height:100svh;display:grid;position:relative;overflow:hidden}.bar{border-bottom:1px solid var(--rule);background:var(--surface);grid-area:bar;align-items:center;gap:14px;min-width:0;padding:0 12px 0 16px;display:flex;position:relative}.bar-line{border-left:1px solid var(--rule);align-items:center;gap:8px;padding-left:14px;display:flex}.bar-stops{isolation:isolate;gap:5px;margin:0;padding:0;list-style:none;display:flex;position:relative}.bar-stops:before{content:"";background:var(--lc);opacity:.4;z-index:-1;border-radius:2px;height:3px;margin-top:-1.5px;position:absolute;inset:50% 12px auto}.bar-stops a{border:2px solid var(--lc);border-radius:var(--r-round);background:var(--surface);min-width:36px;height:26px;color:var(--ink);font:600 var(--fs-caption)/1 var(--font-mono);transition:background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);place-items:center;padding:0 5px;text-decoration:none;display:grid}.bar-stops a:hover{background:color-mix(in srgb, var(--lc) 14%, var(--surface))}.bar-stops a[aria-current=page]{border-color:var(--lc-ink);background:var(--lc-ink);color:var(--paper)}.bar-title{letter-spacing:-.02em;align-items:baseline;gap:10px;min-width:0;margin:0;font-size:19px;font-weight:800;display:flex}.bar-code{border-radius:var(--r-chip);background:var(--lc-ink);color:var(--paper);font:600 var(--fs-meta)/1.1 var(--font-mono);letter-spacing:0;flex:none;padding:3px 7px}.bar-name{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bar-arrows{flex:none;gap:2px;display:flex}.sk-bar{border-bottom:1px solid var(--rule);background:var(--surface);grid-area:bar;align-items:center;gap:14px;min-width:0;padding:0 12px 0 16px;display:flex}.sk-theatre{grid-area:theatre;min-height:0;padding:14px;display:grid}.sk-sheet{border:1px solid var(--rule);border-radius:var(--r-sheet);background:var(--stage)}.sk-panel{border-left:1px solid var(--rule);background:var(--surface);grid-area:panel;min-height:0;padding:16px 20px}.sk-dock{border-top:1px solid var(--rule);background:var(--surface);grid-area:dock}.theatre{grid-area:theatre;min-width:0;min-height:0;padding:14px;display:grid}.sheet{--strip-row:1;--stage-row:2;border:1px solid var(--rule);border-radius:var(--r-sheet);background:var(--stage);min-width:0;min-height:0;box-shadow:var(--e-sheet);grid-template-rows:36px minmax(0,1fr);grid-template-columns:minmax(0,1fr);display:grid;overflow:hidden}.beat{grid-row:var(--strip-row);border-bottom:1px solid var(--rule);background:var(--surface);grid-column:1;align-items:center;gap:12px;min-width:0;padding:0 16px;display:flex}.beat-tone{color:var(--tone-text);font:700 var(--fs-meta)/1.2 var(--font-body);animation:fade-in var(--dur-base) var(--ease-out) both;flex:none}.beat-text{min-width:0;color:var(--muted);font:600 var(--fs-meta)/1.2 var(--font-body);flex:1;margin:0}.beat-text:not(:empty){border-left:1px solid var(--rule);padding-left:12px}.beat-text>span{text-overflow:ellipsis;white-space:nowrap;animation:beat-in var(--dur-base) var(--ease-out) both;display:block;overflow:hidden}.beat.fresh .beat-text{color:var(--ink)}@keyframes beat-in{0%{opacity:0;transform:translateY(4px)}}.beat .slowmo{display:none}.beat-pips{flex:none;align-items:center;gap:5px;display:flex}.beat-pips i{border-radius:var(--r-round);width:6px;height:6px;box-shadow:inset 0 0 0 1.5px var(--rail);transition:transform var(--dur-base) var(--ease-out)}.beat-pips i.past{box-shadow:inset 0 0 0 3px var(--ink-2)}.beat-pips i.on{box-shadow:inset 0 0 0 3px var(--ink);transform:scale(1.35)}.sheet:has(.callout[data-placed]) .beat-text{visibility:hidden}.sheet>.stage{grid-row:var(--stage-row);grid-column:1}.flight{grid-row:var(--strip-row);z-index:1;border-bottom:1px solid var(--rule);background:var(--surface);min-width:0;animation:beat-in var(--dur-base) var(--ease-out) both;grid-column:1;align-items:center;gap:12px;padding:0 6px 0 16px;display:flex}.flight-tag{color:var(--ink);font:700 var(--fs-caption)/1 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;flex:none}.flight-text{min-width:0;color:var(--ink);font:600 var(--fs-meta)/1.2 var(--font-body);text-overflow:ellipsis;white-space:nowrap;flex:40%;margin:0;overflow:hidden}.flight-bar{flex:30%;align-items:center;gap:1px;min-width:60px;max-width:260px;height:12px;display:flex}.hop{border-radius:2px;min-width:2px;height:100%}.hop-travel{background:var(--rail);height:2px}.hop-wait{box-shadow:inset 0 0 0 1.5px var(--ink-2)}.hop-work{background:var(--ink)}.flight-sum{color:var(--muted);font:500 var(--fs-caption)/1 var(--font-mono);white-space:nowrap;flex:none;gap:10px;display:flex}.flight-close{border-color:#0000;flex:none;width:28px;height:28px}.callout{z-index:2;border:1px solid var(--ink);border-left:3px solid var(--lc);border-radius:var(--r-ctl);background:var(--card);max-width:264px;color:var(--ink);box-shadow:var(--e-raised);font:600 var(--fs-ui)/1.4 var(--font-body);text-wrap:pretty;animation:callout-in var(--dur-base) var(--ease-out) both;padding:8px 12px 9px;position:absolute;top:0;left:0}.callout:not([data-placed]){visibility:hidden;animation:none}@keyframes callout-in{0%{opacity:0;transform:translateY(4px)}}.callout-leader{z-index:1;pointer-events:none;width:100%;height:100%;animation:fade-in var(--dur-base) var(--ease-out) both;position:absolute;inset:0;overflow:visible}.callout-leader line{stroke:var(--ink);stroke-width:1.5px}.callout-leader circle{fill:var(--ink)}.term{color:inherit;font:inherit;-webkit-text-decoration:underline dotted;text-decoration:underline dotted;text-decoration-thickness:1.5px;-webkit-text-decoration-color:color-mix(in srgb, currentColor 55%, transparent);text-decoration-color:color-mix(in srgb, currentColor 55%, transparent);text-underline-offset:3px;cursor:help;background:0 0;border:0;padding:0;display:inline}.term:hover{text-decoration-color:currentColor}.term-word{-webkit-text-decoration:underline dotted;text-decoration:underline dotted;text-decoration-thickness:1.5px;-webkit-text-decoration-color:color-mix(in srgb, currentColor 55%, transparent);text-decoration-color:color-mix(in srgb, currentColor 55%, transparent);text-underline-offset:3px}.term-chips{flex-wrap:wrap;gap:6px;display:flex}.term-chip{border-radius:var(--r-round);height:40px;color:var(--ink-2);font:600 var(--fs-meta)/1 var(--font-body);-webkit-text-decoration:underline dotted 1.5px color-mix(in srgb, currentColor 55%, transparent);text-decoration:underline dotted 1.5px color-mix(in srgb, currentColor 55%, transparent);text-underline-offset:3px;padding:0 12px}.term-pop,.metric-pop{border:1px solid var(--rule);border-radius:var(--r-card);background:var(--surface);width:min(320px,100vw - 24px);max-height:calc(100svh - 24px);color:var(--ink);box-shadow:var(--e-raised);margin:0;padding:8px 14px 14px;position:fixed;inset:auto;overflow-y:auto}.term-pop.above{translate:0 -100%}:is(.term-pop:popover-open,.metric-pop:popover-open){animation:pop-in var(--dur-base) var(--ease-out) both}.term-head{justify-content:space-between;align-items:center;gap:var(--sp-2);margin:0 -6px 4px 0;display:flex}.term-head h2{font:600 var(--fs-h3)/1.15 var(--font-guide), Georgia, serif;margin:0}.term-alias{color:var(--muted);font:500 var(--fs-caption)/1.3 var(--font-mono);margin:0 0 6px}.term-short,.metric-line,.metric-why{color:var(--ink-2);font-size:var(--fs-meta);margin:0 0 6px;line-height:1.45}.metric-line:first-of-type{color:var(--ink);font-weight:700}.metric-why strong{color:var(--ink)}.term-actions{justify-content:space-between;align-items:center;gap:var(--sp-3);margin-top:var(--sp-3);display:flex}.term-all{font-size:var(--fs-meta);margin-left:auto}.hook{color:var(--ink-2);font:italic 500 var(--fs-h3)/1.3 var(--font-guide), Georgia, serif;text-wrap:balance;margin:4px 0 -2px}.card,.watch{gap:8px;margin:2px 0 0;padding:12px 14px;display:grid}.watch{border-radius:var(--r-card);background:var(--paper);gap:6px;padding-block:10px}.card-eyebrow{color:var(--lc-ink);font:700 var(--fs-caption)/1 var(--font-mono);letter-spacing:.06em;text-transform:uppercase;margin:0}.card-prompt{color:var(--ink);font:600 17px/1.3 var(--font-guide), Georgia, serif;margin:0}.card-options{gap:6px;display:grid}.opt{border:1px solid var(--rule);border-radius:var(--r-ctl);background:var(--surface);min-height:40px;color:var(--ink);font:600 var(--fs-ui)/1.3 var(--font-body);text-align:left;transition:border-color var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);align-items:center;gap:8px;padding:8px 12px;display:flex}.opt:hover:not(:disabled){border-color:var(--muted)}.opt:active:not(:disabled){transform:scale(.98)}.opt:disabled{opacity:.5}.opt.right{border-color:var(--t-ok);color:var(--t-ok)}.opt.wrong{border-color:var(--t-bad);color:var(--t-bad)}.opt svg,.card-result svg{vertical-align:-3px;flex:none;width:16px;height:16px}.mark-right{color:var(--t-ok)}.mark-wrong{color:var(--t-bad)}.card-result,.card-why{color:var(--ink-2);font-size:var(--fs-ui);margin:0;line-height:1.45}.card.done{padding-block:10px}.card.feel .card-options{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}.card.feel .opt[aria-pressed=true]{border-color:var(--ink);box-shadow:inset 0 0 0 1px var(--ink)}.feel-snags{gap:6px;display:grid}.feel-note{color:var(--muted);font-size:var(--fs-caption);margin:0}.card-result strong{color:var(--ink)}.card-wait{color:var(--muted)}.watch ol{counter-reset:beat;gap:2px;margin:0;padding:0;list-style:none;display:grid}.watch li{color:var(--muted);font-size:var(--fs-meta);counter-increment:beat;padding-left:26px;line-height:1.35;position:relative}.watch li:before{content:counter(beat);border-radius:var(--r-round);width:18px;height:18px;box-shadow:inset 0 0 0 1.5px var(--rail);font:600 var(--fs-caption)/1 var(--font-mono);place-items:center;display:grid;position:absolute;top:1px;left:0}.watch li:not(.now){text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.watch li.seen{color:var(--ink-2)}.watch li.now{color:var(--ink);font-weight:700}.watch li.now:before{background:var(--ink);box-shadow:none;color:var(--paper)}.knob.spot,.btn-fault.spot{border-radius:var(--r-ctl);box-shadow:0 0 0 2px var(--accent);animation:spot-in var(--dur-switch) var(--ease-out) both}.compare tr.spot>*{background:color-mix(in srgb, var(--accent) 9%, transparent)}@keyframes spot-in{0%{transform:scale(1.03)}}.rule{border-left:3px solid var(--lc);color:var(--ink);font:italic 500 var(--fs-h3)/1.3 var(--font-guide), Georgia, serif;text-wrap:balance;margin:2px 0 0;padding:2px 0 2px 14px}.in-numbers .card-eyebrow{margin-bottom:4px;display:block}.btn-follow svg{width:16px}.btn-follow.on{border-color:var(--ink);background:var(--ink);color:var(--paper)}.panel{border-left:1px solid var(--rule);background:var(--surface);grid-area:panel;grid-template-rows:minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);min-height:0;display:grid}.panel-scroll{overscroll-behavior:contain;scrollbar-gutter:stable;flex-direction:column;gap:14px;min-height:0;padding:0 20px 16px;display:flex;overflow-y:auto}.panel-head{z-index:2;background:var(--surface);padding:14px 0 2px;position:sticky;top:0}.panel-pin{border-top:1px solid var(--rule);background:var(--surface);padding:10px 20px 12px;container-type:inline-size}.summary-row{grid-area:summary;min-width:0;display:none}.dock{border-top:1px solid var(--rule);background:var(--surface);grid-area:dock;align-items:center;gap:12px;min-width:0;padding:0 16px;display:flex;position:relative}.dock-fill{flex:1}.dock-progress{isolation:isolate;align-items:center;gap:14px;display:flex;position:relative}.dock-progress:before{content:"";background:var(--track);z-index:-1;border-radius:1px;height:2px;margin-top:-1px;position:absolute;inset:50% 4px auto}.dock-progress i{border-radius:var(--r-round);background:var(--surface);width:10px;height:10px;box-shadow:inset 0 0 0 2px var(--rail);transition:transform var(--dur-base) var(--ease-out)}.dock-progress i.past{box-shadow:inset 0 0 0 5px color-mix(in srgb, var(--lc) 55%, var(--track))}.dock-progress i.on{box-shadow:inset 0 0 0 5px var(--lc);transform:scale(1.25)}.btn-back{animation:back-in var(--dur-exit) var(--ease-out) both}@keyframes back-in{0%{opacity:0;transform:translate(-4px)}}.btn-back svg{width:15px}.btn-next{min-width:0;max-width:420px;height:44px;padding:0 18px;font-size:15px}.btn-next-label{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.dock-hold{color:var(--muted);font:600 var(--fs-meta) var(--font-mono)}.dock-hold.done{color:var(--t-ok)}.tabs{border:1px solid var(--rule);border-radius:var(--r-card);background:var(--paper);gap:3px;margin:0;padding:3px;list-style:none;display:flex}.tab{border-radius:calc(var(--r-card) - 3px);min-width:44px;height:40px;color:var(--ink-2);font:600 var(--fs-ui)/40px var(--font-body);white-space:nowrap;transition:background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out), box-shadow var(--dur-fast) var(--ease-out), transform var(--dur-fast) var(--ease-out);flex-wrap:wrap;flex:0 auto;place-content:flex-start center;align-items:center;column-gap:7px;padding:0 11px 0 9px;display:flex;overflow:hidden}.tab:hover:not(:disabled){color:var(--ink)}.tab[aria-selected=true],.tab.current{background:var(--surface);color:var(--ink);box-shadow:0 0 0 1px var(--rule);flex-shrink:0}.tab:disabled{opacity:.45}.tabs.tight .tab:not([aria-selected=true]){flex:none;width:44px;padding:0}.tab-n{border-radius:var(--r-round);background:var(--track);width:20px;height:20px;color:var(--ink-2);font:600 var(--fs-caption)/1 var(--font-mono);transition:background-color var(--dur-fast) var(--ease-out), color var(--dur-fast) var(--ease-out);flex:none;place-items:center;margin-block:10px;display:inline-grid}.tab[aria-selected=true] .tab-n,.tab.current .tab-n{background:var(--tone,var(--ink));color:var(--on-tone,var(--paper))}.tab.cleared .tab-n{background:var(--good);color:var(--on-good)}.step{animation:step-in var(--dur-base) var(--ease-out) both;flex-direction:column;gap:8px;display:flex}@keyframes step-in{0%{opacity:0;transform:translateY(8px)}}.step-title{font:600 var(--fs-step)/1.15 var(--font-guide), Georgia, serif;letter-spacing:-.01em;margin:2px 0 0}.step-text{color:var(--ink-2);font-size:var(--fs-body);margin:0;line-height:1.55}.tone-problem{--tone:var(--bad);--on-tone:var(--on-bad);--tone-text:var(--t-bad)}.tone-fix{--tone:var(--good);--on-tone:var(--on-good);--tone-text:var(--t-ok)}.tone-tradeoff{--tone:var(--ink);--on-tone:var(--paper);--tone-text:var(--ink-2)}.tone-explore{--tone:var(--accent);--on-tone:var(--on-accent);--tone-text:var(--t-req)}.controls{border-radius:var(--r-card);background:var(--paper);gap:8px;margin-top:2px;padding:10px 12px;display:grid}.knob-range{grid-template-columns:1fr auto;align-items:center;gap:2px 12px;display:grid}.knob-label,.knob-choice legend{font:700 var(--fs-ui)/1.2 var(--font-body)}.knob-value{color:var(--t-req);font:600 var(--fs-ui) var(--font-mono);font-variant-numeric:tabular-nums}.knob-range input{width:100%;height:24px;accent-color:var(--accent);cursor:pointer;grid-column:1/-1;margin:0}.knob-choice legend{margin-bottom:8px}.faults{flex-wrap:wrap;gap:8px;display:flex}.takeaways{gap:14px;margin:4px 0 0;display:grid}.takeaways dt{color:var(--lc-ink);font:600 17px/1.2 var(--font-guide), Georgia, serif}.takeaways dd{color:var(--ink-2);font-size:var(--fs-body);margin:4px 0 0;line-height:1.5}.compare{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}.compare:focus-visible{outline-offset:4px}.compare th,.compare td{border-bottom:1px solid var(--rule);text-align:right;white-space:nowrap;padding:5px 4px}.compare tbody tr:last-child>*{border-bottom:0}.compare thead th{color:var(--muted);font:600 var(--fs-caption)/1.15 var(--font-body);white-space:normal;vertical-align:bottom;padding-top:0;padding-bottom:4px}.compare thead th.on{color:var(--ink);box-shadow:inset 0 -2px 0 var(--lc)}.compare tbody th{color:var(--ink-2);font:700 var(--fs-meta)/1.2 var(--font-body);text-align:left;white-space:normal;padding-left:0}.compare tbody th .mx{color:inherit;font:inherit;text-align:left;-webkit-text-decoration:underline dotted 1px color-mix(in srgb, currentColor 40%, transparent);text-decoration:underline dotted 1px color-mix(in srgb, currentColor 40%, transparent);text-underline-offset:3px;cursor:pointer;background:0 0;border:0;padding:0;display:block}.compare tbody th .mx:hover{color:var(--ink)}.compare .target,.mrow .target{color:var(--muted);font:500 var(--fs-caption)/1.2 var(--font-mono);white-space:nowrap;margin-top:2px;display:block}.compare td.num{color:var(--ink);font:600 var(--fs-ui)/1.2 var(--font-mono);padding-left:8px}.compare td.share{background:linear-gradient(var(--share-ink), var(--share-ink)) right bottom 2px / calc(var(--share) * 100%) 3px no-repeat;--share-ink:color-mix(in srgb, var(--ink) 38%, transparent)}.compare td.tone-good,.summary .num.tone-good{color:var(--t-ok)}.compare td.tone-warn,.summary .num.tone-warn{color:var(--t-warn)}.compare td.tone-bad,.summary .num.tone-bad{color:var(--t-bad)}.compare td.delta,.summary .delta{color:var(--muted);font:600 var(--fs-meta)/1.2 var(--font-mono)}.compare td.delta.up,.summary .delta.up{color:var(--t-ok)}.compare td.delta.down,.summary .delta.down{color:var(--t-bad)}.compare .cue{animation:cue var(--dur-base) var(--ease-out) both;display:inline-block}@keyframes cue{0%{opacity:.3;transform:translateY(3px)}}.delta-bar{opacity:.75;transform-origin:100%;width:36px;height:2px;transition:transform var(--dur-base) var(--ease-out);background:currentColor;border-radius:1px;margin:3px 0 0 auto;display:block}.compare td.trend{width:44px;padding-right:0}.compare .spark{width:40px;height:14px;margin-left:auto;display:block}@container (max-width:349px){.compare .trend,.compare .trend-h{display:none}}.summary{border-top:1px solid var(--rule);background:var(--surface);text-align:left;align-items:center;gap:12px;width:100%;height:100%;padding:0 16px;display:flex}.summary-label{min-width:0;color:var(--ink-2);font:700 var(--fs-meta)/1.15 var(--font-body);-webkit-line-clamp:2;line-clamp:2;-webkit-box-orient:vertical;flex:1;display:-webkit-box;overflow:hidden}.summary-vals{font:600 15px/1 var(--font-mono);font-variant-numeric:tabular-nums;white-space:nowrap;align-items:center;gap:6px;display:flex}.summary-vals .num{color:var(--ink);align-items:center;gap:6px;padding-bottom:3px;display:inline-flex}.summary-vals .num.on{box-shadow:inset 0 -2px 0 var(--lc)}.summary-vals svg{width:13px;height:13px;color:var(--muted)}.summary .delta{text-align:right;min-width:44px}.mlist{gap:0;margin:0;display:grid}.mrow{border-bottom:1px solid var(--rule);grid-template-columns:1fr auto 60px;align-items:center;gap:10px;padding:7px 0;display:grid}.mrow dt{color:var(--ink-2);font:700 var(--fs-meta)/1.2 var(--font-body);cursor:help}.mrow dd{margin:0}.mrow .num{font:600 15px/1 var(--font-mono);font-variant-numeric:tabular-nums;text-align:right}.mrow.tone-good .num{color:var(--t-ok)}.mrow.tone-warn .num{color:var(--t-warn)}.mrow.tone-bad .num{color:var(--t-bad)}.spark{width:60px;height:18px;color:var(--muted)}.spark polyline{fill:none;stroke:currentColor;stroke-width:1.5px;stroke-linejoin:round}.stage{min-width:0;min-height:0;position:relative;overflow:hidden}.stage-svg,.stage-canvas{width:100%;height:100%;position:absolute;inset:0}.stage-canvas{pointer-events:none}.stage-compact{display:none}@media (max-width:640px){.stage-wide{display:none}.stage-compact{display:block}}.stage[data-mode=wide] .stage-wide,.stage[data-mode=compact] .stage-compact,.stage[data-mode=tall] .stage-tall{display:block}.link-g{animation:fade-in var(--dur-base) var(--ease-out) var(--beat) both}.link-g.leaving{animation:fade-out var(--dur-exit) var(--ease-exit) both}@keyframes fade-out{to{opacity:0}}@keyframes fade-in{0%{opacity:0}}.rail,.rail-core,.link{fill:none;stroke-linecap:round;vector-effect:non-scaling-stroke}.rail{stroke:var(--rail);stroke-width:8px}.rail-core{stroke:var(--rail-core);stroke-width:5px}.link.sync{stroke:var(--muted);stroke-width:2.5px;stroke-dasharray:2 7}.link-g.cut .rail,.link-g.cut .link{stroke:color-mix(in srgb, var(--dot-err) 45%, var(--rail));stroke-dasharray:12 10}.link-g.cut .rail-core{opacity:0}.link-flow{fill:none;stroke:var(--dot-req);stroke-width:5px;stroke-linecap:round;vector-effect:non-scaling-stroke;transition:opacity var(--dur-base) var(--ease-linear)}.link-flow.failing{stroke:var(--dot-err)}.mark{transform-box:fill-box;transform-origin:50%;animation:mark-in var(--dur-base) var(--ease-out) both}@keyframes mark-in{0%{opacity:0;transform:scale(.6)}}.break-mark rect{fill:var(--stage)}.break-mark path{fill:none;stroke:var(--bad);stroke-width:2.4px;stroke-linecap:round}.cut-mark circle{fill:var(--bad)}.cut-mark path{stroke:var(--on-bad);stroke-width:2.4px;stroke-linecap:round}.node-pos{transition:transform var(--dur-switch) var(--ease-out), opacity var(--dur-base) var(--ease-linear)}.node{transform-box:fill-box;transform-origin:50%;transition:opacity var(--dur-base) var(--ease-linear)}.node.entering{animation:node-in var(--dur-base) var(--ease-out) var(--beat) both}.node.leaving{animation:node-leave var(--dur-exit) var(--ease-exit) both}@keyframes node-in{0%{opacity:0;transform:scale(.94)}}@keyframes node-leave{to{opacity:0;transform:scale(.96)}}.stage[data-intro] .node:not(.known){animation:node-in var(--intro-node) var(--ease-out) calc(var(--i,0) * var(--intro-step)) both}.stage[data-intro] .link-g:not(.known){animation:none}.stage[data-intro] .link-g.flow:not(.known) :is(.rail,.rail-core){animation:link-draw var(--intro-stroke) var(--ease-out) calc(var(--i,0) * var(--intro-step) + var(--beat)) both}.stage[data-intro] .link-g.sync:not(.known){animation:fade-in var(--intro-stroke) var(--ease-out) calc(var(--i,0) * var(--intro-step) + var(--beat)) both}.stage[data-intro] .link-g:not(.known) .link-flow{visibility:hidden}@keyframes link-draw{0%{stroke-dasharray:calc(var(--len) * 1px) calc(var(--len) * 1px);stroke-dashoffset:calc(var(--len) * 1px)}to{stroke-dasharray:calc(var(--len) * 1px) calc(var(--len) * 1px);stroke-dashoffset:0}}.stage[data-focus] .node-pos.dim{opacity:.45}.stage[data-focus] .link-g.dim{opacity:.5}.fresh-ring{fill:none;stroke:var(--accent);stroke-width:2.5px;transform-box:fill-box;transform-origin:50%;animation:fresh var(--dur-switch) var(--ease-out) var(--beat) both;pointer-events:none}@keyframes fresh{0%{opacity:.9;transform:scale(.92)}to{opacity:0;transform:scale(1.18)}}.node .body,.node .rim{fill:var(--card);stroke:var(--ink);stroke-width:1.5px;vector-effect:non-scaling-stroke;transition:stroke var(--dur-base) var(--ease-out), fill var(--dur-base) var(--ease-out)}.node .rim{fill:none}.node .ico{fill:none;stroke:var(--ink);stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round}.node .socket{fill:var(--socket);stroke:var(--socket-edge);stroke-width:1px;vector-effect:non-scaling-stroke}.node.spot-sockets .socket{stroke:var(--ink);stroke-width:1.75px}.node .tick{stroke:var(--rule);stroke-width:1.5px}.node .platform{fill:none;stroke:var(--rail);stroke-width:2px;stroke-linecap:round;vector-effect:non-scaling-stroke}.g-bot .body{fill:color-mix(in srgb, var(--dot-err) 9%, var(--card))}.g-queue .body{fill:var(--paper)}.node-label{fill:var(--ink);font-family:var(--font-body), system-ui, sans-serif;font-weight:700;font-size:calc(var(--label-px) / var(--k,1) / var(--ns,1))}.node-sub{fill:var(--muted);font-family:var(--font-mono), ui-monospace, monospace;font-weight:500;font-size:calc(var(--sub-px) / var(--k,1) / var(--ns,1))}.link-label{fill:var(--muted);font-family:var(--font-mono), ui-monospace, monospace;font-weight:500;font-size:calc(var(--sub-px) / var(--k,1))}.node-label,.node-sub{paint-order:stroke;stroke:var(--stage);stroke-width:calc(4px / var(--k,1) / var(--ns,1));stroke-linejoin:round}.label-plate{fill:var(--stage)}.link-label{paint-order:stroke;stroke:var(--stage);stroke-width:calc(4px / var(--k,1));stroke-linejoin:round}.node.hot .body{stroke:var(--dot-slow);stroke-width:2.5px}.node.down .body{stroke:var(--dot-err);stroke-dasharray:6 4;fill:color-mix(in srgb, var(--dot-err) 8%, var(--card))}.node.down .ico{stroke:var(--t-bad)}.node.down .node-sub{fill:var(--t-bad)}.node.stalled .body{stroke-dasharray:6 4}.node.benched .body{stroke:var(--dot-slow);stroke-dasharray:6 4}.node.dlq .body{stroke:var(--dot-err);stroke-width:2.5px}.node.booting .body{stroke:var(--dot-req);stroke-dasharray:5 5}.node .frame{transform-box:fill-box;transform-origin:50%}.node.down .frame{animation:node-drop var(--dur-base) var(--ease-out) both}.node.booting .frame{animation:node-in var(--dur-switch) var(--ease-out) both}@keyframes node-drop{45%{transform:translateY(3px)}to{transform:translateY(1.5px)}}.behind-mark{fill:none;stroke:var(--dot-stale);stroke-width:2.5px;stroke-linecap:round;vector-effect:non-scaling-stroke;opacity:0;transition:opacity var(--dur-base) var(--ease-linear)}.behind-mark.on{opacity:1}.node.draining{opacity:.6}.node.off{opacity:.35}.node.off .body{stroke:var(--muted);stroke-dasharray:4 5}.meter .track{fill:var(--track)}.meter .fill{transform-box:fill-box;transform-origin:0;transition:transform var(--dur-base) var(--ease-linear)}.fill-good{fill:var(--dot-ok)}.fill-warn{fill:var(--dot-slow)}.fill-bad{fill:var(--dot-err)}.fill-cache{fill:var(--dot-req)}.badge{animation:fade-in var(--dur-exit) var(--ease-out) both}.badge rect{fill:var(--muted)}.badge text{fill:var(--paper);font-family:var(--font-mono), ui-monospace, monospace;font-weight:700;font-size:calc(var(--badge-px) / var(--k,1) / var(--ns,1));letter-spacing:.04em}.badge-bad rect{fill:var(--bad)}.badge-bad text{fill:var(--on-bad)}.badge-warn rect{fill:var(--warn)}.badge-warn text{fill:var(--on-warn)}.badge-good rect{fill:var(--good)}.badge-good text{fill:var(--on-good)}.badge-role rect{fill:var(--card);stroke:var(--ink);stroke-width:1px;vector-effect:non-scaling-stroke}.badge-role text{fill:var(--ink)}.badge-clock rect{fill:var(--card);stroke:var(--ink);stroke-width:1px;stroke-dasharray:3 2;vector-effect:non-scaling-stroke}.badge-clock text{fill:var(--ink)}.badge.pill{animation:none}.pill .pill-track,.pill .pill-marker{fill:var(--on-tone-pill,var(--paper))}.pill .pill-track{opacity:.35}.pill .pill-marker{transition:transform var(--dur-base) var(--ease-out)}.pill.badge-good{--on-tone-pill:var(--on-good)}.pill.badge-warn{--on-tone-pill:var(--on-warn)}.pill.badge-bad{--on-tone-pill:var(--on-bad)}.story-stages{grid-template-columns:1fr 1fr;display:grid}.story-stages .tab{text-align:left;white-space:normal;flex-wrap:nowrap;justify-content:flex-start;width:100%;height:100%;min-height:44px;padding-block:6px;line-height:1.2}.story-stages .tab-n{margin-block:0}.story-hint summary{width:fit-content;color:var(--t-req);font:700 var(--fs-ui) var(--font-body);cursor:pointer}.story-hint p{color:var(--ink-2);font-size:var(--fs-body);margin:6px 0 0}.story-build{border-radius:var(--r-card);background:var(--paper);gap:10px;padding:12px 14px;display:grid}.stepper,.toggle{justify-content:space-between;align-items:center;gap:8px;display:flex}.stepper-label{font:700 var(--fs-ui)/1.2 var(--font-body)}.stepper-ctl{border:1px solid var(--rule);border-radius:var(--r-ctl);background:var(--surface);align-items:center;display:inline-flex}.stepper-ctl button{width:36px;height:36px;font:700 18px/1 var(--font-display)}.stepper-ctl button:disabled{opacity:.35}.stepper-ctl output{text-align:center;min-width:22px;font:600 15px var(--font-mono)}.toggle{cursor:pointer;position:relative}.toggle input{opacity:0;width:1px;height:1px;position:absolute}.toggle-ui{border-radius:var(--r-round);background:var(--track);width:46px;height:28px;transition:background-color var(--dur-base) var(--ease-out);flex:none;position:relative}.toggle-ui:after{content:"";border-radius:var(--r-round);background:var(--surface);width:22px;height:22px;transition:transform var(--dur-base) var(--ease-out);position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #15171c4d}.toggle input:checked+.toggle-ui{background:var(--good)}.toggle input:checked+.toggle-ui:after{transform:translate(18px)}.toggle input:focus-visible+.toggle-ui{outline:3px solid var(--accent);outline-offset:2px}.story-cost{border-top:1px solid var(--rule);grid-column:1/-1;justify-content:space-between;align-items:baseline;margin:0;padding-top:8px;display:flex}.story-cost span{color:var(--muted);font:600 var(--fs-caption) var(--font-mono)}.story-cost strong{font:700 19px/1.1 var(--font-mono)}.story-status{gap:8px;display:grid}.story-target{grid-template-columns:1fr 1fr;gap:8px;display:grid}.story-cell{border:1px solid var(--rule);border-radius:var(--r-ctl);background:var(--paper);gap:2px;padding:8px 10px;display:grid}.story-cell-label{color:var(--ink-2);font:700 var(--fs-meta)/1.2 var(--font-body)}.story-cell .num{color:var(--muted);font:700 19px/1.15 var(--font-mono);font-variant-numeric:tabular-nums}.story-cell.pass .num{color:var(--t-ok)}.story-cell.fail{border-color:color-mix(in srgb, var(--bad) 45%, var(--rule))}.story-cell.fail .num{color:var(--t-bad)}.story-cell .target{color:var(--muted);font:500 var(--fs-caption)/1.2 var(--font-mono)}.hold-row{align-items:center;gap:12px;display:flex}.hold{border-radius:var(--r-round);background:var(--track);flex:1;height:10px;overflow:hidden}.hold-bar{background:var(--good);transform-origin:0;height:100%;transition:transform .2s var(--ease-linear);display:block}.hold-text{font:600 var(--fs-meta) var(--font-mono);white-space:nowrap;flex:none;margin:0}.story-win{border-radius:var(--r-card);background:color-mix(in srgb, var(--good) 14%, var(--surface));margin:0;padding:12px 14px;font-weight:700}.glossary{padding:var(--sp-8) 0 var(--sp-9)}.glossary h1{font:600 clamp(2rem, 4.4vw, 3rem)/1.08 var(--font-guide), Georgia, serif;letter-spacing:-.01em;margin:12px 0 0}.glossary .lede{max-width:36em}.glossary-list{gap:var(--sp-4);margin:var(--sp-7) 0 0;grid-template-columns:repeat(auto-fill,minmax(min(100%,320px),1fr));display:grid}.glossary-list>div{padding:var(--sp-4) var(--sp-4) var(--sp-4) 18px;border:1px solid var(--rule);border-left:3px solid var(--ink);border-radius:var(--r-card);background:var(--surface);scroll-margin-top:24px}.glossary-list dt{font:600 var(--fs-h3)/1.2 var(--font-guide), Georgia, serif}.glossary-alias{color:var(--muted);font:500 var(--fs-caption)/1.3 var(--font-mono);margin-top:4px;display:block}.glossary-list dd{color:var(--ink-2);font-size:var(--fs-body);margin:8px 0 0;line-height:1.5}.glossary-where{font-size:var(--fs-meta);margin-top:10px;display:block}.progress{padding:var(--sp-8) 0 var(--sp-9)}.progress h1{font:600 clamp(2rem, 4.4vw, 3rem)/1.08 var(--font-guide), Georgia, serif;letter-spacing:-.01em;margin:12px 0 0}.progress .lede{max-width:36em}.progress-empty{margin:var(--sp-6) 0 0;color:var(--ink-2)}.progress-stats{gap:var(--sp-4);margin:var(--sp-7) 0 0;grid-template-columns:repeat(auto-fill,minmax(min(100%,200px),1fr));display:grid}.progress-stats>div{padding:var(--sp-4);border:1px solid var(--rule);border-radius:var(--r-card);background:var(--surface)}.progress-stats dt{color:var(--muted);font:600 var(--fs-caption)/1.2 var(--font-mono);letter-spacing:.06em;text-transform:uppercase}.progress-stats dd{font:700 28px/1.1 var(--font-display);margin:8px 0 0}.progress-stats dd span{color:var(--muted);font:500 var(--fs-meta)/1.3 var(--font-body);margin-top:4px;display:block}.progress-h2{margin:var(--sp-7) 0 var(--sp-3);font:600 var(--fs-h3)/1.2 var(--font-guide), Georgia, serif}.progress-lines,.progress-recent{margin:0;padding:0;list-style:none;display:grid}.progress-lines li{border-bottom:1px solid var(--rule);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:6px 12px;padding:10px 0;display:grid}.progress-lines .roundel-sm{grid-row:span 2;width:26px;height:26px;font-size:13px}.progress-line-name{font:700 15px/1.2 var(--font-display)}.progress-line-nums{color:var(--muted);font-size:var(--fs-meta);text-align:right}.progress-pips{flex-wrap:wrap;grid-column:2/-1;gap:4px;display:flex}.progress-pips i{border-radius:var(--r-round);width:9px;height:9px;box-shadow:inset 0 0 0 1.5px var(--lc)}.progress-pips i.on{box-shadow:inset 0 0 0 3px var(--lc)}.progress-pips i.done{background:var(--lc)}.progress-felt{margin:var(--sp-5) 0 0;color:var(--ink-2)}.progress-recent li{border-bottom:1px solid var(--rule);font-size:var(--fs-ui);justify-content:space-between;gap:12px;padding:8px 0;display:flex}.progress-recent time{color:var(--muted);font:500 var(--fs-caption)/1.4 var(--font-mono);flex:none}.progress-actions{margin:var(--sp-7) 0 0;flex-wrap:wrap;gap:10px;display:flex}.lost{padding-top:var(--sp-9)}.lost h1{letter-spacing:-.03em;margin:12px 0;font-size:clamp(2rem,5vw,3.4rem);font-weight:800}@media (max-width:1180px){.shell{grid-template-columns:minmax(0,1fr) 368px}}@media (max-width:1000px){.bar-stops{display:none}}@media (max-height:760px) and (min-width:761px){.shell{--bar-h:52px;--dock-h:56px}.step-title{font-size:22px}}@media (max-width:900px){.route-poster{display:none}.route-board{display:block}.masthead{grid-template-columns:minmax(0,1fr);min-height:0}.hero-fig{height:clamp(320px,56svh,520px)}.journey-card{grid-template-columns:minmax(0,1fr)}}@media (max-width:640px){.hero-fig{height:auto}.hero-stage{height:min(400px,100vw + 24px)}.line-index{grid-template-columns:repeat(2,minmax(0,1fr))}.journey-card{padding:var(--sp-4)}.journey-scene .sheet{height:460px}.specimen{grid-template-columns:minmax(0,1fr);gap:0;padding:8px 0 10px}.specimen svg{width:100%;max-width:260px;height:auto}}@media (max-width:760px) and (orientation:portrait),(max-width:760px) and (min-height:521px){.shell{--bar-h:48px;--dock-h:56px;grid-template-columns:minmax(0,1fr);grid-template-rows:var(--bar-h) 46svh 44px minmax(0, 1fr) auto;grid-template-areas:"bar""theatre""summary""panel""dock"}.shell:not(:has(>.summary-row)){grid-template-rows:var(--bar-h) 46svh minmax(0, 1fr) auto;grid-template-areas:"bar""theatre""panel""dock"}.bar{gap:8px;padding:0 4px 0 12px}.bar .brand-name,.bar-line{display:none}.bar-title{font-size:17px}.theatre{padding:8px 8px 6px}.sheet{--strip-row:2;--stage-row:1;border-radius:var(--r-card);grid-template-rows:minmax(0,1fr) 56px}.beat,.flight{border-top:1px solid var(--rule);border-bottom:0}.beat{grid-template:"text text text text"minmax(0,1fr)"tone pips.clock"/minmax(0,auto) auto minmax(0,1fr) auto;align-items:center;gap:2px 10px;padding:5px 12px 4px;display:grid}.beat-tone{font-size:var(--fs-caption);text-overflow:ellipsis;white-space:nowrap;grid-area:tone;overflow:hidden}.beat-text{grid-area:text}.beat-text:not(:empty){border-left:0;padding-left:0}.beat-text>span{-webkit-line-clamp:2;white-space:normal;-webkit-box-orient:vertical;line-height:1.3;display:-webkit-box}.beat-pips{grid-area:pips}.beat .slowmo{grid-area:clock;display:block}.flight{flex-wrap:wrap;align-content:center;gap:4px 10px;padding:4px 48px 4px 12px;position:relative}.flight-text{flex:60%}.flight-bar{flex:30%;order:3}.flight-sum{order:4;gap:6px}.flight-close{width:40px;height:40px;position:absolute;top:50%;right:4px;translate:0 -50%}.summary-row{display:block}.summary{border-bottom:1px solid var(--rule)}.panel{overscroll-behavior:contain;border-left:0;display:block;overflow-y:auto}.panel-scroll{scrollbar-gutter:auto;padding:0 16px 16px;overflow:visible}.panel-head{padding-top:10px;box-shadow:0 8px 10px -10px #15171c4d}.panel-pin{border-top:0;padding:4px 16px 18px}.dock{padding:6px 10px calc(6px + env(safe-area-inset-bottom));gap:8px}.dock .slowmo,.dock-progress,.btn-back,.when-wide{display:none}.btn-next{gap:6px;padding:0 12px}.btn-follow{flex:none;width:40px;padding:0}.step-title{font-size:21px}.hero-fig{padding:6px}.site-nav a{padding:0 var(--sp-2);font-size:var(--fs-ui)}}@media (max-width:440px){.site-head .brand-name{display:none}.site-nav a{padding:0 var(--sp-2)}}@media (orientation:landscape) and (max-height:520px){.shell{--bar-h:44px;--dock-h:48px;grid-template-columns:minmax(0,1fr) 44%;grid-template-rows:var(--bar-h) 44px minmax(0, 1fr) var(--dock-h);grid-template-areas:"bar bar""theatre summary""theatre panel""dock dock"}.shell:not(:has(>.summary-row)){grid-template-rows:var(--bar-h) minmax(0, 1fr) var(--dock-h);grid-template-areas:"bar bar""theatre panel""dock dock"}.bar{padding:0 4px 0 12px}.bar-line,.dock-progress{display:none}.bar-title{font-size:17px}.theatre{padding:6px}.sheet{border-radius:var(--r-card);grid-template-rows:44px minmax(0,1fr)}.beat{padding:0 12px}.beat:has(.beat-text:not(:empty)) .beat-tone{display:none}.beat-text:not(:empty){border-left:0;padding-left:0}.beat-text>span{-webkit-line-clamp:2;white-space:normal;-webkit-box-orient:vertical;line-height:1.3;display:-webkit-box}.flight-sum{display:none}.flight-close{width:40px;height:40px}.summary-row{border-left:1px solid var(--rule);display:block}.summary{border-top:0;border-bottom:1px solid var(--rule);padding:0 14px}.panel{overscroll-behavior:contain;display:block;overflow-y:auto}.panel-scroll{scrollbar-gutter:auto;padding:0 14px 14px;overflow:visible}.panel-head{padding-top:8px}.panel-pin{border-top:0;padding:4px 14px 14px}.step-title{font-size:19px}.step>*{order:2}.step>.step-title{order:0}.step>.controls{order:1}.step>.hook{order:-1}.dock{padding:0 12px}.when-wide{display:none}.btn-next{height:40px}}@media (pointer:coarse),(max-width:760px),(orientation:landscape) and (max-height:520px){.bar .brand{justify-content:center;min-width:44px;min-height:40px}.key-btn{min-width:52px;height:40px}.key-close{width:40px;height:40px}.seg span{min-width:40px;min-height:40px}.toggle,.story-hint summary{min-height:40px}.story-hint summary{align-items:center;min-width:40px;display:flex}.knob-range input{height:40px}.stepper-ctl button{width:40px;height:40px}.icon-link{width:44px;height:40px}.compare tbody th .mx{align-items:center;min-width:40px;min-height:40px;display:flex}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition:none!important;animation:none!important}}
