:root{--bg: #080706;--fg: #f0ece7;--muted: #8c857d;--line: #24211d;--line-soft: #17150f;--surface: #111010;--surface-2: #171513;--accent: #e8b85b;--accent-dim: #b8863a;--accent-ink: #140f05;--accent-2: #63cfd6;--accent-2-ink: #06262a;--accent-3: #b493e8;--accent-3-ink: #1c1030;--s1: 4px;--s2: 8px;--s3: 12px;--s4: 16px;--s5: 24px;--s6: 32px;--s7: 48px;--s8: 64px;--s9: 96px;--gutter: var(--s5);--shell: 1280px;--measure: 58ch;--rail: 132px;--aside: 360px;--font-mono: ui-monospace, "SF Mono", "Cascadia Mono", "JetBrains Mono", "Geist Mono", Menlo, Consolas, monospace;--font-sans: ui-sans-serif, -apple-system, "Segoe UI", Inter, system-ui, sans-serif;--t-display: clamp(1.9rem, 4.2vw, 3.2rem);--t-title: clamp(1.4rem, 2.9vw, 1.85rem);--t-sub: 1.0625rem;--t-body: .9375rem;--t-small: .8125rem;--t-micro: .6875rem;color-scheme:dark}:root[data-theme=light]{--bg: #fbfaf8;--fg: #14120f;--muted: #6b645c;--line: #ddd8d0;--line-soft: #ebe7e1;--surface: #f3f1ed;--surface-2: #f8f6f3;--accent: #8a6a1f;--accent-dim: #6d5317;--accent-ink: #fffdf8;--accent-2: #0e7490;--accent-2-ink: #f0fafb;--accent-3: #6d28d9;--accent-3-ink: #faf5ff;color-scheme:light}*,*:before,*:after{box-sizing:border-box}html{background:var(--bg);-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--font-sans);font-size:var(--t-body);line-height:1.55;overflow-x:hidden;-webkit-font-smoothing:antialiased}body:before{content:"";position:fixed;inset:0;pointer-events:none;z-index:0;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='120' height='120'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='3' stitchTiles='stitch'/%3E%3CfeColorMatrix type='saturate' values='0'/%3E%3C/filter%3E%3Crect width='120' height='120' filter='url(%23n)' opacity='0.35'/%3E%3C/svg%3E");background-size:120px 120px;opacity:.022;mix-blend-mode:overlay}body>*{position:relative;z-index:1}::selection{background:var(--accent);color:var(--accent-ink)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:2px}.shell{width:100%;max-width:var(--shell);margin-inline:auto;padding-inline:var(--gutter)}a{color:inherit;text-decoration-color:var(--line);text-underline-offset:3px}a:hover{text-decoration-color:var(--accent-2);color:var(--accent-2)}h1,h2,h3{font-family:var(--font-mono);font-weight:600;margin:0;letter-spacing:-.02em}h1{font-size:var(--t-display);line-height:1.06;letter-spacing:-.035em;max-width:27ch;text-wrap:balance}h2{font-size:var(--t-title);line-height:1.2;letter-spacing:-.025em;max-width:34ch}h3{font-size:var(--t-sub);line-height:1.35;letter-spacing:-.01em}p{margin:0}p+p{margin-top:var(--s3)}code,pre,kbd{font-family:var(--font-mono);font-size:.9em}code{background:var(--surface);border:1px solid var(--line);border-radius:3px;padding:.1em .32em}pre code{background:none;border:0;padding:0}button{font:inherit;color:inherit;background:none;border:0;cursor:pointer}.micro{font-family:var(--font-mono);font-size:var(--t-micro);letter-spacing:.06em;text-transform:lowercase;color:var(--muted)}.prose{max-width:var(--measure)}.prose>*+*{margin-top:var(--s4)}.prose p{color:var(--muted)}.prose strong{color:var(--fg);font-weight:600}.nav{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;gap:var(--s4);padding-block:var(--s3);background:color-mix(in srgb,var(--bg) 88%,transparent);backdrop-filter:blur(8px);border-bottom:1px solid var(--line-soft)}.brand{display:inline-flex;align-items:center;gap:var(--s2);font-family:var(--font-mono);font-weight:600;font-size:var(--t-small);text-decoration:none;color:var(--fg)}.brand img{width:18px;height:18px;border-radius:3px}.nav-links{display:flex;align-items:center;gap:var(--s5);font-family:var(--font-mono);font-size:var(--t-small)}.nav-links a{text-decoration:none;color:var(--muted)}.nav-links a:hover,.nav-links a[aria-current=page]{color:var(--fg)}.theme-switch{display:inline-flex;border:1px solid var(--line);border-radius:4px;overflow:hidden}.theme-switch button{display:grid;place-items:center;width:30px;height:28px;color:var(--muted)}.theme-switch button:hover{color:var(--fg)}.theme-switch button[aria-pressed=true]{background:var(--surface);color:var(--accent)}.hero{position:relative;isolation:isolate;padding-block:var(--s7) var(--s6)}.hero-split{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.72fr);column-gap:var(--s6);align-items:start;padding-block:var(--s8) var(--s7)}.hero-copy{min-width:0}.hero-mark{min-height:300px;align-self:start}.hero-canvas{position:absolute;inset:0;width:100%;height:100%;z-index:-1;pointer-events:none}.hero-lede{max-width:46ch;color:var(--muted);margin-top:var(--s5);font-size:var(--t-body)}.hero-actions{display:flex;gap:var(--s5);margin-top:var(--s5);font-family:var(--font-mono);font-size:var(--t-small)}.hero-actions a{color:var(--muted);text-decoration:none}.hero-actions a:hover{color:var(--accent-2)}.install{margin-top:var(--s6);border:1px solid var(--line);border-radius:6px;background:var(--surface);overflow:hidden;max-width:640px}.install-tabs{display:flex;border-bottom:1px solid var(--line)}.install-tabs button{padding:var(--s2) var(--s3);font-family:var(--font-mono);font-size:var(--t-micro);letter-spacing:.04em;color:var(--muted);border-bottom:1px solid transparent;margin-bottom:-1px}.install-tabs button[aria-selected=true]{color:var(--fg);border-bottom-color:var(--accent)}.install-row{display:flex;align-items:center;gap:var(--s3);padding:var(--s3)}.install-row>[role=tabpanel]{flex:1;min-width:0}.install-row>[role=tabpanel][hidden]{display:none}.install-row pre{margin:0;overflow-x:auto;white-space:pre;font-size:var(--t-small);scrollbar-width:thin;-webkit-overflow-scrolling:touch}.copy{flex:none;min-height:40px;min-width:68px;padding-inline:var(--s3);border:1px solid var(--line);border-radius:4px;font-family:var(--font-mono);font-size:var(--t-micro);letter-spacing:.04em;color:var(--muted)}.copy:hover{color:var(--fg);border-color:var(--accent)}.copy[data-copied=true]{color:var(--accent-ink);background:var(--accent);border-color:var(--accent)}.install-foot{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s4);align-items:center;margin-top:var(--s3)}.fact-line{font-family:var(--font-mono);font-size:var(--t-micro);letter-spacing:.03em;color:var(--muted)}.fact-line b{color:var(--fg);font-weight:500}.install-note{margin-top:var(--s2);max-width:640px}.install-note summary{font-family:var(--font-mono);font-size:var(--t-micro);color:var(--muted);cursor:pointer;width:fit-content}.install-note summary:hover{color:var(--accent)}.install-note pre{margin:var(--s2) 0 0;padding:var(--s3);border:1px solid var(--line);border-radius:4px;overflow-x:auto;font-size:var(--t-micro)}.section{padding-block:var(--s8);border-top:1px solid var(--line)}.section-head,.section-body{display:grid;grid-template-columns:minmax(0,1fr) var(--aside);gap:var(--s5) var(--s6);align-items:start}.section-head>div,.section-body>.prose,.section-body>.entries{grid-column:1}.section-head>.wide,.section-body>.wide{grid-column:1 / -1}.section-body>.aside{grid-column:2}.section-head .lead{color:var(--muted);max-width:52ch;margin-top:var(--s3)}.section-body{margin-top:var(--s5)}.section-body:not(:has(.aside))>.prose,.section-body:not(:has(.aside))>.entries{grid-column:1 / -1;max-width:78ch}.aside>*+*{margin-top:var(--s4)}.rail{position:sticky;top:76px;display:grid;gap:2px;font-family:var(--font-mono);font-size:var(--t-micro)}.rail a{padding:5px 0 5px var(--s3);color:var(--muted);text-decoration:none;border-left:1px solid var(--line)}.rail a:hover{color:var(--fg)}.rail a[aria-current=true]{color:var(--accent);border-left-color:var(--accent)}.rail .micro{display:block;margin-bottom:var(--s2);padding-left:var(--s3);border-left:1px solid transparent}.entries{list-style:none;margin:0;padding:0}.entries>li{padding-block:var(--s5);border-top:1px solid var(--line)}.entries>li:last-child{border-bottom:1px solid var(--line)}.entries h3{margin-bottom:var(--s2)}.entries p{color:var(--muted);max-width:62ch}.entries p+p{margin-top:var(--s2)}.entries .cost{color:var(--muted)}.entries .src{display:inline-block;margin-top:var(--s3);font-family:var(--font-mono);font-size:var(--t-micro);color:var(--muted);text-decoration:none}.entries .src:hover{color:var(--accent-2)}.data-table{width:100%;border-collapse:collapse;font-family:var(--font-mono);font-size:var(--t-small)}.data-table th{text-align:left;font-size:var(--t-micro);font-weight:500;letter-spacing:.06em;color:var(--accent-2);padding:var(--s2) var(--s3) var(--s2) 0;border-bottom:1px solid var(--line)}.data-table td{padding:var(--s2) var(--s3) var(--s2) 0;border-bottom:1px solid var(--line-soft);color:var(--muted);vertical-align:top}.data-table td:first-child{color:var(--fg)}.data-table tr:last-child td{border-bottom:0}.taglist{font-family:var(--font-mono);font-size:var(--t-small);line-height:2.1;color:var(--muted);margin:0;max-width:62ch}.taglist b{color:var(--fg);font-weight:500}.shellblock{margin:0;padding:var(--s4);border:1px solid var(--line);border-left:2px solid var(--accent);border-radius:4px;background:var(--surface);overflow-x:auto;font-size:var(--t-small);line-height:1.9}.os-links{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1px;background:var(--line);border:1px solid var(--line);border-radius:4px;overflow:hidden}.os-links a{display:block;padding:var(--s4);background:var(--bg);text-decoration:none;color:var(--fg)}.os-links a:hover{background:var(--surface)}.os-links strong{display:block;font-family:var(--font-mono);font-size:var(--t-small);font-weight:500}.os-links span{display:block;margin-top:var(--s1);color:var(--muted);font-size:var(--t-small)}.footer{display:flex;flex-wrap:wrap;gap:var(--s2) var(--s5);align-items:center;padding-block:var(--s6) var(--s7);border-top:1px solid var(--line);font-family:var(--font-mono);font-size:var(--t-micro);letter-spacing:.03em;color:var(--muted)}.footer a{color:var(--muted);text-decoration:none}.footer a:hover{color:var(--fg)}.footer .spacer{flex:1}.home-rail{position:sticky;top:52px;z-index:10;display:flex;flex-wrap:wrap;gap:var(--s2) var(--s5);align-items:baseline;padding-block:var(--s3);background:color-mix(in srgb,var(--bg) 92%,transparent);backdrop-filter:blur(6px);border-block:1px solid var(--line-soft);font-family:var(--font-mono);font-size:var(--t-micro)}.home-rail .micro{color:var(--accent-3);margin-right:var(--s2)}.home-rail a{color:var(--muted);text-decoration:none}.home-rail a:hover{color:var(--fg)}.docs-hero{padding-block:var(--s7) 0}.page-head{display:grid;grid-template-columns:minmax(0,.7fr) minmax(0,1fr);gap:var(--s6);align-items:end;padding-bottom:var(--s6)}.page-head .hero-lede{margin-top:0;max-width:58ch}.docs-rail{position:sticky;top:72px;display:grid;gap:1px;font-family:var(--font-mono);font-size:var(--t-micro)}.docs-rail .micro{display:block;margin-bottom:var(--s2);padding-left:var(--s3);border-left:1px solid transparent}.docs-rail a{padding:4px 0 4px var(--s3);color:var(--muted);text-decoration:none;border-left:1px solid var(--line)}.docs-rail a:hover{color:var(--fg)}.docs-rail a[aria-current=true]{color:var(--accent);border-left-color:var(--accent)}.docs-body{display:grid;grid-template-columns:var(--rail) minmax(0,1fr);gap:var(--s5) var(--s6);align-items:start;margin-top:var(--s6)}.docs-content{min-width:0}.docs-content>section{padding-block:var(--s6);border-top:1px solid var(--line)}.docs-content>section:first-child{padding-top:0;border-top:0}.docs-content>section>h2{margin-bottom:var(--s4)}.docs-content h3{color:var(--fg);font-size:var(--t-small);letter-spacing:0;margin-bottom:var(--s2)}.docs-content p,.docs-content li{color:var(--muted);max-width:var(--measure)}.doc-cols{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.8fr);gap:var(--s6);align-items:start}.doc-cols:not(:has(.aside)){grid-template-columns:minmax(0,1fr)}.doc-cols:not(:has(.aside)) .prose{max-width:78ch}.doc-cols .aside>*+*{margin-top:var(--s3)}.doc-cols .aside h3:not(:first-child){margin-top:var(--s5)}.docs-command{display:block;padding:var(--s3);border:1px solid var(--line);border-radius:4px;background:var(--surface);overflow-x:auto;white-space:pre;font-size:var(--t-micro);line-height:1.7;scrollbar-width:thin;-webkit-overflow-scrolling:touch}.callout{padding:var(--s3) var(--s4);border:1px solid var(--line);border-left:2px solid var(--accent);border-radius:4px;background:var(--surface);font-size:var(--t-small);color:var(--muted)}.notfound{padding-block:var(--s9);max-width:46ch}.notfound p{color:var(--muted);margin-top:var(--s4)}.notfound-links{display:flex;flex-wrap:wrap;gap:var(--s5);margin-top:var(--s5);font-family:var(--font-mono);font-size:var(--t-small)}.notfound-links a{color:var(--muted);text-decoration:none}.notfound-links a:hover{color:var(--accent)}.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}@media(min-width:1600px){:root{--shell: 1440px}}@media(max-width:900px){.section-head,.section-body,.docs-body,.doc-cols,.page-head{grid-template-columns:minmax(0,1fr);gap:var(--s4)}.section-head>div,.section-head>.wide,.section-body>.prose,.section-body>.entries,.section-body>.wide,.section-body>.aside,.section-body:not(:has(.aside))>.prose,.section-body:not(:has(.aside))>.entries{grid-column:1;max-width:none}.page-head{align-items:start}.hero-split{grid-template-columns:minmax(0,1fr);padding-block:var(--s8) var(--s7)}.hero-mark{display:none}.rail{position:static;border:1px solid var(--line);border-radius:4px;padding:var(--s2)}.rail .micro{display:none}.section-body{margin-top:var(--s5)}}@media(max-width:480px){:root{--gutter: var(--s4)}.nav{flex-wrap:wrap;row-gap:var(--s2)}.nav-links{gap:var(--s4);width:100%;justify-content:space-between}.home-rail{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;-webkit-overflow-scrolling:touch}.home-rail::-webkit-scrollbar{display:none}.home-rail a{flex:none}.home-rail .micro{flex:none;position:sticky;left:0;background:var(--bg);padding-right:var(--s2)}h1{max-width:100%}.hero{padding-block:112px var(--s7);grid-template-columns:minmax(0,1fr)}.hero-mark{display:none}.install-row{padding:var(--s2)}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation-duration:.001ms!important;transition-duration:.001ms!important}}
