:root{--bg:#fff;--text:#111;--muted:#8a8a8e;--line:#ececec;--fill:#f5f5f5;--ink:#111;--on-ink:#fff;--green:#1f8a4c;--red:#c9372c}@media (prefers-color-scheme:dark){:root{--bg:#000;--text:#f2f2f2;--muted:#8e8e93;--line:#1f1f21;--fill:#151517;--ink:#f2f2f2;--on-ink:#000;--green:#4cc38a;--red:#ff6b60}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body,#root{height:100%;margin:0}body{background:var(--bg);color:var(--text);font:16px/1.4 -apple-system,system-ui,Segoe UI,sans-serif}.app{flex-direction:column;max-width:520px;height:100%;margin:0 auto;display:flex}main{padding:calc(env(safe-area-inset-top) + 20px) 24px 110px;flex:1;overflow-y:auto}h2{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin:36px 0 6px;font-size:12px;font-weight:500}.top{justify-content:space-between;align-items:center;display:flex}.big{letter-spacing:-.02em;font-size:44px;font-weight:300;line-height:1.15}.muted{color:var(--muted);font-size:14px}.pos{color:var(--green)}.neg{color:var(--red)}.warn{color:var(--muted)}.list{border-top:1px solid var(--line)}.row,.stat{border-bottom:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;padding:13px 0;display:flex}.row{cursor:pointer}.row .l{min-width:0}.row .l div:first-child{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.row .r{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums}.stat span:last-child{font-variant-numeric:tabular-nums}.bar{border-bottom:1px solid var(--line);padding-bottom:12px}.bar .stat{border:0;padding-bottom:6px}.track{background:var(--fill);border-radius:2px;height:3px}.track div{background:var(--ink);border-radius:2px;height:100%}.list>.muted{padding:14px 0}.month{width:auto;color:var(--muted);text-transform:uppercase;letter-spacing:.08em;background:0 0;border:0;padding:0;font-size:12px}nav{background:var(--bg);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom);justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0}nav .inner{width:100%;max-width:520px;display:flex}nav button{color:var(--muted);letter-spacing:.02em;background:0 0;border:0;flex:1;padding:15px 0;font-size:13px}nav button.on{color:var(--text);font-weight:600}.fab{right:24px;bottom:calc(env(safe-area-inset-bottom) + 66px);background:var(--ink);width:52px;height:52px;color:var(--on-ink);border:0;border-radius:50%;font-size:28px;font-weight:300;line-height:1;position:fixed}.sheet-bg{z-index:10;background:#0006;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--bg);width:100%;max-width:520px;max-height:92%;padding:22px 24px calc(env(safe-area-inset-bottom) + 20px);border-radius:18px 18px 0 0;overflow-y:auto}.sheet h2{margin-top:0}.seg,.chips{flex-wrap:wrap;gap:8px;margin-bottom:8px;display:flex}.seg button,.chips button{border:1px solid var(--line);color:var(--muted);background:0 0;border-radius:99px;padding:8px 14px;font-size:14px}.seg button.on,.chips button.on{background:var(--ink);color:var(--on-ink);border-color:var(--ink)}label{color:var(--muted);text-transform:uppercase;letter-spacing:.08em;margin:18px 0 6px;font-size:12px;display:block}input{border:0;border-bottom:1px solid var(--line);width:100%;color:var(--text);background:0 0;border-radius:0;outline:none;padding:12px 0;font-size:16px}input:focus{border-bottom-color:var(--ink)}.list label{margin-top:12px}.btn{background:var(--ink);width:100%;color:var(--on-ink);border:0;border-radius:12px;margin-top:24px;padding:15px;font-size:16px;font-weight:500}.btn.sec{background:var(--fill);color:var(--text);margin-top:10px}.btn.danger{color:var(--red);background:0 0}.err{color:var(--red);margin-top:10px;font-size:14px}.sync{color:var(--muted);font-size:12px}
