:root{--canvas:#f3f2ee;--surface:#fbfaf7;--line:#e0ded7;--ink:#14161c;--muted:#5c5f68;--faint:#8a8c93;--accent:#9c7a43;--accent-ink:#14161c;--accent-text:#7d6033;--gain:#2c6a4d;--gain-tint:#e5eee8;--owe:#97562a;--owe-tint:#f3e7dd;--error:#b3261e;--header:#14161c;--header-ink:#f3f2ee;--header-muted:#a3a5ad;--header-line:transparent;--float-shadow:0 6px 16px #14161c29;--glass:#fbfaf7b8;--glass-line:#ffffff8c;--glass-shadow:0 8px 24px #14161c1f;--radius:14px;--radius-field:10px;--tap:48px;--ease:.16s ease-out;--buncss-light:initial;--buncss-dark: ;color-scheme:light;font-variant-numeric:tabular-nums;-webkit-text-size-adjust:100%;font-family:Instrument Sans,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Noto Sans,Ubuntu,Cantarell,Helvetica Neue,sans-serif}:root[data-theme=dark]{--canvas:#0d0e12;--surface:#16181d;--line:#2a2c33;--ink:#ecebe6;--muted:#a2a4ab;--faint:#74767e;--accent:#c9a46a;--accent-text:#d4b27c;--gain:#74b894;--gain-tint:#15241c;--owe:#d9925f;--owe-tint:#2a1d14;--error:#f2867a;--header:#1c1e24;--header-ink:#ecebe6;--header-muted:#8d9097;--header-line:#2a2c33;--float-shadow:0 6px 16px #00000080;--glass:#1c1e24a8;--glass-line:#ffffff14;--glass-shadow:0 8px 24px #00000073;--buncss-light: ;--buncss-dark:initial;color-scheme:dark}*{box-sizing:border-box}body{background:var(--canvas);color:var(--ink);margin:0;font-size:16px;line-height:1.4}h1,h2{margin:0}button,input,select,textarea{font:inherit;color:inherit}a{color:inherit;text-decoration:none}.screen{display:flex;flex-direction:column;min-height:100dvh}.screen.with-tabs{padding-bottom:calc(96px + env(safe-area-inset-bottom))}.screen.centered{justify-content:center}.screen:before{content:"";position:fixed;z-index:5;height:env(safe-area-inset-top);background:var(--header);inset:0 0 auto}.content{width:100%;max-width:640px;margin:0 auto;padding:16px 16px 24px}.content.with-fab{padding-bottom:80px}.content.page{padding-top:calc(64px + env(safe-area-inset-top))}.card{background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);margin:0 0 16px;padding:16px}.section-title{letter-spacing:.07em;text-transform:uppercase;color:var(--muted);margin:24px 4px 8px;font-size:12px;font-weight:600}.list{list-style:none;background:var(--surface);border:1px solid var(--line);border-radius:var(--radius);overflow:hidden;margin:0;padding:0}.list:empty{display:none}.list>li+li{border-top:1px solid var(--line)}.row{display:flex;align-items: center;gap:12px;min-height:60px;padding:10px 14px}.ledger-row{display:grid;grid-template-columns:64px 1fr auto;align-items: start;gap:10px}.when{display:flex;color:var(--muted);flex-direction:column;font-size:14px;font-weight:500;line-height:1.3}.row.pending{background:repeating-linear-gradient(135deg,transparent 0 7px,color-mix(in srgb,var(--line)55%,transparent)7px 8px)}.row-main{display:flex;flex-direction:column;flex:1;min-width:0}.row-title{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-weight:600}.row-sub,.muted{color:var(--muted);font-size:14px;font-weight:500}.row-end{display:flex;text-align:right;flex-direction:column;align-items: flex-end;gap:4px}.ledger-row .row-end{gap:0}.amount{white-space:nowrap;font-weight:600}.gain{color:var(--gain)}.owe{color:var(--owe)}.row.pending .amount{color:var(--muted)}.avatar{display:inline-grid;background:color-mix(in srgb,currentColor 10%,transparent);border-radius:50%;flex:none;place-items: center;width:32px;height:32px;font-size:14px;font-weight:600}.empty{text-align:center;color:var(--muted);padding:24px 8px}.fab{position:fixed;right:max(16px,env(safe-area-inset-right));bottom:calc(92px + env(safe-area-inset-bottom));z-index:3;display:grid;background:var(--accent);color:var(--accent-ink);box-shadow:var(--float-shadow);border:0;border-radius:50%;place-items: center;width:56px;height:56px;padding:0}.tabbar{position:fixed;left:50%;bottom:calc(12px + env(safe-area-inset-bottom));z-index:3;display:grid;grid-template-columns:repeat(2,1fr);border-radius:999px;gap:4px;width:min(360px,100% - 32px);padding:6px;transform:translate(-50%)}.tabbar a{display:grid;color:var(--muted);border-radius:999px;justify-items:center;gap:2px;padding:8px 0;font-size:12px;font-weight:500}.tabbar a.active{background:var(--surface);color:var(--ink);font-weight:600}button{min-height:var(--tap);border:1px solid var(--line);background:var(--canvas);transition:filter var(--ease);border-radius:999px;padding:0 18px;font-weight:600}button:active:not(:disabled){filter:brightness(.92)}button.primary{border-color:var(--accent);background:var(--accent);color:var(--accent-ink);border-radius:12px}button.danger,.link-button.danger{color:var(--error)}button:disabled{color:var(--faint)}button.primary:disabled{border-color:var(--line);background:var(--line)}button.small{min-height:36px;padding:0 14px}.link-button{background:0 0;border:0;min-height:36px;padding:0 6px}.problem:before{content:"";display:inline-block;background:var(--error);border-radius:50%;width:8px;height:8px;margin-right:8px}.actions{position:sticky;display:flex;padding:12px 16px calc(12px + env(safe-area-inset-bottom));background:linear-gradient(transparent,var(--canvas)30%);gap:8px;bottom:0}.actions.above-tabs{bottom:calc(57px + env(safe-area-inset-bottom))}.actions>button{flex:1}.field{display:flex;flex-direction:column;gap:6px;margin:0 0 20px}.field>span{color:var(--muted);text-transform:uppercase;letter-spacing:.07em;font-size:12px;font-weight:600}input,select,textarea{min-height:var(--tap);border:1px solid var(--line);border-radius:var(--radius-field);background:var(--canvas);width:100%;padding:10px 12px}input::placeholder,textarea::placeholder{color:var(--faint)}input:focus,select:focus,textarea:focus{outline:none;border-color:var(--accent-text);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent)28%,transparent)}button:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px}a:focus-visible{outline:2px solid var(--accent-text);outline-offset:2px}.amount-input{display:grid;grid-template-columns:96px 1fr;gap:8px}.per-member{display:grid;grid-template-columns:1fr 120px;align-items: center;gap:8px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{display:inline-flex;align-items: center;gap:8px;padding:0 14px 0 6px;font-weight:500}.chip.selected{border-color:var(--ink);background:var(--ink);color:var(--surface)}.segmented{display:flex;border:1px solid var(--line);border-radius:var(--radius-field);background:var(--canvas);gap:3px;padding:3px}.segmented button{color:var(--muted);background:0 0;border:0;border-radius:7px;flex:1;min-height:40px;padding:0 8px;font-size:14px;font-weight:500}.segmented button.active{background:var(--surface);color:var(--ink);font-weight:600;box-shadow:0 1px 2px #0000001f}.detail-card{text-align:center}.detail-amount{letter-spacing:-.02em;font-size:28px;font-weight:600;line-height:1.15}.row.static{min-height:52px}.button-row{display:flex;gap:8px;margin-top:12px}.button-row button{flex:1}.join{display:grid;text-align:center;gap:16px}.join p{margin:0}.join .field{text-align:left;margin:0}.join form{display:grid;gap:12px}.app-icon{border-radius:15px;justify-self:center;width:64px;height:64px}.brand{letter-spacing:-.01em;font-size:20px;font-weight:600}.code-boxes{position:relative;display:grid;grid-template-columns:repeat(6,1fr);gap:8px}.code-input,.code-input:focus{position:absolute;z-index:1;color:#0000;caret-color:transparent;box-shadow:none;background:0 0;border:0;height:100%;min-height:0;padding:0;inset:0}.code-input::selection{background:0 0}.code-box{display:grid;border:1px solid var(--line);border-radius:var(--radius-field);background:var(--canvas);place-items: center;height:56px;font-size:28px;font-weight:600}.code-input:focus~.code-box.next{border-color:var(--accent-text);box-shadow:0 0 0 3px color-mix(in srgb,var(--accent)28%,transparent)}.google-button{display:inline-flex;justify-content:center;align-items: center;gap:10px}.wide{width:100%}.member-row,.member-form{display:grid;grid-template-columns:1fr 1.4fr;gap:8px}.member-form{margin-top:12px}.member-form button{grid-column:1/-1}.row-button{text-align:left;font-weight:inherit;background:0 0;border:0;border-radius:0;width:100%}.file-button{display:grid;min-height:var(--tap);border:1px dashed var(--line);border-radius:var(--radius-field);background:var(--surface);place-items: center;font-weight:600}.file-button input{display:none}.icon{fill:none;stroke:currentColor;stroke-width:2;stroke-linecap:round;stroke-linejoin:round;flex:none;width:22px;height:22px}.fab .icon{stroke-width:2.4;width:26px;height:26px}.glass-button,.tabbar,.summary{border:1px solid var(--glass-line);background:var(--glass);box-shadow:var(--glass-shadow);-webkit-backdrop-filter:blur(20px)saturate(180%);backdrop-filter:blur(20px)saturate(180%)}@supports  not ((backdrop-filter: blur(1px)) or (-webkit-backdrop-filter: blur(1px))){.glass-button,.tabbar,.summary{background:var(--surface)}}.top-buttons{position:fixed;z-index:4;display:flex;padding:calc(8px + env(safe-area-inset-top))max(16px,env(safe-area-inset-right))0 max(16px,env(safe-area-inset-left));pointer-events:none;justify-content:space-between;inset:0 0 auto}.top-buttons>span{pointer-events:auto}.glass-button{display:grid;color:var(--ink);border-radius:50%;place-items: center;width:44px;height:44px;min-height:44px;padding:0}.glass-button.ready{border-color:var(--accent);background:var(--accent);color:var(--accent-ink)}.hero{padding:calc(64px + env(safe-area-inset-top))max(16px,env(safe-area-inset-right))20px max(16px,env(safe-area-inset-left));border-bottom:1px solid var(--header-line);background:var(--header);color:var(--header-ink)}.hero h1{letter-spacing:-.02em;overflow-wrap:anywhere;font-size:40px;font-weight:600;line-height:1.15}.hero-chips{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.chip-glass{display:inline-flex;color:var(--header-ink);background:#ffffff14;border:1px solid #ffffff29;border-radius:999px;align-items: center;gap:6px;min-height:32px;padding:0 12px;font-size:14px;font-weight:500}.chip-glass .icon,.chip-toggle .icon{width:16px;height:16px}.page-title{letter-spacing:-.02em;margin:0 4px 16px;font-size:28px;font-weight:600;line-height:1.15}.summary{position:sticky;top:calc(60px + env(safe-area-inset-top));z-index:2;display:grid;border-radius:var(--radius);gap:4px;margin:0 0 16px;padding:14px 16px}.summary-total{margin:0 0 4px;font-size:20px;font-weight:600}.summary-line{display:grid;color:var(--muted);text-align:left;background:0 0;border:0;border-radius:0;justify-items:start;gap:2px;min-height:32px;padding:2px 0;font-weight:500}.summary-chips,.chip-row{display:flex;flex-wrap:wrap;gap:8px}.summary-chips{margin-top:8px}.chip-toggle{display:inline-flex;border:1px solid var(--line);background:var(--canvas);color:var(--ink);border-radius:999px;align-items: center;gap:6px;min-height:36px;padding:0 14px;font-size:14px;font-weight:600}.pending-section{display:grid;gap:8px;margin:0 0 16px}.pending-toggle{display:flex;border-radius:var(--radius);background:var(--surface);justify-content:space-between;align-items: center;width:100%}.pending-toggle[aria-expanded=true] .icon{transform:rotate(180deg)}.attention{display:inline-grid;background:var(--owe);color:var(--surface);border-radius:50%;place-items: center;width:20px;height:20px;margin-left:8px;font-size:13px;font-weight:700}.title-field,.amount-field{border:0;border-bottom:1px solid var(--line);background:0 0;border-radius:0;font-weight:600}.title-field{min-height:56px;padding:8px 4px;font-size:22px}.amount-field{letter-spacing:-.02em;min-height:64px;padding:4px;font-size:40px}.title-field:focus,.amount-field:focus{border-bottom-color:var(--accent-text);box-shadow:none}.amount-row{display:grid;grid-template-columns:auto 1fr;align-items: center;gap:12px;margin:16px 0 20px}.amount-row .currency-select{border-radius:999px;width:auto;min-width:96px;font-weight:600}.chip-row{margin:0 0 24px}.sentence{margin:0 0 20px;font-size:18px;line-height:2.6}.chip-select{border:1px solid var(--line);background:var(--surface);color:var(--ink);text-decoration:underline;text-decoration-color:var(--accent);text-underline-offset:4px;border-radius:12px;width:auto;min-height:40px;padding:0 14px;font-weight:600}.date-range{display:grid;grid-template-columns:1fr 1fr;gap:8px}.date-range input{min-width:0}main>.segmented{margin:0 0 20px}@media (prefers-reduced-motion:reduce){button{transition:none}}
