:root{color-scheme:light;--surface: #fcfcfb;--page: #f9f9f7;--ink: #0b0b0b;--ink-2: #52514e;--muted: #898781;--grid: #e1e0d9;--axis: #c3c2b7;--border: rgba(11, 11, 11, .1);--s1: #2a78d6;--s2: #eb6834;--s3: #1baf7a}:root[data-theme=dark]{color-scheme:dark;--surface: #1a1a19;--page: #0d0d0d;--ink: #ffffff;--ink-2: #c3c2b7;--muted: #898781;--grid: #2c2c2a;--axis: #383835;--border: rgba(255, 255, 255, .1);--s1: #3987e5;--s2: #d95926;--s3: #199e70}*{box-sizing:border-box}body{margin:0;background:var(--page);color:var(--ink);font-family:system-ui,-apple-system,Segoe UI,sans-serif;font-size:14px}#root{padding:0 12px 20px}.topbar{position:sticky;top:0;z-index:5;background:var(--page);margin:0 -12px;padding:8px 12px 4px}.month-nav{display:flex;align-items:center;justify-content:center;gap:12px;margin:0 0 4px}.month-nav button{border:1px solid var(--border);background:var(--surface);color:var(--ink);border-radius:8px;width:36px;height:32px;font-size:16px;cursor:pointer}.month-nav .label{min-width:140px;text-align:center;font-weight:600}.chips{display:flex;gap:6px;overflow-x:auto;padding:4px 0 10px;-webkit-overflow-scrolling:touch;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}.chip{flex:0 0 auto;border:1px solid var(--border);background:var(--surface);color:var(--ink-2);border-radius:16px;padding:5px 11px;font-size:13px;cursor:pointer;white-space:nowrap}.chip.active{background:var(--s1);border-color:var(--s1);color:#fff}.seg{display:flex;gap:4px;margin:0 0 8px;background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:3px;width:fit-content}.seg button{border:0;background:none;color:var(--ink-2);border-radius:8px;padding:5px 14px;font-size:13px;cursor:pointer}.seg button.active{background:var(--s1);color:#fff}.card{background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:12px 6px 4px}.legend{display:flex;flex-wrap:wrap;gap:12px;padding:8px 10px 10px;font-size:12.5px;color:var(--ink-2)}.legend .item{display:flex;align-items:center;gap:6px}.legend svg{display:block}.empty{text-align:center;color:var(--muted);padding:40px 0}.notice{text-align:center;color:var(--muted);padding:60px 16px}.tooltip{background:var(--surface);border:1px solid var(--border);border-radius:8px;padding:8px 10px;font-size:12.5px;color:var(--ink);box-shadow:0 2px 8px #0000001f}.tooltip .t-day{font-weight:600;margin-bottom:4px}.tooltip .row{display:flex;align-items:center;gap:6px}.tooltip .swatch{width:8px;height:8px;border-radius:2px}.app{padding-bottom:64px}.warn{text-align:center;font-weight:700;font-size:12.5px;color:#d03b3b;padding:2px 0 8px}.tabbar{position:fixed;left:0;right:0;bottom:0;display:flex;background:var(--surface);border-top:1px solid var(--border);padding:6px 4px calc(6px + env(safe-area-inset-bottom))}.tabbar button{flex:1;border:0;background:none;color:var(--muted);font-size:12.5px;padding:7px 2px;border-radius:8px;cursor:pointer;white-space:nowrap}.tabbar button.active{color:var(--s1);font-weight:600}.list{padding:2px 12px}.orow{padding:8px 0;border-bottom:1px solid var(--grid)}.orow:last-child{border-bottom:0}.ohead{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:26px}.oname{color:var(--ink);font-size:14px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.onums{color:var(--ink-2);font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right;font-size:14px;flex-shrink:0}.onums.clickable,.orow.clickable{cursor:pointer}.sub{color:var(--muted);font-size:12px;text-align:right;margin-top:2px}.sub.members{text-align:left}.orow.totals .oname,.orow.totals .onums{font-weight:700}.orow.income .oname{font-weight:600}.bar{height:6px;background:var(--grid);border-radius:3px;margin-top:6px;overflow:hidden}.bar .fill{height:100%;background:var(--s1);border-radius:3px}.bar .fill.over{background:#d03b3b}.row-buttons{display:flex;gap:8px;margin-bottom:10px}.row-buttons button{flex:1;border:1px solid var(--border);background:var(--surface);color:var(--ink);border-radius:10px;padding:10px;font-size:14px;cursor:pointer}.row-buttons button.primary,button.primary{background:var(--s1);border-color:var(--s1);color:#fff}button.primary:disabled{opacity:.5}button.wide{width:100%;border:0;border-radius:10px;padding:12px;font-size:15px;cursor:pointer}input{border:1px solid var(--border);background:var(--page);color:var(--ink);border-radius:8px;padding:8px 10px;font-size:15px;font-family:inherit}.editor{display:flex;gap:6px;align-items:center;flex-shrink:0}.editor input{width:86px;text-align:right;font-size:16px}.editor .ok,.editor .cancel,.addcat .ok{border:1px solid var(--border);background:var(--surface);color:var(--ink);border-radius:8px;width:34px;height:34px;cursor:pointer}.editor .ok:disabled{opacity:.4}input.amount{width:96px;text-align:right;font-size:16px;flex-shrink:0}.scope{border:1px solid var(--border);background:var(--page);color:var(--ink-2);border-radius:14px;padding:5px 10px;font-size:12.5px;cursor:pointer;white-space:nowrap}.addcat{display:flex;gap:6px;align-items:center}.addcat .emoji{width:46px;text-align:center}.addcat .name{flex:1}.form{padding:14px 12px;display:flex;flex-direction:column;gap:12px}.big-amount{font-size:28px;text-align:center;padding:12px;font-variant-numeric:tabular-nums}.cat-grid{display:flex;flex-wrap:wrap;gap:6px}.toast{background:var(--surface);border:1px solid var(--border);border-radius:10px;padding:10px 12px;margin-bottom:10px;text-align:center}.oname.section{font-weight:700}.card.list+.card.list,.card+.card{margin-top:10px}button.danger{background:none;border:1px solid #d03b3b;color:#d03b3b;border-radius:10px;padding:12px;font-size:14px;cursor:pointer}button.danger.armed{background:#d03b3b;color:#fff}.invite-link{margin-top:8px;padding:8px;background:var(--page);border-radius:8px;font-size:12.5px;word-break:break-all;user-select:all;-webkit-user-select:all}.hint{color:var(--muted);font-size:12.5px;text-align:center;padding:0 10px}
