:root{--bg: #EEF1F5;--frame: #E1E5EC;--surface: #FFFFFF;--surface-2: #F5F7FA;--ink: #121826;--muted: #586174;--line: #DCE1E8;--accent: #3346D3;--accent-hover: #2837B8;--accent-ink: #FFFFFF;--accent-soft: #E6E9FB;--earned: #047857;--earned-soft: #E3F4EC;--warn: #B45309;--warn-soft: #FDF0E1;--bar: #3346D3;--scrim: rgba(8, 12, 20, .5);--shadow: rgba(16, 24, 40, .14);--p1: #3346D3;--p2: #B45309;--p3: #047857;--p4: #7C3AED;--p5: #64748B;--p6: #0E7490;--p7: #BE185D;--p8: #65A30D;--font-ui: "IBM Plex Sans", system-ui, -apple-system, "Segoe UI", Roboto, sans-serif;--font-num: "IBM Plex Mono", ui-monospace, "SFMono-Regular", Consolas, monospace}@media(prefers-color-scheme:dark){:root:not([data-theme=light]){--bg: #0B0F17;--frame: #06080D;--surface: #141A26;--surface-2: #1B2231;--ink: #E7EBF2;--muted: #9AA3B4;--line: #283143;--accent: #8D9BFF;--accent-hover: #A5B0FF;--accent-ink: #0B0F17;--accent-soft: #1F2647;--earned: #4FD1A0;--earned-soft: #12301F;--warn: #F5A65B;--warn-soft: #3A2A16;--bar: #8D9BFF;--scrim: rgba(0, 0, 0, .6);--shadow: rgba(0, 0, 0, .4);--p1: #8D9BFF;--p2: #F5A65B;--p3: #4FD1A0;--p4: #C4A1FF;--p5: #9AA3B4;--p6: #5BC8DC;--p7: #F37BB3;--p8: #A3D65C;color-scheme:dark}}:root[data-theme=dark]{--bg: #0B0F17;--frame: #06080D;--surface: #141A26;--surface-2: #1B2231;--ink: #E7EBF2;--muted: #9AA3B4;--line: #283143;--accent: #8D9BFF;--accent-hover: #A5B0FF;--accent-ink: #0B0F17;--accent-soft: #1F2647;--earned: #4FD1A0;--earned-soft: #12301F;--warn: #F5A65B;--warn-soft: #3A2A16;--bar: #8D9BFF;--scrim: rgba(0, 0, 0, .6);--shadow: rgba(0, 0, 0, .4);--p1: #8D9BFF;--p2: #F5A65B;--p3: #4FD1A0;--p4: #C4A1FF;--p5: #9AA3B4;--p6: #5BC8DC;--p7: #F37BB3;--p8: #A3D65C;color-scheme:dark}*{box-sizing:border-box}[hidden]{display:none!important}html{scroll-padding-bottom:calc(130px + env(safe-area-inset-bottom,0px))}body{background:var(--bg);color:var(--ink);font-family:var(--font-ui);font-size:16px;line-height:1.5;-webkit-font-smoothing:antialiased;touch-action:manipulation;-webkit-tap-highlight-color:transparent}.app{max-width:430px;margin:0 auto;min-height:100%;background:var(--bg);padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px));padding-block:12px calc(140px + env(safe-area-inset-bottom,0px))}@media(min-width:600px){body{background:var(--frame)}.app{border-inline:1px solid var(--line);min-height:100vh}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0 0 0 0);white-space:nowrap;border:0}svg.i{width:20px;height:20px;flex:none}.sample-note{display:flex;align-items:center;gap:8px;margin:0;font-size:13px;color:var(--muted)}.sample-note .dot{width:8px;height:8px;border-radius:50%;background:var(--warn);flex:none}.screen-head{display:flex;flex-direction:column;gap:2px;margin:16px 0 20px}h1{font-size:28px;line-height:1.15;font-weight:600;letter-spacing:-.01em;margin:0;text-wrap:balance}h1:focus{outline:none}.sub{margin:0;color:var(--muted);font-size:14px}.section-title{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted);margin:32px 0 4px}.hint{margin:0;font-size:14px;color:var(--muted)}fieldset{border:0;margin:0;padding:0;min-width:0}.field{margin-top:20px}.field-label{display:block;padding:0;margin:0 0 8px;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.field-label .opt{text-transform:none;letter-spacing:0;font-weight:400}.err{margin:8px 0 0;font-size:14px;color:var(--warn);font-weight:500}.seg{display:grid;grid-template-columns:repeat(var(--n, 2),minmax(0,1fr));gap:4px;padding:4px;background:var(--surface-2);border:1px solid var(--line);border-radius:12px}.seg label{position:relative;display:flex}.seg input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;margin:0;cursor:pointer}.seg span{flex:1;display:flex;align-items:center;justify-content:center;min-height:44px;border-radius:9px;font-weight:500;color:var(--muted);transition:background-color .15s,color .15s}.seg input:checked+span{background:var(--surface);color:var(--ink);font-weight:600;box-shadow:0 1px 3px var(--shadow)}.seg input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}.amount-box{display:flex;align-items:baseline;gap:8px;padding:6px 16px;background:var(--surface);border:1px solid var(--line);border-radius:14px;transition:border-color .15s,box-shadow .15s}.amount-box:focus-within{border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}.amount-box input{flex:1;min-width:0;border:0;background:transparent;color:var(--ink);outline:none;font:600 40px/1.2 var(--font-num);font-variant-numeric:tabular-nums;padding:4px 0}.amount-box input::placeholder{color:var(--muted);opacity:.55}.amount-box .unit{font:500 28px var(--font-num);color:var(--muted)}.amount-box.small input{font-size:26px}.amount-box.small .unit{font-size:20px}.amount-box.tiny{padding:4px 12px}.amount-box.tiny input{font-size:18px}.amount-box.tiny .unit{font-size:16px}.amount-box[data-invalid]{border-color:var(--warn)}.amount-pair{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.amount-pair .mini{display:block;font-size:13px;color:var(--muted);margin-bottom:4px}.text-input{width:100%;min-height:48px;padding:0 14px;margin:0;border:1px solid var(--line);border-radius:12px;background:var(--surface);color:var(--ink);font:400 16px var(--font-ui);-webkit-appearance:none;-moz-appearance:none;appearance:none}.text-input::placeholder{color:var(--muted)}.text-input:focus-visible{outline:none;border-color:var(--accent);box-shadow:0 0 0 3px var(--accent-soft)}#new-label-wrap{margin-top:8px}.chips{display:flex;flex-wrap:wrap;gap:8px}.chip{position:relative;display:inline-flex;max-width:100%}.chip input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;margin:0;cursor:pointer}.chip>span{display:inline-flex;align-items:center;gap:6px;min-height:44px;max-width:100%;padding:8px 14px;border:1px solid var(--line);border-radius:22px;background:var(--surface);font-size:15px;font-weight:500;line-height:1.25;color:var(--ink);overflow-wrap:anywhere;transition:background-color .15s,border-color .15s,color .15s}@media(hover:hover){.chip:hover>span{border-color:var(--muted)}}.chip input:checked+span{background:var(--accent);border-color:var(--accent);color:var(--accent-ink)}.chip input:focus-visible+span{outline:2px solid var(--accent);outline-offset:2px}.chip .sw{width:10px;height:10px;border-radius:50%;background:var(--c);flex:none}.chip input:checked+span .sw{box-shadow:0 0 0 2px var(--accent-ink)}.chip .bal{font:500 13px var(--font-num);opacity:.8;white-space:nowrap}.chip svg.i{width:16px;height:16px}.checks{margin-top:12px}.check{display:flex;align-items:flex-start;gap:12px;min-height:44px;padding:10px 0;cursor:pointer}.check input{width:20px;height:20px;margin:2px 0 0;accent-color:var(--accent);flex:none;cursor:pointer}.check-sub{display:block;font-size:13px;color:var(--muted)}.btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-height:52px;padding:0 20px;border-radius:14px;border:1px solid transparent;font:600 16px var(--font-ui);cursor:pointer;transition:background-color .15s,transform .1s}.btn.primary{background:var(--accent);color:var(--accent-ink)}.btn.secondary{background:var(--surface);border-color:var(--line);color:var(--ink)}.btn.ghost{background:transparent;border-color:var(--line);color:var(--ink)}@media(hover:hover){.btn.primary:hover{background:var(--accent-hover)}.btn.secondary:hover,.btn.ghost:hover{background:var(--surface-2)}}.btn:active{transform:scale(.98)}.btn.block{width:100%;margin-top:28px}.btn:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.btn-row{display:flex;gap:8px;margin-top:24px}.btn-row .btn{flex:1;min-width:0}.btn-row+.btn.block{margin-top:8px}.saved-block{margin-bottom:20px}.saved-list{display:flex;gap:8px;overflow-x:auto;overscroll-behavior-x:contain;padding:2px 2px 8px;margin:0 -2px;scroll-snap-type:x proximity}.saved-chip{flex:none;max-width:200px;display:flex;flex-direction:column;align-items:flex-start;gap:2px;min-height:56px;padding:10px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--ink);text-align:left;cursor:pointer;scroll-snap-align:start;font:inherit;transition:border-color .15s,background-color .15s}@media(hover:hover){.saved-chip:hover{border-color:var(--accent)}}.saved-chip:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.sc-label{font-weight:600;font-size:15px;line-height:1.25;overflow-wrap:anywhere}.sc-meta{max-width:100%;font:500 13px var(--font-num);color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sc-meta.earned{color:var(--earned)}.entries,.accounts,.bars,.insights{list-style:none;margin:0;padding:0}.entries li,.accounts li{border-bottom:1px solid var(--line)}.row-btn{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;width:calc(100% + 16px);margin:0 -8px;padding:14px 8px;border:0;border-radius:10px;background:transparent;color:inherit;font:inherit;text-align:left;cursor:pointer;transition:background-color .15s}.row-main{display:block;min-width:0}.row-btn .row-title,.row-btn .row-sub,.row-btn .a-bal{display:block}@media(hover:hover){.row-btn:hover{background:var(--surface-2)}}.row-btn:active{background:var(--surface-2)}.row-btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.row-note{display:block;font-size:13px;color:var(--muted);white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.entries li.empty-row{padding:14px 0;color:var(--muted);font-size:15px}.swatch{width:12px;height:12px;border-radius:4px;background:var(--c)}.row-title{font-weight:500;overflow-wrap:anywhere}.row-sub{font-size:13px;color:var(--muted);overflow-wrap:anywhere}.amt{font:500 15px var(--font-num);font-variant-numeric:tabular-nums;white-space:nowrap;text-align:right}.amt.earned{color:var(--earned)}.amt.move{color:var(--muted)}.tag{display:inline-block;margin-left:6px;padding:0 8px;border-radius:999px;vertical-align:2px;font:600 11px/18px var(--font-ui);letter-spacing:.02em;color:var(--accent);background:var(--accent-soft);white-space:nowrap}.search-row{display:flex;gap:8px}.search-row .text-input{flex:1;min-width:0}.search-row .btn{min-height:48px;padding:0 14px;flex:none}.count-badge{display:inline-grid;place-items:center;min-width:22px;height:22px;padding:0 6px;border-radius:999px;background:var(--accent);color:var(--accent-ink);font:600 12px var(--font-num)}.pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.pills:empty{display:none}.pill{display:inline-flex;align-items:center;gap:6px;min-height:44px;max-width:100%;padding:6px 10px 6px 14px;border:1px solid var(--accent);border-radius:22px;background:var(--accent-soft);color:var(--ink);font:500 14px var(--font-ui);text-align:left;overflow-wrap:anywhere;cursor:pointer}.pill svg.i{width:16px;height:16px;color:var(--muted)}@media(hover:hover){.pill:hover svg.i{color:var(--ink)}}.pill:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.summary{margin:14px 0 0;font-size:14px;color:var(--muted)}.day-head{margin:20px 0 0;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.empty-box{margin-top:24px;padding:24px 16px;text-align:center;border:1px dashed var(--line);border-radius:14px;color:var(--muted)}.empty-box p{margin:0 0 12px}.empty-box p:last-child{margin-bottom:0}.total-card{padding:20px;border-radius:16px;background:var(--surface);border:1px solid var(--line);container-type:inline-size}.total-label{margin:0;font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.total-num{margin:4px 0 0;font:600 34px/1.15 var(--font-num);font-size:min(34px,11.5cqi);font-variant-numeric:tabular-nums;white-space:nowrap}.total-sub{margin:6px 0 0;font-size:14px;color:var(--muted)}.stack{display:flex;gap:2px;height:10px;margin-top:16px;border-radius:5px;overflow:hidden}.stack span{background:var(--c);min-width:4px}.accounts{margin-top:8px}.accounts .row-title{font-weight:600}.a-bal{font:600 16px var(--font-num);font-variant-numeric:tabular-nums;text-align:right;white-space:nowrap}.a-bal.neg{color:var(--warn)}.short{display:block;width:fit-content;margin:4px 0 0 auto;padding:1px 8px;border-radius:999px;font:600 12px var(--font-ui);color:var(--warn);background:var(--warn-soft)}.colors+.hint,.chips+.hint{margin-top:8px}#f-lab-find{margin-bottom:8px}.colors{display:grid;grid-template-columns:repeat(8,minmax(0,44px));justify-content:space-between}.color-opt{position:relative;display:grid;place-items:center;height:44px}.color-opt input{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;margin:0;cursor:pointer}.color-opt span{width:28px;height:28px;border-radius:50%;background:var(--c);transition:box-shadow .15s}.color-opt input:checked+span{box-shadow:0 0 0 3px var(--surface),0 0 0 5px var(--ink)}.color-opt input:focus-visible+span{outline:2px solid var(--accent);outline-offset:6px}@media(hover:hover){.color-opt:hover input:not(:checked)+span{box-shadow:0 0 0 3px var(--surface),0 0 0 5px var(--line)}}.link-btn{display:inline-flex;align-items:center;min-height:44px;padding:0 4px;border:0;background:none;color:var(--accent);font:600 15px var(--font-ui);cursor:pointer}@media(hover:hover){.link-btn:hover{text-decoration:underline}}.link-btn:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:6px}.saved-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.saved-head .field-label{margin:0}.se-list{list-style:none;margin:16px 0 0;padding:0;display:grid;gap:8px}.se-card{padding:4px 14px 14px;border:1px solid var(--line);border-radius:14px;background:var(--surface-2)}.se-card.removed{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:6px 14px}.se-card.removed p{margin:0;font-size:15px;color:var(--muted);overflow-wrap:anywhere}.se-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.se-type{font-size:13px;font-weight:600;text-transform:uppercase;letter-spacing:.06em;color:var(--muted)}.se-type.earned{color:var(--earned)}.se-row{display:grid;grid-template-columns:minmax(0,1fr);gap:10px;margin-top:10px}.se-card .mini{display:block;font-size:13px;color:var(--muted);margin-bottom:4px}.se-card .text-input{min-height:44px;background-color:var(--surface)}.se-card .amount-box.tiny{min-height:44px;align-items:center}select.text-input{padding-right:32px;text-overflow:ellipsis;cursor:pointer;background-image:linear-gradient(45deg,transparent 50%,var(--muted) 50%),linear-gradient(135deg,var(--muted) 50%,transparent 50%);background-position:calc(100% - 18px) 50%,calc(100% - 13px) 50%;background-size:5px 5px;background-repeat:no-repeat}select.text-input option{background-color:var(--surface);color:var(--ink)}.entry-amt{margin:4px 0 0;font:600 28px/1.2 var(--font-num);font-variant-numeric:tabular-nums;overflow-wrap:anywhere}.entry-amt.earned{color:var(--earned)}.facts{margin:16px 0 0}.facts div{display:grid;grid-template-columns:88px minmax(0,1fr);gap:12px;padding:12px 0;border-top:1px solid var(--line)}.facts dt{font-size:14px;color:var(--muted)}.facts dd{margin:0;overflow-wrap:anywhere}.caption{margin:12px 0 0;font-size:14px;color:var(--muted)}.stats{margin-top:12px;padding:4px 16px;border-radius:14px;background:var(--surface);border:1px solid var(--line)}.stat{display:flex;justify-content:space-between;align-items:baseline;gap:12px;padding:10px 0}.stat+.stat{border-top:1px solid var(--line)}.stat-label{font-size:15px;color:var(--muted)}.stat-num{font:600 18px/1.2 var(--font-num);font-variant-numeric:tabular-nums;white-space:nowrap}.stat.left .stat-num{color:var(--earned)}.stat.over .stat-num{color:var(--warn)}.bars li{padding:14px 0;border-bottom:1px solid var(--line)}.bars li.empty{color:var(--muted);font-size:15px}.bar-top{display:flex;justify-content:space-between;align-items:baseline;gap:12px}.bar-top .row-title{min-width:0}.bar-track{height:8px;border-radius:4px;background:var(--line);margin:8px 0 6px;overflow:hidden}.bar-fill{height:100%;border-radius:4px;background:var(--bar)}.bar-meta{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:4px 8px;font-size:13px;color:var(--muted)}.delta{font:500 13px var(--font-num);padding:1px 8px;border-radius:999px;white-space:nowrap}.delta.up{color:var(--warn);background:var(--warn-soft)}.delta.down{color:var(--earned);background:var(--earned-soft)}.delta.same,.delta.new{color:var(--muted);background:var(--surface-2);font-family:var(--font-ui)}.insights{display:grid;gap:8px;margin-top:8px}.insights li{display:grid;grid-template-columns:36px minmax(0,1fr);gap:12px;align-items:start;padding:14px;border-radius:14px;background:var(--surface);border:1px solid var(--line)}.ins-icon{width:36px;height:36px;border-radius:10px;display:grid;place-items:center;background:var(--accent-soft);color:var(--accent)}.ins-title{margin:0;font-weight:600}.ins-text{margin:2px 0 0;font-size:15px;overflow-wrap:anywhere}.note{margin:16px 0 0;font-size:13px;color:var(--muted)}.tabbar{position:fixed;left:0;right:0;bottom:0;z-index:5;max-width:430px;margin:0 auto;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));background:var(--surface);border-top:1px solid var(--line);padding-bottom:env(safe-area-inset-bottom,0px);padding-left:env(safe-area-inset-left,0px);padding-right:env(safe-area-inset-right,0px)}@media(min-width:600px){.tabbar{border-inline:1px solid var(--line)}}.tabbar a{position:relative;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:62px;color:var(--muted);text-decoration:none;font-size:12px;font-weight:500}.tabbar a svg.i{width:24px;height:24px}.tabbar a[aria-current=page]{color:var(--accent);font-weight:600}.tabbar a[aria-current=page]:before{content:"";position:absolute;top:0;left:50%;width:32px;height:3px;margin-left:-16px;border-radius:0 0 3px 3px;background:var(--accent)}@media(hover:hover){.tabbar a:not([aria-current]):hover{color:var(--ink)}}.tabbar a:focus-visible{outline:2px solid var(--accent);outline-offset:-4px}.toast{position:fixed;left:0;right:0;z-index:6;margin:0 auto;bottom:calc(118px + env(safe-area-inset-bottom,0px));width:calc(100% - 32px);max-width:398px;padding:12px 16px;border-radius:12px;background:var(--ink);color:var(--bg);font-size:14px;line-height:1.4;box-shadow:0 8px 24px var(--shadow);opacity:0;transform:translateY(8px);pointer-events:none;transition:opacity .2s,transform .2s}.toast.show{opacity:1;transform:none}.toast{display:flex;align-items:center;gap:8px}.toast.actionable{pointer-events:auto;padding-right:6px}.toast-msg{flex:1;min-width:0;margin:0;overflow-wrap:anywhere}.toast-undo{flex:none;min-height:44px;padding:0 12px;border:1px solid currentColor;border-radius:10px;background:transparent;color:var(--bg);font:700 15px var(--font-ui);cursor:pointer}@media(hover:hover){.toast-undo:hover{background:#7f7f7f33}}.toast-undo:focus-visible{outline:2px solid var(--bg);outline-offset:2px}.sheet-head{display:flex;align-items:flex-start;justify-content:space-between;gap:8px}.sheet-head h2{padding-top:8px}.icon-btn{flex:none;display:grid;place-items:center;width:44px;height:44px;margin:-2px -10px 0 0;border:0;border-radius:12px;background:transparent;color:var(--muted);cursor:pointer}@media(hover:hover){.icon-btn:hover{background:var(--surface-2);color:var(--ink)}}.icon-btn:focus-visible{outline:2px solid var(--accent);outline-offset:-2px}.btn.danger{color:var(--warn)}.ed-to-label,#edit-form .seg{margin-top:16px}dialog{border:0;padding:0;width:100%;max-width:430px;max-height:90vh;margin:auto auto 0;border-radius:20px 20px 0 0;background:var(--surface);color:var(--ink);overflow-y:auto;overscroll-behavior:contain;scroll-padding-bottom:96px}dialog::backdrop{background:var(--scrim)}.sheet{padding-block:20px calc(20px + env(safe-area-inset-bottom,0px));padding-left:max(16px,env(safe-area-inset-left,0px));padding-right:max(16px,env(safe-area-inset-right,0px))}.sheet h2{margin:0;font-size:20px;font-weight:600;overflow-wrap:anywhere}.sheet .sub{margin-top:2px}.sheet .chip>span{background:var(--surface-2)}.sheet .chip input:checked+span{background:var(--accent)}.sheet-actions{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,2fr);gap:8px;margin-top:24px}.sheet-actions.sticky{position:sticky;bottom:0;padding-top:12px;background:var(--surface);border-top:1px solid var(--line)}.preview{margin:12px 0 0;font-size:15px}@media(prefers-reduced-motion:reduce){*,*:before,*:after{transition:none!important;animation:none!important}}html,body{margin:0}.signin{max-width:400px;margin:0 auto;padding-block:48px 40px}.signin h1{margin-bottom:4px}.signin form{margin-top:24px}.signin .text-input+.field-label,.signin .field+.field{margin-top:16px}.alt-row{display:flex;justify-content:center;margin-top:20px}.status-row{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:8px;min-height:28px}.status-row .sample-note{min-width:0}.sync-pill{display:inline-flex;align-items:center;gap:6px;min-height:32px;padding:0 12px;border:1px solid var(--warn);border-radius:999px;background:var(--warn-soft);color:var(--warn);font:600 13px var(--font-ui);cursor:pointer}.sync-pill:focus-visible{outline:2px solid var(--accent);outline-offset:2px}.who{font-size:13px;color:var(--muted);overflow-wrap:anywhere}.row{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:14px 0}.row .row-title,.row .row-sub,.row .a-bal{display:block}.pending-tag{color:var(--warn);background:var(--warn-soft)}.loading{padding:48px 0;text-align:center;color:var(--muted)}.save-bar{position:sticky;z-index:3;bottom:calc(70px + env(safe-area-inset-bottom,0px));margin-top:20px;padding-top:12px;background:linear-gradient(to bottom,transparent,var(--bg) 14px)}.save-bar .btn.block{margin-top:0;box-shadow:0 4px 16px var(--shadow)}html{scroll-padding-bottom:calc(200px + env(safe-area-inset-bottom,0px))}.toast{bottom:calc(140px + env(safe-area-inset-bottom,0px))}.tabbar.three{grid-template-columns:repeat(3,minmax(0,1fr))}
