:root{--ink:#163c3b;--muted:#617671;--paper:#f3f5ef;--line:#dce3d9;--accent:#2e7462}*{box-sizing:border-box}body{margin:0;background:var(--paper);color:var(--ink);font:14px/1.55 system-ui,sans-serif}header{padding:20px 4%;border-bottom:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;background:#fafbf7}.brand{font-weight:750;letter-spacing:1.7px;font-size:13px}.brand span{font-weight:400;color:var(--muted)}.badge{font-size:10px;letter-spacing:1px;background:#e8eada;border:1px solid #d4dbc5;border-radius:20px;padding:6px 12px}main{max-width:1280px;margin:auto;padding:35px 32px}.intro{display:flex;justify-content:space-between;align-items:center;gap:30px}.eyebrow{font-size:10px;font-weight:750;letter-spacing:2px;color:var(--accent);margin:0 0 10px}h1{font-family:Georgia,serif;font-size:49px;font-weight:400;line-height:1.12;margin:12px 0}h1 em{color:#658d6a;font-weight:400}.subtitle{max-width:580px;color:var(--muted);font-size:15px}.release{border-left:1px solid #c8d5cb;padding-left:25px;color:var(--muted);font-size:12px}.notice{background:#fff3d7;color:#70531b;border:1px solid #e8dbb9;padding:11px 16px;margin:24px 0 18px;border-radius:6px}.controls,.threshold-controls,.slicers{display:flex;gap:18px;flex-wrap:wrap}.controls{background:#e6ece1;padding:18px 22px;border-radius:9px;margin-bottom:15px}label{display:flex;flex-direction:column;gap:6px;font-size:11px;font-weight:650;letter-spacing:.3px;flex:1;min-width:140px}select,input,button{font:inherit;border:1px solid #cad5c8;background:#fff;color:var(--ink);border-radius:5px;padding:9px 10px}select:focus,input:focus,button:focus{outline:2px solid #438878;outline-offset:2px}.card{background:#fff;border:1px solid var(--line);border-radius:10px;margin:20px 0;padding:25px 28px;box-shadow:0 3px 10px #163c3b03}.card-title{display:flex;justify-content:space-between;gap:20px;align-items:center;margin-bottom:20px}h2{font:26px/1.2 Georgia,serif;margin:0}h3{font:20px Georgia,serif;margin-top:28px}.card-title strong{font-size:13px;font-weight:500;color:var(--accent)}.compact{flex:0 0 220px}.chart svg{width:100%;height:auto;display:block}.chart text{font:11px system-ui;fill:#60736c}.caption,.chain-note{font-size:11px;color:var(--muted);margin-bottom:6px}.chain-note a,a{color:var(--accent)}.legend{display:flex;gap:18px;flex-wrap:wrap;font-size:11px;margin:12px 0}.legend i{display:inline-block;width:8px;height:8px;border-radius:2px;margin-right:5px}.table-wrap{overflow:auto}table{width:100%;border-collapse:separate;border-spacing:5px;font-size:12px}th{text-align:left;font-size:11px;font-weight:500;padding:8px}td{padding:12px;border-radius:4px;text-align:center;min-width:95px}td small{display:block;font-size:9px;opacity:.8}button{cursor:pointer;background:#f4f7f0;font-size:11px}button:hover{background:#e1ebdd}.buttons{display:flex;gap:8px;flex-wrap:wrap}pre{white-space:pre-wrap;font-size:11px;color:var(--muted);max-height:280px;overflow:auto}summary{cursor:pointer;font-weight:600}footer{display:flex;justify-content:space-between;gap:20px;padding:10px 0 25px;color:var(--muted);font-size:10px}#status{font-size:12px;color:var(--muted)}@media(max-width:700px){main{padding:22px 14px}header{padding:16px}.brand span{display:none}.badge{font-size:8px}h1{font-size:36px}.intro{display:block}.release{margin-top:20px}.card{padding:20px 14px}.card-title{align-items:start;flex-direction:column}.compact{flex:auto;width:100%}h2{font-size:23px}footer{display:block}.controls{padding:15px}.chart{overflow:auto}.chart svg{min-width:580px}}

/* Lead with the fan: compact introduction */
main{padding-top:20px}h1{font-size:32px;margin:4px 0}h1 br{display:none}.intro{align-items:flex-end}.subtitle{margin:4px 0 0}.notice{margin:14px 0 12px;padding:8px 14px}.controls{padding:12px 18px;margin-bottom:8px}
/* Fan with controls beside it */
.reading{font:17px/1.4 Georgia,serif;margin:0 0 14px;min-height:24px}
.fan-layout{display:grid;grid-template-columns:minmax(0,1fr) 250px;gap:26px;align-items:start}
.side{border-left:1px solid var(--line);padding-left:20px}.side h3{margin:0 0 12px;font-size:17px}.side .slicers{flex-direction:column;gap:10px;margin-bottom:12px}.side label{min-width:0}.side .buttons{flex-direction:column}.side .buttons button{text-align:left}
h3.sub{font-size:17px;margin:22px 0 4px}
.chips{display:flex;gap:6px;flex-wrap:wrap;margin:6px 0;min-height:30px;align-items:center}.chip{background:#e1ebdd;border-radius:14px;padding:4px 10px;font-size:11px}.chip:hover{background:#cfe0c9}.muted{font-size:11px;color:var(--muted)}
/* Scope badges and legends */
.scope-line{margin:0 0 4px}.scope{display:inline-block;font-size:11px;border-radius:12px;padding:3px 10px;border:1px solid var(--line);background:#f4f7f0;color:var(--muted)}.scope.live.on{background:#fff3d7;border-color:#e8dbb9;color:#70531b}.scope.full{border-style:dashed}
.legend .sw{display:inline-block;margin-right:6px;vertical-align:middle}.legend .sw.box{width:10px;height:10px;border-radius:2px}.legend .sw.line,.legend .sw.dash,.legend .sw.dot{width:20px;height:0;border-top:2px solid;background:none;border-radius:0}.legend .sw.dash{border-top-style:dashed}.legend .sw.dot{border-top-style:dotted}
.sel-col{box-shadow:inset 0 0 0 2px #3f7f6b}th.sel-col{color:var(--accent);font-weight:700}
/* Data tables and accessibility helpers */
.sr{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap}
.data-panel{margin:6px 0 10px;font-size:12px}.data-panel summary{font-weight:500;color:var(--accent)}.data-scroll{max-height:260px;overflow:auto;margin:8px 0}table.data{border-spacing:0}table.data td,table.data th{text-align:right;padding:3px 10px;min-width:0;border-radius:0;border-bottom:1px solid var(--line)}
@media(max-width:900px){.fan-layout{grid-template-columns:1fr}.side{border-left:0;padding-left:0;border-top:1px solid var(--line);padding-top:14px}.side .slicers{flex-direction:row;flex-wrap:wrap}.side .buttons{flex-direction:row}.intro{align-items:stretch}}
@media(max-width:700px){main{padding:16px 16px}h1{font-size:26px}.reading{font-size:15px}}

/* Tighter top so the fan sits within the first screen at 1440x900 */
h1{font-size:28px;white-space:nowrap;margin:0}.eyebrow{margin:0 0 4px}.subtitle{font-size:14px;margin:2px 0 0}.intro{gap:20px}main{padding-top:12px}.notice{margin:8px 0 6px;padding:5px 14px;font-size:12px}.controls{padding:8px 14px;margin-bottom:4px}#status{margin:2px 0}#range{margin-top:8px;padding-top:16px}#range .card-title{margin-bottom:6px}.reading{margin:0 0 6px}.chips{min-height:22px;margin:2px 0}.legend{margin:4px 0}
@media(max-width:900px){h1{white-space:normal;font-size:24px}}

/* Phones: fan first, key beneath it */
@media(max-width:700px){.release,.subtitle{display:none}.intro{gap:0}.notice{font-size:11px;padding:4px 10px}.controls{gap:8px}.controls label{min-width:90px;flex:1 1 28%;gap:2px;font-size:10px}.controls select{padding:5px 6px;font-size:12px}#range .card-title{flex-direction:column;gap:6px}.fan-main{display:flex;flex-direction:column}.fan-main #fan{order:-1}.compact label,.compact{flex:auto}#range{padding:12px 12px}}
