.spec-shell{grid-template-columns:260px 1fr;gap:3rem;max-width:1200px;margin:0 auto;padding:1.5rem 2rem 4rem;display:grid}.spec-sidebar{top:calc(var(--site-header-h) + 1.5rem);max-height:calc(100vh - var(--site-header-h) - 3rem);align-self:start;padding-right:.5rem;position:sticky;overflow-y:auto}.spec-sidebar-toggle{background:var(--bg-card);border:1px solid var(--border);width:100%;color:var(--text-bright);cursor:pointer;border-radius:8px;justify-content:space-between;align-items:center;padding:.7rem .9rem;font-family:inherit;font-size:.88rem;font-weight:500;transition:border-color .2s,background .2s;display:none}.spec-sidebar-toggle:hover{border-color:var(--gold);background:var(--bg-card-hover)}.spec-sidebar-toggle svg{color:var(--text-muted);transition:transform .2s}.spec-sidebar-toggle[aria-expanded=true] svg{transform:rotate(180deg)}.spec-sidebar nav.spec-nav{max-width:none;margin:0;padding:0;display:block}.spec-nav-title{font-family:var(--mono);text-transform:uppercase;letter-spacing:.12em;color:var(--text-muted);margin-bottom:.6rem;font-size:.68rem}.spec-nav ul{flex-direction:column;gap:.1rem;list-style:none;display:flex}.spec-nav-link{color:var(--text-muted);border-left:2px solid #0000;border-radius:0 6px 6px 0;align-items:baseline;gap:.55rem;padding:.45rem .75rem;font-size:.88rem;transition:color .2s,border-color .2s,background .2s;display:flex}.spec-nav-num{font-family:var(--mono);color:var(--text-muted);opacity:.65;flex-shrink:0;font-size:.7rem}.spec-nav-label{flex:1}.spec-nav-link:hover{color:var(--text-bright);background:var(--bg-card)}.spec-nav-link.active{color:var(--gold-ink);border-left-color:var(--gold);background:var(--bg-card)}.spec-nav-link.active .spec-nav-num{color:var(--gold);opacity:1}.spec-main{min-width:0}.spec-article{max-width:800px}.spec-header{border-bottom:1px solid var(--border);margin-bottom:2rem;padding-bottom:1.25rem}.spec-eyebrow{font-family:var(--mono);text-transform:uppercase;letter-spacing:.15em;color:var(--gold);margin-bottom:.5rem;font-size:.7rem}.spec-article h1{letter-spacing:-.01em;font-size:clamp(1.75rem,3.5vw,2.25rem);line-height:1.2}.spec-article h2{letter-spacing:-.01em;margin:2.5rem 0 .75rem;font-size:1.3rem}.spec-article h3{margin:1.75rem 0 .5rem;font-size:1.05rem}.spec-article p,.spec-article ul,.spec-article ol{color:var(--text);margin-bottom:1rem;font-size:.94rem;line-height:1.7}.spec-article ul,.spec-article ol{padding-left:1.25rem}.spec-article li{margin-bottom:.35rem}.spec-article li code,.spec-article p code{font-size:.85em}.spec-article strong{color:var(--text-bright)}.spec-article a{text-underline-offset:3px;text-decoration:underline #f0b42959}.spec-article a:hover{text-decoration-color:var(--orange)}.spec-article blockquote{border-left:2px solid var(--gold);color:var(--text-muted);margin:1.25rem 0;padding:.2rem 0 .2rem 1rem;font-style:italic}.spec-article table{border-collapse:collapse;border:1px solid var(--border);border-radius:8px;width:100%;margin:1rem 0 1.5rem;font-size:.86rem;overflow:hidden}.spec-article th,.spec-article td{text-align:left;border-bottom:1px solid var(--border);vertical-align:top;color:var(--text);padding:.65rem .85rem;line-height:1.55}.spec-article th{background:var(--bg-card);color:var(--text-bright);text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:600}.spec-article tr:last-child td{border-bottom:none}.spec-article table code{font-family:inherit;font-size:inherit;color:inherit;background:0 0;padding:0}.spec-article pre{background:var(--navy);border:1px solid var(--border);border-radius:8px;margin:1rem 0;padding:1rem 1.15rem;overflow-x:auto}.spec-article pre code{font-family:var(--mono);color:var(--text);background:0 0;padding:0;font-size:.82rem;line-height:1.65}@media (width<=860px){.spec-shell{grid-template-columns:1fr;gap:1rem;padding:1rem 1.25rem 3rem}.spec-sidebar{border-bottom:none;max-height:none;padding-bottom:0;padding-right:0;position:static;overflow-y:visible}.spec-sidebar-toggle{display:flex}.spec-sidebar nav.spec-nav{border:1px solid var(--border);background:var(--bg-card);border-radius:8px;margin-top:.65rem;padding:.75rem .25rem;display:none}.spec-sidebar nav.spec-nav.open{display:block}}
