.prose>:is(p,ul,ol,blockquote,.lede){max-width:72ch}.prose .crumbs{align-items:center;gap:var(--s-2);font-family:var(--font-mono);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.04em;color:var(--text-4);margin-bottom:var(--s-5);display:flex}.prose .crumbs a:hover{color:var(--text-2)}.prose .crumbs .sep{color:var(--text-4)}.prose h1{font-size:var(--fs-3xl);letter-spacing:-.025em;font-weight:500;line-height:1.1}.prose .lede{font-size:var(--fs-lg);color:var(--text-2);padding-bottom:var(--s-6);margin-top:var(--s-4);border-bottom:1px solid var(--border-faint);line-height:1.55}.prose h2{font-size:var(--fs-xl);letter-spacing:-.015em;margin-top:var(--s-12);margin-bottom:var(--s-4);scroll-margin-top:72px;font-weight:500}.prose h2 .num{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text-4);font-weight:500}.prose h3{font-size:var(--fs-md);margin-top:var(--s-8);margin-bottom:var(--s-3);scroll-margin-top:72px;font-weight:600}.prose p{color:var(--text-2);font-size:var(--fs-md);margin-bottom:var(--s-4);text-wrap:pretty;line-height:1.65}.prose a.link{color:var(--primary);text-decoration:underline;text-decoration-color:var(--primary-dim);text-underline-offset:2px}.prose a.link:hover{text-decoration-color:var(--primary)}.prose ul,.prose ol{color:var(--text-2);margin:0 0 var(--s-4);padding-left:var(--s-5)}.prose li{margin-bottom:var(--s-2);font-size:var(--fs-md);line-height:1.65}.prose code:not(pre code){font-family:var(--font-mono);background:var(--bg-inset);border:1px solid var(--border-faint);border-radius:var(--r-1);color:var(--text);padding:1px 5px;font-size:.86em}.prose strong{color:var(--text);font-weight:600}.prose .sl-heading-wrapper{--anchor-size:.75em;--anchor-gap:.35em;scroll-margin-top:72px}.prose .sl-heading-wrapper.level-h2{font-size:var(--fs-xl);margin:var(--s-12) 0 var(--s-4)}.prose .sl-heading-wrapper.level-h3{font-size:var(--fs-md);margin:var(--s-8) 0 var(--s-3)}.prose .sl-heading-wrapper.level-h4{font-size:var(--fs-base);margin:var(--s-6) 0 var(--s-2)}.prose .sl-heading-wrapper>:is(h1,h2,h3,h4,h5,h6){font-size:inherit;margin:0;padding-inline-end:calc(var(--anchor-size) + var(--anchor-gap));display:inline}.prose .sl-anchor-link{color:var(--text-4);opacity:0;transition:opacity var(--t-fast) var(--ease-out), color var(--t-fast) var(--ease-out);align-items:center;margin-inline-start:calc(-1 * var(--anchor-size));display:inline-flex}.prose .sl-heading-wrapper:hover .sl-anchor-link,.prose .sl-anchor-link:focus-visible{opacity:1}.prose .sl-anchor-link:hover{color:var(--primary)}.prose .sl-anchor-icon>svg{width:var(--anchor-size);height:var(--anchor-size)}@media (hover:none){.prose .sl-anchor-link{opacity:1;color:var(--text-4)}}.codeblock,.editor{border:1px solid var(--border);border-radius:var(--r-3);background:var(--bg-inset);margin:var(--s-5) 0;overflow:hidden}.editor-head,.code-head{align-items:center;gap:var(--s-3);height:38px;padding:0 var(--s-3) 0 var(--s-4);background:var(--bg-elev-1);border-bottom:1px solid var(--border);font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-3);display:flex}.code-head .fdot{background:var(--tertiary);border-radius:50%;flex:none;width:8px;height:8px}.code-head .fname{color:var(--text-2)}.code-head .spacer{flex:1}.copy-btn{-webkit-appearance:none;-moz-appearance:none;appearance:none;border:1px solid var(--border);background:var(--bg-elev-2);color:var(--text-3);font-family:var(--font-mono);font-size:var(--fs-xs);border-radius:var(--r-1);cursor:pointer;transition:color var(--t-fast) var(--ease-out), border-color var(--t-fast) var(--ease-out);padding:3px 8px}.copy-btn:hover{color:var(--text);border-color:var(--border-strong)}.codeblock pre,.editor pre{padding:var(--s-4) var(--s-5);font-size:var(--fs-sm);-moz-tab-size:2;-o-tab-size:2;tab-size:2;margin:0;line-height:1.7;overflow-x:auto}.codeblock pre code{color:var(--text)}.ln{counter-reset:ln}.ln .l{counter-increment:ln;padding-left:2.6em;display:block;position:relative}.ln .l:before{content:counter(ln);text-align:right;width:2em;color:var(--text-4);-webkit-user-select:none;-moz-user-select:none;user-select:none;position:absolute;left:0}.kw{color:var(--secondary-2)}.id{color:var(--primary-2)}.str{color:var(--tertiary-2)}.pn{color:var(--text-3)}.cm{color:var(--text-4);font-style:italic}.fn{color:oklch(82% .1 155)}.nm{color:var(--text)}.term{background:var(--bg-inset);border:1px solid var(--border);border-radius:var(--r-2);padding:var(--s-3) var(--s-4);margin:var(--s-4) 0;font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--text-2);line-height:1.7;overflow-x:auto}.term .p{color:var(--tertiary);margin-right:var(--s-2)}.term .out{color:var(--text-3)}.term .ok{color:var(--ok)}.term .err{color:var(--danger)}.term .dim{color:var(--text-4)}.spec-table{border-collapse:collapse;border:1px solid var(--border);border-radius:var(--r-3);width:100%;margin:var(--s-5) 0;font-size:var(--fs-sm);overflow:hidden}.spec-table thead th{background:var(--bg-inset);font-family:var(--font-mono);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);text-align:left;padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--border);font-weight:500}.spec-table td{padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--border-faint);color:var(--text-2);vertical-align:top}.spec-table tr:last-child td{border-bottom:0}.spec-table td code{font-family:var(--font-mono);color:var(--text);font-size:.92em}.spec-table .code-col{color:var(--primary-2);font-family:var(--font-mono);white-space:nowrap}.diagram{border:1px solid var(--border);border-radius:var(--r-3);background:var(--bg-inset);margin:var(--s-5) 0;overflow:hidden}.diagram .fig{padding:var(--s-6)}.diagram svg{width:100%;height:auto;display:block}.diagram .cap{font-family:var(--font-mono);font-size:var(--fs-xs);color:var(--text-4);padding:var(--s-3) var(--s-5);border-top:1px solid var(--border-faint);background:var(--bg-elev-1)}.prevnext{gap:var(--s-4);margin-top:var(--s-12);padding-top:var(--s-8);border-top:1px solid var(--border-faint);grid-template-columns:1fr 1fr;display:grid}.prevnext a{border:1px solid var(--border);border-radius:var(--r-3);padding:var(--s-4) var(--s-5);transition:border-color var(--t-fast) var(--ease-out), background var(--t-fast) var(--ease-out)}.prevnext a:hover{border-color:var(--border-strong);background:var(--bg-elev-1)}.prevnext .dir{font-family:var(--font-mono);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-4);margin-bottom:var(--s-1)}.prevnext .ttl{color:var(--text);font-weight:500}.prevnext .next{text-align:right}.deflist{border:1px solid var(--border);border-radius:var(--r-3);margin:var(--s-5) 0;overflow:hidden}.deflist .row{gap:var(--s-4);padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--border-faint);grid-template-columns:200px 1fr;display:grid}.deflist .row:last-child{border-bottom:0}.deflist .row dt{font-family:var(--font-mono);font-size:var(--fs-sm);color:var(--primary-2)}.deflist .row dd{font-size:var(--fs-sm);color:var(--text-2);margin:0}.deflist .row dd .req{color:var(--secondary-2);font-family:var(--font-mono);font-size:var(--fs-xs)}.prose table{border-collapse:collapse;border:1px solid var(--border);border-radius:var(--r-3);width:100%;margin:var(--s-5) 0;font-size:var(--fs-sm);display:block;overflow:auto hidden}.prose thead th{background:var(--bg-inset);font-family:var(--font-mono);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.06em;color:var(--text-3);text-align:left;padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--border);white-space:nowrap;font-weight:500}.prose td{padding:var(--s-3) var(--s-4);border-bottom:1px solid var(--border-faint);color:var(--text-2);vertical-align:top}.prose tr:last-child td{border-bottom:0}.prose td code{color:var(--primary-2);white-space:nowrap}.prose blockquote{margin:var(--s-5) 0;padding:var(--s-1) 0 var(--s-1) var(--s-5);border-left:2px solid var(--border-strong);color:var(--text-3)}.prose blockquote p:last-child{margin-bottom:0}.prose hr{background:var(--border-faint);height:1px;margin:var(--s-10) 0;border:0}.prose img{border-radius:var(--r-3);border:1px solid var(--border);margin:var(--s-5) 0}.prose :is(h2,h3,h4) a{color:inherit;text-decoration:none}.prose :is(h2,h3,h4) a:hover{color:var(--primary)}.prose h4{font-size:var(--fs-base);margin-top:var(--s-6);margin-bottom:var(--s-2);scroll-margin-top:72px;font-weight:600}.prose .starlight-aside{border:1px solid var(--border);border-inline-start:2px solid var(--sl-color-asides-border);border-radius:var(--r-2);padding:var(--s-4) var(--s-5);margin:var(--s-5) 0;color:var(--text-2)}.prose .starlight-aside__title{font-family:var(--font-mono);font-size:var(--fs-xs);text-transform:uppercase;letter-spacing:.08em;color:var(--sl-color-asides-text-accent);font-weight:500}.prose .starlight-aside__content p{font-size:var(--fs-sm)}.prose .starlight-aside__content p:last-child{margin-bottom:0}.prose .expressive-code{margin:var(--s-5) 0}.prose .expressive-code .copy button{border-radius:var(--r-1)}.mermaid{border:1px solid var(--border);border-radius:var(--r-3);background:var(--bg-inset);padding:var(--s-6);margin:var(--s-5) 0;justify-content:center;display:flex;overflow-x:auto}.mermaid svg{max-width:100%;height:auto}.mermaid:not([data-processed]){visibility:hidden;min-height:120px}
