@font-face{font-family:InterVariable;font-style:normal;font-display:optional;font-weight:100 900;src:url(/fonts/inter-latin-opsz-normal.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:Inter Fallback;src:local("Arial"),local("Helvetica Neue"),local("Liberation Sans");size-adjust:107%;ascent-override:90%;descent-override:22.4%;line-gap-override:0%}:root{--shell: 1312px;--gutter: clamp(20px, 14.05vw - 34.8px, 208px);--nav-h: 61px;--gap-sm: clamp(64px, 10.4vw, 137px);--gap-md: clamp(80px, 13.8vw, 181px);--gap-lg: clamp(88px, 16.5vw, 217px);--bg: #ffffff;--ink: #0c0a08;--ink-60: rgba(12, 10, 8, .6);--ink-40: rgba(12, 10, 8, .62);--muted: #737373;--card: #f4f4f4;--card-line: rgba(33, 33, 33, .1);--hair: rgba(33, 33, 33, .05);--line: #e2e2e2;--btn: #1a1919;--btn-ink: #ffffff;--slab: #1f1f1d;--end-top: #06021c;--end-indigo: #1e0a8c;--end-violet: #2a10a8;--end-glow: rgba(233, 210, 255, .68);--t-display: clamp(2.125rem, 1.043rem + 3.606vw, 4rem);--t-h2: clamp(1.875rem, 1.226rem + 2.163vw, 3rem);--t-h2-mid: clamp(1.6875rem, 1.219rem + 1.563vw, 2.5rem);--t-h2-sm: clamp(1.375rem, 1.159rem + .721vw, 1.75rem);--t-h3: clamp(1.25rem, 1.106rem + .481vw, 1.5rem);--t-body: 1rem;--t-small: .8125rem;--t-micro: .795rem;--t-deck: 1.0625rem;--t-ui: .875rem;--mono: ui-monospace, "SF Mono", SFMono-Regular, Menlo, Consolas, monospace;--lh-display: 1;--lh-h2: 1.0417;--lh-h2-mid: 1.05;--lh-h2-sm: 1.1429;--lh-h3: 1.1667;--lh-body: 1.5;--r-6: 6px;--r-8: 8px;--r-12: 12px;--r-16: 16px;--r-24: 24px;--ease: cubic-bezier(.22, .61, .36, 1)}*,*:before,*:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}body{margin:0;background:var(--bg);color:var(--ink);font-family:InterVariable,Inter Fallback,system-ui,sans-serif;font-size:var(--t-body);line-height:var(--lh-body);-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility;font-feature-settings:"cv11","ss01"}h1,h2,h3,h4,p,figure,blockquote{margin:0}ul,ol{margin:0;padding:0;list-style:none}img,svg{display:block;max-width:100%}a{color:inherit;text-decoration:none}button{font:inherit;color:inherit}:where(a,button,[tabindex]):focus-visible{outline:2px solid var(--ink);outline-offset:3px;border-radius:4px}.shell{width:min(var(--shell),100% - var(--gutter) * 2);margin-inline:auto}.u-visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}.two-tone{color:var(--ink);text-wrap:pretty}.two-tone>span{color:var(--ink-60)}.h-display{font-size:var(--t-display);line-height:var(--lh-display);font-weight:500;letter-spacing:-.01px}.h-2{font-size:var(--t-h2);line-height:var(--lh-h2);font-weight:500;letter-spacing:-.01px}.h-2-mid{font-size:var(--t-h2-mid);line-height:var(--lh-h2-mid);font-weight:500;letter-spacing:-.005px}.h-2-sm{font-size:var(--t-h2-sm);line-height:var(--lh-h2-sm);font-weight:500}.h-3{font-size:var(--t-h3);line-height:var(--lh-h3);font-weight:500}.lede{font-size:var(--t-body);line-height:var(--lh-body);font-weight:500;color:var(--muted);text-wrap:pretty}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;border-radius:var(--r-6);font-size:var(--t-body);line-height:1.5;font-weight:400;cursor:pointer;transition:background-color .18s var(--ease),border-color .18s var(--ease),transform .18s var(--ease)}.btn--dark{background:var(--btn);color:var(--btn-ink)}.btn--dark:hover{background:#000}.btn--ghost{background:#fff;color:var(--ink);border-color:var(--line)}.btn--ghost:hover{border-color:#cfcfcf;background:#fafafa}.btn--lg{padding:12.5px 20px;border-radius:var(--r-8)}.btn--md{padding:8.5px 16px}.btn--sm{padding:12px 16px;font-size:var(--t-ui);line-height:1}.btn:active{transform:translateY(1px)}[data-rise]{opacity:0;transform:translate3d(0,18px,0);transition:opacity .7s var(--ease),transform .7s var(--ease);transition-delay:var(--delay, 0ms)}[data-rise].is-in{opacity:1;transform:none}html[data-motion=reduced] [data-rise]{opacity:1!important;transform:none!important;transition:none!important}html:not([data-motion]) [data-rise]{opacity:1;transform:none}.docs-prose{--code-bg: #f7f7f7;--code-ink: #1f1f1d;margin-top:28px;font-size:1rem;line-height:1.65;color:#3a3a38;text-wrap:pretty}.docs-prose>:first-child{margin-top:0}.docs-prose>:last-child{margin-bottom:0}.docs-prose :is(h2,h3,h4,h5,h6){scroll-margin-top:calc(var(--nav-h) + 24px);color:var(--ink);font-weight:500;letter-spacing:-.01em;text-wrap:balance}.docs-prose h2{margin:2.25rem 0 1rem;padding-bottom:.5rem;border-bottom:1px solid var(--line);font-size:1.375rem;line-height:1.35}.docs-prose h3{margin:1.75rem 0 .65rem;font-size:1.125rem;line-height:1.4}.docs-prose h4{margin:1.5rem 0 .5rem;font-size:1rem;line-height:1.45;font-weight:600}.docs-prose :is(h5,h6){margin:1.25rem 0 .5rem;font-size:.9375rem;font-weight:600}.docs-prose p{margin:1rem 0}.docs-prose strong{color:var(--ink);font-weight:600}.docs-prose em{font-style:italic}.docs-prose a{color:var(--ink);font-weight:500;text-decoration:underline;text-decoration-thickness:1px;text-decoration-color:#0c0a0847;text-underline-offset:3px;transition:text-decoration-color .15s var(--ease)}.docs-prose a:hover{text-decoration-color:var(--ink)}.docs-prose :is(ul,ol){margin:1rem 0;padding-left:1.35rem}.docs-prose ul{list-style:disc}.docs-prose ol{list-style:decimal}.docs-prose li{margin:.3rem 0}.docs-prose li::marker{color:var(--ink-40)}.docs-prose li>:is(ul,ol){margin:.3rem 0}.docs-prose li>p{margin:.5rem 0}.docs-prose hr{height:0;margin:2.5rem 0;border:0;border-top:1px solid var(--line)}.docs-prose blockquote{margin:1.25rem 0;padding:.25rem 0 .25rem 1rem;border-left:2px solid var(--line);color:var(--muted)}.docs-prose blockquote>:first-child{margin-top:0}.docs-prose blockquote>:last-child{margin-bottom:0}.docs-prose :is(code,kbd,samp){font-family:var(--mono);font-size:.875em}.docs-prose :not(pre)>code{padding:.12em .36em;background:var(--code-bg);border:1px solid var(--card-line);border-radius:4px;color:var(--code-ink);overflow-wrap:anywhere}.docs-prose a>code{color:inherit}.docs-prose pre.astro-code{margin:1.25rem 0;padding:14px 16px;background:var(--code-bg)!important;border:1px solid var(--card-line);border-radius:var(--r-8);overflow-x:auto;font-size:.8125rem;line-height:1.6;tab-size:2}.docs-prose pre.astro-code code{display:block;min-width:max-content}.docs-prose pre.mermaid{margin:1.25rem 0;padding:14px 16px;background:var(--code-bg);border:1px solid var(--card-line);border-radius:var(--r-8);overflow-x:auto;font-family:var(--mono);font-size:.8125rem;line-height:1.6;color:var(--code-ink)}.docs-prose pre.mermaid[data-processed]{background:none;text-align:center;font-family:inherit}.docs-prose pre.mermaid svg{max-width:100%;height:auto}.docs-prose table{display:block;width:max-content;max-width:100%;margin:1.25rem 0;overflow-x:auto;border-collapse:collapse;font-size:var(--t-ui);line-height:1.5}.docs-prose :is(th,td){padding:8px 14px;border:1px solid var(--line);text-align:left;vertical-align:top}.docs-prose th{background:var(--code-bg);color:var(--ink);font-weight:600;white-space:nowrap}.docs-prose tbody tr:nth-child(2n){background:#21212105}.docs-prose :is(img,video){margin:1.25rem 0;border:1px solid var(--card-line);border-radius:var(--r-8)}.callout{--callout-tone: var(--ink-40);--callout-tint: rgba(33, 33, 33, .035);margin:1.5rem 0;padding:14px 16px;background:var(--callout-tint);border:1px solid var(--card-line);border-left:3px solid var(--callout-tone);border-radius:var(--r-8)}.callout--note{--callout-tone: #2b5fd9;--callout-tint: rgba(43, 95, 217, .05)}.callout--tip{--callout-tone: #1a7f4b;--callout-tint: rgba(26, 127, 75, .05)}.callout--caution{--callout-tone: #9a5b00;--callout-tint: rgba(154, 91, 0, .055)}.callout--danger{--callout-tone: #b3261e;--callout-tint: rgba(179, 38, 30, .05)}.callout .callout__title{margin:0 0 .5rem;color:var(--ink);font-weight:600;line-height:1.45;text-wrap:pretty}.callout .callout__kind{color:var(--callout-tone);font-style:normal;font-weight:600;letter-spacing:.02em;text-transform:uppercase;font-size:.75em}.callout .callout__kind:after{content:" · ";color:var(--ink-40);letter-spacing:0}.callout>:first-child{margin-top:0}.callout>:last-child{margin-bottom:0}.callout p{margin:.65rem 0}.callout :not(pre)>code{background:#ffffffb3}
