@font-face{font-family:Mona Sans;font-style:normal;font-display:swap;font-weight:200 900;font-stretch:75% 125%;src:url(/_astro/mona-sans-latin-wdth-normal.BMVx8nn_.woff2)format("woff2-variations");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:Geist Mono;font-style:normal;font-display:swap;font-weight:100 900;src:url(/_astro/geist-mono-latin-wght-normal.XN7g48iV.woff2)format("woff2-variations");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:Instrument Serif;font-style:italic;font-display:swap;font-weight:400;src:url(/_astro/instrument-serif-latin-400-italic.DKMiL14s.woff2)format("woff2")}:root{color-scheme:light dark;--bg:light-dark(#f3f1ec,#06080c);--bg-2:light-dark(#eae7e0,#0b0e15);--ink:light-dark(#11151d,#e9edf5);--ink-2:light-dark(#4a5364,#a3acbd);--ink-3:light-dark(#737c8c,#6c7689);--line:light-dark(#11151d1a,#ffffff17);--line-2:light-dark(#11151d2e,#ffffff2b);--blue:light-dark(#1d5fe0,#6b9dff);--blue-fill:light-dark(#1d5fe0,#3f7df5);--blue-wash:light-dark(#1d5fe017,#5b93ff21);--orange:light-dark(#c9540c,#ff9650);--orange-fill:light-dark(#e8661a,#ff8a3d);--orange-wash:light-dark(#e8661a1c,#ff8a3d21);--glass-hi:light-dark(#ffffffc7,#fff1);--glass-lo:light-dark(#ffffff80,#ffffff06);--glass-edge:light-dark(#fffffff2,#ffffff21);--glass-shadow:light-dark(#28325024,#0000008c);--glass-bar:light-dark(#faf9f6b8,#10141ca8);--spot:light-dark(#1d5fe012,#78a5ff17);--screen:#05070b;--screen-ink:#e2eaff;--screen-dim:#7f8aa3;--ev-on:#ff8a3d;--ev-off:#4d8dff;--font:"Mona Sans", ui-sans-serif, system-ui, -apple-system, "Segoe UI", sans-serif;--serif:"Instrument Serif", "Iowan Old Style", "Palatino Linotype", Georgia, serif;--mono:"Geist Mono", ui-monospace, "SF Mono", "Cascadia Code", Menlo, monospace;--r-sm:10px;--r-md:16px;--r-lg:24px;--r-xl:32px;--wrap:1120px;--gutter:clamp(18px, 4vw, 40px);--gap:clamp(10px, 1.4vw, 16px);--ease:cubic-bezier(.2, .8, .2, 1);--ease-enter:cubic-bezier(.22, 1, .36, 1);--t-in:.16s;--t-out:.12s}:root[data-theme=light]{color-scheme:light}:root[data-theme=dark]{color-scheme:dark}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth;background:var(--bg);scroll-padding-top:72px}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{min-height:100dvh;font-family:var(--font);color:var(--ink);background:var(--bg);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility;margin:0;font-size:16px;font-stretch:100%;line-height:1.55;overflow-x:clip}body:before{content:"";z-index:-1;pointer-events:none;background:radial-gradient(60vmax 46vmax at 8% -6%,light-dark(#1d5fe021,#3468dc33),#0000 62%),radial-gradient(52vmax 42vmax at 100% 38%,light-dark(#e8661a1a,#ff8a3d16),#0000 60%),radial-gradient(60vmax 50vmax at 22% 104%,light-dark(#1d5fe014,#3468dc1c),#0000 60%);position:fixed;inset:0}h1,h2,h3,h4,p,ul,ol,figure,dl,dd{margin:0}ul,ol{padding:0;list-style:none}img,svg,canvas,video{max-width:100%;display:block}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;padding:0}a{color:inherit;text-decoration:none}::selection{background:var(--orange-fill);color:#0a0a0a}:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:6px}.wrap{width:min(100% - 2 * var(--gutter), var(--wrap));margin-inline:auto}.sr-only{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.skip{z-index:100;background:var(--ink);color:var(--bg);border-radius:999px;padding:10px 16px;font-weight:600;position:fixed;top:12px;left:12px;transform:translateY(-200%)}.skip:focus-visible{transform:none}.mono{font-family:var(--mono);letter-spacing:.01em;font-feature-settings:"zero" 1;font-size:.75rem}.section{flex-direction:column;justify-content:center;min-height:100svh;padding-block:clamp(96px,17vh,210px);display:flex}@supports (animation-timeline:view()){@media (prefers-reduced-motion:no-preference){.focus{animation:linear both focus view();animation-range:cover}}}@keyframes focus{0%{opacity:.08}24%{opacity:1}76%{opacity:1}to{opacity:.08}}.section__head{justify-content:space-between;align-items:baseline;gap:24px;margin-bottom:clamp(22px,3vw,36px);display:flex}.section__title{letter-spacing:-.025em;font-size:clamp(1.9rem,1.2rem + 2.6vw,3.1rem);font-weight:620;font-stretch:112%;line-height:1.02}.section__note{color:var(--ink-2);text-align:right;text-wrap:balance;max-width:44ch;font-size:.95rem}@media (width<=720px){.section__head{flex-direction:column;align-items:flex-start;gap:8px}.section__note{text-align:left}}.link{color:var(--ink);background:linear-gradient(var(--blue), var(--blue)) 0 100% / 0 1px no-repeat, linear-gradient(var(--line-2), var(--line-2)) 0 100% / 100% 1px no-repeat;transition:background-size var(--t-in) var(--ease), color var(--t-in) var(--ease);padding-bottom:1px}.link:hover,.link:focus-visible{color:var(--blue);background-size:100% 1px,100% 1px}.hl{color:var(--orange);white-space:nowrap;font-weight:600}.neo{--neo-bg:var(--bg);--neo-ink:var(--ink);border:1.5px solid var(--ink);background:var(--neo-bg);color:var(--neo-ink);box-shadow:3px 3px 0 var(--ink);white-space:nowrap;transition:transform var(--t-in) var(--ease), box-shadow var(--t-in) var(--ease);border-radius:7px;margin-inline:.08em .26em;padding:.02em .34em .06em;font-weight:640;line-height:1.18;display:inline-block}.neo--orange{--neo-bg:var(--orange-fill);--neo-ink:#14100c}.neo--blue{--neo-bg:var(--blue-fill);--neo-ink:#fff}.neo--tilt{transform:rotate(-1.6deg)}.neo--tilt-r{transform:rotate(1.4deg)}@media (hover:hover) and (pointer:fine){.neo:hover{box-shadow:5px 5px 0 var(--ink);transform:translate(-2px,-2px)}.neo--tilt:hover{transform:translate(-2px,-2px)rotate(-1.6deg)}.neo--tilt-r:hover{transform:translate(-2px,-2px)rotate(1.4deg)}}.mark{white-space:nowrap;color:var(--ink);background:linear-gradient(var(--mark,var(--blue-fill)), var(--mark,var(--blue-fill))) 0 92% / 100% .2em no-repeat;padding-inline:.05em;font-weight:620}.mark--orange{--mark:var(--orange-fill)}.glass{border-radius:var(--r-lg);background:linear-gradient(180deg, var(--glass-hi), var(--glass-lo));border:1px solid var(--line);box-shadow:inset 0 1px 0 var(--glass-edge), 0 1px 1px light-dark(#2832500d,#0000004d), 0 18px 40px -22px var(--glass-shadow);position:relative}.glass[data-spot]:after{content:"";border-radius:inherit;pointer-events:none;opacity:0;background:radial-gradient(420px circle at var(--mx,50%) var(--my,50%), var(--spot), transparent 60%);transition:opacity .24s var(--ease);position:absolute;inset:0}@media (hover:hover) and (pointer:fine){.glass[data-spot]:hover:after{opacity:1}}.lift{transition:transform .18s var(--ease), border-color .18s var(--ease), box-shadow .18s var(--ease)}@media (hover:hover) and (pointer:fine){.lift:hover{border-color:var(--line-2);transform:translateY(-2px)}}.lift:active{transition-duration:90ms;transform:translateY(0)scale(.995)}.tags{flex-wrap:wrap;gap:6px;display:flex}.tag{border:1px solid var(--line);height:24px;font-family:var(--mono);letter-spacing:.02em;color:var(--ink-2);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:0 9px;font-size:.6875rem;display:inline-flex}.tag--win{color:var(--orange);border-color:color-mix(in oklab, var(--orange) 38%, transparent);background:var(--orange-wash)}.tag--blue{color:var(--blue);border-color:color-mix(in oklab, var(--blue) 34%, transparent);background:var(--blue-wash)}.pill{border:1px solid var(--line);background:linear-gradient(180deg, var(--glass-hi), var(--glass-lo));min-height:40px;box-shadow:inset 0 1px 0 var(--glass-edge);color:var(--ink);transition:transform var(--t-in) var(--ease), border-color var(--t-in) var(--ease), background-color var(--t-in) var(--ease);border-radius:999px;align-items:center;gap:8px;padding:0 16px;font-size:.875rem;font-weight:520;display:inline-flex}.pill svg{flex:none;width:16px;height:16px}.pill--quiet{box-shadow:none;border-style:dashed;border-color:var(--line-2);color:var(--ink-2);background:0 0}.pill--quiet:hover{color:var(--ink);border-style:solid}.pill--solid{background:var(--ink);color:var(--bg);box-shadow:none;border-color:#0000}@media (hover:hover) and (pointer:fine){.pill:hover{border-color:var(--line-2);transform:translateY(-1px)}}.pill:active{transition-duration:90ms;transform:translateY(1px)scale(.985)}.arrow{transition:transform var(--t-in) var(--ease);display:inline-block}a:hover .arrow,button:hover .arrow{transform:translate(2px,-2px)}::view-transition-old(root),::view-transition-new(root){mix-blend-mode:normal;animation:none}::view-transition-new(root){animation:theme-iris .62s var(--ease-enter) both}@keyframes theme-iris{0%{clip-path:circle(0 at var(--iris-x,50%) var(--iris-y,100%))}to{clip-path:circle(var(--iris-r,150vmax) at var(--iris-x,50%) var(--iris-y,100%))}}@media (prefers-reduced-motion:no-preference){[data-enter]{animation:enter .9s var(--ease-enter) both;animation-delay:calc(var(--i,0) * 70ms + 60ms)}}@keyframes enter{0%{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.theme[data-astro-cid-l6lhmie6]{width:40px;height:40px;color:var(--ink);transition:background-color var(--t-in) var(--ease), transform var(--t-in) var(--ease);border-radius:999px;place-items:center;display:grid}@media (hover:hover) and (pointer:fine){.theme[data-astro-cid-l6lhmie6]:hover{background:var(--blue-wash)}}.theme[data-astro-cid-l6lhmie6]:active{transition-duration:90ms;transform:scale(.92)}.theme__disc[data-astro-cid-l6lhmie6]{fill:var(--orange-fill);transform-origin:12px 12px;transition:transform .52s var(--ease-enter), fill .3s var(--ease)}.theme__cut[data-astro-cid-l6lhmie6]{transition:transform .52s var(--ease-enter)}.theme__rays[data-astro-cid-l6lhmie6]{stroke:var(--orange-fill);transform-origin:12px 12px;transition:transform .52s var(--ease-enter), opacity .24s var(--ease)}:root[data-theme=dark] .theme__disc[data-astro-cid-l6lhmie6]{fill:var(--blue);transform:scale(1.75)}:root[data-theme=dark] .theme__cut[data-astro-cid-l6lhmie6]{transform:translate(-7px)}:root[data-theme=dark] .theme__rays[data-astro-cid-l6lhmie6]{opacity:0;transform:rotate(-90deg)scale(.3)}.dock[data-astro-cid-4pg35wjo]{left:50%;bottom:max(14px, env(safe-area-inset-bottom));z-index:50;background:var(--glass-bar);border:1px solid var(--line);box-shadow:inset 0 1px 0 var(--glass-edge), 0 10px 30px -10px var(--glass-shadow), 0 2px 6px light-dark(#28325014,#0006);backdrop-filter:blur(22px)saturate(160%);border-radius:999px;align-items:center;gap:2px;max-width:calc(100vw - 16px);padding:5px;display:flex;position:fixed;transform:translate(-50%)}.dock__home[data-astro-cid-4pg35wjo]{width:40px;height:40px;font-family:var(--mono);letter-spacing:.02em;color:var(--bg);background:var(--ink);transition:transform var(--t-in) var(--ease);border-radius:999px;flex:none;place-items:center;font-size:.75rem;font-weight:600;display:grid}.dock__home[data-astro-cid-4pg35wjo]:active{transform:scale(.94)}.dock__list[data-astro-cid-4pg35wjo]{align-items:center;margin-inline:2px;display:flex;position:relative}.dock__list[data-astro-cid-4pg35wjo] a[data-astro-cid-4pg35wjo]{z-index:1;height:40px;color:var(--ink-2);transition:color var(--t-in) var(--ease);border-radius:999px;place-items:center;padding:0 14px;font-size:.875rem;font-weight:520;display:grid;position:relative}.dock__list[data-astro-cid-4pg35wjo] a[data-astro-cid-4pg35wjo]:hover,.dock__list[data-astro-cid-4pg35wjo] a[data-astro-cid-4pg35wjo][aria-current=true]{color:var(--ink)}.dock__short[data-astro-cid-4pg35wjo]{display:none}.dock__marker[data-astro-cid-4pg35wjo]{height:40px;width:var(--w,0px);background:var(--blue-wash);border:1px solid color-mix(in oklab, var(--blue) 26%, transparent);opacity:var(--on,0);transform:translateX(var(--x,0px));transition:transform .28s var(--ease-enter), width .28s var(--ease-enter), opacity .2s var(--ease);border-radius:999px;position:absolute;top:0;left:0}.dock__rule[data-astro-cid-4pg35wjo]{background:var(--line-2);flex:none;width:1px;height:20px;margin-inline:2px}@media (width<=620px){.dock__long[data-astro-cid-4pg35wjo]{display:none}.dock__short[data-astro-cid-4pg35wjo]{display:inline}.dock__list[data-astro-cid-4pg35wjo] a[data-astro-cid-4pg35wjo]{padding:0 10px;font-size:.8125rem}.dock__home[data-astro-cid-4pg35wjo]{display:none}}@media (width<=380px){.dock__list[data-astro-cid-4pg35wjo] a[data-astro-cid-4pg35wjo]{padding:0 7px;font-size:.78rem}.dock__rule[data-astro-cid-4pg35wjo]{display:none}}@media print{.dock[data-astro-cid-4pg35wjo]{display:none}}.stage{aspect-ratio:16/10;border-radius:calc(var(--r-xl) - 8px);width:100%;min-height:320px;box-shadow:inset 0 0 0 1px var(--line);cursor:grab;background:radial-gradient(120% 90% at 50% 0,light-dark(#ffffffb3,#ffffff0b),#0000 70%),light-dark(#ffffff59,#00000038);position:relative;overflow:hidden}.stage:active{cursor:grabbing}.stage[data-static]{cursor:default}@media (width<=720px){.stage{aspect-ratio:4/3.6}}.stage__labels{pointer-events:none;position:absolute;inset:0;overflow:hidden}.stage__label{font-family:var(--mono);white-space:nowrap;color:var(--ink);text-shadow:0 0 6px var(--bg), 0 0 2px var(--bg);will-change:transform;font-size:.6875rem;line-height:1.2;position:absolute;top:0;left:0}.stage__label--dim{color:var(--ink-3)}.stage__label--blue{color:var(--blue)}.stage__label--orange{color:var(--orange)}.stage__hint{font-family:var(--mono);color:var(--ink-3);pointer-events:none;transition:opacity .4s var(--ease);font-size:.6875rem;position:absolute;bottom:12px;right:14px}.stage.is-touched .stage__hint{opacity:0}.stage__fallback{text-align:center;color:var(--ink-2);place-items:center;padding:24px;display:grid;position:absolute;inset:0}.stage.is-ready .stage__fallback{display:none}.ctls{align-content:start;gap:16px;display:grid}.ctl{gap:7px;display:grid}.ctl__label{color:var(--ink-2);justify-content:space-between;align-items:baseline;gap:12px;font-size:.8125rem;font-weight:520;display:flex}.ctl__value{font-family:var(--mono);color:var(--ink);font-variant-numeric:tabular-nums;font-size:.75rem}.ctl input[type=range]{-webkit-appearance:none;appearance:none;cursor:pointer;background:0 0;width:100%;height:28px;margin:0}.ctl input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--blue-fill) var(--fill,50%), var(--line-2) var(--fill,50%));border-radius:999px;height:4px}.ctl input[type=range]::-moz-range-track{background:var(--line-2);border-radius:999px;height:4px}.ctl input[type=range]::-moz-range-progress{background:var(--blue-fill);border-radius:999px;height:4px}.ctl input[type=range]::-webkit-slider-thumb{-webkit-appearance:none;background:var(--ink);border:3px solid var(--bg);width:18px;height:18px;box-shadow:0 0 0 1px var(--line-2), 0 2px 6px #00000040;transition:transform var(--t-in) var(--ease);border-radius:50%;margin-top:-7px}.ctl input[type=range]::-moz-range-thumb{background:var(--ink);border:3px solid var(--bg);width:12px;height:12px;box-shadow:0 0 0 1px var(--line-2), 0 2px 6px #00000040;border-radius:50%}.ctl input[type=range]:active::-webkit-slider-thumb{transform:scale(1.15)}.ctl input[type=range][data-tone=orange]::-webkit-slider-runnable-track{background:linear-gradient(to right, var(--orange-fill) var(--fill,50%), var(--line-2) var(--fill,50%))}.ctl input[type=range][data-tone=orange]::-moz-range-progress{background:var(--orange-fill)}.seg{border:1px solid var(--line);background:light-dark(#11151d0a,#00000040);border-radius:999px;flex-wrap:wrap;gap:2px;width:fit-content;max-width:100%;padding:3px;display:inline-flex}.seg button{min-height:32px;color:var(--ink-2);transition:background-color var(--t-in) var(--ease), color var(--t-in) var(--ease);border-radius:999px;padding:0 12px;font-size:.8125rem;font-weight:520}.seg button:hover{color:var(--ink)}.seg button[aria-pressed=true]{color:var(--bg);background:var(--ink)}.btn{border:1px solid var(--line-2);min-height:36px;color:var(--ink);transition:transform var(--t-in) var(--ease), background-color var(--t-in) var(--ease), border-color var(--t-in) var(--ease);border-radius:999px;justify-content:center;align-items:center;gap:7px;padding:0 14px;font-size:.8125rem;font-weight:540;display:inline-flex}.btn:hover{background:var(--blue-wash);border-color:color-mix(in oklab, var(--blue) 40%, transparent)}.btn:active{transition-duration:90ms;transform:translateY(1px)scale(.985)}.btn--primary{background:var(--ink);color:var(--bg);border-color:#0000}.btn--primary:hover{background:var(--ink);border-color:#0000;transform:translateY(-1px)}.btn-row{flex-wrap:wrap;gap:8px;display:flex}.switch{min-height:36px;color:var(--ink-2);cursor:pointer;align-items:center;gap:9px;font-size:.8125rem;font-weight:520;display:inline-flex}.switch input{opacity:0;width:1px;height:1px;position:absolute}.switch i{background:var(--line-2);width:30px;height:18px;transition:background-color .18s var(--ease);border-radius:999px;flex:none;position:relative}.switch i:after{content:"";background:var(--ink);width:14px;height:14px;transition:transform .18s var(--ease);border-radius:50%;position:absolute;top:2px;left:2px}.switch input:checked+i{background:var(--blue-fill)}.switch input:checked+i:after{background:#fff;transform:translate(12px)}.switch input:focus-visible+i{outline:2px solid var(--blue);outline-offset:3px}.switch:has(input:checked){color:var(--ink)}.readouts{grid-template-columns:repeat(auto-fit,minmax(96px,1fr));gap:10px;display:grid}.readout{border-radius:var(--r-sm);border:1px solid var(--line);background:light-dark(#ffffff80,#ffffff08);padding:10px 12px}.readout dt{font-family:var(--mono);color:var(--ink-3);font-size:.6875rem}.readout dd{font-variant-numeric:tabular-nums;letter-spacing:-.01em;margin-top:2px;font-size:1.125rem;font-weight:600}.readout dd small{color:var(--ink-2);margin-left:2px;font-size:.75rem;font-weight:500}.readout[data-tone=orange] dd{color:var(--orange)}.readout[data-tone=blue] dd{color:var(--blue)}.formula{font-family:var(--mono);color:var(--ink-2);border-radius:var(--r-sm);border:1px dashed var(--line-2);white-space:nowrap;padding:10px 12px;font-size:.8125rem;overflow-x:auto}.formula b{color:var(--ink);font-weight:500}
