@font-face{font-family:GeistMono;src:url(../media/GeistMono_Variable.p.0b02cdm7g7y6h.woff2)format("woff2");font-display:swap;font-weight:100 900}.geistmono_157ca88a-module__9LIFPq__className{font-family:GeistMono,ui-monospace,SFMono-Regular,Roboto Mono,Menlo,Monaco,Liberation Mono,DejaVu Sans Mono,Courier New,monospace}.geistmono_157ca88a-module__9LIFPq__variable{--font-geist-mono:"GeistMono", ui-monospace, SFMono-Regular, Roboto Mono, Menlo, Monaco, Liberation Mono, DejaVu Sans Mono, Courier New, monospace}
@font-face{font-family:GeistSans;src:url(../media/Geist_Variable-s.p.2-i4fw5gbtlb7.woff2)format("woff2");font-display:swap;font-weight:100 900}@font-face{font-family:GeistSans Fallback;src:local(Arial);ascent-override:94.56%;descent-override:27.76%;line-gap-override:0.0%;size-adjust:106.28%}.geistsans_d5a4f12f-module__TnFvTa__className{font-family:GeistSans,GeistSans Fallback}.geistsans_d5a4f12f-module__TnFvTa__variable{--font-geist-sans:"GeistSans", "GeistSans Fallback"}
.ask-overlay,.ask-dialog{--ask-bg:#fff;--ask-raised:#f5f7fa;--ask-border:#e2e6eb;--ask-border-strong:#cdd3db;--ask-fg:#0d0f12;--ask-muted:#556070;--ask-subtle:#7a8594;--ask-accent:#0e7490;--ask-accent-soft:#0e74901a;--ask-accent-line:#0e749059;--ask-accent-fg:#fff;--ask-danger:#c2185b;--ask-scrim:#0d0f1273;--ask-shadow:0 24px 64px -12px #0d0f1247, 0 2px 6px #0d0f120f;--ask-radius:14px;--ask-radius-sm:8px;--ask-font:inherit;--ask-mono:ui-monospace, "Geist Mono", "SFMono-Regular", Menlo, Consolas, monospace;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){.ask-overlay:not([data-ask-theme=light]),.ask-dialog:not([data-ask-theme=light]){--ask-bg:#0d0f12;--ask-raised:#181c22;--ask-border:#262b33;--ask-border-strong:#353c47;--ask-fg:#f5f7fa;--ask-muted:#9aa6b4;--ask-subtle:#6f7b89;--ask-accent:#22d3ee;--ask-accent-soft:#22d3ee1a;--ask-accent-line:#22d3ee59;--ask-accent-fg:#0d0f12;--ask-danger:#f0468a;--ask-scrim:#0506088c;--ask-shadow:0 24px 80px -12px #000000b3, 0 0 0 1px #ffffff05;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}.ask-overlay[data-ask-theme=dark],.ask-dialog[data-ask-theme=dark]{--ask-bg:#0d0f12;--ask-raised:#181c22;--ask-border:#262b33;--ask-border-strong:#353c47;--ask-fg:#f5f7fa;--ask-muted:#9aa6b4;--ask-subtle:#6f7b89;--ask-accent:#22d3ee;--ask-accent-soft:#22d3ee1a;--ask-accent-line:#22d3ee59;--ask-accent-fg:#0d0f12;--ask-danger:#f0468a;--ask-scrim:#0506088c;--ask-shadow:0 24px 80px -12px #000000b3, 0 0 0 1px #ffffff05;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}.ask-sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.ask-overlay{z-index:1000;background:var(--ask-scrim);-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);position:fixed;inset:0}.ask-dialog{z-index:1001;width:min(680px,100vw - 32px);max-height:min(640px,80vh);font-family:var(--ask-font);color:var(--ask-fg);background:var(--ask-bg);border:1px solid var(--ask-border-strong);border-radius:var(--ask-radius);box-shadow:var(--ask-shadow);outline:none;flex-direction:column;font-size:15px;line-height:1.5;display:flex;position:fixed;top:12vh;left:50%;overflow:hidden;transform:translate(-50%)}.ask-dialog *,.ask-dialog :before,.ask-dialog :after{box-sizing:border-box}.ask-command{flex-direction:column;flex:1;min-height:0;display:flex}.ask-input-row{border-bottom:1px solid var(--ask-border);flex:none;align-items:center;gap:12px;height:56px;padding:0 16px;display:flex}.ask-icon{color:var(--ask-accent);flex:none}.ask-input{min-width:0;height:100%;font:inherit;color:var(--ask-fg);background:0 0;border:0;outline:none;flex:1;padding:0;font-size:16px}.ask-input::placeholder{color:var(--ask-subtle)}.ask-kbd{height:20px;font-family:var(--ask-mono);color:var(--ask-muted);background:var(--ask-raised);border:1px solid var(--ask-border);border-radius:5px;align-items:center;padding:0 6px;font-size:11px;display:inline-flex}.ask-stop,.ask-retry{height:28px;font:inherit;color:var(--ask-fg);cursor:pointer;background:var(--ask-raised);border:1px solid var(--ask-border-strong);border-radius:6px;flex:none;padding:0 10px;font-size:12px}.ask-stop:hover,.ask-retry:hover{border-color:var(--ask-accent-line)}.ask-list{overscroll-behavior:contain;max-height:360px;padding:8px;overflow-y:auto}.ask-list:empty{display:none}.ask-group [cmdk-group-heading]{font-family:var(--ask-mono);color:var(--ask-subtle);text-transform:uppercase;letter-spacing:.08em;padding:10px 12px 6px;font-size:11px}.ask-item{min-height:42px;color:var(--ask-muted);cursor:pointer;border-radius:var(--ask-radius-sm);align-items:center;gap:10px;padding:8px 12px;display:flex}.ask-item[data-selected=true]{color:var(--ask-fg);background:var(--ask-raised);box-shadow:inset 2px 0 0 var(--ask-accent)}.ask-item-label{font-family:var(--ask-mono);color:var(--ask-accent);background:var(--ask-accent-soft);border:1px solid var(--ask-accent-line);border-radius:5px;flex:none;padding:1px 7px;font-size:11px}.ask-item-text{text-overflow:ellipsis;white-space:nowrap;flex:1;min-width:0;overflow:hidden}.ask-item-primary .ask-item-text{color:var(--ask-fg)}.ask-panel{overscroll-behavior:contain;flex:1;min-height:0;padding:18px 20px 20px;overflow-y:auto}.ask-answer{min-height:24px}.ask-answer[data-refused]{color:var(--ask-muted)}.ask-thinking{color:var(--ask-muted);align-items:center;gap:10px;margin:0;display:flex}.ask-spinner{border:2px solid var(--ask-border-strong);border-top-color:var(--ask-accent);border-radius:50%;width:14px;height:14px}.ask-markdown{overflow-wrap:anywhere;line-height:1.65}.ask-markdown>:first-child{margin-top:0}.ask-markdown>:last-child{margin-bottom:0}.ask-answer>.ask-markdown{display:contents}.ask-answer[data-status=streaming] .ask-markdown>p:last-child{display:inline}.ask-markdown p,.ask-markdown ul,.ask-markdown ol{margin:0 0 .8em}.ask-markdown ul,.ask-markdown ol{padding-left:1.25em}.ask-markdown li+li{margin-top:.25em}.ask-markdown li::marker{color:var(--ask-subtle)}.ask-markdown code{font-family:var(--ask-mono);background:var(--ask-raised);border:1px solid var(--ask-border);border-radius:4px;padding:.1em .35em;font-size:.88em}.ask-pre{background:var(--ask-raised);border:1px solid var(--ask-border);border-radius:var(--ask-radius-sm);margin:0 0 .8em;padding:12px 14px;font-size:13px;line-height:1.55;overflow-x:auto}.ask-pre code{font-size:inherit;background:0 0;border:0;padding:0}.ask-markdown a:not(.ask-citation){color:var(--ask-accent);text-underline-offset:2px}.ask-citation{min-width:1.45em;height:1.45em;font-family:var(--ask-mono);color:var(--ask-accent);vertical-align:.15em;background:var(--ask-accent-soft);border:1px solid var(--ask-accent-line);border-radius:5px;justify-content:center;align-items:center;margin:0 .12em;padding:0 .3em;font-size:.72em;font-weight:600;line-height:1;text-decoration:none;display:inline-flex}.ask-citation:hover{color:var(--ask-accent-fg);background:var(--ask-accent)}.ask-caret{vertical-align:-.15em;background:var(--ask-accent);border-radius:1px;width:.5em;height:1.05em;margin-left:2px;display:inline-block}.ask-truncated{color:var(--ask-muted);margin:12px 0 0;font-size:13px}.ask-error{color:var(--ask-danger);border-radius:var(--ask-radius-sm);border:1px solid;justify-content:space-between;align-items:center;gap:12px;margin-top:12px;padding:10px 12px;font-size:14px;display:flex}.ask-sources{border-top:1px solid var(--ask-border);margin-top:18px;padding-top:14px}.ask-sources-heading{font-family:var(--ask-mono);color:var(--ask-subtle);text-transform:uppercase;letter-spacing:.08em;margin:0 0 10px;font-size:11px;font-weight:500}.ask-sources ol{gap:6px;margin:0;padding:0;list-style:none;display:grid}.ask-source{color:inherit;background:var(--ask-bg);border:1px solid var(--ask-border);border-radius:var(--ask-radius-sm);grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:8px 12px 8px 8px;text-decoration:none;display:grid}.ask-source:hover{background:var(--ask-raised);border-color:var(--ask-accent-line)}.ask-source[data-cited=false]{opacity:.55}.ask-source[data-cited=false]:hover,.ask-source[data-cited=false]:focus-visible{opacity:1}.ask-source-id{width:24px;height:24px;font-family:var(--ask-mono);color:var(--ask-accent);background:var(--ask-accent-soft);border-radius:6px;place-items:center;font-size:11px;display:grid}.ask-source-text{min-width:0;display:grid}.ask-source-title,.ask-source-heading,.ask-source-url{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ask-source-title{font-size:14px}.ask-source-heading{color:var(--ask-muted);font-size:12px}.ask-source-url{max-width:220px;font-family:var(--ask-mono);color:var(--ask-subtle);font-size:11px}.ask-footer{color:var(--ask-subtle);border-top:1px solid var(--ask-border);flex:none;justify-content:space-between;align-items:center;gap:16px;padding:10px 16px;font-size:12px;display:flex}.ask-footer-keys{flex:none;align-items:center;gap:6px;display:inline-flex}.ask-dialog a:focus-visible,.ask-dialog button:focus-visible{outline:2px solid var(--ask-accent);outline-offset:2px}@media (max-width:640px){.ask-dialog{width:calc(100vw - 16px);max-height:calc(100dvh - 16px);top:8px}.ask-source-url,.ask-footer-keys{display:none}}@media (prefers-reduced-motion:no-preference){.ask-overlay[data-state=open]{animation:.16s ease-out ask-fade}.ask-dialog[data-state=open]{animation:.18s cubic-bezier(.2,.9,.3,1) ask-enter}.ask-caret{animation:1s steps(2,start) infinite ask-blink}.ask-spinner{animation:.8s linear infinite ask-spin}}@keyframes ask-fade{0%{opacity:0}}@keyframes ask-enter{0%{opacity:0;transform:translate(-50%)translateY(-6px)scale(.985)}}@keyframes ask-blink{to{visibility:hidden}}@keyframes ask-spin{to{transform:rotate(360deg)}}
:root{--ink:#0d0f12;--ink-raised:#14181d;--raised:#181c22;--border:#262b33;--border-strong:#353c47;--fg:#f5f7fa;--fg-soft:#dfe6ee;--muted:#9aa6b4;--subtle:#6f7b89;--cyan:#22d3ee;--cyan-bright:#67e8f9;--magenta:#f0468a;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html{scroll-padding-top:84px}body{font-family:var(--font-geist-sans), system-ui, sans-serif;color:var(--fg-soft);background:radial-gradient(1200px 600px at 85% -10%, #22d3ee12, transparent 60%), radial-gradient(800px 400px at 70% -5%, #f0468a0a, transparent 60%), var(--ink);-webkit-font-smoothing:antialiased;background-attachment:fixed;margin:0;font-size:16px;line-height:1.65}.ask-dialog{--ask-font:var(--font-geist-sans), system-ui, sans-serif;--ask-mono:var(--font-geist-mono), ui-monospace, monospace}a{color:var(--cyan)}code,kbd,pre{font-family:var(--font-geist-mono), ui-monospace, monospace}.skip-link{z-index:100;color:var(--ink);background:var(--cyan);border-radius:6px;padding:8px 12px;position:absolute;top:12px;left:16px;transform:translateY(-200%)}.skip-link:focus{transform:none}.site-header{z-index:10;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);border-bottom:1px solid var(--border);background:#0d0f12d1;justify-content:space-between;align-items:center;gap:16px;height:64px;padding:0 24px;display:flex;position:sticky;top:0}.brand{letter-spacing:-.01em;color:var(--fg);align-items:center;gap:10px;font-weight:600;text-decoration:none;display:inline-flex}.brand svg{color:var(--cyan)}.brand-tag{font-family:var(--font-geist-mono), monospace;color:var(--muted);border:1px solid var(--border-strong);border-radius:999px;padding:1px 7px;font-size:11px;font-weight:400}.header-actions{align-items:center;gap:18px;display:flex}.header-link{color:var(--muted);font-size:14px;text-decoration:none}.header-link:hover{color:var(--fg)}.ask-trigger{min-width:240px;height:38px;font:inherit;color:var(--muted);cursor:pointer;background:var(--raised);border:1px solid var(--border-strong);border-radius:10px;align-items:center;gap:10px;padding:0 8px 0 12px;font-size:14px;display:inline-flex}.ask-trigger svg{color:var(--cyan)}.ask-trigger span{text-align:left;flex:1}.ask-trigger:hover{color:var(--fg);border-color:#22d3ee73}.ask-trigger:focus-visible,a:focus-visible{outline:2px solid var(--cyan);outline-offset:2px}.ask-trigger kbd,.lead kbd{color:var(--muted);background:var(--ink);border:1px solid var(--border-strong);border-radius:5px;padding:1px 6px;font-size:12px}.shell{grid-template-columns:240px minmax(0,1fr);max-width:1280px;margin:0 auto;display:grid}.sidebar{border-right:1px solid var(--border);align-self:start;height:calc(100vh - 64px);padding:32px 16px 32px 24px;position:sticky;top:64px;overflow-y:auto}.sidebar-heading{font-family:var(--font-geist-mono), monospace;color:var(--subtle);text-transform:uppercase;letter-spacing:.08em;margin:0 0 10px;font-size:11px}.sidebar ul,.toc ul{margin:0;padding:0;list-style:none}.sidebar a{color:var(--muted);border-radius:6px;margin-left:-10px;padding:6px 10px;font-size:14px;text-decoration:none;display:block}.sidebar a:hover{color:var(--fg);background:var(--ink-raised)}.sidebar a[aria-current=page]{color:var(--fg);background:var(--raised);box-shadow:inset 2px 0 0 var(--cyan)}.content{min-width:0;padding:48px 48px 96px}.doc-layout{grid-template-columns:minmax(0,720px) 200px;gap:48px;display:grid}.toc{align-self:start;font-size:13px;position:sticky;top:112px}.toc a{color:var(--muted);padding:4px 0;text-decoration:none;display:block}.toc a:hover{color:var(--fg)}h1,h2,h3{letter-spacing:-.02em;color:var(--fg);font-weight:600}h1{margin:0 0 12px;font-size:40px;line-height:1.15}.lead{color:var(--muted);margin:0 0 32px;font-size:18px}.prose h2{margin:44px 0 12px;font-size:24px}.prose h3{margin:28px 0 8px;font-size:18px}.prose h2,.prose h3{position:relative}.prose .anchor{color:var(--subtle);opacity:0;font-weight:400;text-decoration:none;position:absolute;left:-1em}.prose h2:hover .anchor,.prose h3:hover .anchor{opacity:1}.prose h2:target,.prose h3:target{color:var(--cyan-bright)}.prose p,.prose ul,.prose ol{margin:0 0 16px}.prose li+li{margin-top:6px}.prose code{color:var(--fg);background:var(--raised);border:1px solid var(--border);border-radius:5px;padding:.1em .35em;font-size:.88em}.prose pre{background:var(--ink-raised);border:1px solid var(--border);border-radius:10px;margin:0 0 20px;padding:16px 18px;font-size:13.5px;line-height:1.6;overflow-x:auto}.prose pre code{background:0 0;border:0;padding:0}.home{max-width:820px}.eyebrow{font-family:var(--font-geist-mono), monospace;color:var(--cyan);text-transform:uppercase;letter-spacing:.1em;margin:0 0 12px;font-size:12px}.home h1{font-size:48px}.mode-note{color:var(--muted);background:var(--ink-raised);border:1px solid var(--border);border-radius:8px;margin:0 0 32px;padding:8px 12px;font-size:14px;display:inline-block}.cards{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:12px;margin:0;padding:0;list-style:none;display:grid}.card{background:var(--ink-raised);border:1px solid var(--border);border-radius:12px;gap:4px;height:100%;padding:16px;text-decoration:none;display:grid}.card:hover{border-color:#22d3ee73}.card-title{color:var(--fg);font-weight:600}.card-description{color:var(--muted);font-size:14px}@media (max-width:1100px){.doc-layout{grid-template-columns:minmax(0,1fr)}.toc{display:none}}@media (max-width:800px){.shell{grid-template-columns:minmax(0,1fr)}.sidebar{display:none}.content{padding:32px 16px 64px}.ask-trigger{min-width:0}.ask-trigger span,.header-link{display:none}h1,.home h1{font-size:32px}}
