:root{--bg:#f5f0e8;--bg-alt:#fffdf8;--text:#1f1b33;--body:#3d3a52;--muted:#56525f;--label:#928d9c;--accent:#4233ce;--accent-soft:#eceaff;--spark:#fbbf24;--border:#e2dccd;--border-card:#e4dfd0;--code-bg:#fffdf8;--radius:9px;--font-heading:"Space Grotesk", system-ui, sans-serif;--font-body:"Hanken Grotesk", system-ui, -apple-system, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, SFMono-Regular, Menlo, monospace;color-scheme:light dark}@media (prefers-color-scheme:dark){:root{--bg:#161035;--bg-alt:#1a1440;--text:#fff;--body:#e6e3f7;--muted:#cbc8ea;--label:#9d98c9;--accent:#a59cff;--accent-soft:#2a2161;--border:#2a2161;--border-card:#2f2670;--code-bg:#1a1440}.brand-mark{color:#fff}}*{box-sizing:border-box}body{font-family:var(--font-body);color:var(--body);background:var(--bg);-webkit-font-smoothing:antialiased;margin:0;line-height:1.65}h1,h2,h3,h4{font-family:var(--font-heading);color:var(--text);text-wrap:pretty}a{color:var(--accent);text-underline-offset:3px}.muted{color:var(--muted)}.site-header{z-index:10;background:var(--bg);border-bottom:1px solid var(--border);position:sticky;top:0}.bar{align-items:center;gap:16px;max-width:1280px;min-height:64px;margin:0 auto;padding:0 16px;display:flex}.brand{font-family:var(--font-heading);letter-spacing:-.02em;color:var(--text);white-space:nowrap;align-items:center;gap:11px;font-size:19px;font-weight:700;text-decoration:none;display:inline-flex}.brand-mark{--accent:var(--spark);color:#4233ce;flex:none;width:28px;height:28px}.brand-label{border:1px solid var(--border);font-family:var(--font-mono);letter-spacing:.06em;color:var(--muted);border-radius:999px;padding:2px 8px;font-size:12px;font-weight:500}.search{border:1px solid var(--border);border-radius:var(--radius);background:var(--bg-alt);max-width:360px;color:var(--text);font:inherit;flex:1;margin-left:auto;padding:8px 12px;font-size:.95rem}.search:focus{outline:2px solid var(--accent);outline-offset:1px;border-color:#0000}.nav-toggle{border:1px solid var(--border);border-radius:var(--radius);color:var(--text);font:inherit;cursor:pointer;background:0 0;padding:6px 12px;display:none}.locales{font-family:var(--font-mono);gap:10px;font-size:.8rem;display:inline-flex}.locales a{color:var(--label);text-decoration:none}.locales a[aria-current=true]{color:var(--text);font-weight:500}.shell{grid-template-columns:240px minmax(0,1fr) 200px;gap:48px;max-width:1280px;margin:0 auto;padding:40px 16px 72px;display:grid}.sidebar,.toc{align-self:start;max-height:calc(100vh - 120px);font-size:.93rem;position:sticky;top:104px;overflow-y:auto}.sidebar ul,.toc ul{margin:0 0 24px;padding:0;list-style:none}.sidebar li a,.toc li a{color:var(--muted);border-radius:7px;padding:5px 10px;text-decoration:none;display:block}.sidebar li a:hover,.toc li a:hover{color:var(--text)}.sidebar li a[aria-current=page]{color:var(--accent);background:var(--accent-soft);font-weight:600}.toc li a{border-left:1px solid var(--border);border-radius:0}.nav-title{font-family:var(--font-mono);letter-spacing:.12em;text-transform:uppercase;color:var(--label);margin:0 0 8px;padding:0 10px;font-size:12px;font-weight:500}.shell.wide{grid-template-columns:240px minmax(0,1fr);max-width:1440px}.content{min-width:0}.narrow{max-width:720px;margin:96px auto;padding:0 16px}.eyebrow{font-family:var(--font-mono);letter-spacing:.18em;text-transform:uppercase;color:var(--label);margin:0 0 12px;font-size:12px;font-weight:500}.prose{max-width:760px;font-size:1.02rem}.prose h1{letter-spacing:-.035em;margin:0 0 .5em;font-size:clamp(2rem,4.5vw,2.75rem);font-weight:700;line-height:1.06}.prose h2{border-top:1px solid var(--border);letter-spacing:-.03em;margin-top:2.4em;padding-top:1em;font-size:1.6rem;font-weight:700}.prose h3{letter-spacing:-.02em;font-size:1.2rem;font-weight:600}.prose h2,.prose h3{scroll-margin-top:88px;line-height:1.15}.prose .anchor{color:inherit;text-decoration:none}.prose .anchor:hover:after{content:" #";color:var(--label)}.prose code{font-family:var(--font-mono);background:var(--accent-soft);color:var(--text);border-radius:5px;padding:.12em .35em;font-size:.86em}.prose pre{background:var(--code-bg);border:1px solid var(--border-card);border-radius:var(--radius);padding:16px 18px;line-height:1.55;overflow-x:auto}.prose pre code{color:var(--text);background:0 0;padding:0;font-size:.84rem}.prose table{border-collapse:collapse;margin:1.4em 0;font-size:.93rem;display:block;overflow-x:auto}.prose th,.prose td{border-bottom:1px solid var(--border);text-align:left;vertical-align:top;padding:9px 12px}.prose th{font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--label);font-size:.78rem;font-weight:500}.prose blockquote{border-left:3px solid var(--accent);background:var(--bg-alt);border-radius:0 var(--radius) var(--radius) 0;color:var(--body);margin:1.4em 0;padding:12px 18px}.prose blockquote p{margin:.3em 0}.prose hr{border:0;border-top:1px solid var(--border);margin:2.4em 0}.doc-footer{border-top:1px solid var(--border);margin-top:64px;padding-top:24px}.edit{font-size:.9rem}.pager{justify-content:space-between;gap:16px;margin-top:20px;display:flex}.pager a{border:1px solid var(--border-card);border-radius:var(--radius);background:var(--bg-alt);color:var(--text);font-family:var(--font-heading);flex-direction:column;gap:2px;padding:14px 18px;font-weight:600;text-decoration:none;display:flex}.pager a:hover{border-color:var(--accent)}.pager a.next{text-align:right;margin-left:auto}.pager small{font-family:var(--font-mono);letter-spacing:.06em;color:var(--label);font-size:12px;font-weight:500}.index h1{letter-spacing:-.04em;margin:0 0 40px;font-size:clamp(2.2rem,5vw,3rem);font-weight:700;line-height:1.02}.index h2{border-top:1px solid var(--border);letter-spacing:-.02em;margin:0 0 16px;padding-top:24px;font-size:1.35rem;font-weight:600}.cards{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:14px;margin-bottom:40px;display:grid}.card{border:1px solid var(--border-card);background:var(--bg-alt);color:var(--text);border-radius:14px;flex-direction:column;gap:6px;padding:18px 20px;text-decoration:none;transition:border-color .15s;display:flex}.card:hover{border-color:var(--accent)}.card strong{font-family:var(--font-heading);letter-spacing:-.015em;font-size:1.05rem;font-weight:600}.card span{color:var(--muted);font-size:.92rem;line-height:1.5}.site-footer{border-top:1px solid var(--border);text-align:center;color:var(--label);font-family:var(--font-mono);letter-spacing:.04em;padding:28px 16px;font-size:12px}@media (width<=1100px){.shell,.shell.wide{grid-template-columns:220px minmax(0,1fr)}.toc{display:none}}@media (width<=760px){.shell,.shell.wide{grid-template-columns:minmax(0,1fr);gap:24px;padding-top:24px}.sidebar{border-bottom:1px solid var(--border);max-height:none;padding-bottom:8px;display:none;position:static}.nav-open .sidebar{display:block}.nav-toggle{margin-left:auto;display:inline-block}.bar{flex-wrap:wrap;padding:10px 16px}.search{flex-basis:100%;order:3;max-width:none}}
