*{margin:0;padding:0;box-sizing:border-box}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:#0f1115;color:#f1f5f9;min-height:100vh}.loading-screen{display:flex;align-items:center;justify-content:center;height:100vh;color:#94a3b8}.auth-container{max-width:400px;margin:60px auto;padding:24px;text-align:center}.auth-container h1{font-size:32px;background:linear-gradient(135deg,#10b981,#3b82f6);-webkit-background-clip:text;-webkit-text-fill-color:transparent}.tagline{color:#94a3b8;margin-bottom:32px;font-size:14px}.auth-form{display:flex;flex-direction:column;gap:12px}input,select{background:#1a1d24;border:1px solid #2a2e38;color:#f1f5f9;padding:14px;border-radius:10px;font-size:15px;width:100%}input:focus,select:focus{outline:none;border-color:#10b981}button{cursor:pointer;border:none;border-radius:10px;font-weight:600;transition:opacity .2s}button:disabled{opacity:.6;cursor:not-allowed}.auth-form button[type=submit]{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:14px;font-size:15px}.auth-message{color:#f59e0b;font-size:13px}.toggle-mode{background:none;color:#3b82f6;padding:8px;font-size:13px}.dashboard{max-width:600px;margin:0 auto;padding:20px 16px 60px}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.dashboard-header h1{font-size:24px;color:#10b981}.user-email{font-size:12px;color:#94a3b8}.logout-btn{background:#1a1d24;color:#f1f5f9;padding:8px 16px;font-size:13px;border:1px solid #2a2e38}.summary-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-bottom:24px}.summary-card{background:#1a1d24;border-radius:14px;padding:16px 10px;text-align:center;border:1px solid #2a2e38}.summary-card .label{display:block;font-size:11px;color:#94a3b8;margin-bottom:6px}.summary-card .value{display:block;font-size:16px;font-weight:700}.summary-card.income .value{color:#10b981}.summary-card.expense .value{color:#ef4444}.summary-card.balance .value{color:#3b82f6}.chart-container{background:#1a1d24;border-radius:14px;padding:16px;margin-bottom:24px;border:1px solid #2a2e38}.chart-container h3{font-size:14px;color:#94a3b8;margin-bottom:8px}.add-transaction-form{background:#1a1d24;border-radius:14px;padding:16px;margin-bottom:24px;display:flex;flex-direction:column;gap:10px;border:1px solid #2a2e38}.type-toggle{display:flex;gap:8px}.type-toggle button{flex:1;padding:10px;background:#0f1115;color:#94a3b8;border:1px solid #2a2e38}.type-toggle button.active.expense{background:#ef4444;color:#fff}.type-toggle button.active.income{background:#10b981;color:#fff}.submit-btn{background:linear-gradient(135deg,#10b981,#059669);color:#fff;padding:14px;font-size:15px}.transaction-list h2{font-size:16px;color:#94a3b8;margin-bottom:12px}.transaction-item{display:flex;justify-content:space-between;align-items:center;background:#1a1d24;border-left:3px solid #2a2e38;border-radius:10px;padding:12px 14px;margin-bottom:8px}.transaction-item.income{border-left-color:#10b981}.transaction-item.expense{border-left-color:#ef4444}.tx-details{display:flex;flex-direction:column;gap:2px}.tx-category{font-weight:600;font-size:14px}.tx-date,.tx-note{font-size:11px;color:#94a3b8}.tx-right{display:flex;align-items:center;gap:10px}.tx-amount{font-weight:700;font-size:14px}.tx-amount.income{color:#10b981}.tx-amount.expense{color:#ef4444}.delete-btn{background:none;color:#64748b;font-size:16px;padding:4px 8px}.empty-state,.loading-text{text-align:center;color:#64748b;padding:24px;font-size:14px}.bottom-nav{position:fixed;bottom:0;left:0;right:0;display:flex;background:#14161c;border-top:1px solid #2a2e38;padding:8px 4px calc(8px + env(safe-area-inset-bottom));z-index:50}.nav-item{flex:1;background:none;border:none;display:flex;flex-direction:column;align-items:center;gap:2px;color:#64748b;padding:6px 2px;font-size:11px}.nav-item.active{color:#10b981}.nav-icon{font-size:18px}.dashboard{padding-bottom:90px}.module-section{display:flex;flex-direction:column;gap:16px}.module-hero{background:#1a1d24;border-radius:16px;padding:20px;border:1px solid #2a2e38}.module-hero .module-badge{display:inline-block;font-size:11px;padding:4px 12px;border-radius:20px;margin-bottom:12px}.module-hero.purple .module-badge{background:#8b5cf626;color:#a78bfa}.module-hero.green .module-badge{background:#10b98126;color:#34d399}.module-hero.blue .module-badge{background:#3b82f626;color:#60a5fa}.module-hero h2{font-size:22px;margin-bottom:8px}.module-hero p{font-size:13px;color:#94a3b8;margin-bottom:16px}.hero-btn{width:100%;padding:14px;border-radius:10px;color:#fff;font-size:15px;border:none;font-weight:600}.purple-btn{background:linear-gradient(135deg,#8b5cf6,#7c3aed)}.blue-btn{background:linear-gradient(135deg,#22d3ee,#0891b2)}.summary-cards.two-col{grid-template-columns:repeat(2,1fr)}.summary-card .sub-label{display:block;font-size:10px;color:#64748b;margin-top:4px}.purple-text{color:#a78bfa}.blue-text{color:#22d3ee}.warning-text{color:#f59e0b}.emi-card{background:#1a1d24;border-radius:14px;padding:16px;border:1px solid #2a2e38}.emi-tags{display:flex;align-items:center;gap:8px;margin-bottom:10px}.tag{font-size:11px;padding:4px 10px;border-radius:20px;background:#0f1115;border:1px solid #2a2e38;color:#94a3b8}.purple-tag{background:#8b5cf626;color:#a78bfa;border:none}.emi-card h3{font-size:18px;margin-bottom:2px}.emi-lender{font-size:12px;color:#64748b;margin-bottom:14px}.emi-grid{display:grid;grid-template-columns:1fr 1fr;gap:12px}.emi-grid .sub-label{display:block;font-size:11px;color:#94a3b8;margin-bottom:2px}.emi-grid .value{font-size:15px;font-weight:700}.emi-tags .delete-btn{margin-left:auto}.cashflow-card{background:#1a1d24;border-radius:14px;padding:16px;border:1px solid #2a2e38}.cashflow-card h3{font-size:15px;margin-bottom:6px}.cashflow-line{font-size:12px;color:#94a3b8;margin-bottom:12px}.cashflow-legend{display:flex;gap:14px;font-size:12px;flex-wrap:wrap}.cashflow-legend .dot{display:inline-block;width:8px;height:8px;border-radius:50%;margin-right:4px}.budget-row-card{background:#1a1d24;border-radius:14px;padding:16px;border:1px solid #2a2e38}.budget-row-header{display:flex;justify-content:space-between;align-items:center;font-size:14px;font-weight:600;margin-bottom:10px}.safe-tag{background:#10b98126;color:#34d399;border:none}.over-tag{background:#ef444426;color:#f87171;border:none}.budget-row-numbers{display:flex;justify-content:space-between;font-size:12px;color:#94a3b8;margin-bottom:8px}.progress-track{width:100%;height:8px;background:#0f1115;border-radius:20px;overflow:hidden;margin-bottom:8px}.progress-fill{height:100%;border-radius:20px;transition:width .3s ease}.budget-desc{font-size:11px;color:#64748b}.goal-card{background:#1a1d24;border-radius:14px;padding:16px;border:1px solid #2a2e38}.goal-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:12px}.goal-header h3{font-size:17px}.goal-progress-row{display:flex;justify-content:space-between;font-size:13px;margin-bottom:6px}.deposit-btn{width:100%;padding:12px;border-radius:10px;background:#0f1115;border:1px solid #22d3ee;color:#22d3ee;font-size:14px;font-weight:600;margin-top:10px}
