@keyframes viewFadeIn{0%{opacity:0;transform:translateY(6px);filter:blur(4px)}to{opacity:1;transform:translateY(0);filter:blur(0)}}.view-transition{animation:viewFadeIn .5s cubic-bezier(.2,.8,.2,1)}:root{--bg-main: #020617;--bg-panel: #0f172a;--bg-card: #1e293b;--bg-input: #020617;--text-main: #f8fafc;--text-subtle: #94a3b8;--text-muted: #64748b;--accent: #38bdf8;--accent-glow: rgba(56, 189, 248, .2);--success: #10b981;--danger: #ef4444;--border-color: #1e293b;--border-light: #334155;--border-glass: rgba(255, 255, 255, .05);--desk-header-bg: #0f172a;--desk-subheader-bg: #15803d;--desk-header-text: #f8fafc;--desk-subheader-text: #f0fdf4}[data-theme=light]{--bg-main: #f8fafc;--bg-panel: #ffffff;--bg-card: #ffffff;--bg-input: #f8fafc;--text-main: #0f172a;--text-subtle: #475569;--text-muted: #64748b;--accent: #0ea5e9;--accent-glow: rgba(14, 165, 233, .1);--success: #059669;--danger: #dc2626;--border-color: #e2e8f0;--border-light: #cbd5e1;--border-glass: rgba(0, 0, 0, .05);--desk-header-bg: #0f172a;--desk-subheader-bg: #15803d;--desk-header-text: #f8fafc;--desk-subheader-text: #f0fdf4}*{box-sizing:border-box;margin:0;padding:0;scrollbar-width:thin;scrollbar-color:var(--border-light) transparent}body{margin:0;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-main);color:var(--text-main);overflow:hidden}button{font-family:inherit}::-webkit-scrollbar{width:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-light);border-radius:10px}::-webkit-scrollbar-thumb:hover{background:var(--accent)}.journey-card{position:relative;display:flex;justify-content:space-between;align-items:center;padding:14px 20px;background:#fff;border-radius:12px;margin-bottom:12px;border-left:6px solid var(--card-accent, #94a3b8);box-shadow:0 1px 3px #0000000d;transition:all .2s ease-in-out}.journey-card:hover{box-shadow:0 4px 14px #00000014;transform:translateY(-1px)}.journey-card.band-income{--card-accent: #10b981;--accent-tint: #ecfdf5;--accent-border: #a7f3d0}.journey-card.band-expense{--card-accent: #f59e0b;--accent-tint: #fffbeb;--accent-border: #fde68a}.journey-card.band-debt{--card-accent: #ef4444;--accent-tint: #fef2f2;--accent-border: #fecaca}.journey-card.band-surplus{--card-accent: #3b82f6;--accent-tint: #eff6ff;--accent-border: #bfdbfe}.journey-card.band-protect{--card-accent: #6366f1;--accent-tint: #eef2ff;--accent-border: #c7d2fe}.journey-card.band-grow{--card-accent: #8b5cf6;--accent-tint: #f5f3ff;--accent-border: #ddd6fe}.journey-card.band-use{--card-accent: #14b8a6;--accent-tint: #f0fdfa;--accent-border: #99f6e4}.journey-card.band-estate{--card-accent: #64748b;--accent-tint: #f8fafc;--accent-border: #cbd5e1}.journey-card.band-net{--card-accent: #0284c7;--accent-tint: #f0f9ff;--accent-border: #bae6fd}.card-meta{display:flex;align-items:center;gap:12px;min-width:220px;flex:1}.card-meta .meta-toggle{font-size:.85rem;width:22px;height:22px;display:flex;align-items:center;justify-content:center;border-radius:6px;background:#0000000d;color:#1f2937;font-weight:700;border:1px solid rgba(0,0,0,.04);flex-shrink:0}.card-meta .meta-emoji{font-size:1.25rem;flex-shrink:0}.card-meta .meta-text{display:flex;flex-direction:column;min-width:0}.card-meta .meta-title{font-size:.85rem;font-weight:800;color:#1e293b;display:flex;align-items:center;gap:4px}.card-meta .meta-formula{font-size:.62rem;color:#4b5563;font-style:italic;font-weight:400}.card-meta .meta-subtitle{font-size:.65rem;color:#64748b;text-overflow:ellipsis;overflow:hidden;white-space:nowrap;margin-top:2px}.card-value{font-size:1.18rem;font-weight:800;color:#0f172a;min-width:110px;text-align:right;letter-spacing:-.02em;font-family:monospace;flex-shrink:0;padding:0 16px}.card-value.negative{color:#b91c1c}.card-actions{display:inline-flex;align-items:center;gap:8px;flex-shrink:0}.card-actions button,.card-actions .tab-item{display:inline-flex;align-items:center;gap:6px;padding:6px 12px;font-size:.78rem;font-weight:700;color:#1e293b;background:var(--accent-tint, #f8fafc);border:1px solid var(--accent-border, #e2e8f0);border-radius:8px;cursor:pointer;white-space:nowrap;box-shadow:0 2px 0 var(--card-accent, #cbd5e1),0 3px 5px #0000000a;transition:all .12s ease-in-out}.card-actions button:hover,.card-actions .tab-item:hover{transform:translateY(-1px);box-shadow:0 3px 0 var(--card-accent, #cbd5e1),0 4px 8px #00000012;background:#fff}.card-actions button:active,.card-actions .tab-item:active,.card-actions button.active,.card-actions .tab-item.active{transform:translateY(2px);box-shadow:0 0 0 var(--card-accent, #cbd5e1);background:#fff;border-color:var(--card-accent, #0ea5e9)}.login-container{display:flex;align-items:center;justify-content:center;min-height:100vh;background:linear-gradient(135deg,#0f172a,#1e293b);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.login-card{background:#111827;border:1px solid rgba(148,163,184,.12);border-radius:16px;padding:48px;width:100%;max-width:400px;box-shadow:0 20px 60px #0006}.login-header{text-align:center;margin-bottom:32px}.login-logo{font-size:48px;margin-bottom:16px}.login-header h1{margin:0;font-size:28px;font-weight:600;color:#f8fafc;letter-spacing:.5px}.login-header p{margin:8px 0 0;font-size:14px;color:#94a3b8}.login-form{margin-bottom:24px}.form-group{margin-bottom:20px}.form-group label{display:block;margin-bottom:8px;font-size:13px;font-weight:600;color:#cbd5e1}.form-group input{width:100%;padding:12px 14px;border:1px solid rgba(148,163,184,.24);border-radius:8px;background:#1e293b;color:#f8fafc;font-size:14px;transition:all .3s ease;box-sizing:border-box}.form-group input:focus{outline:none;border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a}.form-group input:disabled{opacity:.6;cursor:not-allowed}.form-group input::placeholder{color:#64748b}.error-message{margin-bottom:16px;padding:12px;background:#dc26261a;border:1px solid rgba(220,38,38,.3);border-radius:6px;color:#fca5a5;font-size:13px;text-align:center}.login-btn{width:100%;padding:12px 16px;border:none;border-radius:8px;background:#3b82f6;color:#fff;font-size:14px;font-weight:600;cursor:pointer;transition:all .3s ease;margin-bottom:16px}.login-btn:hover:not(:disabled){background:#2563eb;box-shadow:0 8px 16px #3b82f64d}.login-btn:active:not(:disabled){transform:scale(.98)}.login-btn:disabled{opacity:.6;cursor:not-allowed}.demo-credentials{background:#3b82f60d;border:1px solid rgba(59,130,246,.2);border-radius:8px;padding:16px;text-align:center}.demo-credentials p{margin:0;font-size:12px;color:#94a3b8}.demo-email,.demo-password{font-family:Courier New,monospace;color:#cbd5e1;font-weight:600;margin-top:4px;letter-spacing:.5px}@media (max-width: 480px){.login-card{padding:32px 24px;margin:16px}.login-header h1{font-size:24px}.login-logo{font-size:40px}}
