@font-face{font-family:Fraunces;font-style:normal;font-weight:300 700;font-display:swap;src:url(/fonts/fraunces-normal.woff2) format("woff2")}@font-face{font-family:Fraunces;font-style:italic;font-weight:300 600;font-display:swap;src:url(/fonts/fraunces-italic.woff2) format("woff2")}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:400 500;font-display:swap;src:url(/fonts/jetbrains-mono-normal.woff2) format("woff2")}:root{color-scheme:light;--paper:#FAFAF9;--ink:#101413;--hair:#E4E8E6;--accent:#175449;--wax:23,84,73;--grey:#5F6361;--mute:#6F7371;--body:#222A28;--lede:#3A423F;--warn:#8A4A1E;--accent-hot:#0F3E36;--on-accent:#F3F8F6;--edge-top-soft:rgba(255,255,255,.9);--serif:"Fraunces","Palatino Linotype",Palatino,Georgia,serif;--mono:"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,monospace;--gutter:clamp(20px,5vw,68px);--ease:cubic-bezier(.22,.61,.36,1);--t-fast:180ms;--t-base:320ms}[data-theme=lead]{color-scheme:dark;--paper:#2F3639;--ink:#F1F2F1;--hair:#464C4F;--accent:#74D3BC;--wax:198,232,220;--grey:#B4B8B6;--mute:#9EA4A1;--body:#D7D9D8;--lede:#C0C3C2;--warn:#E7A75C;--accent-hot:#8ADFCA;--on-accent:#08110F;--edge-top-soft:rgba(255,255,255,.08)}[data-theme=ink]{color-scheme:dark;--paper:#171C1B;--ink:#DFE0E0;--hair:#2E3332;--accent:#4FB49B;--wax:198,232,220;--grey:#9BA09E;--mute:#848A87;--body:#C4C6C5;--lede:#AFB2B1;--warn:#D98B3A;--accent-hot:#6BC7B0;--on-accent:#08110F;--edge-top-soft:rgba(255,255,255,.07)}*,:after,:before{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--serif);font-optical-sizing:auto;font-size:1rem;line-height:1.7;-webkit-font-smoothing:antialiased}h1,h2,h3{font-weight:400;line-height:1.15;margin:0}p{margin:0}a{color:inherit}.shell{max-width:1180px;margin-inline:auto;padding-inline:var(--gutter)}.narrow{max-width:640px}.btn,.chip,.eyebrow,.index,.mono,.num,input,label,select,textarea,th{font-family:var(--mono);font-feature-settings:none;font-variant-ligatures:none}.wordmark{font-family:var(--serif);letter-spacing:.3em;margin-right:-.3em}.index{color:var(--accent)}.eyebrow,.index{font-size:.7rem;letter-spacing:.2em;text-transform:uppercase}.eyebrow{color:var(--grey)}h1{font-size:clamp(2rem,1.4rem + 2.6vw,3rem);letter-spacing:-.012em;margin:.5rem 0 0}h2{font-size:clamp(1.5rem,1.2rem + 1.4vw,2rem)}h2,h3{margin:0 0 .4rem}h3{font-size:1.1rem}.lede{margin-top:1rem;font-size:1.1rem}.lede,.note{line-height:1.6;color:var(--lede)}.note{font-size:.95rem}.topbar{border-bottom:1px solid var(--hair)}.topbar__in{display:flex;align-items:center;gap:clamp(14px,3vw,34px);height:60px}.topbar__in nav{display:flex;gap:clamp(12px,2vw,26px);margin-left:auto}.topbar__in nav a{font-family:var(--mono);font-size:.7rem;letter-spacing:.1em;text-transform:uppercase;color:var(--grey);text-decoration:none}.topbar__in nav a:hover,.topbar__in nav a[aria-current=page]{color:var(--ink)}section.bay{padding-block:clamp(40px,6vw,72px)}section.bay+section.bay{border-top:1px solid var(--hair)}.field{display:grid;grid-gap:8px;gap:8px;margin-bottom:20px}label{font-size:.66rem;letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}input[type=password],input[type=text],select,textarea{font-family:var(--mono);font-size:.8rem;color:var(--ink);background:transparent;border:1px solid var(--hair);border-radius:8px;padding:.7em .8em;width:100%;transition:border-color var(--ease) .16s}input:focus,select:focus,textarea:focus{outline:2px solid var(--accent);outline-offset:2px}input:hover,textarea:hover{border-color:rgba(var(--wax),.3)}textarea{min-height:130px;resize:vertical;line-height:1.6}.btn{display:inline-flex;align-items:center;justify-content:center;font-size:.7rem;letter-spacing:.15em;text-transform:uppercase;padding:.8em 1.2em;border:1px solid var(--hair);border-radius:9px;background:transparent;color:var(--ink);text-decoration:none;cursor:pointer;transition:background .16s var(--ease),border-color .16s var(--ease),transform .16s var(--ease)}.btn:hover{border-color:rgba(var(--wax),.35);background:rgba(var(--wax),.05);transform:translateY(-1px)}.btn:active{transform:translateY(1px)}.btn--solid{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.btn--solid:hover{background:var(--accent-hot);border-color:var(--accent-hot)}.btn[disabled]{opacity:.45;cursor:default;transform:none}:where(a,button,input,select,textarea):focus-visible{outline:2px solid var(--accent);outline-offset:3px}.toggle{display:flex;align-items:center;gap:.6em;font-family:var(--mono);font-size:.68rem;letter-spacing:.1em;text-transform:uppercase;color:var(--grey);cursor:pointer}.toggle input{width:auto}.result{margin-top:20px;padding:1em 1.2em;border-radius:10px;background:rgba(var(--wax),.055);box-shadow:inset 0 1px 0 var(--edge-top-soft),inset 0 0 0 1px rgba(var(--wax),.12);font-size:.95rem;color:var(--body)}.result .num{font-size:1.6rem;color:var(--ink);letter-spacing:-.01em}.result--bad{background:transparent;box-shadow:inset 0 0 0 1px var(--hair)}.chip{font-size:.64rem;letter-spacing:.14em;text-transform:uppercase}.chip--match{color:var(--accent)}.chip--under{color:var(--grey)}.chip--bad,.chip--over{color:var(--warn)}table{width:100%;border-collapse:collapse}th{text-align:left;font-weight:400;font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:var(--mute);padding:.7em 1.2em .7em 0;white-space:nowrap}td,th{border-bottom:1px solid var(--hair)}td{padding:.75em 1.2em .75em 0;font-size:.92rem;vertical-align:top}td.mono,th.mono{font-family:var(--mono);font-size:.74rem}td.num,th.num{font-family:var(--mono);font-size:.78rem;text-align:right;padding-right:1.4em}tr:hover td{background:rgba(var(--wax),.03)}.scroll{overflow-x:auto}details>summary{cursor:pointer;font-family:var(--mono);font-size:.7rem;letter-spacing:.1em;color:var(--grey)}details>summary:hover{color:var(--ink)}details[open]>summary{margin-bottom:.8em}pre{font-family:var(--mono);font-size:.7rem;line-height:1.6;color:var(--body);background:rgba(var(--wax),.04);border-radius:8px;padding:1em;overflow-x:auto;max-height:340px;margin:0}.stats{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));grid-gap:1px 24px;gap:1px 24px;border-top:1px solid var(--hair);padding-top:20px;margin-bottom:40px}.stat dt{font-size:.64rem;letter-spacing:.16em;text-transform:uppercase;color:var(--mute)}.stat dd,.stat dt{font-family:var(--mono)}.stat dd{margin:.35em 0 0;font-size:1.5rem;color:var(--ink)}.bar{display:grid;grid-template-columns:12em 1fr 4em;align-items:center;grid-gap:1em;gap:1em;padding:.45em 0;border-bottom:1px solid var(--hair)}.bar__name{font-family:var(--mono);font-size:.72rem;color:var(--body);overflow-wrap:anywhere}.bar__track{height:8px;background:rgba(var(--wax),.09);border-radius:4px}.bar__fill,.bar__track{display:block}.bar__fill{height:100%;background:var(--accent);border-radius:4px}.bar__n{font-family:var(--mono);font-size:.72rem;color:var(--grey);text-align:right}.timeline{display:flex;align-items:flex-end;gap:3px;height:80px;border-bottom:1px solid var(--hair)}.timeline span{flex:1 1;background:var(--accent);border-radius:3px 3px 0 0;min-height:2px}.links{gap:8px}.links,.row{display:flex;flex-wrap:wrap}.row{gap:10px;align-items:center}.spacer{margin-left:auto}.stack{display:grid;grid-gap:10px;gap:10px}.visually-hidden{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}footer.foot{border-top:1px solid var(--hair);padding-block:32px;margin-top:40px}footer.foot p{font-size:.9rem;color:var(--grey);font-style:italic}.theme{display:inline-flex;align-items:center;gap:2px;padding:2px;border:1px solid var(--hair);border-radius:999px}.theme__opt{font-family:var(--mono);font-size:.62rem;letter-spacing:.14em;text-transform:uppercase;padding:.45em .75em;border:0;border-radius:999px;background:transparent;color:var(--mute);cursor:pointer;transition:color var(--t-fast) var(--ease),background var(--t-fast) var(--ease)}.theme__opt:hover{color:var(--ink)}.theme__opt[aria-pressed=true]{background:rgba(var(--wax),.13);color:var(--accent)}.theming,.theming *,.theming :after,.theming :before{transition:background-color .28s var(--ease),border-color .28s var(--ease),color .28s var(--ease),box-shadow .28s var(--ease)!important}