:root{--bg:#f6f5f1;--surface:#fff;--text:#1d1d1b;--muted:#6b6a64;--accent:#1f5f4a;--accent-text:#fff;--error:#a3261b;--border:#e2e0d8;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;font-family:ui-sans-serif,system-ui,-apple-system,Segoe UI,sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;--bg:#161614;--surface:#20201d;--text:#edece6;--muted:#a3a29b;--accent:#6cc3a0;--accent-text:#0d1f18;--error:#ff8a7a;--border:#34332e}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);margin:0;line-height:1.5}.bar{border-bottom:1px solid var(--border);background:var(--surface);justify-content:space-between;align-items:center;padding:12px 16px;display:flex}.card{flex-direction:column;gap:16px;max-width:420px;margin:48px auto;padding:24px 16px;display:flex}h1{margin:0;font-size:1.5rem}label{flex-direction:column;gap:6px;font-weight:500;display:flex}select,input{font:inherit;border:1px solid var(--border);background:var(--surface);color:var(--text);border-radius:8px;padding:10px 12px}input:focus-visible,button:focus-visible{outline:2px solid var(--accent);outline-offset:2px}button{font:inherit;background:var(--accent);color:var(--accent-text);cursor:pointer;border:0;border-radius:8px;padding:10px 16px;font-weight:600}button:disabled{opacity:.6;cursor:default}button.link{color:var(--accent);background:0 0;padding:4px}.muted{color:var(--muted);font-size:.9rem}.error{color:var(--error)}code{word-break:break-all}img{background:#fff;border-radius:8px;align-self:center}.title-row{justify-content:space-between;align-items:center;gap:12px;display:flex}.stack{flex-direction:column;gap:12px;display:flex}.wide{max-width:1100px;margin:24px auto;padding:0 16px}.tabs{flex-wrap:wrap;flex:1;gap:4px;margin:0 16px;display:flex}.tab{color:var(--muted);background:0 0;padding:6px 10px;font-weight:500}.tab.active{color:var(--text);background:var(--bg)}.inline{flex-direction:row;align-items:center;gap:8px;font-weight:400}.grow{flex:1}.table{border-collapse:collapse;width:100%;font-size:.92rem}.table caption{text-align:left;padding:12px 0 4px;font-weight:600}.table th,.table td{border-bottom:1px solid var(--border);text-align:left;padding:6px 8px}.table td input,.table td select{width:100%;padding:6px 8px}.num{text-align:right;font-variant-numeric:tabular-nums}.table th.num,.table td.num{text-align:right}h2{margin:0;font-size:1.2rem}.journal summary{cursor:pointer;border-bottom:1px solid var(--border);gap:16px;padding:8px 0;display:flex}.notice{border:1px solid var(--border);background:var(--surface);border-radius:8px;padding:12px}.waking{z-index:10;text-align:center;background:var(--accent);color:var(--accent-text);padding:8px 16px;font-weight:500;position:sticky;top:0}.bank-card{border:1px solid var(--border);background:var(--surface);border-radius:12px;padding:16px}.pill{background:var(--accent);color:var(--accent-text);border-radius:999px;padding:2px 10px;font-size:.85rem;font-weight:600}.wide-card{max-width:720px}.sort-line{border:1px solid var(--border);border-radius:10px;flex-direction:column;gap:8px;padding:10px 12px;display:flex}.sort-line.current{border-color:var(--accent)}.sort-fields{flex-wrap:wrap;gap:8px;display:flex}.sort-line .sort-fields select{flex:160px}.money-in{color:var(--accent);font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.money-out{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.balance{border-radius:8px;margin:0;padding:10px 12px}.balance.ok{background:var(--bg)}.balance.off{border:2px solid var(--error)}.suggestion{margin:0;font-size:.9rem}.todo{border-top:1px solid var(--border);padding-top:.75rem}
