.cvp-root{min-height:100vh}.cvp-hero{background:var(--surface-2);border-bottom:1px solid var(--border);padding:2.5rem 0 2rem}.cvp-breadcrumb{color:var(--text-muted);flex-wrap:wrap;align-items:center;gap:.25rem;margin-bottom:1rem;font-size:.8rem;display:flex}.cvp-breadcrumb a{color:var(--accent);text-decoration:none}.cvp-breadcrumb a:hover{text-decoration:underline}.cvp-h1{color:var(--text-primary);margin:0 0 1rem;font-size:clamp(1.5rem,4vw,2.25rem);font-weight:700;line-height:1.25}.cvp-intro{color:var(--text-secondary);max-width:56rem;margin:0 0 1.25rem;font-size:1.05rem;line-height:1.6}.cvp-stats{flex-wrap:wrap;align-items:center;gap:.35rem .75rem;display:flex}.cvp-stat{color:var(--text-secondary);font-size:.95rem}.cvp-stat strong{color:var(--text-primary)}.cvp-stat-sep{color:var(--border-strong,#bbb)}.cvp-body{padding-top:2.5rem;padding-bottom:4rem}.cvp-section-title{color:var(--text-primary);margin:0 0 1.25rem;font-size:1.25rem;font-weight:700}.cvp-doclist{margin-bottom:3rem}.cvp-cat{margin-bottom:2rem}.cvp-cat-title{color:var(--text-primary);align-items:center;gap:.5rem;margin:0 0 .75rem;font-size:1rem;font-weight:600;display:flex}.cvp-cat-ul{flex-direction:column;gap:.75rem;margin:0;padding:0;list-style:none;display:flex}.cvp-doc-item{background:var(--surface-1);border:1px solid var(--border);border-radius:.5rem;padding:.75rem 1rem}.cvp-doc-name{color:var(--text-primary);margin-bottom:.35rem;font-size:.95rem;font-weight:600;display:block}.cvp-doc-meta{flex-wrap:wrap;gap:.35rem;margin-bottom:.4rem;display:flex}.cvp-badge{background:var(--surface-3,#e8e8e8);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.04em;border-radius:.25rem;padding:.1rem .45rem;font-size:.7rem;font-weight:600;display:inline-block}.cvp-badge--req{background:var(--accent-subtle,#dbeafe);color:var(--accent-dark,#1d4ed8)}.cvp-doc-where{color:var(--text-muted);margin:0;font-size:.82rem}.cvp-interactive{border-top:1px solid var(--border);margin-bottom:3rem;padding-top:2.5rem}.cvp-interactive-sub{color:var(--text-secondary);margin:-.75rem 0 1.5rem;font-size:.95rem}
