:root{--bg:#f2f2f7;--card:#fff;--card-2:#f2f2f7;--text:#000;--text-2:#3c3c4399;--text-3:#3c3c434d;--sep:#3c3c432e;--fill:#7878801f;--accent:#007aff;--green:#34c759;--red:#ff3b30;--orange:#ff9500;--bar:#f9f9f9c7;--scrim:#00000052;--shadow:0 10px 30px #0000001f;--radius:14px;--ease-out:cubic-bezier(.23, 1, .32, 1);--ease-sheet:cubic-bezier(.32, .72, 0, 1);--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light}@media (prefers-color-scheme:dark){:root{--bg:#000;--card:#1c1c1e;--card-2:#2c2c2e;--text:#fff;--text-2:#ebebf599;--text-3:#ebebf54d;--sep:#54545899;--fill:#7878803d;--accent:#0a84ff;--green:#30d158;--red:#ff453a;--orange:#ff9f0a;--bar:#161618c7;--scrim:#00000080;--lightningcss-light: ;--lightningcss-dark:initial;color-scheme:dark}}*{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{background:var(--bg);color:var(--text);margin:0;padding:0}body{-webkit-font-smoothing:antialiased;overscroll-behavior-y:none;min-height:100dvh;font:17px/1.35 -apple-system,BlinkMacSystemFont,SF Pro Text,system-ui,Segoe UI,Roboto,sans-serif}button,input,textarea,select{font:inherit;color:inherit}button{cursor:pointer;background:0 0;border:0;padding:0}input,textarea{background:0 0;border:0;outline:none;width:100%}input::placeholder,textarea::placeholder{color:var(--text-3)}input,textarea,select{font-size:max(16px,1em)}.app{max-width:560px;min-height:100dvh;padding-bottom:calc(96px + env(safe-area-inset-bottom));margin:0 auto}.page{padding:calc(12px + env(safe-area-inset-top)) 16px 24px}.topbar{justify-content:space-between;align-items:center;gap:8px;min-height:44px;display:flex}.large-title{letter-spacing:-.02em;margin:4px 0 16px;font-size:34px;font-weight:700;line-height:1.1}.icon-btn{background:var(--card);width:40px;height:40px;color:var(--accent);border-radius:50%;place-items:center;display:grid;box-shadow:0 1px 2px #0000000f}.section{margin:0 0 28px}.section-header{color:var(--text-2);text-transform:uppercase;letter-spacing:.02em;justify-content:space-between;align-items:baseline;margin:0 16px 6px;font-size:13px;display:flex}.section-footer{color:var(--text-2);margin:6px 16px 0;font-size:13px;line-height:1.35}.group{background:var(--card);border-radius:var(--radius);overflow:hidden}.row{text-align:left;align-items:center;gap:12px;width:100%;min-height:48px;padding:11px 16px;display:flex;position:relative}.row+.row:before{content:"";top:0;right:0;left:var(--inset,16px);background:var(--sep);height:.5px;position:absolute}.row.tappable{transition:background-color .12s var(--ease-out)}.row.tappable:active{background:var(--fill)}.row .grow{flex:1;min-width:0}.row .title{text-overflow:ellipsis;white-space:nowrap;font-weight:500;overflow:hidden}.row .title.wrap{white-space:normal;-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box}.row .sub{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;font-size:15px;overflow:hidden}.row .chev{color:var(--text-3);flex:none}.row input,.row textarea{padding:0}.row label{flex:none}.money{font-variant-numeric:tabular-nums;white-space:nowrap;font-weight:600}.pos{color:var(--green)}.neg{color:var(--red)}.muted{color:var(--text-2)}.danger{color:var(--red)}.accent{color:var(--accent)}.hero{text-align:center;margin:8px 0 24px}.hero .label{color:var(--text-2);font-size:15px}.hero .value{letter-spacing:-.02em;font-variant-numeric:tabular-nums;white-space:nowrap;font:700 clamp(40px,12vw,56px)/1.1 ui-rounded,SF Pro Rounded,-apple-system,system-ui,sans-serif}.cards{grid-template-columns:1fr 1fr;gap:12px;margin-bottom:24px;display:grid}.card{background:var(--card);border-radius:16px;min-width:0;padding:16px}.card .k{color:var(--text-2);margin-top:8px;font-size:15px}.card .v{font-variant-numeric:tabular-nums;white-space:nowrap;text-overflow:ellipsis;font-size:22px;font-weight:700;overflow:hidden}.bars{gap:10px;display:grid}.bar-row{grid-template-columns:72px 1fr;align-items:center;gap:8px;font-size:13px;display:grid}.bar-row .name{color:var(--text-2);text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.bar-track{height:22px;position:relative}.bar-track:before{content:"";background:var(--sep);width:1px;position:absolute;top:0;bottom:0;left:50%}.bar{height:16px;transition:width .4s var(--ease-out), left .4s var(--ease-out);border-radius:6px;position:absolute;top:3px}.avatar{color:#fff;-webkit-user-select:none;user-select:none;background-position:50%;background-size:cover;border-radius:50%;flex:none;place-items:center;font-family:ui-rounded,SF Pro Rounded,-apple-system,system-ui,sans-serif;font-weight:600;display:grid;overflow:hidden}.btn{background:var(--accent);color:#fff;width:100%;min-height:50px;transition:transform .16s var(--ease-out), opacity .16s var(--ease-out);border-radius:14px;justify-content:center;align-items:center;gap:8px;padding:0 20px;font-weight:600;display:inline-flex}.btn.secondary{background:var(--card);color:var(--accent)}.btn:disabled{opacity:.45;cursor:default}.press{transition:transform .16s var(--ease-out)}.press:active:not(:disabled),.btn:active:not(:disabled){transform:scale(.97)}.link{color:var(--accent);font-weight:500}.tiles{grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:24px;display:grid}.tile{background:var(--card);color:var(--accent);border-radius:12px;justify-items:center;gap:4px;padding:12px 6px;font-size:12px;font-weight:500;display:grid}.tile:disabled{color:var(--text-3)}.tile svg{width:22px;height:22px}.segmented{background:var(--fill);border-radius:9px;grid-auto-columns:1fr;grid-auto-flow:column;padding:2px;display:grid;position:relative}.segmented button{z-index:1;border-radius:7px;padding:6px 4px;font-size:14px;font-weight:500;transition:color .2s;position:relative}.segmented .thumb{background:var(--card);transition:left .26s var(--ease-out), width .26s var(--ease-out);border-radius:7px;position:absolute;top:2px;bottom:2px;box-shadow:0 3px 8px #0000001f,0 3px 1px #0000000a}@media (prefers-color-scheme:dark){.segmented .thumb{background:#636366}}.switch{flex:none;width:51px;height:31px;position:relative}.switch input{opacity:0;cursor:pointer;z-index:1;margin:0;position:absolute;inset:0}.switch span{background:var(--fill);border-radius:99px;transition:background-color .2s;position:absolute;inset:0}.switch span:after{content:"";width:27px;height:27px;transition:transform .24s var(--ease-out);background:#fff;border-radius:50%;position:absolute;top:2px;left:2px;box-shadow:0 3px 8px #00000026}.switch input:checked+span{background:var(--green)}.switch input:checked+span:after{transform:translate(20px)}.switch input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}.amount-input{justify-content:center;align-items:baseline;gap:4px;margin:12px 0 4px;display:flex}.amount-input input{text-align:right;font-variant-numeric:tabular-nums;field-sizing:content;width:auto;min-width:1ch;max-width:70vw;font:700 56px/1.1 ui-rounded,SF Pro Rounded,-apple-system,system-ui,sans-serif}.amount-input .cur{color:var(--text-2);font:600 40px/1 ui-rounded,-apple-system,system-ui,sans-serif}.tabbar{left:50%;bottom:calc(10px + env(safe-area-inset-bottom));background:var(--bar);-webkit-backdrop-filter:blur(20px)saturate(180%);width:min(520px,100% - 24px);box-shadow:var(--shadow);z-index:20;border:.5px solid var(--sep);border-radius:28px;grid-auto-columns:minmax(0,1fr);grid-auto-flow:column;padding:6px;display:grid;position:fixed;transform:translate(-50%)}.tabbar button{white-space:nowrap;letter-spacing:-.01em;min-width:0;color:var(--text);border-radius:22px;justify-items:center;gap:2px;padding:6px 0;font-size:10.5px;font-weight:500;transition:background-color .2s,color .2s;display:grid}.tabbar button svg{width:24px;height:24px}.tabbar button[aria-current=page]{color:var(--accent);background:var(--fill)}.scrim{background:var(--scrim);z-index:40;animation:fade-in .24s var(--ease-out);position:fixed;inset:0}.sheet{width:min(560px,100%);max-height:calc(100dvh - 24px - env(safe-area-inset-top));background:var(--bg);z-index:41;animation:sheet-in .42s var(--ease-sheet);padding-bottom:env(safe-area-inset-bottom);border-radius:16px 16px 0 0;flex-direction:column;display:flex;position:fixed;bottom:0;left:50%;transform:translate(-50%)}.sheet.closing{animation:sheet-out .24s var(--ease-out) forwards}.scrim.closing{animation:fade-out .24s var(--ease-out) forwards}.sheet-head{grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;padding:14px 16px 8px;display:grid}.sheet-head .t{text-align:center;white-space:nowrap;text-overflow:ellipsis;font-weight:600;overflow:hidden}.sheet-head .r{color:var(--accent);justify-self:end;font-weight:600}.sheet-head .l{color:var(--accent);justify-self:start}.sheet-head button:disabled{color:var(--text-3)}.sheet-body{overscroll-behavior:contain;padding:8px 16px 24px;overflow-y:auto}.grabber{background:var(--text-3);border-radius:3px;width:36px;height:5px;margin:6px auto 0}@keyframes sheet-in{0%{transform:translate(-50%,100%)}to{transform:translate(-50%)}}@keyframes sheet-out{0%{transform:translate(-50%)}to{transform:translate(-50%,100%)}}@keyframes fade-in{0%{opacity:0}to{opacity:1}}@keyframes fade-out{0%{opacity:1}to{opacity:0}}.menu{background:var(--card);min-width:230px;box-shadow:var(--shadow);z-index:30;transform-origin:100% 0;animation:menu-in .2s var(--ease-out);border-radius:14px;position:absolute;top:48px;right:0;overflow:hidden}.menu button{text-align:left;justify-content:space-between;align-items:center;gap:16px;width:100%;padding:12px 16px;display:flex}.menu button+button{border-top:.5px solid var(--sep)}.menu button:active{background:var(--fill)}@keyframes menu-in{0%{opacity:0;transform:scale(.96)}to{opacity:1;transform:scale(1)}}.toast{left:50%;top:calc(12px + env(safe-area-inset-top));background:var(--card);color:var(--text);box-shadow:var(--shadow);z-index:60;animation:toast-in .3s var(--ease-out);border-radius:99px;max-width:calc(100% - 32px);padding:10px 16px;font-size:15px;position:fixed;transform:translate(-50%)}@keyframes toast-in{0%{opacity:0;transform:translate(-50%,-8px)}to{opacity:1;transform:translate(-50%)}}.error{color:var(--red);align-items:flex-start;gap:6px;font-size:15px;display:flex}.empty{text-align:center;color:var(--text-2);justify-items:center;gap:8px;padding:48px 24px;display:grid}.empty svg{width:48px;height:48px;color:var(--text-3)}.empty h3{color:var(--text);margin:4px 0 0;font-size:20px}.spinner{border:2.5px solid;border-right-color:#0000;border-radius:50%;width:20px;height:20px;animation:.7s linear infinite spin;display:inline-block}@keyframes spin{to{transform:rotate(360deg)}}.crop{z-index:70;color:#fff;touch-action:none;background:#000;flex-direction:column;animation:.2s fade-in;display:flex;position:fixed;inset:0}.crop-stage{cursor:grab;flex:1;position:relative;overflow:hidden}.crop-stage:active{cursor:grabbing}.crop-stage img{-webkit-user-select:none;user-select:none;-webkit-user-drag:none;will-change:transform;max-width:none;position:absolute;top:50%;left:50%}.crop-mask{pointer-events:none;position:absolute;inset:0}.crop-bar{padding:16px 24px calc(16px + env(safe-area-inset-bottom));justify-content:space-between;align-items:center;gap:16px;display:flex}.crop-bar input[type=range]{accent-color:#fff;flex:1}@media (prefers-reduced-motion:reduce){*,:before,:after{transition-duration:1ms!important;animation-duration:1ms!important}.sheet{animation:.2s fade-in!important}}@media (hover:hover) and (pointer:fine){.row.tappable:hover,.menu button:hover{background:var(--fill)}}.sr-only{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.legal-body{font-size:16px;line-height:1.55}.legal-body h2{letter-spacing:-.01em;margin:28px 0 8px;font-size:20px}.legal-body h3{margin:20px 0 4px;font-size:17px}.legal-body p,.legal-body ul{color:var(--text);margin:0 0 12px}.legal-body ul{padding-left:20px}.legal-body li{margin-bottom:6px}.legal .app,.legal{padding-bottom:48px}a.link{text-decoration:none}
