:root,html[data-theme=dark]{color-scheme:dark;--bg:#100f0f;--bg-soft:#1c1b1a;--bg-elev:#282726;--border:#343331;--border-soft:#282726;--text:#cecdc3;--text-dim:#b7b5ac;--text-faint:#878580;--accent:#ce5d97;--accent-hover:#e47da8;--link-line:color-mix(in srgb,var(--accent) 70%,#0000);--cyan:#3aa99f;--tip:#879a39;--warn:#d0a215;--on-accent:#100f0f;--mono:var(--font-mono),"JetBrains Mono",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;--gutter:24px;--nav-h:52px;--fs-xs:11px;--fs-sm:12px;--fs-base:13.5px;--fs-md:15px;--fs-lg:20px;--measure:calc(var(--fs-base) * 0.6 * 80);--line:calc(var(--fs-base) * 1.7);--hang:calc(var(--fs-sm) * 1.2);--hl-foreground:#cecdc3;--hl-token-comment:#6f6e69;--hl-token-keyword:#ce5d97;--hl-token-string:#3aa99f;--hl-token-string-expression:#879a39;--hl-token-function:#4385be;--hl-token-constant:#da702c;--hl-token-parameter:#cecdc3;--hl-token-punctuation:#878580;--hl-token-link:#4385be}html[data-theme=light]{color-scheme:light;--bg:#fffcf0;--bg-soft:#f2f0e5;--bg-elev:#e6e4d9;--border:#dad8ce;--border-soft:#e6e4d9;--text:#100f0f;--text-dim:#403e3c;--text-faint:#6f6e69;--accent:#a02f6f;--accent-hover:#87285e;--cyan:#24837b;--tip:#536907;--warn:#8e6b01;--on-accent:#fffcf0;--hl-foreground:#1c1b1a;--hl-token-comment:#9f9d96;--hl-token-keyword:#a02f6f;--hl-token-string:#24837b;--hl-token-string-expression:#66800b;--hl-token-function:#205ea6;--hl-token-constant:#bc5215;--hl-token-parameter:#1c1b1a;--hl-token-punctuation:#6f6e69;--hl-token-link:#205ea6}*,:after,:before{box-sizing:border-box}@media (min-width:721px){:root,html[data-theme]{--gutter:40px}}html{scroll-padding-top:calc(var(--nav-h) + 16px);-webkit-text-size-adjust:100%}body{hanging-punctuation:first allow-end;margin:0;background:var(--bg);color:var(--text);font:var(--fs-base)/1.7 var(--mono);font-feature-settings:"zero","kern";-webkit-font-smoothing:antialiased;text-rendering:optimizeLegibility}::selection{background:var(--text);color:var(--bg)}:focus-visible{outline:1px solid var(--text);outline-offset:2px}:is(a,button):focus-visible{outline:0;background:var(--text);color:var(--bg);text-decoration:none}h1,h2,h3,h4{font-weight:700;line-height:1.3;color:var(--text);margin:0}ol,p,ul{margin:0 0 14px}a{color:var(--text);text-decoration:underline;text-decoration-color:var(--link-line);text-underline-offset:3px;text-decoration-thickness:1px}a:hover{color:var(--accent);text-decoration-color:var(--accent)}img{max-width:100%;height:auto}hr{border:0;border-top:1px solid var(--border-soft);margin:40px 0}code,kbd,pre{font-family:var(--mono)}button{font:inherit;color:inherit}.sr-only{width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}.skip,.sr-only{position:absolute}.skip{left:-9999px}.skip:focus{left:var(--gutter);top:8px;z-index:200;background:var(--bg);padding:6px 10px;border:1px solid var(--border)}*{scrollbar-width:thin;scrollbar-color:var(--border) #0000}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-thumb{background:var(--border);border:2px solid #0000;background-clip:padding-box}::-webkit-scrollbar-thumb:hover{background:var(--text-faint);background-clip:padding-box}::-webkit-scrollbar-corner,::-webkit-scrollbar-track{background:#0000}.nav{position:sticky;top:0;z-index:100;height:var(--nav-h);display:flex;align-items:center;background:var(--bg);border-bottom:1px solid var(--border-soft)}.wrap{width:100%;padding:0 24px 0 var(--gutter)}.nav-inner{gap:22px}.brand,.nav-inner{display:flex;align-items:center}.brand{gap:8px;text-decoration:none;font-weight:700;font-size:var(--fs-base)}.brand,.brand:hover{color:var(--text)}.brand-mark{color:var(--accent)}.brand-ver{font-weight:400}.brand-ver,.page-weight{font-size:var(--fs-xs);color:var(--text-faint)}.page-weight{margin-left:-14px;white-space:nowrap;cursor:default}.page-weight:before{content:"·";margin-right:8px;color:var(--border)}@media (max-width:900px){.page-weight{display:none}}.nav-links{display:flex;gap:16px}.nav-links a{position:relative}.nav-links a[aria-current]{color:var(--text)}.mobile-menu-links a{text-transform:lowercase}.nav-links a[aria-current]:before{content:">";position:absolute;right:100%;margin-right:.6ch;color:var(--accent)}.cmdk-trigger,.nav-cta a,.nav-links a{color:var(--text-faint);text-decoration:none;font-size:var(--fs-sm);white-space:nowrap;text-transform:lowercase}.cmdk-trigger:hover,.nav-cta a:hover,.nav-links a:hover{color:var(--text);text-decoration:underline;text-underline-offset:3px}.nav-spacer{flex:1 1}.nav-cta{display:flex;align-items:center;gap:16px}.cmdk-trigger{display:inline-flex;align-items:center;gap:8px;padding:0;background:none;border:0;cursor:pointer}.cmdk-trigger kbd{font-size:var(--fs-xs);color:var(--text-faint);border:1px solid var(--border);padding:0 5px;line-height:1.5}.theme-toggle{display:inline-flex;align-items:center;height:24px;padding:0;background:none;border:0;color:var(--text-faint);font-size:var(--fs-sm);cursor:pointer}.theme-toggle:hover{color:var(--text)}.nav-toggle,html[data-theme=dark] .theme-icon.moon,html[data-theme=light] .theme-icon.sun{display:none}.nav-toggle{align-items:center;height:34px;padding:0 0 0 12px;font-size:var(--fs-sm);background:none;border:0;color:var(--text-dim);cursor:pointer}.nav-toggle:hover{color:var(--text)}.mobile-util kbd{margin-left:1ch;font-size:var(--fs-xs);color:var(--text-faint);border:1px solid var(--border);padding:0 5px}.mobile-menu{position:absolute;top:var(--nav-h);left:0;right:0;background:var(--bg);border-bottom:1px solid var(--border);padding:8px var(--gutter) 16px}.mobile-menu-links{display:flex;flex-direction:column}.mobile-menu-links a{min-height:44px;display:flex;align-items:center;color:var(--text);text-decoration:none;border-bottom:1px solid var(--border-soft)}.mobile-menu-links a[aria-current]{color:var(--accent)}.mobile-menu-utils{display:flex;flex-direction:column}.mobile-util{min-height:44px;display:flex;align-items:center;gap:10px;width:100%;padding:0;background:none;border:0;border-bottom:1px solid var(--border-soft);color:var(--text-faint);font:inherit;text-align:left;cursor:pointer}.docnav .dir,.docs-toc .t,.kicker,.sec-title{font-size:var(--fs-sm);text-transform:lowercase;font-weight:400;color:var(--text-faint)}.kicker{margin:0 0 10px}.lead{font-size:var(--fs-base);line-height:1.7;margin:10px 0 32px;text-wrap:pretty}.lead,.lead strong{color:var(--text-dim)}.breadcrumb{display:flex;flex-wrap:wrap;align-items:baseline;gap:1ch;font-size:var(--fs-sm);color:var(--text-faint);margin-bottom:20px;text-transform:lowercase}.breadcrumb a{color:var(--text-dim);text-decoration:none}.breadcrumb a:hover{color:var(--text);text-decoration:underline}.breadcrumb .sep{color:var(--border)}.breadcrumb .cur{color:var(--text)}.doc-body{color:var(--text-dim);font-size:var(--fs-base);line-height:var(--line);-webkit-hyphens:manual;hyphens:manual}.doc-body li,.doc-body p{text-wrap:pretty}.doc-body :is(h2,h3,h4){text-wrap:balance}.doc-chunk{display:contents}.doc-body ol,.doc-body p,.doc-body ul{margin:0 0 var(--line)}.doc-body h2{font-size:var(--fs-md);line-height:var(--line);margin:calc(var(--line) * 2) 0 calc(var(--line) / 2)}.doc-body h3{margin:calc(var(--line) * 1.5) 0 calc(var(--line) / 2)}.doc-body h3,.doc-body h4{font-size:var(--fs-base);line-height:var(--line)}.doc-body h4{margin:var(--line) 0 0;color:var(--text-dim)}.doc-body :is(h2,h3,h4){position:relative;scroll-margin-top:calc(var(--nav-h) + 24px)}.doc-body>:first-child,.doc-chunk:first-child>:first-child{margin-top:0}.anchor{position:absolute;right:100%;top:0;margin-right:.8ch;color:var(--border);text-decoration:none;font-weight:400}h2>.anchor:before{content:"##"}h3>.anchor:before{content:"###"}h4>.anchor:before{content:"####"}:is(h2,h3,h4):hover>.anchor{color:var(--text-faint)}:is(h3,h4)>.anchor{opacity:0}:is(h3,h4):hover>.anchor,:is(h3,h4)>.anchor:focus-visible{opacity:1}.anchor:hover{color:var(--accent)}@media (max-width:720px){.anchor{display:none}}:target{scroll-margin-top:calc(var(--nav-h) + 24px)}.doc-body h2:target,.doc-body h3:target{color:var(--accent)}.doc-body ol,.doc-body ul{padding-left:0}.doc-body li :is(ul,ol){padding-left:2ch;margin-bottom:0}.doc-body li{margin:0 0 calc(var(--line) / 4)}.doc-body li>p{margin:0 0 .4em}.doc-body li::marker{color:var(--text-faint)}.doc-body ul>li::marker{content:"- "}.doc-body strong{color:var(--text);font-weight:600}.doc-body a{color:var(--text);text-decoration-color:var(--link-line)}.doc-body a:hover{color:var(--accent);text-decoration-color:var(--accent)}.doc-body a.ext:after{content:"\2197";font-size:.8em;margin-left:1px;color:var(--text-faint)}.doc-body blockquote{margin:0 0 var(--line);padding:0 0 0 2ch;border-left:1px solid var(--border);font-style:italic}.doc-body blockquote>:last-child{margin-bottom:0}.doc-body img{border:1px solid var(--border-soft)}.doc-body kbd,:where(.doc-body,.note,.lead) code{background:var(--bg-elev);box-shadow:inset 0 0 0 1px var(--border);padding:.1em .5ch;font-size:.94em;color:var(--text);font-weight:500;-webkit-box-decoration-break:clone;box-decoration-break:clone}:where(.doc-body a) code{box-shadow:inset 0 0 0 1px var(--link-line)}.doc-body kbd{border:solid var(--border);border-width:1px 1px 2px;background:none}:where(.doc-body p,.doc-body li,.note)>code{overflow-wrap:anywhere}.doc-body kbd,td code,td kbd{white-space:nowrap}td code,td kbd{overflow-wrap:normal}td{overflow-wrap:break-word}.codeblock{margin:0 0 var(--line) calc(var(--hang) * -1);background:var(--bg-soft)}.codeblock:not(.run) .codeblock-head{position:absolute;right:0;top:0;border:0;padding:4px 6px}.codeblock:not(.run) .codeblock-head>span{display:none}.codeblock{position:relative}.codeblock-head{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:4px 6px 0 var(--hang);font-size:var(--fs-xs);color:var(--text-faint);letter-spacing:.04em}pre.code{margin:0;padding:12px 14px 12px var(--hang);overflow-x:auto;tab-size:4;background:none;font-size:var(--fs-sm);line-height:1.7;color:var(--hl-foreground)}pre.code code{background:none;border:0;padding:0;font-size:inherit;color:inherit;overflow-wrap:normal}pre.code .line:empty:before{content:" "}pre.code .line.cmd:before{content:"$ ";margin-left:calc(var(--hang) * -1);color:var(--accent);-webkit-user-select:none;user-select:none}.codeblock.run pre.code .line.out{color:var(--text-dim)}.codeblock.run .codeblock-head span{color:var(--text-faint)}@media (max-width:720px){.codeblock{margin-left:0}.doc-body :is(ul,ol){padding-left:2ch}}.codeblock-copy{height:22px;padding:0 8px;cursor:pointer;background:none;border:0;color:var(--text-faint);font-size:var(--fs-xs)}.codeblock-copy:hover{color:var(--text);text-decoration:underline;text-underline-offset:3px}.codeblock-copy[data-done]{color:var(--accent)}.note{position:relative;margin:0 0 var(--line);color:var(--text-dim)}.note:before{content:"note";position:absolute;right:100%;top:.35em;margin-right:1ch;font-size:var(--fs-xs);color:var(--text-faint)}.note.tip:before{content:"tip";color:var(--tip)}.note.warn:before{content:"warn";color:var(--warn)}.note .label{display:block;margin:0;text-transform:none;letter-spacing:0;font-size:var(--fs-base);color:var(--text)}@media (max-width:720px){.note{padding-left:1.5ch;border-left:1px solid var(--border)}.note.tip{border-left-color:var(--tip)}.note.warn{border-left-color:var(--warn)}.note:before{position:static;display:block;margin:0}}.note>:last-child{margin-bottom:0}.tablewrap{overflow-x:auto;margin:0 0 var(--line);border-top:1px solid var(--border);border-bottom:1px solid var(--border)}table{width:100%;border-collapse:collapse;font-size:var(--fs-sm)}td,th{text-align:left;padding:6px 20px 6px 0;border-bottom:1px solid var(--border-soft);vertical-align:top;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}:is(th,td):last-child{padding-right:0}:is(th,td).num{text-align:right}thead th{color:var(--text-faint);font-weight:400;border-bottom-color:var(--border)}tbody tr:last-child td{border-bottom:0}td.mono,th.mono{white-space:nowrap}td.hash{font-size:var(--fs-xs);color:var(--text-faint)}td.mono a code,td.mono code{background:none;border:0;padding:0;font-size:inherit;color:inherit}td .win{color:var(--text)}.copyrow{display:flex;align-items:baseline;gap:0;min-width:0;padding:10px 10px 10px var(--hang);margin-left:calc(var(--hang) * -1);background:var(--bg-soft)}@media (max-width:720px){.copyrow{margin-left:0;padding-left:12px}}.copyrow code{flex:1 1;min-width:0;overflow-x:auto;overflow-y:hidden;white-space:nowrap;color:var(--text);scrollbar-width:none}.copyrow code::-webkit-scrollbar{display:none}@media (max-width:560px){.copyrow code{white-space:normal;overflow-wrap:anywhere}.copyrow{align-items:baseline}}.copyrow-caret{flex:none;width:var(--hang);margin-left:calc(var(--hang) * -1);color:var(--accent)}@media (max-width:720px){.copyrow-caret{width:2ch;margin-left:0}}.copybtn{flex:none;margin-left:12px;padding:0 4px;cursor:pointer;background:none;border:0;color:var(--text-faint);font-size:var(--fs-sm)}.copybtn:hover{color:var(--text);text-decoration:underline;text-underline-offset:3px}.docnav{display:grid;gap:10px;margin-top:48px;padding-top:20px;border-top:1px solid var(--border-soft)}.docnav>span:empty{display:none}.docnav a{display:grid;grid-template-columns:12ch minmax(0,1fr);gap:12px;color:var(--text);text-decoration:none;font-size:var(--fs-sm)}.docnav a:hover{color:var(--accent)}.edit-page{margin-top:20px;font-size:var(--fs-sm)}.edit-page a{color:var(--text-faint);text-decoration:none}.edit-page a:hover{color:var(--text)}.page{max-width:calc(var(--measure) + var(--gutter) + 24px);padding:calc(var(--line) * 2) 24px calc(var(--line) * 3) var(--gutter)}.page h1{font-size:var(--fs-lg);letter-spacing:-.01em}.post-meta{margin:8px 0 0}.post .lead{margin-top:12px}.index-list{list-style:none;padding:0;margin:0;border-top:1px solid var(--border-soft)}.index-list li{border-bottom:1px solid var(--border-soft)}.index-list a{display:grid;gap:2px;padding:14px 0;text-decoration:none}.index-list a:hover .il-title{color:var(--accent)}.il-meta{font-size:var(--fs-sm);color:var(--text-faint)}.il-title{color:var(--text);font-weight:600}.il-sub{font-size:var(--fs-sm)}.cta,.il-sub{color:var(--text-dim)}.cta{margin:48px 0 0;padding-top:24px;border-top:1px solid var(--border-soft)}.cta>code{display:block;padding:10px 14px;margin:8px 0 12px;background:var(--bg-soft);border:1px solid var(--border-soft);color:var(--text);overflow-x:auto;white-space:nowrap}.cta-links{display:flex;gap:20px;font-size:var(--fs-sm)}.related{margin-top:40px}.related ul{padding-left:18px}.bench{display:grid;grid-template-columns:minmax(0,1fr);gap:26px}.bench-metric{margin:0;min-width:0}.bench-metric figcaption{color:var(--text-dim);font-size:var(--fs-sm);margin:0 0 10px}.bench-metric figcaption span{color:var(--text-faint)}.bench-metric figcaption span:before{content:"· "}.bench-metric ol{list-style:none;margin:0;padding:0;display:grid;gap:7px}.bench-metric li{display:grid;grid-template-columns:12ch minmax(0,1fr);align-items:center;gap:14px;font-size:var(--fs-sm);line-height:1.4;color:var(--text-dim)}.bench-name{white-space:nowrap}.bench-track{display:flex;align-items:center;gap:10px;min-width:0}.bench-bar{flex:none;height:6px;background:color-mix(in srgb,var(--text-faint) 45%,#0000)}.bench-val{flex:none;white-space:nowrap;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.bench-x{margin-left:8px;color:var(--text-faint);font-size:var(--fs-xs)}.bench-metric li.is-us{color:var(--text);font-weight:600}.bench-metric li.is-us .bench-bar{background:var(--accent);min-width:3px}.bench-note{margin:0;font-size:var(--fs-xs);color:var(--text-faint)}.bench-note a{color:var(--text-dim)}.bench-range{color:var(--text-faint);font-size:var(--fs-xs)}:is(th,td).num{white-space:nowrap}td .bench-range{display:block}.bench-table td .ver-under{display:none}@media (max-width:560px){.bench-table .ver,.bench-table thead{display:none}.bench-table,.bench-table tbody,.bench-table tr{display:block}.bench-table tr{padding:10px 0;border-bottom:1px solid var(--border-soft)}.bench-table td{display:grid;grid-template-columns:15ch minmax(0,1fr);gap:0 12px;padding:1px 0;border:0;text-align:left}.bench-table td:first-child{display:block;padding-bottom:6px;color:var(--text);font-weight:600}.bench-table td[data-label]:before{content:attr(data-label);color:var(--text-faint);grid-row:span 2}.bench-table td .bench-range{display:block;grid-column:2}.bench-table td:first-child .ver-under{display:inline;margin-left:1ch;font-weight:400}}.home-bench{margin-top:28px;width:min(780px,calc(100vw - var(--gutter) - 16px))}.doc-body .bench{margin:24px 0 32px}.keys-overlay{position:fixed;inset:0;z-index:300;background:color-mix(in srgb,var(--bg) 78%,#0000)}.keys{position:absolute;left:var(--gutter);top:calc(var(--nav-h) + 24px);min-width:30ch;padding:14px 18px;background:var(--bg);border:1px solid var(--border);font-size:var(--fs-sm)}.keys-title{margin:0 0 10px;color:var(--text-faint)}.keys dl{display:grid;grid-template-columns:9ch auto;gap:2px 16px;margin:0}.keys dd,.keys dt{margin:0}.keys dd{color:var(--text-dim)}.keys kbd,.notfound-shell{color:var(--text)}.notfound-shell{margin:8px 0 32px;font-size:var(--fs-base);line-height:1.7;white-space:pre-wrap;overflow-wrap:anywhere}.notfound-prompt{color:var(--accent)}.notfound-try{color:var(--text-faint);margin:0 0 8px}.notfound-list{list-style:none;padding:0;margin:0;display:grid;gap:6px}.notfound-list li{display:grid;grid-template-columns:16ch minmax(0,1fr);gap:12px}.notfound-list li>span:last-child{color:var(--text-faint)}.notfound-list kbd{border:1px solid var(--border);padding:0 5px;font-size:var(--fs-xs);color:var(--text)}.gitlog{list-style:none;padding:0;margin:0 0 40px;font-size:var(--fs-sm)}.gitlog li{display:grid;grid-template-columns:9ch 11ch minmax(0,1fr);gap:12px;padding:2px 0}.gitlog a{text-decoration:none}.gitlog a:hover{text-decoration:underline}.gitlog time{color:var(--text-faint);font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.gitlog span{color:var(--text-dim);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.post-list{list-style:none;padding:0;margin:8px 0 0}.post-list li{display:grid;grid-template-columns:11ch minmax(0,1fr);gap:0 20px;padding:16px 0;border-top:1px solid var(--border-soft)}.post-list li:last-child{border-bottom:1px solid var(--border-soft)}.post-list time{color:var(--text-faint);font-size:var(--fs-sm);line-height:1.7;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.post-list a{display:grid;gap:4px;text-decoration:none}.pl-title{color:var(--text);font-weight:600;line-height:1.5;text-wrap:balance}.post-list a:hover .pl-title{color:var(--accent)}.pl-sub{color:var(--text-dim);font-size:var(--fs-sm);line-height:1.65;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.pl-meta{color:var(--text-faint);font-size:var(--fs-xs)}.post-shell{display:grid;grid-template-columns:minmax(0,var(--measure)) 180px;gap:56px;padding:40px 24px 0 var(--gutter)}.post-shell>article{padding-bottom:96px}.post-head{margin-bottom:36px}.post-head h1{font-size:var(--fs-lg);line-height:1.35;letter-spacing:-.01em;text-wrap:pretty;-webkit-hyphens:manual;hyphens:manual}.post-meta{display:flex;flex-wrap:wrap;gap:0 10px;margin:10px 0 0;font-size:var(--fs-sm);color:var(--text-faint)}.post-meta>*+:before{content:"·";margin-right:10px}.post-head .lead,.post-tags{margin:14px 0 0}.post-tags{display:flex;flex-wrap:wrap;font-size:var(--fs-sm);color:var(--text-faint)}.post-tags span+span:before{content:"·";margin:0 1ch;color:var(--border)}@media (max-width:1150px){.post-shell{grid-template-columns:minmax(0,var(--measure))}}.docs-shell{display:grid;grid-template-columns:210px minmax(0,var(--measure)) 180px;gap:56px;padding:40px 24px 0 var(--gutter)}.docs-main{padding-bottom:96px}.docs-main h1{font-size:var(--fs-lg);letter-spacing:-.01em}.doc-head{margin-bottom:36px}.doc-head .lead{margin:10px 0 14px}.page-actions{display:flex;gap:16px;font-size:var(--fs-sm)}.page-actions a,.page-actions button{padding:0;background:none;border:0;cursor:pointer;color:var(--text-faint);text-decoration:none}.page-actions a:hover,.page-actions button:hover{color:var(--text)}.toc-inline{display:none;margin:0 0 32px;border-bottom:1px solid var(--border-soft);font-size:var(--fs-sm)}.toc-inline summary{padding:10px 0;min-height:44px;display:flex;align-items:center;justify-content:space-between;cursor:pointer;color:var(--text-faint);list-style:none}.toc-inline summary::-webkit-details-marker{display:none}.toc-inline summary:after{content:"+";color:var(--text-faint)}.toc-inline[open] summary:after{content:"\2212"}.toc-inline ol{margin:0;padding:0 0 12px 4ch;list-style:decimal-leading-zero}.toc-inline li{margin:4px 0}.toc-inline li::marker{color:var(--text-faint)}.toc-inline a{color:var(--text-dim);text-decoration:none}.toc-inline a:hover{color:var(--text)}.docs-side,.docs-toc{position:sticky;top:calc(var(--nav-h) + 24px);align-self:start;max-height:calc(100vh - var(--nav-h) - 48px);overflow-y:auto;overscroll-behavior:contain;scrollbar-width:none}.docs-side::-webkit-scrollbar,.docs-toc::-webkit-scrollbar{display:none}.docs-side .sec{margin-bottom:24px}.sec-title{margin:0 0 6px}.docs-side a{position:relative;display:block;padding:3px 0 3px 14px;color:var(--text-dim);text-decoration:none;font-size:var(--fs-sm);line-height:1.5}.docs-side a:hover{color:var(--text)}.docs-side a.active{color:var(--accent);font-weight:500}.docs-side a.active:before{content:">";position:absolute;left:0}.docs-side-toggle{display:none}.docs-toc .t{margin:0 0 8px}.docs-toc a{display:block;padding:3px 0 3px 12px;border-left:1px solid var(--border-soft);color:var(--text-faint);text-decoration:none;font-size:var(--fs-sm);line-height:1.5}.docs-toc a.sub{padding-left:24px}.docs-toc a:hover{color:var(--text)}.docs-toc a.active{color:var(--text);border-left-color:var(--accent)}@media (max-width:1150px){.docs-shell{grid-template-columns:200px minmax(0,1fr);gap:40px}.docs-toc{display:none}.toc-inline{display:block}}@media (max-width:1000px){.docs-shell{grid-template-columns:minmax(0,1fr);gap:0;padding-top:24px}.docs-side{display:none;position:static;max-height:none}.docs-side.open{display:block;padding:4px 0 8px;margin-bottom:20px;border-bottom:1px solid var(--border-soft)}.docs-side a{padding-top:8px;padding-bottom:8px}.docs-side-toggle{display:flex;justify-content:space-between;align-items:center;width:100%;margin-bottom:16px;padding:10px 0;min-height:44px;cursor:pointer;background:none;border:0;border-bottom:1px solid var(--border-soft);color:var(--text);font:inherit;font-size:var(--fs-sm)}}.cmdk-overlay{position:fixed;inset:0;z-index:300;display:grid;place-items:start center;padding-top:12vh;background:color-mix(in srgb,var(--bg) 78%,#0000)}.cmdk{width:min(640px,calc(100vw - 24px));background:var(--bg);border:1px solid var(--border);font-size:var(--fs-base)}.cmdk-inputrow{display:flex;align-items:center;gap:10px;padding:12px 14px;border-bottom:1px solid var(--border-soft)}.cmdk-prompt{color:var(--accent)}.cmdk-input{flex:1 1;min-width:0;background:none;border:0;outline:0;color:var(--text);font:inherit;font-size:var(--fs-base)}.cmdk-input::placeholder{color:var(--text-faint)}.cmdk-esc,.cmdk-foot kbd{border:1px solid var(--border);padding:0 5px;font-size:var(--fs-xs);color:var(--text-faint)}.cmdk-results{max-height:min(56vh,460px);overflow-y:auto;overscroll-behavior:contain;padding:4px 0}.cmdk-heading{padding:8px 14px 4px;font-size:var(--fs-sm);text-transform:lowercase;color:var(--text-faint)}.cmdk-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:16px;width:100%;padding:8px 14px;background:none;border:0;border-left:2px solid #0000;text-align:left;cursor:pointer;color:var(--text-dim)}.cmdk-item.sel{background:var(--bg-soft);border-left-color:var(--accent);color:var(--text)}.cmdk-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.cmdk-parent,.cmdk-section{color:var(--text-faint)}.cmdk-section{font-size:var(--fs-sm)}.cmdk-empty{padding:14px}.cmdk-empty,.cmdk-foot{color:var(--text-faint)}.cmdk-foot{display:flex;gap:18px;padding:8px 14px;border-top:1px solid var(--border-soft);font-size:var(--fs-xs)}.cmdk-foot kbd{margin-right:3px}@media (max-width:720px){.cmdk-overlay{padding-top:0;place-items:start stretch}.cmdk{width:100%;border-width:0 0 1px}.cmdk-results{max-height:70vh}.cmdk-foot{display:none}}.home{max-width:760px;padding:14px 24px 56px var(--gutter)}.home-logo{margin:0 0 12px}.home-logo .agentty-logo{margin:0;font-size:clamp(6px,1.6vw,10px)!important}.home h1{white-space:nowrap;font-size:var(--fs-lg);margin:0 0 6px}@media (max-width:560px){.home h1{white-space:normal;text-wrap:balance;line-height:1.45}}.home-head p{color:var(--text-dim);margin:0}.brand-mark{animation:cursor-blink 1.06s steps(1) infinite}@keyframes cursor-blink{50%{opacity:0}}.home h1 a{color:inherit;text-decoration:underline;text-decoration-color:var(--accent);text-decoration-thickness:2px;text-underline-offset:5px}.home h1 a:hover{color:var(--accent)}.home-demo{margin:12px 0 0}.home-demo,.home-info,.home-links{width:min(780px,calc(100vw - var(--gutter) - 16px))}.home-demo figcaption{margin-top:8px;color:var(--text-faint);font-size:var(--fs-sm)}.home-info{margin-top:16px}.home-facts{display:grid;grid-template-columns:9ch minmax(0,1fr);gap:12px 24px;margin:0;align-items:baseline}.home-facts dt{color:var(--text-faint)}.home-facts dd{margin:0;min-width:0;color:var(--text-dim);overflow-wrap:anywhere}.home-facts code,.home-facts kbd{font:inherit;color:var(--text)}.home-install{display:grid;grid-template-columns:minmax(0,1fr);gap:8px}.home-install>.install-meta{color:var(--text-faint);font-size:var(--fs-sm)}.install-meta a{color:var(--text-faint);text-decoration-color:var(--border)}.install-meta a.is-on{color:var(--text);text-decoration-color:var(--link-line)}.install-meta a:hover{color:var(--accent);text-decoration-color:var(--accent)}.home-links{display:flex;flex-wrap:wrap;align-items:baseline;gap:6px 22px;margin-top:28px;font-size:var(--fs-base)}.home-links a{color:var(--text);text-decoration:none}.home-links a:hover{color:var(--accent);text-decoration:underline}.home-license,.home-links a span{color:var(--text-faint)}.home-license{flex-basis:100%;margin-top:4px;font-size:var(--fs-sm)}.home-license a{color:var(--text-faint)}.home-license a:hover{color:var(--text)}.replay{position:relative;border:1px solid var(--border);background:var(--replay-bg);contain:layout style;isolation:isolate;--replay-bg:#100f0f;--replay-thumb:#403e3c;--replay-thumb-hover:#575653}html[data-theme=light] .replay{--replay-bg:#fffcf0;--replay-thumb:#cecdc3;--replay-thumb-hover:#b7b5ac}.replay-grid[data-for]:not([data-live]){display:none}html:not([data-theme=light]) .replay-grid[data-for=dark]:not([data-live]),html[data-theme=light] .replay-grid[data-for=light]:not([data-live]){display:block}.replay-screen{padding:16px 6px 16px 18px;overflow:hidden;container-type:inline-size}.replay-grid{--t:max(1px,.075em);--sb:12px;--cw:calc((100cqi - var(--sb)) / var(--cols));--rh:calc(var(--cw) * 2);font-family:var(--mono);font-size:calc(var(--cw) / .6);line-height:var(--rh);height:calc(var(--rows) * var(--rh));white-space:pre;letter-spacing:calc(.6em - 1ch);font-kerning:none;font-variant-ligatures:none;font-feature-settings:"liga" 0,"calt" 0,"kern" off,none;overflow-x:hidden;overflow-y:auto;overflow-anchor:none;overscroll-behavior-y:auto;scrollbar-gutter:stable;scrollbar-width:thin;scrollbar-color:var(--replay-thumb) #0000;contain:strict;outline:none}.replay-grid::-webkit-scrollbar{width:var(--sb)}.replay-grid::-webkit-scrollbar-thumb{background:var(--replay-thumb);border:3px solid var(--replay-bg);background-clip:padding-box}.replay-grid::-webkit-scrollbar-thumb:hover{background:var(--replay-thumb-hover);background-clip:padding-box}.replay-again{position:absolute;right:0;top:calc(100% + 8px);padding:0;cursor:pointer;background:none;border:0;color:var(--text-dim);font:inherit;font-size:var(--fs-sm)}.replay-again:hover{color:var(--accent)}@supports (width:round(down,1px,1px)){.replay-grid{--step:1px;--rh:round(calc(var(--cw) * 2),var(--step));--t:max(var(--step),round(calc(var(--cw) * .125),var(--step)))}@media (-webkit-min-device-pixel-ratio:2),(min-resolution:2dppx){.replay-grid{--step:.5px}}}.replay-grid>div{position:relative;height:var(--rh);contain:strict}.replay-grid>div:first-child{margin-top:calc(var(--skip, 0) * var(--rh) * -1)}.replay-grid span{position:absolute;top:0;height:100%;overflow:visible}@media (max-width:720px){.replay-screen{padding:8px 2px 8px 8px}.replay-grid{--sb:8px}.nav-cta,.nav-links{display:none}.nav-toggle{display:inline-flex}.docs-main h1,.page h1{font-size:18px}.cmdk-input{font-size:16px}.doc-body{line-height:1.75}.breadcrumb a,.edit-page a{display:inline-block;padding:6px 0}.home-links{gap:2px 18px}.home-links a{padding:10px 0}}@media (max-width:560px){.post-list li{grid-template-columns:minmax(0,1fr)}.post-list time{font-size:var(--fs-xs)}.home-facts{grid-template-columns:minmax(0,1fr);gap:2px 0}.home-facts dd{margin-bottom:12px}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}.mobile-util-theme{justify-content:flex-start}.mobile-util-theme .theme-toggle{margin-left:auto;color:var(--text)}@page{margin:18mm 16mm;@top-left{content:"AGENTTY(1)";font:9pt monospace}@top-right{content:"agentty.org";font:9pt monospace}@bottom-right{content:counter(page);font:9pt monospace}}@media print{.anchor,.breadcrumb,.codeblock-copy,.codeblock-head,.cta,.docnav,.docs-side,.docs-side-toggle,.docs-toc,.edit-page,.home-demo,.nav,.note:before,.page-actions,.related,.skip,.toc-inline{display:none!important}:root{--gutter:0px;--text:#000;--text-dim:#000;--text-faint:#444;--border:#888;--border-soft:#ccc;--bg-soft:#fff;--accent:#000}body,html{background:#fff;color:#000}body{font-size:10pt}.docs-shell,.page{display:block;padding:0;max-width:none}.doc-body h2,h1{text-transform:uppercase;font-size:10pt;letter-spacing:0}.codeblock,.doc-chunk>:not(h2),.lead{margin-left:7ch}.codeblock{background:none}.doc-body a.ext:after{content:" (" attr(href) ")"}:is(h2,h3){page-break-after:avoid;break-after:avoid}:is(pre,tr,.note){page-break-inside:avoid;break-inside:avoid}}.codeblock:not(.run) .codeblock-copy{opacity:0;background:var(--bg-soft)}.codeblock-copy:focus-visible,.codeblock:hover .codeblock-head .codeblock-copy{opacity:1}@media (hover:none){.codeblock-head .codeblock-copy{opacity:1}}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/886030b0b59bc5a7-s.woff2) format("woff2");unicode-range:u+0460-052f,u+1c80-1c8a,u+20b4,u+2de0-2dff,u+a640-a69f,u+fe2e-fe2f}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/0aa834ed78bf6d07-s.woff2) format("woff2");unicode-range:u+0301,u+0400-045f,u+0490-0491,u+04b0-04b1,u+2116}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/67957d42bae0796d-s.woff2) format("woff2");unicode-range:u+0370-0377,u+037a-037f,u+0384-038a,u+038c,u+038e-03a1,u+03a3-03ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/f911b923c6adde36-s.woff2) format("woff2");unicode-range:u+0102-0103,u+0110-0111,u+0128-0129,u+0168-0169,u+01a0-01a1,u+01af-01b0,u+0300-0301,u+0303-0304,u+0308-0309,u+0323,u+0329,u+1ea0-1ef9,u+20ab}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/939c4f875ee75fbb-s.woff2) format("woff2");unicode-range:u+0100-02ba,u+02bd-02c5,u+02c7-02cc,u+02ce-02d7,u+02dd-02ff,u+0304,u+0308,u+0329,u+1d00-1dbf,u+1e00-1e9f,u+1ef2-1eff,u+2020,u+20a0-20ab,u+20ad-20c4,u+2113,u+2c60-2c7f,u+a720-a7ff}@font-face{font-family:JetBrains Mono;font-style:normal;font-weight:100 800;font-display:swap;src:url(/_next/static/media/bb3ef058b751a6ad-s.p.woff2) format("woff2");unicode-range:u+00??,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:JetBrains Mono Fallback;src:local("Arial");ascent-override:75.79%;descent-override:22.29%;line-gap-override:0.00%;size-adjust:134.59%}.__className_4dc837{font-family:JetBrains Mono,JetBrains Mono Fallback,ui-monospace,SFMono-Regular,Menlo,Consolas,monospace;font-style:normal}.__variable_4dc837{--font-mono:"JetBrains Mono","JetBrains Mono Fallback",ui-monospace,SFMono-Regular,Menlo,Consolas,monospace}