.doc-hero{padding-top:calc(var(--header-h) + clamp(2.25rem, 4vw, 3.75rem));padding-bottom:clamp(1.5rem,3vw,2.5rem);position:relative;overflow:clip}.doc-hero .hero-grid-bg{background-image:linear-gradient(var(--line) 1px, transparent 1px), linear-gradient(90deg, var(--line) 1px, transparent 1px);pointer-events:none;background-size:72px 72px;position:absolute;inset:0;-webkit-mask-image:radial-gradient(65% 60% at 25% 20%,#000 30%,#0000 100%);mask-image:radial-gradient(65% 60% at 25% 20%,#000 30%,#0000 100%)}.doc-hero .container{position:relative}.doc-hero h1{font-size:var(--step-4);max-width:18ch;margin-top:1.1rem}.doc-lede{color:var(--ink-soft);font-size:var(--step-1);max-width:46rem;margin-top:1.2rem;line-height:1.55}.doc-meta{border-top:1px solid var(--line);font-family:var(--font-mono);letter-spacing:.06em;color:var(--ink-faint);flex-wrap:wrap;gap:.6rem 2.4rem;margin:2.2rem 0 0;padding:1.4rem 0 0;font-size:.76rem;list-style:none;display:flex}.doc-meta li{align-items:center;gap:.55rem;display:inline-flex}.doc-meta li:before{content:"";background:var(--accent);flex:none;width:5px;height:5px}.doc-meta b{color:var(--ink);font-weight:500}.doc-body{width:min(58rem,100% - 2.5rem);margin-inline:auto;padding-bottom:clamp(3.5rem,6vw,6rem)}.toc{border:1px solid var(--line);background:var(--bg-raised);border-radius:var(--radius);--tick-color:var(--line-strong);margin-bottom:clamp(2.5rem,5vw,4rem);padding:1.5rem 1.6rem}.toc h2{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.22em;color:var(--ink-faint);margin-bottom:1.1rem;font-size:.72rem;font-weight:500}.toc ol{counter-reset:toc;grid-template-columns:repeat(2,minmax(0,1fr));gap:.1rem 1.6rem;margin:0;padding:0;list-style:none;display:grid}.toc li{counter-increment:toc}.toc a{color:var(--ink-soft);border-radius:2px;align-items:baseline;gap:.75rem;margin-inline:-.5rem;padding:.42rem .5rem;font-size:.93rem;text-decoration:none;transition:color .18s,background .18s;display:flex}.toc a:before{content:counter(toc, decimal-leading-zero);font-family:var(--font-mono);letter-spacing:.08em;color:var(--accent);flex:none;font-size:.7rem}.toc a:hover{color:var(--ink);background:var(--bg-panel)}.doc-section{scroll-margin-top:calc(var(--header-h) + 1.5rem);padding-top:clamp(2.2rem,4vw,3.2rem)}.doc-section+.doc-section{border-top:1px solid var(--line)}.doc-section>h2{font-size:var(--step-2);align-items:baseline;gap:.9rem;margin-bottom:1.4rem;display:flex}.doc-section>h2 .n{font-family:var(--font-mono);letter-spacing:.14em;color:var(--accent);flex:none;font-size:.78rem;font-weight:500;position:relative;top:-.15em}.doc-section>h2 a.anchor{color:var(--ink-faint);opacity:0;font-family:var(--font-mono);font-size:.8rem;text-decoration:none;transition:opacity .18s,color .18s}.doc-section>h2:hover a.anchor,.doc-section>h2 a.anchor:focus-visible{opacity:1}.doc-section>h2 a.anchor:hover{color:var(--accent)}.prose{color:var(--ink-soft);font-size:1rem;line-height:1.72}.prose>*+*{margin-top:1rem}.prose h3{font-family:var(--font-body);letter-spacing:0;color:var(--ink);margin-top:2rem;font-size:1.02rem;font-weight:600;line-height:1.4}.prose h3+*{margin-top:.5rem}.prose strong{color:var(--ink);font-weight:600}.prose a{color:var(--ink);text-decoration:underline;text-decoration-color:var(--line-strong);text-underline-offset:3px;transition:color .18s,text-decoration-color .18s}.prose a:hover{color:var(--accent);text-decoration-color:var(--accent)}.prose ul,.prose ol{gap:.6rem;padding-left:0;list-style:none;display:grid}.prose ul>li{padding-left:1.4rem;position:relative}.prose ul>li:before{content:"";background:var(--accent);width:6px;height:1px;position:absolute;top:.72em;left:.15rem}.prose ol{counter-reset:prose-ol}.prose ol>li{counter-increment:prose-ol;padding-left:2rem;position:relative}.prose ol>li:before{content:counter(prose-ol, decimal-leading-zero);font-family:var(--font-mono);color:var(--accent);font-size:.72rem;position:absolute;top:.1em;left:0}.prose li>ul{margin-top:.6rem}.callout{border:1px solid var(--line-strong);border-left:2px solid var(--accent);background:var(--bg-raised);border-radius:var(--radius);margin-top:1.4rem;padding:1.15rem 1.3rem}.callout p{color:var(--ink-soft);font-size:.95rem}.callout>*+*{margin-top:.6rem}.callout .callout-label{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.2em;color:var(--accent);margin-bottom:.55rem;font-size:.68rem;display:block}.callout.warn{border-left-color:var(--accent2)}.callout.warn .callout-label{color:var(--accent2)}.contact-card{border:1px solid var(--line-strong);border-radius:var(--radius);background:radial-gradient(70% 120% at 0% 0%, var(--accent-soft), transparent 65%), var(--bg-raised);--tick-color:var(--accent);margin-top:1.4rem;padding:1.5rem 1.6rem}.contact-card dl{grid-template-columns:auto 1fr;gap:.5rem 1.6rem;margin:0;font-size:.95rem;display:grid}.contact-card dt{font-family:var(--font-mono);text-transform:uppercase;letter-spacing:.14em;color:var(--ink-faint);padding-top:.28em;font-size:.7rem}.contact-card dd{color:var(--ink);margin:0}.contact-card a{color:var(--accent);text-decoration:none}.contact-card a:hover{text-underline-offset:3px;text-decoration:underline}.doc-foot{border-top:1px solid var(--line);font-family:var(--font-mono);letter-spacing:.1em;color:var(--ink-faint);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1rem;margin-top:clamp(2.5rem,5vw,4rem);padding-top:1.5rem;font-size:.75rem;display:flex}.doc-foot a{color:var(--ink-soft);text-decoration:none}.doc-foot a:hover{color:var(--accent)}.doc-links{grid-template-columns:repeat(3,minmax(0,1fr));gap:.9rem;margin-top:2.4rem;display:grid}.doc-links a{border:1px solid var(--line);border-radius:var(--radius);background:var(--bg-raised);padding:1.1rem 1.2rem;text-decoration:none;transition:border-color .2s,background .2s;display:block}.doc-links a:hover{border-color:var(--accent);background:var(--bg-panel)}.doc-links b{font-family:var(--font-display);color:var(--ink);font-size:1.05rem;font-weight:600;display:block}.doc-links span{color:var(--ink-faint);margin-top:.3rem;font-size:.85rem;display:block}.doc-links [aria-current=page]{border-color:var(--line-strong);opacity:.55;pointer-events:none}@media (width<=720px){.toc ol,.doc-links{grid-template-columns:1fr}.contact-card dl{grid-template-columns:1fr;gap:.15rem}.contact-card dt{padding-top:.7rem}.doc-section>h2{display:block}.doc-section>h2 .n{margin-bottom:.5rem;display:block;top:0}}
