.doc-layout{display:flex;max-width:1600px;margin:0 auto;min-height:100vh}.sidebar{width:16rem;flex-shrink:0;position:sticky;top:calc(var(--header-height, 64px) + var(--subnav-height, 42px));height:calc(100vh - var(--header-height, 64px) - var(--subnav-height, 42px));overflow-y:auto;background:var(--color-bg-alt);border-right:1px solid var(--bg-card-border);padding:1.5rem 0;scrollbar-width:thin;scrollbar-color:color-mix(in srgb,var(--accent-primary) 30%,transparent) transparent}.sidebar-nav{display:flex;flex-direction:column}.sidebar-toc-label{font-family:var(--font-mono);font-size:.65rem;font-weight:700;text-transform:uppercase;letter-spacing:.1em;color:var(--text-secondary);margin:0 0 .6rem;padding:0 1.25rem 0 var(--page-padding)}.sidebar-section{padding-bottom:.25rem;margin-bottom:.25rem;border-bottom:1px solid var(--bg-card-border)}.sidebar-section:last-child{border-bottom:none}.sidebar-link,.sidebar-sublink{display:block;padding:.35rem 1.25rem .35rem var(--page-padding);font-family:var(--font-body);font-size:.85rem;color:var(--text-secondary);text-decoration:none;border-left:3px solid transparent;transition:all .15s ease;line-height:1.4}.sidebar-link{font-weight:600;font-size:.875rem}.sidebar-sublink{padding-left:calc(var(--page-padding) + .75rem);font-size:.8rem}.sidebar-link:hover,.sidebar-sublink:hover{color:var(--text-heading);background:color-mix(in srgb,var(--accent-primary) 5%,transparent);text-decoration:none;text-shadow:none}.sidebar-link.active,.sidebar-sublink.active{color:var(--accent-primary);border-left-color:var(--accent-primary);background:color-mix(in srgb,var(--accent-primary) 7%,transparent);font-weight:700}.content-area{flex:1;min-width:0;padding:2rem var(--page-padding) 4rem;background:var(--bg-primary)}.content-area [id]{scroll-margin-top:calc(var(--header-height, 64px) + var(--subnav-height, 42px) + 1.5rem)}.spec-header{text-align:left;padding-bottom:2.5rem;margin-bottom:2.5rem;border-bottom:2px solid var(--bg-card-border)}.spec-badge{display:inline-block;font-family:var(--font-body);font-size:.8rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;padding:.35em 1em;border:1px solid var(--bg-card-border);color:var(--text-secondary);border-radius:9999px;margin-bottom:1rem}.spec-title{font-family:var(--font-display);font-size:2.5rem;color:var(--text-heading);line-height:1.2;margin-bottom:.5rem}.spec-version{font-family:var(--font-mono);font-size:1rem;font-weight:400;color:var(--text-secondary);margin-left:.25rem;vertical-align:middle}.spec-subtitle{font-family:var(--font-body);font-size:1.15rem;color:var(--text-secondary);margin-bottom:1rem;font-style:italic;max-width:none}.spec-meta{font-family:var(--font-body);font-size:.9rem;color:var(--text-secondary);margin-bottom:.25rem;max-width:none}.spec-section{padding-top:2.5rem;padding-bottom:2.5rem;border-top:1px solid var(--bg-card-border)}.section-heading{display:flex;align-items:center;gap:1rem;margin-bottom:1.5rem;flex-wrap:wrap}.section-heading h2{font-family:var(--font-display);font-size:2rem;color:var(--text-heading);margin:0}.badge-normative,.badge-informative{display:inline-block;font-family:var(--font-body);font-size:.7rem;font-weight:700;letter-spacing:.08em;text-transform:uppercase;padding:.25em .75em;border-radius:4px}.badge-normative{background:var(--accent-secondary);color:var(--bg-primary)}.badge-informative{background:var(--bg-card-border);color:var(--text-secondary);border:1px solid var(--bg-card-border)}.spec-subsection{margin-top:2rem;padding-top:1.5rem}.spec-subsection h3{font-family:var(--font-body);font-size:1.35rem;font-weight:600;color:var(--text-heading);margin-bottom:1rem}.content-area p{font-family:var(--font-body);font-size:1rem;line-height:1.75;color:var(--text-secondary);margin-bottom:1rem}.content-area h4{font-family:var(--font-body);font-size:1.05rem;font-weight:600;color:var(--text-heading);margin-top:1.5rem;margin-bottom:.75rem}.content-area ul,.content-area ol{font-family:var(--font-body);font-size:1rem;line-height:1.75;color:var(--text-secondary);margin-bottom:1rem;padding-left:1.5rem}.content-area li{margin-bottom:.35rem}.content-area strong{color:var(--text-primary)}.content-area code{font-size:.875em;background:var(--bg-surface);padding:.15em .4em;border-radius:4px;color:var(--accent-primary);border:1px solid var(--bg-card-border)}.content-area blockquote{border-left:4px solid var(--accent-primary);padding:1rem 1.5rem;margin:1.5rem 0;background:var(--bg-surface);border-radius:0 8px 8px 0;font-size:1.05rem;color:var(--text-primary);font-weight:500;font-style:italic}.rfc{font-weight:700;color:var(--accent-secondary)}.term-list{margin:1rem 0 1.5rem}.term-list dt{font-family:var(--font-body);font-weight:600;color:var(--text-heading);margin-top:1rem;font-size:.95rem}.term-list dd{font-family:var(--font-body);font-size:.9rem;line-height:1.65;color:var(--text-secondary);margin-left:0;padding-left:1rem;border-left:2px solid var(--bg-card-border);margin-top:.25rem;margin-bottom:.5rem}.field-type{font-family:monospace;font-size:.8em;color:var(--text-secondary);font-weight:400}.spec-preamble{padding:0 1.25rem 2rem;margin-bottom:2rem;border-bottom:1px solid var(--bg-card-border)}.rubric-note{font-size:.9rem!important;padding:.75rem 1rem;background:var(--bg-surface);border-radius:6px;border-left:3px solid var(--accent-primary);margin-top:1rem;color:var(--text-primary)}.mobile-toc{display:none;position:sticky;top:calc(var(--header-height, 64px) + var(--subnav-height, 42px));z-index:40;background:var(--color-bg-alt);border-bottom:1px solid var(--bg-card-border)}.mobile-toc-toggle{display:flex;align-items:center;justify-content:space-between;width:100%;padding:1rem 1.5rem;background:none;border:none;color:var(--accent-primary);font-family:var(--font-body);font-size:.95rem;font-weight:600;cursor:pointer}.mobile-toc-toggle .chevron{transition:transform .2s}.mobile-toc-toggle[aria-expanded=true] .chevron{transform:rotate(180deg)}.mobile-toc-list{display:none;max-height:60vh;overflow-y:auto;padding:0 1rem 1rem}.mobile-toc-list[aria-hidden=false]{display:block}.toc-link{display:block;padding:.4rem .75rem;font-family:var(--font-body);font-size:.85rem;color:var(--text-secondary);text-decoration:none;border-radius:4px}.toc-link:hover{color:var(--text-heading);background:color-mix(in srgb,var(--accent-primary) 7%,transparent);text-shadow:none}.toc-h2{padding-left:1.5rem;font-size:.8rem}.content-area p,.content-area li,.content-area dd,.content-area blockquote{max-width:80ch}.content-area .formula-box,.content-area .rating-bar,.content-area .rating-bands,.content-area .detection-flow,.content-area .procedure-grid,.content-area .profile-grid,.content-area .technique-grid,.content-area .conformance-grid,.content-area .maturity-grid,.content-area .results-table-wrap,.content-area .example-scenario,.content-area details{max-width:none}details.framework-section>summary{background:var(--bg-surface);border-radius:0;padding:.85rem 1.25rem;margin-bottom:2px;transition:background .2s ease;border-bottom:1px solid var(--bg-card-border);color:var(--text-primary);cursor:pointer}details.framework-section>summary:hover{background:var(--bg-card-border)}details.framework-section[open]>summary{background:var(--bg-card-border);border-radius:0;margin-bottom:0;border-bottom:none}details.framework-subsection>summary{background:var(--bg-surface);border-radius:6px;padding:.75rem 1rem;margin-bottom:.15rem;transition:background .2s ease;color:var(--text-primary);cursor:pointer}details.framework-subsection>summary:hover{background:var(--bg-card-border)}@media(max-width:1024px){.sidebar{display:none}.mobile-toc{display:block}.content-area{padding:1.5rem var(--page-padding) 3rem}.spec-title{font-size:1.75rem}.section-heading h2{font-size:1.5rem}}
