:root{--bg:#f5f6fa;--surface:#fff;--surface-2:#f0f2f7;--text:#171c2a;--muted:#5d6578;--line:#e2e5ee;--primary:#3550e0;--primary-hover:#2a42c4;--primary-soft:#e9edff;--positive:#127a4b;--positive-soft:#e3f5ec;--negative:#c2372f;--negative-soft:#fdeceb;--on-primary:#fff;--radius:12px;--radius-small:8px;--shadow:0 1px 2px #1018280f, 0 1px 3px #10182814;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;color:var(--text);background:var(--bg);font-family:Inter,system-ui,-apple-system,Segoe UI,Roboto,sans-serif;font-size:15px;line-height:1.5}@media (prefers-color-scheme:dark){:root{--bg:#0f121a;--surface:#181c27;--surface-2:#202533;--text:#e8ebf3;--muted:#9aa3b7;--line:#2a3040;--primary:#7b8cff;--primary-hover:#94a2ff;--primary-soft:#262c4a;--positive:#4cc38a;--positive-soft:#183326;--negative:#ff7a70;--negative-soft:#3a1d1c;--on-primary:#0d1020;--shadow:none;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box}body,h1,h2,p{margin:0}h2{margin-bottom:12px;font-size:1.05rem}.spaced{margin-top:24px}.spaced-small{margin-top:12px}input,select,button{font:inherit}input,select{border:1px solid var(--line);border-radius:var(--radius-small);background:var(--surface);width:100%;color:var(--text);padding:9px 12px}input:focus-visible,select:focus-visible,button:focus-visible{outline:2px solid var(--primary);outline-offset:1px}input[aria-invalid=true]{border-color:var(--negative)}select{cursor:pointer;width:auto}button{border-radius:var(--radius-small);cursor:pointer;white-space:nowrap;border:1px solid #0000;padding:9px 16px;font-weight:600;transition:background .12s}button.primary{background:var(--primary);color:var(--on-primary)}button.primary:hover{background:var(--primary-hover)}button.primary:disabled{opacity:.45;cursor:default}button.ghost{color:var(--primary);border-color:var(--line);background:0 0}button.ghost:hover{background:var(--primary-soft)}button.wide{width:100%}.page{gap:16px;max-width:1040px;margin:0 auto;padding:24px 16px 48px;display:grid}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);box-shadow:var(--shadow);padding:20px}.columns{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:start;gap:16px;display:grid}.split{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:16px;margin-top:12px;display:grid}.stack{gap:16px;display:grid}.form-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:12px 16px;display:grid}.grow{flex-direction:column;flex:1;min-width:0;display:flex}.inline{gap:8px;margin-top:8px;display:flex}.loading{text-align:center;color:var(--muted);padding:48px}.topbar{background:var(--surface);border-bottom:1px solid var(--line);z-index:1;position:sticky;top:0}.topbar-inner{justify-content:space-between;align-items:center;gap:12px;max-width:1040px;margin:0 auto;padding:10px 16px;display:flex}.topbar-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:8px;display:flex}.brand{align-items:center;gap:10px;font-size:1.1rem;font-weight:700;display:inline-flex}.brand-mark{background:linear-gradient(135deg, var(--primary), #8b5cf6);color:#fff;border-radius:9px;place-items:center;width:32px;height:32px;font-weight:800;display:grid}.welcome{grid-template-columns:repeat(auto-fit,minmax(320px,1fr));align-items:center;gap:40px;max-width:1040px;min-height:100vh;margin:0 auto;padding:48px 16px;display:grid}.welcome h1{letter-spacing:-.02em;margin:24px 0 20px;font-size:clamp(1.7rem,3.5vw,2.4rem);line-height:1.2}.features{color:var(--muted);gap:12px;margin:0;padding:0;list-style:none;display:grid}.features li{padding-left:28px;position:relative}.features li:before{content:"✓";color:var(--positive);font-weight:700;position:absolute;left:0}.features strong{color:var(--text)}.auth{gap:16px;display:grid}.segmented{background:var(--surface-2);border-radius:var(--radius-small);grid-template-columns:1fr 1fr;padding:4px;display:grid}.segmented button{color:var(--muted);background:0 0}.segmented button.active{background:var(--primary-soft);color:var(--primary);box-shadow:var(--shadow)}.token{word-break:break-all;border-radius:var(--radius-small);background:var(--surface-2);padding:12px;font-size:.85rem;display:block}.summary{border-radius:var(--radius);background:linear-gradient(135deg, var(--primary-soft), var(--surface));border:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;padding:20px;display:flex}.eyebrow{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;font-size:.85rem;font-weight:600}.headline{letter-spacing:-.01em;font-size:1.6rem;font-weight:700}.tabs{border-bottom:1px solid var(--line);gap:4px;display:flex;overflow-x:auto}.tabs button{color:var(--muted);background:0 0;border-bottom:2px solid #0000;border-radius:0;align-items:center;gap:8px;padding:10px 14px;display:inline-flex}.tabs button.active{color:var(--primary);border-bottom-color:var(--primary)}.tab-icon{display:inline-flex;position:relative}.icon{width:18px;height:18px}.badge{background:var(--negative);color:#fff;border-radius:999px;place-items:center;min-width:18px;height:18px;padding:0 5px;font-size:.7rem;font-weight:700;display:grid;position:absolute;top:-6px;right:-10px}.rows{margin:0;padding:0;list-style:none}.rows li{border-top:1px solid var(--line);flex-wrap:wrap;align-items:center;gap:12px;padding:12px 0;display:flex}.rows li:first-child{border-top:none}.rows .reversed strong{color:var(--muted);text-decoration:line-through}.actions{flex-wrap:wrap;gap:8px;display:flex}button.compact{padding:4px 10px;font-size:.85rem}.avatar{background:var(--primary-soft);width:36px;height:36px;color:var(--primary);border-radius:50%;flex:none;place-items:center;font-size:.85rem;font-weight:700;display:grid}.avatar.small{width:30px;height:30px;font-size:.75rem}.amount{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.positive{color:var(--positive)}.negative{color:var(--negative)}.bar{background:var(--surface-2);border-radius:999px;height:6px;margin-top:6px;overflow:hidden}.bar span{border-radius:999px;height:100%;display:block}.bar .positive{background:var(--positive)}.bar .negative{background:var(--negative)}.pill{background:var(--surface-2);color:var(--muted);border-radius:999px;padding:2px 8px;font-size:.75rem}.payment{border-top:1px solid var(--line);gap:12px;padding:14px 0;display:grid}.payment:first-of-type{border-top:none;padding-top:0}.payment-line{align-items:center;gap:8px;display:flex}.arrow{color:var(--muted);font-weight:700}.qr-box{border-radius:var(--radius-small);background:var(--surface-2);flex-wrap:wrap;align-items:center;gap:16px;padding:12px;display:flex}.qr-box img{width:200px;height:200px;image-rendering:pixelated;background:#fff;border-radius:6px}.qr-box p{flex:1;min-width:200px}.field{gap:6px;display:grid}.label{color:var(--muted);font-size:.85rem;font-weight:600}.chips{flex-wrap:wrap;gap:8px;margin:8px 0;display:flex}.chip{background:var(--surface);color:var(--muted);border-color:var(--line);font-weight:500}.chip.on{background:var(--primary-soft);color:var(--primary);border-color:var(--primary)}.dropzone{text-align:center;border:2px dashed var(--line);border-radius:var(--radius);color:var(--muted);cursor:pointer;place-items:center;margin:16px 0;padding:24px;display:grid;position:relative}.dropzone:hover{border-color:var(--primary);background:var(--primary-soft)}.dropzone input{opacity:0;cursor:pointer;position:absolute;inset:0}.dropzone strong{color:var(--primary)}.alert{border-radius:var(--radius-small);overflow-wrap:anywhere;justify-content:space-between;align-items:flex-start;gap:12px;padding:10px 8px 10px 14px;font-weight:500;display:flex}.alert .close{color:inherit;opacity:.7;background:0 0;flex:none;padding:0 6px;font-size:1.25rem;line-height:1.2}.alert .close:hover{opacity:1}.alert.error{background:var(--negative-soft);color:var(--negative)}.alert.success{background:var(--positive-soft);color:var(--positive)}.empty{text-align:center;justify-items:center;gap:4px;padding:24px 8px;display:grid}.muted{color:var(--muted)}.small{font-size:.85rem}@media (width<=640px){.topbar{position:static}.topbar-inner{flex-wrap:wrap}.topbar-actions{flex-wrap:nowrap;flex:100%;justify-content:flex-start}.topbar-actions select{flex:1;min-width:0}.topbar-actions .avatar{display:none}.tabs{z-index:2;background:var(--surface);border-top:1px solid var(--line);padding:6px 4px calc(6px + env(safe-area-inset-bottom));border-bottom:none;grid-template-columns:repeat(5,1fr);gap:0;display:grid;position:fixed;bottom:0;left:0;right:0;overflow:visible;box-shadow:0 -2px 10px #1018280f}.tabs button{border-bottom:none;flex-direction:column;gap:3px;padding:4px 0;font-size:.7rem;font-weight:600}.tabs button.active{color:var(--primary)}.icon{width:24px;height:24px}.page{padding-bottom:calc(96px + env(safe-area-inset-bottom));padding-top:16px}}@media (width<=560px){.headline{font-size:1.3rem}.summary button{width:100%}.payment-line{flex-wrap:wrap}}.balance-head{flex-wrap:wrap;justify-content:space-between;gap:8px;display:flex}.bar.diverging{position:relative}.bar.diverging:after{content:"";background:var(--muted);opacity:.35;width:2px;position:absolute;top:-2px;bottom:-2px;left:50%}.bar.diverging span{position:absolute;top:0;bottom:0}.bar.diverging .positive{border-radius:0 999px 999px 0;left:50%}.bar.diverging .negative{border-radius:999px 0 0 999px;right:50%}.stack-small{gap:8px;display:grid}.segmented.three{grid-template-columns:repeat(3,1fr)}.segmented.compact{grid-template-columns:auto auto;display:inline-grid}.segmented.compact button{padding:6px 12px}.card-head{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.card-head h2{margin:0}.split-rows li{padding:8px 0}.amount-input{text-align:right;font-variant-numeric:tabular-nums;width:120px}.share-preview{text-align:right;min-width:84px}.assigned{border-radius:var(--radius-small);background:var(--surface-2);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;padding:10px 14px;font-weight:600;display:flex}.assigned.done{background:var(--positive-soft);color:var(--positive)}.assigned.over{background:var(--negative-soft);color:var(--negative)}.subhead{color:var(--muted);text-transform:uppercase;letter-spacing:.04em;margin-top:20px;font-size:.85rem}.tip{border-radius:var(--radius-small);background:var(--primary-soft);gap:10px;margin-top:16px;padding:12px 14px;display:grid}.tip>button{justify-self:start}.tip .payment{border-top-color:var(--line)}
