.bottom-nav[data-v-fd8e675e]{z-index:10000000;height:calc(76px + var(--safe-bottom));padding:7px 8px var(--safe-bottom);background:var(--color-surface);box-shadow:var(--shadow-nav);grid-template-columns:repeat(5,minmax(0,1fr));display:grid;position:fixed;bottom:0;left:0;right:0}.nav-item[data-v-fd8e675e]{color:var(--color-text-secondary);flex-direction:column;grid-column:span 1;justify-content:center;align-items:center;gap:4px;font-size:12px;display:flex}.nav-item.active[data-v-fd8e675e]{color:var(--color-primary);font-weight:600}.record-action[data-v-fd8e675e]{color:var(--color-text-secondary);flex-direction:column;align-items:center;gap:8px;font-size:12px;display:flex;position:absolute;top:-18px;left:50%;transform:translate(-50%)}.record-icon[data-v-fd8e675e]{border:5px solid var(--color-surface);background:var(--color-primary);color:#fff;border-radius:50%;place-items:center;width:56px;height:56px;display:grid;box-shadow:0 8px 20px #1677ff47}.toast[data-v-cde5b2d1]{z-index:100;color:#fff;text-align:center;background:#000000ad;border-radius:12px;align-items:center;width:max-content;max-width:calc(100% - 64px);padding:12px 20px;font-size:14px;line-height:1.5;display:flex;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.toast-enter-active[data-v-cde5b2d1]{transition:opacity .18s,transform .18s}.toast-leave-active[data-v-cde5b2d1]{transition:opacity .3s,transform .3s}.toast-enter-from[data-v-cde5b2d1],.toast-leave-to[data-v-cde5b2d1]{opacity:0;transform:translate(-50%,-50%)scale(.96)}@media (prefers-reduced-motion:reduce){.toast-enter-active[data-v-cde5b2d1],.toast-leave-active[data-v-cde5b2d1]{transition:none}}.app-shell[data-v-318160b1]{min-height:100dvh}.top-bar[data-v-318160b1]{z-index:10;min-height:calc(54px + var(--safe-top));padding:var(--safe-top) var(--space-4) 14px;border-bottom:1px solid var(--color-border);-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px);background:#fffffff0;grid-template-columns:52px 1fr 52px;place-items:end center;display:grid;position:sticky;top:0}.back-button[data-v-318160b1]{width:48px;height:48px;color:var(--color-text);background:0 0;border:0;border-radius:50%;place-items:center;display:grid}.back-placeholder[data-v-318160b1]{width:48px}.topbar-actions[data-v-318160b1]{align-self:end;width:100%;min-height:48px;position:relative}.topbar-center[data-v-318160b1]{justify-content:center;align-self:end;align-items:center;width:100%;min-height:48px;display:flex}.top-bar h1[data-v-318160b1]{margin:0;font-size:18px;font-weight:700}.state-screen[data-v-318160b1]{min-height:calc(100dvh - 56px);color:var(--color-text-secondary);text-align:center;align-content:center;place-items:center;padding:24px;display:grid}.state-screen h2[data-v-318160b1]{color:var(--color-text);margin:14px 0 4px}.state-screen p[data-v-318160b1]{margin:4px 0 18px}.spinner[data-v-318160b1]{color:var(--color-primary);animation:1s linear infinite spin-318160b1}@keyframes spin-318160b1{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.spinner[data-v-318160b1]{animation:none}}:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--color-primary:#1677ff;--color-primary-soft:#eaf3ff;--color-accent:#ff7a45;--color-income:#20a162;--color-expense:#ff7a45;--color-bg:#f5f7fb;--color-surface:#fff;--color-surface-muted:#f4f5f7;--color-text:#17233d;--color-text-secondary:#657085;--color-border:#e7eaf0;--color-danger:#e5484d;--shadow-card:0 8px 24px #1f2d3d14;--shadow-nav:0 -4px 18px #1f2d3d14;--radius-sm:10px;--radius-md:16px;--radius-lg:22px;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--safe-top:env(safe-area-inset-top,0px);--safe-bottom:env(safe-area-inset-bottom,0px);font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif}*{box-sizing:border-box}html,body,#app{width:100%;min-height:100%;margin:0}body{background:var(--color-bg);min-width:320px;color:var(--color-text);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent;font-size:16px;line-height:1.5}button,input,textarea,select{font:inherit}button{cursor:pointer;touch-action:manipulation}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline-offset:2px;outline:3px solid #1677ff59}.button{border:0;border-radius:14px;justify-content:center;align-items:center;gap:8px;min-height:48px;padding:0 18px;font-weight:700;display:inline-flex}.button.primary{background:var(--color-primary);color:#fff}.button.secondary{border:1px solid var(--color-border);background:var(--color-surface);color:var(--color-text)}.button.danger{color:var(--color-danger);background:#fff0f0}.button:disabled{cursor:not-allowed;opacity:.45}.field{border:1px solid var(--color-border);background:var(--color-surface);width:100%;min-height:48px;color:var(--color-text);border-radius:12px;outline:none;padding:11px 14px}.field:focus{border-color:var(--color-primary);box-shadow:0 0 0 3px #1677ff1f}.field-label{color:var(--color-text-secondary);margin-bottom:7px;font-size:14px;font-weight:600;display:block}.field-error{color:var(--color-danger);margin:6px 0 0;font-size:13px}.segmented{background:var(--color-surface-muted);border-radius:14px;grid-auto-columns:1fr;grid-auto-flow:column;gap:4px;padding:4px;display:grid}.segmented button{min-height:42px;color:var(--color-text-secondary);background:0 0;border:0;border-radius:11px;font-weight:600}.segmented button.active{background:var(--color-surface);color:var(--color-primary);box-shadow:0 2px 8px #0f172a14}.money{font-variant-numeric:tabular-nums}.income{color:var(--color-income)}.expense{color:var(--color-expense)}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important}}a{color:inherit;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}.card{background:var(--color-surface);border-radius:var(--radius-md);box-shadow:var(--shadow-card);border:1px solid #e7eaf0cc}.page{width:min(100%,720px);padding:var(--space-4) var(--space-4) calc(104px + var(--safe-bottom));margin:0 auto}
