:root{color-scheme:light dark;--page: #f9f9f7;--surface-1: #fcfcfb;--text-primary: #0b0b0b;--text-secondary: #52514e;--text-muted: #898781;--gridline: #e1e0d9;--axis: #c3c2b7;--border: rgba(11, 11, 11, .1);--border-strong: rgba(11, 11, 11, .2);--wash: rgba(11, 11, 11, .05);--series-1: #2a78d6;--series-2: #1baf7a;--series-3: #eda100;--series-4: #008300;--series-5: #4a3aa7;--series-6: #e34948;--series-7: #e87ba4;--series-8: #eb6834}:root[data-theme=light]{color-scheme:light}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--page: #0d0d0d;--surface-1: #1a1a19;--text-primary: #ffffff;--text-secondary: #c3c2b7;--text-muted: #898781;--gridline: #2c2c2a;--axis: #383835;--border: rgba(255, 255, 255, .1);--border-strong: rgba(255, 255, 255, .22);--wash: rgba(255, 255, 255, .08);--series-1: #3987e5;--series-2: #199e70;--series-3: #c98500;--series-4: #008300;--series-5: #9085e9;--series-6: #e66767;--series-7: #d55181;--series-8: #d95926}}:root[data-theme=dark]{color-scheme:dark;--page: #0d0d0d;--surface-1: #1a1a19;--text-primary: #ffffff;--text-secondary: #c3c2b7;--text-muted: #898781;--gridline: #2c2c2a;--axis: #383835;--border: rgba(255, 255, 255, .1);--border-strong: rgba(255, 255, 255, .22);--wash: rgba(255, 255, 255, .08);--series-1: #3987e5;--series-2: #199e70;--series-3: #c98500;--series-4: #008300;--series-5: #9085e9;--series-6: #e66767;--series-7: #d55181;--series-8: #d95926}html,body{margin:0;min-height:100%}body{background:var(--page);color:var(--text-primary);font-family:system-ui,-apple-system,Segoe UI,sans-serif;-webkit-font-smoothing:antialiased}h2{margin:0 0 12px;font-size:16px;font-weight:600;color:var(--text-primary)}.tagline{margin:0 0 24px;color:var(--text-secondary);font-size:15px;max-width:68ch}.tagline a{color:var(--series-1)}.card{background:var(--surface-1);border:1px solid var(--border);border-radius:12px;padding:20px;margin-bottom:20px}.empty-card p{margin:0;color:var(--text-secondary)}.page-footer p{font-size:12.5px;color:var(--text-muted);max-width:80ch}.field{display:flex;flex-direction:column;gap:6px}.field-label{font-size:13px;color:var(--text-secondary);display:inline-flex;align-items:center;gap:6px}.top-fields{display:flex;gap:20px;flex-wrap:wrap;margin-bottom:18px}.top-fields .field{width:200px}input[type=number]{width:100%;box-sizing:border-box;padding:9px 10px;font:inherit;font-variant-numeric:tabular-nums;color:var(--text-primary);background:var(--surface-1);border:1px solid var(--border-strong);border-radius:8px}input[type=number]:focus-visible{outline:2px solid var(--series-1);outline-offset:1px}.suffix-input{position:relative;display:block}.suffix-input .suffix{position:absolute;right:12px;top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:14px;pointer-events:none}.suffix-input input{padding-right:28px}.money-input{position:relative;display:block}.money-input .prefix{position:absolute;left:10px;top:50%;transform:translateY(-50%);color:var(--text-muted);font-size:14px;pointer-events:none}.money-input input{padding-left:24px}.note{margin:14px 0 0;font-size:13px;color:var(--text-secondary)}.dot{display:inline-block;width:10px;height:10px;border-radius:50%;flex:none}.card-header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:16px;flex-wrap:wrap}.card-header h2{margin-bottom:4px}.subtitle{margin:0;font-size:13px;color:var(--text-secondary);max-width:56ch}.view-toggle{display:inline-flex;border:1px solid var(--border-strong);border-radius:8px;overflow:hidden;flex:none}.view-toggle button{font:inherit;font-size:13px;padding:6px 14px;border:none;background:transparent;color:var(--text-secondary);cursor:pointer}.view-toggle button+button{border-left:1px solid var(--border-strong)}.view-toggle button.active{background:var(--wash);color:var(--text-primary);font-weight:600}.table-scroll{overflow-x:auto}.data-table{width:100%;border-collapse:collapse;font-size:14px}.data-table th,.data-table td{text-align:right;padding:8px 12px;border-bottom:1px solid var(--gridline);font-variant-numeric:tabular-nums;white-space:nowrap}.data-table thead th{font-weight:600;color:var(--text-secondary);font-size:13px}.data-table thead th .dot{margin-right:5px;width:8px;height:8px}.data-table tbody th{font-weight:600;color:var(--text-primary)}.data-table td{color:var(--text-primary)}.muted{color:var(--text-muted)}
