:root{color-scheme:light dark;--bg:light-dark(#f4f4f5,#18181b);--surface:light-dark(#fff,#27272a);--border:light-dark(#e4e4e7,#3f3f46);--text:light-dark(#27272a,#d4d4d8);--heading:light-dark(#09090b,#fafafa);--muted:light-dark(#52525b,#a1a1aa);--header:light-dark(#18181b,#09090b);--header-text:#fafafa;--header-muted:#a1a1aa;--code-bg:light-dark(#18181b,#09090b);--code-text:#e4e4e7;--good:light-dark(#15803d,#4ade80);--good-strong:light-dark(#166534,#86efac);--bad:light-dark(#b91c1c,#f87171);--bad-strong:light-dark(#991b1b,#fca5a5);--on-bad:light-dark(#fff,#09090b);--accent:#a1a1aa;--focus:var(--heading);--sans:var(--font-sans,system-ui), system-ui, sans-serif;--mono:var(--font-mono,ui-monospace), ui-monospace, monospace;--radius:8px;--content-max:1200px}: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%}body{background:var(--bg);min-height:100vh;color:var(--text);font-family:var(--sans);word-break:keep-all;overflow-wrap:break-word;flex-direction:column;margin:0;font-size:1rem;line-height:1.7;display:flex}h1,h2,h3,h4{color:var(--heading);font-weight:700;line-height:1.35}a{color:var(--heading);text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:3px}a:hover{text-decoration-color:currentColor}code,kbd,pre{font-family:var(--mono);font-size:.875em}img,svg{max-width:100%;height:auto}:focus-visible{outline:2px solid var(--focus);outline-offset:2px;border-radius:2px}button{font:inherit}.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}.skip-link{z-index:10;background:var(--surface);color:var(--heading);border:2px solid var(--heading);border-radius:var(--radius);padding:8px 16px;position:absolute;top:-100px;left:16px}.skip-link:focus{top:8px}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px}.stack>*+*{margin-top:24px}.page-title{margin:0;font-size:1.75rem}.page-desc{color:var(--muted);margin:8px 0 0}.section-title{margin:0 0 16px;font-size:1.125rem}.empty{color:var(--muted);margin:0}.prose{max-width:72ch}.prose>:first-child{margin-top:0}.prose h2{border-top:1px solid var(--border);margin:2.25em 0 .75em;padding-top:1em;font-size:1.375rem}.prose h3{margin:1.75em 0 .5em;font-size:1.125rem}.prose p,.prose ul,.prose ol,.prose table,.prose pre,.prose blockquote{margin:0 0 1.1em}.prose ul,.prose ol{padding-left:1.4em}.prose li+li{margin-top:.3em}.prose blockquote{border-left:3px solid var(--accent);color:var(--muted);padding:4px 0 4px 16px}.prose :not(pre)>code{background:var(--bg);border:1px solid var(--border);color:var(--heading);border-radius:4px;padding:.1em .35em}.prose pre{background:var(--code-bg);color:var(--code-text);border-radius:var(--radius);word-break:normal;padding:16px;line-height:1.6;overflow-x:auto}.prose table{border-collapse:collapse;max-width:100%;font-size:.9375rem;display:block;overflow-x:auto}.prose th,.prose td{border:1px solid var(--border);text-align:left;vertical-align:top;padding:8px 12px}.prose th{background:var(--bg);color:var(--heading);white-space:nowrap;font-weight:700}.code-wrap{position:relative}.code-wrap pre{padding-right:72px}.copy-button{min-height:32px;color:var(--code-text);cursor:pointer;background:0 0;border:1px solid #71717a;border-radius:6px;padding:4px 10px;font-size:.8125rem}.copy-button:hover{border-color:var(--code-text)}.copy-button:focus-visible{outline-color:var(--code-text)}.code-wrap>.copy-button{position:absolute;top:10px;right:10px}.prose hr{border:0;border-top:1px solid var(--border);margin:2em 0}.site-footer[data-astro-cid-jo6i4kqk]{--focus:var(--header-text);background:var(--header);color:var(--header-muted);margin-top:auto;font-size:.875rem}.inner[data-astro-cid-jo6i4kqk]{max-width:var(--content-max);margin:0 auto;padding:32px 16px}ul[data-astro-cid-jo6i4kqk]{flex-wrap:wrap;gap:4px 20px;margin:0 0 16px;padding:0;list-style:none;display:flex}a[data-astro-cid-jo6i4kqk]{color:var(--header-text);text-decoration-color:var(--header-muted)}p[data-astro-cid-jo6i4kqk]{margin:4px 0 0}.search[data-astro-cid-ac66eqjo]{gap:4px;display:flex}input[data-astro-cid-ac66eqjo]{width:180px;min-height:36px;color:var(--header-text);border:1px solid var(--header-muted);font:inherit;background:0 0;border-radius:6px;padding:4px 10px;font-size:.875rem}input[data-astro-cid-ac66eqjo]::placeholder{color:var(--header-muted)}button[data-astro-cid-ac66eqjo]{background:var(--header-text);min-height:36px;color:var(--header);cursor:pointer;border:0;border-radius:6px;padding:4px 12px;font-size:.875rem;font-weight:500}.site-header[data-astro-cid-nen7h5rs]{--focus:var(--header-text);background:var(--header);color:var(--header-text)}.inner[data-astro-cid-nen7h5rs]{max-width:var(--content-max);flex-wrap:wrap;align-items:center;gap:8px 32px;margin:0 auto;padding:12px 16px;display:flex}.logo[data-astro-cid-nen7h5rs]{color:var(--header-text);align-items:center;gap:8px;font-size:1.125rem;font-weight:700;text-decoration:none;display:inline-flex}.menu[data-astro-cid-nen7h5rs] ul[data-astro-cid-nen7h5rs]{flex-wrap:wrap;gap:0 20px;margin:0;padding:0;list-style:none;display:flex}.menu[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]{color:var(--header-muted);padding:8px 0;font-weight:500;text-decoration:none;display:inline-block}.menu[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs]:hover,.menu[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current]{color:var(--header-text)}.menu[data-astro-cid-nen7h5rs] a[data-astro-cid-nen7h5rs][aria-current]{box-shadow:inset 0 -2px 0 var(--header-text)}.actions[data-astro-cid-nen7h5rs]{align-items:center;gap:8px;margin-left:auto;display:flex}.theme-toggle[data-astro-cid-nen7h5rs]{width:40px;height:40px;color:var(--header-text);border:1px solid var(--header-muted);cursor:pointer;background:0 0;border-radius:6px;justify-content:center;align-items:center;padding:0;display:none}.theme-toggle[data-astro-cid-nen7h5rs]:hover{border-color:var(--header-text)}.js .theme-toggle[data-astro-cid-nen7h5rs]{display:inline-flex}.icon-sun[data-astro-cid-nen7h5rs]{display:none}:root[data-theme=dark] .icon-sun[data-astro-cid-nen7h5rs]{display:block}:root[data-theme=dark] .icon-moon[data-astro-cid-nen7h5rs]{display:none}@media (prefers-color-scheme:dark){:root:not([data-theme=light]) .icon-sun[data-astro-cid-nen7h5rs]{display:block}:root:not([data-theme=light]) .icon-moon[data-astro-cid-nen7h5rs]{display:none}}@media (width<=899px){.inner[data-astro-cid-nen7h5rs]{gap:4px 16px}.menu[data-astro-cid-nen7h5rs]{order:3;width:100%}.menu[data-astro-cid-nen7h5rs] ul[data-astro-cid-nen7h5rs]{gap:0 16px}}.sidebar[data-astro-cid-wv7whodv]{position:sticky;top:16px}.panel[data-astro-cid-wv7whodv]{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:16px 12px}h2[data-astro-cid-wv7whodv]{border-bottom:1px solid var(--border);color:var(--muted);letter-spacing:.04em;margin:0 0 8px;padding:4px 8px 8px;font-size:.75rem;font-weight:700}ul[data-astro-cid-wv7whodv]{margin:0;padding:0;list-style:none}ul[data-astro-cid-wv7whodv]+h2[data-astro-cid-wv7whodv]{margin-top:24px}a[data-astro-cid-wv7whodv]{color:var(--text);border-radius:6px;justify-content:space-between;gap:8px;padding:6px 8px;font-size:.9375rem;text-decoration:none;display:flex}a[data-astro-cid-wv7whodv]:hover{background:var(--bg);color:var(--heading)}a[data-astro-cid-wv7whodv][aria-current]{color:#fff;background:light-dark(#18181b,#3f3f46);font-weight:700}.count[data-astro-cid-wv7whodv]{color:var(--muted);font-family:var(--mono);font-size:.8125rem;font-weight:400}a[data-astro-cid-wv7whodv][aria-current] .count[data-astro-cid-wv7whodv]{color:#d4d4d8}.toggle[data-astro-cid-wv7whodv]{display:none}@media (width<=899px){.sidebar[data-astro-cid-wv7whodv]{position:static}.js .toggle[data-astro-cid-wv7whodv]{background:var(--surface);width:100%;min-height:44px;color:var(--heading);border:1px solid var(--border);border-radius:var(--radius);cursor:pointer;justify-content:space-between;align-items:center;padding:8px 16px;font-weight:500;display:flex}.js .toggle[data-astro-cid-wv7whodv][aria-expanded=true] .chevron[data-astro-cid-wv7whodv]{transform:rotate(180deg)}.js .panel[data-astro-cid-wv7whodv]{margin-top:8px;display:none}.js .panel[data-astro-cid-wv7whodv].is-open{display:block}}.page[data-astro-cid-z4jru4n3]{width:100%;max-width:var(--content-max);grid-template-columns:220px minmax(0,1fr);align-items:start;gap:24px;margin:0 auto;padding:24px 16px 48px;display:grid}.no-sidebar[data-astro-cid-z4jru4n3]{grid-template-columns:minmax(0,1fr);max-width:880px}main[data-astro-cid-z4jru4n3]:focus{outline:none}@media (width<=899px){.page[data-astro-cid-z4jru4n3]{grid-template-columns:minmax(0,1fr);gap:16px;padding-top:16px}}
