:root{color-scheme:light;--surface-1: #ffffff;--page: #f4f4f1;--text-primary: #1a1a1a;--text-secondary: #52514e;--text-muted: #8f8d87;--grid: #ececE6;--axis: #d0cfc8;--border: rgba(11, 11, 11, .09);--good: #128712;--critical: #d03b3b;--brand: #ffdd2d;--brand-strong: #f8ce16;--brand-ink: #1a1a1a;--data-1: #2b2b2a;--focus: #1a1a1a;--series-1: #2a78d6;--series-2: #008300;--series-3: #e87ba4;--series-4: #eda100;--series-5: #1baf7a;--series-6: #eb6834;--series-7: #4a3aa7;--series-8: #e34948;--series-9: #898781;--radius: 16px;--font: system-ui, -apple-system, "Segoe UI", sans-serif}@media(prefers-color-scheme:dark){:root:where(:not([data-theme=light])){color-scheme:dark;--surface-1: #1c1c1b;--page: #111110;--text-primary: #ffffff;--text-secondary: #c3c2b7;--text-muted: #928f88;--grid: #2c2c2a;--axis: #383835;--border: rgba(255, 255, 255, .1);--good: #0ca30c;--critical: #e66767;--brand: #ffdd2d;--brand-strong: #ffe75a;--brand-ink: #1a1a1a;--data-1: #e8e8e4;--focus: #ffffff;--series-1: #3987e5;--series-2: #008300;--series-3: #d55181;--series-4: #c98500;--series-5: #199e70;--series-6: #d95926;--series-7: #9085e9;--series-8: #e66767}}:root[data-theme=dark]{color-scheme:dark;--surface-1: #1c1c1b;--page: #111110;--text-primary: #ffffff;--text-secondary: #c3c2b7;--text-muted: #928f88;--grid: #2c2c2a;--axis: #383835;--border: rgba(255, 255, 255, .1);--good: #0ca30c;--critical: #e66767;--brand: #ffdd2d;--brand-strong: #ffe75a;--brand-ink: #1a1a1a;--data-1: #e8e8e4;--focus: #ffffff;--series-1: #3987e5;--series-2: #008300;--series-3: #d55181;--series-4: #c98500;--series-5: #199e70;--series-6: #d95926;--series-7: #9085e9;--series-8: #e66767}*{box-sizing:border-box}body{margin:0;font-family:var(--font);background:var(--page);color:var(--text-primary);font-size:14px;line-height:1.5}.app{max-width:1400px;margin:0 auto;padding:20px}header.top{margin-bottom:16px}header.top .brand-row{display:flex;align-items:center;gap:11px;margin-bottom:3px}header.top .brand-badge{width:30px;height:30px;border-radius:8px;background:var(--brand);color:var(--brand-ink);display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:18px;flex:none}header.top h1{font-size:20px;margin:0;font-weight:700;letter-spacing:-.01em}header.top .sub{color:var(--text-muted);font-size:13px}.card{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius);padding:18px}.card h2{font-size:14px;font-weight:600;margin:0 0 14px;color:var(--text-primary)}.card h2 .hint{font-weight:400;color:var(--text-muted);margin-left:6px}.filters{display:flex;flex-wrap:wrap;gap:10px;align-items:flex-end;margin-bottom:16px}.filters .field{display:flex;flex-direction:column;gap:4px}.filters label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}input,select,button{font-family:inherit;font-size:13px;color:var(--text-primary);background:var(--surface-1);border:1px solid var(--border);border-radius:10px;padding:7px 11px}input:focus-visible,select:focus-visible,button:focus-visible{outline:2px solid var(--focus);outline-offset:1px}button{cursor:pointer}button:hover{border-color:var(--brand-strong)}button.primary{background:var(--brand);border-color:var(--brand);color:var(--brand-ink);font-weight:600}button.primary:hover{background:var(--brand-strong);border-color:var(--brand-strong)}button.ghost{background:transparent}.chips{display:flex;flex-wrap:wrap;gap:6px}.chip{padding:5px 12px;border-radius:999px;border:1px solid var(--border);background:var(--surface-1);font-size:12px;cursor:pointer;color:var(--text-secondary)}.chip:hover:not(:disabled){border-color:var(--brand-strong)}.chip[aria-pressed=true]{background:var(--brand);border-color:var(--brand);color:var(--brand-ink);font-weight:600}.chip:disabled{opacity:.4;cursor:not-allowed;text-decoration:line-through}.tabs{display:flex;gap:2px;border-bottom:1px solid var(--border);margin-bottom:16px}.tabs button{border:none;background:transparent;border-radius:0;border-bottom:3px solid transparent;padding:10px 14px;margin-bottom:-1px;color:var(--text-secondary);font-size:13px}.tabs button:hover{color:var(--text-primary);border-color:transparent}.tabs button[aria-selected=true]{color:var(--text-primary);border-bottom-color:var(--brand);font-weight:700}.kpis{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px;margin-bottom:16px}.kpi{background:var(--surface-1);border:1px solid var(--border);border-radius:var(--radius);padding:14px 16px}.kpi .label{font-size:11px;color:var(--text-muted);text-transform:uppercase;letter-spacing:.04em}.kpi .value{font-size:24px;font-weight:650;margin-top:3px;letter-spacing:-.02em}.kpi .note{font-size:12px;color:var(--text-muted);margin-top:1px}.grid-2{display:grid;grid-template-columns:1fr 1fr;gap:16px}.stack{display:flex;flex-direction:column;gap:16px}@media(max-width:980px){.grid-2{grid-template-columns:1fr}}.table-wrap{overflow-x:auto}table{border-collapse:collapse;width:100%;font-size:13px}th,td{padding:7px 10px;text-align:left;border-bottom:1px solid var(--grid);white-space:nowrap}th{color:var(--text-muted);font-weight:500;font-size:11px;text-transform:uppercase;letter-spacing:.04em;position:sticky;top:0;background:var(--surface-1)}th.sortable{cursor:pointer;-webkit-user-select:none;user-select:none}th.sortable:hover{color:var(--text-primary)}td.num,th.num{text-align:right;font-variant-numeric:tabular-nums}tbody tr:hover{background:color-mix(in srgb,var(--brand) 22%,transparent)}.swatch{display:inline-block;width:9px;height:9px;border-radius:2px;margin-right:7px;vertical-align:baseline}.bar-cell{position:relative;min-width:90px}.bar-cell .bar{position:absolute;left:0;top:50%;transform:translateY(-50%);height:14px;border-radius:0 3px 3px 0;opacity:.25}.badge{display:inline-block;padding:1px 7px;border-radius:999px;font-size:11px;border:1px solid var(--border);color:var(--text-secondary)}.badge.active{color:var(--good);border-color:currentColor}.badge.sub{background:var(--brand);color:var(--brand-ink);border-color:var(--brand)}.tooltip{background:var(--surface-1);border:1px solid var(--border);border-radius:8px;padding:9px 11px;font-size:12px;box-shadow:0 4px 14px #0000001f}.tooltip .t-title{font-weight:600;margin-bottom:5px}.tooltip .t-row{display:flex;justify-content:space-between;gap:16px}.tooltip .t-row span:last-child{font-variant-numeric:tabular-nums}.drill-row>td{padding:0;background:color-mix(in srgb,var(--brand) 10%,transparent)}.drill-row:hover>td{background:color-mix(in srgb,var(--brand) 10%,transparent)}.drill{padding:12px 16px 14px 26px;border-left:3px solid var(--brand);overflow-x:auto}.drill-title{font-size:12px;font-weight:600;margin-bottom:8px}.drill table{width:auto;min-width:60%}.drill th{background:transparent;position:static}.drill td,.drill th{padding:5px 12px 5px 0;border-bottom:1px solid var(--grid)}.drill tbody tr:hover{background:transparent}.drill tbody tr:last-child td{border-bottom:none}.muted{color:var(--text-muted)}.empty{padding:36px;text-align:center;color:var(--text-muted)}.note-box{background:color-mix(in srgb,var(--brand) 16%,var(--surface-1));border:1px solid color-mix(in srgb,var(--brand) 50%,transparent);border-radius:12px;padding:11px 14px;font-size:13px;color:var(--text-secondary)}.rule-row{display:flex;align-items:center;gap:8px;padding:5px 0}.rule-row .grow{flex:1}.dropzone-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;display:flex;align-items:center;justify-content:center;background:color-mix(in srgb,var(--brand) 22%,rgba(0,0,0,.45));-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);pointer-events:none}.dropzone-card{background:var(--surface-1);border:3px dashed var(--brand);border-radius:var(--radius);padding:40px 56px;text-align:center;color:var(--text-primary);box-shadow:0 12px 40px #00000040}.welcome{max-width:620px;margin:6vh auto 0;background:var(--surface-1);border:2px dashed color-mix(in srgb,var(--brand) 60%,var(--border));border-radius:var(--radius);padding:40px 40px 32px;text-align:center;transition:background .15s,border-color .15s,transform .15s}.welcome-dragging{border:3px dashed var(--brand);background:color-mix(in srgb,var(--brand) 12%,var(--surface-1));transform:scale(1.01)}.welcome-icon{width:64px;height:64px;margin:0 auto 16px;border-radius:16px;background:var(--brand);color:var(--brand-ink);display:flex;align-items:center;justify-content:center;font-size:34px;font-weight:700;transition:transform .15s}.welcome-dragging .welcome-icon{transform:translateY(-2px) scale(1.08)}.welcome h2{font-size:20px;margin:0 0 8px}.welcome>p{color:var(--text-secondary);margin:0 auto;max-width:460px}.welcome-steps{text-align:left;max-width:460px;margin:8px auto 18px;color:var(--text-secondary);font-size:14px;line-height:1.7;padding-left:22px}.welcome code{background:color-mix(in srgb,var(--text-muted) 18%,transparent);padding:1px 5px;border-radius:5px;font-size:.9em}
