/* IEQ keeps the methods paper, typography, hierarchy and interaction conventions. */
:root{--accent:#276c61;--blue:#266ca5;--amber:#a56518;--violet:#7950a1}body[data-theme=dark]{--accent:#92d3bf;--blue:#8fc8f4;--amber:#f5ca89;--violet:#c7adf0}.brand-line{display:flex;align-items:center;gap:16px;white-space:nowrap}.footer-data{flex-basis:100%;font-size:.92em}.topic-subtitle{color:var(--muted);margin-top:14px!important;font-size:.85em}.stage{margin-top:28px}.chart-panel{background:#152f2c;color:#f1f0dc;padding:18px 20px 12px}.chart-caption{font-size:.78em;margin:0 0 8px;line-height:1.6}.chart-legend{display:flex;flex-wrap:wrap;gap:4px 20px;font-size:.64em;color:#d0ded3;line-height:1.8}.timeline{display:block;width:100%;height:300px}.timeline text{fill:currentColor}.chart-panel svg .grid{stroke:#46625c;stroke-width:1}.timeline .series{stroke:#f0d498;fill:none;stroke-width:1.7;vector-effect:non-scaling-stroke}.candidate-band{fill:#a1cdbb;fill-opacity:.16;stroke:#b2ddce;stroke-dasharray:4 3;stroke-width:1}.candidate-group{cursor:pointer}.candidate-group:focus{outline:none}.candidate-group:focus .candidate-band{stroke:#fff;stroke-width:3}.candidate-group[aria-pressed=true] .candidate-band{fill-opacity:.32;stroke:#f0d498;stroke-width:2;stroke-dasharray:none}.active-window{fill:#f0d498;fill-opacity:.25}.time-hit{fill:transparent;cursor:pointer}.candidate-marker{font-weight:600}.condition-summary{font-family:ResearchMono,monospace;font-size:.7em;line-height:1.7}.fit-layout{display:grid;grid-template-columns:minmax(0,1.65fr) minmax(240px,1fr);border:1px solid var(--line);margin-top:22px}.fit-plot{min-width:0;padding:20px 14px 0}.fit-result{background:var(--soft);padding:22px;border-left:1px solid var(--line);min-width:0}.ach-value{display:flex;align-items:baseline;gap:15px;margin:12px 0 20px}.ach-value output{font-family:ResearchSerif,Georgia,serif;font-size:clamp(3.5rem,7vw,5.8rem);line-height:1;letter-spacing:-.03em}.ach-value>span{font:1em ResearchMono,monospace;color:var(--muted)}.fit-result p{font-size:.74em}.fit-result dl{font-size:.75em;margin:16px 0 0}.fit-result dl>div{display:flex;justify-content:space-between;gap:10px;border-top:1px solid var(--line);padding:6px 0;flex-wrap:wrap}.fit-result dt{color:var(--muted)}.fit-result dd{margin:0;font-family:ResearchMono;font-size:.94em}.fit-result dl .full{display:block}.log-plot{height:300px;width:100%;display:block}.residual-plot{height:230px;width:100%;display:block;margin-top:20px}.chart-panel svg text,.fit-plot svg text,.residual-plot text,.sensitivity-plot text{font-family:ResearchSans,system-ui,sans-serif}.plot-axis{stroke:var(--line);stroke-width:1}.plot-dot{fill:var(--blue);fill-opacity:.6}.plot-fit{stroke:var(--accent);fill:none;stroke-width:2;stroke-dasharray:6 3}.plot-residual{fill:var(--blue)}.svg-label{fill:var(--muted)}.legal-stamp{font-size:.72em;color:var(--muted);border-left:2px solid var(--amber);padding-left:12px;margin-top:18px!important}.reading h2{flex-wrap:wrap}.reading h2 small{font-family:ResearchSans;font-size:.32em;font-weight:400;color:var(--muted)}.reading h3{font-size:1.16em}.reading section{padding-bottom:60px}.reading .math{font-family:ResearchMono,monospace}.katex{font-size:1.05em}.katex-display{margin:0!important}.equation{overflow-x:auto;max-width:100%}.sensitivity-lab{border:1px solid var(--line);background:var(--panel);padding:22px;margin:30px 0}.sensitivity-lab>h3{margin-top:0}.sensitivity-lab>p{font-size:.85em}.sensitivity-lab .control-row{margin-top:20px;gap:16px}.sensitivity-lab select{padding:6px}.sensitivity-plot{display:block;width:100%;height:300px;margin:24px 0 12px}.sensitivity-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:.82em;line-height:1.5}.sensitivity-table caption{text-align:left;font-size:.87em;color:var(--muted);margin-bottom:12px}.sensitivity-table th{font-weight:500;color:var(--muted)}.sensitivity-table td,.sensitivity-table th{padding:9px 4px;border-bottom:1px solid var(--line);text-align:center;overflow-wrap:anywhere}.sensitivity-table th:first-child{width:18%;text-align:left}.sensitivity-table button{width:100%;padding:9px 2px;min-height:44px;font-family:ResearchMono;font-size:.95em;line-height:1.4}.sensitivity-table button.invalid{font-family:ResearchSans;font-size:.75em;border-style:dashed}.sensitivity-table button[aria-pressed=true]{outline:2px solid var(--accent);outline-offset:1px}.sensitivity-table td.active{background:var(--soft)}.sensitivity-lab .policy-result{font-size:.8em}.scope h3,.legal-context h3{margin-top:0}.legal-context{margin-top:30px;border-top:1px solid var(--line);padding-top:20px;font-size:.9em}.legal-context .legal-stamp{margin:0 0 20px!important}.legal-context>p+p{margin-top:1em}.legal-context p{line-height:1.9}.policy-result{letter-spacing:0}.stage .source{font-size:.7em}.scope{font-size:.88em}.build-content li{line-height:1.8}.load-error{padding:25px;border:1px solid var(--red);margin-top:20px}body.large .ach-value output{font-size:5.5rem}body.large .fit-result{padding:16px}body.large .fit-layout{grid-template-columns:minmax(0,1.3fr) minmax(240px,1fr)}
@media(max-width:760px){.fit-layout,body.large .fit-layout{grid-template-columns:minmax(0,1fr)}.fit-result{border-left:0;border-top:1px solid var(--line)}.fit-result dl{display:grid;grid-template-columns:1fr 1fr;gap:0 18px}.fit-result dl>div{display:block}.fit-result dt{font-size:.88em}.fit-result dd{font-size:1.1em}.fit-result .ach-value{margin:12px 0}.fit-result .eyebrow{font-size:.65em}.stage .control-row{align-items:flex-start}.sensitivity-lab{padding:16px}.fit-plot{padding-top:15px}.chart-panel{padding:14px 12px 10px}.chart-legend{font-size:.62em}.fit-layout{margin-top:18px}.toolbar .trail{flex-direction:column;align-items:flex-start;gap:6px}.trail>a{line-height:1.35}.reading-layout{margin-top:45px}.reading{width:100%}.fit-result{font-size:1em}.source a{overflow-wrap:anywhere}}
@media(max-width:540px){.shell{width:calc(100% - 32px)}.chart-caption{font-size:.75em}.topic-heading h1{font-size:2.6rem}.tabbar a{min-width:0;flex:none}.tabbar{margin-bottom:0;padding-top:18px}.stage-bar .mono{font-size:.9em}.fit-plot{padding:14px 8px 0}.stage .control-row label{grid-template-columns:85px minmax(0,1fr);width:100%}.sensitivity-lab .control-row label{grid-template-columns:1fr minmax(0,1fr);width:100%}.fit-result{padding:18px}.sensitivity-table{font-size:.72em}.sensitivity-table td,.sensitivity-table th{padding:7px 2px}.sensitivity-table button{font-size:.88em}.sensitivity-table .invalid{font-size:.73em}.sensitivity-lab{margin-left:0;margin-right:0;padding:12px}.equation{font-size:.73em;padding:16px 10px}.brand{font-size:.66em}.large .brand-line{gap:10px}.large .sensitivity-table{font-size:.63em}.large .fit-result dl{grid-template-columns:minmax(0,1fr)}.large .ach-value output{font-size:4.6rem}.large .tools{max-width:190px}.large .toolbar{gap:6px}.large .trail{font-size:.67em}.large .tools button{font-size:.65em}.large .sensitivity-lab{padding:10px}.large .sensitivity-table button{font-size:.9em}.large .equation{font-size:.65em}}
@media print{.chart-panel{print-color-adjust:exact;-webkit-print-color-adjust:exact;background:#152f2c;color:#f1f0dc}.fit-layout,body.large .fit-layout{grid-template-columns:1.5fr 1fr}.fit-result{border-left:1px solid #aaa;border-top:0}.fit-result dl{display:block}.fit-plot svg{height:230px!important}.sensitivity-lab{break-inside:auto}.legal-stamp{color:#333}.scope{break-inside:avoid}#fit-diagnostics>svg,#fit-diagnostics>p{display:block!important}.sensitivity-table button{background:white;color:black;border:1px solid #aaa}.sensitivity-table button[aria-pressed=true]{background:#ddd;color:black}.chart-legend{color:#ddd}}
.fit-legend{font-size:.67em;color:var(--muted);padding:0 10px 14px;line-height:1.7}
/* Live calculation panels retain the E2.3 paper and green instrument palette. */
.env-lab{border:1px solid var(--line);break-inside:auto}.env-lab-body{padding:22px;background:var(--panel)}.env-lab-body>p{font-size:.82em;line-height:1.8;margin-bottom:20px}.env-lab-body .source{font-size:.72em;margin-top:15px}.env-controls{display:grid;grid-template-columns:repeat(auto-fit,minmax(155px,1fr));gap:16px;margin:20px 0}.env-lab label{display:flex;flex-wrap:wrap;align-items:center;gap:8px;font-size:.74em;margin:12px 0}.env-controls label{margin:0}.env-lab label .mono{margin-left:auto;color:var(--muted);font-size:.85em}.env-lab input,.env-lab select{width:100%;min-width:0;max-width:100%;font:inherit;color:var(--ink);background:var(--bg);border:1px solid var(--line);border-radius:3px;padding:10px;min-height:44px}.env-lab input:invalid{outline:2px solid var(--amber)}.env-lab svg{display:block;width:100%;height:310px;margin:22px 0 10px;touch-action:pan-y}.env-lab svg[data-waveform]{height:180px}.env-lab svg[tabindex]{cursor:crosshair}.env-lab svg:focus-visible{outline:2px solid var(--accent);outline-offset:4px}.env-result{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:1px;background:var(--line);border:1px solid var(--line)}.env-result>div{background:var(--soft);padding:15px;min-width:0}.env-result span{display:block;font-size:.65em;color:var(--muted);margin-bottom:8px}.env-result output{font-family:ResearchMono,monospace;display:block;font-size:.9em;overflow-wrap:anywhere}.env-lab .actions{flex-wrap:wrap}.tabbar a{flex:none;min-width:0;white-space:nowrap}.reading-layout{min-width:0}.env-lab .stage-bar{flex-wrap:wrap;gap:8px}.env-lab .stage-bar strong{font-weight:500}
@media(max-width:760px){.env-lab-body{padding:14px}.env-result{grid-template-columns:1fr 1fr}.env-controls{grid-template-columns:1fr 1fr}.env-lab .stage-bar{font-size:.75em}.env-lab .stage-bar .mono{font-size:.75em}.env-lab label{font-size:.74em}.env-result output{font-size:.78em}.tabbar{gap:20px}.tabbar a{font-size:.75em}.env-lab .actions button{font-size:.75em}}
@media(max-width:400px){body.large .env-controls,body.large .env-result{grid-template-columns:1fr}.env-lab-body{padding:12px}.env-controls{gap:12px}.env-result>div{padding:10px}.env-lab label .mono{margin-left:0}.env-lab .actions{gap:8px}}
@media print{[data-topic-tab][hidden]{display:block!important}[data-topic-tab]{break-before:page}.env-lab{break-inside:auto}.env-lab .actions,.env-controls,.env-lab label{display:none}.env-lab svg{break-inside:avoid}.env-result{grid-template-columns:repeat(4,1fr)}.env-lab-body{padding:12px}.env-lab .stage-bar{print-color-adjust:exact}}
/* E3/E4: separate plot captions and calibrated-data labels. */
.plot-legend{font-size:.7em;color:var(--muted);line-height:1.8;overflow-wrap:anywhere;margin:0 0 15px}.env-lab svg[data-diagram]{height:200px;max-width:600px;margin:12px auto}.scatter-wrap{position:relative;height:330px;margin:22px 0 10px}.scatter-wrap canvas{position:absolute;inset:0;width:100%;height:330px;pointer-events:none}.scatter-wrap svg{position:absolute;inset:0;margin:0;height:330px;background:transparent}.env-lab .env-controls button{align-self:end;padding:10px;font:inherit;font-size:.8em;min-height:44px}.notation caption{text-align:left;color:var(--muted);font-size:.8em;padding:10px 0}.reading .notation{font-size:.8em;table-layout:fixed;overflow-wrap:anywhere}.env-lab svg text[role=button]{cursor:pointer;text-decoration:underline}.env-lab svg text[role=button]:focus{outline:2px solid var(--accent)}
@media print{.scatter-wrap{print-color-adjust:exact;-webkit-print-color-adjust:exact}.env-lab .env-controls{display:none}.env-result{grid-template-columns:repeat(2,1fr)}}
.env-lab input[type=range]{padding:0;min-height:28px;accent-color:var(--accent)}
