:root{--night:#0b0807;--night-2:#120d0c;--line:#2a201d;--skin:#f2e7df;--muted:#9a8b83;--neon:#ff3b3b;--neon-core:#ffd9d4;--neon-glow:0 0 6px #ff6a5c, 0 0 22px var(--neon), 0 0 60px #ff3b3b8c;--measure:66ch;--gutter:max(clamp(1rem, 5vw, 4rem), env(safe-area-inset-left,0px), env(safe-area-inset-right,0px));--ease-out:cubic-bezier(.16, 1, .3, 1);--step-credit:.78rem;--step-data:.75rem;--step-body:1.0625rem;--step-card:clamp(2.75rem, 6vw, 4.5rem);--step-display:clamp(4rem, 11vw, 10.5rem);--display-optics:"opsz" 28;color-scheme:dark}@media (width>=100rem){html:is(:not([data-mode]),[data-mode=fast]){--gutter:calc((100vw - 92rem) / 2)}}*,:before,:after{box-sizing:border-box}html{background:var(--night);color:var(--skin);font-family:var(--font-text);letter-spacing:.005em;-webkit-text-size-adjust:100%;scrollbar-color:var(--line) var(--night);scrollbar-width:thin;font-size:100%;line-height:1.6}body{min-height:100dvh;font-size:var(--step-body);margin:0}::selection{background:var(--neon);color:var(--night)}:focus-visible{outline:2px solid var(--neon);outline-offset:3px}[tabindex="-1"]:focus{outline:none}a{color:inherit;text-decoration-color:var(--muted);text-underline-offset:.25em;transition:text-decoration-color .16s var(--ease-out);text-decoration-thickness:1px}a:hover{text-decoration-color:var(--skin)}img{max-width:100%;height:auto;display:block}h1,h2,h3,.display{font-variation-settings:var(--display-optics)}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.02em;text-wrap:balance;font-weight:400;line-height:1}p{text-wrap:pretty}.credit{font-family:var(--font-text);font-weight:500;font-size:var(--step-credit);letter-spacing:.32em;text-transform:uppercase}.data{font-family:var(--font-data);font-size:var(--step-data);font-variant-numeric:tabular-nums;letter-spacing:.06em;color:var(--muted)}.prose{max-width:var(--measure)}.neon{color:var(--neon-core);text-shadow:var(--neon-glow)}.skip-link{background:var(--skin);color:var(--night);z-index:10;padding:.5rem .75rem;position:absolute;top:-4rem;left:1rem}.skip-link:focus{top:1rem}.site-header{z-index:5;padding:1rem var(--gutter);justify-content:space-between;align-items:center;gap:1rem;display:flex;position:absolute;inset:0 0 auto}.site-actions{align-items:center;gap:clamp(1.25rem,3vw,2.25rem);display:flex}.site-actions button{font-family:var(--font-text);color:var(--muted);cursor:pointer;transition:color .16s var(--ease-out);background:0 0;border:0;padding:.5rem 0}.site-actions button:hover{color:var(--skin)}.site-actions .label-short{display:none}@media (width<=34rem),(height<=30rem){.site-actions .label-short{display:inline}}.site-sound{display:none!important}html[data-mode=fast] .site-sound{display:inline-flex!important}.x-sound,.lang-switch{align-items:center;gap:.55em;display:inline-flex}.x-sound-icon,.lang-globe{fill:none;stroke:currentColor;stroke-width:1.6px;stroke-linecap:round;stroke-linejoin:round;flex:none;width:1.45em;height:1.45em}.lang-globe{stroke-width:1.3px}.x-sound-icon .x-spk{fill:currentColor;stroke:none}.x-sound[aria-pressed=true]{color:var(--skin)}.x-sound[aria-pressed=true] .x-mute,.x-sound[aria-pressed=false] .x-waves{display:none}.lang-switch{color:var(--muted);transition:color .16s var(--ease-out);padding-block:.5rem;text-decoration:none}.lang-switch:hover{color:var(--skin)}@media (width<=34rem),(height<=30rem){.x-sound-word{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.x-sound{justify-content:center;min-width:2.25rem;min-height:2.25rem}.x-sound-icon{width:1.35rem;height:1.35rem}.site-actions{gap:1.1rem}.site-actions .label-long{display:none}.site-actions .credit{letter-spacing:.18em}}.back a{margin-block:-.5rem;padding-block:.5rem;display:inline-block}.brand{font-family:var(--font-display);font-variation-settings:var(--display-optics);font-size:1.5rem;font-style:italic;text-decoration:none}.brand b{font-style:normal;font-weight:400}main{--header-space:5.5rem;padding:var(--header-space) var(--gutter) clamp(3rem, 8vw, 6rem)}@view-transition{navigation:auto}@media (prefers-reduced-motion:reduce){@view-transition{navigation:none}}.lang-hint{left:var(--gutter);z-index:70;max-width:calc(100vw - 2 * var(--gutter));background:var(--night-2);border:1px solid var(--line);flex-wrap:wrap;align-items:baseline;gap:.5rem 1.25rem;padding:.85rem 1.1rem;font-size:.9rem;display:flex;position:fixed;bottom:calc(10svh + 1rem)}.lang-hint[hidden]{display:none}.lang-hint a,.lang-hint button{color:var(--skin);cursor:pointer;font-family:var(--font-text);background:0 0;border:0;padding:.25rem 0;text-decoration:none}.lang-hint button{color:var(--muted)}.term{border:1px solid var(--line);background:var(--night-2);width:min(52rem,100vw - 2rem);height:min(32rem,100svh - 4rem);color:var(--skin);font-family:var(--font-data);font-variant-numeric:tabular-nums;padding:0;font-size:.85rem;line-height:1.6}.term[open]{flex-direction:column;display:flex}.term::backdrop{background:#0009}.term .t-log{white-space:pre-wrap;overscroll-behavior:contain;flex:1;padding:1.25rem 1.25rem .5rem;overflow-y:auto}.term .t-line{margin:0}.term .t-key{color:var(--muted);white-space:pre}.term .t-dim{color:var(--muted)}.term .t-echo{color:var(--muted);margin-top:.6rem}.term .t-err{color:var(--neon-core)}.term .t-ok{color:var(--neon-core);text-shadow:var(--neon-glow)}.term a{color:var(--skin)}.term .t-form{border-top:1px solid var(--line);align-items:baseline;gap:.75ch;padding:.75rem 1.25rem 1rem;display:flex}.term .t-prompt{color:var(--neon-core);white-space:nowrap}.term .t-input{min-width:0;color:var(--skin);font:inherit;caret-color:var(--neon);background:0 0;border:0;outline:none;flex:1}.achv{right:var(--gutter);z-index:70;pointer-events:none;justify-items:end;gap:.5rem;display:grid;position:fixed;bottom:calc(10svh + 1rem)}.achv-item{background:var(--night-2);border:1px solid var(--line);text-align:right;transition:opacity .4s var(--ease-out), translate .4s var(--ease-out);gap:.15rem;margin:0;padding:.7rem 1rem;display:grid}@starting-style{.achv-item{opacity:0;translate:0 8px}}.achv-item.out{opacity:0}.achv-item .credit{color:var(--muted)}.achv-name{font-family:var(--font-display);font-variation-settings:var(--display-optics);font-size:1.25rem;font-style:italic}
