:root{color-scheme:light;--page: #f9f9f7;--surface: #fcfcfb;--text-primary: #0b0b0b;--text-secondary: #52514e;--text-muted: #6f6d68;--grid: #e1e0d9;--axis: #c3c2b7;--border: rgba(11, 11, 11, .1);--hover-wash: rgba(11, 11, 11, .05);--accent: #2a78d6;--danger: #b42318;--success: #1a7f52;--series-actual: #2a78d6;--series-forecast: #eb6834;--series-mae: #6250d6;--series-p90: #1baf7a}@media (prefers-color-scheme: dark){:root:not([data-theme=light]){color-scheme:dark;--page: #0d0d0d;--surface: #1a1a19;--text-primary: #f0efec;--text-secondary: #c3c2b7;--text-muted: #9a988f;--grid: #2c2c2a;--axis: #383835;--border: rgba(255, 255, 255, .1);--hover-wash: rgba(255, 255, 255, .06);--accent: #3987e5;--danger: #f97066;--success: #3fb27f;--series-actual: #3987e5;--series-forecast: #d95926;--series-mae: #9085e9;--series-p90: #199e70}}:root[data-theme=dark]{color-scheme:dark;--page: #0d0d0d;--surface: #1a1a19;--text-primary: #f0efec;--text-secondary: #c3c2b7;--text-muted: #9a988f;--grid: #2c2c2a;--axis: #383835;--border: rgba(255, 255, 255, .1);--hover-wash: rgba(255, 255, 255, .06);--accent: #3987e5;--danger: #f97066;--success: #3fb27f;--series-actual: #3987e5;--series-forecast: #d95926;--series-mae: #9085e9;--series-p90: #199e70}*{box-sizing:border-box}body{margin:0;background:var(--page);color:var(--text-primary);font-family:system-ui,-apple-system,Segoe UI,sans-serif;line-height:1.5}h1,h2,h3{margin:0;line-height:1.25}h1{font-size:1.75rem}h2{font-size:1.25rem;margin-bottom:4px}h3{font-size:1rem;margin-bottom:8px}input,button{font:inherit;color:inherit}.page{max-width:1200px;margin:0 auto;padding:32px 16px 64px}.header{margin-bottom:32px}.header-top{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px 16px}.account{display:flex;align-items:center;gap:12px;min-width:0;font-size:.875rem}.account-email{color:var(--text-secondary);overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.auth-page{display:flex;justify-content:center;padding:64px 16px}.auth-card{width:100%;max-width:400px;padding:32px 28px}.auth-card h1{font-size:1.5rem}.auth-title{margin:28px 0 16px}.auth-form{display:flex;flex-direction:column;gap:16px}.auth-form .error{margin:0;font-size:.875rem}.notice{margin:0 0 16px;padding:8px 12px;border:1px solid var(--success);border-radius:8px;color:var(--success);font-size:.875rem}.notice-info{border-color:var(--accent);color:var(--text-primary)}.field{display:flex;flex-direction:column;gap:6px}input[type=email],input[type=password]{background:var(--page);border:1px solid var(--border);border-radius:8px;padding:8px 10px}input:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:1px}.button-primary{background:var(--accent);border-color:transparent;color:#fff;font-weight:600;padding:9px 12px}.button-primary:hover:not(:disabled){background:var(--accent);filter:brightness(1.08)}.auth-switch{margin:20px 0 0;font-size:.875rem;color:var(--text-secondary)}.link-button{background:none;border:none;padding:0;color:var(--accent);text-decoration:underline;text-underline-offset:2px}.link-button:hover:not(:disabled){background:none}.subtitle,.section-intro,.chart-intro{color:var(--text-secondary);margin:4px 0 0}.chart-intro{font-size:.875rem;margin:-4px 0 8px}.section{margin-bottom:48px}.section-intro{margin-bottom:16px;max-width:70ch}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px;margin-bottom:16px;min-width:0}.grid-2{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,420px),1fr));gap:16px}.grid-2>.card{margin-bottom:0}.controls{display:flex;flex-wrap:wrap;gap:24px 40px;margin-top:16px}.control{display:flex;flex-direction:column;gap:6px}.control-horizon{flex:1 1 320px}.control-label{font-size:.875rem;color:var(--text-secondary)}.control-label strong{color:var(--text-primary);font-size:1rem;margin-left:4px}.control-help{font-size:.8125rem;color:var(--text-muted)}input[type=range]{width:100%;accent-color:var(--accent)}.range-inputs{display:flex;flex-wrap:wrap;align-items:center;gap:8px}input[type=date],input[type=datetime-local]{background:var(--page);border:1px solid var(--border);border-radius:8px;padding:6px 10px}button{background:var(--page);border:1px solid var(--border);border-radius:8px;padding:6px 12px;cursor:pointer}button:hover:not(:disabled){background:var(--hover-wash)}button:disabled{opacity:.5;cursor:default}.tiles{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,220px),1fr));gap:16px;margin-bottom:16px}.tiles .tile{margin-bottom:0;padding:16px}.tile-label{font-size:.875rem;color:var(--text-secondary)}.tile-value{font-size:1.75rem;font-weight:600;margin:2px 0}.tile-value-sm{font-size:1.25rem}.tile-note{font-size:.8125rem;color:var(--text-muted)}.decision-controls{display:flex;flex-wrap:wrap;align-items:flex-end;gap:16px 32px;margin-bottom:16px}.decision-run{margin:0;color:var(--text-secondary)}.chart{width:100%}.chart svg{overflow:visible}.tooltip{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:10px 12px;font-size:.8125rem;box-shadow:0 4px 16px #0000001f;color:var(--text-primary)}.tooltip-title{font-weight:600;margin-bottom:4px}.tooltip-row{display:grid;grid-template-columns:10px auto 1fr;align-items:center;gap:8px}.tooltip-row strong{text-align:right;font-variant-numeric:tabular-nums}.tooltip-key{width:10px;height:3px;border-radius:2px}.tooltip-note{color:var(--text-muted);margin-top:4px}.is-loading{opacity:.55;transition:opacity .15s}.empty,.footnote{color:var(--text-muted);font-size:.875rem}.footnote{margin:8px 0 0}.error{color:var(--danger)}.table-view{margin-top:12px;font-size:.875rem}.table-view summary{cursor:pointer;color:var(--text-secondary)}.table-scroll{max-height:320px;overflow:auto;margin-top:8px}table{width:100%;border-collapse:collapse;font-variant-numeric:tabular-nums}th,td{text-align:right;padding:4px 8px;border-bottom:1px solid var(--grid);white-space:nowrap}th:first-child,td:first-child{text-align:left}th{position:sticky;top:0;background:var(--surface);color:var(--text-secondary);font-weight:600}
