:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--bg:#f4f5f3;--surface:#fff;--surface-2:#eef0ed;--border:#e1e4e0;--text:#141917;--text-2:#4b5450;--text-3:#79827e;--green:#1f7a4d;--green-press:#17633e;--green-soft:#e4f3ea;--green-text:#145c39;--on-green:#fff;--amber-soft:#fdf0d9;--amber-text:#7a4800;--blue-soft:#e8f0fb;--blue-text:#1d4f91;--red:#b42318;--red-soft:#fdecea;--radius:18px;--radius-sm:12px;--tabbar-h:66px;--safe-t:env(safe-area-inset-top,0px);--safe-b:env(safe-area-inset-bottom,0px);--font:-apple-system, BlinkMacSystemFont, "SF Pro Text", "Segoe UI", Roboto, system-ui, sans-serif}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark;--bg:#0f1211;--surface:#181c1a;--surface-2:#222724;--border:#2c322f;--text:#eef1ef;--text-2:#b4bcb8;--text-3:#87908c;--green:#3fae73;--green-press:#359862;--green-soft:#17301f;--green-text:#8fd9ad;--on-green:#07140c;--amber-soft:#33270f;--amber-text:#f2c477;--blue-soft:#16243a;--blue-text:#a9c8f2;--red:#f2827a;--red-soft:#3a1b18}}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}body{background:var(--bg);color:var(--text);font:18px/1.4 var(--font);-webkit-font-smoothing:antialiased;margin:0}button,input,select{font:inherit;color:inherit}button{cursor:pointer}h1,h2,h3,p{margin:0}.num{font-variant-numeric:tabular-nums}.page{max-width:560px;padding:calc(var(--safe-t) + 20px) 16px calc(var(--tabbar-h) + var(--safe-b) + 32px);margin:0 auto}.page-head{margin-bottom:20px}.page-head p{color:var(--text-2);font-size:17px}.page-head h1{letter-spacing:-.01em;font-size:30px;line-height:1.15}.muted{color:var(--text-2)}.small{font-size:15px}.center{text-align:center}.stack>*+*{margin-top:12px}.spinner{border:3px solid var(--border);border-top-color:var(--green);border-radius:50%;width:32px;height:32px;margin:48px auto;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}.spin{animation:.8s linear infinite spin}.btn{border-radius:var(--radius-sm);background:var(--surface-2);text-align:center;border:1.5px solid #0000;justify-content:center;align-items:center;gap:10px;width:100%;min-height:58px;padding:12px 18px;font-size:18px;font-weight:600;display:flex}.btn:disabled{opacity:.55;cursor:default}.btn.primary{background:var(--green);color:var(--on-green)}.btn.primary:active:not(:disabled){background:var(--green-press)}.btn.outline{background:var(--surface);border-color:var(--green);color:var(--green-text)}.btn.quiet{color:var(--text-2);background:0 0;min-height:48px}.btn.danger{background:var(--surface);border-color:var(--red);color:var(--red)}.btn small{opacity:.85;font-size:14px;font-weight:500;display:block}.btn .two-lines{flex-direction:column;align-items:center;display:flex}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:18px}.card h2{margin-bottom:4px;font-size:20px}.month{color:var(--text-2);margin:24px 4px 8px;font-size:16px;font-weight:600}.month:first-child{margin-top:0}.list{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);overflow:hidden}.row{border:0;border-top:1px solid var(--border);background:var(--surface);text-align:left;align-items:center;gap:14px;width:100%;min-height:78px;padding:14px 16px;display:flex}.row:first-child{border-top:0}.row:active{filter:brightness(.97)}.row .icon{background:var(--surface-2);width:46px;height:46px;color:var(--text-2);border-radius:50%;flex:none;place-items:center;display:grid}.row .what{flex:1;min-width:0}.row .merchant{text-overflow:ellipsis;white-space:nowrap;font-weight:600;overflow:hidden}.row .sub{color:var(--text-2);font-size:15px}.row .amount{text-align:right;flex:none;font-weight:700}.row .amount .sub{font-weight:500}.row.done{background:var(--green-soft)}.row.done .icon{background:var(--surface);color:var(--green)}.row.done .merchant,.row.done .sub,.row.done .amount{color:var(--green-text)}.row.waiting{background:var(--amber-soft)}.row.waiting .icon{background:var(--surface);color:var(--amber-text)}.row.waiting .merchant,.row.waiting .sub,.row.waiting .amount{color:var(--amber-text)}.row.off .merchant,.row.off .amount{color:var(--text-3);text-decoration:line-through}.backdrop{z-index:40;background:#0a0e0c73;justify-content:center;align-items:flex-end;animation:.15s ease-out fade;display:flex;position:fixed;inset:0}.sheet{width:100%;max-width:560px;max-height:92vh;padding:10px 20px calc(var(--safe-b) + 20px);background:var(--surface);border-radius:26px 26px 0 0;animation:.2s ease-out rise;overflow-y:auto}.sheet .handle{background:var(--border);border-radius:3px;width:44px;height:5px;margin:0 auto 14px}@keyframes fade{0%{opacity:0}}@keyframes rise{0%{opacity:.6;transform:translateY(40px)}}.tabbar{z-index:30;padding-bottom:var(--safe-b);background:var(--surface);border-top:1px solid var(--border);justify-content:center;display:flex;position:fixed;bottom:0;left:0;right:0}.tabbar nav{width:100%;max-width:560px;display:flex}.tabbar a{height:var(--tabbar-h);color:var(--text-3);flex-direction:column;flex:1;justify-content:center;align-items:center;gap:2px;font-size:14px;font-weight:600;text-decoration:none;display:flex}.tabbar a.active{color:var(--green)}.toast{left:16px;right:16px;bottom:calc(var(--tabbar-h) + var(--safe-b) + 14px);z-index:60;border-radius:var(--radius-sm);background:var(--text);max-width:528px;color:var(--bg);margin:0 auto;padding:14px 18px;font-size:17px;position:fixed;box-shadow:0 6px 24px #0000002e}.toast.error{background:var(--red);color:#fff}.toast .actions{gap:8px;margin-top:10px;display:flex}.toast .actions .btn{min-height:44px;font-size:16px}.field{margin-top:14px;display:block}.field>span{color:var(--text-2);margin-bottom:6px;font-size:15px;font-weight:600;display:block}.input{border:1.5px solid var(--border);border-radius:var(--radius-sm);background:var(--surface);width:100%;min-height:52px;padding:10px 14px}.input:focus{border-color:var(--green);outline:none}.check{border-top:1px solid var(--border);align-items:center;gap:12px;min-height:56px;padding:8px 0;display:flex}.check:first-child{border-top:0}.check input{width:24px;height:24px;accent-color:var(--green)}.error-text{color:var(--red);margin-top:10px;font-size:16px}.row .icon.logo,.row.done .icon.logo,.row.waiting .icon.logo{box-shadow:inset 0 0 0 1px var(--border);background:#fff;position:relative}.row .icon.logo img{border-radius:50%;width:100%;height:100%}.icon .badge{border:2px solid var(--surface);color:#fff;border-radius:50%;place-items:center;width:22px;height:22px;display:grid;position:absolute;bottom:-4px;right:-4px}.icon .badge.done{background:var(--green)}.icon .badge.waiting{background:#b26b00}.icon .badge.off{background:var(--text-3)}.login{max-width:420px;min-height:100vh;padding:calc(var(--safe-t) + 48px) 24px calc(var(--safe-b) + 24px);flex-direction:column;margin:0 auto;display:flex}.login .logo{border-radius:20px;width:72px;height:72px;margin-bottom:20px}.login h1{margin-bottom:6px;font-size:30px}.login .people{margin-top:28px}.login .people .btn{justify-content:flex-start;min-height:72px;padding-left:22px;font-size:22px}.login .person-dot{background:var(--green-soft);width:44px;height:44px;color:var(--green-text);border-radius:50%;place-items:center;font-weight:700;display:grid}.pin-dots{justify-content:center;gap:16px;min-height:22px;margin:28px 0 8px;display:flex}.pin-dots span{border:2px solid var(--text-3);border-radius:50%;width:18px;height:18px}.pin-dots span.on{background:var(--text);border-color:var(--text)}.pin-error{min-height:2.8em;margin-top:4px}.pinpad{grid-template-columns:repeat(3,1fr);gap:12px;margin-top:8px;display:grid}.pinpad button{background:var(--surface);height:76px;box-shadow:inset 0 0 0 1px var(--border);border:0;border-radius:18px;font-size:30px;font-weight:500}.pinpad button:active{background:var(--surface-2)}.pinpad .enter{background:var(--green);color:var(--on-green);box-shadow:none}.detail{text-align:center;padding:6px 0 18px}.detail .merchant{font-size:22px;font-weight:700}.detail .big{letter-spacing:-.01em;margin:10px 0 2px;font-size:40px;font-weight:700}.status-pill{background:var(--surface-2);color:var(--text-2);border-radius:999px;margin-top:12px;padding:8px 16px;font-size:16px;font-weight:600;display:inline-block}.status-pill.done{background:var(--green-soft);color:var(--green-text)}.status-pill.waiting{background:var(--amber-soft);color:var(--amber-text)}.facts{border-radius:var(--radius-sm);background:var(--surface-2);margin:4px 0 18px;padding:12px 16px;font-size:16px}.facts div{justify-content:space-between;gap:12px;padding:4px 0;display:flex}.facts dt{color:var(--text-2)}.facts dd{text-align:right;margin:0;font-weight:600}.big-card{border-radius:var(--radius);padding:22px}.big-card+.big-card{margin-top:14px}.big-card .label{font-size:18px;font-weight:600}.big-card .amount{letter-spacing:-.01em;margin:4px 0;font-size:40px;font-weight:700;line-height:1.1}.big-card .other{opacity:.85;margin:-2px 0 6px;font-size:20px;font-weight:600}.big-card .note{font-size:16px}.big-card .split{border-top:1px solid var(--border);margin-top:14px}.big-card .split>div{justify-content:space-between;align-items:flex-start;gap:12px;padding:12px 0 0;font-size:16px;display:flex}.pair{text-align:right;flex-direction:column;align-items:flex-end;display:flex}.pair small{color:var(--text-2);font-size:14px}.big-card.owe{background:var(--surface);border:1px solid var(--border)}.big-card.owe .label,.big-card.owe .note{color:var(--text-2)}.big-card.wait{background:var(--amber-soft);color:var(--amber-text)}.big-card.paid{background:var(--green-soft);color:var(--green-text)}.big-card.debt{background:var(--blue-soft);color:var(--blue-text)}.big-card.clear{background:var(--surface);border:1px solid var(--border)}.lines{margin-top:14px}.lines>div{border-top:1px solid var(--border);justify-content:space-between;gap:12px;padding:14px 18px;display:flex}.lines>div:first-child{border-top:0}.confirm-banner{border-radius:var(--radius);background:var(--amber-soft);color:var(--amber-text);align-items:center;gap:12px;margin-bottom:16px;padding:14px 16px;font-weight:600;display:flex}
