:root{--glass-bg: rgba(255, 255, 255, .1);--glass-border: rgba(255, 255, 255, .2);--glass-shadow: 0 8px 32px 0 rgba(31, 38, 135, .15);--primary-color: #6366F1;--secondary-color: #8B5CF6;--success-color: #10B981;--danger-color: #EF4444;--warning-color: #F59E0B}*{margin:0;padding:0;box-sizing:border-box}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:linear-gradient(135deg,#667eea,#764ba2);min-height:100vh;color:#fff}.background-gradient{position:fixed;top:0;left:0;width:100%;height:100%;background:radial-gradient(circle at center,rgba(99,102,241,.2) 0%,transparent 70%);pointer-events:none;z-index:-1}.glass-card{background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:16px;box-shadow:var(--glass-shadow);padding:1.5rem}.navbar{display:flex;justify-content:space-between;align-items:center;padding:1rem 2rem;margin-bottom:2rem;position:sticky;top:0;z-index:100}.logo{display:flex;align-items:center;gap:.75rem;font-size:1.5rem;font-weight:700}.logo-text{background:linear-gradient(45deg,#6366f1,#8b5cf6);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.user-info{display:flex;align-items:center;gap:1rem}.logout-btn{background:#ffffff1a;border:1px solid rgba(255,255,255,.2);color:#fff;padding:.5rem 1rem;border-radius:8px;cursor:pointer;transition:all .3s ease}.logout-btn:hover{background:#fff3}.main-content{display:flex;gap:2rem;padding:0 2rem 2rem}.sidebar{width:250px;height:calc(100vh - 120px);position:sticky;top:120px}.sidebar-nav{display:flex;flex-direction:column;gap:.5rem}.sidebar-item{width:100%;padding:1rem;text-align:left;border:none;background:#ffffff0d;border-radius:12px;color:#fff;cursor:pointer;transition:all .3s ease;display:flex;align-items:center;gap:.75rem}.sidebar-item:hover{background:#ffffff26}.sidebar-item.active{background:linear-gradient(45deg,#6366f1,#8b5cf6)}.content-area{flex:1}.auth-container{display:flex;justify-content:center;align-items:center;min-height:100vh;padding:2rem}.auth-card{width:100%;max-width:400px;text-align:left}.auth-card h2{margin-bottom:1.5rem;font-size:1.75rem;text-align:center}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;font-weight:500}.form-group input,.form-group select{width:100%;padding:.75rem;border:1px solid rgba(255,255,255,.2);background:#ffffff1a;border-radius:8px;color:#fff;font-size:1rem}.form-group input::placeholder{color:#ffffff80}.btn-primary{width:100%;padding:.75rem;background:linear-gradient(45deg,#6366f1,#8b5cf6);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s ease}.btn-primary:hover{transform:translateY(-2px);box-shadow:0 4px 20px #6366f14d}.btn-secondary{padding:.75rem 1.5rem;background:#ffffff1a;color:#fff;border:1px solid rgba(255,255,255,.2);border-radius:8px;cursor:pointer;transition:all .3s ease}.toggle-auth{margin-top:1.5rem;text-align:center;color:#fffc}.toggle-auth button{background:none;border:none;color:#6366f1;font-weight:600;cursor:pointer;margin-left:.5rem}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{text-align:center;padding:2rem}.stat-card h3{margin-bottom:1rem;color:#fffc}.balance-amount{font-size:2rem;font-weight:700;color:#10b981}.income-amount{font-size:1.5rem;font-weight:600;color:#10b981}.expense-amount{font-size:1.5rem;font-weight:600;color:#ef4444}.chart-container{padding:2rem}.chart-placeholder{display:flex;justify-content:space-around;align-items:flex-end;height:200px;margin-top:1rem}.chart-bar{width:40px;border-radius:4px 4px 0 0;transition:all .3s ease}.chart-bar:hover{transform:scaleY(1.1)}.transactions-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.transactions-list{display:flex;flex-direction:column;gap:1rem}.transaction-item{display:flex;align-items:center;padding:1.5rem;gap:1.5rem}.transaction-icon{font-size:1.5rem}.transaction-details h4{margin-bottom:.5rem;font-size:1.1rem}.transaction-details p{color:#ffffffb3;font-size:.9rem}.transaction-amount{margin-left:auto;font-weight:600;font-size:1.2rem}.transaction-amount.income{color:#10b981}.transaction-amount.expense{color:#ef4444}.empty-state{text-align:center;padding:3rem;color:#fff9}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000080;display:flex;justify-content:center;align-items:center;z-index:1000}.modal{width:90%;max-width:500px;padding:2rem}.modal h3{margin-bottom:1.5rem;text-align:center}.modal-actions{display:flex;gap:1rem;margin-top:2rem;justify-content:flex-end}.budget-cards,.report-cards{display:grid;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));gap:1.5rem}.budget-progress{width:100%;height:8px;background:#ffffff1a;border-radius:4px;margin:1rem 0;overflow:hidden}.progress-bar{height:100%;background:linear-gradient(45deg,#6366f1,#8b5cf6);border-radius:4px}.pie-chart-placeholder{display:flex;height:200px;align-items:center;justify-content:center;gap:.5rem}.pie-slice{height:100px;border-radius:50%;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:600}@media(max-width:768px){.main-content{flex-direction:column;padding:0 1rem 1rem}.sidebar{width:100%;height:auto;position:relative;top:0}.navbar{padding:1rem}.auth-card{max-width:100%;padding:1.5rem}}@tailwind base;@tailwind components;@tailwind utilities;@layer base{:root{--glass-bg: rgba(255, 255, 255, .1);--glass-border: rgba(255, 255, 255, .2);--glass-shadow: 0 8px 32px 0 rgba(31, 38, 135, .37)}.dark{--glass-bg: rgba(30, 30, 46, .8);--glass-border: rgba(255, 255, 255, .1);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .37)}}.glass-card{background:var(--glass-bg);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid var(--glass-border);border-radius:16px;box-shadow:var(--glass-shadow)}.loading-spinner{width:24px;height:24px;border:3px solid rgba(255,255,255,.3);border-top:3px solid #6366f1;border-radius:50%;animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
