.doc-progress{top:var(--header-h);z-index:49;pointer-events:none;height:2px;position:fixed;left:0;right:0}.doc-progress span{background:var(--grad-brand);transform-origin:0;will-change:transform;height:100%;display:block;transform:scaleX(0);box-shadow:0 0 12px #b38cff99}.doc-page{--doc:var(--accent);position:relative}.doc-hero{isolation:isolate;margin-top:calc(-1 * var(--header-h));padding:calc(var(--header-h) + clamp(48px, 7vw, 96px)) 0 clamp(52px, 6vw, 80px);position:relative;overflow:hidden}.doc-sky{z-index:-1;width:100%;height:100%;position:absolute;inset:0;-webkit-mask-image:radial-gradient(62% 95% at 78% 38%,#000 18%,#0000 78%);mask-image:radial-gradient(62% 95% at 78% 38%,#000 18%,#0000 78%)}.doc-grid{z-index:-2;opacity:.9;position:absolute;inset:0;-webkit-mask-image:radial-gradient(80% 90% at 50% 0,#000 10%,#0000 72%);mask-image:radial-gradient(80% 90% at 50% 0,#000 10%,#0000 72%)}.doc-glow-a{--glow:var(--doc);z-index:-3;opacity:.95;width:980px;height:680px;top:-360px;left:18%}.doc-glow-b{--glow:#ff7ac6;z-index:-3;opacity:.45;width:560px;height:520px;top:-260px;right:-140px}.doc-hero-line{background:linear-gradient(90deg, transparent 4%, color-mix(in srgb, var(--doc) 55%, transparent) 50%, transparent 96%);height:1px;position:absolute;bottom:0;left:0;right:0}.doc-hero-line:after{content:"";background:radial-gradient(ellipse at center, color-mix(in srgb, var(--doc) 22%, transparent), transparent 70%);height:28px;position:absolute;top:-14px;left:30%;right:30%}.doc-hero-inner{flex-direction:column;align-items:flex-start;gap:18px;display:flex;position:relative}.crumbs{color:var(--text-4);flex-wrap:wrap;align-items:center;gap:8px;margin-bottom:6px;font-size:12px;display:flex}.crumbs a{color:var(--text-3);transition:color var(--dur-1)}.crumbs a:hover{color:var(--text)}.crumbs [aria-current]{color:var(--text-2)}.doc-title{letter-spacing:-.045em;max-width:900px;padding-bottom:.08em;font-size:clamp(40px,6.2vw,76px);font-weight:620;line-height:1.02}.doc-lede{max-width:680px}.doc-meta{flex-wrap:wrap;gap:8px;margin-top:8px;list-style:none;display:flex}.doc-meta .chip{color:var(--text-3);backdrop-filter:blur(6px);background:#08090a8c}.doc-meta .dot{width:6px;height:6px}.doc-orbit{display:none}@media (width>=1100px){.doc-hero-inner>:not(.doc-orbit){max-width:min(760px,100% - 430px)}.doc-orbit{--oc:var(--doc);right:calc(var(--gutter) - 6px);width:400px;height:400px;margin-top:-196px;display:block;position:absolute;top:50%}}.doc-orbit:before{content:"";background:radial-gradient(circle, color-mix(in srgb, var(--oc) 13%, transparent), transparent 70%);transition:background var(--dur-3);border-radius:50%;position:absolute;inset:22%}.orbit-rings{width:100%;height:100%;position:absolute;inset:0;overflow:visible}.orbit-dash{transform-box:view-box;transform-origin:50%}.orbit-trail{will-change:transform;border-radius:50%;position:absolute;inset:15.5%}.orbit-trail:before{content:"";background:conic-gradient(from 0deg, transparent 0deg, transparent 250deg, color-mix(in srgb, var(--oc) 80%, transparent) 360deg);border-radius:50%;position:absolute;inset:0;-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - 2px),#000 calc(100% - 1.5px));mask:radial-gradient(farthest-side,#0000 calc(100% - 2px),#000 calc(100% - 1.5px))}.orbit-head{width:8px;height:8px;box-shadow:0 0 10px 2px var(--oc), 0 0 28px 6px color-mix(in srgb, var(--oc) 55%, transparent);background:#fff;border-radius:50%;margin:-4px 0 0 -4px;position:absolute;top:0;left:50%}.orbit-node{pointer-events:auto;width:0;height:0;position:absolute}.orbit-dot{width:12px;height:12px;box-shadow:inset 0 0 0 1.5px color-mix(in srgb, var(--oc) 70%, transparent), 0 0 0 4px #08090ae6;transition:transform .5s var(--ease-spring), background var(--dur-2), box-shadow var(--dur-2);background:#0e0f11;border-radius:50%;position:absolute;top:-6px;left:-6px}.orbit-dot:after{content:"";border-radius:50%;position:absolute;inset:-12px}.orbit-node.is-gate .orbit-dot{border-radius:3px;transform:rotate(45deg)}.orbit-node.is-on .orbit-dot{background:var(--oc);box-shadow:0 0 0 4px #08090ae6, 0 0 16px 2px var(--oc);transform:scale(1.35)}.orbit-node.is-gate.is-on .orbit-dot{transform:rotate(45deg)scale(1.35)}.orbit-node.is-past .orbit-dot{background:color-mix(in srgb, var(--oc) 35%, #0e0f11)}.orbit-label{white-space:nowrap;letter-spacing:.02em;color:var(--text-4);transition:color var(--dur-2), text-shadow var(--dur-2), transform var(--dur-2) var(--ease-out);font-size:11px;position:absolute}.side-r .orbit-label{top:-9px;left:16px}.side-l .orbit-label{top:-9px;right:16px}.side-t .orbit-label{bottom:14px;left:0;transform:translate(-50%)}.side-b .orbit-label{top:14px;left:0;transform:translate(-50%)}.orbit-node.is-past .orbit-label{color:var(--text-3)}.orbit-node.is-on .orbit-label{color:var(--text);text-shadow:0 0 16px color-mix(in srgb, var(--oc) 70%, transparent)}.orbit-node:hover .orbit-label{color:var(--text-2)}.orbit-core{text-align:center;flex-direction:column;align-items:center;gap:4px;width:184px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.orbit-kicker{white-space:nowrap;letter-spacing:.1em;text-transform:uppercase;color:var(--text-4);margin-bottom:4px;font-size:10px}.orbit-title{letter-spacing:-.03em;color:var(--text);font-size:24px;font-weight:600;line-height:1.15}.orbit-who{color:var(--oc);text-shadow:0 0 12px color-mix(in srgb, var(--oc) 50%, transparent);font-size:11px}.orbit-caption{min-height:3.2em;color:var(--text-3);margin-top:4px;font-size:12.5px;line-height:1.5}.orbit-core.is-swap .orbit-title,.orbit-core.is-swap .orbit-who,.orbit-core.is-swap .orbit-caption{animation:orbit-swap .52s var(--ease-out) both}.orbit-core.is-swap .orbit-who{animation-delay:40ms}.orbit-core.is-swap .orbit-caption{animation-delay:80ms}@keyframes orbit-swap{0%{opacity:0;filter:blur(4px);transform:translateY(6px)}to{opacity:1;filter:none;transform:none}}.doc-body{grid-template-columns:208px minmax(0,1fr) 188px;gap:48px;padding-top:clamp(40px,5vw,64px);padding-bottom:clamp(72px,9vw,120px);display:grid}.doc-main{width:100%;min-width:0;max-width:720px;margin-inline:auto}.doc-nav{top:calc(var(--header-h) + 28px);max-height:calc(100vh - var(--header-h) - 48px);scrollbar-width:none;align-self:start;padding-bottom:12px;position:sticky;overflow-y:auto}.doc-nav::-webkit-scrollbar{display:none}.nav-heading{letter-spacing:.1em;text-transform:uppercase;color:var(--text-4);margin:0 0 10px 10px;font-size:10.5px;font-weight:500}.nav-list{flex-direction:column;gap:2px;list-style:none;display:flex}.nav-home-pill{display:none}.nav-item{color:var(--text-3);transition:background var(--dur-2) var(--ease-out), color var(--dur-1), transform var(--dur-1) var(--ease-out);border-radius:10px;grid-template-columns:28px minmax(0,1fr) auto;align-items:start;gap:10px;padding:8px 10px 8px 8px;display:grid;position:relative}.nav-item:before{content:"";background:var(--ic,var(--accent));width:2px;box-shadow:0 0 12px var(--ic,var(--accent)), 0 0 2px var(--ic,var(--accent));opacity:0;transition:opacity var(--dur-2) var(--ease-out), transform var(--dur-2) var(--ease-spring);border-radius:2px;position:absolute;top:10px;bottom:10px;left:-1px;transform:scaleY(.3)}.nav-icon{width:28px;height:28px;color:var(--text-3);box-shadow:inset 0 0 0 1px var(--border), 0 1px 0 #ffffff0a inset;transition:color var(--dur-2), background var(--dur-2), box-shadow var(--dur-2), transform var(--dur-2) var(--ease-spring);background:#ffffff08;border-radius:8px;place-items:center;display:grid}.nav-text{flex-direction:column;gap:2px;min-width:0;padding-top:4px;display:flex}.nav-label{color:var(--text-2);transition:color var(--dur-1);font-size:13.5px;font-weight:500;line-height:1.35}.nav-blurb{color:var(--text-4);font-size:12px;line-height:1.45;display:none}.nav-num{color:var(--text-4);opacity:.7;padding-top:6px;font-size:10.5px}.nav-item:hover{background:#ffffff09}.nav-item:hover .nav-label{color:var(--text)}.nav-item:hover .nav-icon{color:var(--ic);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--ic) 35%, transparent);transform:scale(1.06)}.nav-item:active{transform:scale(.98)}.nav-item[aria-current=page]{background:linear-gradient(90deg, color-mix(in srgb, var(--ic) 11%, transparent), #ffffff04 85%);box-shadow:inset 0 0 0 1px #ffffff0d}.nav-item[aria-current=page]:before{opacity:1;transform:none}.nav-item[aria-current=page] .nav-label{color:var(--text)}.nav-item[aria-current=page] .nav-blurb{display:block}.nav-item[aria-current=page] .nav-num{color:var(--ic);opacity:1}.nav-item[aria-current=page] .nav-icon{color:var(--ic);background:color-mix(in srgb, var(--ic) 14%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--ic) 40%, transparent), 0 0 18px color-mix(in srgb, var(--ic) 28%, transparent)}.nav-explore-h{margin-top:28px}.nav-explore{flex-direction:column;gap:1px;list-style:none;display:flex}.nav-explore a{color:var(--text-3);transition:color var(--dur-1), background var(--dur-1);border-radius:8px;align-items:center;gap:10px;padding:6px 10px;font-size:13px;display:flex}.explore-dot{background:var(--text-4);width:5px;height:5px;transition:background var(--dur-2), box-shadow var(--dur-2), transform var(--dur-2) var(--ease-spring);border-radius:50%;margin-inline:2px 4px}.nav-explore a:hover{color:var(--text);background:#ffffff08}.nav-explore a:hover .explore-dot{background:var(--accent-2);box-shadow:0 0 10px var(--accent-2);transform:scale(1.4)}.back-home{height:34px;color:var(--text-3);box-shadow:inset 0 0 0 1px var(--border-strong);transition:color var(--dur-1), background var(--dur-2), box-shadow var(--dur-2), transform var(--dur-1);background:#ffffff06;border-radius:999px;align-items:center;gap:8px;margin:24px 0 0 2px;padding:0 14px 0 11px;font-size:13px;display:inline-flex}.back-home svg{transition:transform var(--dur-2) var(--ease-out)}.back-home:hover{color:var(--text);box-shadow:inset 0 0 0 1px var(--border-bright);background:#ffffff0f}.back-home:hover svg{transform:translate(-3px)}.back-home:active{transform:scale(.97)}.doc-toc{min-width:0}.toc-inner{top:calc(var(--header-h) + 28px);max-height:calc(100vh - var(--header-h) - 48px);scrollbar-width:none;position:sticky;overflow-y:auto}.toc-inner::-webkit-scrollbar{display:none}.toc-inner .nav-heading{margin-left:0}.toc-track{box-shadow:inset 1px 0 0 var(--border);padding-left:14px;position:relative}.toc-indicator{background:var(--doc);width:2px;height:24px;box-shadow:0 0 10px var(--doc), 0 0 2px var(--doc);opacity:0;transition:transform .42s var(--ease-out), height .42s var(--ease-out), opacity var(--dur-2);border-radius:2px;position:absolute;top:0;left:0}.toc-list{flex-direction:column;list-style:none;display:flex}.toc-item a{color:var(--text-4);transition:color var(--dur-1), transform var(--dur-2) var(--ease-out);padding:5px 0;font-size:13px;line-height:1.4;display:block}.toc-d3 a{padding-left:12px;font-size:12.5px}.toc-item a:hover{color:var(--text-2);transform:translate(2px)}.toc-item a[aria-current]{color:var(--text)}.toc-foot{align-items:center;gap:10px;margin-top:22px;display:flex}.toc-meter{background:var(--border);border-radius:2px;flex:1;height:2px;overflow:hidden}.toc-meter span{background:linear-gradient(90deg, color-mix(in srgb, var(--doc) 40%, transparent), var(--doc));transform-origin:0;height:100%;display:block;transform:scaleX(0)}.toc-pct{color:var(--text-4);text-align:right;min-width:56px;font-size:10.5px}.toc-top{color:var(--text-3);transition:color var(--dur-1);align-items:center;gap:6px;margin-top:12px;padding:4px 0;font-size:12.5px;display:inline-flex}.toc-top svg{transition:transform var(--dur-2) var(--ease-spring)}.toc-top:hover{color:var(--text)}.toc-top:hover svg{transform:translateY(-2px)}.prose{color:var(--text-2);counter-reset:doc-h2;font-size:16.5px;line-height:1.75}.prose>*+*{margin-top:1.15em}.prose strong{color:var(--text);font-weight:600}.prose em{color:var(--text)}.prose .ph{scroll-margin-top:24px;position:relative}.prose h2{--pt:0px;padding-top:var(--pt);letter-spacing:-.032em;color:var(--text);counter-increment:doc-h2;margin-top:4rem;font-size:clamp(26px,2.6vw,32px);font-weight:600;line-height:1.15}.prose h2:not(:first-child){--pt:3rem;margin-top:3.4rem}.prose h2:not(:first-child):after{content:"";background:linear-gradient(90deg, var(--border-strong), #ffffff0a 60%, transparent);height:1px;position:absolute;top:0;left:0;right:0}.prose h2:first-child{margin-top:0}.prose h2:before{content:counter(doc-h2, decimal-leading-zero);height:16px;font-family:var(--mono);letter-spacing:.06em;color:var(--doc);text-shadow:0 0 14px color-mix(in srgb, var(--doc) 60%, transparent);margin-bottom:14px;font-size:11.5px;font-weight:500;line-height:16px;display:block}.prose h2 .ph-text{background:var(--grad-text);color:#0000;-webkit-box-decoration-break:clone;box-decoration-break:clone;-webkit-background-clip:text;background-clip:text}.prose h3{letter-spacing:-.018em;color:var(--text);margin-top:2.6rem;font-size:19px;font-weight:590;line-height:1.3}.prose h2+*,.prose h3+*{margin-top:.9em}.h-anchor{width:24px;height:24px;color:var(--text-4);opacity:0;transition:opacity var(--dur-1), transform var(--dur-2) var(--ease-out), color var(--dur-1), background var(--dur-1);border-radius:6px;place-items:center;display:grid;position:absolute;left:-32px;transform:translate(4px)}.prose h2 .h-anchor{top:calc(var(--pt) + 30px + 5px)}.prose h3 .h-anchor{top:0}.prose .ph:hover .h-anchor,.h-anchor:focus-visible{opacity:1;transform:none}.h-anchor:hover{color:var(--doc);background:#ffffff0d}.h-anchor:active{transform:scale(.92)}.prose a:not(.h-anchor){color:var(--text);background-image:linear-gradient(90deg, color-mix(in srgb, var(--doc) 85%, white), color-mix(in srgb, var(--doc) 60%, transparent));transition:background-size var(--dur-2) var(--ease-out), color var(--dur-1), text-shadow var(--dur-2);background-position:0 100%;background-repeat:no-repeat;background-size:100% 1px;padding-bottom:1px;font-weight:500}.prose a:not(.h-anchor):hover{color:#fff;text-shadow:0 0 18px color-mix(in srgb, var(--doc) 70%, transparent);background-size:100% 2px}.prose ul,.prose ol{padding:0;list-style:none}.prose li{position:relative}.prose li+li{margin-top:.55em}.prose ul>li{padding-left:26px}.prose ul>li:before{content:"";background:color-mix(in srgb, var(--doc) 85%, white);width:6px;height:6px;box-shadow:0 0 10px color-mix(in srgb, var(--doc) 70%, transparent);border-radius:1.5px;position:absolute;top:calc(.875em - 3px);left:6px;transform:rotate(45deg)}.prose ol{counter-reset:doc-li}.prose ol>li{counter-increment:doc-li;padding-left:40px}.prose ol>li:before{content:counter(doc-li);width:24px;height:24px;font-family:var(--mono);color:color-mix(in srgb, var(--doc) 75%, white);background:color-mix(in srgb, var(--doc) 11%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--doc) 32%, transparent);border-radius:7px;place-items:center;font-size:11.5px;font-weight:500;display:grid;position:absolute;top:calc(.875em - 12px);left:0}.prose li>ul,.prose li>ol{margin-top:.55em}.prose p.lead{padding-left:18px;position:relative}.prose p.lead:before{content:"";background:linear-gradient(180deg, var(--doc), transparent);opacity:.8;border-radius:2px;width:2px;position:absolute;top:.4em;bottom:.4em;left:0}.prose blockquote{letter-spacing:-.012em;color:var(--text);background:radial-gradient(120% 140% at 0% 0%, color-mix(in srgb, var(--doc) 12%, transparent), transparent 60%), #ffffff05;box-shadow:inset 0 0 0 1px var(--border), 0 1px 0 #ffffff0d inset;border-radius:14px;margin:2em 0;padding:22px 56px 22px 28px;font-size:clamp(18px,1.7vw,20px);font-weight:500;line-height:1.5;position:relative;overflow:hidden}.prose blockquote:before{content:"";background:linear-gradient(#7c74ff 0%,#b38cff 38%,#ff7ac6 72%,#ffb35c 100%);width:3px;position:absolute;top:0;bottom:0;left:0;box-shadow:0 0 18px #b38cff8c}.prose blockquote:after{content:"";opacity:.22;background:currentColor;width:26px;height:26px;position:absolute;top:18px;right:18px;-webkit-mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M4 18v-5.5C4 8.4 6 6 9.5 5l.8 1.6C8.3 7.4 7.4 8.8 7.3 11H10v7zm9.5 0v-5.5c0-4.1 2-6.5 5.5-7.5l.8 1.6c-2 .8-2.9 2.2-3 4.4h2.7v7z'/></svg>") 50%/contain no-repeat;mask:url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'><path d='M4 18v-5.5C4 8.4 6 6 9.5 5l.8 1.6C8.3 7.4 7.4 8.8 7.3 11H10v7zm9.5 0v-5.5c0-4.1 2-6.5 5.5-7.5l.8 1.6c-2 .8-2.9 2.2-3 4.4h2.7v7z'/></svg>") 50%/contain no-repeat}.prose blockquote p+p{margin-top:.6em}.prose :not(pre)>code{color:#d9d5ff;white-space:nowrap;background:#7c74ff17;border-radius:6px;padding:.14em .42em;font-size:.84em;box-shadow:inset 0 0 0 1px #7c74ff33}.prose .code-frame{--tok-fg:var(--text-2);--tok-punct:var(--text-3);--tok-comment:var(--text-4);--tok-key:color-mix(in srgb, var(--c-architect) 84%, #fff);--tok-string:color-mix(in srgb, var(--c-tester) 80%, #fff);--tok-number:color-mix(in srgb, var(--c-reviewer) 84%, #fff);--tok-keyword:color-mix(in srgb, var(--c-steward) 88%, #fff);--tok-fn:color-mix(in srgb, var(--c-shaper) 84%, #fff);--tok-heading:color-mix(in srgb, var(--doc) 70%, #fff);--tok-fm:color-mix(in srgb, var(--c-architect) 40%, var(--text));--fm-c:var(--c-architect);--fm-rail:color-mix(in srgb, var(--fm-c) 75%, transparent);--fm-line:color-mix(in srgb, var(--fm-c) 22%, transparent);--astro-code-foreground:var(--tok-fg);--astro-code-background:transparent;--astro-code-token-keyword:var(--tok-key);--astro-code-token-string-expression:var(--tok-string);--astro-code-token-string:var(--tok-string);--astro-code-token-link:var(--tok-string);--astro-code-token-constant:var(--tok-number);--astro-code-token-comment:var(--tok-comment);--astro-code-token-function:var(--tok-fn);--astro-code-token-parameter:var(--tok-fg);--astro-code-token-punctuation:var(--tok-punct);--astro-code-token-inserted:var(--tok-string);--astro-code-token-deleted:var(--danger);--astro-code-token-changed:var(--tok-number);box-shadow:inset 0 0 0 1px var(--border-strong), 0 1px 0 #ffffff12 inset, 0 24px 56px #00000073;transition:box-shadow var(--dur-2) var(--ease-out);background:linear-gradient(#141518eb,#0b0c0ef7);border-radius:14px;margin:1.8em 0;position:relative;overflow:hidden}.prose .code-frame:before{content:"";background:linear-gradient(90deg, transparent, color-mix(in srgb, var(--doc) 70%, white), transparent);opacity:.45;height:1px;transition:opacity var(--dur-2);position:absolute;top:0;left:12%;right:12%}.prose .code-frame:hover{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--doc) 28%, var(--border-strong)), 0 1px 0 #ffffff12 inset, 0 24px 56px #00000073, 0 0 40px color-mix(in srgb, var(--doc) 9%, transparent)}.prose .code-frame:hover:before{opacity:.9}.code-bar{border-bottom:1px solid var(--border);background:#ffffff04;align-items:center;gap:12px;height:38px;padding:0 8px 0 14px;display:flex}.code-lights{gap:6px;display:flex}.code-lights i{width:9px;height:9px;transition:background var(--dur-2) var(--ease-out);background:#ffffff1f;border-radius:50%}.code-frame:hover .code-lights i:first-child{background:#ff5f57cc}.code-frame:hover .code-lights i:nth-child(2){background:#febc2ecc;transition-delay:40ms}.code-frame:hover .code-lights i:nth-child(3){background:#28c840cc;transition-delay:80ms}.code-lang{font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-4);flex:1;align-items:center;gap:8px;font-size:10.5px;display:inline-flex}.code-lang:before{content:"";background:var(--doc);width:5px;height:5px;box-shadow:0 0 8px var(--doc);border-radius:50%}.code-copy{height:26px;color:var(--text-3);transition:color var(--dur-1), background var(--dur-1), transform var(--dur-1);border-radius:7px;align-items:center;gap:6px;padding:0 10px;font-size:12px;display:inline-flex}.code-copy:hover{color:var(--text);background:#ffffff0f}.code-copy:active{transform:scale(.95)}.code-copy .i-check{display:none}.code-copy.is-done{color:var(--ok)}.code-copy.is-done .i-copy{display:none}.code-copy.is-done .i-check{animation:doc-pop .42s var(--ease-spring);display:block}@keyframes doc-pop{0%{transform:scale(.4)}to{transform:scale(1)}}.prose .code-frame pre{--pad-x:20px;--pad-y:18px;--fs:12.5px;padding:var(--pad-y) 0 calc(var(--pad-y) + 2px);font-size:var(--fs);tab-size:2;scrollbar-width:thin;scrollbar-color:#ffffff1f transparent;margin:0 1px;line-height:1.7;overflow-x:auto;color:var(--tok-fg)!important;background:0 0!important}.prose .code-frame pre:focus-visible{box-shadow:inset 0 0 0 2px var(--accent);outline:none}.prose .code-frame code{counter-reset:doc-line;width:max-content;min-width:100%;display:block}.prose .code-frame .line{min-width:100%;padding-inline:var(--pad-x);display:inline-block}.prose .code-frame[data-lang=markdown] .line:before,.prose .code-frame[data-lang=yaml] .line:before{counter-increment:doc-line;content:counter(doc-line);text-align:right;color:#ffffff29;user-select:none;width:2ch;margin-right:18px;font-weight:400;display:inline-block}.prose .code-frame pre span[style*=\#e6edf3 i],.prose .code-frame pre span[style*=\#f0f6fc i]{color:var(--tok-fg)!important}.prose .code-frame pre span[style*=\#8b949e i]{color:var(--tok-comment)!important}.prose .code-frame pre span[style*=\#7ee787 i]{color:var(--tok-key)!important}.prose .code-frame pre span[style*=\#a5d6ff i]{color:var(--tok-string)!important}.prose .code-frame pre span[style*=\#79c0ff i],.prose .code-frame pre span[style*=\#ffa657 i]{color:var(--tok-number)!important}.prose .code-frame pre span[style*=\#ff7b72 i]{color:var(--tok-keyword)!important}.prose .code-frame pre span[style*=\#d2a8ff i]{color:var(--tok-fn)!important}.prose .code-frame pre span[style*=\#ffa198 i]{color:var(--danger)!important}.prose .code-frame pre span[style*=\#79c0ff i][style*=bold i]{color:var(--tok-heading)!important}.prose .code-frame[data-lang=yaml] pre span[style*=\#e6edf3 i]{color:var(--tok-punct)!important}.prose .code-frame[data-lang=markdown] code:has(>.line:first-child>span:only-child[style*=bold i])>.line:not(.line:nth-child(n+2):has(>span[style*=bold i])~.line),.prose .code-frame[data-lang=markdown] code:has(>.line:first-child>span:only-child:is([style*=\#e6edf3 i],[style*=astro-code-foreground])):has(>.line:nth-child(2)>span:first-child:is([style*=\#7ee787 i],[style*=token-keyword]))>.line:not(.line:nth-child(n+2):has(>span:only-child:is([style*=\#e6edf3 i],[style*=astro-code-foreground]))~.line){background:linear-gradient(90deg, color-mix(in srgb, var(--fm-c) 10%, transparent), color-mix(in srgb, var(--fm-c) 4%, transparent) 55%, color-mix(in srgb, var(--fm-c) 2%, transparent));box-shadow:inset 2px 0 0 var(--fm-rail)}.prose .code-frame[data-lang=markdown] code:has(>.line:first-child>span:only-child[style*=bold i])>.line:not(.line:nth-child(n+2):has(>span[style*=bold i])~.line) span{color:var(--tok-fm)!important}.prose .code-frame[data-lang=markdown] code:has(>.line:first-child>span:only-child:is([style*=\#e6edf3 i],[style*=astro-code-foreground])):has(>.line:nth-child(2)>span:first-child:is([style*=\#7ee787 i],[style*=token-keyword]))>.line:not(.line:nth-child(n+2):has(>span:only-child:is([style*=\#e6edf3 i],[style*=astro-code-foreground]))~.line) span:is([style*=\#e6edf3 i],[style*=astro-code-foreground]){color:var(--tok-punct)!important}.prose .code-frame[data-lang=markdown] code:has(>.line:first-child>span:only-child[style*=bold i])>.line:not(.line:nth-child(n+2):has(>span[style*=bold i])~.line):has(>span[style*=bold i]) span,.prose .code-frame[data-lang=markdown] code:has(>.line:first-child>span:only-child:is([style*=\#e6edf3 i],[style*=astro-code-foreground])):has(>.line:nth-child(2)>span:first-child:is([style*=\#7ee787 i],[style*=token-keyword]))>.line:not(.line:nth-child(n+2):has(>span:only-child:is([style*=\#e6edf3 i],[style*=astro-code-foreground]))~.line):has(>span:only-child:is([style*=\#e6edf3 i],[style*=astro-code-foreground])) span{color:var(--text-4)!important;font-weight:400!important}.prose .code-frame[data-lang=markdown] code:has(>.line:first-child>span:only-child[style*=bold i])>.line:not(.line:nth-child(n+2):has(>span[style*=bold i])~.line):first-child,.prose .code-frame[data-lang=markdown] code:has(>.line:first-child>span:only-child:is([style*=\#e6edf3 i],[style*=astro-code-foreground])):has(>.line:nth-child(2)>span:first-child:is([style*=\#7ee787 i],[style*=token-keyword]))>.line:not(.line:nth-child(n+2):has(>span:only-child:is([style*=\#e6edf3 i],[style*=astro-code-foreground]))~.line):first-child{box-shadow:inset 2px 0 0 var(--fm-rail), inset 0 1px 0 var(--fm-line);padding-top:4px}.prose .code-frame[data-lang=markdown] code:has(>.line:first-child>span:only-child[style*=bold i])>.line:nth-child(n+2):has(>span[style*=bold i]):not(.line:nth-child(n+2):has(>span[style*=bold i])~.line),.prose .code-frame[data-lang=markdown] code:has(>.line:first-child>span:only-child:is([style*=\#e6edf3 i],[style*=astro-code-foreground])):has(>.line:nth-child(2)>span:first-child:is([style*=\#7ee787 i],[style*=token-keyword]))>.line:nth-child(n+2):has(>span:only-child:is([style*=\#e6edf3 i],[style*=astro-code-foreground])):not(.line:nth-child(n+2):has(>span:only-child:is([style*=\#e6edf3 i],[style*=astro-code-foreground]))~.line){box-shadow:inset 2px 0 0 var(--fm-rail), inset 0 -1px 0 var(--fm-line);padding-bottom:4px}.prose .code-frame[data-lang=markdown] code:has(>.line:first-child>span:only-child[style*=bold i])>.line:first-child:after,.prose .code-frame[data-lang=markdown] code:has(>.line:first-child>span:only-child:is([style*=\#e6edf3 i],[style*=astro-code-foreground])):has(>.line:nth-child(2)>span:first-child:is([style*=\#7ee787 i],[style*=token-keyword]))>.line:first-child:after{content:"frontmatter";right:calc(var(--pad-x) + 1px);top:calc(38px + var(--pad-y) + 4px + .85 * var(--fs));letter-spacing:.12em;text-transform:uppercase;color:color-mix(in srgb, var(--fm-c) 70%, var(--text-4));user-select:none;pointer-events:none;font-size:9.5px;line-height:1;position:absolute;transform:translateY(-50%)}.prose .table-wrap{border:1px solid var(--border);scrollbar-width:thin;scrollbar-color:#ffffff1f transparent;background:linear-gradient(#ffffff08,#ffffff02);border-radius:14px;margin:1.8em 0;overflow-x:auto;box-shadow:inset 0 1px #ffffff0a,0 16px 40px #0000004d}.prose .table-wrap:focus-visible{outline-offset:2px}.prose table{border-collapse:separate;border-spacing:0;width:100%;min-width:540px;font-size:14px;line-height:1.55}.prose th{text-align:left;white-space:nowrap;font-family:var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--text-3);border-bottom:1px solid var(--border);background:#ffffff06;padding:12px 16px;font-size:10.5px;font-weight:500}.prose td{vertical-align:top;color:var(--text-3);transition:background var(--dur-1);padding:13px 16px}.prose tbody tr+tr td{border-top:1px solid #ffffff0d}.prose td:first-child{color:var(--text);white-space:nowrap;font-weight:500}.prose tbody tr:hover td{background:#ffffff06}.prose td strong{color:var(--text)}.prose tr.row-gate td{color:var(--text-2);background:linear-gradient(90deg,#7c74ff1a,#7c74ff05)}.prose tr.row-gate td:first-child{position:relative}.prose tr.row-gate td:first-child:before{content:"";background:#fff;border-radius:2px;width:2px;position:absolute;top:8px;bottom:8px;left:0;box-shadow:0 0 10px #ffffffb3}.prose tr.row-gate td:last-child{border-radius:0}.prose tr.row-gate:hover td{background:linear-gradient(90deg,#7c74ff24,#7c74ff0a)}.prose hr{background:linear-gradient(90deg, transparent, var(--border-strong), transparent);border:0;height:1px;margin:3em 0}.doc-foot{border-top:1px solid var(--border);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-top:72px;padding-top:20px;font-size:13px;display:flex}.foot-link{color:var(--text-3);transition:color var(--dur-1);align-items:center;gap:7px;display:inline-flex}.foot-link:hover{color:var(--text)}.pager{grid-template-columns:1fr 1fr;gap:14px;margin-top:28px;display:grid}.pager-card{transition:transform var(--dur-2) var(--ease-out), box-shadow var(--dur-2) var(--ease-out);border-radius:16px;flex-direction:column;gap:6px;padding:22px 24px 24px;display:flex}.pager-card:hover{box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--pcol) 30%, var(--border)), 0 18px 44px #00000073, 0 0 36px color-mix(in srgb, var(--pcol) 10%, transparent);transform:translateY(-2px)}.pager-card:active{transform:translateY(0)scale(.985)}.pager-next{text-align:right;align-items:flex-end}.pager-dir{letter-spacing:.1em;text-transform:uppercase;color:var(--text-4);transition:color var(--dur-2);align-items:center;gap:6px;font-size:10.5px;display:inline-flex}.pager-dir svg{transition:transform var(--dur-2) var(--ease-out)}.pager-card:hover .pager-dir{color:var(--pcol)}.pager-card:hover .pager-dir svg{transform:translate(-3px)}.pager-next:hover .pager-dir svg{transform:translate(3px)}.pager-title{letter-spacing:-.02em;color:var(--text);margin-top:6px;font-size:18px;font-weight:590}.pager-blurb{color:var(--text-3);font-size:13.5px;line-height:1.5}.doc-toast{z-index:80;color:var(--text);-webkit-backdrop-filter:blur(12px);box-shadow:inset 0 0 0 1px var(--border-strong), 0 16px 40px #00000080;opacity:0;pointer-events:none;transition:opacity var(--dur-2) var(--ease-out), transform var(--dur-2) var(--ease-spring);background:#1b1c20eb;border-radius:999px;padding:9px 16px;font-size:13px;font-weight:500;position:fixed;bottom:28px;left:50%;transform:translate(-50%,12px)scale(.96)}.doc-toast.is-on{opacity:1;transform:translate(-50%)scale(1)}@media (width<=1180px){.doc-body{grid-template-columns:200px minmax(0,1fr);gap:48px}.doc-toc{display:none}}@media (width<=900px){.doc-body{grid-template-columns:minmax(0,1fr);gap:0;padding-top:0}.doc-nav{top:var(--header-h);z-index:30;max-height:none;margin-inline:calc(-1 * var(--gutter));-webkit-backdrop-filter:saturate(1.5)blur(14px);box-shadow:0 1px 0 var(--border);background:#08090aeb;padding:10px 0;position:sticky;overflow:visible}.doc-nav .nav-heading,.nav-explore,.back-home{display:none}.nav-list{padding-inline:var(--gutter);scrollbar-width:none;-webkit-mask-image:linear-gradient(90deg, transparent 0, #000 var(--gutter), #000 calc(100% - 28px), transparent);mask-image:linear-gradient(90deg, transparent 0, #000 var(--gutter), #000 calc(100% - 28px), transparent);flex-direction:row;gap:6px;overflow-x:auto}.nav-list::-webkit-scrollbar{display:none}.nav-list>li{flex-shrink:0}.nav-home-pill{display:block}.nav-item{white-space:nowrap;height:34px;box-shadow:inset 0 0 0 1px var(--border-strong);background:#ffffff06;border-radius:999px;grid-template-columns:auto auto;align-items:center;gap:8px;padding:0 13px 0 5px}.nav-item:before{display:none}.nav-icon{border-radius:999px;width:24px;height:24px}.nav-icon svg{width:13px;height:13px}.nav-text{padding-top:0}.nav-label{font-size:13px}.nav-blurb,.nav-item[aria-current=page] .nav-blurb,.nav-num{display:none}.nav-item[aria-current=page]{background:color-mix(in srgb, var(--ic) 14%, transparent);box-shadow:inset 0 0 0 1px color-mix(in srgb, var(--ic) 45%, transparent), 0 0 18px color-mix(in srgb, var(--ic) 18%, transparent)}.nav-home{color:var(--text-3);padding:0 13px 0 11px;font-size:13px}.doc-main{padding-top:40px}.prose .ph{scroll-margin-top:72px}.h-anchor{display:none}}@media (width<=640px){.doc-hero{padding-bottom:44px}.doc-title{font-size:clamp(36px,10.5vw,48px)}.doc-meta .chip:last-child{display:none}.doc-sky{opacity:.7;-webkit-mask-image:radial-gradient(90% 80% at 70% 30%,#000 10%,#0000 75%);mask-image:radial-gradient(90% 80% at 70% 30%,#000 10%,#0000 75%)}.prose{font-size:16px}.prose blockquote{padding:18px 44px 18px 22px}.prose blockquote:after{width:20px;height:20px;top:14px;right:14px}.prose .code-frame{margin-inline:calc(-1 * var(--gutter) + 6px);border-radius:12px}.prose .code-frame pre{--pad-x:16px;--pad-y:16px;--fs:12px}.prose .code-frame .line:before{display:none!important}.prose .table-wrap{margin-inline:calc(-1 * var(--gutter) + 6px)}.prose table{font-size:13.5px}.pager{grid-template-columns:1fr}.pager-next{text-align:left;align-items:flex-start}.doc-foot{flex-direction:column;align-items:flex-start}}@media (prefers-reduced-motion:reduce){.doc-progress span,.toc-meter span,.toc-indicator{transition:none}}.doc-page[data-astro-cid-wehgqt5k]{--o-system:#a3abbb;--o-any:#c4b8ff}.doc-orbit[data-astro-cid-wehgqt5k]:before{background:radial-gradient(circle, color-mix(in srgb, var(--oc) 13%, transparent), transparent 68%), radial-gradient(circle, color-mix(in srgb, var(--doc) 7%, transparent), transparent 72%)}.orbit-who[data-astro-cid-wehgqt5k]{color:var(--text-3);text-shadow:none;white-space:nowrap}.orbit-caption[data-astro-cid-wehgqt5k]{text-wrap:balance}.orbit-who[data-astro-cid-wehgqt5k] .ow{color:var(--sc);text-shadow:0 0 12px color-mix(in srgb, var(--sc) 45%, transparent)}.orbit-who[data-astro-cid-wehgqt5k] .ow-plain{color:var(--text-2)}.orbit-who[data-astro-cid-wehgqt5k] .ow-dim{color:var(--text-4)}.orbit-node[data-astro-cid-wehgqt5k].is-dual .orbit-dot[data-astro-cid-wehgqt5k]{box-shadow:inset 1.5px 1.5px 0 0 color-mix(in srgb, var(--oc) 75%, transparent), inset -1.5px -1.5px 0 0 color-mix(in srgb, var(--oc2) 75%, transparent), 0 0 0 4px #08090ae6}.orbit-node[data-astro-cid-wehgqt5k].is-dual.is-on .orbit-dot[data-astro-cid-wehgqt5k]{background:linear-gradient(135deg, var(--oc) 25%, var(--oc2) 80%);box-shadow:0 0 0 4px #08090ae6, -5px -5px 16px -1px color-mix(in srgb, var(--oc) 75%, transparent), 5px 5px 16px -1px color-mix(in srgb, var(--oc2) 75%, transparent)}.orbit-node[data-astro-cid-wehgqt5k].is-dual.is-past .orbit-dot[data-astro-cid-wehgqt5k]{background:linear-gradient(135deg, color-mix(in srgb, var(--oc) 35%, #0e0f11), color-mix(in srgb, var(--oc2) 35%, #0e0f11))}.orbit-node[data-astro-cid-wehgqt5k].is-any .orbit-dot[data-astro-cid-wehgqt5k]{box-shadow:0 0 0 4px #08090ae6}.orbit-node[data-astro-cid-wehgqt5k].is-any.is-on .orbit-dot[data-astro-cid-wehgqt5k],.orbit-node[data-astro-cid-wehgqt5k].is-any.is-past .orbit-dot[data-astro-cid-wehgqt5k]{background:#0e0f11;box-shadow:0 0 0 4px #08090ae6}.orbit-wheel[data-astro-cid-wehgqt5k]{background:conic-gradient(var(--c-shaper), var(--c-builder), var(--c-architect), var(--c-oracle), var(--c-steward), var(--c-reviewer), var(--c-tester), var(--c-shaper));opacity:.85;transition:opacity var(--dur-2);will-change:transform;border-radius:50%;position:absolute;inset:0;-webkit-mask:radial-gradient(farthest-side,#0000 calc(100% - 2px),#000 calc(100% - 1.5px));mask:radial-gradient(farthest-side,#0000 calc(100% - 2px),#000 calc(100% - 1.5px))}.orbit-wheel[data-astro-cid-wehgqt5k].is-glow{opacity:0;filter:blur(7px);inset:-5px;-webkit-mask:none;mask:none}.orbit-node[data-astro-cid-wehgqt5k].is-any.is-on .orbit-wheel[data-astro-cid-wehgqt5k]{opacity:1;-webkit-mask:none;mask:none}.orbit-node[data-astro-cid-wehgqt5k].is-any.is-on .orbit-wheel[data-astro-cid-wehgqt5k].is-glow{opacity:.75}.orbit-node[data-astro-cid-wehgqt5k].is-any.is-past .orbit-wheel[data-astro-cid-wehgqt5k]:not(.is-glow){opacity:.38;-webkit-mask:none;mask:none}
