:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light dark;--bg:var(--lightningcss-light,#f6f7f3)var(--lightningcss-dark,#161c19);--panel:var(--lightningcss-light,#fff)var(--lightningcss-dark,#202922);--text:var(--lightningcss-light,#202d28)var(--lightningcss-dark,#e8eee9);--soft:var(--lightningcss-light,#63726a)var(--lightningcss-dark,#aab8af);--line:var(--lightningcss-light,#e5eae5)var(--lightningcss-dark,#354238);--green:var(--lightningcss-light,#36765a)var(--lightningcss-dark,#83c5a0);--on-green:var(--lightningcss-light,#fff)var(--lightningcss-dark,#12271a);--purple:var(--lightningcss-light,#8e83bb)var(--lightningcss-dark,#b8a9e2);--track:var(--lightningcss-light,#e9eee8)var(--lightningcss-dark,#354238);--tint:var(--lightningcss-light,#edf3ec)var(--lightningcss-dark,#2a392e);--danger:var(--lightningcss-light,#b4533f)var(--lightningcss-dark,#f0a08e);--cat-1:var(--lightningcss-light,#2a78d6)var(--lightningcss-dark,#3987e5);--cat-2:var(--lightningcss-light,#eb6834)var(--lightningcss-dark,#d95926);--cat-3:var(--lightningcss-light,#1baf7a)var(--lightningcss-dark,#199e70);--cat-4:var(--lightningcss-light,#eda100)var(--lightningcss-dark,#c98500);--cat-5:var(--lightningcss-light,#e87ba4)var(--lightningcss-dark,#d55181);--cat-6:#008300;--cat-7:var(--lightningcss-light,#4a3aa7)var(--lightningcss-dark,#9085e9);--cat-8:var(--lightningcss-light,#8a948e)var(--lightningcss-dark,#7c8981);--radius-card:24px;--radius-list:19px;--tabbar-h:70px}@media (prefers-color-scheme:dark){:root{--lightningcss-light: ;--lightningcss-dark:initial}}*{box-sizing:border-box}body{background:var(--bg);color:var(--text);-webkit-tap-highlight-color:transparent;margin:0;font-family:system-ui,-apple-system,Noto Sans TC,Microsoft JhengHei,sans-serif}button{font:inherit;color:inherit;cursor:pointer;background:0 0;border:0}a{color:inherit}button:focus-visible,input:focus-visible,a:focus-visible{outline:2px solid var(--purple);outline-offset:3px}h1{letter-spacing:-.5px;margin:0;font-size:24px;font-weight:600}.app{max-width:30rem;padding:max(26px, env(safe-area-inset-top)) max(22px, env(safe-area-inset-right)) calc(var(--tabbar-h) + env(safe-area-inset-bottom) + 24px) max(22px, env(safe-area-inset-left));margin:0 auto}.page-header,.section-heading,.month-control,.row{justify-content:space-between;align-items:center;gap:10px;display:flex}.page-header{min-height:44px}.tabbar{padding:12px max(12px, env(safe-area-inset-right)) max(18px, env(safe-area-inset-bottom)) max(12px, env(safe-area-inset-left));background:var(--panel);border-top:1px solid var(--line);grid-template-columns:repeat(5,1fr);display:grid;position:fixed;bottom:0;left:0;right:0}.tabbar a{min-height:44px;color:var(--soft);flex-direction:column;justify-content:center;align-items:center;gap:5px;font-size:11px;text-decoration:none;display:flex}.tabbar svg{width:20px;height:20px}.tabbar a.active{color:var(--green);font-weight:500}.card{background:var(--panel);border-radius:var(--radius-card);margin-top:22px;padding:18px 18px 17px}.card-heading{font-size:14px;font-weight:500}.small{color:var(--soft);font-size:12px;line-height:1.6}.section{margin-top:25px}.section-heading{min-height:30px;margin-bottom:10px}.section-heading h2{margin:0;font-size:16px;font-weight:600}.card .section-heading{margin-bottom:0}.icon-button{place-items:center;width:40px;height:44px;display:grid}.icon-button svg{width:17px;height:17px}.text-button{min-height:44px;color:var(--soft);align-items:center;gap:5px;padding:4px 0 4px 8px;font-size:12px;display:flex}.text-button svg{width:13px;height:13px}.primary-button{background:var(--green);min-height:44px;color:var(--on-green);border-radius:10px;padding:10px 14px}.inline-form{flex-wrap:wrap;gap:8px;padding:4px 0 14px;display:flex}.inline-form label{width:100%;color:var(--soft);font-size:12px}.inline-form input{border:1px solid var(--line);background:var(--bg);width:0;min-width:100px;color:var(--text);border-radius:10px;flex:1;padding:10px;font-size:16px}.list{background:var(--panel);border-radius:var(--radius-list);padding:0 15px}.row{min-height:72px;padding:15px 0;text-decoration:none}.row+.row{border-top:1px solid var(--line)}.row-main{align-items:center;gap:12px;min-width:0;display:flex}.row-icon{background:var(--tint);width:36px;height:36px;color:var(--soft);border-radius:12px;flex:none;place-items:center;display:grid}.row-icon svg{width:18px;height:18px}.row-title{font-size:14px;font-weight:500}.row-detail{color:var(--soft);margin-top:4px;font-size:11px;font-weight:400}.row-price{text-align:right;white-space:nowrap;font-variant-numeric:tabular-nums;font-size:14px;font-weight:500}.row-chevron{width:16px;height:16px;color:var(--soft);flex:none}.empty{text-align:center;color:var(--soft);padding:20px 0;font-size:13px}.month-control{background:var(--panel);border-radius:24px;gap:0;padding:0 3px;font-size:13px}.month-label{text-align:center;font-variant-numeric:tabular-nums;min-width:63px}.ring-wrap{aspect-ratio:1;width:242px;max-width:100%;margin:5px auto 14px;position:relative}.rings{width:100%;height:100%;display:block;overflow:visible}.ring-track{fill:none;stroke:var(--track)}.ring{fill:none;stroke-linecap:round;transform-origin:120px 120px;transition:stroke-dasharray .45s;transform:rotate(-90deg)}.expense-ring{stroke:var(--green)}.income-ring{stroke:var(--purple)}.ring-center{pointer-events:none;flex-direction:column;justify-content:center;align-items:center;display:flex;position:absolute;inset:0}.remaining-amount{letter-spacing:-1px;font-variant-numeric:tabular-nums;margin:5px 0;font-size:30px;font-weight:600}.remaining-amount.over{color:var(--danger)}.ceiling{color:var(--soft);font-size:11px}.expense-ring,.ring.segment{cursor:pointer}.ring.segment{stroke-linecap:butt;transition:stroke-dasharray .45s,opacity .2s}.ring.segment.dimmed,.category-list button.dimmed{opacity:.3}.rings.breakdown .income-ring{opacity:.25}.metric-button{text-align:left;border-radius:12px;width:100%;display:block}.metric-button:disabled{cursor:default}.metric-button[aria-pressed=true]{background:var(--tint)}.metric-chevron{width:13px;height:13px;margin-left:auto;transition:transform .2s}.metric-chevron.open{transform:rotate(180deg)}.category-list{border-top:1px solid var(--line);margin:12px 0 0;padding:10px 0 0;list-style:none}.category-list button{border-radius:10px;grid-template-columns:7px 1.5em 1fr 5.5em 3.5em;align-items:center;gap:10px;width:100%;min-height:44px;padding:0 4px;font-size:13px;transition:opacity .2s;display:grid}.category-list button[aria-pressed=true]{background:var(--tint)}.category-name{font-weight:500}.category-bar{background:var(--track);border-radius:3px;height:6px;overflow:hidden}.category-bar span{border-radius:3px;height:100%;display:block}.category-amount-cell,.category-share{text-align:right;font-variant-numeric:tabular-nums}.category-share{color:var(--soft);font-size:12px}.ring-legend{grid-template-columns:1fr 1fr;gap:10px;display:grid}.metric{padding:6px 9px}.metric+.metric{border-left:1px solid var(--line)}.metric-label{color:var(--soft);align-items:center;gap:7px;font-size:12px;display:flex}.swatch{border-radius:50%;flex:none;width:7px;height:7px}.expense-swatch{background:var(--green)}.income-swatch{background:var(--purple)}.metric-value{font-variant-numeric:tabular-nums;margin-top:5px;font-size:20px;font-weight:500}.metric-note{color:var(--soft);margin-top:3px;font-size:11px}.hint{color:var(--soft);font-size:12px;line-height:1.6}.form-error{color:var(--danger);font-size:12px}.stack-form{gap:9px;padding-top:14px;display:grid}.stack-form label{color:var(--soft);font-size:12px}.stack-form input,.stack-form select{border:1px solid var(--line);background:var(--bg);width:100%;min-width:0;color:var(--text);font:inherit;border-radius:11px;padding:11px;font-size:16px}.stack-form select:disabled{opacity:.7}.field-pair{grid-template-columns:1fr 1fr;gap:10px;display:grid}.field-pair label{margin-bottom:8px;display:block}.form-actions{gap:8px;margin-top:3px;display:flex}.form-actions button{border-radius:11px;min-height:44px;padding:10px 14px;font-size:13px}.form-actions .primary-button,.form-actions .danger-button{flex:1}.secondary-button{color:var(--soft)}.danger-button{background:var(--danger);color:var(--panel)}.link-button{min-height:44px;color:var(--green);align-items:center;gap:5px;padding:5px 0 5px 10px;font-size:13px;display:flex}.link-button svg{width:16px;height:16px}.danger-link{color:var(--danger)}.tint-button{background:var(--tint);width:100%;min-height:44px;color:var(--green);border-radius:12px;justify-content:center;align-items:center;gap:7px;font-size:13px;display:flex}.tint-button:disabled{opacity:.5;cursor:default}.tint-button svg{width:16px;height:16px}.confirm-box{background:var(--bg);border-radius:14px;gap:10px;margin-top:12px;padding:14px;display:grid}.confirm-box p{margin:0;font-size:13px;line-height:1.6}.segmented{background:var(--track);border-radius:15px;grid-template-columns:1fr 1fr;gap:4px;margin:22px 0 24px;padding:4px;display:grid}.segmented button{min-height:44px;color:var(--soft);border-radius:11px;font-size:14px}.segmented button[aria-selected=true]{background:var(--panel);color:var(--text);font-weight:500;box-shadow:0 2px 5px var(--lightningcss-light,#203c2410)var(--lightningcss-dark,#00000020)}.toolbar{justify-content:space-between;align-items:center;gap:10px;margin:-6px 0 6px;display:flex}.net-worth{padding:0 3px 8px}.net-worth-amount{letter-spacing:-1px;font-variant-numeric:tabular-nums;margin-top:5px;font-size:34px;font-weight:600}.net-breakdown{color:var(--soft);grid-template-columns:1fr 1fr;gap:10px;margin:12px 0 8px;font-size:12px;display:grid}.net-breakdown strong{color:var(--text);font-variant-numeric:tabular-nums;margin-top:3px;font-size:15px;font-weight:500;display:block}.card h2{overflow-wrap:anywhere;margin:0;font-size:17px;font-weight:600}.editor-card,.category-card,.plan-card{margin-top:17px}.card-icon{background:var(--tint);width:38px;height:38px;color:var(--green);border-radius:13px;flex:none;place-items:center;display:grid}.card-icon.debt{color:var(--danger)}.card-icon svg{width:19px;height:19px}.category-head{justify-content:space-between;align-items:center;gap:10px;margin-bottom:16px;display:flex}.category-head h2{font-size:16px}.category-total{text-align:right}.category-amount{font-variant-numeric:tabular-nums;font-size:19px;font-weight:500}.category-caption{border-bottom:1px solid var(--line);color:var(--soft);padding-bottom:10px;font-size:11px}.asset-row{justify-content:space-between;align-items:center;gap:10px;padding:14px 0;display:flex}.asset-row+.asset-row{border-top:1px solid var(--line)}.asset-row:last-child{padding-bottom:0}.asset-main{overflow-wrap:anywhere;flex:1;min-width:0}.asset-values{text-align:right;flex:none}.edit-button{min-width:36px;min-height:44px;color:var(--soft);place-items:center;padding:8px 0 8px 8px;display:grid}.edit-button svg{width:16px;height:16px}.remove-section{border-top:1px solid var(--line);margin-top:18px;padding-top:14px}.remove-section>button{align-items:center;gap:6px;min-height:44px;font-size:13px;display:flex}.remove-section svg{width:15px;height:15px}.page-remove .confirm-box{background:var(--panel)}.plan-list{display:grid}.plan-head{align-items:center;gap:10px;margin-bottom:24px;display:flex}.badge{background:var(--tint);color:var(--green);border-radius:8px;margin-top:4px;padding:2px 8px;font-size:11px;display:inline-block}.goal-amount{letter-spacing:-.8px;font-variant-numeric:tabular-nums;margin:4px 0 19px;font-size:28px;font-weight:600}.row-between{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:8px;display:flex}.progress-text{font-variant-numeric:tabular-nums;font-size:12px}.progress{background:var(--track);border-radius:6px;height:6px;margin:10px 0 11px;overflow:hidden}.progress-fill{background:var(--green);height:100%;transition:width .3s}.plan-monthly{color:var(--soft);font-variant-numeric:tabular-nums;margin-top:6px;font-size:12px}.allocation-head{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:8px;margin-top:25px;padding-top:19px;display:flex}.allocation-head h3{margin:0;font-size:13px;font-weight:500}.mode-switch{background:var(--track);isolation:isolate;border-radius:11px;grid-template-columns:1fr 1fr;padding:3px;display:grid;position:relative}.mode-switch:before{content:"";z-index:-1;background:var(--panel);border-radius:8px;width:calc(50% - 3px);transition:transform .2s;position:absolute;top:3px;bottom:3px;left:3px;box-shadow:0 1px 4px var(--lightningcss-light,#203c2410)var(--lightningcss-dark,#00000020)}.mode-switch[data-value=amount]:before{transform:translate(100%)}.mode-switch button{min-width:44px;min-height:38px;color:var(--soft);place-items:center;padding:8px 10px;display:grid}.mode-switch button[aria-pressed=true]{color:var(--text)}.mode-switch svg{fill:none;stroke:currentColor;stroke-width:2px;stroke-linecap:round;stroke-linejoin:round;width:20px;height:20px;display:block}.allocation{justify-content:space-between;align-items:center;gap:8px;padding:17px 0;display:flex}.allocation+.allocation{border-top:1px solid var(--line)}.allocation .row-main{overflow-wrap:anywhere;flex:1}.source-icon{width:28px;color:var(--soft);flex:none;place-items:center;display:grid}.source-icon svg{width:18px;height:18px}.allocation-value{text-align:right;flex:none}.allocation-primary{font-variant-numeric:tabular-nums;font-size:18px;font-weight:500}.allocation-tools{flex-direction:column;flex:none;display:flex}.allocation-tools button{min-width:32px;min-height:32px;color:var(--soft);place-items:center;display:grid}.allocation-tools svg{width:15px;height:15px}.row-warning{color:var(--danger);align-items:center;gap:4px;margin-top:4px;font-size:11px;display:flex}.row-warning svg{flex:none;width:12px;height:12px}.allocation-form{border-top:1px solid var(--line);margin-top:4px;padding-top:14px}.plan-actions{border-top:1px solid var(--line);flex-wrap:wrap;gap:4px 16px;margin-top:14px;padding-top:10px;display:flex}.plan-actions button{min-height:44px;color:var(--soft);align-items:center;gap:5px;font-size:12px;display:flex}.plan-actions .danger-link{color:var(--danger)}.plan-actions svg{width:14px;height:14px}.footnote{text-align:center;color:var(--soft);margin:15px 0 0;font-size:11px;line-height:1.7}.see-all{min-height:44px;color:var(--soft);align-items:center;gap:2px;font-size:12px;text-decoration:none;display:flex}.see-all svg{width:14px;height:14px}.month-summary{border-radius:var(--radius-list);background:var(--panel);color:var(--soft);grid-template-columns:repeat(3,1fr);gap:10px;padding:14px 16px;font-size:12px;display:grid}.month-summary strong{color:var(--text);font-variant-numeric:tabular-nums;overflow-wrap:anywhere;margin-top:4px;font-size:15px;font-weight:500;display:block}.month-summary strong.income,.row-price.income{color:var(--green)}.month-summary strong.over{color:var(--danger)}.row-price.neutral{color:var(--soft)}.day-group{margin-top:20px}.day-heading{color:var(--soft);font-variant-numeric:tabular-nums;justify-content:space-between;gap:10px;margin:0 4px 8px;font-size:12px;display:flex}.tx-item{display:flow-root}.tx-item+.tx-item{border-top:1px solid var(--line)}.row-button{text-align:left;width:100%}.tx-item .confirm-box{margin:0 0 15px}.row-end{align-items:center;gap:6px;display:flex}.row.paused .row-title,.row.paused .row-price{color:var(--soft)}.back-link{min-height:44px;color:var(--soft);align-items:center;gap:2px;margin:-10px 0 4px -6px;font-size:14px;text-decoration:none;display:inline-flex}.back-link svg{width:18px;height:18px}.page-header .badge{margin-top:0}.detail-list{margin:0;display:grid}.detail-list div{border-top:1px solid var(--line);justify-content:space-between;gap:16px;padding:12px 0;font-size:14px;display:flex}.detail-list dt{color:var(--soft);flex:none}.detail-list dd{text-align:right;overflow-wrap:anywhere;margin:0}.detail-actions{gap:10px;margin-top:17px;display:grid}.detail-actions a{text-decoration:none}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.entry-card{padding:16px}.entry-editing{background:var(--tint);color:var(--green);border-radius:10px;justify-content:space-between;align-items:center;margin-bottom:10px;padding:2px 4px 2px 12px;font-size:12px;display:flex}.entry-editing .text-button{min-height:36px;color:var(--green)}.entry-modes{background:var(--tint);border-radius:13px;grid-template-columns:repeat(3,1fr);gap:4px;padding:4px;display:grid}.entry-modes button{min-height:40px;color:var(--soft);border-radius:10px;font-size:14px;font-weight:500}.entry-modes button[aria-pressed=true]{background:var(--panel);color:var(--green);box-shadow:0 2px 6px var(--lightningcss-light,#1b3a2a14)var(--lightningcss-dark,#00000030)}.entry-modes button:disabled{opacity:.4;cursor:default}.entry-amount{border-bottom:1px solid var(--line);padding:22px 4px 20px}.entry-amount-line{align-items:baseline;gap:10px;margin:8px 0 6px;display:flex}.entry-currency{white-space:nowrap;font-size:19px;font-weight:500}#entry-amount{width:100%;min-width:0;color:var(--text);font:inherit;letter-spacing:-1.5px;font-variant-numeric:tabular-nums;background:0 0;border:0;padding:0;font-size:44px;font-weight:600;line-height:1.2}#entry-amount::placeholder{color:var(--text);opacity:.3}#entry-amount:focus-visible{outline:none}.entry-section{padding:18px 0 12px}.entry-heading{color:var(--soft);justify-content:space-between;margin-bottom:12px;font-size:12px;display:flex}.entry-picked{color:var(--green)}.entry-categories{grid-template-columns:repeat(4,minmax(0,1fr));gap:7px 5px;display:grid}.entry-category{min-height:66px;color:var(--soft);border-radius:12px;flex-direction:column;align-items:center;gap:5px;padding:7px 2px;font-size:11px;display:flex}.entry-category-icon{background:var(--tint);width:34px;height:34px;color:var(--text);border-radius:11px;place-items:center;display:grid}.entry-category-icon svg{width:18px;height:18px}.entry-category[aria-pressed=true]{background:var(--tint);color:var(--green);font-weight:600}.entry-category[aria-pressed=true] .entry-category-icon{background:var(--green);color:var(--on-green)}.entry-meals{gap:6px;margin-top:12px;display:flex}.entry-meals button{border:1px solid var(--line);min-height:36px;color:var(--soft);border-radius:10px;flex:1;font-size:12px}.entry-meals button[aria-pressed=true]{border-color:var(--green);background:var(--tint);color:var(--green);font-weight:600}.entry-account{border-top:1px solid var(--line);align-items:center;gap:11px;min-height:68px;padding:11px 2px;display:flex}.entry-account>div{flex-direction:column;flex:1;min-width:0;display:flex}.entry-account select{width:100%;min-height:40px;color:var(--text);font:inherit;appearance:none;background:0 0;border:0;padding:2px 0;font-size:16px;font-weight:500}.entry-account>svg{width:16px;height:16px;color:var(--soft)}.entry-received{color:var(--soft);margin:0 0 12px;font-size:12px;display:block}.entry-received input,.entry-details-body input{border:1px solid var(--line);background:var(--bg);width:100%;min-height:44px;color:var(--text);font:inherit;border-radius:10px;margin-top:6px;padding:9px 11px;font-size:16px;display:block}.entry-transfer-note{margin:0 0 12px}.entry-line{border-top:1px solid var(--line);align-items:center;gap:10px;padding:4px 2px;display:flex}.entry-line>svg{width:17px;height:17px;color:var(--soft)}.entry-line input{width:100%;min-height:44px;color:var(--text);font:inherit;background:0 0;border:0;padding:8px 0;font-size:16px}.entry-line input::placeholder{color:var(--soft);font-size:13px}.entry-details{border-top:1px solid var(--line);margin-bottom:14px}.entry-details summary{min-height:44px;color:var(--soft);cursor:pointer;justify-content:space-between;align-items:center;font-size:12px;list-style:none;display:flex}.entry-details summary::-webkit-details-marker{display:none}.entry-details summary>span{align-items:center;gap:8px;display:flex}.entry-details summary svg{width:16px;height:16px}.entry-when{color:var(--text)}.entry-details-body{padding:2px 0 10px}.entry-details-body .hint{margin:0}.entry-error{margin:0 0 10px}.entry-save{border-radius:13px;justify-content:center;align-items:center;gap:8px;width:100%;min-height:50px;font-size:15px;font-weight:600;display:flex}.entry-save svg{width:18px;height:18px}.entry-save-amount{opacity:.85;font-size:12px;font-weight:400}.entry-notice{text-align:center;min-height:18px;color:var(--green);margin:8px 0 0;font-size:12px}.entry-notice:empty{min-height:0;margin:0}.quick-account{background:var(--bg);border-radius:14px;margin:4px 0 14px;padding:14px}.entry-modes+.quick-account{margin-top:16px}.quick-account-title{font-size:14px;font-weight:600}.quick-account>.hint{margin:6px 0 0}.quick-account .stack-form{padding-top:10px}.quick-account .stack-form input,.quick-account .stack-form select{background:var(--panel)}.recovery-new>.hint{margin:12px 0 0}.recovery-new .card{background:var(--bg);margin-top:12px}.card .confirm-box .stack-form{padding-top:0}.tx-actions{gap:8px;margin:0 0 14px;display:flex}.tx-actions .tint-button svg{width:15px;height:15px}.danger-tint{color:var(--danger)}.page-lead{margin:10px 0 0}.wide-button{width:100%;margin-top:14px}.status-ok{color:var(--green);margin:12px 0 0}.card>.form-error{margin:12px 0 0}.card-title{align-items:center;gap:10px;margin-bottom:10px;display:flex}.card .card-title h2{font-size:16px}.backup-list{margin-top:8px}.backup-item{display:flow-root}.backup-item+.backup-item{border-top:1px solid var(--line)}.backup-item .row{min-height:60px;padding:10px 0}.backup-item .confirm-box{margin:0 0 12px}.support-card h2{margin-top:14px}.support-card p{margin:10px 0 0;font-size:14px;line-height:1.75}.support-card .hint{font-size:12px}.support-link{justify-content:center;align-items:center;gap:7px;margin-top:18px;text-decoration:none;display:flex}.support-link svg{width:16px;height:16px}.vault-screen{padding-bottom:max(24px, env(safe-area-inset-bottom))}.vault-screen>.hint{margin:12px 0 0}.vault-screen>.primary-button{margin-top:22px}.primary-button:disabled{opacity:.6;cursor:default}.stack-form label.check-row{min-height:44px;color:var(--text);align-items:center;gap:8px;font-size:13px;display:flex}.check-row input{width:18px;height:18px;accent-color:var(--green);margin:0}.recovery-key{letter-spacing:1px;text-align:center;overflow-wrap:anywhere;-webkit-user-select:all;user-select:all;padding:14px 4px 6px;font-family:ui-monospace,Cascadia Mono,Menlo,monospace;font-size:18px;line-height:1.6;display:block}.recovery-key+.form-actions{justify-content:center}.vault-switch{margin:10px auto 0;padding-left:0}.install-steps{margin:8px 0 0;padding-left:1.4em;font-size:14px;line-height:1.8}.passkey-unlock{gap:10px;margin-bottom:14px;display:grid}.passkey-unlock .primary-button{justify-content:center;align-items:center;gap:8px;display:flex}.passkey-unlock svg{width:19px;height:19px}.passkey-unlock .hint{text-align:center;margin:0}.landing{max-width:64rem;padding:max(14px, env(safe-area-inset-top)) max(20px, env(safe-area-inset-right)) max(28px, env(safe-area-inset-bottom)) max(20px, env(safe-area-inset-left));margin:0 auto}.landing-bar{justify-content:space-between;align-items:center;min-height:52px;display:flex}.landing-brand{letter-spacing:-.3px;align-items:center;gap:9px;font-size:17px;font-weight:600;display:flex}.landing-brand img{border-radius:8px}.landing-signin{color:var(--green);padding:4px 4px 4px 12px;font-size:14px;text-decoration:none}.landing-hero{align-items:center;gap:36px;padding:36px 0 12px;display:grid}.landing-hero h1{letter-spacing:-1.5px;font-size:clamp(34px,9vw,52px);line-height:1.15}.landing-lead{max-width:34rem;color:var(--soft);margin:18px 0 0;font-size:16px;line-height:1.8}.landing-copy .form-error{margin:14px 0 0;font-size:14px}.landing-notice{color:var(--green);margin:14px 0 0;font-size:14px}.landing-copy>.hint{margin:14px 0 0}.landing-actions{flex-wrap:wrap;align-items:center;gap:10px;margin-top:26px;display:flex}.landing-install{border:1px solid var(--line);border-radius:12px;min-height:46px;padding:10px 16px;font-size:15px}.google-button{color:var(--lightningcss-light,#1f1f1f)var(--lightningcss-dark,#e3e3e3);background:var(--lightningcss-light,#fff)var(--lightningcss-dark,#131314);border:1px solid var(--lightningcss-light,#747775)var(--lightningcss-dark,#8e918f);border-radius:12px;justify-content:center;align-items:center;gap:12px;min-height:46px;padding:10px 20px 10px 16px;font-size:15px;font-weight:500;text-decoration:none;display:inline-flex}.google-button svg{width:20px;height:20px}.google-button:hover{background:var(--lightningcss-light,#f8faf8)var(--lightningcss-dark,#1e1f20)}.landing-preview{justify-self:center;width:min(100%,22rem);transform:rotate(1.5deg)}.landing-preview .card{margin-top:0;box-shadow:0 24px 60px var(--lightningcss-light,#1b3a2a1f)var(--lightningcss-dark,#00000059)}.landing-preview .ring-wrap{width:200px}.preview-list{margin-top:4px}.preview-list .row{padding:0}.landing-section{padding-top:56px}.landing-section>h2,.landing-closing h2{letter-spacing:-.5px;margin:0;font-size:24px;font-weight:600}.feature-grid{gap:12px;margin-top:6px;display:grid}.feature{margin-top:12px}.feature h3{margin:14px 0 0;font-size:16px;font-weight:600}.feature p{color:var(--soft);margin:6px 0 0;font-size:14px;line-height:1.75}.privacy{margin-top:0;padding:26px 22px}.privacy h2{margin-top:14px;font-size:20px}.privacy ul{gap:14px;margin:18px 0 0;padding:0;list-style:none;display:grid}.privacy li{gap:10px;font-size:14px;line-height:1.75;display:flex}.privacy li svg{width:16px;height:16px;color:var(--green);flex:none;margin-top:4px}.landing-closing{text-align:center}.landing-closing .hint{max-width:26rem;margin:10px auto 22px;font-size:14px}.landing-footer{text-align:center;color:var(--soft);padding-top:56px;font-size:12px}@media (width>=760px){.landing-hero{grid-template-columns:1.15fr 1fr;padding-top:64px}.feature-grid{grid-template-columns:1fr 1fr}.landing-section{padding-top:80px}}.sync-notice{background:var(--tint);color:var(--soft);border-radius:12px;align-items:center;gap:8px;margin-bottom:16px;padding:8px 12px;font-size:12px;line-height:1.6;display:flex}.sync-notice span{flex:1}.sync-notice .text-button{min-height:32px;color:var(--green)}.toast{left:1rem;right:1rem;bottom:calc(var(--tabbar-h) + env(safe-area-inset-bottom) + .5rem);background:var(--green);max-width:28rem;color:var(--on-green);border-radius:14px;align-items:center;gap:.5rem;margin:0 auto;padding:.75rem 1rem;display:flex;position:fixed;box-shadow:0 8px 32px var(--lightningcss-light,#152c1912)var(--lightningcss-dark,#00000030)}.toast span{flex:1}.toast button{background:var(--on-green);color:var(--green);border-radius:10px;padding:.4rem .9rem;font-weight:600}.toast button.secondary{color:var(--on-green);background:0 0}@media (width<=360px){.app{padding-left:max(16px, env(safe-area-inset-left));padding-right:max(16px, env(safe-area-inset-right))}.card{padding:14px}h1{font-size:22px}}@media (pointer:coarse){.mode-switch button,.allocation-tools button{min-height:44px}}@media (prefers-reduced-motion:reduce){.ring,.progress-fill,.mode-switch:before,.metric-chevron,.category-list button{transition:none}}.hint .link-button{min-height:32px;font-size:inherit;vertical-align:middle;padding:0 4px;display:inline-flex}.card-title .switch{margin-left:auto}.switch{background:var(--track);cursor:pointer;border:0;border-radius:14px;flex:none;width:48px;height:28px;padding:0;transition:background .2s;position:relative}.switch:after{content:"";background:var(--panel);border-radius:50%;width:22px;height:22px;transition:transform .2s;position:absolute;top:3px;left:3px;box-shadow:0 1px 3px #00000040}.switch[aria-checked=true]{background:var(--green)}.switch[aria-checked=true]:after{transform:translate(20px)}.switch:disabled{opacity:.5;cursor:not-allowed}.switch:focus-visible{outline:2px solid var(--green);outline-offset:2px}@media (prefers-reduced-motion:reduce){.switch,.switch:after{transition:none}}.net-worth-label{align-items:center;gap:2px;display:flex}.info-button{width:32px;height:32px;color:var(--soft);place-items:center;margin:-8px 0;display:grid}.info-button[aria-expanded=true]{color:var(--green)}.info-button svg{width:15px;height:15px}.app-version{text-align:center;color:var(--soft);margin:28px 0 8px;font-size:12px}.about-list div:first-child{border-top:0;padding-top:0}.about-list div:last-child{padding-bottom:0}.unread-dot{background:var(--danger);vertical-align:middle;border-radius:50%;width:8px;height:8px;margin-left:6px;display:inline-block}.announcement-meta{color:var(--soft);align-items:center;gap:8px;font-size:12px;display:flex}.announcement-meta .badge{margin-top:0}.announcement-meta time{margin-left:auto}.announcement-maintenance,.announcement-new{color:var(--danger)}.announcement h2{margin-top:10px}.announcement-body{overflow-wrap:anywhere;font-size:14px;line-height:1.75}.announcement-body p,.announcement-body ul,.announcement-body ol{white-space:pre-line;margin:8px 0 0}.announcement-body ul,.announcement-body ol{padding-left:1.4em}.announcement-body h3,.announcement-body h4{margin:14px 0 0;font-size:15px}.announcement-body hr{border:0;border-top:1px solid var(--line);margin:12px 0}.announcement-body .spoiler:not(.open){background:var(--soft);color:#0000;cursor:pointer;border-radius:4px}.announcement-body .spoiler:not(.open) *{color:#0000;pointer-events:none}.announcement-body a{color:var(--green);text-decoration:underline}.announcement-body .atd-body{white-space:pre-line}.announcement-body .atd-body>:first-child{margin-top:0}.announcement-body blockquote{border-left:3px solid var(--line);color:var(--soft);margin:8px 0 0;padding:2px 0 2px 12px}.announcement-body code,.announcement-body kbd{background:var(--tint);border-radius:5px;padding:1px 5px;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.9em}.announcement-body kbd{border:1px solid var(--line);border-bottom-width:2px}.announcement-body .atd-code{background:var(--tint);white-space:pre;border-radius:10px;margin:8px 0 0;padding:10px 12px;overflow-x:auto}.announcement-body .atd-code code{background:0 0;padding:0}.announcement-body .atd-callout,.announcement-body .atd-card,.announcement-body .atd-details{border:1px solid var(--line);border-radius:12px;margin:10px 0 0;padding:10px 12px}.announcement-body .atd-callout>strong,.announcement-body .atd-card>strong{margin-bottom:4px;display:block}.announcement-body .atd-callout{border-left-width:4px}.atd-callout-note{border-left-color:var(--cat-1)!important}.atd-callout-tip{border-left-color:var(--cat-3)!important}.atd-callout-important{border-left-color:var(--cat-7)!important}.atd-callout-warning{border-left-color:var(--cat-4)!important}.atd-callout-caution{border-left-color:var(--danger)!important}.announcement-body .atd-details summary{cursor:pointer;font-weight:600}.announcement-body .atd-details[open] summary{margin-bottom:6px}.announcement-body .atd-table{margin:10px 0 0;overflow-x:auto}.announcement-body table{border-collapse:collapse;white-space:normal;font-size:13px}.announcement-body th,.announcement-body td{border:1px solid var(--line);text-align:left;vertical-align:top;padding:6px 10px}.announcement-body th{background:var(--tint)}.announcement-body .atd-tabs{margin:10px 0 0}.announcement-body .atd-tablist{flex-wrap:wrap;gap:6px;margin-bottom:8px;display:flex}.announcement-body .atd-tablist button{border:1px solid var(--line);min-height:36px;color:var(--soft);background:0 0;border-radius:999px;padding:4px 12px;font-size:13px}.announcement-body .atd-tablist button[aria-selected=true]{border-color:var(--green);background:var(--tint);color:var(--green)}.announcement-body .atd-img{max-width:100%;height:auto;margin:10px 0 0;display:block}.announcement-body .atd-img-center{margin-inline:auto}.announcement-body .atd-img-right{margin-left:auto}.announcement-body .atd-img-float-left{float:left;max-width:50%;margin:4px 12px 4px 0}.announcement-body .atd-img-float-right{float:right;max-width:50%;margin:4px 0 4px 12px}.announcement-body h3,.announcement-body h4,.announcement-body hr{clear:both}.announcement-body .atd-img-alt{color:var(--soft);font-size:13px}.announcement-body .atd-hex{align-items:center;gap:4px;display:inline-flex}.announcement-body .atd-hex-color{border:1px solid var(--line);border-radius:3px;width:.9em;height:.9em}.announcement-body .atd-bordered{border:1px solid;border-radius:4px;padding:0 4px}.announcement-body .atd-footnotes{border-top:1px solid var(--line);color:var(--soft);margin:14px 0 0;padding-top:8px;font-size:12px}.announcement-body .atd-fn{color:var(--soft)}.announcement-body mark{color:inherit;border-radius:3px;padding:0 2px}.atd-mark-yellow{background:var(--lightningcss-light,#fff1a8)var(--lightningcss-dark,#5c4f12)}.atd-mark-red{background:var(--lightningcss-light,#ffd8d2)var(--lightningcss-dark,#5c2620)}.atd-mark-green{background:var(--lightningcss-light,#d4f0d9)var(--lightningcss-dark,#1f4a2a)}.atd-mark-blue{background:var(--lightningcss-light,#d8e7ff)var(--lightningcss-dark,#1f3557)}.atd-mark-orange{background:var(--lightningcss-light,#ffe2c4)var(--lightningcss-dark,#5c3615)}.atd-mark-purple{background:var(--lightningcss-light,#e9ddff)var(--lightningcss-dark,#3d2c5c)}.atd-mark-gray{background:var(--lightningcss-light,#e6e9e6)var(--lightningcss-dark,#3a403c)}.atd-color-yellow{color:var(--lightningcss-light,#946800)var(--lightningcss-dark,#f2c94c)}.atd-color-red{color:var(--lightningcss-light,#c0392b)var(--lightningcss-dark,#ff8a7a)}.atd-color-green{color:var(--lightningcss-light,#2e7d4f)var(--lightningcss-dark,#7fd6a0)}.atd-color-blue{color:var(--lightningcss-light,#1f5fbf)var(--lightningcss-dark,#8ab4ff)}.atd-color-orange{color:var(--lightningcss-light,#bf5600)var(--lightningcss-dark,#ffb066)}.atd-color-purple{color:var(--lightningcss-light,#6b46c1)var(--lightningcss-dark,#c4a8ff)}.atd-color-gray{color:var(--lightningcss-light,#5f6b66)var(--lightningcss-dark,#aab8af)}.atd-border-yellow{border-color:var(--lightningcss-light,#946800)var(--lightningcss-dark,#f2c94c)!important}.atd-border-red{border-color:var(--lightningcss-light,#c0392b)var(--lightningcss-dark,#ff8a7a)!important}.atd-border-green{border-color:var(--lightningcss-light,#2e7d4f)var(--lightningcss-dark,#7fd6a0)!important}.atd-border-blue{border-color:var(--lightningcss-light,#1f5fbf)var(--lightningcss-dark,#8ab4ff)!important}.atd-border-orange{border-color:var(--lightningcss-light,#bf5600)var(--lightningcss-dark,#ffb066)!important}.atd-border-purple{border-color:var(--lightningcss-light,#6b46c1)var(--lightningcss-dark,#c4a8ff)!important}.atd-border-gray{border-color:var(--lightningcss-light,#5f6b66)var(--lightningcss-dark,#aab8af)!important}
