:root,[data-theme=light]{--bg:#f7f7f2;--surface:#fff;--tint:#e7e9dc;--chip:#eceee3;--line:#e2e3d8;--ink:#25271f;--muted:#64665b;--accent:#606b45;--on-accent:#fff;--accent-ink:#4f5938;--pos:#4f5938;--neg:#9e4e2b;--danger-bg:#f6e6de;--shadow:0 1px 2px #25271f0d, 0 12px 32px #25271f12;--shadow-control:0 1px 2px #0000001a;--scrim:#25271f52;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}[data-theme=dark]{--bg:#121310;--surface:#1c1e17;--tint:#23271c;--chip:#272b20;--line:#2c2f25;--ink:#ecede4;--muted:#a2a495;--accent:#9aa575;--on-accent:#121310;--accent-ink:#bac395;--pos:#bac395;--neg:#e59c79;--danger-bg:#3a2419;--shadow:0 0 0 1px #2c2f25;--shadow-control:0 1px 2px #0006;--scrim:#0000008c;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}:root{--fd:-apple-system, BlinkMacSystemFont, "SF Pro Display", Inter, "Helvetica Neue", Arial, sans-serif;--ft:-apple-system, BlinkMacSystemFont, "SF Pro Text", Inter, "Helvetica Neue", Arial, sans-serif;--r-md:14px;--r-lg:24px;--r-xl:28px;--pill:999px}*{box-sizing:border-box}html,body{background:var(--bg);color:var(--ink);margin:0}body{font:400 16px/1.4 var(--ft);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}h1,h2,h3,p{margin:0}a{color:inherit}button,input,select,textarea{font:inherit;color:inherit}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:8px}.num{font-variant-numeric:tabular-nums}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.shell{min-height:100dvh;display:flex}.sidebar{display:none}.main{min-width:0;padding:0 16px calc(104px + env(safe-area-inset-bottom));flex:1}.page{max-width:1120px;padding-top:max(16px, env(safe-area-inset-top));flex-direction:column;gap:20px;margin:0 auto;display:flex}.page.narrow{max-width:560px}.main.task{padding-bottom:calc(32px + env(safe-area-inset-bottom))}.tabbar{left:16px;right:16px;bottom:calc(16px + env(safe-area-inset-bottom));z-index:20;border-radius:var(--pill);background:var(--surface);box-shadow:var(--shadow);justify-content:space-around;max-width:480px;margin:0 auto;padding:6px 8px;display:flex;position:fixed}.tab{border-radius:var(--pill);min-width:64px;min-height:48px;color:var(--muted);flex-direction:column;justify-content:center;align-items:center;gap:3px;padding:4px 8px;font-size:11px;font-weight:500;text-decoration:none;display:flex}.tab.active{background:var(--chip);color:var(--accent-ink);font-weight:600}.grid-2{align-items:start;gap:20px;display:grid}.stack{flex-direction:column;gap:20px;display:flex}@media (min-width:1024px){.sidebar{border-right:1px solid var(--line);flex-direction:column;flex:none;gap:28px;width:256px;height:100dvh;padding:28px 16px;display:flex;position:sticky;top:0;overflow-y:auto}.tabbar{display:none}.main{padding:0 40px 48px}.page{gap:28px;padding-top:32px}.grid-2{grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.only-mobile{display:none!important}}@media (max-width:1023px){.only-desktop{display:none!important}}.brand{font:600 18px/1.2 var(--fd);letter-spacing:-.01em;padding:0 12px;text-decoration:none}.nav{flex-direction:column;gap:4px;display:flex}.nav a{border-radius:var(--pill);align-items:center;gap:12px;min-height:44px;padding:0 12px;font-size:15px;font-weight:500;text-decoration:none;display:flex}.nav a.active{background:var(--chip);color:var(--accent-ink);font-weight:600}.nav a:hover:not(.active){background:var(--chip)}.nav-label{color:var(--muted);padding:0 12px 6px;font-size:13px;font-weight:600}.topbar{justify-content:space-between;align-items:center;gap:12px;min-height:44px;display:flex}.title{font:600 24px/30px var(--fd);letter-spacing:-.02em}@media (min-width:1024px){.title{font-size:30px;line-height:36px}}.eyebrow{color:var(--muted);font-size:13px;font-weight:500}.section-title{font:600 17px/22px var(--fd);letter-spacing:-.01em;margin:0 0 10px 4px}.section-head{justify-content:space-between;align-items:baseline;gap:12px;display:flex}.section-head .section-title{margin-bottom:10px}.back{border-radius:var(--pill);min-height:44px;color:var(--muted);cursor:pointer;background:0 0;border:0;align-items:center;gap:4px;margin-left:-8px;padding:0 8px;font-size:15px;font-weight:500;text-decoration:none;display:inline-flex}.muted{color:var(--muted)}.small{font-size:13px}.hero{border-radius:var(--r-xl);background:var(--tint);flex-direction:column;gap:18px;padding:22px 20px;display:flex}.hero-figure{flex-direction:column;gap:8px;display:flex}.hero-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}@media (min-width:1024px){.hero{flex-flow:wrap;justify-content:space-between;align-items:flex-end;padding:32px}.hero .amount-xl{font-size:56px}.hero-actions{display:flex}}[data-theme=dark] .btn-secondary{border-color:#3a3f31}.amount-xl{font:600 44px/1.05 var(--fd);letter-spacing:-.03em;font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.card{background:var(--surface);border-radius:var(--r-lg);box-shadow:var(--shadow);padding:0 18px}.card.pad{padding:20px}.row{border-bottom:1px solid var(--line);min-height:64px;color:inherit;text-align:left;background:0 0;border-top:0;border-left:0;border-right:0;align-items:center;gap:12px;width:100%;padding:12px 0;text-decoration:none;display:flex}.row:last-child{border-bottom:0}a.row,button.row{cursor:pointer}.row-main{flex:1;min-width:0}.row-title{text-overflow:ellipsis;font-size:16px;font-weight:500;overflow:hidden}.row-meta{color:var(--muted);font-variant-numeric:tabular-nums;margin-top:2px;font-size:13px}.row-end{text-align:right;flex:none}.amount{font-variant-numeric:tabular-nums;white-space:nowrap;font-size:16px;font-weight:600}.pos{color:var(--pos)}.neg{color:var(--neg)}.avatar{border-radius:var(--pill);background:var(--chip);width:40px;height:40px;color:var(--accent-ink);text-transform:uppercase;flex:none;justify-content:center;align-items:center;font-size:14px;font-weight:600;display:inline-flex}.avatar.me{background:var(--accent);color:var(--on-accent)}.avatar.sq{border-radius:var(--r-md);font-size:13px}.avatar.sm{border-radius:10px;width:28px;height:28px;font-size:11px}.date-tile{flex-direction:column;line-height:1}.date-tile b{font-size:15px}.date-tile span{letter-spacing:.06em;margin-top:2px;font-size:9px}.pill{border-radius:var(--pill);background:var(--surface);color:var(--accent-ink);font-variant-numeric:tabular-nums;align-self:flex-start;align-items:center;gap:6px;padding:6px 12px;font-size:13px;font-weight:600;display:inline-flex}.pill.quiet{background:var(--chip)}.badge{border-radius:var(--pill);background:var(--chip);color:var(--accent-ink);padding:2px 8px;font-size:11px;font-weight:600}.btn{border-radius:var(--pill);cursor:pointer;white-space:nowrap;border:1px solid #0000;justify-content:center;align-items:center;gap:8px;height:48px;padding:0 20px;font-size:15px;font-weight:600;text-decoration:none;transition:transform 80ms,opacity .15s;display:inline-flex}.btn:active{transform:scale(.98)}.btn:disabled{opacity:.5;cursor:not-allowed;transform:none}.btn-primary{background:var(--accent);color:var(--on-accent)}.btn-secondary{background:var(--surface);color:var(--ink)}.btn-outline{color:var(--ink);border-color:var(--line);background:0 0}.btn-danger{background:var(--danger-bg);color:var(--neg)}.btn-text{color:var(--accent-ink);background:0 0;height:44px;padding:0 8px}.btn-sm{height:36px;padding:0 14px;font-size:14px}.btn-block{width:100%;height:52px;font-size:16px}.icon-btn{border-radius:var(--pill);width:44px;height:44px;color:var(--ink);cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;display:inline-flex}.form{flex-direction:column;gap:16px;display:flex}.field{flex-direction:column;gap:6px;display:flex}.label{color:var(--muted);font-size:13px;font-weight:600}.input,.select,.textarea{border:1px solid var(--line);background:var(--surface);width:100%;min-height:48px;color:var(--ink);border-radius:16px;outline:none;padding:0 14px;font-size:16px}.textarea{resize:vertical;min-height:88px;padding:12px 14px}.input:focus,.select:focus,.textarea:focus{border-color:var(--accent);box-shadow:0 0 0 3px color-mix(in srgb, var(--accent) 22%, transparent)}.input-amount{width:100%;font:600 44px/1.1 var(--fd);letter-spacing:-.03em;font-variant-numeric:tabular-nums;color:var(--ink);background:0 0;border:0;outline:none;padding:0}.input-amount::placeholder{color:var(--muted);opacity:.6}.hint{color:var(--muted);font-size:13px}.error-text{color:var(--neg);font-size:13px;font-weight:500}.check-row{border-bottom:1px solid var(--line);align-items:center;gap:12px;min-height:56px;padding:8px 0;display:flex}.check-row:last-child{border-bottom:0}.check-row input[type=checkbox]{width:22px;height:22px;accent-color:var(--accent);flex:none}.share-input{text-align:right;font-variant-numeric:tabular-nums;width:104px;min-height:40px}.seg{grid-template-columns:repeat(var(--n,4), minmax(0, 1fr));border-radius:var(--pill);background:var(--chip);gap:4px;padding:4px;display:grid}.seg button{border-radius:var(--pill);height:36px;color:var(--muted);cursor:pointer;background:0 0;border:0;font-size:14px;font-weight:500}.seg button[aria-pressed=true]{background:var(--surface);color:var(--ink);box-shadow:var(--shadow-control);font-weight:600}.chips{flex-wrap:wrap;gap:8px;display:flex}.chip{border-radius:var(--pill);border:1px solid var(--line);background:var(--surface);height:36px;color:var(--ink);cursor:pointer;padding:0 14px;font-size:14px;font-weight:500}.chip[aria-pressed=true]{background:var(--accent);border-color:var(--accent);color:var(--on-accent)}.notice{background:var(--chip);border-radius:16px;padding:14px 16px;font-size:14px;line-height:1.45}.notice.error{background:var(--danger-bg);color:var(--neg);font-weight:500}.empty{text-align:center;color:var(--muted);padding:28px 16px;font-size:15px;line-height:1.5}.empty strong{color:var(--ink);margin-bottom:4px;font-size:16px;display:block}.toast{left:50%;bottom:calc(100px + env(safe-area-inset-bottom));z-index:50;border-radius:var(--pill);background:var(--ink);color:var(--bg);max-width:calc(100vw - 32px);padding:12px 18px;font-size:14px;font-weight:500;position:fixed;transform:translate(-50%);box-shadow:0 8px 24px #0000002e}@media (min-width:1024px){.toast{bottom:32px}}.skeleton{border-radius:var(--r-lg);background:var(--chip);animation:1.2s ease-in-out infinite pulse}@keyframes pulse{50%{opacity:.55}}.spinner{border:2.5px solid var(--line);border-top-color:var(--accent);border-radius:50%;width:22px;height:22px;animation:.8s linear infinite spin}@keyframes spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.skeleton,.spinner{animation:none}.btn{transition:none}}.sheet-backdrop{background:var(--scrim);z-index:40;justify-content:center;align-items:flex-end;display:flex;position:fixed;inset:0}.sheet{background:var(--bg);border-radius:var(--r-xl) var(--r-xl) 0 0;width:100%;max-width:520px;max-height:90dvh;padding:20px 20px calc(24px + env(safe-area-inset-bottom));flex-direction:column;gap:16px;display:flex;overflow-y:auto}@media (min-width:640px){.sheet-backdrop{align-items:center}.sheet{border-radius:var(--r-xl)}}.auth{justify-content:center;align-items:center;min-height:100dvh;padding:24px 16px;display:flex}.auth-card{flex-direction:column;gap:20px;width:100%;max-width:420px;display:flex}.auth-logo{border-radius:16px;width:56px;height:56px}.bar{border-radius:var(--pill);background:var(--chip);height:10px;overflow:hidden}.bar>span{border-radius:var(--pill);background:var(--accent);height:100%;display:block}
