*{box-sizing:border-box}html,body{color:#e6e8ef;background:#0b1020;height:100%;margin:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;font-size:14px}body{overflow-y:auto}#app{flex-direction:column;width:100vw;min-height:100vh;display:flex}#top-row{width:100%;height:72vh;min-height:420px;display:flex;position:relative}#panel-toggle{z-index:40;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0b1020d9;border:1px solid #334165;border-radius:6px;width:auto;padding:8px 14px;font-size:13px;position:fixed;top:16px;right:16px}#scene-container{flex:auto;min-width:0;position:relative}#scene-overlay{pointer-events:none;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0b1020b3;border:1px solid #334165;border-radius:6px;padding:8px 14px;font-size:13px;line-height:1.5;position:absolute;top:16px;left:16px}#scene-overlay .glare-yes{color:#ff6b5e;font-weight:600}#scene-overlay .glare-no{color:#8891a7}#pov-toggle{-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0b1020b3;border:1px solid #334165;border-radius:6px;width:auto;padding:8px 14px;font-size:13px;position:absolute;top:16px;right:16px}#pov-toggle.active{background:#2a3a66;border-color:#3a4a7a}#panel{background:#11182b;border-left:1px solid #22304a;flex:0 0 340px;padding:16px;transition:flex-basis .2s,padding .2s;overflow-y:auto}#top-row.panel-collapsed #panel{border-left:none;flex-basis:0;padding:0;overflow:hidden}@media (width<=760px){#panel{z-index:30;flex-basis:auto;width:min(340px,85vw);height:100%;padding:16px;transition:transform .2s;position:absolute;top:0;right:0;transform:translate(0);box-shadow:-12px 0 28px #00000073}#top-row.panel-collapsed #panel{border-left:1px solid #22304a;padding:16px;transform:translate(100%)}}#top-row.panel-collapsed #pov-toggle{top:60px}#panel h1{margin:0 0 4px;font-size:16px}#panel .subtitle{color:#8891a7;margin:0 0 16px;font-size:12px}#panel section{border-bottom:1px solid #22304a;margin-bottom:20px;padding-bottom:16px}#panel section:last-child{border-bottom:none}#panel h2{text-transform:uppercase;letter-spacing:.06em;color:#8891a7;margin:0 0 10px;font-size:12px}.field{justify-content:space-between;align-items:center;gap:8px;margin-bottom:8px;display:flex}.field[hidden]{display:none}.field label{color:#c3c9db;flex:auto}.field input[type=number],.field input[type=date]{color:#e6e8ef;background:#0b1020;border:1px solid #334165;border-radius:4px;width:110px;padding:4px 6px}.field input[type=range]{flex:auto}.readout{background:#0b1020;border:1px solid #334165;border-radius:6px;padding:10px 12px;font-size:13px;line-height:1.6}.readout .glare-yes{color:#ff6b5e;font-weight:600}.readout .glare-no{color:#6bffb0;font-weight:600}button{color:#e6e8ef;cursor:pointer;background:#2a3a66;border:1px solid #3a4a7a;border-radius:6px;width:100%;padding:8px 12px;font-size:13px}button:hover{background:#344a86}button.active{background:#1b6b5c;border-color:#2a8f7a}button.active:hover{background:#1f8270}button:disabled{opacity:.5;cursor:wait}#year-section{border-top:1px solid #22304a;padding:20px 24px 40px}#year-section .year-header{justify-content:space-between;align-items:baseline;gap:12px;margin-bottom:12px;display:flex}#year-section h2{margin:0;font-size:14px}#year-section .subtitle{color:#8891a7;margin:2px 0 0;font-size:12px}#year-section .year-actions{gap:8px;display:flex}#year-section .year-actions button{width:auto}.viz-root{--chart-surface:#1a1a19;--text-primary:#fff;--text-secondary:#c3c2b7;--text-muted:#898781;--gridline:#2c2c2a;--baseline:#383835;--series-1:#3987e5}#year-chart-svg{background:var(--chart-surface);border-radius:6px;width:100%;height:320px;display:block}#year-chart-svg text{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.chart-tooltip{pointer-events:none;color:var(--text-secondary);white-space:nowrap;background:#0b1020;border:1px solid #334165;border-radius:6px;padding:6px 10px;font-size:12px;line-height:1.5;position:absolute;transform:translate(-50%,-110%)}.chart-tooltip strong{color:var(--text-primary)}.chart-tooltip .key{background:var(--series-1);vertical-align:middle;width:10px;height:2px;margin-right:5px;display:inline-block}#year-table-wrap{border:1px solid #22304a;border-radius:6px;max-height:320px;margin-top:14px;overflow-y:auto}#year-table-wrap table{border-collapse:collapse;width:100%;font-size:12px}#year-table-wrap th,#year-table-wrap td{text-align:left;font-variant-numeric:tabular-nums;border-bottom:1px solid #1c2740;padding:4px 10px}#year-table-wrap th{color:var(--text-muted);background:#11182b;position:sticky;top:0}
