/* Shared institutional component system, informed by the supplied UI books.
   Explicit light/dark palettes prevent inherited white text on pale surfaces. */
:root{--ahs-space-1:4px;--ahs-space-2:8px;--ahs-space-3:12px;--ahs-space-4:16px;--ahs-space-5:24px;--ahs-space-6:32px;--ahs-space-7:48px;--ahs-space-8:64px;--ahs-reading:72ch;--ahs-light-surface:#f7f9fa;--ahs-light-ink:#173647;--ahs-light-muted:#3e5664;--ahs-dark-surface:#102d3e;--ahs-dark-ink:#edf3f5;--ahs-dark-muted:#c7d6df;--ahs-accent-ink:#70531e}
body[data-cabinet-page] :is(.energy-workbench,#hybrids,#basel,#energy-extension,#almDecision-pricers,#behaviourDecision-pricers) .complete-risk-formula{background:var(--ahs-light-surface)!important;color:var(--ahs-light-ink)!important;border:0;border-left:3px solid #a5843e;border-radius:0 6px 6px 0;box-shadow:none;padding:clamp(16px,2vw,24px);max-width:100%;min-width:0}
body[data-cabinet-page] :is(.energy-workbench,#hybrids,#basel,#energy-extension,#almDecision-pricers,#behaviourDecision-pricers) .complete-risk-formula :is(h5,.model-input-definitions,.model-input-definitions strong,.model-input-definitions span){color:var(--ahs-light-ink)!important;opacity:1!important}
body[data-cabinet-page] :is(.energy-workbench,#hybrids,#basel,#energy-extension,#almDecision-pricers,#behaviourDecision-pricers) .complete-risk-formula h5{font:600 16px/1.5 Arial,sans-serif!important;letter-spacing:0!important;text-transform:none;margin:24px 0 12px!important}
body[data-cabinet-page] :is(.energy-workbench,#hybrids,#basel,#energy-extension,#almDecision-pricers,#behaviourDecision-pricers) .complete-risk-formula>p{color:var(--ahs-light-muted)!important;opacity:1!important;background:transparent!important;border:0!important;padding:0!important;font-size:15px!important;line-height:1.7;max-width:var(--ahs-reading)}
body[data-cabinet-page] :is(.energy-workbench,#hybrids,#basel,#energy-extension,#almDecision-pricers,#behaviourDecision-pricers) .complete-risk-formula .model-input-definitions>li{display:grid!important;grid-template-columns:minmax(3.5rem,auto) minmax(0,1fr);gap:12px;padding:10px 0;border-color:#d5dfe3;overflow-wrap:anywhere}
body[data-cabinet-page] .energy-workbench :is(.ew-research>section>p,.ew-secondary>p,.ew-method>p,.ew-inputs label,.ew-inputs legend,.ew-axis-caption,.ew-export-status){color:var(--ahs-light-ink)}
body[data-cabinet-page] .energy-workbench :is(.ahs-field-hint,.ahs-equation-help){color:var(--ahs-light-muted)!important}
.energy-workbench .ew-shell{border:0;border-radius:8px;box-shadow:0 4px 16px #0b23320c;background:#fff;overflow:hidden}
.energy-workbench .ew-shell aside{background:#edf2f4;border:0;padding:24px 16px}
.energy-workbench .ew-panel{padding:24px}.energy-workbench .ew-panel-head h3{line-height:1.3}
.energy-workbench .ew-layout{grid-template-columns:1fr;gap:24px}.energy-workbench .ew-inputs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;margin-bottom:8px}.energy-workbench .ew-inputs :is(legend,.ew-error){grid-column:1/-1}.energy-workbench .ew-inputs label{margin:0;font-size:14px}
.energy-workbench input[type=number],.energy-workbench select{background:#fff;color:var(--ahs-light-ink);border-color:#8295a0;min-height:44px;font-size:16px}.energy-workbench input[type=range]{accent-color:#70531e}
.energy-workbench .ew-values{border:0;border-radius:6px;gap:8px;background:transparent;margin:0 0 24px}.energy-workbench .ew-values>div{background:#edf2f4;border:0;border-radius:6px;padding:16px}.energy-workbench .ew-values>div:nth-child(2){background:#102d3e;color:#edf3f5}.energy-workbench .ew-values>div:nth-child(2) :is(small,strong,strong span){color:#edf3f5}.energy-workbench .ew-values small{font-size:14px}.energy-workbench .ew-values strong{font-variant-numeric:tabular-nums}
.energy-workbench .ew-workflow{display:flex;gap:8px 24px;flex-wrap:wrap;counter-reset:workflow;margin:0 0 24px;padding:0;list-style:none;font:14px/1.6 Arial;color:#3e5664}.energy-workbench .ew-workflow li{counter-increment:workflow}.energy-workbench .ew-workflow li::before{content:counter(workflow,decimal-leading-zero) ' · ';color:#70531e;font-weight:700}
.energy-workbench .ew-research{display:block;border:0;margin-top:32px;padding:0}.energy-workbench .ew-model-method>p{max-width:var(--ahs-reading);margin-bottom:20px}.energy-workbench .ew-secondary{margin-top:12px;border:0;padding:16px;background:#edf2f4;border-radius:6px}.energy-workbench .ew-secondary summary{min-height:28px;color:#173647;font-weight:600}.energy-workbench .ew-secondary p{max-width:var(--ahs-reading)}.energy-workbench .ew-method{padding-top:16px;margin-top:24px}
.energy-workbench .ew-chart{position:relative;border-radius:6px;background:#fff;max-width:100%;overflow-x:auto}.energy-workbench .ew-chart svg{min-width:560px}.energy-workbench .ew-axis-caption{font-size:14px;line-height:1.65;margin-top:12px}.energy-workbench .ew-exports{margin-top:16px}.energy-workbench button[data-export],.energy-workbench button[data-reset]{min-height:44px;border-radius:4px;font-size:14px}
body[data-cabinet-page] :is(.formula-reference,.risk-equations){background:var(--ahs-dark-surface);color:var(--ahs-dark-ink);border:0;border-radius:6px}
body[data-cabinet-page] :is(.formula-reference,.risk-equations) :is(h3,caption,dd,p){color:var(--ahs-dark-ink)}
body[data-cabinet-page] :is(.formula-reference,.risk-equations) dt{color:#ead4a4}
body[data-cabinet-page] :is(.lab-local-nav,.trading-local-nav,.risk-local-nav){background:#0b2332;position:sticky;top:var(--ahs-header-height,80px);z-index:90;display:flex;gap:8px;padding:8px 4vw;align-items:center;overflow-x:auto;scrollbar-width:thin}
body[data-cabinet-page] :is(.lab-local-nav,.trading-local-nav,.risk-local-nav) a{min-height:44px;display:inline-flex;align-items:center;flex:0 0 auto;color:#edf3f5;border:0;border-radius:4px;font:500 14px/1.4 Arial;padding:8px 12px}
body[data-cabinet-page] :is(.lab-local-nav,.trading-local-nav,.risk-local-nav) a[aria-current=location]{background:#d5b778;color:#102d3e}
.ahs-local-select{display:none;width:100%;color:#edf3f5;font:14px/1.5 Arial}.ahs-local-select select{min-height:44px;width:100%;background:#fff;color:#173647;border:0;border-radius:4px;font:16px Arial;padding:8px 12px;margin:4px 0 0}
body :is(button,a,input,select,textarea,summary):focus-visible{outline:3px solid #92702d;outline-offset:3px}
body[data-cabinet-page] summary{cursor:pointer;line-height:1.6}body[data-cabinet-page] summary::marker{color:#977235}
body[data-cabinet-page] :is(.paper,.note-paper,.decision-research,.bank-reading) p{max-width:var(--ahs-reading);line-height:1.8}
body[data-cabinet-page] .note-paper{width:100%;box-sizing:border-box}
.ahs-evidence148{max-width:1440px;margin:48px auto;padding:32px 4vw;color:#173647;background:#f7f9fa;border-radius:8px}.ahs-evidence148>header{max-width:var(--ahs-reading);margin-bottom:32px}.ahs-evidence148 h2{font:400 clamp(28px,3vw,42px)/1.2 Georgia,serif;color:#173647}.ahs-evidence148 h3{font:600 20px/1.35 Georgia,serif;color:#173647}.ahs-evidence148 p{max-width:var(--ahs-reading);font:16px/1.8 Arial;color:#3e5664}.ahs-evidence-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.ahs-evidence-grid article{background:#fff;padding:24px;border:0;border-radius:6px;min-width:0}.ahs-evidence148 details{margin-top:16px;padding-top:12px;border-top:1px solid #d5dfe3}.ahs-evidence148 summary{color:#173647;font:600 14px/1.6 Arial;min-height:32px}.ahs-evidence148 a{color:#70531e;font-weight:600;text-underline-offset:4px}.ahs-evidence148 .evidence-source{font-size:14px;color:#3e5664}.ahs-evidence148 .evidence-statement{font-size:14px;border-left:3px solid #a5843e;padding-left:16px}.ahs-evidence148 .math-display{box-shadow:none}
@media(max-width:900px){.energy-workbench .ew-inputs{grid-template-columns:repeat(2,minmax(0,1fr))}.ahs-evidence-grid{grid-template-columns:1fr}.energy-workbench .ew-shell{grid-template-columns:190px minmax(0,1fr)}}
@media(max-width:650px){body[data-cabinet-page] :is(.lab-local-nav,.trading-local-nav,.risk-local-nav){overflow:visible;padding:8px 12px}body[data-cabinet-page] :is(.lab-local-nav,.trading-local-nav,.risk-local-nav).has-mobile-select>a{display:none}.ahs-local-select{display:block}.ahs-local-select>span{display:block}.energy-workbench .ew-shell{display:block}.energy-workbench .ew-shell aside{padding:16px}.energy-workbench .ew-panel{padding:16px}.energy-workbench .ew-inputs{grid-template-columns:1fr}.energy-workbench .ew-workflow{font-size:13px;gap:8px 16px}.energy-workbench .ew-values{grid-template-columns:1fr}.energy-workbench .ew-catalog{max-height:240px}.energy-workbench .complete-risk-formula .model-input-definitions>li{grid-template-columns:1fr!important;gap:4px}.energy-workbench .ew-toolbar{grid-template-columns:1fr}.ahs-evidence148{margin:24px 12px;padding:24px 16px}.ahs-evidence-grid article{padding:20px}.ahs-header{gap:10px;padding:12px!important}.ahs-brand img{width:155px!important;height:36px!important}.ahs-main-nav{gap:16px;padding-top:0;scrollbar-width:thin}.ahs-main-nav a{min-height:44px;display:inline-flex;align-items:center}}
@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}
@media(forced-colors:active){.ew-values>div,.complete-risk-formula,.ahs-evidence-grid article{border:1px solid CanvasText!important}.energy-workbench .ew-values>div:nth-child(2){background:Canvas;color:CanvasText}body :focus-visible{outline-color:Highlight}}
@media print{.ahs-local-select,.ew-workflow{display:none}.ahs-evidence148{margin:0;padding:0;background:white}.ahs-evidence-grid{display:block}.ahs-evidence-grid article{break-inside:avoid}}
/* Preserve chart label size; scrolling is confined to the graphic, never the page. */
.energy-workbench .ew-chart svg{min-width:760px}.energy-workbench .ew-chart-scroll-hint{margin:8px 0;color:#3e5664;font:14px/1.6 Arial}
@media(max-width:650px){body[data-cabinet-page] :is(.energy-workbench,#hybrids,#basel,#energy-extension,#almDecision-pricers,#behaviourDecision-pricers) .complete-risk-formula .model-input-definitions>li{grid-template-columns:1fr!important;gap:4px}}

/* Field errors name the parameter as well as changing the border colour. */
.energy-workbench .ew-error{color:#9c3028!important;grid-column:1/-1;line-height:1.6}
.energy-workbench input[type=number][aria-invalid=true]{border:2px solid #9c3028!important;background:#fff5f2}
