:root{--bg:#fff;--surface:#fff;--hover:#fbfbfd;--text:#111;--text-body:#2c2c2c;--text-2:#6f6f6f;--text-3:#8a8a8a;--hairline:#00000012;--border:#0000001a;--pill:#fafafa;--accent:#000;--accent-on:#fff;--accent-hover:#333;--guide:#f24e1e;--font:"Plus Jakarta Sans", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--mono:var(--font);--code:ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas, monospace;--r-pill:999px;--r-chip:6px;--r-card:18px;--r-panel:22px;--r-hero:26px;--sh-sm:0 1px 2px #00000012, 0 2px 8px #0000000d;--sh-md:0 1px 3px #00000012, 0 8px 24px #0000001a;--sh-lg:0 2px 6px #00000012, 0 16px 40px #00000021;--max-grid:1080px;--pad-x:22px;--hdr:calc(2 * clamp(16px, 2.6vw, 40px) + 38px + env(safe-area-inset-top));--ease-out-quart:cubic-bezier(.25, 1, .5, 1)}*{box-sizing:border-box;margin:0;padding:0}body{background:var(--bg);color:var(--text);font-family:var(--font);font-optical-sizing:auto;-webkit-font-smoothing:antialiased;line-height:1.6}html{-webkit-text-size-adjust:100%;-moz-text-size-adjust:100%;text-size-adjust:100%}@media (prefers-reduced-motion:reduce){*{transition:none!important;animation:none!important}}code,kbd,pre{font-family:var(--mono)}kbd{border-radius:var(--r-chip);border:1px solid var(--border);background:var(--surface);text-align:center;min-width:20px;color:var(--text-body);border-bottom-width:2px;padding:1px 6px;font-size:12px;line-height:1.5;display:inline-block}.keys{gap:5px;display:inline-flex}:focus-visible{outline:2px solid var(--accent);outline-offset:3px;border-radius:2px}.skip-link{z-index:2147483001;background:var(--accent);color:var(--accent-on);border-radius:6px;padding:8px 14px;font-size:13px;font-weight:600;text-decoration:none;position:absolute;top:12px;left:-9999px}.skip-link:focus-visible{left:12px}.site-top{z-index:2;--header-gutter:max(clamp(16px, 2.6vw, 40px), calc((100% - 1240px) / 2 + 40px));padding:calc(clamp(16px, 2.6vw, 40px) + env(safe-area-inset-top)) max(var(--header-gutter), env(safe-area-inset-right)) clamp(16px, 2.6vw, 40px) max(var(--header-gutter), env(safe-area-inset-left));grid-template-columns:1fr auto 1fr;align-items:center;gap:12px;display:grid;position:fixed;top:0;left:0;right:0}.site-top:before{content:"";z-index:-1;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffc;position:absolute;inset:0;-webkit-mask:linear-gradient(#000 70%,#0000);mask:linear-gradient(#000 70%,#0000)}.stage .site-top:before{display:none}.site-nav{grid-area:1/2;justify-self:center}.site-mark{transition:opacity var(--t-hover);grid-area:1/1;justify-self:start;line-height:0;display:block}.site-top:has(.site-mark) .site-nav{grid-column:1;justify-self:start}.site-mark:hover{opacity:.5}.site-install{grid-area:1/3;justify-self:end}.site-nav{border-radius:var(--r-pill);border:1px solid var(--border);background:#fff;align-items:center;gap:4px;padding:4px;display:inline-flex}.site-nav-divider{background:var(--border);flex-shrink:0;width:1px;height:16px}.site-nav a{letter-spacing:-.03em;color:var(--text);border-radius:var(--r-pill);transition:background var(--t-hover);padding:4px 8px;font-size:13px;font-weight:500;line-height:20px;text-decoration:none}.site-nav a:hover{background:#0000000d}.site-nav a[aria-current]{background:#00000008}.site-nav a:not([aria-current]){opacity:.5}.site-install{cursor:pointer;font-family:var(--font);letter-spacing:-.03em;color:var(--text);opacity:.7;border-radius:var(--r-pill);transition:background-color var(--t-hover);background:#fff;border:1px solid #0000;place-items:center;padding:4px 8px;font-size:13px;font-weight:500;line-height:20px;display:inline-grid}.site-install:hover{background-color:#f2f2f1}.site-install>*{white-space:nowrap;transition:opacity var(--t-hover), scale var(--t-hover);grid-area:1/1}.site-install[data-copied=true]>svg,.site-install:not([data-copied=true])>span{opacity:0;scale:.9}@media (width<=560px){.site-top{grid-template-columns:1fr auto 1fr}.site-mark{justify-self:start}.site-install{display:none}}.logo-flight{z-index:2147483000;pointer-events:none;will-change:transform;position:fixed;top:0;left:0}.logo-flight>div{will-change:transform}.logo-flight img{transform-origin:0 0;will-change:transform;display:block}.docs{max-width:1000px;padding:calc(var(--hdr) + clamp(8px, 2vw, 24px)) var(--pad-x) 90px;grid-template-columns:190px minmax(0,1fr);align-items:start;gap:clamp(40px,7vw,100px);margin:0 auto;display:grid}.docs-sidebar{top:calc(var(--hdr) - 8px);flex-direction:column;gap:22px;display:flex;position:sticky}.docs-mobile-nav{display:none}.docs-group{flex-direction:column;align-items:flex-start;gap:2px;display:flex}.docs-group-label{letter-spacing:.05em;text-transform:uppercase;color:var(--text-3);margin-bottom:5px;font-size:11px;font-weight:550}.docs-group a{letter-spacing:-.03em;color:var(--text-2);border-radius:var(--r-pill);transition:color var(--t-hover), background var(--t-hover);border:none;margin-left:0;padding:0;font-size:13px;font-weight:500;line-height:20px;text-decoration:none}.docs-group a.current{color:var(--text);background:0 0}.docs-meta{gap:14px;margin-top:4px;display:flex}.docs-meta a{letter-spacing:-.03em;color:var(--text-3);margin:-6px -4px;padding:6px 4px;font-size:13px;font-weight:500;text-decoration:none}.docs-meta a:hover{color:var(--text);text-underline-offset:3px;text-decoration:underline}.docs-article{animation:docs-enter var(--d-article) var(--ease-out-quart) var(--t-article) backwards}.docs-group,.docs-meta{animation:docs-fade var(--d-sidebar) ease var(--t-sidebar) backwards}@keyframes docs-enter{0%{opacity:0;transform:translateX(var(--x-article))}}@keyframes docs-fade{0%{opacity:0}}@keyframes docs-rise{0%{opacity:0;transform:translateY(12px)}}.docs-article{overflow-wrap:anywhere;min-width:0;max-width:560px}.docs-article h1{letter-spacing:-.02em;font-size:24px;font-weight:650;line-height:1.2}.doc-lede{color:var(--text-2);margin-top:10px;font-size:15px;line-height:1.65}.docs-article p{color:var(--text-body);margin-top:14px;font-size:14px;line-height:1.75}.docs-article ul,.docs-article ol{color:var(--text-body);flex-direction:column;gap:7px;margin-top:14px;padding-left:20px;font-size:14px;line-height:1.7;display:flex}.doc-spaced{gap:13px!important}.docs-article a{color:var(--text);text-decoration:underline;-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border);text-underline-offset:3px;font-weight:550}.docs-article a:hover{-webkit-text-decoration-color:var(--text);text-decoration-color:var(--text)}.doc-h2{letter-spacing:-.01em;scroll-margin-top:var(--hdr);align-items:center;gap:16px;margin-top:46px;font-size:14px;font-weight:650;display:flex}.doc-h2:after{content:"";background:var(--hairline);flex:1;height:1px}.docs-article code{background:#0000000d;border-radius:5px;padding:1.5px 5px;font-size:.86em}.docs-article pre code{font-size:inherit;background:0 0;padding:0}.code-block{background:var(--pill);border:1px solid var(--border);border-radius:10px;margin-top:14px;position:relative}.code-block pre{font:12px/1.75 var(--code);color:var(--text-body);overflow-wrap:normal;overscroll-behavior-x:contain;-webkit-font-smoothing:antialiased;font-variant-ligatures:none;padding:15px 48px 15px 17px;overflow-x:auto}.code-block code{font:inherit}.code-block .token.comment,.code-block .token.prolog,.code-block .token.doctype{color:var(--text-3);font-style:italic}.code-block .token.punctuation,.code-block .token.operator{color:var(--text-3)}.code-block .token.string,.code-block .token.attr-value{color:var(--text-2)}.code-block .token.keyword,.code-block .token.tag,.code-block .token.class-name,.code-block .token.function{color:var(--text);font-weight:600}.code-block .token.attr-name,.code-block .token.property,.code-block .token.number{color:var(--text-body)}.code-block .token.dm-source{color:var(--text-3)}.code-block .token.dm-tag{color:var(--text-body)}.code-block .token.dm-label{color:var(--text-3);text-transform:uppercase;letter-spacing:.04em;font-size:.92em}.code-block .token.dm-prop{color:var(--text);font-weight:600}.code-block .token.dm-arrow{color:var(--guide);padding-inline:2px}.code-block .token.dm-value{color:var(--text);font-weight:600}.code-block .token.dm-selector{color:var(--text-2)}.code-block .token.dm-comment{color:var(--text-2);font-style:italic}.copy-btn{border:1px solid var(--border);color:var(--text-2);font-family:var(--font);letter-spacing:-.03em;cursor:pointer;transition:background var(--t-hover), color var(--t-hover);background:0 0;border-radius:52px;padding:3px 9px;font-size:11px;font-weight:500;position:absolute;top:7px;right:7px}.copy-btn:hover{color:var(--text);background:#0000000a}.doc-note{background:var(--pill);border:1px solid var(--border);color:var(--text-body);border-radius:10px;margin-top:16px;padding:12px 16px;font-size:13.5px;line-height:1.7}.doc-table-wrap{overscroll-behavior-x:contain;margin-top:16px;overflow-x:auto}.doc-table{border-collapse:collapse;width:100%;font-size:13.5px}.doc-table th{text-align:left;color:var(--text);border-bottom:1px solid var(--border);padding:8px 18px 8px 0;font-size:13px;font-weight:650}.doc-table td{color:var(--text-body);vertical-align:top;padding:9px 18px 9px 0;line-height:1.6}.doc-table tr+tr td{border-top:1px solid var(--hairline)}.doc-param{border-top:1px solid var(--hairline);margin-top:16px;padding-top:12px}.doc-param-head{flex-wrap:wrap;align-items:baseline;gap:10px;display:flex}.doc-param-head code{color:var(--text);font-weight:650}.doc-param-type{font-family:var(--mono);color:var(--text-3);font-size:11.5px}.doc-param-req{letter-spacing:.04em;text-transform:uppercase;color:var(--text-2);font-size:10.5px;font-weight:650}.doc-param p{margin-top:4px;font-size:13.5px}@media (width<=820px),(pointer:coarse) and (hover:none),(height<=500px) and (width<=1000px){:root{--hdr:calc(2 * clamp(16px, 2.6vw, 40px) + 44px + env(safe-area-inset-top));--pad-x:max(20px, env(safe-area-inset-left), env(safe-area-inset-right))}.site-nav{gap:2px;padding:4px}.site-nav a{justify-content:center;align-items:center;min-height:30px;padding:4px 10px;display:inline-flex;position:relative}.site-nav a:after{content:"";position:absolute;inset:-7px 0}.site-nav-divider{height:14px}.site-mark{place-items:center;min-width:44px;min-height:44px;margin-right:0;display:grid}.site-install{min-height:44px}.site-top:before{background:#fffffff5;-webkit-mask:none;mask:none}.docs{padding-top:calc(var(--hdr) + 64px + 28px);padding-bottom:calc(56px + env(safe-area-inset-bottom));grid-template-columns:minmax(0,1fr)}.docs-sidebar{display:none}.docs-mobile-nav{top:auto;bottom:calc(16px + env(safe-area-inset-bottom));z-index:5;border-radius:var(--r-pill);background:#fff;width:min(280px,100% - 40px);padding:0;display:flex;position:fixed;left:50%;transform:translate(-50%);box-shadow:0 2px 8px #0000000d,0 8px 24px #00000014}.docs-picker-trigger svg{color:var(--text-2);flex:0 0 16px;display:block}.docs-picker-trigger{cursor:pointer;border:1px solid var(--border);border-radius:var(--r-pill);min-width:0;min-height:44px;color:var(--text);font:500 16px/1.4 var(--font);letter-spacing:-.03em;background:#fff;flex:1;justify-content:space-between;align-items:center;gap:12px;padding:8px 20px;display:flex}.docs-article{width:100%;margin-inline:auto}.docs-article h1{font-size:28px}.docs-article p,.docs-article ul,.docs-article ol{font-size:16px}.doc-h2{scroll-margin-top:calc(var(--hdr) + 80px);font-size:17px}.doc-h2:after{min-width:24px}.doc-note,.doc-param p{font-size:14px}.doc-param-head{gap:4px 10px}.doc-table:has(th:nth-child(3)){min-width:480px}.doc-table th,.doc-table td{padding-right:14px}.keys{flex-wrap:wrap}.code-block pre{padding:58px 16px 16px}.copy-btn{min-width:60px;min-height:44px;font-size:13px}.doc-page+.doc-page{margin-top:56px;padding-top:40px}.docs-article{animation-name:docs-rise}}.sr-only{clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.docs-picker-options{overscroll-behavior:contain;border:1px solid var(--border);background:#fff;border-radius:20px;max-height:min(56svh,420px);padding:8px;position:absolute;bottom:calc(100% + 8px);left:0;right:0;overflow-y:auto;box-shadow:0 4px 24px #0000001a}.docs-picker-group+.docs-picker-group{margin-top:12px}.docs-picker-label{color:var(--text-3);text-transform:uppercase;letter-spacing:.04em;padding:8px 12px 4px;font-size:11px;font-weight:500}.docs-picker-options a{min-height:44px;color:var(--text-2);letter-spacing:-.03em;border-radius:12px;justify-content:space-between;align-items:center;padding:8px 12px;font-size:14px;font-weight:500;line-height:20px;text-decoration:none;display:flex}.docs-picker-options a[aria-current]{color:var(--text);background:#00000008}.docs-picker-options a:hover{color:var(--text);background:#fafafa}.docs-picker-options a:focus-visible{outline:2px solid var(--text);outline-offset:-2px}button,input,textarea,select,option{font-family:var(--font)}.stage{background:#fff;min-height:100svh;position:relative}.stage-center{place-items:center;display:grid;position:absolute;inset:0}.gyro-zone{width:var(--gyro-zone);height:var(--gyro-zone);place-items:center;display:grid}.gyro{flex-direction:column;align-items:center;width:100%;height:100%;display:flex;position:relative}.gyro>.site-install{z-index:1;width:max-content;max-width:100%;height:fit-content;min-height:auto;margin:0;display:inline-flex;position:absolute;top:calc(100% - 114px);left:50%;transform:translate(-50%)}.gyro:before{content:"";opacity:0;transition:opacity var(--t-close) ease;filter:blur(11px);background:radial-gradient(closest-side,#00000018,#0000 74%);border-radius:50%;width:50%;height:40px;position:absolute;top:71%;left:50%;translate:-50%}.stage[data-holding=true] .gyro:before{opacity:1;transition-delay:var(--t-ripple)}.gyro canvas{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none;flex-shrink:0;width:100%;height:auto;display:block}.gyro canvas.is-dragging{cursor:grabbing}.gyro canvas:focus{outline:none}.gyro canvas:focus-visible:not(.pointer-focus){outline:2px solid var(--text);outline-offset:4px;border-radius:12px}.stage-mark{pointer-events:none;-webkit-user-select:none;user-select:none;z-index:0;width:auto;height:119svh;transition:opacity var(--t-hero-fade) ease;position:fixed;top:-17.5svh}.stage-mark.left{left:-23.1svh}.stage-mark.right{right:-25.4svh;transform:scaleX(-1)}@media (width<=720px){.stage-mark{display:none}}@property --strain{syntax:"<number>";inherits:true;initial-value:1}.stage[data-strain=true]{--strain:var(--hold-sheet,.9);transition:--strain var(--t-strain) var(--strain-ease);animation:strain-tremble 90ms linear var(--t-tremble) infinite}.stage[data-strain=off]{--strain:1;transition:--strain var(--t-snap) var(--ease-out-quart)}.stage[data-strain] :is(.hero,.draft-floor,.stage-center,.stage-mark){transition:scale var(--t-snap) var(--ease-out-quart);scale:1}.stage[data-strain=true] :is(.hero,.draft-floor,.stage-center,.stage-mark){transition:scale var(--t-strain) var(--strain-ease)}.stage[data-strain=true] .hero{scale:var(--hold-grip,.84)}.stage[data-strain=true] .draft-floor{scale:var(--hold-sheet,.9)}.stage-center{transform-origin:50% var(--hero-center,50svh)}.stage[data-strain=true] .stage-center{scale:var(--hold-core,.76)}.stage-mark{transform-origin:50% 100%}.stage[data-strain=true] .stage-mark{scale:var(--hold-pillar,.94)}@keyframes strain-tremble{0%,to{translate:0}25%{translate:-.9px .5px}50%{translate:.7px -.8px}75%{translate:.5px .9px}}@property --wipe{syntax:"<length>";inherits:true;initial-value:0}.stage{--wipe:0px;transition:--wipe var(--t-close) cubic-bezier(.5, 0, .75, .4)}.stage[data-holding=true]{--wipe:72vmax;transition:--wipe var(--t-ripple) cubic-bezier(.25, .35, .45, 1)}.stage-inside{z-index:2;text-align:center;clip-path:circle(var(--wipe) at 50% var(--hero-center,50svh));pointer-events:none;background:#fff;align-content:end;justify-items:center;padding:0 24px max(9svh,64px);display:grid;position:fixed;inset:0}.stage[data-ring=true]{filter:url(#ripple)}@media (prefers-reduced-motion:reduce){.stage[data-ring=true]{filter:none}}.stage-inside p{max-width:68ch;font:400 clamp(13px, 1.15vw, 15px)/1.6 var(--font);color:#9a9f99;animation:caption-in .56s var(--ease-out-quart) both;grid-area:1/1;margin:0}.stage-inside p[data-gone]{animation:caption-out .46s var(--ease-out-quart) forwards}.stage-inside p span{transition:color .14s}.stage-inside p span[data-now]{color:#1a1c1a}@keyframes caption-in{0%{opacity:0;filter:blur(8px);translate:0 10px}to{opacity:1;filter:blur();translate:0}}@keyframes caption-out{0%{opacity:1;filter:blur();translate:0}to{opacity:0;filter:blur(8px);translate:0 -10px}}.stage[data-holding=true],.stage[data-holding=true] .gyro canvas{cursor:none}.stage[data-holding=true] .hero-heading{pointer-events:none}.stage[data-holding=true] .stage-sound{cursor:pointer}.stage-sound{top:46px;right:max(24px, env(safe-area-inset-right));z-index:4;box-sizing:border-box;color:#929b91;cursor:pointer;width:24px;height:24px;opacity:var(--hint-opacity,1);transition:color var(--t-hover) ease;background:#fff;border:0;border-radius:5px;place-items:center;padding:0;display:inline-grid;position:fixed}.stage-sound:hover,.stage-sound[aria-pressed=true]{color:#1e201f}.stage[data-reading=true] .stage-sound{opacity:0;visibility:hidden}.stage .stage-sound{animation:landing-hint var(--enter-settle) ease var(--enter-hint) backwards}.continuous-page .stage[data-started=true] .stage-sound{animation:none}.stage-hint{z-index:1;opacity:var(--hint-opacity,1);align-items:center;gap:10px;display:flex;position:fixed;bottom:40px;left:50%;transform:translate(-50%)}.stage-hint>.stage-shortcut,.stage-hint>.site-install{box-sizing:border-box;color:#777;height:24px;font:500 11px/16px var(--font);letter-spacing:0;white-space:nowrap;opacity:1;cursor:pointer;transition:background-color var(--t-hover);background:#fafafa;border:1px solid #e5e5e5;border-radius:5px;place-items:center;margin:0;padding:0 7px;display:inline-grid;box-shadow:0 1px #e5e5e5}.stage-hint>.stage-shortcut:hover,.stage-hint>.site-install:hover{background:#f2f2f1}.stage-mobile{text-align:center;letter-spacing:-.02em;width:min(320px,100%);color:var(--text-2);text-wrap:balance;margin:16px auto 0;font-size:14px;font-weight:500;line-height:1.5;display:none}.stage-mobile a{border:1px solid var(--border);border-radius:var(--r-pill);min-height:44px;color:var(--text);background:#fff;align-items:center;gap:10px;margin-top:12px;padding:10px 16px;text-decoration:none;display:inline-flex}@media (hover:hover){.stage-mobile a:hover,.docs-picker-trigger:hover{background:#fafafa;box-shadow:0 1px 2px #0000000a,0 4px 12px #00000014}}.stage-mobile a:focus-visible,.docs-picker-trigger:focus-visible{outline:2px solid var(--text);outline-offset:3px}@media (width<=820px),(pointer:coarse) and (hover:none),(height<=500px) and (width<=1000px){#design-mode-root,.stage-hint,.stage-mark{display:none!important}.stage{padding:calc(var(--hdr) + 8px) max(20px, env(safe-area-inset-right)) max(24px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));flex-direction:column;display:flex}.stage-center{flex:1;min-width:0;position:relative;inset:auto}.gyro-zone{width:min(var(--gyro-zone), 100%, max(270px, calc(100svh - var(--hdr) - 160px)));aspect-ratio:1;height:auto;margin-bottom:28px}.stage-mobile{display:block}}@media (height<=500px) and (width>=560px) and (width<=820px),(height<=500px) and (width>=560px) and (pointer:coarse) and (hover:none){.stage{flex-direction:row;align-items:center;gap:24px}.stage-mobile{flex:1;margin:0}.gyro-zone{width:min(100%, calc(100svh - var(--hdr) - 32px))}}.stage .gyro{animation:landing-logo var(--enter-logo-fade) ease-out var(--enter-logo) backwards}.stage[data-started=true] .gyro{animation:none}@keyframes landing-logo{0%{opacity:0;visibility:hidden}to{opacity:1;visibility:visible}}.stage-mark.left{animation:landing-left var(--enter-sides) var(--ease-out-quart) backwards}.stage-mark.right{animation:landing-right var(--enter-sides) var(--ease-out-quart) backwards}.stage>.site-top .site-nav{animation:landing-up var(--enter-settle) var(--ease-out-quart) var(--enter-controls) backwards}.stage .gyro>.site-install{animation:landing-down var(--enter-settle) var(--ease-out-quart) var(--enter-controls) backwards}@keyframes landing-left{0%{opacity:0;translate:-100%}to{opacity:1;translate:0}}@keyframes landing-right{0%{opacity:0;translate:100%}to{opacity:1;translate:0}}@keyframes landing-up{0%{translate:0 var(--enter-offset);opacity:0}to{opacity:1;translate:0}}@keyframes landing-down{0%{translate:0 calc(-1 * var(--enter-offset));opacity:0}to{opacity:1;translate:0}}@keyframes landing-hint{0%{opacity:0}}.continuous-page .stage{--scroll-morph:0;--scroll-y:0px;--scroll-scale:1;--hint-opacity:1;--header-opacity:0}.continuous-page .stage-center{pointer-events:none;z-index:3;position:fixed}.continuous-page .gyro-zone{transform:translate(var(--scroll-x,0px), calc(var(--hero-center,58svh) - 50% + var(--scroll-y))) scale(var(--scroll-scale));pointer-events:auto}.continuous-page .stage[data-docked=true] .stage-center{visibility:hidden}.continuous-page .stage .site-nav{transform:translateX(var(--scroll-nav,0px))}.continuous-page .stage[data-started=true] .site-nav{animation:none}.continuous-page .stage .site-mark{opacity:var(--header-opacity);translate:var(--sidebar-logo-offset,0px) 0}.continuous-page .stage>.site-top{z-index:4}.continuous-page .stage>.site-top>.site-install{opacity:var(--header-opacity);translate:var(--install-offset,0px) 0}.continuous-page .stage:not([data-docked=true]) :is(.site-mark,.site-top>.site-install){pointer-events:none;visibility:hidden}.continuous-page .stage[data-started=true] .stage-mark{animation:none}.continuous-page .stage[data-started=true] .stage-mark.left{translate:var(--pillar-left) 0}.continuous-page .stage[data-started=true] .stage-mark.right{translate:var(--pillar-right) 0}.continuous-page .stage .site-top:before{display:none}.continuous-page .stage[data-scrolled=true]:before{content:"";height:var(--header-height,var(--hdr));z-index:2;pointer-events:none;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);background:#fffc;position:fixed;inset:0 0 auto;-webkit-mask:linear-gradient(#000 70%,#0000);mask:linear-gradient(#000 70%,#0000)}.continuous-docs{background:#fff;position:relative}.continuous-docs .docs-article,.continuous-docs .docs-group,.continuous-docs .docs-meta{animation:none}@media (width<=820px),(pointer:coarse) and (hover:none),(height<=500px) and (width<=1000px){.continuous-page .stage{padding:0;display:block}.continuous-page .stage-center{z-index:3;position:fixed;inset:0}.continuous-page .gyro-zone{width:min(540px,100vw - 40px,max(172px,100svh - 300px));height:auto;margin:0}.continuous-page .gyro canvas{touch-action:pan-y pinch-zoom}.continuous-page .stage-mobile{bottom:max(24px, env(safe-area-inset-bottom));width:auto;max-width:320px;margin-inline:auto;position:absolute;left:20px;right:20px}.continuous-page .site-top{grid-template-columns:minmax(0,1fr) auto minmax(0,1fr)}.continuous-page .site-mark{justify-self:start}.continuous-page .stage>.site-top>.site-install{min-height:44px;display:inline-grid}.continuous-docs .docs{padding-top:24px;padding-bottom:calc(96px + env(safe-area-inset-bottom))}.continuous-docs{padding-top:var(--header-height,var(--hdr))}.continuous-page .stage[data-scrolled=true]:before{-webkit-backdrop-filter:none;backdrop-filter:none;background:#fff;-webkit-mask:none;mask:none}}@media (height<=500px) and (width<=1000px){.continuous-page .stage-mobile p{display:none}.continuous-page .stage-mobile{bottom:max(12px, env(safe-area-inset-bottom))}.continuous-page .stage-mobile a{margin-top:0}}.content-deck{position:relative;overflow:clip}.content-panel{width:100%}.stage{background:#fff}.hero{top:var(--hero-center,50svh);translate:-50% var(--hero-offset,-50%);z-index:3;width:min(480px,100vw - 48px);opacity:var(--hint-opacity,1);pointer-events:none;position:absolute;left:50%}.hero-heading{text-align:center;pointer-events:auto;position:absolute;bottom:calc(100% + 12px);left:0;right:0}.manifesto{--hole-gap:26px;font:400 13px/1.65 var(--font);letter-spacing:0;color:#1e201f;text-align:center;position:relative}.manifesto p{margin:0 0 .825em}.manifesto p:last-child{margin-bottom:0}.manifesto>span{white-space:pre;pointer-events:auto;position:absolute;top:0;left:0}.agent-mark{color:#484b48;align-items:center;display:inline-flex}.draft-board{box-shadow:none;opacity:var(--hint-opacity,1);pointer-events:none;background-image:none;background-position:50%;background-size:100px 100px,100px 100px,20px 20px,20px 20px;border:0;border-radius:0;position:absolute;inset:0;overflow:hidden}.draft-ruler{font:10px var(--font);color:#a9aea8;--rule-pitch:calc(100px * var(--strain,1));--rule-step:calc(20px * var(--strain,1));position:absolute}.draft-ruler.horizontal{background:repeating-linear-gradient(90deg, #aeb8ab88 0 1px, transparent 1px var(--rule-pitch)) left top / 100% 11px no-repeat, repeating-linear-gradient(90deg, #aeb8ab66 0 1px, transparent 1px var(--rule-step)) left top / 100% 7px no-repeat;height:30px;inset:0 0 auto}.draft-ruler.vertical{background:repeating-linear-gradient(#aeb8ab88 0 1px, transparent 1px var(--rule-pitch)) left top / 11px 100% no-repeat, repeating-linear-gradient(#aeb8ab66 0 1px, transparent 1px var(--rule-step)) left top / 7px 100% no-repeat;width:30px;inset:0 auto 0 0}.draft-floor,.stage-inside:before{content:"";top:var(--hero-center,50svh);width:var(--floor-size);height:var(--floor-size);opacity:.4;background:url("data:image/svg+xml,<svg xmlns=\"http://www.w3.org/2000/svg\" viewBox=\"0 0 36 36\"><path d=\"M6 0v36M30 0v36M0 6h36M0 30h36\" stroke=\"%23dde0dc\" stroke-dasharray=\"1.5 2.5\"/><path d=\"M18 0v36M0 18h36\" stroke=\"%23c9cdc8\" stroke-dasharray=\"1.5 2.5\"/><path d=\"M15 18h6M18 15v6\" stroke=\"%23858a84\"/></svg>") center / var(--floor-cell) var(--floor-cell);position:absolute;left:50%;translate:-50% -50%;-webkit-mask:radial-gradient(closest-side,#000 50%,#0009 74%,#0000 100%);mask:radial-gradient(closest-side,#000 50%,#0009 74%,#0000 100%)}.draft-ruler span{position:absolute}.draft-ruler.horizontal span{top:14px;transform:translate(-50%)}.draft-ruler.vertical span{writing-mode:vertical-rl;left:14px;transform:translateY(-50%)rotate(180deg)}.draft-caption{bottom:max(24px, env(safe-area-inset-bottom));left:max(24px, env(safe-area-inset-left));z-index:1;text-align:left;max-width:calc(100% - 48px);font:400 12px/1.5 var(--font);letter-spacing:normal;color:#929b91;pointer-events:auto;display:block;position:absolute}.draft-caption a{color:inherit;text-underline-offset:3px}.draft-caption a:hover{color:#484b48}.stage[data-scrolled=true] .draft-caption{visibility:hidden}.continuous-page .stage-center{align-items:start;padding:0}.continuous-page .gyro-zone{aspect-ratio:1;width:min(344px,47svh);height:auto}@media (width<=820px),(pointer:coarse) and (hover:none),(height<=500px) and (width<=1000px){.hero{width:calc(100vw - 48px);padding-bottom:max(14px, env(safe-area-inset-bottom));flex-direction:column;justify-content:flex-end;display:flex;top:0;bottom:0;translate:-50%!important}.hero-heading{top:calc(var(--header-height,118px) + 12px);bottom:auto}.manifesto{top:calc(var(--header-height,118px) + 12px);left:0;right:0;bottom:calc(max(14px, env(safe-area-inset-bottom)) + 72px);overscroll-behavior:contain;text-align:left;transition:translate var(--t-hero-fade) var(--ease-out-quart), opacity var(--t-hero-fade) ease, visibility var(--t-hero-fade);font-size:15px;line-height:1.7;position:absolute;overflow-y:auto;-webkit-mask:linear-gradient(#0000,#000 20px calc(100% - 20px),#0000);mask:linear-gradient(#0000,#000 20px calc(100% - 20px),#0000);height:auto!important}.stage:not([data-reading=true]) .manifesto{opacity:0;translate:0 32px}.stage[data-reading=true] .manifesto{pointer-events:auto}.stage-center,.stage-footer{transition:opacity var(--t-hero-fade) ease, visibility var(--t-hero-fade)}.stage[data-reading=true] :is(.stage-center,.stage-footer){opacity:0;visibility:hidden}.hero-heading h1{font-size:clamp(32px,7.4vw,48px)}.draft-board{inset:0}.continuous-page .gyro-zone{width:min(393px,100vw - 60px,max(172px,100svh - 420px))}.continuous-page .stage-mobile{max-width:300px;font-size:12px}.stage-mobile a{margin-top:4px}}@media (height<=600px){.hero-heading h1{font-size:32px}.continuous-page .gyro-zone{width:min(282px,49svh)}.continuous-page .stage-mobile p{display:none}}.manifesto{transition:translate var(--t-travel) var(--ease-out-quart), opacity var(--t-hero-fade) ease, visibility var(--t-travel)}.stage:not([data-reading=true]) .manifesto{translate:0 calc(100svh - var(--hero-center,50svh) - var(--hero-offset,-50%));visibility:hidden;pointer-events:none}.stage :is(.hero-heading,.draft-caption,.draft-floor,.stage-mark,.stage-hint,.stage-sound){transition:opacity var(--t-hero-fade) ease, visibility var(--t-hero-fade)}.stage[data-reading=true] :is(.hero-heading,.draft-caption,.draft-floor,.stage-mark),.stage[data-holding=true] .manifesto{opacity:0;visibility:hidden}.stage[data-reading=true][data-holding=true] :is(.hero-heading,.stage-sound){opacity:1;visibility:visible}.hero-heading{font:600 16px/24px var(--font);letter-spacing:-.7px;color:#000;white-space:nowrap;--spec-ink:#e81c0d;--spec-fill:#e81c0d1a;--spec-blue:#365dff;--spec-blue-fill:#365dff1a;justify-content:center;align-items:center;gap:0;display:flex}.hero-heading h1{font:inherit;letter-spacing:inherit;margin:0}.spec-item{align-items:center;display:inline-flex;position:relative}.agent-label{color:#00000080}.agent-box{--agent-padding:4px;padding:var(--agent-padding);transition:box-shadow var(--t-hover);background:#fff}.hero-heading:hover .agent-box{box-shadow:inset 0 0 0 var(--agent-padding) var(--spec-blue-fill)}.hero-heading .agent-marks{background:0 0;gap:0;padding:0}.hero-heading .agent-rotation,.hero-heading .agent-mark img{width:16px;height:16px}.hero-heading .agent-mark{background:0 0}.hero-heading :is(.spec-height,.spec-width,.spec-pad,.measured-gap){opacity:0;transition:opacity var(--t-hover)}.hero-heading:hover :is(.spec-height,.spec-width,.spec-pad,.measured-gap){opacity:1}.hero-heading :is(.spec-height,.spec-width,.spec-pad,.measured-gap) span,.spec-width{font:600 8px/10px var(--font);letter-spacing:-.4px;color:var(--spec-ink)}.spec-height{border-left:1px solid var(--spec-ink);position:absolute;top:0;bottom:0;left:-3px}.spec-height>span{position:absolute;top:50%;right:4px;translate:0 -50%}.spec-width{border-top:1px solid var(--spec-ink);text-align:center;padding-top:2px;position:absolute;top:calc(100% + 2px);left:0;right:0}.agent-box>.spec-width{left:var(--agent-padding);right:var(--agent-padding)}.measured-gap{background:var(--spec-fill);flex:0 0 8px;align-self:stretch;width:8px;position:relative}.measured-gap-4{flex-basis:4px;width:4px}.measured-gap>span{position:absolute;bottom:calc(100% + 4px);left:50%;translate:-50%}.spec-pad{width:0;height:0;position:absolute;top:0;right:0}.spec-pad:before,.spec-pad:after{content:"";position:absolute}.spec-pad:before{width:var(--agent-padding);border-top:1px solid var(--spec-blue);top:-1px;right:0}.spec-pad:after{height:var(--agent-padding);border-left:1px solid var(--spec-blue);top:0;right:-1px}.hero-heading .spec-pad>span{color:var(--spec-blue);position:absolute}.spec-pad>span:first-child{bottom:3px;right:-2px}.spec-pad>span:last-child{top:-4px;left:4px}@media (width<=640px){.hero-heading{left:12px;right:12px}}@media (height<=600px){.continuous-page .stage-center{padding-top:38svh}}.agent-rotation{width:.78em;height:.78em;display:grid;overflow:hidden}.hero-heading .agent-rotation .agent-mark{opacity:0;transform:translateY(var(--agent-offset));transition:opacity var(--agent-transition) ease, transform var(--agent-transition) ease;background:0 0;outline:none;grid-area:1/1}.hero-heading .agent-rotation .agent-mark.is-active{opacity:1;transform:translateY(0)}@media (prefers-reduced-motion:reduce){.stage[data-strain=true]{animation:none}.stage[data-strain=true] :is(.hero,.draft-floor,.stage-center,.stage-mark){scale:1}.hero-heading .agent-rotation .agent-mark{transition:none;transform:none}}.draft-ruler:after{content:"";opacity:0;pointer-events:none;background:#2879e8;position:absolute}.draft-ruler[data-tracking=true]:after{opacity:1}.draft-ruler.horizontal:after{top:0;left:var(--active-tick,0px);width:2px;height:11px}.draft-ruler.vertical:after{left:0;top:var(--active-tick,0px);width:11px;height:2px}.draft-ruler:before{content:"";pointer-events:none;opacity:0;transition:opacity var(--t-ruler-fade) ease;position:absolute}.draft-ruler[data-tracking=true]:before{opacity:1}.draft-ruler.horizontal:before{background:repeating-linear-gradient(90deg, #2879e8 0 1px, transparent 1px var(--rule-step));height:7px;-webkit-mask-image:radial-gradient(ellipse 140px 20px at var(--active-tick) 0, #000 0%, #0009 35%, transparent 100%);mask-image:radial-gradient(ellipse 140px 20px at var(--active-tick) 0, #000 0%, #0009 35%, transparent 100%);inset:0 0 auto}.draft-ruler.vertical:before{background:repeating-linear-gradient(#2879e8 0 1px, transparent 1px var(--rule-step));width:7px;-webkit-mask-image:radial-gradient(ellipse 20px 140px at 0 var(--active-tick), #000 0%, #0009 35%, transparent 100%);mask-image:radial-gradient(ellipse 20px 140px at 0 var(--active-tick), #000 0%, #0009 35%, transparent 100%);inset:0 auto 0 0}.draft-ruler[data-tracking=true] span{color:color-mix(in srgb, #2879e8 var(--ruler-blue,0%), #a9aea8)}.stage .draft-board{animation:landing-hint var(--enter-settle) ease var(--enter-grid) backwards}.stage .hero-heading{animation:landing-headline var(--enter-settle) var(--ease-out-quart) var(--enter-headline) backwards}@keyframes landing-headline{0%{opacity:0;translate:0 var(--enter-headline-offset)}to{opacity:1;translate:0}}.stage :is(.draft-caption,.stage-hint){animation:landing-hint var(--enter-settle) ease var(--enter-hint) backwards}.continuous-page .stage[data-started=true] :is(.draft-board,.draft-floor,.hero-heading,.draft-caption,.stage-hint){animation:none}.stage-footer{display:contents}@media (width<=820px),(pointer:coarse) and (hover:none),(height<=500px) and (width<=1000px){.stage .stage-footer{inset:auto max(24px, env(safe-area-inset-right)) max(14px, env(safe-area-inset-bottom)) max(24px, env(safe-area-inset-left));z-index:4;text-align:center;flex-direction:column;align-items:center;gap:18px;display:flex;position:absolute}.continuous-page .stage-footer .stage-mobile{width:100%;max-width:300px;margin:0;position:static}.stage-footer .stage-mobile p{margin:0 0 12px}.stage-footer .stage-mobile a{margin-top:0}.stage-footer .draft-caption{align-self:flex-start;max-width:360px;font-size:11px;line-height:1.6;position:static}}@media (height<=600px) and (width<=820px),(height<=600px) and (pointer:coarse) and (hover:none),(height<=500px) and (width<=1000px){.continuous-page .stage-center{padding-block:0}.stage .stage-footer{gap:12px}}@media (width>=560px) and (width<=1000px) and (height<=500px){.stage .hero-heading{font-size:clamp(16px,2.8vw,24px);top:clamp(28px,10svh,44px)}.stage .stage-footer{flex-direction:row;justify-content:center;gap:24px}.continuous-page .stage-footer .stage-mobile{width:auto}.stage-footer .draft-caption{max-width:280px}}.stage[data-reticle=true],.stage[data-reticle=true] :is(a,button,canvas,.gyro){cursor:none}.reticle{z-index:8;width:0;height:0;translate:var(--reticle-x,-100px) var(--reticle-y,-100px);pointer-events:none;opacity:0;color:#2879e8;--t-sight:.22s;--sight-ease:cubic-bezier(.2, .9, .25, 1);transition:opacity .16s;position:fixed;top:0;left:0}.stage[data-reticle=true] .reticle{opacity:1}.stage[data-reticle=true] .reticle b{animation:sight-in var(--t-sight) var(--sight-ease) backwards}@keyframes sight-in{0%{opacity:0;scale:1.6}}.reticle:before,.reticle:after{content:"";opacity:.32;transition:opacity var(--t-sight) ease;background:currentColor;position:absolute}.reticle:before{width:var(--reticle-x,0px);height:1px;top:-.5px;right:0}.reticle:after{height:var(--reticle-y,0px);width:1px;bottom:0;left:-.5px}.reticle b,.reticle i{border:1px solid;position:absolute;translate:-50% -50%}.reticle b{--corner:11px;width:21px;height:21px;-webkit-mask:linear-gradient(#000 0 0) 0 0 / var(--corner) var(--corner) no-repeat, linear-gradient(#000 0 0) 100% 0 / var(--corner) var(--corner) no-repeat, linear-gradient(#000 0 0) 0 100% / var(--corner) var(--corner) no-repeat, linear-gradient(#000 0 0) 100% 100% / var(--corner) var(--corner) no-repeat;-webkit-mask:linear-gradient(#000 0 0) 0 0 / var(--corner) var(--corner) no-repeat, linear-gradient(#000 0 0) 100% 0 / var(--corner) var(--corner) no-repeat, linear-gradient(#000 0 0) 0 100% / var(--corner) var(--corner) no-repeat, linear-gradient(#000 0 0) 100% 100% / var(--corner) var(--corner) no-repeat;mask:linear-gradient(#000 0 0) 0 0 / var(--corner) var(--corner) no-repeat, linear-gradient(#000 0 0) 100% 0 / var(--corner) var(--corner) no-repeat, linear-gradient(#000 0 0) 0 100% / var(--corner) var(--corner) no-repeat, linear-gradient(#000 0 0) 100% 100% / var(--corner) var(--corner) no-repeat;transition:width var(--t-sight) var(--sight-ease), height var(--t-sight) var(--sight-ease), rotate var(--t-sight) var(--sight-ease), opacity var(--t-sight) ease, -webkit-mask-size var(--t-sight) var(--sight-ease), mask-size var(--t-sight) var(--sight-ease)}.reticle i{width:11px;height:11px;transition:width var(--t-sight) var(--sight-ease), height var(--t-sight) var(--sight-ease), background-color var(--t-sight) ease, opacity var(--t-sight) ease, scale var(--t-sight) var(--sight-ease), border-radius var(--t-sight) var(--sight-ease), border-color var(--t-sight) ease;border-radius:50%}.reticle[data-live=target] b{width:15px;height:15px;rotate:45deg}.reticle[data-live=target] i{background:currentColor;scale:.62}.reticle[data-live=mark] b{--corner:11px;width:96px;height:34px}.reticle[data-live=mark] i{opacity:0;scale:.4}.reticle[data-live=mark]:before,.reticle[data-live=mark]:after{opacity:.12}.reticle em{white-space:nowrap;font:700 9px/1 var(--font);letter-spacing:.09em;text-transform:uppercase;opacity:0;transition:opacity var(--t-sight) ease;font-style:normal;position:absolute;top:50%;left:50%;translate:-50% -50%}.reticle[data-live=mark] em[data-when=mark]{opacity:1}.stage[data-strain] .reticle em,.stage[data-holding=true] .reticle em[data-when=mark]{opacity:0}.stage[data-strain] .reticle b{--corner:7px;width:17px;height:17px}.stage[data-strain] .reticle i{opacity:1;background:linear-gradient(currentColor,currentColor) bottom/100% 0 no-repeat;border-color:#0000;border-radius:0;width:11px;height:11px;scale:1}.stage[data-strain=true] .reticle i{animation:sight-fill var(--t-strain) var(--strain-ease) forwards}@keyframes sight-fill{to{background-size:100% 100%}}.stage[data-strain=true] .reticle{animation:reticle-tremble 90ms linear var(--t-tremble) infinite}@keyframes reticle-tremble{0%,to{margin:0}25%{margin:.5px 0 0 -.9px}50%{margin:-.8px 0 0 .7px}75%{margin:.9px 0 0 .5px}}.stage[data-holding=true] .reticle{color:#1a1c1a}.stage[data-holding=true] .reticle:before,.stage[data-holding=true] .reticle:after{opacity:0}.stage[data-holding=true] .reticle b{--corner:11px;width:21px;height:21px}.stage[data-holding=true] .reticle i{opacity:0;scale:.4}.stage[data-holding=true] .reticle em[data-when=held]{opacity:.78}.reticle em[data-when=held]{width:9px;height:9px}.reticle em[data-when=held]:before,.reticle em[data-when=held]:after{content:"";background:currentColor;width:100%;height:1px;position:absolute;top:50%;left:50%;translate:-50% -50%;rotate:45deg}.reticle em[data-when=held]:after{rotate:-45deg}@media (pointer:coarse),(hover:none){.stage[data-reticle=true],.stage[data-reticle=true] :is(a,button,canvas,.gyro){cursor:auto}.reticle{display:none}}.continuous-docs{--paper:var(--surface);--drawing-ink:var(--text);background:var(--paper)}.docs{padding-inline:40px;max-width:1240px;color:var(--text);grid-template-columns:205px minmax(0,1fr);gap:clamp(40px,6vw,88px);padding-bottom:120px}.docs-sidebar{max-height:calc(100dvh - var(--hdr));gap:28px;padding-bottom:24px;overflow-y:auto}.docs-wordmark{color:var(--text);letter-spacing:-1.1px;font-size:24px;font-weight:650;text-decoration:none}.docs-wordmark span{color:var(--text-2);font:9px/1.6 var(--mono);letter-spacing:.08em;margin-top:7px;display:block}.docs-group{align-items:stretch;gap:5px}.docs-group-label{font:10px/1.5 var(--mono);color:var(--text-2);letter-spacing:.06em;margin-bottom:7px}.docs-group a{letter-spacing:-.01em;border-radius:0;align-items:baseline;gap:12px;font-size:12px;display:flex}.docs-page-number{font:10px/1.8 var(--mono);color:var(--text-3)}.docs-group a.current,.docs-group a.current .docs-page-number{color:var(--drawing-ink)}.docs-group a.current:after{content:"←";margin-left:auto}.docs-group a:hover{color:var(--drawing-ink);background:0 0}.docs-article{max-width:820px;font-family:var(--font)}.doc-chapter{border-bottom:1px solid var(--border);font:10px/1.6 var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--text-2);justify-content:space-between;gap:16px;padding-block:0 18px;display:flex}.docs-article h1{font:600 clamp(32px, 3.5vw, 46px)/1.12 var(--font);letter-spacing:-.045em;text-wrap:balance;margin-top:28px}.docs-article p,.docs-article ul,.docs-article ol{color:var(--text-body);font-size:15px;line-height:1.85}.docs-article p{margin-top:20px}.docs-article p.doc-lede{color:var(--text-2);margin-top:24px;font-size:18px;line-height:1.75}.docs-article a{color:var(--drawing-ink);-webkit-text-decoration-color:var(--border);text-decoration-color:var(--border);font-weight:400}.docs-article strong{font-weight:600}.docs-article .doc-h2{font:600 23px/1.35 var(--font);letter-spacing:-.025em;margin-top:48px}.docs-article .doc-h2:after{background:var(--hairline)}.docs-article code{background:var(--pill);border-radius:2px;font-size:.75em}.docs-article kbd{background:0 0;border-radius:3px}.docs-article .code-block{border-radius:var(--r-chip);border-color:var(--border);background:var(--pill);margin-top:24px}.docs-article .code-block pre{padding-top:24px;padding-bottom:24px}.docs-article pre code{font-size:inherit;background:0 0}.docs-article .doc-note{border:0;border-left:2px solid var(--border);background:var(--pill);border-radius:0;padding:8px 20px;font-size:16px}.docs-article .doc-table{font-size:15px}.docs-article .doc-table th{font:10px/1.5 var(--mono);text-transform:uppercase;letter-spacing:.04em;padding-block:14px}.docs-article .doc-table td{padding-block:14px}.docs-article .doc-param-head{font-family:var(--font)}.docs-article .doc-param p{font-size:16px}.doc-page+.doc-page{border-top:0;margin-top:110px;padding-top:0}.manual-figure{color:var(--drawing-ink);margin:36px 0 32px}.figure-label{border-top:1px solid var(--border);font:10px/1.5 var(--mono);letter-spacing:.035em;justify-content:space-between;gap:12px;padding:12px 0;display:flex}.figure-label span:first-child{color:var(--text-2)}.figure-drawing{background-color:var(--pill);border-radius:var(--r-chip);background-image:radial-gradient(circle,#00000017 .6px,#0000 .6px);background-size:12px 12px}.figure-drawing svg{width:100%;height:auto;display:block;overflow:visible}.drawing-plane{fill:var(--paper);stroke:currentColor;stroke-width:1px;stroke-linejoin:round}.drawing-tint{fill:var(--pill)}.drawing-guides{fill:none;stroke:currentColor;stroke-width:1px;stroke-dasharray:3 5;opacity:.55}.drawing-leaders{fill:none;stroke:currentColor;stroke-width:1px}.drawing-labels{font:12px var(--mono);fill:currentColor}.drawing-muted{fill:var(--text-2);font-size:11px}.drawing-prose{font:500 17px var(--font);fill:currentColor}.manual-figure figcaption{border-top:1px solid var(--hairline);color:var(--text-2);font:12px/1.75 var(--font);padding-top:12px}:is(#doc-overview,#doc-first-handoff,#doc-fills,#doc-styles,#doc-responsive,#doc-comments,#doc-tokens,#doc-agent-loop)>.manual-figure>figcaption{border-style:none}.manual-figure figcaption>span{color:var(--drawing-ink);font:10px var(--mono);margin-right:8px}.spacing-demo{grid-template-columns:1fr 224px;min-height:300px;display:grid}.spacing-canvas{flex-direction:column;justify-content:center;align-items:center;gap:23px;min-width:0;padding:28px 18px;display:flex}.specimen-label{font:9px/1.5 var(--mono);letter-spacing:.03em}.spacing-selection{outline:1px solid var(--drawing-ink);outline-offset:7px;display:flex;position:relative}.spacing-selection:before,.spacing-selection:after{content:"";background:var(--paper);border:1px solid var(--drawing-ink);width:5px;height:5px;position:absolute;top:-11px;left:-11px}.spacing-selection:after{inset:auto -11px -11px auto}.specimen-card{width:var(--specimen-width,124px);border:1px solid var(--border);background:var(--paper);flex-direction:column;flex-shrink:0;justify-content:space-between;height:144px;padding:14px;display:flex}.specimen-card>span{font:10px var(--mono)}.specimen-card strong{font:500 16px/1.4 var(--font);letter-spacing:-.025em}.specimen-line{background:var(--border);width:60%;height:3px}.gap-measure{height:100%;left:var(--specimen-width,124px);border-inline:1px dashed var(--guide);background:#f24e1e14;place-items:center;display:grid;position:absolute}.gap-measure span{color:var(--guide);font:9px var(--mono);position:absolute;top:-24px}.spacing-controls{background:var(--paper);border-left:1px solid var(--hairline);flex-direction:column;justify-content:center;padding:36px 22px;display:flex}.spacing-controls label{font:13px var(--mono);justify-content:space-between;margin-top:22px;display:flex}.spacing-controls input{width:100%;accent-color:var(--drawing-ink);cursor:ew-resize;margin:16px 0 24px}.spacing-export{border-top:1px solid var(--hairline);gap:8px;padding-top:16px;display:grid}.spacing-export span{font:9px var(--mono);color:var(--text-2)}.docs-article .spacing-export code{color:var(--drawing-ink);background:0 0;padding:0;font-size:11px}.spacing-controls button{color:var(--drawing-ink);font:10px var(--mono);cursor:pointer;background:0 0;border:0;align-self:start;padding:12px 0 0}.spacing-controls button:disabled{color:var(--text-3);cursor:default}@media (width<=820px),(pointer:coarse) and (hover:none),(height<=500px) and (width<=1000px){.docs{padding-inline:var(--pad-x);grid-template-columns:minmax(0,1fr)}.docs-article{max-width:680px}.docs-article h1{font-size:34px}.doc-chapter{font-size:9px}.docs-article p.doc-lede{font-size:17px}.figure-label{font-size:9px}.docs-article p,.docs-article ul,.docs-article ol{font-size:16px}.spacing-demo{grid-template-columns:1fr}.spacing-controls{border-left:0;border-top:1px solid var(--hairline);padding:20px}.spacing-controls input{min-height:28px;margin-bottom:14px}.spacing-controls button{min-height:44px}.spacing-canvas{--specimen-width:min(124px, calc((100vw - 112px) / 2));min-height:265px}.doc-page+.doc-page{margin-top:72px}.manual-figure figcaption{font-size:12px}.docs-article .code-block pre{padding-top:58px}}@media (width<=480px){.figure-drawing:has(svg){overflow-x:auto}.figure-drawing svg{min-width:540px}.manual-figure:has(svg) figcaption:before{content:"SCROLL DRAWING TO EXPLORE →";font:9px var(--mono);color:var(--drawing-ink);margin-bottom:8px;display:block}}.figure-drawing svg :is(path,rect,circle,line){vector-effect:non-scaling-stroke}.drawing-measure{fill:none;stroke:var(--guide);stroke-width:1px}.drawing-measure-label{fill:var(--guide)}.drawing-soft{stroke:#b8b8b8}.spacing-selection{--handle:6px}.selection-handle{width:var(--handle);height:var(--handle);border:1px solid var(--text);background:var(--surface);position:absolute}.selection-handle:first-of-type{top:-11px;right:-11px}.selection-handle:nth-of-type(2){bottom:-11px;left:-11px}.spacing-selection:before,.spacing-selection:after{box-sizing:border-box;width:var(--handle);height:var(--handle)}.spacing-controls input{height:20px}.spacing-export code{font-variant-numeric:tabular-nums}.figure-label span:nth-child(2){text-align:right;color:var(--text-2);flex:1}.manual-figure [data-beat]{--beat-progress:1;opacity:calc(var(--figure-visible) * var(--beat-progress));transition:opacity var(--figure-duration) ease-out, translate var(--figure-duration) var(--figure-ease), scale var(--figure-duration) var(--figure-ease), stroke-dashoffset var(--figure-duration) var(--figure-ease)}.manual-figure .drawing-guides[data-beat]{--figure-visible:.55}.manual-figure[data-stage="0"] [data-beat],.manual-figure[data-stage="1"] [data-beat]:is([data-beat="2"],[data-beat="3"],[data-beat="4"]),.manual-figure[data-stage="2"] [data-beat]:is([data-beat="3"],[data-beat="4"]),.manual-figure[data-stage="3"] [data-beat="4"]{--beat-progress:0}.manual-figure [data-motion=rise]{translate:0 calc(var(--figure-offset) * (1 - var(--beat-progress)))}.manual-figure [data-motion=cursor]{translate:calc(var(--figure-cursor-offset) * (1 - var(--beat-progress))) calc(var(--figure-cursor-offset) * (1 - var(--beat-progress)))}.manual-figure [data-motion=pin]{transform-box:fill-box;transform-origin:50%;scale:calc(var(--figure-pin-scale) + (1 - var(--figure-pin-scale)) * var(--beat-progress))}.figure-drawing svg .drawing-trace{vector-effect:none;stroke-dasharray:1;stroke-dashoffset:calc(1 - var(--beat-progress));transition:stroke-dashoffset var(--figure-duration) var(--figure-ease), opacity var(--figure-duration) ease-out}.manual-figure[data-stage="0"] :is([data-beat],.drawing-trace){transition:none}.manual-figure:focus-within [data-beat]{--beat-progress:1}.manual-figure:focus-within :is([data-beat],.drawing-trace){transition:none}@media (prefers-reduced-motion:reduce){.manual-figure[data-stage] [data-beat]{--beat-progress:1}.manual-figure[data-stage] :is([data-beat],.drawing-trace){transition:none}}#doc-agent-loop .figure-drawing{background:#fafafa;border:1px solid #ededed;border-radius:16px}.agent-flow-card{fill:#fff;stroke:#e1e3e5;stroke-width:1px}.agent-flow-shadow{fill:#000;opacity:.025}.agent-flow-number{font:400 10px var(--font);fill:#9b9da1}.agent-flow-title{font:600 15px var(--font);fill:#232528;letter-spacing:-.3px}.agent-flow-description{font:400 10px var(--font);fill:#81858a}.agent-flow-connector{fill:none;stroke:#a9aeb4;stroke-width:1px;stroke-linecap:round;stroke-linejoin:round}.agent-flow-return{fill:none;stroke:#c7cbd0;stroke-width:1px;stroke-dasharray:3 4;stroke-linecap:round}.agent-flow-loop-label{fill:#fafafa}.spacing-controls input[type=range]{appearance:none;cursor:pointer;touch-action:pan-y;background:0 0;border:0;height:32px;min-height:32px;padding:0}.spacing-controls input[type=range]::-webkit-slider-runnable-track{background:linear-gradient(to right, #42464b 0 var(--range-fill), #e7e9ec var(--range-fill) 100%);border-radius:4px;height:4px}.spacing-controls input[type=range]::-moz-range-track{background:#e7e9ec;border-radius:4px;height:4px}.spacing-controls input[type=range]::-moz-range-progress{background:#42464b;border-radius:4px;height:4px}.spacing-controls input[type=range]::-webkit-slider-thumb{appearance:none;background:#fff;border:1px solid #d5d8dc;border-radius:50%;width:18px;height:18px;margin-top:-7px;transition:box-shadow .15s,border-color .15s;box-shadow:0 1px 3px #0002,0 2px 5px #0000000a}.spacing-controls input[type=range]::-moz-range-thumb{background:#fff;border:1px solid #d5d8dc;border-radius:50%;width:16px;height:16px;box-shadow:0 1px 3px #0002}.spacing-controls input[type=range]:hover::-webkit-slider-thumb{border-color:#a9afb7;box-shadow:0 1px 4px #0002,0 0 0 4px #00000006}.spacing-controls input[type=range]:active{cursor:grabbing}.spacing-controls input[type=range]:active::-webkit-slider-thumb{box-shadow:0 0 0 5px #0000000a}.spacing-controls input[type=range]:focus-visible{outline-offset:3px;border-radius:8px;outline:2px solid #2879e8}@media (prefers-reduced-motion:reduce){.spacing-controls input[type=range]::-webkit-slider-thumb{transition:none}}.docs-search{position:relative}.docs-search input{box-sizing:border-box;border:0;border-bottom:1px solid var(--border);width:100%;font:12px var(--font);color:var(--text);background:0 0;border-radius:0;padding:8px 0}.docs-search input:focus-visible{border-bottom-color:var(--text);outline:none}.docs-search-hits{border:1px solid var(--border);border-radius:var(--r-chip);background:var(--surface);max-height:50vh;margin:6px 0 0;padding:0;list-style:none;overflow-y:auto}.docs-search-hits li+li{border-top:1px solid var(--hairline)}.docs-search-hits a{gap:3px;padding:9px 10px;text-decoration:none;display:grid}.docs-search-hits a:hover,.docs-search-hits a:focus-visible{background:var(--pill)}.docs-search-where{font:10px/1.4 var(--mono);color:var(--text);letter-spacing:.02em}.docs-search-snippet{font:11px/1.5 var(--font);color:var(--text-2);-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.docs-search-empty{font:11px var(--font);color:var(--text-2);padding:9px 10px}.doc-since{border:1px solid var(--border);font:9px/1.6 var(--mono);letter-spacing:.04em;color:var(--text-2);text-transform:none;vertical-align:middle;border-radius:999px;margin-left:10px;padding:1px 6px;display:inline-block}.docs-article .doc-h2 .doc-since{margin-left:12px;font-size:10px}.doc-pair{border:1px solid var(--border);border-radius:var(--r-chip);grid-template-columns:minmax(0,1fr) minmax(0,1.3fr);margin-top:24px;display:grid;overflow:hidden}.doc-pair>div{min-width:0;padding:16px 18px}.doc-pair>div+div{border-left:1px solid var(--border);background:var(--pill)}.doc-pair-label{font:9px/1.5 var(--mono);letter-spacing:.06em;color:var(--text-2);text-transform:uppercase;margin-bottom:8px;display:block}.docs-article .doc-pair p{margin:0;font-size:14px;line-height:1.7}.docs-article .doc-pair .code-block{background:0 0;border:0;margin:0}.docs-article .doc-pair .code-block pre{white-space:pre-wrap;word-break:break-word;padding:0;font-size:12px}.docs-article .doc-pair .copy-btn{display:none}@media (width<=820px){.doc-pair{grid-template-columns:minmax(0,1fr)}.doc-pair>div+div{border-left:0;border-top:1px solid var(--border)}}.doc-steps{counter-reset:step;margin-top:8px;padding:0;list-style:none}.doc-steps>li{border-top:1px solid var(--hairline);padding:22px 0 22px 52px;position:relative}.doc-steps>li:before{counter-increment:step;content:counter(step, decimal-leading-zero);font:11px/1.6 var(--mono);color:var(--text-2);letter-spacing:.04em;position:absolute;top:24px;left:0}.docs-article .doc-steps h3{font:600 17px/1.4 var(--font);letter-spacing:-.02em;margin:0}.docs-article .doc-steps p{margin-top:10px}.docs-article .doc-steps .code-block,.docs-article .doc-steps .doc-pair{margin-top:14px}.doc-step-time{float:right;font:10px/1.8 var(--mono);color:var(--text-3)}.steps-flow .agent-flow-card{fill:var(--paper);stroke:var(--border)}.steps-flow .agent-flow-title{fill:var(--text)}
