.tab-bar[data-v-934f8a31]{position:fixed;bottom:0;left:50%;transform:translate(-50%);width:100%;max-width:480px;display:flex;background:var(--card);border-top:1px solid var(--border);padding:6px 0 calc(6px + env(safe-area-inset-bottom));z-index:100}.tab-item[data-v-934f8a31]{flex:1;display:flex;flex-direction:column;align-items:center;gap:2px;color:var(--muted);text-decoration:none;font-size:12px;padding:4px 0}.tab-item .tab-icon[data-v-934f8a31]{font-size:22px;line-height:1}.tab-item.active[data-v-934f8a31]{color:var(--primary);font-weight:600}.gate[data-v-7ddf87b7]{min-height:100dvh;display:flex;align-items:center;justify-content:center;padding:24px}.gate-box[data-v-7ddf87b7]{width:100%;max-width:320px;display:flex;flex-direction:column;align-items:center;gap:14px;text-align:center}.gate-icon[data-v-7ddf87b7]{font-size:44px}.gate-tip[data-v-7ddf87b7]{font-size:13px;color:var(--text-light);line-height:1.6}.gate-box input[data-v-7ddf87b7]{width:100%;border:1px solid var(--border);border-radius:10px;padding:12px;outline:none;background:var(--card-soft);text-align:center}.gate-box input[data-v-7ddf87b7]:focus{border-color:var(--primary)}.btn-primary.full[data-v-7ddf87b7]{width:100%}.forgot[data-v-7ddf87b7]{color:var(--text-light);font-size:13px;text-decoration:underline}.gate-err[data-v-7ddf87b7]{color:var(--danger);font-size:13px;animation:shake-7ddf87b7 .35s}@keyframes shake-7ddf87b7{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.pattern-lock[data-v-166617fb]{position:relative;width:300px;height:300px;max-width:86vw;max-height:86vw;touch-action:none;user-select:none;-webkit-user-select:none}.pl-svg[data-v-166617fb]{position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;pointer-events:none}.pl-dot[data-v-166617fb]{position:absolute;width:58px;height:58px;border-radius:50%;background:var(--card-soft);border:2px solid var(--border);transform:translate(-50%,-50%);display:flex;align-items:center;justify-content:center;pointer-events:none}.pl-dot-core[data-v-166617fb]{width:16px;height:16px;border-radius:50%;background:transparent;transition:background .12s}.pl-dot.active[data-v-166617fb]{border-color:var(--primary);background:var(--tint)}.pl-dot.active .pl-dot-core[data-v-166617fb]{background:var(--primary)}.lock-screen[data-v-0f0ea51f]{position:fixed;top:0;right:0;bottom:0;left:0;background:var(--bg);display:flex;align-items:center;justify-content:center;z-index:300;padding:24px}.ls-box[data-v-0f0ea51f]{display:flex;flex-direction:column;align-items:center;gap:14px}.ls-icon[data-v-0f0ea51f]{font-size:44px}.ls-title[data-v-0f0ea51f]{font-size:20px}.ls-status[data-v-0f0ea51f]{font-size:13px;color:var(--text-light);min-height:18px}.ls-status.error[data-v-0f0ea51f]{color:var(--danger);animation:shake-0f0ea51f .35s}@keyframes shake-0f0ea51f{0%,to{transform:translate(0)}25%{transform:translate(-6px)}75%{transform:translate(6px)}}.ls-cooldown[data-v-0f0ea51f]{font-size:13px;color:var(--danger);padding:10px 16px;border-radius:10px;background:color-mix(in srgb,var(--danger) 10%,transparent)}.ls-cancel[data-v-0f0ea51f]{color:var(--text-light);font-size:14px;padding:8px 16px}.ls-forgot[data-v-0f0ea51f]{color:var(--text-light);font-size:13px;text-decoration:underline;padding:8px}.app-shell[data-v-54861d1e]{display:flex;flex-direction:column;min-height:100dvh;max-width:480px;margin:0 auto;background:var(--bg);box-shadow:0 0 24px #0000000f}.page-container[data-v-54861d1e]{flex:1;padding-bottom:76px}:root,[data-accent=green]{--primary: #10b981;--primary-dark: #059669;--hero-1: #059669;--hero-2: #10b981}[data-accent=blue]{--primary: #3b82f6;--primary-dark: #2563eb;--hero-1: #1d4ed8;--hero-2: #3b82f6}[data-accent=orange]{--primary: #f97316;--primary-dark: #ea580c;--hero-1: #c2410c;--hero-2: #f97316}[data-accent=purple]{--primary: #8b5cf6;--primary-dark: #7c3aed;--hero-1: #6d28d9;--hero-2: #8b5cf6}[data-accent=pink]{--primary: #ec4899;--primary-dark: #db2777;--hero-1: #be185d;--hero-2: #ec4899}:root{--danger: #ef4444;--text: #1f2937;--text-light: #6b7280;--bg: #f3f4f6;--card: #ffffff;--card-soft: #f9fafb;--border: #e5e7eb;--divider: #f3f4f6;--muted: #9ca3af;--radius: 14px;--tint: color-mix(in srgb, var(--primary) 10%, transparent);--tint-strong: color-mix(in srgb, var(--primary) 16%, transparent)}[data-theme=dark]{--danger: #f87171;--text: #f1f5f9;--text-light: #94a3b8;--bg: #0f172a;--card: #1e293b;--card-soft: #253348;--border: #334155;--divider: #2c3a52;--muted: #64748b;--hero-1: #065f46;--hero-2: #0d9488;color-scheme:dark}[data-theme=dark][data-accent=blue]{--hero-1: #1e3a8a;--hero-2: #2563eb}[data-theme=dark][data-accent=orange]{--hero-1: #7c2d12;--hero-2: #ea580c}[data-theme=dark][data-accent=purple]{--hero-1: #4c1d95;--hero-2: #7c3aed}[data-theme=dark][data-accent=pink]{--hero-1: #831843;--hero-2: #db2777}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,sans-serif;background:var(--bg);color:var(--text);-webkit-font-smoothing:antialiased;-webkit-tap-highlight-color:transparent}button{font-family:inherit;cursor:pointer;border:none;background:none;color:inherit}input,select,textarea{font-family:inherit;font-size:16px;color:var(--text)}.card{background:var(--card);border-radius:var(--radius);padding:16px;box-shadow:0 1px 3px #0000000f}.btn-primary{background:var(--primary);color:#fff;border-radius:12px;padding:13px 24px;font-size:16px;font-weight:600;transition:opacity .15s}.btn-primary:disabled{opacity:.45;cursor:not-allowed}.btn-ghost{background:var(--tint);color:var(--primary-dark);border-radius:12px;padding:10px 16px;font-size:14px;font-weight:600}[data-theme=dark] .btn-ghost{color:var(--primary)}.page-header{display:flex;align-items:center;justify-content:space-between;padding:16px 4px 12px}.page-header h2{font-size:20px}.section-title{font-size:14px;color:var(--text-light);margin:18px 4px 10px;font-weight:600}.empty{text-align:center;color:var(--text-light);padding:40px 0;font-size:14px}.money{font-variant-numeric:tabular-nums}.mask{position:fixed;top:0;right:0;bottom:0;left:0;background:#00000073;display:flex;align-items:flex-end;justify-content:center;z-index:200}.sheet{width:100%;max-width:480px;background:var(--card);border-radius:20px 20px 0 0;padding:20px 20px calc(20px + env(safe-area-inset-bottom));animation:slide-up .2s ease-out;color:var(--text)}@keyframes slide-up{0%{transform:translateY(40px);opacity:0}to{transform:translateY(0);opacity:1}}
