/* Neutral workspace; colour identifies data, not decoration. */
:root{--bg:#f5f5f4;--panel:#fff;--ink:#161a18;--muted:#737773;--line:#e2e4e1;--green:#1d5b43}
body{color:var(--ink);background:var(--bg)}h1,h2,h3,.brand{color:#151a17}
header nav{max-width:1600px;padding-inline:28px;gap:6px}.about-trigger{font-size:12px;border:0;background:none;color:#5e665f;padding:8px 12px}.about-trigger:hover{background:#efefed}
main.overview-layout{display:grid;grid-template-columns:minmax(0,1fr) 300px;align-items:start;gap:24px;max-width:1600px;padding:24px 28px 30px}.overview-content{min-width:0}.overview-layout>footer{grid-column:1/-1}
.overview-layout>.catalyst-rail{position:sticky;top:86px;display:flex;flex-direction:column;gap:0;height:auto;max-height:calc(100dvh - 108px);padding:0;margin:0;background:#fff;border:1px solid var(--line);border-radius:8px;overflow:auto;scrollbar-width:thin}
.overview-layout>.catalyst-rail .rail-heading{display:flex;margin:0;padding:15px 16px 8px;height:auto}.rail-heading h2{font-size:15px;font-weight:650}.rail-refresh{font-size:18px}
.overview-layout>.catalyst-rail .rail-items{display:block;flex:0 0 auto;min-height:0;padding:0 16px;max-height:none;overflow:visible}
.overview-layout>.catalyst-rail .rail-item{display:flex;align-items:flex-start;gap:8px;padding:10px 0;max-height:none;min-height:0;width:100%;flex:none;border-bottom:1px solid #eceeeb;border-radius:0;background:none;transition:background .18s,color .18s}
.overview-layout>.catalyst-rail .rail-item:before{content:'';display:block;flex:0 0 4px;height:4px;margin-top:7px;border-radius:50%;background:#8c948e}
.overview-layout>.catalyst-rail .rail-item:hover{background:#f4f6f3;color:#111}.overview-layout>.catalyst-rail .rail-item:hover:before{background:#1d5b43}
.overview-layout>.catalyst-rail .rail-item .economic-title{display:block;font-size:11px;line-height:1.5;color:#303c34;white-space:normal;overflow:visible;-webkit-line-clamp:unset}
.overview-layout>.catalyst-rail #railPages{display:flex;align-items:center;gap:5px;padding:0;margin:12px 16px 14px;min-height:26px;flex:none;width:auto;max-width:none}
.overview-layout>.catalyst-rail #railPages button{padding:4px 8px;font-size:10px;border-radius:4px}.overview-layout>.catalyst-rail .rail-all{margin:0 0 0 auto;padding:0;font-size:10px}
.overview-layout>.catalyst-rail #whaleAccumulationSlot{margin:0;padding:18px 16px 19px;border:0;border-top:1px solid var(--line);background:#f8faf7;display:block;order:2;flex:none}
#whaleAccumulationSlot h2{font-size:14px;font-weight:650}.whale-title{gap:5px}.whale-periods button{font-size:10px;padding:5px}.whale-periods button[aria-pressed=true]{background:#182e22;color:#fff;border-radius:4px}
#whaleAccumulationSlot .whale-score{font-size:29px;font-weight:650;margin:17px 0 22px;padding:0;text-align:left;letter-spacing:-1px}.whale-scale{font-weight:700;color:#485a4d}.whale-bar{height:8px}.whale-dialog{width:460px!important}.whale-dialog p{font-size:13px;line-height:1.75}.whale-dialog h2{margin-top:0}
.overview-content .card{padding:17px 18px!important}.overview-content .value{font-size:29px;letter-spacing:-1px}.card .label{font-size:12px}.card .delta{font-size:11px}
.activity-main{flex-wrap:wrap}.activity-main h2{white-space:nowrap}.activity-toolbar{gap:12px;align-items:center}.activity-actions{margin-left:auto}.activity-panel .chart{height:340px!important}.activity-panel .activity-subbar{margin-top:9px}.activity-panel .chart-brush{height:25px}
.activity-toolbar .metric-tabs{background:#f3f4f1;padding:3px;border-radius:6px}.activity-toolbar .metric-tabs button{padding:7px 10px;font-size:11px;color:#697169}.activity-toolbar .metric-tabs button.on{background:#1d3026;color:#fff;box-shadow:none}
.activity-toolbar .interval-tabs button{padding:6px 8px;color:#697169;border-radius:4px}.activity-toolbar .interval-tabs button.on{background:#1d3026;color:#fff}
.activity-toolbar #compareOpen.on{background:#e4ede6;color:#1e432d}.metric-chip{font-size:11px;padding:4px 8px}.metric-chip button{font-size:12px}.activity-subbar:has(.metric-chip){min-height:28px}
.rate-grid{gap:16px}.rate-panel{padding:18px!important}.rate-heading h2{font-size:16px}.rate-value{font-size:29px;margin-top:14px}.rate-panel .chart{height:255px!important;margin-top:12px!important}#fundamentalPlot{height:340px!important}
.chart-tip,#researchTip,.research-tip{background:#fff!important;color:#273b2e!important;border:1px solid #dce3dc;box-shadow:0 4px 18px #10231912;border-radius:6px;font-size:12px;line-height:1.65;padding:10px 13px;max-width:270px;white-space:pre-line}
#network-supply .supply-net{background:#edf3ed}#network-supply th:first-child,#network-supply .supply-month-row>th{background:#f0f2ee}.supply-table thead th{font-size:11px}.supply-table td{font-size:12px}
footer{display:flex;justify-content:center;gap:5px;align-items:center;font-size:12px;padding:22px 0;color:#707771}footer a{color:#17271d;font-weight:650;border-bottom:1px solid #a8b5aa;padding-bottom:2px;transition:color .2s,border-color .2s}footer a:hover{color:#1d7550;border-color:#1d7550}
.workspace-dialog{width:470px;max-width:calc(100% - 28px);border:1px solid var(--line);border-radius:10px;padding:25px;color:#1d2820;background:#fff;box-shadow:0 20px 70px #16251b25}.workspace-dialog::backdrop{background:#16221b55;backdrop-filter:blur(3px)}.workspace-dialog h2{font-size:21px;letter-spacing:-.5px;margin:0 30px 14px 0}.workspace-dialog p{font-size:13px;line-height:1.75;margin:10px 0;color:#657067}.dialog-close{float:right;width:28px;height:28px;border:0;background:#f3f4f1;padding:0;border-radius:50%;font-size:18px}.about-actions{display:flex;gap:15px;align-items:center;margin-top:20px;font-size:11px}.about-actions button{font-size:11px}.methods-dialog{width:630px;max-height:80dvh;overflow:auto}.methods-dialog details{font-size:12px;border-top:1px solid var(--line);padding-top:12px;margin-top:15px}
/* Quiet table contrast and row feedback. */
.integrator-table,.integrators-table{border:1px solid var(--line);border-radius:7px;overflow:hidden}table tbody tr:nth-child(even){background:#fafbf9}table tbody tr:hover{background:#eef3ed}table thead th{background:#eef1ed;color:#516054}table td:first-child button{font-weight:600}table td:first-child{color:#1d3324}.integrator-method{margin:0}
.scenario-card{transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease}.scenario-card:hover{transform:translateY(-4px);box-shadow:0 10px 28px #1e392610;border-color:#a5b9aa}.scenario-card:focus-visible{outline:2px solid #1c4830;outline-offset:4px}.scenario-card svg{height:145px!important}.scenario-cards{gap:18px}.tool-pane .plot-area>svg{height:340px!important;min-height:300px}.tool-pane .tool-layout{grid-template-columns:minmax(0,1fr) 280px}.research-results strong{font-size:27px}.choice-group .active,.choice-group [aria-pressed=true]{background:#1c3325;color:white;border-color:#1c3325}.plot-legend{font-size:12px}.research-method#relationships{margin-top:22px}.research-method#relationships:not([open]){padding-bottom:6px}
@media(min-width:1450px){main.overview-layout{grid-template-columns:minmax(0,1fr) 325px}}
@media(max-width:1200px){.activity-actions{width:100%;justify-content:flex-end}.overview-content .cards{gap:8px}.overview-content .value{font-size:25px}.overview-content .card{padding:14px!important}.rate-panel .chart{height:230px!important}.activity-panel .chart{height:320px!important}}
@media(max-width:1000px){main.overview-layout{grid-template-columns:minmax(0,1fr) 270px;gap:16px;padding:20px}.overview-content .cards{grid-template-columns:repeat(2,minmax(0,1fr))}.rate-grid{grid-template-columns:1fr}.tool-pane .tool-layout{grid-template-columns:minmax(0,1fr) 240px}}
@media(max-width:760px){header nav{padding:0 12px;gap:0}.about-trigger{font-size:11px;padding:8px}.brand{font-size:18px!important}header nav>a:not(.brand){padding:0 8px;font-size:11px}main.overview-layout{display:flex;flex-direction:column;padding:18px 12px;gap:0}.overview-content{width:100%}.overview-layout>.catalyst-rail{position:static;max-height:none;width:100%;margin-top:18px}.overview-layout>footer{width:100%}.heading{flex-direction:row}.activity-main{width:100%;gap:8px}.activity-main h2{width:100%}.activity-actions{width:100%;justify-content:space-between}.activity-toolbar .metric-tabs button{padding:7px 10px}.activity-panel .chart{height:290px!important}.rate-panel .chart{height:250px!important}#fundamentalPlot{height:300px!important}.tool-pane .tool-layout{grid-template-columns:1fr}.tool-pane .plot-area>svg{height:300px!important}.about-actions{flex-wrap:wrap}.workspace-dialog{padding:22px}.research-results strong{font-size:23px}.scenario-card svg{height:130px!important}}
@media(prefers-reduced-motion:reduce){.scenario-card,.rail-item,footer a{transition:none!important;animation:none!important}.scenario-card:hover{transform:none}}
