: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;--accent:#2a78d6;--series-forecast:#2a78d6;--series-actual:#eb6834;--series-final:#1baf7a;--band:#2a78d629;--good:#006300;--critical:#d03b3b;--radius:12px;color:var(--text-primary);background:var(--page);font-family:system-ui,-apple-system,Segoe UI,sans-serif}@media (prefers-color-scheme:dark){:root: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;--accent:#3987e5;--series-forecast:#3987e5;--series-actual:#d95926;--series-final:#199e70;--band:#3987e538;--good:#0ca30c}}: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;--accent:#3987e5;--series-forecast:#3987e5;--series-actual:#d95926;--series-final:#199e70;--band:#3987e538;--good:#0ca30c}*{box-sizing:border-box}body{background:var(--page);margin:0}.app{max-width:1240px;margin:0 auto;padding:24px 16px 48px}.header{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:16px;margin-bottom:20px;display:flex}.brand{align-items:center;gap:12px;display:flex}.brand img{width:36px;height:36px}.brand h1{letter-spacing:-.01em;margin:0;font-size:1.35rem}.brand p{color:var(--text-secondary);margin:2px 0 0;font-size:.9rem}.controls{flex-wrap:wrap;align-items:flex-end;gap:12px;display:flex}.field{color:var(--text-secondary);flex-direction:column;gap:4px;font-size:.78rem;display:flex}.field select,.field input{font:inherit;color:var(--text-primary);background:var(--surface);border:1px solid var(--border);border-radius:8px;min-height:38px;padding:7px 10px;font-size:.95rem}.stepper{align-items:center;gap:6px;display:flex}button{font:inherit;color:var(--text-primary);background:var(--surface);border:1px solid var(--border);cursor:pointer;border-radius:8px;min-height:38px;padding:0 12px}button:hover:not(:disabled){border-color:var(--accent)}button:disabled{opacity:.4;cursor:default}button:focus-visible,select:focus-visible,input:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.tabs{border-bottom:1px solid var(--border);gap:4px;margin-bottom:20px;display:flex;overflow-x:auto}.tab{color:var(--text-secondary);white-space:nowrap;background:0 0;border:none;border-bottom:2px solid #0000;border-radius:0;padding:10px 14px}.tab[aria-selected=true]{color:var(--text-primary);border-bottom-color:var(--accent);font-weight:600}.banner{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);color:var(--text-secondary);margin-bottom:16px;padding:12px 16px;font-size:.92rem;line-height:1.5}.banner strong{color:var(--text-primary)}.tiles{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;margin-bottom:16px;display:grid}.tile{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px}.tile .label{color:var(--text-secondary);font-size:.8rem}.tile .value{letter-spacing:-.01em;margin-top:4px;font-size:1.6rem;font-weight:600}.tile .sub{color:var(--text-muted);margin-top:4px;font-size:.78rem}.grid-2{grid-template-columns:repeat(auto-fit,minmax(min(100%,520px),1fr));gap:16px;display:grid}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);min-width:0;margin-bottom:16px;padding:16px}.card-head{flex-wrap:wrap;justify-content:space-between;gap:8px;margin-bottom:8px;display:flex}.card h2{margin:0;font-size:1rem}.card .subtitle{color:var(--text-secondary);margin:4px 0 0;font-size:.84rem;line-height:1.45}.legend{color:var(--text-secondary);flex-wrap:wrap;gap:14px;margin:4px 0 8px;font-size:.82rem;display:flex}.legend span{align-items:center;gap:6px;display:inline-flex}.key-line{border-top:2px solid;width:16px;height:0;display:inline-block}.key-line.dashed{border-top-style:dashed}.key-area{background:var(--band);border-radius:2px;width:14px;height:10px;display:inline-block}.legend label{cursor:pointer;align-items:center;gap:6px;display:inline-flex}.tooltip{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:8px 10px;font-size:.82rem;box-shadow:0 4px 16px #0000001f}.tooltip .title{color:var(--text-secondary);margin-bottom:4px}.tooltip .row{align-items:center;gap:8px;display:flex}.tooltip .row strong{font-variant-numeric:tabular-nums}.tooltip .row .name{color:var(--text-secondary)}.insights{margin:0;padding-left:20px;font-size:.93rem;line-height:1.6}.insights li{margin-bottom:2px}details.table-view{margin-top:8px;font-size:.85rem}details.table-view summary{cursor:pointer;color:var(--text-secondary)}.table-wrap{max-height:320px;margin-top:8px;overflow:auto}table{border-collapse:collapse;font-variant-numeric:tabular-nums;width:100%}th,td{text-align:right;border-bottom:1px solid var(--grid);white-space:nowrap;padding:4px 8px}th:first-child,td:first-child{text-align:left}th{background:var(--surface);color:var(--text-secondary);font-weight:500;position:sticky;top:0}.status{text-align:center;color:var(--text-secondary);padding:48px 16px}.status.error{color:var(--critical)}.footer{color:var(--text-muted);margin-top:24px;font-size:.8rem;line-height:1.6}.footer a{color:inherit}.recharts-cartesian-axis-tick-value{fill:var(--text-muted);font-size:12px}.recharts-cartesian-grid line{stroke:var(--grid)}.recharts-label{fill:var(--text-muted);font-size:12px}@media (width<=640px){.tile .value{font-size:1.3rem}.header{align-items:stretch}}
