:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--page:#f9f9f7;--surface:#fcfcfb;--text-primary:#0b0b0b;--text-secondary:#52514e;--text-muted:#898781;--grid:#e1e0d9;--axis:#c3c2b7;--border:#0b0b0b1a;--hover-wash:#0b0b0b0a;--series-1:#2a78d6;--series-2:#eb6834;--band:#b7d3f6;--muted-series:#c3c2b7;--positive:#2a78d6;--negative:#e34948;--accent-wash:#e8f1fc;--error:#d03b3b;color:var(--text-primary);background:var(--page);font-family:system-ui,-apple-system,Segoe UI,sans-serif}@media (prefers-color-scheme:dark){:root:where(:not([data-theme=light])){--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page:#0d0d0d;--surface:#1a1a19;--text-primary:#f0efec;--text-secondary:#c3c2b7;--text-muted:#898781;--grid:#2c2c2a;--axis:#383835;--border:#ffffff1a;--hover-wash:#ffffff0d;--series-1:#3987e5;--series-2:#d95926;--band:#184f95;--muted-series:#4a4a46;--positive:#3987e5;--negative:#e66767;--accent-wash:#14273f}}:root[data-theme=dark]{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--page:#0d0d0d;--surface:#1a1a19;--text-primary:#f0efec;--text-secondary:#c3c2b7;--text-muted:#898781;--grid:#2c2c2a;--axis:#383835;--border:#ffffff1a;--hover-wash:#ffffff0d;--series-1:#3987e5;--series-2:#d95926;--band:#184f95;--muted-series:#4a4a46;--positive:#3987e5;--negative:#e66767;--accent-wash:#14273f}*{box-sizing:border-box}body,h1,h2,p{margin:0}button,select,input{font:inherit;color:inherit}.app{max-width:1200px;margin:0 auto;padding:20px 24px 40px}.app>main{min-height:100vh}.app-header{border-bottom:1px solid var(--grid);flex-wrap:wrap;align-items:center;gap:24px;padding-bottom:16px;display:flex}.brand{align-items:center;gap:12px;margin-right:auto;display:flex}.brand h1{font-size:18px;font-weight:650}.brand p{color:var(--text-secondary);font-size:13px}.tabs{background:var(--hover-wash);border-radius:8px;gap:4px;padding:3px;display:flex}.tabs button{cursor:pointer;color:var(--text-secondary);background:0 0;border:0;border-radius:6px;padding:6px 14px;font-size:14px}.tabs button[aria-selected=true]{background:var(--surface);color:var(--text-primary);box-shadow:0 0 0 1px var(--border);font-weight:600}.theme-toggle{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:6px;width:32px;height:32px}.filters{flex-wrap:wrap;align-items:flex-end;gap:16px;padding:16px 0;display:flex}.filters label{color:var(--text-secondary);flex-direction:column;gap:4px;font-size:12px;display:flex}.filters select,.filters input{border:1px solid var(--border);background:var(--surface);border-radius:6px;min-height:34px;padding:6px 8px;font-size:14px}.presets{gap:6px;display:flex}.presets button{border:1px solid var(--border);background:var(--surface);cursor:pointer;border-radius:6px;min-height:34px;padding:6px 10px;font-size:13px}.presets button.active{border-color:var(--series-1);background:var(--accent-wash);font-weight:600}.refreshing{opacity:.55;transition:opacity .12s}.stat-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:12px;margin-bottom:16px;display:grid}.stat-row--flush{margin:8px 0 0}.stat-tile{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:14px 16px}.stat-tile--emphasis{border-color:var(--series-1);box-shadow:inset 3px 0 0 var(--series-1)}.stat-label{color:var(--text-secondary);font-size:12px}.stat-value{margin:4px 0 2px;font-size:24px;font-weight:650}.stat-detail{color:var(--text-muted);font-size:12px;line-height:1.4}.card{background:var(--surface);border:1px solid var(--border);border-radius:10px;margin-bottom:16px;padding:16px 18px}.card-header{justify-content:space-between;gap:16px;margin-bottom:8px;display:flex}.card h2{font-size:15px;font-weight:650}.card-subtitle{color:var(--text-secondary);max-width:80ch;margin-top:4px;font-size:13px;line-height:1.45}.card-actions{flex-shrink:0}.grid-2{grid-template-columns:repeat(auto-fit,minmax(420px,1fr));gap:16px;display:grid}.grid-2>.card{margin-bottom:16px}.legend{color:var(--text-secondary);flex-wrap:wrap;gap:16px;margin:4px 0 8px;padding:0;font-size:12px;list-style:none;display:flex}.legend li{align-items:center;gap:6px;display:flex}.legend-key{width:16px;display:inline-block}.legend-key--line{border-top:2px solid var(--key-color)}.legend-key--dashed{border-top:2px dashed var(--key-color)}.legend-key--area,.legend-key--rect{background:var(--key-color);border-radius:2px;height:10px}.chart{width:100%}.chart-tooltip{background:var(--surface);border:1px solid var(--border);border-radius:8px;min-width:180px;padding:8px 10px;font-size:12px;box-shadow:0 4px 16px #0000001f}.chart-tooltip-title{color:var(--text-secondary);margin-bottom:6px}.chart-tooltip-row{align-items:center;gap:6px;line-height:1.6;display:flex}.chart-tooltip-row strong{font-variant-numeric:tabular-nums}.chart-tooltip-row span:last-child{color:var(--text-secondary)}.chart-tooltip-key{width:10px;height:2px;display:inline-block}.footnote{color:var(--text-muted);margin-top:8px;font-size:12px;line-height:1.45}.toggle{color:var(--text-secondary);cursor:pointer;align-items:center;gap:6px;font-size:13px;display:flex}.table-details{margin-top:12px}.table-details summary{cursor:pointer;color:var(--text-secondary);font-size:13px}.data-table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%;margin-top:8px;font-size:13px}.data-table th,.data-table td{text-align:right;border-bottom:1px solid var(--grid);white-space:nowrap;padding:6px 8px}.data-table th:first-child,.data-table td:first-child{text-align:left}.data-table th{color:var(--text-secondary);font-weight:600}.insights{color:var(--text-secondary);margin:4px 0 0;padding-left:18px;font-size:14px;line-height:1.55}.insights li+li{margin-top:6px}.insights strong{color:var(--text-primary)}.app-footer{color:var(--text-muted);margin-top:24px;font-size:12px}.loading,.error{padding:24px 0;font-size:14px}.error{color:var(--error)}@media (width<=640px){.app{padding:12px}.grid-2{grid-template-columns:1fr}.card-header{flex-direction:column}}.tabs button,.presets button,.theme-toggle,.toggle,.table-details summary{-webkit-user-select:none;user-select:none}button:focus:not(:focus-visible){outline:none}button:focus-visible,select:focus-visible,input:focus-visible,summary:focus-visible{outline:2px solid var(--series-1);outline-offset:2px}
