:root,[data-theme=light]{--bg:#f5f7fa;--surface:#fff;--surface-2:#f1f5f9;--border:#e2e8f0;--text:#0f172a;--muted:#64748b;--accent:#1d4ed8;--accent-text:#fff;--masked:#6366f1;--bank:#e11d48;--unknown:#94a3b8;--negligible:#059669;--series-1:#2563eb;--series-2:#059669;--series-3:#d97706;--series-4:#9333ea;--series-5:#db2777;--series-6:#0891b2;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--bg:#070d18;--surface:#131d2e;--surface-2:#1c2b42;--border:#1e293b;--text:#f8fafc;--muted:#94a3b8;--accent:#38bdf8;--accent-text:#06121f;--masked:#818cf8;--bank:#fb7185;--unknown:#94a3b8;--negligible:#34d399;--series-1:#38bdf8;--series-2:#34d399;--series-3:#fbbf24;--series-4:#c084fc;--series-5:#f472b6;--series-6:#22d3ee;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;font:14px/1.45 -apple-system,BlinkMacSystemFont,Segoe UI,Inter,Helvetica Neue,Arial,sans-serif}a{color:var(--accent);text-decoration:none}a:hover{text-decoration:underline}h1{margin:0 0 4px;font-size:22px}h2{margin:24px 0 10px;font-size:17px}h3{margin:0 0 6px;font-size:14px}.muted{color:var(--muted)}select,input,button{font:inherit;color:var(--text);background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:6px 10px}button{cursor:pointer}button.active{background:var(--accent);color:var(--accent-text);border-color:var(--accent)}.app-header{z-index:10;background:var(--surface);border-bottom:1px solid var(--border);flex-wrap:wrap;align-items:center;gap:16px;padding:10px 16px;display:flex;position:sticky;top:0}.brand{color:var(--text);font-weight:700}.top-nav{flex-wrap:wrap;gap:4px;display:flex}.top-nav a{color:var(--muted);border-radius:8px;padding:6px 10px}.top-nav a.active{background:var(--surface-2);color:var(--text)}.header-controls{gap:8px;margin-left:auto;display:flex}.page{max-width:1280px;margin:0 auto;padding:20px 16px 40px}.search{width:100%;max-width:420px;margin:12px 0}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;min-width:0;padding:14px}.toolbar{flex-wrap:wrap;align-items:end;gap:12px;margin:12px 0;display:flex}.control{color:var(--muted);flex-direction:column;gap:4px;font-size:12px;display:flex}.seg{gap:4px;display:inline-flex}.table-wrap{background:var(--surface);border:1px solid var(--border);border-radius:12px;margin-bottom:16px;overflow-x:auto}table{border-collapse:collapse;width:100%}th,td{border-bottom:1px solid var(--border);padding:7px 10px}th{text-align:right;color:var(--muted);white-space:nowrap;background:var(--surface);font-size:12px;font-weight:600}th.left,td.left,td.name{text-align:left}caption{text-align:left;padding:10px;font-weight:600}.num,.cell{font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}td.line{color:var(--muted);white-space:nowrap}td.name{min-width:260px}tr.total td{font-weight:700}tr.sub td.name{color:var(--muted);padding-left:26px}tr.section-row td{background:var(--surface-2);font-size:12px;font-weight:600}th.sortable{cursor:pointer}th.sorted{color:var(--accent)}.cell-d,.cell-z{-webkit-text-decoration:underline dotted var(--muted);text-decoration:underline dotted var(--muted);text-underline-offset:3px}.cell-n{color:var(--negligible)}.cell-m{color:var(--masked);background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--masked) 16%, transparent) 0 6px, transparent 6px 12px)}.cell-b{color:var(--bank);background:repeating-linear-gradient(135deg, color-mix(in srgb, var(--bank) 16%, transparent) 0 6px, transparent 6px 12px)}.cell-u{color:var(--unknown);background:color-mix(in srgb, var(--unknown) 14%, transparent)}.cell-a{color:var(--muted)}.legend{color:var(--muted);flex-wrap:wrap;gap:8px 16px;margin:8px 0 16px;padding:0;font-size:12px;list-style:none;display:flex}.legend.detailed{flex-direction:column}.legend .swatch{text-align:center;border-radius:4px;min-width:56px;margin-right:6px;padding:1px 6px;display:inline-block}.bank-layout{grid-template-columns:210px minmax(0,1fr);gap:20px;max-width:1400px;margin:0 auto;padding:16px;display:grid}.bank-head{flex-wrap:wrap;grid-column:1/-1;justify-content:space-between;align-items:end;gap:12px;display:flex}.section-nav{flex-direction:column;align-self:start;gap:2px;display:flex;position:sticky;top:64px}.section-nav a{color:var(--muted);border-radius:8px;padding:8px 12px}.section-nav a.active{background:var(--surface);color:var(--text);box-shadow:inset 3px 0 0 var(--accent);font-weight:600}.bank-content{min-width:0}@media (width<=900px){.bank-layout{grid-template-columns:minmax(0,1fr)}.section-nav{z-index:5;background:var(--bg);flex-direction:row;padding:6px 0;top:52px;overflow-x:auto}.section-nav a{white-space:nowrap}.section-nav a.active{box-shadow:inset 0 -3px 0 var(--accent)}}.kpis{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:10px;margin:12px 0 20px;display:grid}.kpi .label{text-transform:uppercase;letter-spacing:.04em;color:var(--muted);font-size:11px}.kpi .value{text-align:left;margin:4px 0;font-size:20px;font-weight:700;display:block}.kpi .source{color:var(--muted);font-size:11px}.charts{grid-template-columns:repeat(auto-fill,minmax(420px,1fr));gap:14px;display:grid}@media (width<=520px){.charts{grid-template-columns:minmax(0,1fr)}}.metric-grid{grid-template-columns:repeat(auto-fill,minmax(240px,1fr));gap:10px;display:grid}.metric .value{text-align:left;margin:4px 0;font-size:20px;font-weight:700;display:block}.badge{background:var(--surface-2);color:var(--muted);border-radius:10px;padding:1px 7px;font-size:10px;display:inline-block}.badge-approx{color:var(--series-3)}.badge-partial{color:var(--masked)}.spark{color:var(--accent);vertical-align:middle}.chips{flex-wrap:wrap;align-items:center;gap:6px;display:flex}.chip{background:var(--surface-2);border-radius:14px;align-items:center;gap:6px;padding:3px 10px;display:inline-flex}.chip button{color:var(--muted);background:0 0;border:none;padding:0}.warnings li{color:var(--bank)}.src-badge{background:color-mix(in srgb, var(--series-3) 20%, transparent);color:var(--series-3);border-radius:6px;margin-left:4px;padding:0 5px;font-size:10px;display:inline-block}
