:root{color-scheme:dark;--bg:#08080a;--surface:#101013;--surface-2:#16161a;--surface-3:#1d1d22;--text:#ededef;--muted:#8a8a93;--faint:#5a5a63;--border:rgba(255,255,255,0.07);--border-strong:rgba(255,255,255,0.16);--accent:#cbb68b;--accent-soft:rgba(203,182,139,0.1);--primary:#cbb68b;--primary-hover:#d8c59e;--primary-text:#0b0a08;--pos:#8cc7a1;--pos-soft:rgba(140,199,161,0.1);--neg:#e08a7e;--neg-soft:rgba(224,138,126,0.1);--radius:6px;--radius-sm:4px;--ease:cubic-bezier(0.2,0.8,0.2,1)}*,:after,:before{box-sizing:border-box}body{margin:0;min-height:100vh;touch-action:manipulation;text-size-adjust:100%;color:var(--text);background:radial-gradient(1200px 600px at 50% -200px,rgba(203,182,139,.06),transparent 70%),var(--bg);font:14.5px/1.55 -apple-system,BlinkMacSystemFont,SF Pro Text,Inter,Segoe UI,Roboto,sans-serif;letter-spacing:.005em;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}::selection{background:rgba(203,182,139,.3)}button,input,select{font:inherit;color:inherit;letter-spacing:inherit}button{cursor:pointer;border:0;background:none;padding:0;-webkit-tap-highlight-color:transparent}button:disabled{cursor:not-allowed}:focus-visible{outline:1px solid var(--accent);outline-offset:2px}.container{max-width:620px;margin:0 auto;padding:calc(36px + env(safe-area-inset-top)) calc(20px + env(safe-area-inset-right)) calc(96px + env(safe-area-inset-bottom)) calc(20px + env(safe-area-inset-left))}.topbar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:28px;min-height:32px}.brand{margin:0;font-size:1.4rem;font-weight:600;text-transform:uppercase;letter-spacing:.15em}.card{background:var(--surface);border:1px solid var(--border);border-radius:var(--radius);padding:24px;margin-bottom:12px;animation:rise .5s var(--ease) both}.card-head{display:flex;align-items:baseline;justify-content:space-between;gap:12px;margin-bottom:18px}h2{margin:0;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:var(--text)}.hero{position:relative;overflow:hidden;padding:28px 24px 24px;margin-bottom:12px;border:1px solid var(--border);border-radius:var(--radius);background:linear-gradient(180deg,var(--surface-2),var(--surface));animation:rise .55s var(--ease) both}.hero:before{content:"";position:absolute;inset:0 0 auto;height:1px;background:linear-gradient(90deg,transparent,rgba(203,182,139,.7),transparent)}.hero-label{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.18em;color:var(--text)}.hero-total{margin:10px 0 22px;font-size:clamp(2.6rem,11vw,3.6rem);font-weight:200;line-height:1;letter-spacing:-.04em;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.hero-stats{display:flex;flex-wrap:wrap;border-top:1px solid var(--border);padding-top:16px;gap:8px 28px}.hero-stat{font-size:.8rem;color:var(--muted)}.hero-stat strong{color:var(--text);font-weight:500;font-feature-settings:"tnum";font-variant-numeric:tabular-nums}.input{width:100%;min-width:0;height:44px;padding:0 14px;border:1px solid var(--border);border-radius:var(--radius-sm);background:var(--bg);font-size:16px;transition:border-color .2s var(--ease),background .2s var(--ease)}.input::placeholder{color:var(--faint)}.input:hover{border-color:var(--border-strong)}.input:focus{outline:none;border-color:rgba(203,182,139,.6)}.input.amount{flex:0 0 136px;text-align:right;font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:500}.row{gap:8px}.row,.stack{display:flex}.stack{flex-direction:column;gap:22px}.field-label{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px;font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.16em;color:var(--faint)}fieldset{border:0;padding:0;margin:0;min-width:0}legend{padding:0;width:100%}.btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;height:44px;padding:0 20px;border-radius:var(--radius-sm);background:var(--primary);color:var(--primary-text);font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;white-space:nowrap;transition:background .2s var(--ease),opacity .2s var(--ease),transform .15s var(--ease)}.btn:hover:not(:disabled){background:var(--primary-hover)}.btn:active:not(:disabled){transform:translateY(1px)}.btn:disabled{opacity:1}.btn.block{width:100%}.btn-ghost{height:30px;padding:0 12px;border-radius:var(--radius-sm);font-size:.7rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--muted);border:1px solid transparent;transition:border-color .2s var(--ease),color .2s var(--ease),background .2s var(--ease)}.btn-ghost:hover{color:var(--text);border-color:var(--border-strong)}.btn-ghost.danger:hover{color:var(--neg);border-color:rgba(224,138,126,.4)}.btn-ghost.solid-danger{color:var(--neg);border-color:rgba(224,138,126,.5)}.btn-ghost.solid-danger:hover{background:var(--neg-soft)}.text-btn{font-size:.68rem;font-weight:600;text-transform:uppercase;letter-spacing:.14em;color:var(--accent);padding:2px 0;border-bottom:1px solid transparent;transition:border-color .2s var(--ease)}.text-btn:hover{border-bottom-color:currentColor}.icon-btn{width:28px;height:28px;border-radius:var(--radius-sm);display:grid;place-items:center;color:var(--faint);transition:color .2s var(--ease),background .2s var(--ease),opacity .2s var(--ease)}.icon-btn:hover:not(:disabled){color:var(--neg);background:var(--neg-soft)}.icon-btn:disabled{opacity:.25}.confirm{display:flex;align-items:center;gap:8px;font-size:.8rem;color:var(--muted);animation:fade .2s var(--ease) both}.avatar{--size:30px;flex:none;width:var(--size);height:var(--size);border-radius:var(--radius-sm);display:grid;place-items:center;font-size:calc(var(--size) * .36);font-weight:600;letter-spacing:.04em;background:hsl(var(--hue) 12% 17%);color:hsl(var(--hue) 28% 74%);box-shadow:inset 0 0 0 1px hsl(var(--hue) 14% 26%)}.avatar.sm{--size:22px}.avatar.lg{--size:36px}.pills{display:flex;flex-wrap:wrap;gap:6px;list-style:none;padding:0;margin:0}.member{display:flex;align-items:center;gap:9px;padding:4px;border-radius:var(--radius-sm);background:var(--surface-2);border:1px solid var(--border);animation:pop .35s var(--ease) both}.member-name{font-weight:500}.member .icon-btn{width:22px;height:22px}.pill{display:inline-flex;align-items:center;gap:9px;height:36px;padding:0 14px 0 6px;border-radius:var(--radius-sm);border:1px solid var(--border);background:transparent;color:var(--muted);font-weight:500;transition:color .2s var(--ease),background .2s var(--ease),border-color .2s var(--ease)}.pill:hover{color:var(--text);border-color:var(--border-strong)}.pill[aria-checked=true],.pill[aria-pressed=true]{color:var(--text);background:var(--surface-3);border-color:rgba(203,182,139,.55)}.pill .tick{width:14px;height:14px;color:var(--accent);opacity:0;transform:scale(.6);transition:opacity .2s var(--ease),transform .25s var(--ease)}.pill[aria-pressed=true] .tick{opacity:1;transform:none}.list{list-style:none;padding:0;margin:0}.item{display:flex;align-items:center;gap:14px;padding:14px 0;border-top:1px solid var(--border);animation:rise .45s var(--ease) both}.item:first-child{border-top:0;padding-top:4px}.item-main{flex:1 1;min-width:0}.item-title{font-weight:500}.item-sub,.item-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.item-sub{margin-top:1px;font-size:.8rem;color:var(--muted)}@media (hover:hover){.item .icon-btn{width:0;margin-left:-14px;overflow:hidden;opacity:0;transition:width .25s var(--ease),margin .25s var(--ease),opacity .2s var(--ease),color .2s var(--ease),background .2s var(--ease)}.item:focus-within .icon-btn,.item:hover .icon-btn{width:28px;margin-left:0;opacity:1}}.money{font-feature-settings:"tnum";font-variant-numeric:tabular-nums;font-weight:500;white-space:nowrap}.pos{color:var(--pos)}.neg{color:var(--neg)}.muted{color:var(--muted)}.balance{display:grid;grid-template-columns:minmax(0,1fr) minmax(70px,1.1fr) auto;align-items:center;grid-gap:16px;gap:16px}.balance-who{display:flex;align-items:center;gap:10px;min-width:0;font-weight:500}.balance-who span:last-child{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.bar{position:relative;height:3px;background:var(--surface-3)}.bar:after{content:"";position:absolute;left:50%;top:-4px;bottom:-4px;width:1px;background:var(--border-strong)}.bar-fill{position:absolute;top:0;bottom:0;transition:width .7s var(--ease)}.bar-fill.pos{left:50%;background:var(--pos)}.bar-fill.neg{right:50%;background:var(--neg)}.balance-amt{text-align:right;min-width:96px}.balance-amt small{display:block;font-size:.62rem;font-weight:600;color:var(--faint);text-transform:uppercase;letter-spacing:.16em}.divider{height:1px;background:var(--border);margin:22px 0}.transfer{display:flex;align-items:center;gap:10px;min-width:0;flex:1 1}.transfer strong{font-weight:500}.transfer-arrow{flex:none;color:var(--accent)}.transfer-names{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chip-amount{padding:4px 10px;border-radius:var(--radius-sm);border:1px solid rgba(203,182,139,.35);color:var(--accent)}.square{display:flex;align-items:center;gap:10px;padding:12px 14px;border-radius:var(--radius-sm);border:1px solid rgba(140,199,161,.3);color:var(--pos);font-weight:500}.square svg{width:16px;height:16px}.empty{margin:4px 0 0;padding:18px 0 2px;border-top:1px solid var(--border);text-align:center;color:var(--faint);font-size:.85rem}.error{margin:-8px 0 0;color:var(--neg);font-size:.8rem;animation:fade .2s var(--ease) both}@keyframes rise{0%{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}@keyframes pop{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:none}}@keyframes fade{0%{opacity:0}to{opacity:1}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;transition-duration:.01ms!important}}@media (max-width:420px){.container{padding-top:calc(24px + env(safe-area-inset-top))}.card,.hero{padding:20px 18px}.input.amount{flex-basis:112px}.item-sub{white-space:normal}.transfer .avatar{display:none}.balance{grid-template-columns:minmax(0,1.4fr) minmax(48px,.8fr) auto;gap:10px}.balance-amt{min-width:0}}