.sr-only { position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; border:0; }
.metric-407 { display:none; }
.comparing .metric-407 { display:inline; }
.brief-section { padding: clamp(2rem, 5vw, 5rem); border-top: 1px solid var(--line); background:#11161c; scroll-margin-top:1rem; }
.brief-heading { display:flex; flex-wrap:wrap; gap:1rem 3rem; justify-content:space-between; align-items:end; margin-bottom:1.75rem; }
.brief-heading h2 { margin:0; max-width:21ch; font-size:clamp(2rem,4.2vw,4.5rem); line-height:1.1; }
.brief-heading p:last-child { max-width:37rem; margin:0; }
.brief-section .eyebrow, .brief-label { font:500 .875rem/1.5 var(--mono); color:#e8cb8f; letter-spacing:.07em; text-transform:uppercase; }
.brief-section [hidden], .civic-lab [hidden] { display:none !important; }
.brief-controls { display:grid; grid-template-columns:minmax(12rem,.7fr) minmax(0,1.5fr); gap:1rem; margin-bottom:.8rem; }
.brief-controls label { display:block; font-size:.875rem; margin-bottom:.4rem; }
.brief-controls input, .brief-controls select { width:100%; min-width:0; font:inherit; color:#f9fafc; background:#212a34; padding:.8rem; border:1px solid #77829c; border-radius:.25rem; }
.brief-section button, .civic-lab button, .world-reference summary { font:inherit; font-size:.875rem; cursor:pointer; }
.brief-section button, .civic-lab button { min-height:44px; border:1px solid #75809b; background:#252c35; color:#f9fafc; padding:.6rem .85rem; border-radius:.25rem; }
.brief-section button:hover, .civic-lab button:hover { background:#343d49; }
.brief-section button:disabled, .civic-lab button:disabled { opacity:.5; cursor:default; }
.brief-section :focus-visible, .civic-lab :focus-visible, .world-reference summary:focus-visible { outline:3px solid #fad68e; outline-offset:4px; }
.brief-scope { color:#c1cad3; font-size:.875rem; }
.brief-layout { display:grid; grid-template-columns:minmax(0,1fr); gap:1.25rem; align-items:start; }
.brief-layout.has-evidence { grid-template-columns:minmax(0,1.5fr) minmax(18rem,1fr); }
.brief-report { min-width:0; background:#1c242e; border:1px solid #51606e; border-radius:.5rem; overflow:hidden; }
.brief-report-head { padding:1.5rem; border-bottom:1px solid #4a5367; }
.brief-report-head h3 { font-size:clamp(1.7rem,2.8vw,2.75rem); line-height:1.17; margin:.6rem 0; }
.brief-story { display:flex; align-items:center; gap:1rem; padding:1rem; background:#121820; border-left:3px solid #e8cb8f; margin-bottom:1rem; }
.brief-story p { margin:.2rem 0; }
.brief-story img { width:72px; height:92px; object-fit:cover; object-position:50% 18%; border-radius:.25rem; flex:none; }
.brief-chips { display:flex; flex-wrap:wrap; gap:.5rem; margin-top:1rem; }
.brief-chip { padding:.35rem .6rem; border:1px solid #848ea6; border-radius:.25rem; font-size:.875rem; background:#2b3440; }
.brief-slide-tabs { display:flex; flex-wrap:wrap; gap:.35rem; padding:1rem 1.5rem; }
.brief-slide-tabs button[aria-selected=true] { background:#e9edf5; color:#131b2d; border-color:#e9edf5; }
.brief-slide { min-height:21rem; padding:.25rem 1.5rem 1.5rem; }
.brief-slide h4 { font:500 clamp(1.45rem,2.3vw,2rem)/1.2 var(--serif); margin:1rem 0; }
.brief-main-point { font-size:clamp(1.1rem,1.5vw,1.35rem); line-height:1.6; max-width:65ch; }
.brief-fact { padding:1rem 0; border-top:1px solid #4b5967; }
.brief-fact p { margin:.4rem 0 .75rem; }
.brief-status-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:.75rem; }
.brief-status-grid div { border-top:3px solid #8a9bad; background:#151c24; padding:1rem; }
.brief-status-grid strong { display:block; margin-bottom:.45rem; font-size:.875rem; color:#e8cb8f; }
.brief-timeline { list-style:none; padding:0; border-left:2px solid #a6b3c1; margin-left:.35rem; }
.brief-timeline li { padding:0 0 1.2rem 1rem; }
.brief-timeline time { display:block; color:#e8cb8f; font:.875rem var(--mono); margin-bottom:.4rem; }
.brief-timeline p { margin:.35rem 0; }
.brief-footer { padding:1rem 1.5rem; border-top:1px solid #4a5367; display:flex; flex-wrap:wrap; gap:.75rem; align-items:center; justify-content:space-between; }
.brief-nav { display:flex; gap:.5rem; align-items:center; }
.brief-evidence { background:#202934; border:1px solid #9aa8b5; border-left:3px solid #e8cb8f; padding:1.5rem; position:sticky; top:1rem; max-height:80svh; overflow:auto; overflow-wrap:anywhere; }
.brief-evidence h3 { font-size:1.75rem; line-height:1.2; margin:1.25rem 0; }
.brief-evidence h4 { font-size:1rem; margin:1.3rem 0 .5rem; }
.brief-evidence li { margin-bottom:1rem; }
.brief-evidence ul { padding-left:1.2rem; }
.brief-section a, .world-reference a, .civic-lab a { color:#f4d79e; text-underline-offset:.2em; overflow-wrap:anywhere; }
.brief-mapping { width:100%; border-collapse:collapse; }
.brief-mapping th, .brief-mapping td { text-align:left; vertical-align:top; padding:.75rem; border-bottom:1px solid #576077; overflow-wrap:anywhere; }
.brief-mapping th { font-size:.875rem; }
.brief-mapping td { font-size:1rem; }
.brief-mapping small { display:block; font-size:.875rem; color:#dce2f0; }
.brief-method { margin-top:1.2rem; }
.brief-method summary { cursor:pointer; min-height:44px; padding:.5rem 0; }
.brief-method p { max-width:80ch; }
.world-reference { padding:1rem; border:1px solid var(--line); margin-top:1.5rem; }
.world-reference summary { min-height:44px; font-weight:600; }
.world-reference .brief-mapping { table-layout:fixed; }
.world-reference-note { font-size:.875rem; color:var(--paper-dim); }
.civic-lab { scroll-margin-top:1rem; min-width:0; }
.civic-lab h4 { font:500 1.9rem/1.2 var(--serif); margin:0 0 1rem; }
.civic-lab .block-label { font-size:.875rem; }
.civic-lab .metrics-header { display:block; margin-bottom:1rem; }
.civic-lab .metrics-key { display:block; margin-top:.5rem; font-size:.875rem; }
.civic-lab-intro { margin-bottom:1.2rem; }
.civic-score { display:flex; align-items:center; justify-content:space-between; flex-wrap:wrap; gap:1rem; padding:1.2rem; background:#131b2e; border:1px solid #a27c2f; margin:1.2rem 0; }
.civic-score strong { display:block; font:500 3rem/1.15 var(--serif); }
.civic-score span { font-size:.875rem; }
.civic-score .civic-delta { font:500 1.25rem var(--mono); color:#e2e7f2; }
.civic-lab .metric { padding:1rem 0; border-bottom:1px solid var(--line); }
.civic-lab .metric-heading { font-size:1rem; align-items:baseline; }
.civic-lab .metric-heading label { font-weight:600; }
.civic-lab .metric-heading output { font:.875rem var(--mono); white-space:nowrap; }
.civic-lab .metric-help { font-size:.875rem; color:#dde2f0; margin:.4rem 0; }
.civic-lab input[type=range] { width:100%; display:block; min-height:44px; accent-color:#efc778; cursor:pointer; margin:0; }
.civic-lab .metric-track { margin-bottom:.8rem; }
.civic-lab .metric-fill { transition:none; }
.metric-actions { display:flex; justify-content:space-between; gap:1rem; align-items:center; font-size:.875rem; }
.civic-actions { display:flex; flex-wrap:wrap; gap:.6rem; margin:1rem 0; }
.civic-outcomes { margin-top:1.5rem; padding-top:1rem; border-top:2px solid #dabb7d; }
.civic-outcomes h5 { font-size:1.1rem; margin:.8rem 0; }
.civic-change { margin:1rem 0; padding:.8rem 0; border-bottom:1px solid var(--line); }
.civic-change p { margin:.5rem 0; }
.civic-lab .swilliam-index { margin-top:1.5rem; }
.civic-math { overflow-wrap:anywhere; font-family:var(--mono); font-size:.875rem; }
@media(max-width:1050px) { .brief-layout.has-evidence { grid-template-columns:minmax(0,1fr); } .brief-evidence { position:static; max-height:65svh; } }
@media(max-width:640px) { .brief-controls { grid-template-columns:minmax(0,1fr); } .brief-status-grid { grid-template-columns:minmax(0,1fr); } .brief-report-head,.brief-slide,.brief-evidence { padding:1rem; } .brief-slide-tabs,.brief-footer { padding:1rem; } .brief-mapping th,.brief-mapping td { padding:.6rem .35rem; } .brief-section { padding:2rem 1rem; } .brief-nav { flex-wrap:wrap; } }
@media(prefers-reduced-motion:reduce) { .brief-section,.civic-lab { scroll-behavior:auto; } }
