.site-header[data-astro-cid-fzpbxy5g]{border-bottom:1px solid var(--color-border)}nav[data-astro-cid-fzpbxy5g]{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.25rem 1rem;min-height:5.5rem;padding-block:.75rem;font-size:.875rem;display:flex}nav[data-astro-cid-fzpbxy5g] a[data-astro-cid-fzpbxy5g]{min-height:2.75rem;color:var(--color-muted);align-items:center;text-decoration:none;display:inline-flex}.wordmark[data-astro-cid-fzpbxy5g]{color:var(--color-heading);letter-spacing:-.025em;gap:.75rem;font-weight:550}.wordmark-icon[data-astro-cid-fzpbxy5g]{color:var(--color-accent);font-family:var(--font-sans);font-size:1.5rem;font-weight:450}.wordmark-domain[data-astro-cid-fzpbxy5g]{color:var(--color-muted);font-weight:400}.nav-link[data-astro-cid-fzpbxy5g]{border-radius:var(--radius);padding-inline:.75rem}.nav-link[data-astro-cid-fzpbxy5g][aria-current]{background:var(--color-surface);color:var(--color-heading);text-decoration:underline;text-decoration-color:var(--color-accent);text-underline-offset:.45em}nav[data-astro-cid-fzpbxy5g] a[data-astro-cid-fzpbxy5g]:hover{color:var(--color-accent)}@media (width<=30rem){nav[data-astro-cid-fzpbxy5g]{gap:.25rem .5rem;min-height:4.75rem;font-size:.8125rem}.wordmark[data-astro-cid-fzpbxy5g]{gap:.5rem}.nav-link[data-astro-cid-fzpbxy5g]{padding-inline:.5rem}}.site-footer[data-astro-cid-nns7i3if]{border-top:1px solid var(--color-border);color:var(--color-muted);margin-top:auto;padding-block:1.75rem;font-size:.8125rem;line-height:1.6}p[data-astro-cid-nns7i3if]{margin:0}@font-face{font-family:Inter;src:url(/fonts/InterVariable.woff2)format("woff2");font-style:normal;font-weight:100 900;font-display:swap}@font-face{font-family:Inter;src:url(/fonts/InterVariable-Italic.woff2)format("woff2");font-style:italic;font-weight:100 900;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Regular.woff2)format("woff2");font-style:normal;font-weight:400;font-display:swap}@font-face{font-family:JetBrains Mono;src:url(/fonts/JetBrainsMono-Italic.woff2)format("woff2");font-style:italic;font-weight:400;font-display:swap}:root{color-scheme:dark;--color-background:#080808;--color-surface:#141414;--color-heading:#e5e3de;--color-text:#d2d0cb;--color-muted:#a09f9a;--color-accent:#d4a15a;--color-border:#30302e;--font-sans:Inter, ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", ui-monospace, "SFMono-Regular", Consolas, "Liberation Mono", monospace;--width-content:70rem;--width-prose:68ch;--page-gutter:clamp(1.25rem, 4vw, 3rem);--radius:.5rem;--space-1:.5rem;--space-2:1rem;--space-3:1.5rem;--space-4:2rem;--space-5:3rem;--space-6:5rem;font-family:var(--font-sans);background:var(--color-background);color:var(--color-text);font-synthesis:none;-webkit-text-size-adjust:100%;text-size-adjust:100%}*,:before,:after{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;flex-direction:column;min-height:100svh;margin:0;font-size:1.125rem;line-height:1.75;display:flex}::selection{color:#080808;background:#d4a15a}:focus-visible{outline:2px solid var(--color-accent);outline-offset:4px}a{color:var(--color-accent);text-underline-offset:.2em;text-decoration-thickness:1px}a:hover{color:var(--color-heading)}button,input,select,textarea{font:inherit}img,video{max-width:100%;height:auto}.container{width:min(calc(100% - 2 * var(--page-gutter)), var(--width-content));margin-inline:auto}.site-main{padding-block:clamp(3.5rem,8vw,6rem) clamp(5rem,10vw,8rem)}.site-main,.page-content{min-width:0}.page-content{overflow-wrap:anywhere}h1,h2,h3,h4,h5,h6{color:var(--color-heading);text-wrap:pretty;scroll-margin-top:2rem;font-weight:600;line-height:1.25}h1{letter-spacing:-.045em;margin:0 0 1.5rem;font-size:clamp(2.25rem,4.5vw,3.5rem);line-height:1.1}.page-home{padding-top:clamp(4.5rem,10vw,8rem)}.page-home h1{max-width:18ch;font-size:clamp(2.25rem,5.2vw,4rem);line-height:1.08}.page-home .page-content>p:first-of-type,.page-intro{max-width:48ch;color:var(--color-muted);font-size:clamp(1.125rem,2vw,1.25rem);line-height:1.7}.skip-link{z-index:100;border:1px solid var(--color-accent);border-radius:var(--radius);background:var(--color-surface);padding:.75rem 1rem;position:fixed;inset:1rem auto auto 1rem;transform:translateY(calc(-100% - 2rem))}.skip-link:focus{transform:none}.button-link{border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);min-height:2.75rem;color:var(--color-heading);justify-content:center;align-items:center;padding:.625rem 1rem;font-size:.9375rem;font-weight:500;text-decoration:none;display:inline-flex}.button-link:hover{border-color:var(--color-accent);color:var(--color-accent)}.button-link-primary{border-color:var(--color-accent);background:var(--color-accent);color:var(--color-background)}.button-link-primary:hover{border-color:var(--color-heading);background:var(--color-heading);color:var(--color-background)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition:none!important;animation:none!important}}.prose{width:100%;max-width:var(--width-prose);overflow-wrap:anywhere}.prose :where(p,ul,ol,blockquote,dl,figure):not(.expressive-code *){margin-block:0 1.5rem}.prose :where(h2,h3,h4,h5,h6){letter-spacing:-.025em;margin-block:2.75rem 1rem}.prose h2{font-size:clamp(1.625rem,3vw,2rem)}.prose h3{font-size:1.375rem}.prose h4{font-size:1.1875rem}.prose :where(h5,h6){font-size:1.125rem}.prose :where(strong,b):not(.expressive-code *){color:var(--color-heading);font-weight:650}.prose :where(ul,ol){padding-inline-start:1.5em}.prose li{margin-block:.375rem;padding-inline-start:.25em}.prose li::marker{color:var(--color-muted)}.prose li :where(ul,ol){margin-block:.5rem}.prose li>p{margin-block:.75rem}.prose blockquote{border-inline-start:2px solid var(--color-accent);color:var(--color-muted);margin-inline:0;padding:.25rem 0 .25rem 1.5rem}.prose blockquote>:last-child{margin-bottom:0}.prose :not(pre)>code:not(.expressive-code *){border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-heading);font-family:var(--font-mono);-webkit-box-decoration-break:clone;box-decoration-break:clone;border-radius:.25rem;padding:.125em .35em;font-size:.8125em;font-weight:400}.prose hr{border:0;border-top:1px solid var(--color-border);margin-block:3rem}.prose table{border-collapse:collapse;overscroll-behavior-inline:contain;width:max-content;max-width:100%;margin-block:2rem;font-size:1rem;line-height:1.6;display:block;overflow-x:auto}.prose :where(th,td){border:1px solid var(--color-border);text-align:start;vertical-align:top;min-width:9rem;padding:.75rem 1rem}.prose th{background:var(--color-surface);color:var(--color-heading);font-weight:600}.prose img{border-radius:var(--radius);margin-block:2rem;display:block}.prose figcaption{color:var(--color-muted);margin-top:.75rem;font-size:.875rem}.prose dt{color:var(--color-heading);font-weight:600}.prose dd{margin:.25rem 0 1rem 1.5rem}.prose>:first-child{margin-top:0}.prose>:last-child{margin-bottom:0}.expressive-code{--ec-brdRad:var(--radius);--ec-codeFontSize:.875rem;--ec-codeLineHt:1.75;--ec-uiFontFml:var(--font-sans);--ec-uiFontSize:.8125rem;--ec-focusBrd:var(--color-accent);overflow-wrap:normal;min-width:0;max-width:100%;margin-block:2rem}.expressive-code .copy button:focus-visible,.expressive-code pre:focus-visible{outline:2px solid var(--color-accent);outline-offset:3px}.expressive-code .copy button{min-width:2.75rem;min-height:2.75rem}.expressive-code .frame .copy button:after{margin:0;inset:calc(50% - .625rem)}.expressive-code .frame:is(.has-title,.is-terminal)>.header{min-height:3.5rem;padding-inline-end:10rem}.expressive-code .frame:is(.has-title,.is-terminal)>.header .title{white-space:normal;overflow-wrap:anywhere;align-items:center;min-width:0;display:flex}.expressive-code .frame.is-terminal>.header{padding-inline-start:3.75rem}.expressive-code .frame:is(.has-title,.is-terminal)>.copy{z-index:2;inset-block-start:.375rem;inset-inline-end:.375rem}.expressive-code pre:focus-visible{outline-offset:-3px}.prose pre:not(.expressive-code pre){border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-surface);max-width:100%;font-family:var(--font-mono);white-space:pre;overflow-wrap:normal;margin-block:2rem;padding:1.25rem;font-size:.875rem;line-height:1.75;overflow-x:auto}.prose pre:not(.expressive-code pre) code{font:inherit}
