.root[data-v-bbaebe1e]{position:fixed;inset:0;z-index:200;display:flex;justify-content:center;align-items:flex-end}.backdrop[data-v-bbaebe1e]{position:absolute;inset:0;background:#00000061}.stack[data-v-bbaebe1e]{position:relative;width:100%;max-width:var(--app-max);padding:0 10px calc(var(--safe-bottom) + 10px);display:flex;flex-direction:column;gap:8px;transition:transform .45s var(--ease)}.group[data-v-bbaebe1e]{overflow:hidden;border-radius:14px;background:var(--bg-elevated)}.head[data-v-bbaebe1e]{padding:16px;text-align:center;font-size:13px;color:var(--label-2);border-bottom:.5px solid var(--separator)}.head strong[data-v-bbaebe1e]{display:block;font-size:14px;color:var(--label-2)}.head p[data-v-bbaebe1e]{margin:4px 0 0}.act[data-v-bbaebe1e],.cancel[data-v-bbaebe1e]{width:100%;height:56px;font-size:19px;color:var(--blue)}.act.danger[data-v-bbaebe1e]{color:var(--red)}.cancel[data-v-bbaebe1e]{font-weight:600}.confirm-enter-active .backdrop[data-v-bbaebe1e],.confirm-leave-active .backdrop[data-v-bbaebe1e]{transition:opacity .3s ease}.confirm-enter-from .backdrop[data-v-bbaebe1e],.confirm-leave-to .backdrop[data-v-bbaebe1e]{opacity:0}.confirm-enter-from .stack[data-v-bbaebe1e],.confirm-leave-to .stack[data-v-bbaebe1e]{transform:translateY(110%)}@media(min-width:900px){.root[data-v-bbaebe1e]{align-items:center}.stack[data-v-bbaebe1e]{max-width:380px;padding-bottom:0}.confirm-enter-from .stack[data-v-bbaebe1e],.confirm-leave-to .stack[data-v-bbaebe1e]{opacity:0;transform:scale(.94)}}.side[data-v-d1477c5f]{position:fixed;top:0;bottom:0;left:0;z-index:40;display:none;flex-direction:column;width:240px;padding:22px 14px 16px;background:var(--bg-elevated);border-right:.5px solid var(--separator)}@media(min-width:900px){.side[data-v-d1477c5f]{display:flex}}.brand[data-v-d1477c5f]{display:flex;align-items:center;gap:10px;padding:0 8px 22px;font-size:21px;letter-spacing:-.02em}.add[data-v-d1477c5f]{display:flex;align-items:center;justify-content:center;gap:6px;height:44px;margin-bottom:18px;border-radius:12px;color:#fff;font-size:16px;font-weight:600;background:linear-gradient(135deg,#5ac8fa 0%,var(--blue) 55%,var(--indigo) 100%);box-shadow:0 6px 16px #007aff59}nav[data-v-d1477c5f]{display:flex;flex-direction:column;gap:2px}.nav-item[data-v-d1477c5f]{display:flex;align-items:center;gap:12px;height:42px;padding:0 12px;border-radius:10px;color:var(--label-2);font-size:16px;font-weight:500;transition:background .2s ease,color .2s ease,transform .25s var(--ease)}.nav-item[data-v-d1477c5f]:hover{background:var(--bg-fill)}.nav-item[data-v-d1477c5f]:active{transform:scale(.97)}.nav-item.active[data-v-d1477c5f]{color:var(--blue);background:color-mix(in srgb,var(--blue) 12%,transparent)}.foot[data-v-d1477c5f]{display:flex;align-items:center;gap:6px;margin-top:auto;padding-top:12px;border-top:.5px solid var(--separator)}.user[data-v-d1477c5f]{flex:1;min-width:0;display:flex;align-items:center;gap:10px;padding:8px;border-radius:10px;transition:background .2s ease}.user[data-v-d1477c5f]:hover,.user.active[data-v-d1477c5f]{background:var(--bg-fill)}.avatar[data-v-d1477c5f]{flex:none;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:50%;color:#fff;font-weight:700;background:linear-gradient(135deg,#5ac8fa,#5856d6)}.user b[data-v-d1477c5f]{display:block;font-size:15px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.user small[data-v-d1477c5f]{color:var(--label-2);font-size:12px}.out[data-v-d1477c5f]{flex:none;display:flex;align-items:center;justify-content:center;width:36px;height:36px;border-radius:10px;color:var(--label-2)}.out[data-v-d1477c5f]:hover{background:var(--bg-fill);color:var(--red)}.toast-wrap[data-v-8432bff1]{position:fixed;top:calc(var(--safe-top) + 12px);left:0;right:0;z-index:300;display:flex;flex-direction:column;align-items:center;gap:8px;pointer-events:none}.toast[data-v-8432bff1]{display:flex;align-items:center;gap:8px;max-width:calc(100% - 32px);padding:10px 16px;border-radius:999px;background:var(--blur-bg);color:var(--label);font-size:15px;font-weight:500;box-shadow:0 8px 30px #0000002e;backdrop-filter:saturate(180%) blur(20px);-webkit-backdrop-filter:saturate(180%) blur(20px)}.toast.success svg[data-v-8432bff1]{color:var(--green)}.toast.error svg[data-v-8432bff1]{color:var(--red)}.toast-enter-active[data-v-8432bff1],.toast-leave-active[data-v-8432bff1]{transition:transform .5s var(--spring),opacity .3s ease}.toast-enter-from[data-v-8432bff1],.toast-leave-to[data-v-8432bff1]{opacity:0;transform:translateY(-24px) scale(.9)}.brand[data-v-d427156e]{display:inline-flex;flex:none;align-items:center;justify-content:center;overflow:hidden;vertical-align:middle;border-radius:24%;box-shadow:inset 0 0 0 .5px #00000024}.brand img[data-v-d427156e]{width:100%;height:100%;object-fit:contain}.brand b[data-v-d427156e]{color:#fff;font-weight:700;line-height:1;letter-spacing:-.04em;white-space:nowrap}.emoji[data-v-d427156e]{line-height:1}.chip-row[data-v-4d2334fb]{position:relative}.nav[data-v-4d2334fb]{display:none;position:absolute;top:2px;z-index:2;width:34px;height:38px;align-items:center;justify-content:center;color:var(--label)}.nav.left[data-v-4d2334fb]{left:-2px;padding-right:6px;justify-content:flex-start;background:linear-gradient(90deg,var(--bg) 55%,transparent)}.nav.right[data-v-4d2334fb]{right:-2px;padding-left:6px;justify-content:flex-end;background:linear-gradient(270deg,var(--bg) 55%,transparent)}.nav[data-v-4d2334fb] svg{padding:5px;box-sizing:content-box;width:16px;height:16px;margin:-5px;border-radius:50%;background:var(--bg-elevated);box-shadow:0 1px 6px #0000002e}@media(hover:hover)and (pointer:fine){.nav[data-v-4d2334fb]{display:flex}}.sheet-root[data-v-473836cb]{position:fixed;inset:0;z-index:100;display:flex;justify-content:center;align-items:flex-end}.backdrop[data-v-473836cb]{position:absolute;inset:0;background:#00000061;backdrop-filter:blur(2px);-webkit-backdrop-filter:blur(2px)}.panel[data-v-473836cb]{position:relative;display:flex;flex-direction:column;width:100%;max-width:var(--app-max);max-height:94dvh;background:var(--bg);border-radius:26px 26px 0 0;padding-bottom:var(--safe-bottom);box-shadow:0 -10px 40px #0000002e;transition:transform .5s var(--ease);will-change:transform}.panel.dragging[data-v-473836cb]{transition:none}.grab[data-v-473836cb]{flex:none;display:flex;justify-content:center;padding:8px 0 6px;touch-action:none;cursor:grab}.grab i[data-v-473836cb]{width:38px;height:5px;border-radius:3px;background:var(--label-3)}.sheet-enter-active .backdrop[data-v-473836cb],.sheet-leave-active .backdrop[data-v-473836cb]{transition:opacity .4s ease}.sheet-enter-from .backdrop[data-v-473836cb],.sheet-leave-to .backdrop[data-v-473836cb]{opacity:0}.sheet-enter-from .panel[data-v-473836cb],.sheet-leave-to .panel[data-v-473836cb]{transform:translateY(100%)}.sheet-leave-active .panel[data-v-473836cb]{transition-duration:.38s}@media(min-width:900px){.sheet-root[data-v-473836cb]{align-items:center}.panel[data-v-473836cb]{max-width:520px;height:auto!important;max-height:min(88dvh,860px);border-radius:22px;padding-bottom:0;box-shadow:0 24px 80px #0000004d;transition:transform .4s var(--ease),opacity .3s ease}.grab[data-v-473836cb]{display:none}.panel[data-v-473836cb]:before{content:"";flex:none;height:12px}.sheet-enter-from .panel[data-v-473836cb],.sheet-leave-to .panel[data-v-473836cb]{opacity:0;transform:translateY(18px) scale(.96)}}.top[data-v-4b005ea7]{margin-top:14px}.empty-card[data-v-4b005ea7]{padding:20px 16px;color:var(--label-2);text-align:center}.sum[data-v-4b005ea7]{margin-top:18px;padding:16px}.sum small[data-v-4b005ea7]{display:block;color:var(--label-2);font-size:13px}.big b[data-v-4b005ea7]{display:block;font-size:32px;letter-spacing:-.02em}.grid[data-v-4b005ea7]{display:grid;grid-template-columns:1fr 1fr;gap:8px;margin-top:12px;padding-top:12px;border-top:.5px solid var(--separator)}.grid span[data-v-4b005ea7]{font-size:18px;font-weight:600}.table[data-v-4b005ea7]{margin-top:14px;padding:6px 12px}.tr[data-v-4b005ea7]{display:grid;grid-template-columns:28px 1fr 1fr 1fr 1fr;gap:6px;padding:8px 0;font-size:13.5px;text-align:right}.tr+.tr[data-v-4b005ea7]{border-top:.5px solid var(--separator)}.tr span[data-v-4b005ea7]:first-child,.tr span[data-v-4b005ea7]:nth-child(2){text-align:left}.tr.head[data-v-4b005ea7]{color:var(--label-2);font-size:12px}.tr.done[data-v-4b005ea7]{opacity:.4}.more[data-v-4b005ea7]{width:100%;padding:10px 0 8px;color:var(--blue);font-size:14px;font-weight:500}.gap[data-v-4b005ea7]{height:20px}.pad[data-v-8acd78ff]{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;padding:0 16px}.key[data-v-8acd78ff]{display:flex;align-items:center;justify-content:center;height:46px;border-radius:12px;background:var(--bg-elevated);font-size:24px;font-weight:500;box-shadow:0 1px #0000000f;transition:transform .25s var(--ease),background .2s ease;-webkit-user-select:none;user-select:none}.key[data-v-8acd78ff]:active{transform:scale(.94);background:var(--bg-fill-strong);transition-duration:.05s}@media(min-width:900px)and (hover:hover)and (pointer:fine){.pad[data-v-8acd78ff]{display:none}}.seg[data-v-63b17991]{position:relative;display:flex;padding:2px;border-radius:10px;background:var(--bg-fill)}.thumb[data-v-63b17991]{position:absolute;top:2px;bottom:2px;left:2px;border-radius:8px;background:var(--bg-elevated);box-shadow:0 2px 6px #00000024;transition:transform .4s var(--ease)}.item[data-v-63b17991]{position:relative;flex:1;height:32px;font-size:14px;font-weight:500;color:var(--label-2);transition:color .2s ease}.item.on[data-v-63b17991]{color:var(--label);font-weight:600}.del[data-v-2f2f04b6]{color:var(--red)!important}.seg-wrap[data-v-2f2f04b6]{width:210px}.amount-box[data-v-2f2f04b6]{display:flex;align-items:baseline;justify-content:center;gap:4px;padding:14px 0 6px}.cur[data-v-2f2f04b6]{font-size:26px;font-weight:600;color:var(--label-2)}.num[data-v-2f2f04b6]{font-size:48px;font-weight:700;line-height:1.1;transition:color .3s ease}.grid[data-v-2f2f04b6]{display:grid;grid-template-columns:repeat(5,1fr);gap:6px 4px;margin-top:6px}.cat[data-v-2f2f04b6]{display:flex;flex-direction:column;align-items:center;gap:4px;padding:6px 0;border-radius:14px;transition:background .25s ease,transform .3s var(--spring)}.cat[data-v-2f2f04b6]:active{transform:scale(.92)}.cat.on[data-v-2f2f04b6]{background:var(--bg-fill)}.dot[data-v-2f2f04b6]{display:flex;align-items:center;justify-content:center;width:44px;height:44px;border-radius:15px;font-size:22px;transition:transform .4s var(--spring),box-shadow .3s ease}.cat.on .dot[data-v-2f2f04b6]{transform:scale(1.12);box-shadow:0 6px 14px #00000038}.cat small[data-v-2f2f04b6]{font-size:11.5px;color:var(--label-2);max-width:100%;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.meta[data-v-2f2f04b6]{margin-top:16px}.inst-entry[data-v-2f2f04b6]{display:flex;align-items:center;gap:10px;width:100%;height:46px;margin-top:12px;padding:0 16px;border-radius:14px;background:color-mix(in srgb,var(--indigo) 12%,transparent);color:var(--indigo);font-size:15.5px;font-weight:600}.inst-entry span[data-v-2f2f04b6]{flex:1;text-align:left}.meta .field[data-v-2f2f04b6]{color:var(--label-2)}.meta input[data-v-2f2f04b6]{color:var(--label)}.bottom[data-v-2f2f04b6]{flex:none;padding-top:8px;border-top:.5px solid var(--separator)}.save[data-v-2f2f04b6]{padding:10px 16px 12px}@media(min-width:900px)and (hover:hover)and (pointer:fine){.bottom[data-v-2f2f04b6]{padding-top:0}}:root{--blue: #007aff;--green: #34c759;--red: #ff3b30;--orange: #ff9500;--indigo: #5856d6;--bg: #f2f2f7;--bg-elevated: #ffffff;--bg-fill: rgba(120, 120, 128, .12);--bg-fill-strong: rgba(120, 120, 128, .2);--label: #000000;--label-2: rgba(60, 60, 67, .62);--label-3: rgba(60, 60, 67, .3);--separator: rgba(60, 60, 67, .16);--blur-bg: rgba(249, 249, 251, .78);--shadow: 0 1px 2px rgba(0, 0, 0, .04), 0 6px 20px rgba(0, 0, 0, .06);--radius: 14px;--radius-lg: 22px;--ease: cubic-bezier(.32, .72, 0, 1);--spring: cubic-bezier(.34, 1.4, .64, 1);--tabbar-h: 58px;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--app-max: 520px;--font: -apple-system, BlinkMacSystemFont, "SF Pro Text", "PingFang TC", "Noto Sans TC", "Microsoft JhengHei", "Helvetica Neue", Arial, sans-serif}@media(prefers-color-scheme:dark){:root{--blue: #0a84ff;--green: #30d158;--red: #ff453a;--orange: #ff9f0a;--indigo: #5e5ce6;--bg: #000000;--bg-elevated: #1c1c1e;--bg-fill: rgba(120, 120, 128, .24);--bg-fill-strong: rgba(120, 120, 128, .36);--label: #ffffff;--label-2: rgba(235, 235, 245, .62);--label-3: rgba(235, 235, 245, .3);--separator: rgba(84, 84, 88, .55);--blur-bg: rgba(18, 18, 20, .78);--shadow: 0 1px 2px rgba(0, 0, 0, .4), 0 6px 20px rgba(0, 0, 0, .35)}}*,*:before,*:after{box-sizing:border-box;-webkit-tap-highlight-color:transparent}html,body{margin:0;height:100%;background:var(--bg);color:var(--label);font-family:var(--font);font-size:16px;line-height:1.4;-webkit-font-smoothing:antialiased;overscroll-behavior:none}#app{position:relative;height:100dvh;max-width:var(--app-max);margin:0 auto;overflow:hidden;background:var(--bg)}@media(min-width:560px){body{background:color-mix(in srgb,var(--bg) 88%,#808080)}#app{box-shadow:0 0 0 1px var(--separator),0 20px 60px #00000026}}button,input,select,textarea{font:inherit;color:inherit}button{border:0;padding:0;background:none;cursor:pointer;touch-action:manipulation}input,textarea{border:0;outline:0;background:transparent;width:100%}input::placeholder{color:var(--label-3)}a{color:inherit;text-decoration:none}.screen{position:absolute;inset:0;overflow-y:auto;overflow-x:hidden;background:var(--bg);-webkit-overflow-scrolling:touch;scrollbar-width:none}.screen::-webkit-scrollbar{display:none}.screen.with-tab{padding-bottom:calc(var(--tabbar-h) + var(--safe-bottom) + 24px)}.screen.plain-bottom{padding-bottom:calc(var(--safe-bottom) + 32px)}.content{padding:0 16px}.section-title{margin:24px 16px 8px;font-size:13px;font-weight:600;letter-spacing:.02em;color:var(--label-2);text-transform:uppercase}.section-title.row{display:flex;align-items:center;justify-content:space-between;text-transform:none}.link-btn{color:var(--blue);font-size:15px;font-weight:500}.card{background:var(--bg-elevated);border-radius:var(--radius-lg);box-shadow:var(--shadow)}.pressable{transition:transform .28s var(--ease),opacity .2s ease}.pressable:active{transform:scale(.97);opacity:.85;transition-duration:.08s}.btn-primary{display:flex;align-items:center;justify-content:center;gap:8px;width:100%;height:52px;border-radius:16px;background:var(--blue);color:#fff;font-size:17px;font-weight:600;transition:transform .28s var(--ease),opacity .2s ease,background .2s ease}.btn-primary:active{transform:scale(.97);opacity:.88;transition-duration:.08s}.btn-primary:disabled{opacity:.35;pointer-events:none}.btn-danger{width:100%;height:50px;border-radius:16px;background:var(--bg-elevated);color:var(--red);font-size:17px;font-weight:500}.amount{font-variant-numeric:tabular-nums;letter-spacing:-.01em}.income{color:var(--green)}.expense{color:var(--red)}.spinner{width:18px;height:18px;border-radius:50%;border:2.5px solid rgba(255,255,255,.4);border-top-color:#fff;animation:spin .7s linear infinite}@keyframes spin{to{transform:rotate(360deg)}}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.01ms!important;transition-duration:.01ms!important}}@media(min-width:900px){#app{max-width:none;margin:0;box-shadow:none}body.has-side #app{margin:0 0 0 240px}.screen>:not(.page-header){width:min(880px,100%);margin-left:auto;margin-right:auto}.screen .section-title{padding:0 16px}.screen.with-tab{padding-bottom:48px}.row:hover,.pressable-row:hover{background:var(--bg-fill)}}.push-enter-active,.push-leave-active,.pop-enter-active,.pop-leave-active{transition:transform .42s var(--ease),opacity .42s var(--ease);will-change:transform}.push-enter-active,.pop-leave-active{z-index:2;box-shadow:-8px 0 30px #0000001f}.push-leave-active,.pop-enter-active{z-index:1}.push-enter-from,.pop-leave-to{transform:translate(100%)}.push-leave-to,.pop-enter-from{transform:translate(-28%);opacity:.6}.fade-enter-active,.fade-leave-active{transition:opacity .22s ease}.fade-enter-from,.fade-leave-to{opacity:0}.list-enter-active{transition:opacity .35s var(--ease),transform .35s var(--ease)}.list-leave-active{position:absolute;width:100%;transition:opacity .2s ease,transform .2s ease}.list-move{transition:transform .35s var(--ease)}.list-enter-from{opacity:0;transform:translateY(10px)}.list-leave-to{opacity:0;transform:translate(-16px)}.rise-enter-active{transition:opacity .5s var(--ease),transform .5s var(--ease)}.rise-enter-from{opacity:0;transform:translateY(14px)}.sheet-head{flex:none;display:grid;grid-template-columns:1fr auto 1fr;align-items:center;padding:2px 16px 10px}.sheet-head .title{font-size:17px;font-weight:600}.sheet-head .l{justify-self:start;color:var(--blue);font-size:17px}.sheet-head .r{justify-self:end;color:var(--blue);font-size:17px;font-weight:600}.sheet-head .r:disabled{color:var(--label-3);pointer-events:none}.sheet-body{flex:1;min-height:0;overflow-y:auto;padding:4px 16px 20px;scrollbar-width:none}.sheet-body::-webkit-scrollbar{display:none}.field-label{margin:18px 4px 8px;font-size:13px;font-weight:600;color:var(--label-2)}.field{display:flex;align-items:center;gap:12px;min-height:52px;padding:0 16px;border-radius:var(--radius);background:var(--bg-elevated)}.field input{flex:1;height:52px;font-size:17px}.field .prefix{color:var(--label-2);font-size:17px}.field-group{overflow:hidden;border-radius:var(--radius);background:var(--bg-elevated)}.field-group .field{border-radius:0}.field-group .field+.field{border-top:.5px solid var(--separator)}.chips{display:flex;gap:8px;overflow-x:auto;padding:2px 2px 6px;margin:0 -2px;scrollbar-width:none}.chips::-webkit-scrollbar{display:none}.chip{flex:none;display:flex;align-items:center;gap:6px;height:38px;padding:0 14px;border-radius:999px;background:var(--bg-elevated);font-size:15px;font-weight:500;box-shadow:inset 0 0 0 1.5px transparent;transition:box-shadow .25s ease,background .25s ease,transform .3s var(--spring),color .25s ease}.chip:active{transform:scale(.94)}.chip.on{background:color-mix(in srgb,var(--blue) 14%,var(--bg-elevated));color:var(--blue);box-shadow:inset 0 0 0 1.5px var(--blue)}.danger-zone{margin-top:28px}.hint{margin:8px 6px 0;font-size:13px;color:var(--label-2)}.error-text{color:var(--red)}.divided>*{position:relative}.divided>*+*:before{content:"";position:absolute;top:0;left:66px;right:0;border-top:.5px solid var(--separator)}.round-btn{display:flex;align-items:center;justify-content:center;width:34px;height:34px;border-radius:50%;background:var(--bg-fill);color:var(--blue)}.btn-tonal{width:100%;height:50px;border-radius:16px;background:var(--bg-elevated);color:var(--blue);font-size:17px;font-weight:500}
