@font-face{font-family:Bricolage Grotesque;src:url(/fonts/bricolage-grotesque-latin.woff2)format("woff2");font-weight:400 800;font-display:swap;unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Sans;src:url(/fonts/instrument-sans-latin.woff2)format("woff2");font-weight:400 600;font-style:normal;font-display:swap;unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:Instrument Sans;src:url(/fonts/instrument-sans-latin-italic.woff2)format("woff2");font-weight:400 500;font-style:italic;font-display:swap;unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;src:url(/fonts/ibm-plex-mono-400-latin.woff2)format("woff2");font-weight:400;font-display:swap;unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2212,U+2215,U+FEFF,U+FFFD}@font-face{font-family:IBM Plex Mono;src:url(/fonts/ibm-plex-mono-500-latin.woff2)format("woff2");font-weight:500;font-display:swap;unicode-range:U+??,U+131,U+152-153,U+2BB-2BC,U+2C6,U+2DA,U+2DC,U+2000-206F,U+2074,U+20AC,U+2122,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:light;--bg:#fcfbf9;--ink:#1b1a29;--muted:#6b6880;--faint:#767390;--line:#ecebf0;--accent:#5b52e0;--pink:#e0356f;--pink-text:#c0264f;--band:#08071a;--font-head:"Bricolage Grotesque", system-ui, sans-serif;--font-body:"Instrument Sans", system-ui, -apple-system, sans-serif;--font-mono:"IBM Plex Mono", ui-monospace, Menlo, monospace;--measure:720px;--pad:clamp(1.25rem, 4vw, 1.75rem)}*{box-sizing:border-box;margin:0}html{-webkit-text-size-adjust:100%}body{background:var(--bg);color:var(--ink);font-family:var(--font-body);text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;font-size:17px;line-height:1.65}img{max-width:100%;height:auto}::selection{background:var(--pink);color:#fff}.page{max-width:var(--measure);padding:0 var(--pad);margin:0 auto}.skip-link{z-index:20;background:var(--pink-text);color:#fff;padding:.5rem 1rem;position:absolute;top:0;left:-999px}.skip-link:focus{left:0}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.band{background:radial-gradient(60% 120% at 26% 30%, #8b74ff1a, transparent 60%), radial-gradient(50% 120% at 74% 62%, #3e78e81a, transparent 60%), var(--band);position:relative;overflow:hidden}.band__canvas{width:100%;height:300px;display:block}.nav{z-index:3;background:linear-gradient(#08071ac7,#0000);position:absolute;top:0;left:0;right:0}.nav__inner{max-width:1000px;padding:18px var(--pad);justify-content:space-between;align-items:center;margin:0 auto;display:flex}.wordmark{font-family:var(--font-head);color:#fff;letter-spacing:-.01em;font-size:19px;font-weight:700;text-decoration:none}.wordmark .dot{color:var(--pink)}.nav__links{align-items:center;gap:22px;font-size:15px;display:flex}.nav__links a{color:#c9c5e6;text-decoration:none}.nav__links a:hover,.nav__links a[aria-current=page]{color:#fff}@media (width<=640px){.band__canvas{height:220px}.nav__links{gap:15px;font-size:14px}}.topbar{border-bottom:1px solid var(--line);background:var(--bg)}.topbar__inner{max-width:1000px;padding:16px var(--pad);justify-content:space-between;align-items:center;margin:0 auto;display:flex}.topbar .wordmark{color:var(--ink)}.topbar .nav__links a{color:var(--muted)}.topbar .nav__links a:hover,.topbar .nav__links a[aria-current=page]{color:var(--accent)}.intro{padding:40px 0 8px}.intro .kicker{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--pink-text);margin-bottom:14px;font-size:12px}.intro__lede{max-width:60ch;font-size:20px;line-height:1.55}.intro__lede strong{font-weight:600}.intro__lede a{color:var(--accent);text-underline-offset:2px;text-decoration:underline 1px}.intro__links{font-size:15px;font-family:var(--font-mono);flex-wrap:wrap;gap:8px 18px;margin-top:18px;display:flex}.intro__links a{color:var(--muted);text-decoration:none}.intro__links a:hover{color:var(--accent)}.avail{color:var(--muted);align-items:center;gap:8px;margin-top:14px;font-size:14px;display:inline-flex}.avail__dot{background:#2fbf71;border-radius:99px;width:8px;height:8px;box-shadow:0 0 0 3px #2fbf712e}.sec-label{font-family:var(--font-mono);letter-spacing:.14em;text-transform:uppercase;color:var(--faint);margin:46px 0 6px;font-size:12px}.feat{border-bottom:1px solid var(--line);padding:18px 0 20px;text-decoration:none;display:block}.feat h2,.feat h3{font-family:var(--font-head);letter-spacing:-.02em;color:var(--ink);font-size:27px;font-weight:700;line-height:1.2}.feat:hover h2,.feat:hover h3{color:var(--accent)}.feat .meta{font-family:var(--font-mono);color:var(--faint);margin:4px 0 8px;font-size:12.5px}.feat p{color:var(--muted);max-width:62ch;font-size:16px}.row{color:var(--ink);border-bottom:1px solid var(--line);justify-content:space-between;align-items:baseline;gap:18px;padding:15px 0;text-decoration:none;display:flex}.row:hover .row__t{color:var(--accent)}.row__t{font-size:17.5px;font-weight:600}.row__d{font-family:var(--font-mono);color:var(--faint);white-space:nowrap;font-size:12.5px}.more{color:var(--accent);margin-top:18px;font-size:15px;text-decoration:none;display:inline-block}.more:hover{text-decoration:underline}.year-label{font-family:var(--font-mono);letter-spacing:.12em;color:var(--faint);margin:34px 0 2px;font-size:12px}.page-header{padding:44px 0 0}.page-header h1{font-family:var(--font-head);letter-spacing:-.02em;font-size:clamp(2rem,5vw,2.6rem);font-weight:700;line-height:1.12}.page-header .meta{font-family:var(--font-mono);color:var(--faint);margin-top:10px;font-size:13px}.prose{font-size:17.5px}.prose>*+*{margin-top:1.3em}.prose h2,.prose h3{font-family:var(--font-head);letter-spacing:-.01em;margin-top:1.8em;margin-bottom:-.4em;font-weight:700;line-height:1.25}.prose h2{font-size:1.5rem}.prose h3{font-size:1.22rem}.prose a{color:var(--accent);text-underline-offset:2px;text-decoration:underline 1px}.prose strong{font-weight:600}.prose blockquote{border-left:3px solid var(--pink);color:var(--muted);margin:1.6em 0;padding:.2em 0 .2em 1.2em;font-style:italic}.prose code{font-family:var(--font-mono);background:#f1f0f4;border-radius:3px;padding:.12em .35em;font-size:.86em}.prose pre{color:#eae7f5;background:#14121f;border-radius:8px;padding:1.1rem 1.25rem;font-size:.85rem;line-height:1.7;overflow-x:auto}.prose pre code{font-size:inherit;background:0 0;padding:0}.prose ul,.prose ol{padding-left:1.3em}.prose li+li{margin-top:.4em}.prose hr{border:none;border-top:1px solid var(--line);margin:2.4em 0}.prose figure{margin:2em 0}.prose figure svg{width:100%;height:auto;display:block}.prose figcaption{text-align:center;font-family:var(--font-mono);color:var(--faint);margin-top:.7rem;font-size:.8rem}.prose table{border-collapse:collapse;width:100%}.prose thead th{text-align:left;border-bottom:1px solid var(--line);font-family:var(--font-mono);letter-spacing:.04em;text-transform:uppercase;color:var(--muted);vertical-align:bottom;padding:0 .7rem .6rem;font-size:.7rem;font-weight:500}.prose thead th code{color:var(--accent);background:0 0;padding:0;font-size:.72rem}.prose thead th:last-child code{color:var(--faint)}.prose tbody td{border-bottom:1px solid var(--line);vertical-align:top;padding:.7rem}.prose tbody td:first-child{color:var(--muted);white-space:nowrap;font-size:.85rem;font-family:var(--font-mono);font-size:.78rem}.chip{font-family:var(--font-mono);color:var(--ink);background:#f1f0f4;border-radius:5px;margin:2px 2px 2px 0;padding:1px 7px;font-size:.76rem;line-height:1.5;display:inline-block}.chip.fold{color:#4a41c9;background:#ece9fb;font-weight:600}.chip.keep{color:#c0264f;background:#fdeef4}.chip.none{color:var(--faint);background:0 0;padding-left:0}.demo{padding:0 var(--pad);max-width:100vw;margin:1.8em calc(50% - 50vw)}.demo__inner{max-width:960px;margin:0 auto}.field{margin-bottom:1rem}.field label{font-family:var(--font-mono);letter-spacing:.04em;color:var(--muted);margin-bottom:.35rem;font-size:.82rem;display:block}.field input,.field textarea{width:100%;font:inherit;color:var(--ink);border:1px solid var(--line);background:#fff;border-radius:8px;padding:.6rem .75rem;font-size:.98rem;transition:border-color .12s}.field input:focus,.field textarea:focus{border-color:var(--accent);outline:none}.field textarea{resize:vertical;min-height:7.5rem}.button{font:inherit;background:var(--accent);color:#fff;cursor:pointer;border:none;border-radius:9px;padding:.62rem 1.3rem;font-size:.95rem;font-weight:600;transition:background .12s,transform 80ms;display:inline-block}.button:hover{background:#4a41c9}.button:active{transform:translateY(1px)}.button:disabled{background:var(--faint);cursor:default}.form-note{color:var(--faint);margin-top:.6rem;font-size:.85rem}.form-status{margin-top:.7rem;font-size:.92rem}.form-status[data-tone=error]{color:#c0264f}.form-status[data-tone=ok]{color:#177a48}.turnstile-slot{min-height:68px;margin:.6rem 0 1rem}.hp-field{width:1px;height:1px;overflow:hidden;position:absolute!important;left:-9999px!important}.comments{border-top:1px solid var(--line);margin-top:3.5rem;padding-top:2rem}.comments h2{font-family:var(--font-head);margin-bottom:1.3rem;font-size:1.35rem;font-weight:700}.comment{border-bottom:1px solid var(--line);padding:1rem 0}.comment-head{align-items:baseline;gap:.7rem;margin-bottom:.25rem;display:flex}.comment-author{font-size:.95rem;font-weight:600}.comment-author.anon{color:var(--muted);font-style:italic;font-weight:500}.post-date{font-family:var(--font-mono);color:var(--faint);font-size:.78rem}.comment-body{white-space:pre-wrap;overflow-wrap:anywhere;margin:0;font-size:.98rem}.comments-status{color:var(--faint);font-size:.92rem}.fact-list{margin:0;padding:0;list-style:none}.fact-list li{border-bottom:1px solid var(--line);gap:1rem;padding:.55rem 0;display:flex}.fact-list .k{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--faint);min-width:7rem;padding-top:.3em;font-size:.76rem}.site-footer{border-top:1px solid var(--line);margin-top:54px}.site-footer .inner{max-width:var(--measure);padding:22px var(--pad) 44px;font-family:var(--font-mono);color:var(--faint);flex-wrap:wrap;justify-content:space-between;gap:14px;margin:0 auto;font-size:14px;display:flex}.site-footer a{color:var(--muted);text-decoration:none}.site-footer a:hover{color:var(--accent)}@media (prefers-reduced-motion:reduce){*{transition-duration:.001ms!important;animation-duration:.001ms!important}}
