:root{--blue:#2349f5;--blue-soft:#eef1ff;--blue-line:#c7d1fd;--ink:#182021;--ink-soft:#39433f;--muted:#667071;--paper:#fafbf7;--surface:#fff;--surface-2:#f2f4ee;--line:#dfe3dc;--line-soft:#eaeee6;--code-bg:#14191c;--code-ink:#dfe6e4;--code-inline-bg:#eef0ea;--on-blue:#fff;--note:#2349f5;--note-bg:#eef1ff;--warn:#9a5410;--warn-bg:#fbf0e2;--tip:#2f6b43;--tip-bg:#e6f2e6;--display:"Space Grotesk Variable", sans-serif;--body:"Manrope Variable", sans-serif;--mono:ui-monospace, "SF Mono", "Cascadia Mono", "Roboto Mono", Menlo, Consolas, monospace;--header-h:60px;--sidebar-w:262px;--toc-w:218px;color-scheme:light}:root[data-docs-theme=dark]{--blue:#93a8ff;--blue-soft:#1b2340;--blue-line:#33406f;--ink:#e9ede9;--ink-soft:#c5ccc7;--muted:#94a09b;--paper:#0f1416;--surface:#151b1e;--surface-2:#1b2225;--line:#293134;--line-soft:#222a2d;--code-bg:#0a0e10;--code-ink:#dbe3e1;--code-inline-bg:#212a2d;--on-blue:#0f1416;--note:#93a8ff;--note-bg:#1a2138;--warn:#e0a769;--warn-bg:#2d2418;--tip:#8fca9f;--tip-bg:#17271c;color-scheme:dark}@media (prefers-color-scheme:dark){:root:not([data-docs-theme=light]){--blue:#93a8ff;--blue-soft:#1b2340;--blue-line:#33406f;--ink:#e9ede9;--ink-soft:#c5ccc7;--muted:#94a09b;--paper:#0f1416;--surface:#151b1e;--surface-2:#1b2225;--line:#293134;--line-soft:#222a2d;--code-bg:#0a0e10;--code-ink:#dbe3e1;--code-inline-bg:#212a2d;--note:#93a8ff;--note-bg:#1a2138;--warn:#e0a769;--warn-bg:#2d2418;--tip:#8fca9f;--tip-bg:#17271c;color-scheme:dark}}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:calc(var(--header-h) + 18px);-webkit-text-size-adjust:100%}body{font-family:var(--body);color:var(--ink);background:var(--paper);font-synthesis:none;text-rendering:optimizelegibility;-webkit-font-smoothing:antialiased;overflow-wrap:break-word;margin:0;font-size:16px;line-height:1.75}a{color:inherit}button,input{font:inherit;color:inherit}button{cursor:pointer}svg{flex-shrink:0}img{max-width:100%}[hidden]{display:none!important}::selection{color:#182021;background:#dcfca5}:focus-visible{outline:2px solid var(--blue);outline-offset:3px;border-radius:3px}.skip-link{z-index:200;background:var(--ink);color:var(--paper);border-radius:8px;padding:12px 18px;font-weight:700;position:fixed;top:-100px;left:16px}.skip-link:focus{top:10px}.vh{clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.docs-header{z-index:60;height:var(--header-h);border-bottom:1px solid var(--line);background:color-mix(in srgb, var(--paper) 92%, transparent);backdrop-filter:blur(14px);align-items:center;gap:14px;padding:0 20px;display:flex;position:sticky;top:0}.docs-brand{font-family:var(--display);letter-spacing:-.9px;white-space:nowrap;align-items:center;gap:8px;min-width:0;font-size:19px;font-weight:650;text-decoration:none;display:inline-flex}.docs-brand svg{color:var(--blue);width:26px;height:28px}.docs-brand b{font-weight:650}.docs-brand .dot{color:var(--blue)}.docs-brand-tag{font-family:var(--body);letter-spacing:1.1px;color:var(--muted);border:1px solid var(--line);border-radius:20px;margin-left:2px;padding:2px 9px;font-size:11px;font-weight:750}.docs-header-right{align-items:center;gap:8px;min-width:0;margin-left:auto;display:flex}.docs-header-cta{background:var(--blue);height:34px;color:var(--on-blue);white-space:nowrap;border-radius:7px;align-items:center;gap:8px;padding:0 14px;font-size:14px;font-weight:750;text-decoration:none;display:inline-flex}.icon-button{border:1px solid var(--line);background:var(--surface);width:34px;height:34px;color:var(--ink-soft);border-radius:7px;place-items:center;display:inline-grid}.icon-button:hover{border-color:var(--blue-line);color:var(--blue)}.drawer-button,.theme-moon,:root[data-docs-theme=dark] .theme-sun{display:none}:root[data-docs-theme=dark] .theme-moon{display:block}@media (prefers-color-scheme:dark){:root:not([data-docs-theme=light]) .theme-sun{display:none}:root:not([data-docs-theme=light]) .theme-moon{display:block}}.search-open{border:1px solid var(--line);background:var(--surface);min-width:190px;height:34px;color:var(--muted);border-radius:7px;align-items:center;gap:9px;padding:0 8px 0 11px;font-size:14px;display:flex}.search-open:hover{border-color:var(--blue-line)}.search-open kbd{font-family:var(--mono);border:1px solid var(--line);color:var(--muted);background:var(--surface-2);border-bottom-width:2px;border-radius:5px;margin-left:auto;padding:1px 5px;font-size:11px}.docs-shell{grid-template-columns:var(--sidebar-w) minmax(0, 1fr) var(--toc-w);align-items:start;gap:40px;width:min(1440px,100%);margin-inline:auto;padding:0 24px;display:grid}.docs-shell:not(:has(.docs-toc)){grid-template-columns:var(--sidebar-w) minmax(0, 1fr)}.docs-sidebar{top:var(--header-h);max-height:calc(100svh - var(--header-h));overscroll-behavior:contain;border-right:1px solid var(--line-soft);min-width:0;padding:28px 8px 48px 0;position:sticky;overflow-y:auto}.sidebar-group+.sidebar-group{margin-top:26px}.sidebar-group>a{font-family:var(--display);letter-spacing:-.3px;margin-bottom:3px;font-size:15px;font-weight:600;text-decoration:none;display:block}.sidebar-group>span{letter-spacing:.9px;text-transform:uppercase;color:var(--muted);margin-bottom:8px;font-size:11px;font-weight:750;display:block}.sidebar-group ul{border-left:1px solid var(--line);margin:0;padding:0;list-style:none}.sidebar-group li a{color:var(--ink-soft);border-left:2px solid #0000;margin-left:-1px;padding:6px 10px 6px 14px;font-size:14.5px;line-height:1.5;text-decoration:none;display:block}.sidebar-group li a:hover{color:var(--blue);background:var(--surface-2)}.sidebar-group li a[aria-current=page]{color:var(--blue);border-left-color:var(--blue);background:var(--blue-soft);font-weight:700}.docs-main{min-width:0;padding:30px 0 72px}.docs-toc{top:var(--header-h);max-height:calc(100svh - var(--header-h));min-width:0;padding:34px 0 48px;position:sticky;overflow-y:auto}.docs-toc>p{letter-spacing:.9px;text-transform:uppercase;color:var(--muted);margin:0 0 10px;font-size:11px;font-weight:750}.docs-toc ul{border-left:1px solid var(--line);margin:0;padding:0;list-style:none}.docs-toc a{color:var(--muted);border-left:2px solid #0000;margin-left:-1px;padding:5px 0 5px 13px;font-size:13.5px;line-height:1.5;text-decoration:none;display:block}.docs-toc a:hover{color:var(--ink)}.docs-toc a.is-current{color:var(--blue);border-left-color:var(--blue);font-weight:650}.docs-toc .depth-3{padding-left:26px}.breadcrumbs{color:var(--muted);flex-wrap:wrap;align-items:center;gap:7px;margin-bottom:18px;font-size:13px;display:flex}.breadcrumbs a{text-decoration:none}.breadcrumbs a:hover{color:var(--blue)}.breadcrumbs span[aria-current]{color:var(--ink-soft)}.breadcrumbs i{opacity:.55;font-style:normal}.page-head{border-bottom:1px solid var(--line-soft);margin-bottom:30px;padding-bottom:22px}.page-head .kicker{letter-spacing:1.1px;text-transform:uppercase;color:var(--blue);font-size:11px;font-weight:750}.page-head h1{font-family:var(--display);letter-spacing:-1.5px;margin:10px 0 0;font-size:clamp(30px,4.2vw,40px);font-weight:500;line-height:1.14}.page-head>p{color:var(--muted);max-width:62ch;margin:12px 0 0;font-size:18px;line-height:1.7}.prev-next{border-top:1px solid var(--line-soft);grid-template-columns:1fr 1fr;gap:14px;margin-top:56px;padding-top:26px;display:grid}.prev-next a{border:1px solid var(--line);background:var(--surface);border-radius:9px;flex-direction:column;gap:4px;min-width:0;padding:14px 16px;text-decoration:none;display:flex}.prev-next a:hover{border-color:var(--blue-line);background:var(--blue-soft)}.prev-next a[rel=next]{text-align:right;grid-column:2;align-items:flex-end}.prev-next small{letter-spacing:.9px;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:750}.prev-next strong{font-family:var(--display);letter-spacing:-.4px;color:var(--ink);font-size:16px;font-weight:550}.docs-footer{border-top:1px solid var(--line);margin-top:8px;padding:26px 24px 40px}.docs-footer>div{width:min(1440px,100%);color:var(--muted);flex-wrap:wrap;align-items:center;gap:10px 20px;margin-inline:auto;font-size:13.5px;display:flex}.docs-footer nav{flex-wrap:wrap;gap:10px 18px;margin-left:auto;display:flex}.docs-footer a{text-decoration:none}.docs-footer a:hover{color:var(--blue)}.docs-prose{max-width:74ch;color:var(--ink-soft);font-size:16.5px;line-height:1.8}.docs-prose>:first-child{margin-top:0}.docs-prose h2,.docs-prose h3,.docs-prose h4{font-family:var(--display);color:var(--ink);letter-spacing:-.7px;scroll-margin-top:calc(var(--header-h) + 20px);font-weight:550}.docs-prose h2{border-top:1px solid var(--line-soft);margin:48px 0 14px;padding-top:14px;font-size:26px;line-height:1.25}.docs-prose h3{margin:34px 0 10px;font-size:20px;line-height:1.35}.docs-prose h4{font-size:16.5px;font-family:var(--body);letter-spacing:0;margin:26px 0 8px;font-weight:750}.docs-prose p{margin:0 0 18px}.docs-prose a{color:var(--blue);text-underline-offset:3px;text-decoration:underline 1px}.docs-prose a:hover{text-decoration-thickness:2px}.docs-prose strong{color:var(--ink);font-weight:750}.docs-prose ul,.docs-prose ol{margin:0 0 18px;padding-left:22px}.docs-prose li{margin-bottom:7px}.docs-prose li::marker{color:var(--muted)}.docs-prose hr{border:0;border-top:1px solid var(--line);margin:34px 0}.docs-prose :not(pre)>code{font-family:var(--mono);background:var(--code-inline-bg);color:var(--ink);overflow-wrap:anywhere;border-radius:5px;padding:1.5px 5px;font-size:.87em}.docs-prose kbd{font-family:var(--mono);border:1px solid var(--line);background:var(--surface-2);border-bottom-width:2px;border-radius:5px;padding:1px 5px;font-size:.8em}.docs-prose .code-block{margin:0 0 22px;position:relative}.docs-prose pre{border:1px solid var(--line);tab-size:2;border-radius:10px;margin:0;padding:16px 18px;font-size:13.5px;line-height:1.7;overflow-x:auto;background:var(--code-bg)!important}.docs-prose pre code{font-family:var(--mono);color:var(--code-ink)}.copy-button{color:#cfd8d6;opacity:0;background:#ffffff14;border:1px solid #ffffff2e;border-radius:6px;height:28px;padding:0 10px;font-size:12px;font-weight:700;transition:opacity .15s,background .15s;position:absolute;top:8px;right:8px}.code-block:hover .copy-button,.copy-button:focus-visible{opacity:1}.copy-button:hover{color:#fff;background:#ffffff26}.copy-button[data-copied=true]{opacity:1;color:#d2ff88;border-color:#d2ff8859}@media (hover:none){.copy-button{opacity:1}}.docs-prose table{border-collapse:collapse;width:max-content;max-width:100%;margin:0 0 22px;font-size:15px;display:block;overflow-x:auto}.docs-prose th,.docs-prose td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:9px 13px}.docs-prose thead th{background:var(--surface-2);color:var(--ink);white-space:nowrap;font-weight:750}.docs-prose tbody tr:nth-child(2n){background:color-mix(in srgb, var(--surface-2) 45%, transparent)}.docs-prose .callout{border:1px solid var(--line);border-left:3px solid var(--note);background:var(--note-bg);border-radius:9px;margin:0 0 22px;padding:13px 16px 14px}.docs-prose .callout:before{content:"Note";letter-spacing:1px;text-transform:uppercase;color:var(--note);margin-bottom:5px;font-size:11px;font-weight:800;display:block}.docs-prose .callout>:last-child{margin-bottom:0}.docs-prose .callout-warning{border-left-color:var(--warn);background:var(--warn-bg)}.docs-prose .callout-warning:before{content:"Warning";color:var(--warn)}.docs-prose .callout-tip{border-left-color:var(--tip);background:var(--tip-bg)}.docs-prose .callout-tip:before{content:"Tip";color:var(--tip)}.docs-hero{border-bottom:1px solid var(--line-soft);margin-bottom:36px;padding:46px 0 8px}.docs-hero .kicker,.page-head .kicker{letter-spacing:1.1px;text-transform:uppercase;color:var(--blue);margin:0;font-size:11px;font-weight:750}.docs-hero h1{font-family:var(--display);letter-spacing:-2.4px;margin:10px 0 0;font-size:clamp(36px,5.4vw,52px);font-weight:500;line-height:1.08}.docs-hero>p{color:var(--muted);max-width:58ch;margin:16px 0 34px;font-size:19px;line-height:1.75}.audience-grid{grid-template-columns:repeat(auto-fit,minmax(255px,1fr));gap:18px;margin-bottom:44px;display:grid}.audience-card{border:1px solid var(--line);background:var(--surface);border-radius:12px;flex-direction:column;min-width:0;padding:22px 22px 16px;display:flex}.audience-card small{letter-spacing:1px;text-transform:uppercase;color:var(--blue);font-size:11px;font-weight:750}.audience-card h2{font-family:var(--display);letter-spacing:-.8px;margin:9px 0 0;font-size:23px;font-weight:550}.audience-card>p{color:var(--muted);flex:1;margin:10px 0 16px;font-size:15.5px;line-height:1.7}.audience-card ol{border-top:1px solid var(--line-soft);margin:0 0 14px;padding:0;list-style:none}.audience-card li{border-bottom:1px solid var(--line-soft)}.audience-card li a{color:var(--ink-soft);gap:9px;padding:9px 0;font-size:14.5px;text-decoration:none;display:flex}.audience-card li a:hover{color:var(--blue)}.audience-card li a b{color:var(--muted);font-family:var(--mono);padding-top:3px;font-size:11.5px;font-weight:500}.audience-card>a{color:var(--blue);font-size:14px;font-weight:750;text-decoration:none}.audience-card>a:hover{text-underline-offset:4px;text-decoration:underline}.docs-index-note{border:1px dashed var(--line);background:var(--surface-2);color:var(--muted);border-radius:10px;max-width:74ch;margin-bottom:20px;padding:18px 20px;font-size:15px;line-height:1.75}.docs-index-note strong{color:var(--ink)}.search-dialog{border:1px solid var(--line);background:var(--surface);width:min(620px,100vw - 24px);max-width:none;color:var(--ink);margin-top:clamp(24px,9vh,96px);border-radius:13px;margin-inline:auto;padding:0;overflow:hidden;box-shadow:0 24px 70px #0000003d}.search-dialog::backdrop{backdrop-filter:blur(3px);background:#0c1214a8}.search-field{border-bottom:1px solid var(--line);align-items:center;gap:10px;padding:12px 14px;display:flex}.search-field svg{color:var(--muted)}.search-field input{background:0 0;border:0;outline:0;flex:1;min-width:0;font-size:16px}.search-field input::placeholder{color:var(--muted)}.search-field button{border:1px solid var(--line);background:var(--surface-2);color:var(--muted);border-radius:6px;padding:3px 8px;font-size:11px;font-weight:700}.search-results{overscroll-behavior:contain;max-height:min(52vh,420px);margin:0;padding:6px;list-style:none;overflow-y:auto}.search-results li a{border-radius:8px;min-width:0;padding:9px 11px;text-decoration:none;display:block}.search-results li a small{letter-spacing:.8px;text-transform:uppercase;color:var(--muted);font-size:11px;font-weight:750;display:block}.search-results li a strong{font-family:var(--display);letter-spacing:-.3px;margin-top:2px;font-size:15.5px;font-weight:550;display:block}.search-results li a span{color:var(--muted);-webkit-line-clamp:2;-webkit-box-orient:vertical;margin-top:2px;font-size:13.5px;line-height:1.55;display:-webkit-box;overflow:hidden}.search-results li a[aria-selected=true]{background:var(--blue-soft)}.search-results li a[aria-selected=true] strong{color:var(--blue)}.search-empty{text-align:center;color:var(--muted);padding:26px 16px;font-size:14.5px}.search-foot{border-top:1px solid var(--line);background:var(--surface-2);color:var(--muted);flex-wrap:wrap;gap:14px;padding:9px 14px;font-size:12px;display:flex}.search-foot kbd{font-family:var(--mono);border:1px solid var(--line);background:var(--surface);border-radius:4px;padding:0 4px;font-size:11px}@media (width<=1180px){.docs-shell{grid-template-columns:var(--sidebar-w) minmax(0, 1fr);gap:32px}.docs-toc{display:none}}@media (width<=920px){.docs-shell{padding:0 20px;display:block}.docs-main{padding-top:22px}.drawer-button{display:inline-grid}.search-open{justify-content:center;width:34px;min-width:0;padding:0}.search-open span,.search-open kbd{display:none}.docs-sidebar{z-index:90;background:var(--surface);border-right:1px solid var(--line);width:min(302px,84vw);max-height:none;padding:18px 16px 40px;transition:transform .22s;position:fixed;top:0;bottom:0;left:0;transform:translate(-102%);box-shadow:0 0 60px #0000002e}.docs-sidebar[data-open=true]{transform:none}.drawer-scrim{z-index:80;background:#0b1113a1;border:0;padding:0;position:fixed;inset:0}.docs-footer{padding-inline:20px}}@media (width<=620px){.docs-header{gap:8px;padding:0 14px}.docs-brand-tag{display:none}.docs-shell,.docs-footer{padding-inline:16px}.prev-next{grid-template-columns:1fr}.prev-next a[rel=next]{grid-column:1}.docs-prose{font-size:16px}.docs-footer nav{margin-left:0}}@media (width<=400px){.docs-header-cta span{display:none}.docs-header-cta{padding:0 10px}.docs-brand{font-size:17px}.page-head h1{letter-spacing:-1px}}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.docs-sidebar{transition:none}}
