.docs{--docs-gutter:var(--s7);grid-template-columns:var(--rail) minmax(0, 1fr);background:linear-gradient(var(--line) 0 0) calc(var(--rail) - 1px) 0 / 1px 100% no-repeat;flex:1;align-items:stretch;display:grid}.sidebar{top:var(--masthead);max-height:calc(100vh - var(--masthead));scrollbar-width:none;padding:var(--s6) 0 var(--s7);align-self:start;position:sticky;overflow-y:auto}.sidebar::-webkit-scrollbar{width:0;height:0;display:none}.sidebar-section{padding:0 var(--s5)}.sidebar-section+.sidebar-section{margin-top:var(--s5);padding-top:var(--s5);border-top:1px solid var(--line)}.sidebar-label{align-items:center;gap:var(--s2);color:var(--fg);display:flex}.sidebar-label a:hover{color:var(--fg-muted)}.sidebar-section ul{margin-top:var(--s2);list-style:none}.sidebar-section li a{padding:3px 0 3px var(--s4);color:var(--fg-muted);font-size:13.5px;transition:color .1s linear;display:block;position:relative}.sidebar-section li a:hover,.sidebar-section li a[aria-current=page]{color:var(--fg)}.sidebar-section li a[aria-current=page]:before{content:"";background:var(--select);clip-path:polygon(0 0,100% 50%,0 100%);width:6px;height:8px;position:absolute;top:50%;left:2px;translate:0 -50%}.sidebar-group{margin:var(--s2) 0 0 var(--s4)}.sidebar-group ul{margin-top:var(--s1);padding-left:var(--s2);border-left:1px solid var(--line);margin-left:3px}.sidebar-group li a{padding-left:var(--s4)}.sidebar-group>summary{cursor:pointer;font-family:var(--font-mono);color:var(--fg-faint);padding:3px 0;font-size:12px;list-style:none;transition:color .1s linear}.sidebar-group>summary::-webkit-details-marker{display:none}.sidebar-group>summary:before{content:"+";width:1.5ch;color:var(--fg-faint);display:inline-block}.sidebar-group[open]>summary:before{content:"−"}.sidebar-group>summary:hover{color:var(--fg)}.docs-body{padding:0 var(--docs-gutter) var(--s8);min-width:0}.docs-page{--docs-top:var(--s7);grid-template-columns:minmax(0,1fr);display:grid}.docs-page-with-rail{grid-template-columns:minmax(0, 1fr) var(--rail-right);column-gap:var(--docs-gutter)}.docs-page>.prose{padding-top:var(--docs-top);max-width:none}.docs-rail{margin-right:calc(-1 * var(--docs-gutter));padding:var(--docs-top) var(--s5) var(--s5);border-left:1px solid var(--line)}.toc{top:calc(var(--masthead) + var(--docs-top));max-height:calc(100vh - var(--masthead) - var(--docs-top) - var(--s5));scrollbar-width:none;position:sticky;overflow-y:auto}.toc ul{margin-top:var(--s3);list-style:none}.toc a{padding:3px 0 3px var(--s4);color:var(--fg-faint);font-size:12.5px;line-height:1.45;transition:color .1s linear;display:block;position:relative}.toc a:hover,.toc a[aria-current=location]{color:var(--fg)}.toc a[aria-current=location]:before{content:"";background:var(--select);width:6px;height:6px;position:absolute;top:.62em;left:0}.toc-nested a{padding-left:var(--s6)}.toc-nested a[aria-current=location]:before{left:var(--s4);width:4px;height:4px;top:.72em}.prose{max-width:var(--measure);font-size:15px;line-height:1.7}.prose>*+*{margin-top:var(--s4)}.prose h1{letter-spacing:-.035em;font-size:clamp(30px,3.2vw,40px);font-weight:500;line-height:1.1}.prose h2{margin-top:var(--s8);padding-top:var(--s5);border-top:1px solid var(--line);letter-spacing:-.02em;font-size:22px;font-weight:500;line-height:1.25}.prose h3{margin-top:var(--s6);letter-spacing:-.01em;font-size:16px;font-weight:600}.prose h4{margin-top:var(--s5);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-muted);font-size:12px;font-weight:400}.prose h2+*,.prose h3+*{margin-top:var(--s3)}.prose p,.prose li{color:var(--fg-muted)}.prose strong{color:var(--fg);font-weight:600}.prose a{color:var(--fg);text-decoration:underline;-webkit-text-decoration-color:var(--line-ink);text-decoration-color:var(--line-ink);text-underline-offset:3px;text-decoration-thickness:1px;transition:text-decoration-color .1s linear}.prose a:hover{-webkit-text-decoration-color:var(--select);text-decoration-color:var(--select)}.prose code{font-family:var(--font-mono);background:var(--bg-sunken);border:1px solid var(--line);color:var(--fg);padding:1px 5px;font-size:.86em}.prose pre{padding:var(--s4);background:var(--bg-sunken);border:1px solid var(--line);font-family:var(--font-mono);font-size:12.5px;line-height:1.6;overflow-x:auto}.prose pre code{font-size:inherit;background:0 0;border:0;padding:0}.prose ul,.prose ol{padding-left:var(--s5)}.prose li+li{margin-top:var(--s1)}.prose ul>li::marker{content:"–  ";color:var(--fg-faint)}.prose ol>li::marker{font-family:var(--font-mono);color:var(--fg-faint);font-size:12px}.prose blockquote{padding-left:var(--s4);border-left:2px solid var(--frame);color:var(--fg-muted)}.prose hr{height:7px;margin:var(--s7) 0;border:0;border-left:1px solid var(--frame);border-right:1px solid var(--frame);background:linear-gradient(var(--frame) 0 0) center / 100% 1px no-repeat}.prose table{border-collapse:collapse;width:100%;font-size:13.5px}.prose th,.prose td{padding:var(--s3) var(--s4) var(--s3) 0;border-bottom:1px solid var(--line);text-align:left;vertical-align:top}.prose td+td,.prose th+th{padding-left:var(--s4)}.prose th{border-bottom-color:var(--frame);font-family:var(--font-mono);letter-spacing:.06em;text-transform:uppercase;color:var(--fg-faint);font-size:11px;font-weight:400}.prose table:has(thead th:empty):not(:has(thead th:not(:empty))) td:first-child{color:var(--fg);font-weight:600}.prose thead th:empty{border:0;padding:0;line-height:0}.table-wrap{margin:var(--s5) 0;overflow-x:auto}.table-wrap>table{margin:0}.lede{margin-top:var(--s3);padding-bottom:var(--s5);border-bottom:1px solid var(--line);color:var(--fg-muted);font-size:17px;line-height:1.55}.page-head{justify-content:space-between;align-items:baseline;gap:var(--s4);display:flex}.page-head h1{flex:auto;min-width:0}.maturity{border:1px solid var(--frame);font-family:var(--font-mono);letter-spacing:.08em;text-transform:uppercase;white-space:nowrap;color:var(--fg-faint);flex:none;padding:1px 7px;font-size:10px}.maturity-stable{border-color:var(--line-ink);color:var(--fg-muted)}.maturity-draft{border-style:dashed}.maturity-unreleased{border-color:var(--danger);color:var(--danger)}.prereq,.version-switch{margin-top:var(--s3);letter-spacing:.04em;flex-wrap:wrap;align-items:center;gap:6px;font-size:11px;display:flex}.version-switch .label{margin-right:var(--s1)}.fact{border:1px solid var(--line);font-family:var(--font-mono);white-space:nowrap;color:var(--fg-muted);padding:1px 7px;font-size:11px}.fact-current{border-color:var(--select);color:var(--fg)}.prose a.fact-link,a.fact-link{color:var(--fg-muted);text-decoration:none;transition:border-color .1s linear,color .1s linear}a.fact-link:hover{border-color:var(--line-ink);color:var(--fg)}.migrator-band{justify-content:space-between;align-items:baseline;gap:var(--s4);margin:0 calc(-1 * var(--docs-gutter));padding:var(--s3) var(--docs-gutter);border-bottom:1px solid var(--line);background:var(--bg-sunken);grid-column:1/-1;transition:background-color .1s linear;display:flex}.migrator-band:hover{background:var(--bg)}.migrator-band .migrator-go{color:var(--fg-muted);text-align:right;font-size:13px}.migrator-band:hover .migrator-go{color:var(--fg)}.migrator-band:hover .arrow{translate:2px -2px}.heading{scroll-margin-top:calc(var(--masthead) + var(--s5));position:relative}.heading-anchor{margin-left:var(--s2);font-family:var(--font-mono);color:var(--fg-faint);opacity:0;font-size:.7em;font-weight:400;text-decoration:none;transition:opacity .1s steps(2,end)}.prose .heading-anchor{text-decoration:none}.heading:hover .heading-anchor,.heading-anchor:focus-visible{opacity:1}.heading-anchor:hover{color:var(--fg)}.code{margin:var(--s5) 0;position:relative}.prose .code pre{margin:0;padding-right:80px}.code-copy{top:var(--s2);right:var(--s2);border:1px solid var(--line);background:var(--bg);min-width:9ch;font-family:var(--font-mono);letter-spacing:.06em;text-align:center;color:var(--fg-faint);padding:2px 8px;font-size:10.5px;transition:color .1s linear,border-color .1s linear;position:absolute}.code-copy:hover{border-color:var(--line-ink);color:var(--fg)}.callout{margin:var(--s5) 0;padding:var(--s3) var(--s4);border:1px solid var(--line);border-left:2px solid var(--line-ink)}.callout-label{margin-bottom:var(--s2);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-muted);align-items:center;gap:6px;font-size:10.5px;display:flex}.callout-icon{flex:none}.callout-body>*+*{margin-top:var(--s3)}.callout-body p,.callout-body li{color:var(--fg-muted);font-size:14px}.callout-body strong{color:var(--fg)}.callout-tip{border-left-color:var(--frame)}.callout-warning{border-left-color:var(--select)}.callout-warning .callout-label{color:var(--fg)}.callout-caution{border-left-color:var(--danger)}.callout-caution .callout-label{color:var(--danger)}.tabs{margin:var(--s5) 0;border:1px solid var(--line)}.tabs-list{border-bottom:1px solid var(--line);display:flex}.tabs-tab{padding:var(--s2) var(--s4);border-right:1px solid var(--line);font-family:var(--font-mono);color:var(--fg-faint);font-size:11.5px;transition:color .1s linear;position:relative}.tabs-tab:hover,.tabs-tab-active{color:var(--fg)}.tabs-tab-active:after{content:"";background:var(--select);height:2px;position:absolute;bottom:-1px;left:0;right:0}.tabs-panel{padding:var(--s4)}.tabs-panel>:first-child{margin-top:0}.tabs-panel>:last-child{margin-bottom:0}.steps{counter-reset:step;margin:var(--s5) 0}.step{counter-increment:step;padding:0 0 var(--s5) var(--s7);position:relative}.step:before{content:counter(step, decimal-leading-zero);border:1px solid var(--frame);background:var(--bg);width:28px;height:22px;font-family:var(--font-mono);color:var(--fg-muted);place-items:center;font-size:10.5px;display:grid;position:absolute;top:0;left:0}.step:after{content:"";background:var(--line);width:1px;position:absolute;top:22px;bottom:0;left:14px}.step:last-child:after{display:none}.step-title{letter-spacing:-.01em;color:var(--fg);font-size:15px;font-weight:600}.step-body{margin-top:var(--s2)}.step-body>*+*{margin-top:var(--s3)}.step-body .code{margin:var(--s3) 0}.prose details{margin:var(--s4) 0;padding:var(--s3) var(--s4);border:1px solid var(--line)}.prose details>summary{cursor:pointer;font-family:var(--font-mono);color:var(--fg);font-size:12.5px;list-style:none}.prose details>summary::-webkit-details-marker{display:none}.prose details>summary:before{content:"[+] ";color:var(--fg-faint)}.prose details[open]>summary:before{content:"[−] "}.prose details>:not(summary){margin-top:var(--s3)}.docs-footer{margin-top:var(--s8);padding-top:var(--s4);border-top:1px solid var(--line)}.docs-source{align-items:baseline;gap:var(--s4);flex-wrap:wrap;display:flex}.docs-source-links{gap:var(--s4);flex-wrap:wrap;display:flex}.prose .docs-source-links a{font-family:var(--font-mono);color:var(--fg-muted);align-items:baseline;gap:4px;font-size:12px;text-decoration:none;display:inline-flex}.prose .docs-source-links a:hover{color:var(--fg)}.docs-nav{margin-top:var(--s5);border:1px solid var(--line);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.docs-nav>*{padding:var(--s4)}.docs-nav-next{border-left:1px solid var(--line);text-align:right}.prose .docs-nav a{text-decoration:none;display:block;position:relative}.prose .docs-nav a:before{content:"";pointer-events:none;opacity:0;--c:var(--select);--l:10px;background:linear-gradient(var(--c) 0 0) 0 0 / var(--l) 1px, linear-gradient(var(--c) 0 0) 0 0 / 1px var(--l), linear-gradient(var(--c) 0 0) 100% 0 / var(--l) 1px, linear-gradient(var(--c) 0 0) 100% 0 / 1px var(--l), linear-gradient(var(--c) 0 0) 0 100% / var(--l) 1px, linear-gradient(var(--c) 0 0) 0 100% / 1px var(--l), linear-gradient(var(--c) 0 0) 100% 100% / var(--l) 1px, linear-gradient(var(--c) 0 0) 100% 100% / 1px var(--l);background-repeat:no-repeat;transition:inset .12s steps(3,end),opacity 0s linear .12s;position:absolute;inset:-4px}.prose .docs-nav a:hover:before{opacity:1;transition:inset .12s steps(3,end),opacity;inset:6px}.docs-nav-title{color:var(--fg-muted);margin-top:2px;font-size:15px;transition:color .1s linear;display:block}.docs-nav a:hover .docs-nav-title{color:var(--fg)}.contents{margin:var(--s6) 0;border-top:1px solid var(--line)}.contents-group{padding:var(--s5) 0;border-bottom:1px solid var(--line)}.contents-head{justify-content:space-between;align-items:baseline;gap:var(--s3);display:flex}.contents-name{letter-spacing:-.015em;color:var(--fg);font-size:17px;font-weight:500}.contents-summary{max-width:60ch;margin-top:var(--s1);color:var(--fg-muted);font-size:14px}.contents-pages{margin-top:var(--s3);padding:0;list-style:none}.prose .contents-pages li+li{margin-top:2px}.prose .contents-pages a{color:var(--fg-muted);align-items:baseline;gap:5px;font-size:14px;text-decoration:none;transition:color .1s linear;display:inline-flex}.prose .contents-pages a:hover{color:var(--fg)}.contents-folder{margin-top:var(--s3)}.contents-folder .label{margin:0}.prose .contents-folder .label a{color:inherit;text-decoration:none}.prose .contents-folder .label a:hover{color:var(--fg)}.contents-folder .contents-pages{margin-top:var(--s2);padding-left:var(--s3);border-left:1px solid var(--line)}#where-to-start+.table-wrap table{gap:var(--s3);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}#where-to-start+.table-wrap thead{display:none}#where-to-start+.table-wrap tbody{display:contents}#where-to-start+.table-wrap tr{padding:var(--s4);border:1px solid var(--line);flex-direction:column;transition:border-color .1s linear;display:flex}#where-to-start+.table-wrap tr:hover{border-color:var(--line-ink)}#where-to-start+.table-wrap td{border:0;padding:0}#where-to-start+.table-wrap td:first-child a{color:var(--fg);font-weight:500}#where-to-start+.table-wrap td:last-child{margin-top:var(--s2);color:var(--fg-muted);font-size:13px}.term{border-bottom:1px dashed var(--line-ink);cursor:help;position:relative}.term-def{z-index:30;clip-path:inset(50%);white-space:nowrap;border:0;width:1px;height:1px;margin:0;padding:0;position:absolute;top:calc(100% + 6px);left:0;overflow:hidden}.term:hover .term-def,.term:focus .term-def,.term:focus-within .term-def{width:max-content;max-width:min(36ch,78vw);height:auto;padding:var(--s3);clip-path:none;white-space:normal;background:var(--bg);border:1px solid var(--frame);font-family:var(--font-sans);color:var(--fg-muted);text-align:left;font-size:13px;line-height:1.5;overflow:visible}.term-def-name{margin-bottom:var(--s1);font-family:var(--font-mono);letter-spacing:.1em;text-transform:uppercase;color:var(--fg-faint);font-size:10px;display:block}.term-def-see{margin-top:var(--s2);padding-top:var(--s2);border-top:1px solid var(--line);font-size:11.5px;display:block}.term-def-see a{color:var(--fg)}.glossary{counter-reset:term;margin:var(--s5) 0 0;border-top:1px solid var(--line)}.glossary-row{counter-increment:term;align-items:baseline;gap:var(--s4);padding:var(--s4) 0;border-bottom:1px solid var(--line);grid-template-columns:3ch minmax(0,11rem) minmax(0,1fr);display:grid}.glossary-row:before{content:counter(term, decimal-leading-zero);font-family:var(--font-mono);color:var(--fg-faint);font-size:10.5px;transition:color .1s linear}.glossary-row:hover:before{color:var(--fg)}.glossary-row dt{align-items:baseline;gap:var(--s2);letter-spacing:-.01em;color:var(--fg);scroll-margin-top:calc(var(--masthead) + var(--s5));flex-wrap:wrap;font-size:14px;font-weight:600;display:flex}.glossary-id{font-family:var(--font-mono);color:var(--fg-faint);font-size:10.5px;font-weight:400}.glossary-anchor{font-family:var(--font-mono);color:var(--fg-faint);opacity:0;font-size:11px;text-decoration:none;transition:opacity .1s steps(2,end)}.prose .glossary-anchor{text-decoration:none}.glossary-row:hover .glossary-anchor,.glossary-anchor:focus-visible{opacity:1}.glossary-anchor:hover{color:var(--fg)}.glossary-row dd{color:var(--fg-muted);margin:0;font-size:14px;line-height:1.6}.glossary-see{margin-top:var(--s3);padding-top:var(--s3);border-top:1px solid var(--line);font-family:var(--font-mono);color:var(--fg-faint);font-size:11.5px;display:block}.glossary-see-label{margin-right:var(--s2);letter-spacing:.1em;text-transform:uppercase;font-size:10px}.glossary-see a{color:var(--fg-muted)}.glossary-see a:hover{color:var(--fg)}.since{border:1px solid var(--line);font-family:var(--font-mono);letter-spacing:.04em;white-space:nowrap;vertical-align:1px;color:var(--fg-faint);margin-left:6px;padding:0 5px;font-size:10px;display:inline-block}@media (max-width:1100px){.docs-page-with-rail{grid-template-columns:minmax(0,1fr)}.docs-rail{display:none}}@media (max-width:860px){.docs{--docs-gutter:var(--s5);background:0 0;grid-template-columns:minmax(0,1fr)}.sidebar{max-height:none;padding:var(--s4) 0;border-bottom:1px solid var(--line);position:static}}@media (max-width:700px){.docs-nav{grid-template-columns:minmax(0,1fr)}.docs-nav-next{border-left:0;border-top:1px solid var(--line);text-align:left}.tabs-list{overflow-x:auto}.step{padding-left:var(--s6)}.glossary-row{gap:var(--s2);grid-template-columns:minmax(0,1fr)}.glossary-row:before{display:none}#where-to-start+.table-wrap table{grid-template-columns:minmax(0,1fr)}}
