:root{--bg:#f6f6f3;--surface:#fcfcfb;--surface-2:#fff;--surface-sunk:#efeee9;--text:#0b0b0b;--text-2:#52514e;--text-muted:#898781;--grid:#e1e0d9;--axis:#c3c2b7;--border:#e1e0d9;--accent:#d9480f;--accent-ink:#fff;--good:#006300;--warn:#9a6200;--bad:#c22d2d;--series-1:#2a78d6;--series-2:#eb6834;--series-3:#1baf7a;--series-4:#eda100;--series-5:#e87ba4;--series-6:#008300;--series-7:#6250d6;--series-8:#e34948;--radius:14px;--shadow:0 1px 2px #0000000a, 0 4px 16px #0000000a;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}:root[data-theme=dark]{--bg:#0d0d0d;--surface:#1a1a19;--surface-2:#232321;--surface-sunk:#121211;--text:#f0efec;--text-2:#c3c2b7;--text-muted:#898781;--grid:#2c2c2a;--axis:#383835;--border:#2c2c2a;--accent:#f76b2b;--accent-ink:#0d0d0d;--good:#0ca30c;--warn:#fab219;--bad:#e66767;--series-1:#3987e5;--series-2:#d95926;--series-3:#199e70;--series-4:#c98500;--series-5:#d55181;--series-6:#008300;--series-7:#9085e9;--series-8:#e66767;--shadow:0 1px 2px #0006;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;margin:0;font:15px/1.5 Inter,ui-sans-serif,system-ui,-apple-system,Segoe UI,Roboto,sans-serif}h1,h2{letter-spacing:-.01em;margin:0}button,input,select{font:inherit;color:inherit}.muted{color:var(--text-2)}.app{max-width:1280px;margin:0 auto;padding:0 20px 40px}.topbar{z-index:10;background:color-mix(in srgb, var(--bg) 88%, transparent);-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-bottom:1px solid var(--border);grid-template-columns:auto 1fr auto;align-items:center;gap:16px;margin-bottom:8px;padding:14px 0;display:grid;position:sticky;top:0}.brand{align-items:center;gap:10px;display:flex}.brand h1{white-space:nowrap;font-size:18px}.brand p{color:var(--text-muted);margin:0;font-size:12px}.tabs{background:var(--surface-sunk);border-radius:999px;justify-content:center;justify-self:center;gap:4px;padding:4px;display:flex}.tabs a{color:var(--text-2);white-space:nowrap;border-radius:999px;align-items:center;gap:6px;padding:7px 14px;font-weight:500;text-decoration:none;transition:background .15s,color .15s;display:flex}.tabs a:hover{color:var(--text)}.tabs a.active{background:var(--surface-2);color:var(--text);box-shadow:var(--shadow)}.tab-icon{opacity:.8;font-size:13px}.actions{gap:4px;display:flex}main{padding-top:12px}.stack{flex-direction:column;gap:16px;display:flex}.grid-2,.grid-3,.grid-2-1,.grid-1-2{align-items:start;gap:16px;display:grid}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-3{grid-template-columns:repeat(3,minmax(0,1fr))}.grid-2-1{grid-template-columns:minmax(0,2fr) minmax(0,1fr)}.grid-1-2{grid-template-columns:minmax(0,1fr) minmax(0,2fr)}.row{gap:8px;margin-top:12px;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);min-width:0;padding:18px}.card-head{margin-bottom:14px}.card-head h2{font-size:15px;font-weight:650}.card-head p{margin:2px 0 0;font-size:13px}.stats{grid-template-columns:repeat(auto-fit,minmax(170px,1fr));gap:12px;display:grid}.stats.compact{margin-top:14px}.stat{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);box-shadow:var(--shadow);padding:14px 16px}.stats.compact .stat{box-shadow:none;background:var(--surface-sunk);border-color:#0000}.stat-label{color:var(--text-2);font-size:12px;font-weight:500}.stat-value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;margin-top:2px;font-size:22px;font-weight:650}.stat-sub{color:var(--text-muted);margin-top:2px;font-size:12px}.tone-good .stat-value{color:var(--good)}.tone-warn .stat-value{color:var(--warn)}.tone-bad .stat-value{color:var(--bad)}.fields{flex-direction:column;gap:12px;display:flex}.field{flex-direction:column;gap:4px;min-width:0;display:flex}.field-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.field-label{color:var(--text-2);font-size:12.5px;font-weight:550}.hint{color:var(--text-muted);font-size:12px}.input-wrap{background:var(--surface-2);border:1px solid var(--border);border-radius:9px;align-items:center;transition:border-color .15s,box-shadow .15s;display:flex}.input-wrap:focus-within,.field>input:focus,select:focus{border-color:var(--series-1);box-shadow:0 0 0 3px color-mix(in srgb, var(--series-1) 22%, transparent);outline:none}.input-wrap input{font-variant-numeric:tabular-nums;background:0 0;border:0;outline:none;flex:1;min-width:0;padding:8px 10px}.affix{color:var(--text-muted);padding:0 10px;font-size:13px}.affix:first-child{padding-right:0}.affix:last-child{padding-left:0}.field>input,select{background:var(--surface-2);border:1px solid var(--border);border-radius:9px;padding:8px 10px}select{cursor:pointer}input.plain{background:0 0;border:1px solid #0000;border-radius:7px;width:100%;padding:5px 7px}input.plain:hover{border-color:var(--border)}input.plain:focus{border-color:var(--series-1);background:var(--surface-2);outline:none}input.num{text-align:right;font-variant-numeric:tabular-nums}input[type=number]{-moz-appearance:textfield}input[type=number]::-webkit-inner-spin-button{-webkit-appearance:none}input[type=number]::-webkit-outer-spin-button{-webkit-appearance:none}.toggle{cursor:pointer;align-items:center;gap:10px;font-size:13.5px;display:flex}.toggle input{opacity:0;position:absolute}.switch{background:var(--axis);border-radius:999px;flex:none;width:34px;height:20px;transition:background .15s;position:relative}.switch:after{content:"";background:#fff;border-radius:50%;width:16px;height:16px;transition:transform .15s;position:absolute;top:2px;left:2px}.toggle input:checked+.switch{background:var(--series-1)}.toggle input:checked+.switch:after{transform:translate(14px)}.toggle input:focus-visible+.switch{box-shadow:0 0 0 3px color-mix(in srgb, var(--series-1) 30%, transparent)}.segmented{background:var(--surface-sunk);border-radius:10px;flex-wrap:wrap;gap:2px;padding:3px;display:flex}.segmented button{cursor:pointer;color:var(--text-2);white-space:nowrap;background:0 0;border:0;border-radius:7px;flex:1;padding:6px 10px;font-size:13px;font-weight:500}.segmented button.active{background:var(--surface-2);color:var(--text);box-shadow:var(--shadow)}.btn{border:1px solid var(--border);background:var(--surface-2);cursor:pointer;border-radius:9px;padding:8px 14px;font-size:13.5px;font-weight:550;transition:background .15s,border-color .15s,opacity .15s}.btn:hover{border-color:var(--axis)}.btn.primary{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.btn.primary:hover{filter:brightness(1.06)}.btn:disabled{opacity:.5;cursor:default}.btn.ghost{color:var(--text-2);background:0 0;border-color:#0000}.btn.ghost:hover{background:var(--surface-sunk);color:var(--text)}.btn.icon{padding:6px 10px;font-size:16px}.icon-btn{color:var(--text-muted);cursor:pointer;background:0 0;border:0;border-radius:6px;padding:4px 7px}.icon-btn:hover{color:var(--bad);background:var(--surface-sunk)}.table-wrap{margin:0 -4px;overflow-x:auto}.table{border-collapse:collapse;width:100%;font-size:13.5px}.table th{text-align:left;color:var(--text-muted);border-bottom:1px solid var(--border);white-space:nowrap;padding:6px 8px;font-size:12px;font-weight:550}.table td{border-bottom:1px solid var(--border);padding:7px 8px}.table tbody tr:last-child td{border-bottom:0}.table tfoot td{border-top:1px solid var(--axis);border-bottom:0;font-weight:600}.table.accounts{min-width:600px}.table.accounts td{padding:4px}.table.accounts td:first-child{min-width:150px}.table.accounts select{padding:5px 6px}.table .num,.num{text-align:right;font-variant-numeric:tabular-nums;white-space:nowrap}.strong,tr.strong td{font-weight:650}.dot{border-radius:3px;width:9px;height:9px;margin-right:8px;display:inline-block}.snap-list{max-height:220px;margin:12px 0 0;padding:0;font-size:13.5px;list-style:none;overflow:auto}.snap-list li{border-bottom:1px solid var(--border);grid-template-columns:1fr auto auto;align-items:center;gap:8px;padding:4px 0;display:grid}.waterfall-bar{background:var(--surface-sunk);border-radius:9px;gap:2px;height:34px;margin-bottom:14px;display:flex;overflow:hidden}.waterfall-bar div{color:#fff;justify-content:center;align-items:center;min-width:0;font-size:12px;font-weight:600;transition:flex-grow .3s;display:flex;overflow:hidden}.waterfall-bar span{white-space:nowrap;text-overflow:ellipsis;padding:0 6px;overflow:hidden}.chart{width:100%;position:relative}.footer{color:var(--text-muted);text-align:center;margin-top:32px;font-size:12.5px}.footer p{max-width:720px;margin:0 auto}.toast{background:var(--text);color:var(--bg);border-radius:10px;padding:10px 18px;font-size:13.5px;animation:.2s ease-out rise;position:fixed;bottom:20px;left:50%;transform:translate(-50%);box-shadow:0 8px 24px #0003}@keyframes rise{0%{opacity:0;transform:translate(-50%,8px)}}@media (width<=1080px){.topbar{grid-template-columns:1fr auto}.tabs{grid-area:2/1/auto/-1;justify-self:stretch;overflow-x:auto}.tabs a{flex:1;justify-content:center}.grid-3{grid-template-columns:repeat(2,minmax(0,1fr))}.grid-2-1,.grid-1-2{grid-template-columns:minmax(0,1fr)}}@media (width<=680px){.app{padding:0 12px 32px}.grid-2,.grid-3{grid-template-columns:minmax(0,1fr)}.brand p{display:none}.tabs a{padding:7px 10px;font-size:13px}.tab-icon{display:none}.stats{grid-template-columns:repeat(2,minmax(0,1fr))}.stat-value{font-size:18px}.card{padding:14px}.actions{gap:0}.actions .btn.ghost{padding:6px 7px;font-size:13px}}
