@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-cyrillic-ext-wght-normal.DjL33-gN.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-cyrillic-wght-normal.BEAKL7Jp.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-vietnamese-wght-normal.6IgcOCM7.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-latin-ext-wght-normal.DC-KSUi6.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-latin-wght-normal.BgDaEnEv.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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 Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-mono-cyrillic-ext-wght-normal.X_5orZeX.woff2) format("woff2-variations");unicode-range:U+0460-052F,U+1C80-1C8A,U+20B4,U+2DE0-2DFF,U+A640-A69F,U+FE2E-FE2F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-mono-cyrillic-wght-normal.DiZS0aHC.woff2) format("woff2-variations");unicode-range:U+0301,U+0400-045F,U+0490-0491,U+04B0-04B1,U+2116}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-mono-symbols2-wght-normal.CO5SzqOn.woff2) format("woff2-variations");unicode-range:U+2000-2001,U+2004-2008,U+200A,U+23B8-23BD,U+2500-259F}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-mono-vietnamese-wght-normal.DadHysG0.woff2) format("woff2-variations");unicode-range:U+0102-0103,U+0110-0111,U+0128-0129,U+0168-0169,U+01A0-01A1,U+01AF-01B0,U+0300-0301,U+0303-0304,U+0308-0309,U+0323,U+0329,U+1EA0-1EF9,U+20AB}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-mono-latin-ext-wght-normal.Bwz-egvJ.woff2) format("woff2-variations");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:Geist Mono Variable;font-style:normal;font-display:swap;font-weight:100 900;src:url(./geist-mono-latin-wght-normal.XN7g48iV.woff2) format("woff2-variations");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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:normal;font-display:swap;font-weight:400;src:url(./instrument-serif-latin-ext-400-normal.C2je3j2s.woff2) format("woff2"),url(./instrument-serif-latin-ext-400-normal.CFCUzsTy.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Instrument Serif";font-style:normal;font-display:swap;font-weight:400;src:url(./instrument-serif-latin-400-normal.DnYpCC2O.woff2) format("woff2"),url(./instrument-serif-latin-400-normal.BVbkICAY.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,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(./instrument-serif-latin-ext-400-italic.C9HzH3YL.woff2) format("woff2"),url(./instrument-serif-latin-ext-400-italic.D7-lnxEk.woff) format("woff");unicode-range:U+0100-02BA,U+02BD-02C5,U+02C7-02CC,U+02CE-02D7,U+02DD-02FF,U+0304,U+0308,U+0329,U+1D00-1DBF,U+1E00-1E9F,U+1EF2-1EFF,U+2020,U+20A0-20AB,U+20AD-20C0,U+2113,U+2C60-2C7F,U+A720-A7FF}@font-face{font-family:"Instrument Serif";font-style:italic;font-display:swap;font-weight:400;src:url(./instrument-serif-latin-400-italic.DKMiL14s.woff2) format("woff2"),url(./instrument-serif-latin-400-italic.u__WvvIK.woff) format("woff");unicode-range:U+0000-00FF,U+0131,U+0152-0153,U+02BB-02BC,U+02C6,U+02DA,U+02DC,U+0304,U+0308,U+0329,U+2000-206F,U+20AC,U+2122,U+2191,U+2193,U+2212,U+2215,U+FEFF,U+FFFD}:root{color-scheme:light dark;--paper: light-dark(#f3efe6, #0f0e0c);--paper-raised: light-dark(#faf7f0, #181613);--paper-sunk: light-dark(#e9e4d7, #211e1a);--ink: light-dark(#17140f, #f1ece0);--ink-muted: light-dark(#5a5448, #a8a292);--ink-faint: light-dark(#7d766a, #7d776a);--rule: light-dark(#d6cfbd, #2e2a24);--rule-strong: light-dark(#b9b19c, #433e35);--accent: light-dark(#c42e14, #ff6a4a);--accent-soft: light-dark(#f6dcd3, #3a1a13);--accent-ink: #ffffff;--marker: light-dark(rgb(255 206 60 / .55), rgb(255 206 60 / .26));--cobalt: light-dark(#2447b8, #8aa6ff);--ok: light-dark(#1b7547, #4cc38a);--ok-soft: light-dark(#d6ecdf, #14291f);--warn: light-dark(#8f5a00, #f0b34a);--warn-soft: light-dark(#f4e6c6, #2b2111);--err: light-dark(#ac2218, #ff7b72);--err-soft: light-dark(#f5d9d5, #331715);--font-display: "Instrument Serif", "Iowan Old Style", "Palatino Linotype", Georgia, serif;--font-body: "Geist Variable", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono: "Geist Mono Variable", ui-monospace, "SF Mono", Menlo, Consolas, monospace;--step--1: clamp(.8rem, .78rem + .1vw, .86rem);--step-0: clamp(.97rem, .94rem + .15vw, 1.06rem);--step-1: clamp(1.15rem, 1.08rem + .35vw, 1.34rem);--step-2: clamp(1.4rem, 1.2rem + 1vw, 1.9rem);--step-3: clamp(1.9rem, 1.4rem + 2.2vw, 3rem);--step-4: clamp(2.5rem, 1.6rem + 4vw, 4.8rem);--step-hero: clamp(3.3rem, 1.4rem + 8.4vw, 8.2rem);--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.5rem;--space-6: 2rem;--space-7: 3rem;--space-8: 4.5rem;--space-9: 7rem;--radius-s: 4px;--radius-m: 8px;--radius-l: 14px;--measure: 64ch;--container: 1180px;--gutter: clamp(1.1rem, 4vw, 2.5rem);--header-h: 64px;--shadow-slip: 0 1px 0 var(--rule), 0 14px 30px -18px rgb(23 20 15 / .35);--ease-out: cubic-bezier(.2, .7, .2, 1)}: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;scroll-padding-top:calc(var(--header-h) + 1rem)}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--font-body);font-size:var(--step-0);line-height:1.6;font-feature-settings:"ss01","cv11";-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100dvh}h1,h2,h3,h4{margin:0;font-weight:500;line-height:1.12;letter-spacing:-.01em;text-wrap:balance}h1,h2{font-family:var(--font-display);font-weight:400;letter-spacing:-.015em}p{margin:0;text-wrap:pretty}a{color:inherit;text-decoration-color:var(--rule-strong);text-underline-offset:.2em;text-decoration-thickness:1px}a:hover{text-decoration-color:var(--accent)}img,svg{display:block;max-width:100%}button,input,select,textarea{font:inherit;color:inherit}ul,ol{margin:0;padding:0}code,kbd,pre,samp{font-family:var(--font-mono);font-size:.92em}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}::selection{background:var(--marker);color:var(--ink)}.sr-only{position:absolute;width:1px;height:1px;margin:-1px;padding:0;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip-link{position:fixed;top:.5rem;left:.5rem;z-index:100;padding:.5rem .9rem;background:var(--ink);color:var(--paper);border-radius:var(--radius-s);transform:translateY(-200%)}.skip-link:focus{transform:none}.container{width:100%;max-width:var(--container);margin-inline:auto;padding-inline:var(--gutter)}.section{padding-block:var(--space-9);border-top:1px solid var(--rule)}.eyebrow{display:inline-flex;align-items:center;gap:.6rem;font-family:var(--font-mono);font-size:var(--step--1);letter-spacing:.08em;text-transform:uppercase;color:var(--ink-muted)}.eyebrow b{font-weight:500;color:var(--accent)}.lede{font-size:var(--step-1);color:var(--ink-muted);max-width:56ch}.muted{color:var(--ink-muted)}.faint{color:var(--ink-faint)}.mono{font-family:var(--font-mono)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.7rem 1.15rem;border:1px solid var(--ink);border-radius:var(--radius-m);background:transparent;color:var(--ink);font-weight:500;font-size:var(--step-0);line-height:1.2;text-decoration:none;cursor:pointer;transition:background-color .15s,color .15s,border-color .15s,transform .15s var(--ease-out)}.btn:hover{background:var(--ink);color:var(--paper)}.btn:active{transform:translateY(1px)}.btn[disabled],.btn[aria-disabled=true]{opacity:.5;cursor:not-allowed;pointer-events:none}.btn-primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn-primary:hover{background:var(--ink);border-color:var(--ink);color:var(--paper)}.btn-quiet{border-color:var(--rule-strong)}.btn-quiet:hover{border-color:var(--ink)}.btn-danger{border-color:var(--err);color:var(--err)}.btn-danger:hover{background:var(--err);border-color:var(--err);color:#fff}.btn-small{padding:.38rem .7rem;font-size:var(--step--1);border-radius:var(--radius-s)}.link-button{background:none;border:0;padding:0;cursor:pointer;text-decoration:underline;text-decoration-color:var(--rule-strong);text-underline-offset:.2em}.link-button:hover{text-decoration-color:var(--accent)}.field{display:grid;gap:.35rem}.field>label,.field>.label{font-size:var(--step--1);font-weight:500;color:var(--ink-muted)}.field .hint{font-size:var(--step--1);color:var(--ink-faint)}.input,.textarea,.select{width:100%;padding:.6rem .75rem;background:var(--paper-raised);border:1px solid var(--rule-strong);border-radius:var(--radius-m);color:var(--ink);transition:border-color .15s}.input:hover,.textarea:hover,.select:hover{border-color:var(--ink-faint)}.input:focus-visible,.textarea:focus-visible,.select:focus-visible{outline:2px solid var(--accent);outline-offset:1px;border-color:var(--accent)}.textarea{resize:vertical;min-height:6rem;line-height:1.5}.textarea.code{font-family:var(--font-mono);font-size:.88rem;line-height:1.6;-moz-tab-size:2;tab-size:2;white-space:pre;overflow:auto}.form-grid{display:grid;gap:var(--space-4)}.card{background:var(--paper-raised);border:1px solid var(--rule);border-radius:var(--radius-l);padding:var(--space-5)}.badge{display:inline-flex;align-items:center;gap:.3rem;padding:.12rem .5rem;border:1px solid var(--rule-strong);border-radius:999px;font-family:var(--font-mono);font-size:.72rem;line-height:1.5;color:var(--ink-muted);white-space:nowrap}.badge-accent{border-color:var(--accent);color:var(--accent)}.badge-ok{border-color:var(--ok);color:var(--ok);background:var(--ok-soft)}.badge-warn{border-color:var(--warn);color:var(--warn);background:var(--warn-soft)}.badge-err{border-color:var(--err);color:var(--err);background:var(--err-soft)}.notice{padding:.75rem 1rem;border-radius:var(--radius-m);border:1px solid var(--rule-strong);background:var(--paper-sunk);font-size:var(--step--1)}.notice-err{border-color:var(--err);background:var(--err-soft);color:var(--ink)}.notice-ok{border-color:var(--ok);background:var(--ok-soft)}.notice-warn{border-color:var(--warn);background:var(--warn-soft)}.notice ul{margin-top:.4rem;padding-left:1.2rem}.table-wrap{overflow-x:auto;border:1px solid var(--rule);border-radius:var(--radius-m);background:var(--paper-raised)}table.table{width:100%;border-collapse:collapse;font-size:var(--step--1)}.table th,.table td{padding:.55rem .8rem;text-align:left;vertical-align:top;border-bottom:1px solid var(--rule)}.table th{font-family:var(--font-mono);font-size:.72rem;font-weight:500;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-muted);white-space:nowrap}.table tr:last-child td{border-bottom:0}.table td.num,.table th.num{text-align:right;font-variant-numeric:tabular-nums}.table .picked td{background:var(--accent-soft)}.pre{margin:0;padding:1rem 1.1rem;background:var(--paper-sunk);border:1px solid var(--rule);border-radius:var(--radius-m);overflow-x:auto;font-size:.86rem;line-height:1.65;-moz-tab-size:2;tab-size:2}:not(pre)>code{padding:.1em .38em;background:var(--paper-sunk);border-radius:var(--radius-s);font-size:.88em}mark.hook{background:var(--marker);color:inherit;padding:.05em .15em;border-radius:2px;box-decoration-break:clone;-webkit-box-decoration-break:clone}.prose{max-width:var(--measure)}.prose>*+*{margin-top:1rem}.prose h2{font-size:var(--step-3);margin-top:var(--space-7)}.prose h3{font-size:var(--step-1);margin-top:var(--space-6);font-weight:600}.prose ul,.prose ol{padding-left:1.3rem}.prose li+li{margin-top:.35rem}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important}}
