:root{--bg:#f3f4f2;--surface:#ffffff;--fg:#17201c;--muted:#66706b;--line:#dfe3df;--accent:#1f6f54;--accent-soft:#e1efe9;--hot:#c2410c;--late:#b42318;--ok:#1f6f54;--track:#e6e9e6;--f-body:"Onest",system-ui,-apple-system,"Segoe UI",sans-serif;--f-num:"JetBrains Mono",ui-monospace,"SF Mono",Menlo,monospace}@media (prefers-color-scheme:dark){:root{--bg:#111613;--surface:#1a211d;--fg:#e7ece9;--muted:#95a09a;--line:#2a332e;--accent:#5cc49b;--accent-soft:#1d3329;--hot:#f59e5b;--late:#f87171;--ok:#5cc49b;--track:#2a332e;color-scheme:dark}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%}body{margin:0;background:var(--bg);color:var(--fg);font-family:var(--f-body);font-size:15px;line-height:1.4;padding:calc(12px + env(safe-area-inset-top,0px)) max(16px,env(safe-area-inset-right,0px)) calc(96px + env(safe-area-inset-bottom,0px)) max(16px,env(safe-area-inset-left,0px))}a{color:inherit;text-decoration:none}.app{max-width:440px;margin:0 auto;display:flex;flex-direction:column;gap:16px}.num{font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.sample{font-size:12px;color:var(--hot);text-align:center;margin:0}header{display:flex;justify-content:space-between;align-items:center;gap:8px;min-height:32px}h1{font-size:22px;letter-spacing:-.01em}h1,h2{margin:0;font-weight:700}h2{font-size:20px}.back{color:var(--accent);font:500 15px var(--f-body);padding:4px 0}.linkbtn{border:0;background:none;color:var(--muted);font:500 13px var(--f-body);cursor:pointer;padding:4px 0}.seg{display:grid;grid-template-columns:repeat(3,1fr);background:var(--track);border-radius:10px;padding:3px;grid-gap:3px;gap:3px}.seg.two{grid-template-columns:1fr 1fr}.seg button{border:0;background:transparent;color:var(--muted);font:500 14px var(--f-body);padding:7px 0;border-radius:8px;cursor:pointer}.seg button[aria-pressed=true]{background:var(--surface);color:var(--fg);box-shadow:0 1px 2px rgba(0,0,0,.08)}a:focus-visible,button:focus-visible,input:focus-visible,select:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.label{font-size:12px;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);font-weight:600;margin:0 0 8px}.group{display:flex;flex-direction:column;gap:8px}.row{background:var(--surface);border-radius:12px;padding:12px 14px;display:grid;grid-template-columns:1fr auto;grid-gap:2px 12px;gap:2px 12px;align-items:center;border-left:4px solid var(--line)}.row.hot{border-left-color:var(--hot)}.row.late{border-left-color:var(--late)}.row.paid{border-left-color:var(--ok);opacity:.75}.row .what{font-weight:600;min-width:0}.row .sub{font-size:13px;color:var(--muted)}.row .amt{font-family:var(--f-num);font-size:16px;text-align:right}.row .when{font-size:13px;text-align:right;color:var(--muted)}.row.hot .when{color:var(--hot);font-weight:600}.row.late .when{color:var(--late);font-weight:600}.row.paid .when{color:var(--ok);font-weight:600}.empty{color:var(--muted);font-size:14px;border-radius:12px}.empty,.totals{background:var(--surface);padding:14px}.totals{border-radius:14px;display:flex;flex-direction:column;gap:10px}.tgrid2{display:grid;grid-template-columns:1fr 1fr;grid-gap:8px;gap:8px;border-top:1px solid var(--line);padding-top:10px}.tgrid2 div{display:flex;flex-direction:column;gap:2px}.tgrid2 .v{font-family:var(--f-num);font-size:16px}.tgrid2 .k{font-size:12px;color:var(--muted)}.bar{height:5px;background:var(--track);overflow:hidden}.bar,.bar i{border-radius:3px}.bar i{display:block;height:100%;background:var(--accent)}.bar.high i{background:var(--hot)}.card{background:var(--surface);border-radius:14px;padding:14px;flex-direction:column;gap:8px}.card,.top{display:flex}.top{justify-content:space-between;gap:10px;align-items:flex-start}.name{font-weight:600;min-width:0}.name small{display:block;font-weight:400;color:var(--muted);font-size:13px}.balance{display:flex;justify-content:space-between;align-items:baseline;gap:8px;flex-wrap:wrap}.debt{font-family:var(--f-num);font-size:18px}.muted{font-size:13px}.muted,.upd{color:var(--muted)}.upd{font-size:12px;white-space:nowrap}.upd.stale{color:var(--hot)}.chips{display:flex;flex-wrap:wrap;gap:6px;align-items:center}.chip{font-size:12px;background:var(--accent-soft);color:var(--accent);padding:3px 8px;border-radius:999px;white-space:nowrap}.chip b{font-weight:600;color:var(--fg)}.panel{background:var(--surface);border-radius:14px;padding:16px;display:flex;flex-direction:column;gap:12px}.big{font-family:var(--f-num);font-size:30px;line-height:1.1}dl{margin:0;display:grid;grid-template-columns:auto 1fr;grid-gap:8px 14px;gap:8px 14px}dt{color:var(--muted)}dd,dt{font-size:14px}dd{margin:0;text-align:right}.btn{font:600 15px var(--f-body);border-radius:12px;padding:13px;cursor:pointer;border:0;background:var(--accent);color:var(--surface);width:100%;text-align:center;display:block}.btn.ghost{background:transparent;color:var(--fg);border:1px solid var(--line)}.edit{display:flex;gap:8px;flex-wrap:wrap}.edit input,.field input,.field select{flex:1 1;min-width:0;font:500 17px var(--f-num);padding:10px;border:1px solid var(--line);border-radius:10px;background:var(--bg);color:var(--fg)}.edit button{font:600 14px var(--f-body);border-radius:10px;padding:0 14px;border:0;background:var(--accent);color:var(--surface);cursor:pointer;min-height:44px}.field{display:flex;flex-direction:column;gap:6px}.field span{font-size:13px;color:var(--muted)}.status{font-weight:600;color:var(--ok)}.status.hot{color:var(--hot)}.status.late{color:var(--late)}.note{font-size:13px;color:var(--muted);margin:0}.error{color:var(--late);font-size:14px;margin:0}.picker{gap:12px}.picker,.pk{display:flex;flex-direction:column}.pk{gap:6px}.pk-top{display:flex;justify-content:space-between;align-items:center;gap:8px;font-size:14px;flex-wrap:wrap}.stars{display:flex;gap:6px}.star,.tag{font:500 13px var(--f-body);border-radius:999px;padding:5px 11px;cursor:pointer;border:1px solid var(--line);background:transparent;color:var(--muted);white-space:nowrap}.star.on{border-color:var(--accent)}.star.on,.tag.on{color:var(--accent)}.tag.on{background:var(--accent-soft);border-color:transparent}.gl{font-size:14px}.gl b{font-family:var(--f-num);font-size:18px;font-weight:500}.gl.hot{color:var(--hot)}.gl.late{color:var(--late)}.cash{gap:6px;border-top:1px solid var(--line);padding-top:10px}.cash,.cash ul{display:flex;flex-direction:column}.cash ul{list-style:none;margin:0;padding:0;gap:4px}.cash li{display:flex;justify-content:space-between;gap:10px;font-size:14px}.cash li b{font-family:var(--f-num);font-weight:500}nav{position:fixed;left:0;right:0;bottom:0;background:var(--surface);border-top:1px solid var(--line);z-index:5;padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:6px calc(6px + env(safe-area-inset-bottom,0px))}nav .in{max-width:440px;margin:0 auto;display:grid;grid-template-columns:repeat(4,1fr)}nav a{font:500 12px var(--f-body);color:var(--muted);padding:6px 0;display:flex;flex-direction:column;align-items:center;gap:2px}nav svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8}nav a[aria-current=page]{color:var(--accent)}.badge{font-size:10px;background:var(--late);color:var(--surface);border-radius:999px;padding:0 5px;margin-left:3px}.login{max-width:360px;margin:12vh auto 0;display:flex;flex-direction:column;gap:14px}