:root{--fog:#edf0f3;--fog-raised:#f7f9fa;--ink:#0d1520;--graphite:#4b5664;--rule:#cbd2da;--cobalt:#2f4bff;--cobalt-ink:#fff;--amber:#e3a21a;--glass-fill:#ffffff8c;--glass-edge:#ffffffe6;--glass-shadow:0 10px 30px -12px #0d152040;--step--1:clamp(.83rem, .8rem + .15vw, .9rem);--step-0:clamp(1rem, .96rem + .2vw, 1.0625rem);--step-1:clamp(1.2rem, 1.1rem + .45vw, 1.4rem);--step-2:clamp(1.5rem, 1.3rem + .9vw, 2rem);--step-3:clamp(2rem, 1.6rem + 1.8vw, 3rem);--step-4:clamp(2.6rem, 1.8rem + 4vw, 5.25rem);--gutter:clamp(1rem, .5rem + 2.5vw, 2.5rem);--measure:66ch;--page:1180px;--radius:14px;--ease-out:cubic-bezier(.22, 1, .36, 1);color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--fog:#0b1017;--fog-raised:#121922;--ink:#e6ebf0;--graphite:#96a1ae;--rule:#243040;--cobalt:#7d90ff;--cobalt-ink:#0b1017;--amber:#f0b43a;--glass-fill:#1219228c;--glass-edge:#ffffff24;--glass-shadow:0 10px 30px -12px #0009}}*,:before,:after{box-sizing:border-box}*{margin:0}html{-webkit-text-size-adjust:100%;text-rendering:optimizelegibility}body{background:var(--fog);color:var(--ink);font-family:var(--font-body);font-size:var(--step-0);-webkit-font-smoothing:antialiased;flex-direction:column;min-height:100dvh;line-height:1.6;display:flex}main{flex:1}img,svg,video,canvas{max-width:100%;display:block}h1,h2,h3{font-family:var(--font-display);letter-spacing:-.025em;text-wrap:balance;font-weight:600;line-height:1.05}h1{font-size:var(--step-4);letter-spacing:-.04em}h2{font-size:var(--step-3)}h3{font-size:var(--step-1);letter-spacing:-.015em;line-height:1.2}p{text-wrap:pretty}a{color:inherit;text-underline-offset:.2em;text-decoration-thickness:1px}a:hover{color:var(--cobalt)}:focus-visible{outline:2px solid var(--cobalt);outline-offset:3px;border-radius:4px}::selection{background:var(--cobalt);color:var(--cobalt-ink)}code,kbd,.mono{font-family:var(--font-mono);font-feature-settings:"zero" 1;font-size:.88em}.wrap{width:100%;max-width:calc(var(--page) + var(--gutter) * 2);padding-inline:var(--gutter);margin-inline:auto}.section{padding-block:clamp(4rem,3rem + 5vw,8rem)}.section+.section{border-top:1px solid var(--rule)}.section-head{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:1rem;margin-bottom:clamp(2rem,1.5rem + 2vw,3.5rem);display:flex}.section-head p{color:var(--graphite);max-width:46ch}.prompt{font-family:var(--font-mono);font-size:var(--step--1);color:var(--graphite);letter-spacing:0}.prompt b{color:var(--ink);font-weight:500}.lede{font-size:var(--step-1);color:var(--graphite);max-width:52ch;line-height:1.5}.prose{max-width:var(--measure)}.prose>*+*{margin-top:1.1em}.prose h2{font-size:var(--step-2);margin-top:2.2em}.prose ul{padding-left:1.1em}.prose li+li{margin-top:.5em}.prose li::marker{color:var(--graphite)}.prose code{background:var(--fog-raised);border:1px solid var(--rule);border-radius:5px;padding:.1em .35em}.btn{min-height:44px;font:500 var(--step--1) / 1 var(--font-body);letter-spacing:.01em;transition:transform .16s var(--ease-out), background-color .16s, border-color .16s, color .16s;border:1px solid #0000;border-radius:999px;align-items:center;gap:.5em;padding:.7em 1.25em;text-decoration:none;display:inline-flex}.btn:active{transform:scale(.97)}.btn-primary{background:var(--ink);color:var(--fog)}.btn-primary:hover{background:var(--cobalt);color:var(--cobalt-ink)}.btn-quiet{border-color:var(--rule);color:var(--ink)}.btn-quiet:hover{border-color:var(--ink);color:var(--ink)}.tags{flex-wrap:wrap;gap:.4rem;padding:0;list-style:none;display:flex}.tags li{font-family:var(--font-mono);border:1px solid var(--rule);color:var(--graphite);white-space:nowrap;border-radius:999px;padding:.25em .65em;font-size:.78rem}.glass{background:var(--glass-fill);border:1px solid var(--glass-edge);box-shadow:var(--glass-shadow), inset 0 1px 0 var(--glass-edge);backdrop-filter:blur(14px)saturate(1.6)}@media (prefers-reduced-motion:no-preference){.js [data-reveal]{opacity:0;transition:opacity .7s var(--ease-out), transform .7s var(--ease-out);transition-delay:calc(var(--i,0) * 70ms);transform:translateY(14px)}.js [data-reveal].is-in{opacity:1;transform:none}@view-transition{navigation:auto}}.visually-hidden{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;overflow:hidden;position:absolute!important}.skip-link{left:var(--gutter);z-index:100;background:var(--ink);color:var(--fog);border-radius:8px;padding:.6rem 1rem;position:absolute;top:-100px}.skip-link:focus{top:.75rem}html.lenis,html.lenis body{height:auto}.lenis.lenis-smooth{scroll-behavior:auto!important}.lenis.lenis-stopped{overflow:clip}@media print{.no-print,header.site,footer.site{display:none!important}body{color:#000;background:#fff;font-size:10.5pt}.section{padding-block:.5rem}a{text-decoration:none}}header[data-astro-cid-wpvy4v7s].site{z-index:50;pointer-events:none;justify-content:center;padding-inline:16px;display:flex;position:fixed;inset:.9rem 0 auto}.defs[data-astro-cid-wpvy4v7s]{position:absolute}.pill[data-astro-cid-wpvy4v7s]{pointer-events:auto;border-radius:999px;align-items:center;gap:.25rem;max-width:100%;padding:.3rem;display:flex}@supports (backdrop-filter:url(#x)){.pill[data-astro-cid-wpvy4v7s]{backdrop-filter:url(#lg-refract)blur(10px)saturate(1.7)}}.pill[data-astro-cid-wpvy4v7s] ul[data-astro-cid-wpvy4v7s]{gap:.1rem;padding:0;list-style:none;display:flex}.pill[data-astro-cid-wpvy4v7s] a[data-astro-cid-wpvy4v7s]{min-height:40px;font-size:var(--step--1);color:var(--graphite);border-radius:999px;align-items:center;padding:0 .95rem;font-weight:500;text-decoration:none;transition:color .16s,background-color .16s;display:inline-flex}.pill[data-astro-cid-wpvy4v7s] a[data-astro-cid-wpvy4v7s]:hover{color:var(--ink)}.pill[data-astro-cid-wpvy4v7s] a[data-astro-cid-wpvy4v7s][aria-current=page]{color:var(--ink);background:var(--fog-raised);box-shadow:0 1px 2px #0d152014}.pill[data-astro-cid-wpvy4v7s] .mark[data-astro-cid-wpvy4v7s]{font-family:var(--font-display);letter-spacing:-.06em;color:var(--ink);padding-inline:.85rem .95rem;font-size:1rem;font-weight:700}@media (width<=420px){.pill[data-astro-cid-wpvy4v7s] a[data-astro-cid-wpvy4v7s]{padding:0 .6rem}.pill[data-astro-cid-wpvy4v7s] .mark[data-astro-cid-wpvy4v7s]{padding-inline:.6rem}}footer[data-astro-cid-jo6i4kqk].site{border-top:1px solid var(--rule);margin-top:auto;padding-block:3.5rem 2rem}.row[data-astro-cid-jo6i4kqk]{flex-wrap:wrap;justify-content:space-between;align-items:end;gap:2rem;display:flex}.title[data-astro-cid-jo6i4kqk]{color:var(--graphite);margin-bottom:.35rem}.email[data-astro-cid-jo6i4kqk]{font:600 var(--step-2) / 1.1 var(--font-display);letter-spacing:-.03em;overflow-wrap:anywhere;text-decoration:none}.links[data-astro-cid-jo6i4kqk]{gap:1.5rem;padding:0;list-style:none;display:flex}.links[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]{color:var(--graphite);text-decoration:none}.links[data-astro-cid-jo6i4kqk] a[data-astro-cid-jo6i4kqk]:hover{color:var(--ink)}.meta[data-astro-cid-jo6i4kqk]{color:var(--graphite);flex-wrap:wrap;justify-content:space-between;gap:1rem;margin-top:3rem;font-size:.8rem;display:flex}.sample[data-astro-cid-zzby3fou]{z-index:60;background:var(--ink);max-width:min(360px,100vw - 32px);color:var(--fog);font:.78rem/1.5 var(--font-mono);box-shadow:var(--glass-shadow);border-radius:12px;padding:.55rem .85rem;position:fixed;bottom:16px;left:16px}summary[data-astro-cid-zzby3fou]{cursor:pointer;align-items:center;gap:.5rem;display:flex}.dot[data-astro-cid-zzby3fou]{background:var(--amber);border-radius:50%;width:8px;height:8px}p[data-astro-cid-zzby3fou]{opacity:.75;margin-top:.6rem}ul[data-astro-cid-zzby3fou]{margin-top:.3rem;padding-left:1rem}code[data-astro-cid-zzby3fou]{font-size:1em}.page-top[data-astro-cid-hkbrpulz]{padding-top:7.5rem}
