main{max-width:76rem;margin:auto;padding:clamp(1.2rem,4vw,3.8rem) clamp(1rem,4vw,3rem) 5rem;line-height:1.55}
main h1,main h2,main h3{margin:0;letter-spacing:-.035em;line-height:1.12}
main h1{font-size:clamp(2.5rem,6.4vw,5rem)}main h2{font-size:clamp(1.5rem,3vw,2.2rem);margin:2.3rem 0 .85rem}
main h3{font-size:1.16rem}main p{max-width:78ch}main a{text-decoration:underline;text-underline-offset:.2em}
.intro{color:#c8c7d1;font-size:1.07rem;margin-top:.75rem}
.report-panel{background:#12111b;border:1px solid #45424f;border-radius:1.1rem;overflow:hidden;margin:1.4rem 0;--accent:#bcf4a7;--pink:#ffabd1;--mint:#8ee4d1}
.panel-head,.report-body,.readouts,.visuals,.statusline{padding:1.2rem clamp(.9rem,2.2vw,1.8rem)}
.panel-head{display:flex;justify-content:space-between;gap:.8rem;align-items:baseline;border-bottom:1px solid #393642}
.panel-head h2{margin:0;font-size:1.55rem}.panel-head a{font-size:.9rem;color:var(--mint)}
.report-body{display:grid;grid-template-columns:1fr 1fr;gap:1.2rem 2.2rem}
.control{min-width:0}.control label{display:flex;justify-content:space-between;align-items:baseline;font-size:.98rem;font-weight:700}
.control output{font:700 1.45rem/1.2 ui-monospace,monospace;color:var(--accent)}.scale{display:flex;justify-content:space-between;color:#b8b6c4;font-size:.77rem}
.control input[type="range"]{display:block;width:100%;height:28px;margin:.55rem 0 .15rem;accent-color:var(--accent);cursor:pointer}
.control select{margin-top:.4rem;background:#211f29;border:1px solid #666273;color:#f8f5f1;font:inherit;border-radius:.4rem;padding:.48rem .6rem;min-height:2.6rem;width:100%}
.control input:focus-visible,.control select:focus-visible{outline:2px solid var(--mint);outline-offset:3px}
.readouts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.1rem .7rem;border-block:1px solid #393642;background:#191721}
.readouts dt{color:#cecad6;font-size:.84rem}.readouts dd{margin:.23rem 0 0;font-size:clamp(1.25rem,2.8vw,2.05rem);font-weight:700;line-height:1.25;font-variant-numeric:tabular-nums}
.readouts dl{margin:0}.readouts small{font-size:.58em;font-weight:500}.visuals{display:grid;grid-template-columns:1.3fr 1fr;align-items:center;gap:1.5rem}
.visuals figure{margin:0;min-width:0}.visuals svg{display:block;width:100%;height:auto}.visuals figcaption,.viz-info{color:#c4c1cf;font-size:.85rem}.viz-info strong{color:#f1edf5}
.viz-info p{margin:.45rem 0}.statusline{margin:0;max-width:none;background:#20252a;border-top:1px solid #383647;color:#e9e9ee;font-size:.95rem}
.statusline.over{background:#3b2228;color:#ffe4e9}.notes{color:#c4c1cf;font-size:.94rem}.status{border-left:.23rem solid #ff9acc;padding-left:1rem}
.table-wrap{overflow-x:auto}table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}td,th{text-align:left;vertical-align:top;padding:.65rem .55rem;border-bottom:1px solid #45414d}thead th{color:#c5e6dc}tbody th{min-width:8rem}.matrix th,.matrix td{white-space:nowrap}
details{border-block-start:1px solid #484450;padding:.75rem 0}summary{cursor:pointer;color:#a3ebd8;font-weight:700}summary:focus-visible{outline:2px solid #8ee4d1}.tabular{font-variant-numeric:tabular-nums}
@media(max-width:700px){.readouts{grid-template-columns:repeat(2,minmax(0,1fr))}.visuals{grid-template-columns:1fr;gap:.6rem}.report-body{gap:1rem}.panel-head{align-items:center}.panel-head a{max-width:6rem}}
@media(max-width:500px){.report-body{grid-template-columns:1fr}.panel-head h2{font-size:1.25rem}.visuals figcaption{font-size:.78rem}.readouts dd{font-size:1.55rem}.control output{font-size:1.25rem}}

.design-tabs{display:flex;flex-wrap:wrap;gap:.3rem;border-bottom:1px solid #5a5262;margin-bottom:2rem}
.design-tabs a{display:block;padding:.7rem .85rem;color:#b9b4c5;text-decoration:none;border-bottom:3px solid transparent;font-size:.91rem}
.design-tabs a[aria-current="page"]{color:#abf1d9;border-color:#abf1d9;font-weight:700}
.design-tabs a:hover{background:#211b29}.shore-readouts{grid-template-columns:repeat(3,minmax(0,1fr))}
@media(max-width:700px){.shore-readouts{grid-template-columns:repeat(2,minmax(0,1fr))}.design-tabs a{font-size:.82rem;padding:.6rem}}
