:root{--bg: oklch(.17 .012 75);--bg-2: oklch(.205 .014 75);--panel: oklch(.225 .015 75);--panel-2: oklch(.26 .016 75);--line: oklch(.34 .02 78);--line-soft: oklch(.3 .018 78 / .5);--amber: oklch(.83 .14 78);--amber-dim: oklch(.72 .085 78);--amber-deep:oklch(.62 .1 70);--gold: oklch(.86 .12 95);--ok: oklch(.84 .16 150);--ok-bg: oklch(.84 .16 150 / .12);--bad: oklch(.7 .19 28);--bad-bg: oklch(.7 .19 28 / .13);--ink: oklch(.94 .012 85);--ink-mut: oklch(.75 .016 85);--ink-faint: oklch(.6 .016 85);--grat-minor: oklch(.32 .02 78 / .16);--grat-major: oklch(.4 .03 78 / .22);--grat-size: 30px;--f-display: "Chakra Petch", system-ui, sans-serif;--f-mono: "IBM Plex Mono", ui-monospace, "Cascadia Code", monospace;--f-body: "IBM Plex Sans", system-ui, -apple-system, sans-serif;--t-xs: .78rem;--t-sm: .9rem;--t-base: 1rem;--t-md: 1.18rem;--t-lg: 1.5rem;--t-xl: 1.95rem;--t-2xl: 2.6rem;--t-3xl: 3.4rem;--s-1: .35rem;--s-2: .6rem;--s-3: .95rem;--s-4: 1.4rem;--s-5: 2rem;--s-6: 2.9rem;--s-7: 4rem;--s-8: 5.5rem;--radius: 10px;--radius-lg: 16px;--radius-sm: 6px;--rail: 250px;--measure: 66ch;--ease-out: cubic-bezier(.22,1,.36,1);--ease-spring: cubic-bezier(.34,1.56,.64,1);--glow-amber: 0 0 0 1px oklch(.83 .14 78 / .4), 0 0 18px oklch(.83 .14 78 / .22);--shadow: 0 2px 12px oklch(.1 .01 75 / .5), 0 0 0 1px var(--line-soft)}:root[data-theme=light]{--bg: oklch(.96 .008 85);--bg-2: oklch(.93 .01 85);--panel: oklch(.99 .006 85);--panel-2: oklch(.95 .008 85);--line: oklch(.84 .014 85);--line-soft: oklch(.86 .012 85 / .7);--amber: oklch(.62 .14 65);--amber-dim: oklch(.54 .1 65);--amber-deep: oklch(.48 .1 60);--gold: oklch(.6 .12 85);--ok: oklch(.52 .15 150);--ok-bg: oklch(.52 .15 150 / .1);--bad: oklch(.55 .2 28);--bad-bg: oklch(.55 .2 28 / .1);--ink: oklch(.24 .02 85);--ink-mut: oklch(.42 .02 85);--ink-faint: oklch(.55 .02 85);--grat-minor: oklch(.55 .03 78 / .1);--grat-major: oklch(.5 .04 78 / .16);--shadow: 0 2px 12px oklch(.5 .02 75 / .12), 0 0 0 1px var(--line-soft);--glow-amber: 0 0 0 1px oklch(.62 .14 65 / .4), 0 0 14px oklch(.62 .14 65 / .18)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--ink);font-family:var(--f-body);font-size:var(--t-base);line-height:1.6;font-feature-settings:"tnum" 1;min-height:100dvh;-webkit-font-smoothing:antialiased}.graticule{position:fixed;inset:0;z-index:0;pointer-events:none;background-image:linear-gradient(var(--grat-minor) 1px,transparent 1px),linear-gradient(90deg,var(--grat-minor) 1px,transparent 1px),linear-gradient(var(--grat-major) 1px,transparent 1px),linear-gradient(90deg,var(--grat-major) 1px,transparent 1px);background-size:var(--grat-size) var(--grat-size),var(--grat-size) var(--grat-size),calc(var(--grat-size)*4) calc(var(--grat-size)*4),calc(var(--grat-size)*4) calc(var(--grat-size)*4);-webkit-mask-image:radial-gradient(ellipse 120% 100% at 50% 0%,#000 55%,transparent 100%);mask-image:radial-gradient(ellipse 120% 100% at 50% 0%,#000 55%,transparent 100%)}h1,h2,h3,h4{font-family:var(--f-display);font-weight:600;line-height:1.15;letter-spacing:-.01em;margin:0 0 var(--s-3)}h1{font-size:var(--t-2xl)}h2{font-size:var(--t-xl)}h3{font-size:var(--t-lg)}a{color:var(--amber);text-decoration-color:var(--amber-deep);text-underline-offset:3px}code,kbd,.mono{font-family:var(--f-mono)}p{margin:0 0 var(--s-3);max-width:var(--measure)}:focus-visible{outline:2px solid var(--amber);outline-offset:2px;border-radius:3px}::selection{background:#f9bb514d}.label{font-family:var(--f-display);font-size:var(--t-xs);letter-spacing:.14em;text-transform:uppercase;color:var(--amber-dim);font-weight:500}.panel{background:var(--panel);border:1px solid var(--line-soft);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.btn{font-family:var(--f-display);font-weight:600;font-size:var(--t-sm);letter-spacing:.03em;display:inline-flex;align-items:center;gap:var(--s-2);cursor:pointer;padding:.62em 1.1em;border-radius:var(--radius-sm);border:1px solid var(--line);background:var(--panel-2);color:var(--ink);transition:transform .12s var(--ease-out),background .15s,border-color .15s,box-shadow .15s}.btn:hover{border-color:var(--amber-deep);background:var(--bg-2)}.btn:active{transform:translateY(1px)}.btn-primary{background:var(--amber);color:#1b150c;border-color:var(--amber)}.btn-primary:hover{background:var(--gold);border-color:var(--gold);box-shadow:var(--glow-amber)}.btn-ghost{background:transparent;border-color:transparent;color:var(--amber-dim)}.btn-ghost:hover{color:var(--amber);background:var(--bg-2)}.readout{display:flex;flex-direction:column;gap:var(--s-1)}.readout>.label{margin-bottom:2px}.readout-input,.readout-value{font-family:var(--f-mono);font-size:var(--t-md);color:var(--amber);background:var(--bg);border:1px solid var(--line);border-radius:var(--radius-sm);padding:.5em .7em;width:100%;letter-spacing:.02em;transition:border-color .15s,box-shadow .2s,background .2s}.readout-input::placeholder{color:var(--ink-faint)}.readout-input:focus{outline:none;border-color:var(--amber);box-shadow:var(--glow-amber)}.readout-input:disabled{opacity:.85}.locked-ok{border-color:var(--ok)!important;color:var(--ok)!important;background:var(--ok-bg);box-shadow:0 0 0 1px var(--ok),0 0 16px #74e79140}.locked-bad{border-color:var(--bad)!important;color:var(--bad)!important;background:var(--bad-bg);box-shadow:0 0 0 1px var(--bad)}@keyframes settle{0%{opacity:0;transform:translateY(8px) scale(.97)}to{opacity:1;transform:none}}.settle{animation:settle .42s var(--ease-spring) both}.gauge-track{stroke:var(--line)}.gauge-fill{stroke:var(--amber);filter:drop-shadow(0 0 4px oklch(.83 .14 78 / .5));transition:stroke-dashoffset .8s var(--ease-out)}.chip{font-family:var(--f-mono);font-size:var(--t-xs);padding:.2em .55em;border-radius:999px;border:1px solid var(--line);color:var(--ink-mut);white-space:nowrap}.chip-amber{color:var(--amber);border-color:var(--amber-deep)}.chip-ok{color:var(--ok);border-color:var(--ok)}.chip-bad{color:var(--bad);border-color:var(--bad)}table.fact{width:100%;border-collapse:collapse;font-size:var(--t-sm);margin:var(--s-3) 0 var(--s-4)}table.fact caption{text-align:left}table.fact th,table.fact td{text-align:left;padding:.5em .7em;border-bottom:1px solid var(--line-soft)}table.fact th{font-family:var(--f-display);color:var(--amber-dim);font-weight:600;font-size:var(--t-xs);text-transform:uppercase;letter-spacing:.08em}table.fact td{font-family:var(--f-mono);color:var(--ink)}table.fact td:first-child{color:var(--amber)}.stack{display:flex;flex-direction:column}.row{display:flex;align-items:center}.wrap{flex-wrap:wrap}.gap-1{gap:var(--s-1)}.gap-2{gap:var(--s-2)}.gap-3{gap:var(--s-3)}.gap-4{gap:var(--s-4)}.muted{color:var(--ink-mut)}.faint{color:var(--ink-faint)}.center{text-align:center}.big-num{font-family:var(--f-mono);font-size:var(--t-3xl);color:var(--amber);line-height:1;letter-spacing:-.02em}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);border:0}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}.settle{animation:none}}.shell[data-astro-cid-5hce7sga]{position:relative;z-index:1;display:grid;grid-template-columns:var(--rail) 1fr;min-height:100dvh}.topbar[data-astro-cid-5hce7sga]{display:none}.rail[data-astro-cid-5hce7sga]{position:sticky;top:0;height:100dvh;display:flex;flex-direction:column;gap:var(--s-4);padding:var(--s-5) var(--s-4);border-right:1px solid var(--line-soft);background:#100d0899;backdrop-filter:blur(6px);overflow-y:auto}:root[data-theme=light] .rail[data-astro-cid-5hce7sga]{background:#eeebe4b3}.brand[data-astro-cid-5hce7sga]{display:flex;align-items:center;gap:var(--s-2);text-decoration:none;color:var(--ink)}.brand-glyph[data-astro-cid-5hce7sga]{display:grid;place-items:center}.brand-text[data-astro-cid-5hce7sga]{font-family:var(--f-display);font-weight:700;font-size:var(--t-md);letter-spacing:.02em}.brand-accent[data-astro-cid-5hce7sga]{color:var(--amber)}.rail-gauge[data-astro-cid-5hce7sga]{padding:var(--s-3)}.rail-nav[data-astro-cid-5hce7sga]{display:flex;flex-direction:column;gap:2px;margin-top:var(--s-1)}.nav-item[data-astro-cid-5hce7sga]{display:flex;align-items:center;gap:var(--s-2);padding:.6em .7em;border-radius:var(--radius-sm);font-family:var(--f-display);font-weight:500;font-size:var(--t-sm);letter-spacing:.02em;color:var(--ink-mut);text-decoration:none;transition:background .14s,color .14s}.nav-item[data-astro-cid-5hce7sga]:hover{background:var(--bg-2);color:var(--ink)}.nav-item[data-astro-cid-5hce7sga].is-active{color:var(--amber);background:#f9bb5114}.nav-tick[data-astro-cid-5hce7sga]{width:7px;height:7px;border-radius:2px;border:1.5px solid currentColor;opacity:.5;flex:none}.nav-item[data-astro-cid-5hce7sga].is-active .nav-tick[data-astro-cid-5hce7sga]{background:var(--amber);border-color:var(--amber);opacity:1;box-shadow:0 0 8px var(--amber)}.rail-foot[data-astro-cid-5hce7sga]{margin-top:auto;display:flex;flex-direction:column;gap:2px}.rail-foot[data-astro-cid-5hce7sga] .btn-ghost[data-astro-cid-5hce7sga]{justify-content:flex-start;font-size:var(--t-xs);font-family:var(--f-body);letter-spacing:0}.scope[data-astro-cid-5hce7sga]{padding:var(--s-6) var(--s-6) var(--s-8);max-width:1180px;width:100%}.brand-mini[data-astro-cid-5hce7sga]{display:flex;align-items:center;gap:var(--s-2);font-family:var(--f-display);font-weight:700;color:var(--ink);text-decoration:none;font-size:var(--t-sm)}.brand-mini[data-astro-cid-5hce7sga] .dot[data-astro-cid-5hce7sga]{width:9px;height:9px;border-radius:50%;background:var(--amber);box-shadow:0 0 8px var(--amber)}.menu-btn[data-astro-cid-5hce7sga]{font-family:var(--f-display)}.scrim[data-astro-cid-5hce7sga]{position:fixed;inset:0;background:#05030199;z-index:40}@media(max-width:860px){.shell[data-astro-cid-5hce7sga]{grid-template-columns:1fr}.topbar[data-astro-cid-5hce7sga]{display:flex;position:sticky;top:0;z-index:50;align-items:center;justify-content:space-between;padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--line-soft);background:var(--bg)}.rail[data-astro-cid-5hce7sga]{position:fixed;top:0;left:0;z-index:60;width:min(86vw,320px);transform:translate(-102%);transition:transform .28s var(--ease-out)}.rail[data-astro-cid-5hce7sga].open{transform:none}.scope[data-astro-cid-5hce7sga]{padding:var(--s-4) var(--s-4) var(--s-7)}}
