
@font-face{font-family:Inter;src:url('/inter-variable.woff2') format('woff2');font-weight:100 900;font-style:normal;font-display:swap}
@font-face{font-family:Fraunces;src:url('/fraunces-variable.woff2') format('woff2');font-weight:400;font-style:normal;font-display:swap}
@font-face{font-family:Code;src:url('/source-code-light.ttf') format('truetype');font-weight:300;font-style:normal;font-display:swap}
:root{color-scheme:dark;--bg:#1f2228;--fg:#fff;--mu:rgba(255,255,255,.7);--dim:rgba(255,255,255,.5);--low:rgba(255,255,255,.3);--ln:rgba(255,255,255,.1);--on:rgba(255,255,255,.2);--sf:rgba(255,255,255,.03);--hi:rgba(255,255,255,.05);--gap:clamp(4rem,8vw,8rem)}
*{box-sizing:border-box}
html{background:var(--bg);scroll-behavior:auto}
body{margin:0;color:var(--fg);background:var(--bg);font:400 16px/1.5 Inter,Arial,sans-serif;-webkit-font-smoothing:antialiased}
button,input{font:inherit}
button,a,input,label{touch-action:manipulation}
a{color:inherit;text-decoration:none;transition:color 200ms ease,border-color 200ms ease}
a:hover,button:hover{color:var(--dim)}
a:focus-visible,button:focus-visible,input:focus-visible{outline:2px solid rgb(59,130,246);outline-offset:5px}
a,button{min-width:44px;min-height:44px}
[hidden]{display:none!important}
::selection{background:rgba(255,255,255,.2);color:#fff}
h1,h2,h3,p,figure,ol,ul{margin:0}
h1{font:400 clamp(3rem,5.3vw,5.2rem)/1.02 Fraunces,Georgia,serif;letter-spacing:-.045em;max-width:14ch;overflow-wrap:normal;text-wrap:balance}
h2{font:300 clamp(1.5rem,2.4vw,2rem)/1.15 Code,monospace;letter-spacing:-.035em;text-wrap:balance}
h3{font:300 1.5rem/1.2 Code,monospace}
p{max-width:69ch}
strong{font-weight:600;color:#fff}
.w{max-width:1280px;margin-inline:auto;padding-inline:1.5rem}
.mu{color:var(--mu)}
.sr{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.sk{position:fixed;top:8px;left:8px;z-index:10;padding:12px 16px;background:var(--bg);border:1px solid #fff;transform:translateY(-160%)}
.sk:focus{transform:none}
.hd{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:24px;padding-block:24px;border-bottom:1px solid var(--ln)}
.bc ol{display:flex;align-items:center;gap:8px;flex-wrap:wrap;list-style:none;padding:0;min-height:48px}
.bc li{display:flex;align-items:center;min-width:0;gap:8px;color:var(--mu)}
.bc li+li::before{content:'/';color:var(--dim)}
.bc a{display:inline-flex;align-items:center;min-height:48px;padding-inline:8px;border-bottom:1px solid transparent}
.bc a:hover{border-color:var(--on)}
.bc [aria-current]{padding:8px 0;color:var(--fg)}
.btn{display:inline-flex;align-items:center;justify-content:center;gap:16px;min-height:48px;padding:12px 16px;border:1px solid var(--ln);background:transparent;color:#fff;font:300 16px/1.3 Code,monospace;letter-spacing:1.4px;text-transform:uppercase;cursor:pointer}
.btn:hover,.btn[aria-expanded='true']{border-color:var(--on)}
.h{padding-block:56px 64px;display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);gap:64px;align-items:end;border-bottom:1px solid var(--ln)}
.tag{font:300 16px/1.5 Code,monospace;letter-spacing:1.4px;text-transform:uppercase;color:var(--mu);margin-bottom:24px}
.h .lead{margin-top:32px;color:var(--mu);max-width:57ch;line-height:1.6}
.h .btn{margin-top:24px;justify-content:space-between;max-width:100%;text-align:left}
.hn{border-left:1px solid var(--on);padding:8px 0 8px 24px;max-width:41ch}
.hn p+p{margin-top:16px}
.mk{font:300 clamp(4.5rem,9vw,9rem)/.9 Code,monospace;letter-spacing:-.06em;display:block;color:var(--dim);margin-bottom:24px}
.pl,.df{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:40px;padding:24px;margin-top:32px;border:1px solid var(--on);background:var(--hi)}
.pl h2,.df h2{font-size:1.5rem}
.pl p+p,.df p+p{margin-top:12px}
.r{display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:64px;padding-block:var(--gap);border-bottom:1px solid var(--ln);align-items:start}
.r:nth-child(even){grid-template-columns:minmax(0,7fr) minmax(0,4fr)}
.r:nth-child(even) .k{grid-column:2;grid-row:1}
.r:nth-child(even) .c{grid-column:1;grid-row:1}
.k .tag{margin-bottom:16px;color:var(--dim)}
.c p{color:var(--mu)}
.c p+p{margin-top:16px}
.e{display:inline-flex;align-items:center;gap:12px;min-height:48px;max-width:100%;padding-block:8px;margin-top:4px;color:var(--mu);border-bottom:1px solid var(--ln);overflow-wrap:anywhere}
.e:hover{color:var(--dim);border-color:var(--on)}
.ck{margin-top:24px;border-top:1px solid var(--on)}
.ck label{display:grid;grid-template-columns:44px minmax(0,1fr);gap:16px;align-items:start;min-height:64px;padding-block:12px;border-bottom:1px solid var(--ln);cursor:pointer;color:var(--fg)}
.ck label span{padding-block:10px;transition:color 200ms ease}
.ck input{appearance:none;-webkit-appearance:none;width:44px;height:44px;margin:0;flex:none;border:1px solid var(--on);background:transparent;cursor:pointer;position:relative;border-radius:0}
.ck input::after{content:'';position:absolute;width:16px;height:16px;top:13px;left:13px;border:1px solid var(--dim)}
.ck input:checked{border-color:var(--dim);background:var(--hi)}
.ck input:checked::after{width:14px;height:8px;top:14px;left:13px;border:0;border-left:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg)}
.ck label:has(input:checked) span{color:var(--mu)}
.ck label:hover span,.ck label:has(input:checked):hover span{color:var(--dim)}
.rc{padding-block:64px;display:grid;grid-template-columns:minmax(0,4fr) minmax(0,7fr);gap:64px}
.rc p{color:var(--mu);max-width:63ch;margin-bottom:24px}
.nx{display:flex;gap:24px;justify-content:space-between;align-items:center;min-height:64px;padding:16px 0;border-top:1px solid var(--on);border-bottom:1px solid var(--on);font:300 16px/1.5 Code,monospace;text-transform:uppercase;letter-spacing:1.4px}
.nx span:first-child{min-width:0}
.nx:hover{border-color:var(--dim)}
.fx{display:flex;gap:8px 24px;flex-wrap:wrap;margin-top:16px}
.fx a{display:inline-flex;align-items:center;min-height:48px;border-bottom:1px solid var(--ln)}
.ft{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:24px;padding-block:32px 40px;border-top:1px solid var(--ln);color:var(--mu)}
.ft p{max-width:64ch}
.ft a{display:inline-flex;align-items:center;min-height:48px;font:300 16px/1.5 Code,monospace;border-bottom:1px solid var(--ln);letter-spacing:1.4px;text-transform:uppercase}
.dg{position:relative;border:1px solid var(--on);background:var(--sf);padding:24px;align-self:stretch;display:flex;flex-direction:column;justify-content:space-between;min-height:320px;overflow:hidden}
.dg figcaption{font:300 16px/1.5 Code,monospace;color:var(--mu);padding-top:24px;border-top:1px solid var(--ln);margin-top:24px}
.dg .tag{margin-bottom:24px;color:var(--mu)}
.map{position:relative;display:grid;grid-template-columns:minmax(0,3fr) minmax(0,2fr);gap:16px;align-items:center}
.nd{font:300 16px/1.5 Code,monospace;border:1px solid var(--on);min-height:56px;padding:14px 16px;position:relative;background:var(--bg);color:#fff}
.nd.wd{grid-column:1/-1}
.nd.lo{margin-top:24px}
.ar{position:relative;grid-column:1/-1;min-height:24px;border-left:1px solid var(--low);margin-left:24px}
.ar::after{content:'';position:absolute;bottom:0;left:-4px;width:7px;height:7px;border-right:1px solid var(--low);border-bottom:1px solid var(--low);transform:rotate(45deg)}
.dg .big{font:300 clamp(5rem,12vw,10rem)/1 Code,monospace;letter-spacing:-.08em;margin-bottom:24px;color:var(--dim)}
.sum{display:grid;grid-template-columns:1fr auto;gap:16px;align-items:center;padding:16px 0;border-bottom:1px solid var(--ln);font:300 16px/1.5 Code,monospace}
.sum:last-child{border-top:1px solid var(--dim);border-bottom:0;margin-top:16px;color:#fff}
.idx{padding-block:var(--gap)}
.idx h2{margin-bottom:32px}
.il{list-style:none;padding:0;border-top:1px solid var(--on)}
.il li{border-bottom:1px solid var(--ln)}
.il a{display:grid;grid-template-columns:44px minmax(0,4fr) minmax(0,5fr) 24px;gap:24px;min-height:80px;padding:20px 0;align-items:center}
.il .ix{font:300 24px/1 Code,monospace;color:var(--dim)}
.il .nm{font:300 20px/1.3 Code,monospace;letter-spacing:-.03em}
.il .why{color:var(--mu)}
.il a:hover .nm,.il a:hover .why,.il a:hover .ix{color:var(--dim)}
@media(prefers-reduced-motion:no-preference){.h{animation:enter 420ms ease-out both}@keyframes enter{from{opacity:.92;transform:translateY(4px)}to{opacity:1;transform:none}}}
@media(max-width:760px){.hd{grid-template-columns:1fr;gap:12px;padding-block:16px}.hd .btn{justify-self:start}.bc ol{gap:4px}.bc li{gap:4px}.bc a{padding-inline:0}.h{grid-template-columns:1fr;gap:32px;padding-block:40px 48px}.h h1{max-width:16ch}.h .lead{margin-top:24px}.hn{max-width:none;padding-left:16px}.mk{font-size:4.5rem;margin-bottom:16px}.dg{min-height:280px}.r,.r:nth-child(even){grid-template-columns:1fr;gap:24px;padding-block:56px}.r:nth-child(even) .k,.r:nth-child(even) .c{grid-column:auto;grid-row:auto}.pl,.df{grid-template-columns:1fr;gap:16px;padding:20px}.rc{grid-template-columns:1fr;gap:24px;padding-block:48px}.ft{grid-template-columns:1fr;gap:16px;padding-block:24px}.ft a{justify-self:start}.il a{grid-template-columns:24px minmax(0,1fr) 20px;gap:16px}.il .why{grid-column:2;grid-row:2}.il .out{grid-column:3;grid-row:1}.il .nm{font-size:20px}.il .ix{font-size:20px}.ck label{gap:12px}.dg .big{font-size:5rem}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important}}
@media print{html,body{background:#fff;color:#000;color-scheme:light}body{font-size:12pt}.w{max-width:none;padding:0}.hd,.sk,.pl,.dg,.ft a,.nx,.fx,.idx{display:none!important}.h{display:block;padding:0 0 20pt;border-bottom:1px solid #777}.h h1{font-size:32pt;max-width:24ch}.h .lead{margin-top:16pt;color:#000}.h .btn,.hn{display:none}.tag,.k .tag{color:#444}.r,.r:nth-child(even){display:block;padding:24pt 0;border-bottom:1px solid #999;break-inside:auto}.r h2{margin-bottom:12pt;font-size:20pt;break-after:avoid}.c p,.rc p,.ft{color:#111}.c p+p{margin-top:8pt}.e{color:#222;border:0;display:block;min-height:0;padding:3pt 0;margin:0;font-size:12pt}.e::after{content:' — '+attr(href);font-size:10pt;overflow-wrap:anywhere}.ck{border-color:#999}.ck label{min-height:0;padding:6pt 0;break-inside:avoid;border-color:#ccc}.ck label span{padding:5pt 0;color:#000!important}.ck input{border:1px solid #888;width:32pt;height:32pt;background:#fff}.ck input::after{border-color:#555}.ck input:checked::after{border-color:#000}.rc{display:block;padding:24pt 0}.rc h2{margin-bottom:12pt}.ft{display:block;border-color:#777;padding:16pt 0}.ft p{font-size:12pt}.df{display:block;padding:12pt;margin-top:20pt;border:1px solid #999;break-inside:avoid}.df h2{margin-bottom:12pt}.df p{color:#000}.h{animation:none}}

@media print{body[data-pg='first-check'] .h{padding:0 0 20pt}body[data-pg='first-check'] h1{font-size:32pt;max-width:24ch}body[data-pg='first-check'] .r{padding:24pt 0}body[data-pg='first-check'] .ck label{min-height:0}body[data-pg='first-check'] .r:last-child{margin-top:0;background:transparent;border:0;border-bottom:1px solid #999}}
