:root{font-family:Inter,"Segoe UI",Arial,sans-serif;color:#152238;background:#f5f7fa;font-synthesis:none;color-scheme:light;--muted:#58667a;--border:#dfe5ed}
*{box-sizing:border-box}body{margin:0}button,input,select,summary{font:inherit}button{cursor:pointer}button:focus-visible,input:focus-visible,select:focus-visible,summary:focus-visible,svg:focus-visible{outline:3px solid #067eac;outline-offset:3px}
.workspace{display:grid;grid-template-columns:300px minmax(0,1fr);max-width:1920px;margin:0 auto;align-items:start}
.regions-panel{padding:18px 12px;border-right:1px solid var(--border);background:white;min-height:100vh;position:sticky;top:0;max-height:100vh;overflow-y:auto}
.panel-heading{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:0 6px 14px}h2{font-size:18px;letter-spacing:-.3px;margin:0}
.meta-regions{margin-top:22px;padding-top:16px;border-top:1px solid var(--border)}.meta-regions h2{font-size:14px;color:#58667a;font-weight:600;margin:0 5px 8px}.meta-regions .level{display:none}
.start-year-control{display:flex;align-items:center;gap:20px;margin:18px 0 12px;font-size:14px}.start-year-control[hidden]{display:none}.start-year-control label{white-space:nowrap}.start-year-control output{font-weight:650;margin-left:6px;font-variant-numeric:tabular-nums}.start-year-control input{flex:1;min-width:60px;accent-color:#245d96}.baseline-note{font-size:14px;line-height:1.5;color:#795414;margin:12px 0}
.text-button{padding:4px 0;background:none;border:0;font-size:14px;color:#236392;text-decoration:underline;text-underline-offset:3px}.text-button:hover{color:#101e32}
.tree-row{display:flex;align-items:flex-start;gap:5px;min-height:30px;padding:4px 3px;border-radius:5px;position:relative}.tree-row:hover{background:#f1f5fa}.tree-row.selected{background:#edf3f9}
.tree-row label{display:flex;align-items:flex-start;gap:7px;flex:1;cursor:pointer;font-size:14px;line-height:1.45}.tree-row input{width:16px;height:16px;flex-shrink:0;margin:2px 0 0;accent-color:var(--line,#235cac);cursor:pointer}.tree-row label span{overflow-wrap:anywhere}
.disclosure{display:flex;align-items:center;justify-content:center;flex-shrink:0;background:transparent;border:0;width:18px;height:21px;padding:0;color:#58667a;font-size:17px}.disclosure[aria-expanded=true]{transform:rotate(90deg)}
.tree-children{margin-left:9px;border-left:1px solid #dce3ec;padding-left:7px}.tree-children[hidden]{display:none}.level{font-size:10px;color:#64748b;margin-left:auto;padding-top:4px}.no-data{color:#657185}
.chart-panel{padding:16px 24px 24px;min-width:0}.chart-meta{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:12px;font-size:13px;color:var(--muted);padding:0 0 14px;min-height:37px}#selection-count{color:#263c56;font-weight:600}
.relative-control{display:flex;align-items:center;gap:8px;font-size:14px;cursor:pointer;color:#34465d}.relative-control input{appearance:none;width:32px;height:18px;border-radius:12px;background:#cbd5e1;margin:0;cursor:pointer;position:relative;flex-shrink:0}.relative-control input:after{content:"";position:absolute;left:3px;top:3px;width:12px;height:12px;border-radius:50%;background:white;box-shadow:0 1px 2px #0003}.relative-control input:checked{background:#245d96}.relative-control input:checked:after{left:17px}
.chart-controls{display:flex;align-items:center;flex-wrap:wrap;gap:12px 20px}.adjustment-control{display:flex;align-items:center;flex-wrap:wrap;gap:7px;color:#34465d}.adjustment-control select{max-width:100%;border:1px solid #c8d3df;border-radius:5px;background:white;color:#263c56;padding:6px 8px;font-size:14px;cursor:pointer}
#chart-wrap{position:relative;background:white;border:1px solid var(--border);border-radius:6px;overflow:hidden}#chart{display:block;width:100%;touch-action:pan-y}#empty{position:absolute;top:48%;left:20%;right:10%;font-size:16px;color:var(--muted);text-align:center}
.visually-hidden{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0}
.method{margin-top:15px;font-size:13px;line-height:1.65;color:var(--muted)}.method p{margin:10px 0;max-width:920px}.method summary{cursor:pointer;color:#345775;font-size:14px}.axis-label{font-size:14px;fill:#465971}.tick{font-size:12px;fill:#66748a}.end-label{font-size:14px;font-weight:600;paint-order:stroke;stroke:white;stroke-width:4px;stroke-linejoin:round}.chart-line{fill:none;stroke-width:3.5;stroke-linecap:round;stroke-linejoin:round}.readout-line{stroke:#6f7f91;stroke-width:1;stroke-dasharray:3 4;pointer-events:none}
@media(max-width:1050px){.workspace{grid-template-columns:275px minmax(0,1fr)}.chart-panel{padding:16px 14px}}
@media(max-width:760px){.workspace{display:flex;flex-direction:column}.regions-panel{position:static;width:100%;min-height:0;max-height:300px;border-right:0;border-bottom:1px solid var(--border);padding:12px}.chart-panel{width:100%;padding:14px 10px}.chart-meta{gap:8px;font-size:12px}.relative-control{font-size:14px}}
