/* Case reading layout (case-page.js): header, progress, sticky outline, reading, participation, tools. */
.case-page{max-width:1380px;margin:0 auto;color:#fff}
.case-page :focus-visible{outline:2px solid #f47732;outline-offset:2px}
.case-crumbs{display:flex;flex-wrap:wrap;align-items:center;gap:8px;padding:6px 0 16px;font:11px/1.5 var(--mono);letter-spacing:.06em;text-transform:uppercase}
.case-crumbs a{color:#f47732;text-decoration:none}.case-crumbs a:hover{text-decoration:underline}
.case-crumbs [aria-current]{max-width:48ch;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}

.case-header{display:grid;grid-template-columns:minmax(0,1fr) minmax(260px,320px);gap:32px;padding:28px;border:1px solid #555762;border-top:3px solid #f47732;background:radial-gradient(circle at 78% 0,#f477321c,transparent 42%),#19191d}
.case-header .eyebrow{color:#f47732;margin:0}
.case-header h1{font:clamp(28px,3.6vw,48px)/1.1 var(--mono);letter-spacing:-.02em;margin:12px 0 14px;overflow-wrap:anywhere}
.case-header h1:focus{outline:none}
.case-header-summary{max-width:68ch;margin:0;font-size:16px;line-height:1.65}
.case-keyfacts{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));margin:22px 1px 1px 0}
.case-keyfacts div{padding:11px 13px;background:#050505;min-width:0;border:1px solid #555762;margin:0 -1px -1px 0}
.case-keyfacts dt{font:10px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#f47732}
.case-keyfacts dd{margin:4px 0 0;font-size:13px;line-height:1.45;overflow-wrap:anywhere}
.case-header-actions{display:grid;align-content:start;gap:10px}
.case-cta{display:flex;justify-content:space-between;align-items:center;gap:10px;width:100%;padding:14px 16px;border:1px solid #f47732;background:#f47732;color:#19191d;font:600 13px/1.2 var(--mono);text-align:left;cursor:pointer}
.case-cta:hover{background:#ff8a4c;border-color:#ff8a4c}
.case-action-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}
.case-action-grid button{min-height:44px;padding:9px 10px;border:1px solid #555762;background:#050505;color:#fff;font:11px/1.3 var(--mono);text-align:left;cursor:pointer;overflow-wrap:anywhere}
.case-action-grid button:hover,.case-action-grid button[aria-pressed=true]{border-color:#f47732;color:#f47732}
.case-header-actions [role=status]{margin:0;min-height:1.2em;font-size:11px;color:#f47732}
.case-header-actions [role=status]:empty{display:none}

.case-progress{margin:20px 0 0;padding:24px 28px;border:1px solid #555762;background:#050505}
.case-progress-head{display:flex;justify-content:space-between;align-items:end;gap:24px;flex-wrap:wrap}
.case-progress-head h2{font:22px/1.3 var(--mono);margin:0}
.case-progress-head p{max-width:64ch;margin:0;font-size:12px;line-height:1.6;opacity:.8}
.case-verdict{display:grid;gap:6px;margin:18px 0 0;padding:14px 16px;border-left:3px solid #f47732;background:#19191d;line-height:1.65}
.case-verdict strong{font:10px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#f47732}
.case-claims{display:grid;grid-template-columns:1fr 1fr;gap:12px;margin-top:12px}
.case-claim{padding:14px 16px;background:#19191d;border-left:2px solid #f47732}
.case-claim.is-open{border-left:2px dashed #555762}
.case-claim h3{font:11px/1.4 var(--mono);letter-spacing:.06em;text-transform:uppercase;margin:0 0 6px;color:#f47732}
.case-claim.is-open h3{color:#fff}
.case-claim p{margin:0;line-height:1.65;font-size:14px}
.case-metrics{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));margin:16px 1px 1px 0}
.case-metrics>div{display:grid;align-content:start;gap:5px;padding:14px;background:#19191d;min-width:0;border:1px solid #555762;margin:0 -1px -1px 0}
.case-metrics strong{font:24px/1.15 var(--mono);color:#f47732;overflow-wrap:anywhere}
.case-metrics span{font-size:11px;line-height:1.45}
.case-bar{display:block;height:3px;margin-top:4px;background:#555762}.case-bar b{display:block;height:100%;background:#f47732;transition:width .4s}

.case-body{display:grid;grid-template-columns:230px minmax(0,1fr);gap:36px;margin-top:28px;align-items:start}
.case-aside{position:sticky;top:14px;max-height:calc(100vh - 150px);overflow:auto;scrollbar-width:thin}
.case-toc{border-left:1px solid #555762;padding:2px 0 2px 16px}
.case-toc .eyebrow{color:#f47732;margin:0 0 12px}
.case-toc-group{margin-bottom:16px}
.case-toc-group>p{margin:0 0 6px;font:10px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;opacity:.7}
.case-toc ol{list-style:none;margin:0;padding:0;display:grid;gap:2px}
.case-toc a{position:relative;display:block;padding:6px 8px;color:#fff;text-decoration:none;font-size:13px;line-height:1.35}
.case-toc a:hover{color:#f47732}
.case-toc a[aria-current]{color:#f47732;background:#19191d}
.case-toc a[aria-current]::before{content:"";position:absolute;left:-17px;top:0;bottom:0;width:2px;background:#f47732}
.case-main{min-width:0;max-width:1000px}
.case-reading>.archive-section:first-child,.case-reading>article>.archive-section:first-child{margin-top:0}
.case-reading .case-essential{border-top:0;padding-top:0}
.case-reading .case-essential>h2{font-size:clamp(24px,2.4vw,30px);line-height:1.2}
.case-hero-files{margin:0 0 8px}
.case-reading .archive-section,.case-participate,.case-tools{scroll-margin-top:16px}

.case-participate{margin-top:56px;padding:26px 28px;border:1px solid #555762;border-top:3px solid #f47732;background:#19191d}
.case-participate>h2{font-size:28px;margin-top:0}
.case-howto{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:0;margin:16px 0 8px}
.case-howto li{display:grid;align-content:start;gap:6px;padding:16px;background:#050505;border:1px solid #555762}
.case-howto li>span{font:11px var(--mono);color:#f47732}
.case-howto strong{font:15px/1.35 var(--mono)}
.case-howto p{margin:0;font-size:13px;line-height:1.6}
.case-participate>.archive-section{margin:32px 0 0;padding-top:22px;border-top:1px solid #555762}
.case-participate>.archive-section>h2{font-size:22px}

.case-tools{margin:56px 0 0}
.case-tools>h2{font:24px/1.3 var(--mono);margin:0 0 6px}
.case-tools>p{max-width:72ch;margin:0 0 16px;font-size:13px;line-height:1.6}
.case-tools .case-operation-console{margin:0}
.case-tools .case-operation-tabs{flex-wrap:nowrap;align-items:stretch;overflow-x:auto;border-top:0;scrollbar-width:thin}
.case-tools .case-operation-tabs button{flex:0 0 auto;min-width:0;padding:13px 12px;border-right:0}
.case-tools .case-operation-tabs .case-tool-back{border-right:1px solid #555762;color:#f47732}
.case-tool-sep{display:flex;align-items:center;flex:0 0 auto;padding:0 6px 0 16px;border-left:1px solid #555762;font:10px var(--mono);letter-spacing:.08em;text-transform:uppercase;color:#f47732;opacity:.8}
.case-tools .case-operation-console{border-top:3px solid #f47732}
.case-tool-overview{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}
.case-tool-overview section{display:grid;align-content:start;gap:8px}
.case-tool-overview .eyebrow{margin:0}
.case-tool-overview button{display:grid;gap:5px;padding:14px;border:1px solid #555762;background:#050505;color:#fff;text-align:left;cursor:pointer}
.case-tool-overview button strong{font:13px/1.3 var(--mono)}
.case-tool-overview button span{font:12px/1.5 var(--sans,inherit);opacity:.85}
.case-tool-overview button:hover{border-color:#f47732}.case-tool-overview button:hover strong{color:#f47732}
.case-tool-note{margin:16px 0 0;font-size:11px;opacity:.8}

@media(max-width:1180px){.case-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.case-tool-overview{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:980px){
  .case-header{grid-template-columns:minmax(0,1fr);gap:22px;padding:22px}
  .case-body{grid-template-columns:minmax(0,1fr);gap:18px}
  .case-aside{position:sticky;top:0;z-index:5;max-height:none;overflow:visible;margin:0 -2px;background:#050505;border-bottom:1px solid #555762;box-shadow:0 -32px 0 #050505}
  .case-toc{display:flex;align-items:center;gap:6px;overflow-x:auto;border-left:0;padding:8px 2px;scrollbar-width:none}
  .case-toc::-webkit-scrollbar{display:none}
  .case-toc .eyebrow,.case-toc-group>p{display:none}
  .case-toc-group{margin:0}.case-toc ol{display:flex;gap:6px}
  .case-toc a{white-space:nowrap;padding:8px 11px;border:1px solid #555762;font-size:12px}
  .case-toc a[aria-current]{border-color:#f47732}.case-toc a[aria-current]::before{display:none}
  .case-reading .archive-section,.case-participate,.case-tools{scroll-margin-top:64px}
  .case-claims,.case-howto{grid-template-columns:minmax(0,1fr)}
}
@media(max-width:620px){
  .case-header{padding:18px 15px}.case-progress,.case-participate{padding:18px 15px}
  .case-metrics{grid-template-columns:1fr 1fr}.case-metrics strong{font-size:20px}
  .case-tool-overview{grid-template-columns:1fr}
  .case-crumbs [aria-current]{max-width:60vw}
}
