body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}*,.App{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif}.landing-page{color:#1a1a1a;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;line-height:1.6;overflow-x:hidden}.navbar{-webkit-backdrop-filter:blur(20px);backdrop-filter:blur(20px);background:#fffffff2;border-bottom:1px solid #0000000d;position:fixed;top:0;transition:all .3s ease;width:100%;z-index:1000}.nav-container{height:80px;justify-content:space-between;margin:0 auto;max-width:1400px;padding:0 24px}.nav-container,.nav-logo{align-items:center;display:flex}.nav-logo{gap:12px}.nav-logo h2{color:#1a1a1a;font-size:28px;font-weight:800;letter-spacing:-.5px;margin:0}.nav-menu{align-items:center;display:flex;gap:40px}.nav-link{color:#4a5568;font-size:15px;font-weight:500;position:relative;text-decoration:none;transition:all .3s ease}.nav-link:hover{color:#667eea}.nav-link:after{background:linear-gradient(135deg,#667eea,#764ba2);bottom:-8px;content:"";height:2px;left:0;position:absolute;transition:width .3s ease;width:0}.nav-link:hover:after{width:100%}.nav-buttons{display:flex;gap:12px;margin-left:20px}.btn-outline,.btn-primary,.btn-secondary{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;font-size:14px;font-weight:600;gap:8px;padding:12px 24px;text-decoration:none;transition:all .3s ease}.btn-primary{box-shadow:0 4px 15px #667eea4d}.btn-secondary{background:#f7fafc;border:1px solid #e2e8f0}.btn-secondary:hover{background:#edf2f7}.btn-outline{background:#0000;border:2px solid #667eea;color:#667eea}.btn-outline:hover{background:#667eea;color:#fff;transform:translateY(-1px)}.btn-large{font-size:16px;padding:16px 32px}.btn-icon{font-size:18px;transition:transform .3s ease}.btn-primary:hover .btn-icon{transform:translateX(4px)}.nav-toggle{cursor:pointer;display:none;flex-direction:column;gap:4px}.nav-toggle span{background:#4a5568;border-radius:2px;height:3px;transition:.3s;width:28px}.hero{background:linear-gradient(135deg,#f7fafc,#edf2f7);overflow:hidden;padding:120px 0 80px;position:relative}.hero-background{bottom:0;left:0;position:absolute;right:0;top:0;z-index:1}.shape{animation:float 6s ease-in-out infinite;font-size:24px}.shape-2{animation-delay:2s}.shape-3{animation-delay:4s;right:30%;top:30%}.shape-4{animation-delay:1s;bottom:20%;left:20%}.hero-container{grid-gap:80px;align-items:center;display:grid;gap:80px;grid-template-columns:1fr 1fr;margin:0 auto;max-width:1400px;padding:0 24px;position:relative;z-index:2}.hero-content{max-width:600px}.hero-badge{align-items:center;background:#667eea1a;border-radius:50px;color:#667eea;display:inline-flex;font-size:14px;font-weight:600;gap:8px;margin-bottom:32px;padding:8px 16px}.badge-icon{font-size:16px}.hero-title{color:#1a1a1a;font-size:4rem;font-weight:900;letter-spacing:-1px;line-height:1.1;margin:0 0 24px}.gradient-text{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text}.hero-subtitle{color:#4a5568;font-size:1.25rem;line-height:1.7;margin:0 0 40px}.hero-buttons{display:flex;gap:20px;margin-bottom:60px}.hero-stats{display:flex;gap:60px}.stat-item{text-align:center}.stat-number{color:#1a1a1a;font-size:2.5rem;font-weight:800;line-height:1;margin-bottom:8px}.stat-label{color:#718096;font-size:14px;letter-spacing:.5px;text-transform:uppercase}.hero-visual{align-items:center;display:flex;justify-content:center}.dashboard-preview{animation:slideInUp 1s ease-out;background:#fff;border-radius:20px;box-shadow:0 25px 50px #00000026;max-width:400px;overflow:hidden;width:100%}.dashboard-header{align-items:center;background:#f7fafc;border-bottom:1px solid #e2e8f0;display:flex;gap:12px;padding:20px}.dashboard-dots{display:flex;gap:6px}.dashboard-dots span{background:#cbd5e0;border-radius:50%;height:12px;width:12px}.dashboard-dots span:first-child{background:#fc8181}.dashboard-dots span:nth-child(2){background:#f6e05e}.dashboard-dots span:last-child{background:#68d391}.dashboard-title{color:#2d3748;font-size:14px;font-weight:600}.dashboard-content{grid-gap:20px;display:grid;gap:20px;padding:30px}.metric-card{background:#f7fafc;border-radius:12px;padding:20px;text-align:center;transition:transform .3s ease}.metric-card:hover{transform:translateY(-2px)}.metric-icon{font-size:24px;margin-bottom:8px}.metric-value{color:#1a1a1a;font-size:1.5rem;font-weight:700;margin-bottom:4px}.metric-label{color:#718096;font-size:12px;font-weight:500}.section-header{margin-bottom:80px;text-align:center}.section-header h2{font-size:3rem;font-weight:800;letter-spacing:-1px;margin:0 0 20px}.section-header p{font-size:1.25rem;margin:0 auto;max-width:600px}.features{background:#fff;padding:120px 0}.container{margin:0 auto;max-width:1400px;padding:0 24px}.features-grid{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.feature-card{animation:fadeInUp .6s ease-out forwards;background:#f7fafc;border-radius:20px;opacity:0;overflow:hidden;padding:40px 30px;position:relative;text-align:center;transform:translateY(30px);transition:all .4s ease}@keyframes fadeInUp{to{opacity:1;transform:translateY(0)}}.feature-card:hover{background:#fff;box-shadow:0 25px 50px #0000001a;transform:translateY(-10px)}.feature-icon{display:block;font-size:3.5rem;margin-bottom:24px}.feature-card h3{color:#1a1a1a;font-size:1.5rem;font-weight:700;margin:0 0 16px}.feature-card p{color:#718096;line-height:1.6;margin:0 0 20px}.feature-arrow{color:#667eea;font-size:1.5rem;opacity:0;transition:all .3s ease}.feature-card:hover .feature-arrow{opacity:1;transform:translateX(8px)}.solutions{background:linear-gradient(135deg,#f7fafc,#edf2f7);padding:120px 0}.solutions-grid{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.solution-card{background:#fff;border-radius:20px;box-shadow:0 10px 30px #0000000d;padding:40px;transition:all .4s ease}.solution-card:hover{box-shadow:0 25px 50px #0000001a;transform:translateY(-8px)}.solution-icon{display:block;font-size:3rem;margin-bottom:24px}.solution-card h3{color:#1a1a1a;font-size:1.5rem;font-weight:700;margin:0 0 16px}.solution-card p{color:#718096;line-height:1.6;margin:0 0 24px}.solution-benefits{list-style:none;margin:0 0 30px;padding:0}.solution-benefits li{align-items:center;color:#4a5568;display:flex;gap:12px;margin-bottom:12px}.check-icon{color:#48bb78;font-size:16px;font-weight:700}.pricing{background:#fff;padding:120px 0}.pricing-grid{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr));margin:0 auto;max-width:1200px}.pricing-card{background:#fff;border:2px solid #e2e8f0;border-radius:20px;padding:40px 30px;position:relative;text-align:center;transition:all .4s ease}.pricing-card:hover{box-shadow:0 25px 50px #0000001a;transform:translateY(-8px)}.pricing-card.popular{border-color:#667eea;transform:scale(1.05)}.popular-badge{background:linear-gradient(135deg,#667eea,#764ba2);border-radius:20px;color:#fff;font-size:14px;font-weight:600;left:50%;padding:8px 20px;position:absolute;top:-12px;transform:translateX(-50%)}.plan-header h3{color:#1a1a1a;font-size:1.5rem;font-weight:700;margin:0 0 16px}.plan-price{margin-bottom:16px}.price{color:#1a1a1a;font-size:3rem;font-weight:800;line-height:1}.period{color:#718096;font-size:1rem;margin-left:8px}.plan-description{color:#718096;margin:0 0 30px}.plan-features{list-style:none;margin:0 0 40px;padding:0;text-align:left}.plan-features li{align-items:center;color:#4a5568;display:flex;gap:12px;margin-bottom:16px}.btn-plan{border:none;border-radius:12px;cursor:pointer;font-size:16px;font-weight:600;padding:16px;transition:all .3s ease;width:100%}.testimonials{background:linear-gradient(135deg,#f7fafc,#edf2f7);padding:120px 0}.testimonial-container{margin:0 auto;max-width:800px;text-align:center}.testimonial-content{background:#fff;border-radius:20px;box-shadow:0 25px 50px #0000001a;margin-bottom:40px;padding:60px 40px}.quote-icon{color:#667eea;font-size:4rem;margin-bottom:20px;opacity:.3}.testimonial-quote p{color:#4a5568;font-size:1.25rem;font-style:italic;line-height:1.7;margin:0 0 40px}.testimonial-author{align-items:center;display:flex;justify-content:space-between}.author-info h4{color:#1a1a1a;font-size:1.25rem;font-weight:700;margin:0 0 8px}.author-info p{color:#718096;margin:0 0 12px}.company-badge{background:#667eea;border-radius:20px;color:#fff;display:inline-block;font-size:12px;font-weight:600;padding:4px 12px}.rating{display:flex;gap:4px}.star{font-size:20px}.testimonial-navigation{display:flex;gap:12px;justify-content:center}.nav-dot{background:#cbd5e0;border:none;border-radius:50%;cursor:pointer;height:12px;transition:all .3s ease;width:12px}.nav-dot.active{background:#667eea;transform:scale(1.2)}.cta{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;padding:120px 0;text-align:center}.cta-content h2{font-size:3rem;font-weight:800;letter-spacing:-1px;margin:0 0 20px}.cta-content p{font-size:1.25rem;margin:0 auto 40px;max-width:600px;opacity:.9}.cta-buttons{gap:20px;margin-bottom:40px}.cta-buttons,.cta-guarantee{display:flex;justify-content:center}.cta-guarantee{align-items:center;font-size:14px;gap:12px;opacity:.8}.guarantee-icon{font-size:18px}.footer{background:#1a1a1a;color:#fff;padding:80px 0 40px}.footer-main{grid-gap:80px;display:grid;gap:80px;grid-template-columns:1fr 2fr;margin-bottom:60px}.footer-brand{max-width:400px}.footer-logo{align-items:center;display:flex;gap:12px;margin-bottom:20px}.footer-logo .logo-icon{font-size:32px}.footer-logo h3{font-size:28px;font-weight:800;margin:0}.footer-brand p{color:#a0aec0;line-height:1.6;margin:0 0 30px}.social-links{display:flex;gap:16px}.social-link{align-items:center;background:#2d3748;border-radius:12px;display:flex;font-size:20px;height:44px;justify-content:center;text-decoration:none;transition:all .3s ease;width:44px}.social-link:hover{background:#667eea;transform:translateY(-2px)}.footer-links{grid-gap:40px;display:grid;gap:40px;grid-template-columns:repeat(4,1fr)}.footer-column h4{color:#fff;font-size:1rem;font-weight:700;margin:0 0 20px}.footer-column ul{list-style:none;margin:0;padding:0}.footer-column ul li{margin-bottom:12px}.footer-column ul li a{color:#a0aec0;font-size:14px;text-decoration:none;transition:color .3s ease}.footer-column ul li a:hover{color:#fff}.footer-bottom{border-top:1px solid #2d3748;padding-top:40px}.footer-bottom-content{align-items:center;display:flex;justify-content:space-between}.footer-bottom p{color:#a0aec0;font-size:14px;margin:0}.footer-certifications{display:flex;gap:16px}.cert-badge{background:#2d3748;border-radius:20px;color:#a0aec0;font-size:12px;font-weight:600;padding:8px 16px}@media (max-width:1024px){.hero-container{gap:60px;grid-template-columns:1fr;text-align:center}.hero-title{font-size:3rem}.features-grid{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.footer-main,.pricing-grid,.solutions-grid{grid-template-columns:1fr}.footer-main{gap:40px}.footer-links{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.nav-menu{background:#fff;box-shadow:0 10px 27px #0000000d;flex-direction:column;gap:30px;left:-100%;padding:40px 0;position:fixed;text-align:center;top:80px;transition:.3s;width:100%}.nav-menu.active{left:0}.nav-toggle{display:flex}.hero-title{font-size:2.5rem}.hero-buttons{align-items:center;flex-direction:column}.hero-stats{gap:40px;justify-content:center}.section-header h2{font-size:2.5rem}.features-grid{grid-template-columns:1fr}.cta-buttons{align-items:center;flex-direction:column}.footer-links{gap:30px;grid-template-columns:1fr}.footer-bottom-content{flex-direction:column;gap:20px;text-align:center}.footer-certifications{flex-wrap:wrap;justify-content:center}}@media (max-width:480px){.hero-title{font-size:2rem}.hero-subtitle{font-size:1rem}.container{padding:0 16px}.feature-card,.pricing-card,.solution-card{padding:30px 20px}.testimonial-content{padding:40px 20px}.cta-content h2{font-size:2rem}}.auth-container{align-items:center;background:linear-gradient(135deg,#f7fafc,#edf2f7);display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:20px;position:relative}.auth-background{bottom:0;left:0;position:absolute;right:0;top:0;z-index:1}.floating-shapes{height:100%;position:absolute;width:100%}.shape{animation:float 8s ease-in-out infinite;font-size:32px;opacity:.1;position:absolute}.shape-1{animation-delay:0s;left:10%;top:20%}.shape-2{animation-delay:3s;right:15%;top:60%}.shape-3{animation-delay:6s;bottom:20%;left:20%}@keyframes float{0%,to{transform:translateY(0) rotate(0deg)}50%{transform:translateY(-30px) rotate(10deg)}}.auth-card{animation:slideInUp .6s ease-out;background:#fff;border-radius:20px;box-shadow:0 25px 50px #00000026;max-width:480px;padding:40px;position:relative;width:100%;z-index:2}.register-card{max-width:600px}@keyframes slideInUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.auth-header{margin-bottom:40px;text-align:center}.auth-logo{align-items:center;display:flex;gap:12px;justify-content:center;margin-bottom:24px}.logo-icon{font-size:32px}.auth-logo h1{color:#1a1a1a;font-size:28px;font-weight:800;letter-spacing:-.5px;margin:0}.auth-header h2{color:#1a1a1a;font-size:2rem;font-weight:700;margin:0 0 8px}.auth-header p{color:#718096;font-size:16px;margin:0}.auth-form{display:flex;flex-direction:column;gap:24px}.form-row{grid-gap:16px;gap:16px}.form-group{display:flex;flex-direction:column;gap:8px}.form-group label{font-size:14px}.form-input{background:#f8fafc;border:2px solid #e2e8f0;border-radius:12px;font-size:16px;padding:16px;transition:all .3s ease}.form-input:focus{background:#fff;border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.form-input::placeholder{color:#a0aec0}.form-options{justify-content:space-between;margin:8px 0}.checkbox-label,.form-options{align-items:center;display:flex}.checkbox-label{color:#4a5568;cursor:pointer;font-size:14px;gap:8px}.checkbox-label input[type=checkbox]{display:none}.checkmark{align-items:center;background:#fff;border:2px solid #e2e8f0;border-radius:4px;display:flex;height:20px;justify-content:center;transition:all .3s ease;width:20px}.checkbox-label input[type=checkbox]:checked+.checkmark{background:#667eea;border-color:#667eea}.checkbox-label input[type=checkbox]:checked+.checkmark:after{color:#fff;content:"✓";font-size:12px;font-weight:700}.forgot-link{color:#667eea;font-size:14px;font-weight:500;text-decoration:none;transition:color .3s ease}.forgot-link:hover{color:#5a67d8}.terms-link{color:#667eea;font-weight:500;text-decoration:none}.terms-link:hover{text-decoration:underline}.auth-button{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:12px;box-shadow:0 4px 15px #667eea4d;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;justify-content:center;padding:16px 24px;transition:all .3s ease}.auth-button:hover:not(:disabled){box-shadow:0 8px 25px #667eea66;transform:translateY(-2px)}.auth-button:disabled{cursor:not-allowed;opacity:.7;transform:none}.button-icon{font-size:18px;transition:transform .3s ease}.auth-button:hover:not(:disabled) .button-icon{transform:translateX(4px)}.spinner{border:2px solid #ffffff4d;border-top-color:#fff;height:20px;width:20px}.error-message{align-items:center;background:#fee2e2;border:1px solid #fecaca;border-radius:12px;color:#dc2626;display:flex;font-size:14px;font-weight:500;gap:12px;padding:16px}.error-icon{font-size:18px}.success-message{align-items:center;background:#d1fae5;border:1px solid #a7f3d0;border-radius:12px;color:#065f46;display:flex;font-size:14px;font-weight:500;gap:12px;padding:16px}.success-icon{font-size:18px}.auth-footer{border-top:1px solid #e2e8f0;margin-top:32px;padding-top:24px;text-align:center}.auth-footer p{color:#718096;font-size:14px;margin:0}.auth-link{color:#667eea;font-weight:600;text-decoration:none;transition:color .3s ease}.auth-link:hover{color:#5a67d8;text-decoration:underline}@media (max-width:768px){.auth-container{padding:16px}.auth-card{padding:32px 24px}.register-card{max-width:100%}.form-row{gap:16px;grid-template-columns:1fr}.form-options{align-items:flex-start;flex-direction:column;gap:12px}.auth-header h2{font-size:1.75rem}.auth-logo h1{font-size:24px}}@media (max-width:480px){.auth-card{padding:24px 20px}.auth-header h2{font-size:1.5rem}.form-input{font-size:16px;padding:14px}.auth-button{font-size:15px;padding:14px 20px}}.dashboard{margin:0 auto;max-width:1200px;padding:0}.dashboard-loading{align-items:center;display:flex;flex-direction:column;gap:20px;justify-content:center;min-height:400px}.loading-spinner{animation:spin 1s linear infinite;border:4px solid #e2e8f0;border-radius:50%;border-top-color:#667eea;height:40px;width:40px}.dashboard-header{margin-bottom:32px}.dashboard-header h1{color:#1a1a1a;font-size:2.5rem;font-weight:800;letter-spacing:-.5px;margin:0 0 8px}.dashboard-header p{color:#718096;font-size:1.125rem;margin:0}.stats-grid{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));margin-bottom:40px}.stat-card{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:16px;box-shadow:0 4px 6px #0000000d;display:flex;gap:20px;padding:24px;transition:all .3s ease}.stat-card:hover{box-shadow:0 8px 25px #0000001a;transform:translateY(-2px)}.stat-icon{align-items:center;border-radius:12px;display:flex;flex-shrink:0;font-size:2.5rem;height:60px;justify-content:center;width:60px}.balance-card .stat-icon{background:linear-gradient(135deg,#667eea,#764ba2)}.income-card .stat-icon{background:linear-gradient(135deg,#48bb78,#38a169)}.expense-card .stat-icon{background:linear-gradient(135deg,#f56565,#e53e3e)}.transaction-card .stat-icon{background:linear-gradient(135deg,#ed8936,#dd6b20)}.stat-content h3{color:#718096;font-size:.875rem;font-weight:600;letter-spacing:.5px;margin:0 0 8px;text-transform:uppercase}.stat-value{color:#1a1a1a;font-size:2rem;font-weight:800;line-height:1;margin:0 0 8px}.stat-change{align-items:center;display:flex;font-size:.875rem;font-weight:500;gap:4px}.stat-change.positive{color:#48bb78}.stat-change.negative{color:#f56565}.quick-actions{margin-bottom:40px}.quick-actions h2{color:#1a1a1a;font-size:1.5rem;font-weight:700;margin:0 0 24px}.actions-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.action-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;color:inherit;cursor:pointer;padding:24px;text-align:center;text-decoration:none;transition:all .3s ease}.action-card:hover{border-color:#667eea;box-shadow:0 12px 30px #0000001a;transform:translateY(-4px)}.action-icon{display:block;font-size:2.5rem;margin-bottom:16px}.action-card h3{color:#1a1a1a;font-size:1.125rem;font-weight:600;margin:0 0 8px}.action-card p{color:#718096;font-size:.875rem;margin:0}.recent-transactions{margin-bottom:40px}.section-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:24px}.section-header h2{font-size:1.5rem;margin:0}.view-all-link{color:#667eea;font-size:.875rem;font-weight:500;text-decoration:none;transition:color .3s ease}.view-all-link:hover{color:#5a67d8}.transactions-list{background:#fff;border:1px solid #e2e8f0;border-radius:16px;overflow:hidden}.transaction-item{align-items:center;border-bottom:1px solid #f7fafc;display:flex;gap:16px;padding:20px 24px;transition:background-color .3s ease}.transaction-item:last-child{border-bottom:none}.transaction-item:hover{background:#f8fafc}.transaction-icon{background:#f7fafc;border-radius:12px;flex-shrink:0;font-size:1.5rem;height:48px;width:48px}.transaction-details h4{color:#1a1a1a;font-size:1rem;font-weight:600;margin:0 0 4px}.transaction-category{color:#718096;font-size:.875rem;margin:0 0 4px}.transaction-date{color:#a0aec0;font-size:.75rem;margin:0}.transaction-amount{font-size:1.125rem}.transaction-amount.income{color:#48bb78}.transaction-amount.expense{color:#f56565}.monthly-overview h2{color:#1a1a1a;font-size:1.5rem;font-weight:700;margin:0 0 24px}.overview-cards{grid-gap:24px;display:grid;gap:24px;grid-template-columns:repeat(auto-fit,minmax(400px,1fr))}.overview-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:24px}.overview-card h3{color:#1a1a1a;font-size:1.125rem;font-weight:600;margin:0 0 20px}.progress-bar{background:#f7fafc;border-radius:8px;height:40px;margin-bottom:16px;overflow:hidden;position:relative}.progress-fill{align-items:center;color:#fff;display:flex;font-size:.875rem;font-weight:500;height:100%;left:0;padding:0 12px;position:absolute;top:0}.progress-fill.income{background:linear-gradient(135deg,#48bb78,#38a169);z-index:2}.progress-fill.expense{background:linear-gradient(135deg,#f56565,#e53e3e);z-index:1}.net-amount{color:#1a1a1a;font-size:1.25rem;font-weight:700}.net-amount,.savings-rate{text-align:center}.rate-value{color:#48bb78;font-size:3rem;font-weight:800;line-height:1;margin-bottom:8px}.rate-label{color:#718096;font-size:.875rem;font-weight:500}@media (max-width:1024px){.stats-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.actions-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.overview-cards{grid-template-columns:1fr}}@media (max-width:768px){.dashboard-header h1{font-size:2rem}.stats-grid{grid-template-columns:1fr}.actions-grid{grid-template-columns:repeat(2,1fr)}.stat-card{padding:20px}.stat-value{font-size:1.75rem}.transaction-item{padding:16px 20px}.section-header{align-items:flex-start;flex-direction:column;gap:12px}}@media (max-width:480px){.actions-grid{grid-template-columns:1fr}.stat-card{flex-direction:column;gap:16px;text-align:center}.transaction-item{align-items:flex-start;flex-direction:column;gap:12px}.transaction-amount{text-align:left}.overview-card{padding:20px}}.rokada-modal-backdrop{align-items:center;backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:#0a0c0f73;display:flex;inset:0;justify-content:center;opacity:0;padding:1rem;position:fixed;transition:opacity .2s ease-out;z-index:10000}.rokada-modal-backdrop.open{opacity:1}.rokada-modal{background:#fff;border-radius:12px;box-shadow:0 20px 60px #0000004d,0 0 0 1px #0000000d;display:flex;flex-direction:column;max-height:88vh;max-width:820px;opacity:0;overflow:hidden;position:relative;transform:translateY(20px) scale(.95);transition:transform .2s ease-out,opacity .2s ease-out;width:100%}.rokada-modal-backdrop.open .rokada-modal{opacity:1;transform:translateY(0) scale(1)}.rokada-modal-body{-webkit-overflow-scrolling:touch;flex:1 1;overflow-x:hidden;overflow-y:auto;overscroll-behavior:contain;padding:20px}.rokada-modal-close{align-items:center;background:#0000000d;border:none;border-radius:8px;color:#4a5568;cursor:pointer;display:flex;font-size:24px;height:36px;justify-content:center;line-height:1;padding:0;position:absolute;right:12px;top:12px;transition:all .2s ease;width:36px;z-index:1}.rokada-modal-close:hover{background:#0000001a;color:#2d3748;transform:scale(1.1)}.rokada-modal-close:active{transform:scale(.95)}.rokada-modal-close:focus{outline:2px solid #667eea;outline-offset:2px}@media (max-width:768px){.rokada-modal-backdrop{align-items:flex-end;padding:0}.rokada-modal{border-radius:12px 12px 0 0;max-height:90vh;max-width:100%;transform:translateY(100%)}.rokada-modal-backdrop.open .rokada-modal{transform:translateY(0)}.rokada-modal-body{max-height:calc(90vh - 60px);padding:16px}.rokada-modal-close{font-size:28px;height:40px;right:8px;top:8px;width:40px}}@media (max-width:480px){.rokada-modal{max-height:95vh}.rokada-modal-body{max-height:calc(95vh - 50px);padding:12px}}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.rokada-modal-body>*{animation:slideUp .3s ease-out}.transactions{margin:0 auto;max-width:1200px;padding:2rem}.transactions-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:32px}.transactions-header h1{color:#1a1a1a;font-size:2.5rem;font-weight:800;margin:0}.transaction-buttons{display:flex;gap:12px}.cash-in-btn,.cash-out-btn{align-items:center;border:none;border-radius:12px;cursor:pointer;display:flex;font-size:1rem;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s ease}.cash-in-btn{background:linear-gradient(135deg,#48bb78,#38a169);color:#fff}.cash-in-btn:hover{box-shadow:0 8px 25px #48bb7866;transform:translateY(-2px)}.cash-out-btn{background:linear-gradient(135deg,#f56565,#e53e3e);color:#fff}.cash-out-btn:hover{box-shadow:0 8px 25px #f5656566;transform:translateY(-2px)}.transactions-content{background:#fff;border-radius:16px;box-shadow:0 4px 6px #0000000d;overflow:hidden}.transactions-filters{background-color:#f7fafc;border-bottom:1px solid #e2e8f0;justify-content:space-between;padding:1rem 1.5rem}.filter-left,.transactions-filters{align-items:center;display:flex;flex-wrap:wrap;gap:1rem}.filter-left label{align-items:center;color:#4a5568;display:flex;font-size:14px;font-weight:500;gap:.5rem;white-space:nowrap}.filter-left input[type=date]{background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#2d3748;cursor:pointer;font-size:14px;padding:.5rem .75rem;transition:border-color .2s ease}.filter-left input[type=date]:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.filter-right{flex:1 1;max-width:400px;min-width:200px}.filter-right input[type=text]{background:#fff;border:1px solid #e2e8f0;border-radius:6px;color:#2d3748;font-size:14px;padding:.5rem .75rem;transition:border-color .2s ease;width:100%}.filter-right input[type=text]:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a;outline:none}.filter-right input[type=text]::placeholder{color:#a0aec0}.transactions-table-wrapper{overflow-x:auto;width:100%}.rokada-transactions-table{background:#fff;border-collapse:collapse;font-size:14px;line-height:1.5;width:100%}.rokada-transactions-table thead{background-color:#f7fafc;border-bottom:2px solid #e2e8f0}.rokada-transactions-table th{font-feature-settings:"smcp";border-bottom:2px solid #e2e8f0;color:#2d3748;font-size:14px;font-variant:small-caps;font-weight:600;letter-spacing:.5px;padding:12px 16px;text-align:left;text-transform:uppercase}.rokada-transactions-table th.col-balance,.rokada-transactions-table th.col-credit,.rokada-transactions-table th.col-debit{text-align:right}.rokada-transactions-table th.col-actions{text-align:center;width:100px}.rokada-transactions-table tbody tr{border-bottom:1px solid #e2e8f0;transition:background-color .2s ease}.rokada-transactions-table tbody tr:hover{background-color:#f7fafc}.rokada-transactions-table tbody tr:nth-child(2n){background-color:#fafafa}.rokada-transactions-table tbody tr:nth-child(2n):hover{background-color:#f0f0f0}.rokada-transactions-table td{color:#4a5568;font-size:14px;padding:12px 16px;vertical-align:top}.rokada-transactions-table td.col-date{color:#718096;font-size:13px;white-space:nowrap}.rokada-transactions-table td.col-description{min-width:250px}.description-primary{color:#2d3748;font-weight:500;margin-bottom:4px}.description-secondary{color:#718096;font-size:12px}.rokada-transactions-table td.col-balance,.rokada-transactions-table td.col-credit,.rokada-transactions-table td.col-debit{font-family:Courier New,monospace;font-weight:500;text-align:right;white-space:nowrap}.rokada-transactions-table td.col-debit{color:#e53e3e}.rokada-transactions-table td.col-credit{color:#38a169}.rokada-transactions-table td.col-balance{color:#2d3748;font-weight:600}.rokada-transactions-table td.col-actions{padding:8px;text-align:center}.action-btn{border-radius:4px;display:inline-block;font-size:16px;margin:0 2px;padding:6px 8px}.action-btn:hover{transform:scale(1.15)}.action-btn.edit-btn:hover{background:#e6fffa}.action-btn.delete-btn:hover{background:#fed7d7}.rokada-transactions-table tfoot{background-color:#f7fafc;border-top:2px solid #e2e8f0;font-weight:600}.rokada-transactions-table tfoot .summary-row{background-color:#f7fafc!important}.rokada-transactions-table tfoot .summary-row:hover{background-color:#f0f0f0!important}.rokada-transactions-table tfoot .summary-label{color:#2d3748;font-size:13px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.rokada-transactions-table tfoot .summary-value{color:#2d3748;font-size:14px;font-weight:700}.empty-state{color:#718096;padding:4rem 2rem}.empty-icon{font-size:4rem;margin-bottom:1rem}.empty-state h3{color:#4a5568;margin-bottom:.5rem}.transaction-form{display:flex;flex-direction:column;height:100%;width:100%}.form-header{margin-bottom:1.5rem;padding:0 0 1rem}.transaction-form form{display:flex;flex:1 1;flex-direction:column}.form-row{margin-bottom:1rem}.form-actions{background:#fff;bottom:0;margin-top:auto;padding-top:1.5rem;position:-webkit-sticky;position:sticky}.transaction-type-display{align-items:center;display:flex;height:48px}.type-badge{border-radius:8px;font-size:.9rem;font-weight:600;padding:8px 16px}.type-badge.cashin{background:#f0fff4;border:1px solid #c6f6d5;color:#48bb78}.type-badge.cashout{background:#fff5f5;border:1px solid #fed7d7;color:#f56565}.dropdown-with-add{display:flex;flex-direction:column;gap:8px}.dropdown-with-add select{margin-bottom:0}.dropdown-with-add input{border:1px solid #e2e8f0;border-radius:6px;font-size:.9rem;padding:.5rem}.dropdown-with-add input:focus{border-color:#667eea;box-shadow:0 0 0 2px #667eea1a}@media (max-width:768px){.transactions{padding:1rem}.transactions-header{align-items:stretch;flex-direction:column;gap:1rem}.transaction-buttons{flex-direction:column;gap:8px}.cash-in-btn,.cash-out-btn{justify-content:center}.transactions-filters{padding:1rem}.filter-left,.transactions-filters{align-items:stretch;flex-direction:column}.filter-left{width:100%}.filter-left label{align-items:flex-start;flex-direction:column;gap:.25rem}.filter-left input[type=date]{width:100%}.filter-right{max-width:100%;width:100%}.transactions-table-wrapper{-webkit-overflow-scrolling:touch;overflow-x:auto}.rokada-transactions-table{font-size:13px;min-width:700px}.rokada-transactions-table td,.rokada-transactions-table th{font-size:13px;padding:10px 12px}.rokada-transactions-table td.col-balance,.rokada-transactions-table th.col-balance{display:none}.form-row{grid-template-columns:1fr}.form-actions{flex-direction:column}}@media (max-width:480px){.rokada-transactions-table{font-size:12px;min-width:600px}.rokada-transactions-table td,.rokada-transactions-table th{font-size:12px;padding:8px 10px}.description-secondary{font-size:11px}}.cash-management{margin:0 auto;max-width:1200px;padding:2rem}.cash-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:2rem}.cash-header h1{color:#1a1a1a;font-size:2.5rem;font-weight:800;margin:0}.cash-header p{color:#718096;font-size:1.1rem;margin:.5rem 0 0}.btn-primary{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;display:flex;gap:8px;padding:12px 24px;transition:all .3s ease}.btn-primary:hover{box-shadow:0 8px 25px #667eea66;transform:translateY(-2px)}.btn-primary span{font-size:1.2rem;font-weight:700}.total-balance .card-icon{background:linear-gradient(135deg,#48bb78,#38a169)}.total-accounts .card-icon{background:linear-gradient(135deg,#4299e1,#3182ce)}.monthly-income .card-icon{background:linear-gradient(135deg,#48bb78,#38a169)}.monthly-expenses .card-icon{background:linear-gradient(135deg,#f56565,#e53e3e)}.accounts-section{margin-bottom:3rem}.accounts-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fill,minmax(350px,1fr))}.account-card{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:1.5rem;transition:all .3s ease}.account-card:hover{box-shadow:0 8px 25px #0000001a;transform:translateY(-2px)}.account-header{gap:1rem;margin-bottom:1rem}.account-header,.account-icon{align-items:center;display:flex}.account-icon{border-radius:12px;color:#fff;font-size:1.5rem;height:50px;justify-content:center;width:50px}.account-info{flex:1 1}.account-info h3{color:#1a1a1a;font-size:1.2rem;font-weight:600;margin:0 0 .25rem}.account-info p{color:#718096;font-size:.9rem;margin:0}.account-actions{display:flex;gap:.5rem}.adjust-btn{background:none;border:none;border-radius:.5rem;cursor:pointer;font-size:1.2rem;padding:.5rem;transition:all .2s ease}.adjust-btn:hover{background:#f7fafc;transform:scale(1.1)}.account-balance{margin-bottom:1rem;text-align:center}.balance-amount{font-size:2rem;font-weight:700}.balance-amount.positive{color:#48bb78}.balance-amount.negative{color:#f56565}.account-details{border-top:1px solid #e2e8f0;padding-top:1rem}.detail-item{align-items:center;display:flex;justify-content:space-between;margin-bottom:.5rem}.detail-item:last-child{margin-bottom:0}.detail-item span:first-child{color:#718096;font-size:.9rem}.detail-item span:last-child{color:#1a1a1a;font-size:.9rem;font-weight:600}.modal{border-radius:16px;max-height:80vh;max-width:500px;padding:0;width:90%}.form-header{align-items:center;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:1.5rem 2rem}.form-header h2{color:#2d3748;font-size:1.5rem;font-weight:700;margin:0}.close-btn{background:none;border:none;border-radius:.25rem;color:#718096;cursor:pointer;font-size:1.5rem;padding:.25rem;transition:all .2s ease}.close-btn:hover{background:#f7fafc;color:#2d3748}.modal form{padding:2rem}.form-group{margin-bottom:1.5rem}.form-group label{color:#4a5568;font-size:.9rem}.form-group input,.form-group select,.form-group textarea{border:2px solid #e2e8f0;box-sizing:border-box}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#667eea;box-shadow:0 0 0 3px #667eea1a}.form-group textarea{min-height:80px;resize:vertical}.form-group small{color:#718096;display:block;font-size:.8rem;margin-top:.25rem}.form-actions{border-top:1px solid #e2e8f0;display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1rem}.form-actions button{border:none;border-radius:.5rem;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:all .2s ease}.form-actions button[type=button]{background:#e2e8f0;color:#4a5568}.form-actions button[type=button]:hover{background:#cbd5e0}.form-actions .btn-primary{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.form-actions .btn-primary:hover{box-shadow:0 4px 12px #667eea4d;transform:translateY(-1px)}.balance-adjustment{max-width:600px}.current-balance,.new-balance{background:#f7fafc;border-radius:.5rem;margin-bottom:1.5rem;padding:1rem;text-align:center}.current-balance h3,.new-balance h3{color:#4a5568;font-size:.9rem;font-weight:600;letter-spacing:.5px;margin:0 0 .5rem;text-transform:uppercase}.balance-display{color:#1a1a1a;font-size:1.8rem;font-weight:700;margin:0}@media (max-width:768px){.cash-management{padding:1rem}.cash-header{align-items:stretch;flex-direction:column}.accounts-grid,.summary-cards{grid-template-columns:1fr}.account-header{align-items:flex-start;flex-direction:column;gap:.5rem}.account-actions{align-self:flex-end}.form-actions{flex-direction:column}.modal{margin:1rem;width:95%}}.reports{margin:0 auto;max-width:1200px;padding:2rem}.reports-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:2rem}.reports-header h1{color:#1a1a1a;font-size:2.5rem;font-weight:800;margin:0}.reports-header p{color:#718096;font-size:1.1rem;margin:.5rem 0 0}.header-actions{display:flex;gap:1rem}.btn-secondary{align-items:center;background:#e2e8f0;border:none;border-radius:12px;color:#4a5568;cursor:pointer;display:flex;font-weight:600;gap:8px;padding:12px 24px;transition:all .3s ease}.btn-secondary:hover{background:#cbd5e0;transform:translateY(-1px)}.period-selector{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:16px;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:2rem;padding:1.5rem}.period-buttons{display:flex;flex-wrap:wrap;gap:.5rem}.period-btn{background:#f7fafc;border:1px solid #e2e8f0;border-radius:8px;color:#4a5568;cursor:pointer;font-weight:600;padding:.5rem 1rem;transition:all .2s ease}.period-btn:hover{background:#edf2f7}.period-btn.active{background:linear-gradient(135deg,#667eea,#764ba2);border-color:#0000;color:#fff}.date-range{gap:.5rem}.date-range input{border:1px solid #e2e8f0;border-radius:6px;font-size:.9rem;padding:.5rem}.date-range span{color:#718096;font-weight:600}.summary-cards{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:3rem}.summary-card{align-items:center;background:#fff;border:1px solid #e2e8f0;border-radius:16px;display:flex;gap:1rem;padding:1.5rem;transition:all .3s ease}.summary-card:hover{box-shadow:0 8px 25px #0000001a;transform:translateY(-2px)}.card-icon{align-items:center;background:#f7fafc;border-radius:12px;display:flex;font-size:2.5rem;height:60px;justify-content:center;width:60px}.card-content h3{color:#4a5568;font-size:.9rem;font-weight:600;letter-spacing:.5px;margin:0 0 .5rem;text-transform:uppercase}.card-content p{color:#1a1a1a;font-size:1.5rem;font-weight:700;margin:0}.card-content p.positive{color:#48bb78}.card-content p.negative{color:#f56565}.total-income .card-icon{background:linear-gradient(135deg,#48bb78,#38a169)}.total-expenses .card-icon{background:linear-gradient(135deg,#f56565,#e53e3e)}.net-income .card-icon{background:linear-gradient(135deg,#4299e1,#3182ce)}.total-transactions .card-icon{background:linear-gradient(135deg,#ed8936,#dd6b20)}.section-header{margin-bottom:2rem}.section-header h2{color:#1a1a1a;font-size:2rem;font-weight:700;margin:0 0 .5rem}.section-header p{color:#718096;font-size:1rem;margin:0}.category-breakdown{background:#fff;border:1px solid #e2e8f0;border-radius:16px;margin-bottom:3rem;padding:2rem}.category-list{display:flex;flex-direction:column;gap:1rem}.category-item{border:1px solid #e2e8f0;border-radius:12px;padding:1rem;transition:all .2s ease}.category-item:hover{background:#f7fafc}.category-info{justify-content:space-between;margin-bottom:.5rem}.category-info,.category-name{align-items:center;display:flex}.category-name{gap:.5rem}.category-rank{align-items:center;background:#667eea;border-radius:50%;color:#fff;display:flex;font-size:.8rem;font-weight:600;height:24px;justify-content:center;width:24px}.category-title{color:#1a1a1a;font-weight:600}.category-stats{align-items:center;display:flex;gap:1rem}.category-amount{color:#1a1a1a;font-size:1.1rem;font-weight:700}.category-percentage{color:#4a5568;font-size:.8rem;font-weight:600;padding:.25rem .5rem}.category-bar,.category-percentage{background:#e2e8f0;border-radius:4px}.category-bar{height:8px;margin-bottom:.5rem;overflow:hidden}.category-fill{background:linear-gradient(135deg,#667eea,#764ba2);height:100%;transition:width .3s ease}.category-details{color:#718096;font-size:.9rem}.recent-transactions{background:#fff;border:1px solid #e2e8f0;border-radius:16px;margin-bottom:3rem;padding:2rem}.transactions-table{overflow-x:auto}.table-header{grid-gap:1rem;background:#f7fafc;border-radius:8px;color:#4a5568;display:grid;font-size:.9rem;font-weight:600;gap:1rem;grid-template-columns:1fr 2fr 1fr 1fr 1fr;letter-spacing:.5px;padding:1rem;text-transform:uppercase}.table-body{display:flex;flex-direction:column;gap:.5rem;margin-top:.5rem}.table-row{grid-gap:1rem;border:1px solid #e2e8f0;border-radius:8px;display:grid;gap:1rem;grid-template-columns:1fr 2fr 1fr 1fr 1fr;padding:1rem;transition:all .2s ease}.table-row:hover{background:#f7fafc}.col-date{color:#718096;font-size:.9rem}.col-description{color:#1a1a1a;font-weight:600}.col-category{color:#4a5568;font-size:.9rem}.col-amount{font-weight:700;text-align:right}.col-amount.income{color:#48bb78}.col-amount.expense{color:#f56565}.col-amount.transfer{color:#4299e1}.col-account{color:#718096;font-size:.9rem}.insights{background:#fff;border:1px solid #e2e8f0;border-radius:16px;padding:2rem}.insights-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.insight-card{align-items:center;background:#f7fafc;border:1px solid #e2e8f0;border-radius:12px;display:flex;gap:1rem;padding:1.5rem;transition:all .2s ease}.insight-card:hover{background:#edf2f7;transform:translateY(-1px)}.insight-icon{align-items:center;background:#fff;border-radius:12px;display:flex;font-size:2rem;height:50px;justify-content:center;width:50px}.insight-content h3{color:#1a1a1a;font-size:1rem;font-weight:600;margin:0 0 .5rem}.insight-content p{color:#4a5568;font-size:.9rem;margin:0}.loading{color:#718096;font-size:1.1rem;padding:4rem;text-align:center}@media (max-width:768px){.reports{padding:1rem}.period-selector,.reports-header{align-items:stretch;flex-direction:column}.date-range,.period-buttons{justify-content:center}.summary-cards,.table-header,.table-row{grid-template-columns:1fr}.table-header,.table-row{gap:.5rem}.table-header>div,.table-row>div{padding:.25rem 0}.insights-grid{grid-template-columns:1fr}.insight-card{flex-direction:column;text-align:center}}.charts-section{margin:2rem 0}.charts-grid{grid-gap:2rem;display:grid;gap:2rem;grid-template-columns:1fr 1fr;margin-bottom:2rem}.chart-container{background:#fff;border:1px solid #e5e7eb;border-radius:1rem;box-shadow:0 4px 6px -1px #0000001a;padding:1.5rem}.chart-container.full-width{grid-column:1/-1}.chart-container h3{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0 0 1rem;text-align:center}@media (max-width:768px){.charts-grid{gap:1rem;grid-template-columns:1fr}.chart-container{padding:1rem}.chart-container h3{font-size:1.125rem}}.recurring-transactions{margin:0 auto;max-width:1200px;padding:2rem}.recurring-transactions-loading{align-items:center;color:#6b7280;display:flex;font-size:1.2rem;height:200px;justify-content:center}.recurring-header{align-items:center;border-bottom:2px solid #e5e7eb;display:flex;justify-content:space-between;margin-bottom:2rem;padding-bottom:1rem}.recurring-header h1{color:#1f2937;font-size:2rem;font-weight:700;margin:0}.add-recurring-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:.5rem;box-shadow:0 4px 6px -1px #0000001a;color:#fff;cursor:pointer;display:flex;font-weight:600;gap:.5rem;padding:.75rem 1.5rem;transition:all .2s ease}.add-recurring-btn:hover{background:linear-gradient(135deg,#2563eb,#1e40af);box-shadow:0 6px 8px -1px #00000026;transform:translateY(-1px)}.add-recurring-btn span{font-size:1.2rem;font-weight:700}.modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.modal{background:#fff;border-radius:1rem;box-shadow:0 25px 50px -12px #00000040;max-height:90vh;max-width:600px;overflow-y:auto;padding:2rem;position:relative;width:100%}.modal h2{color:#1f2937;font-size:1.5rem;font-weight:700;margin:0 0 1.5rem}.modal-close-btn{background:none;border:none;border-radius:.25rem;color:#6b7280;cursor:pointer;font-size:1.5rem;padding:.5rem;position:absolute;right:1rem;top:1rem;transition:all .2s ease}.modal-close-btn:hover{background:#f3f4f6;color:#374151}.form-group{margin-bottom:1rem}.form-row{grid-gap:1rem;display:grid;gap:1rem;grid-template-columns:1fr 1fr}.form-group label{color:#374151;display:block;font-weight:600;margin-bottom:.5rem}.form-group input,.form-group select,.form-group textarea{border:2px solid #d1d5db;border-radius:.5rem;font-size:1rem;padding:.75rem;transition:border-color .2s ease;width:100%}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.checkbox-group{align-items:center;gap:.5rem}.checkbox-group input[type=checkbox]{margin:0;width:auto}.btn-primary{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-weight:600;margin-top:1rem;padding:.75rem 2rem;transition:all .2s ease;width:100%}.btn-primary:hover{background:linear-gradient(135deg,#2563eb,#1e40af);transform:translateY(-1px)}.recurring-transactions-list{grid-gap:1rem;display:grid;gap:1rem}.empty-state{color:#6b7280;padding:3rem 1rem;text-align:center}.empty-state-icon{font-size:4rem;margin-bottom:1rem}.empty-state h2{color:#374151;font-size:1.5rem;font-weight:600;margin-bottom:.5rem}.empty-state p{font-size:1rem;line-height:1.5}.recurring-transaction-card{grid-gap:1rem;align-items:center;background:#fff;border:2px solid #e5e7eb;border-radius:1rem;display:grid;gap:1rem;grid-template-columns:auto 1fr auto auto;overflow:hidden;padding:1.5rem;position:relative;transition:all .2s ease}.recurring-transaction-card:hover{border-color:#3b82f6;box-shadow:0 4px 6px -1px #0000001a;transform:translateY(-1px)}.transaction-icon{align-items:center;background:#f3f4f6;border-radius:.75rem;display:flex;font-size:2rem;height:3rem;justify-content:center;width:3rem}.transaction-details{flex:1 1}.transaction-details h3{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0 0 .5rem}.transaction-details p{color:#6b7280;font-size:.875rem;margin:.25rem 0}.transaction-category{color:#374151!important;font-weight:500}.transaction-frequency{color:#3b82f6!important;font-weight:500}.transaction-next-due{color:#059669!important;font-weight:500}.transaction-last-executed{color:#6b7280!important}.transaction-executions{color:#7c3aed!important;font-weight:500}.transaction-actions{align-items:center;display:flex;gap:.5rem}.action-btn{align-items:center;background:none;border:none;border-radius:.375rem;cursor:pointer;display:flex;font-size:1.25rem;height:2.5rem;justify-content:center;padding:.5rem;transition:all .2s ease;width:2.5rem}.execute-btn:hover{background:#fef3c7;transform:scale(1.1)}.edit-btn:hover{background:#dbeafe;transform:scale(1.1)}.toggle-btn:hover{background:#f3e8ff;transform:scale(1.1)}.delete-btn:hover{background:#fee2e2;transform:scale(1.1)}.transaction-amount{font-size:1.25rem;font-weight:700;min-width:120px;text-align:right}.status-indicator{border-radius:0 1rem 1rem 0;height:100%;position:absolute;right:0;top:0;width:4px}@media (max-width:768px){.recurring-transactions{padding:1rem}.recurring-header{align-items:stretch;flex-direction:column;gap:1rem}.recurring-header h1{font-size:1.5rem;text-align:center}.form-row{grid-template-columns:1fr}.recurring-transaction-card{gap:1rem;grid-template-columns:1fr;text-align:center}.transaction-actions{justify-content:center}.transaction-amount{min-width:auto;text-align:center}.modal{margin:1rem;padding:1.5rem}}@keyframes slideIn{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.recurring-transaction-card{animation:slideIn .3s ease-out}.status-overdue{border-left-color:#ef4444}.status-due-soon{border-left-color:#f59e0b}.status-on-track{border-left-color:#10b981}.status-inactive{border-left-color:#6b7280;opacity:.7}.import-export{margin:0 auto;max-width:1000px;padding:2rem}.import-export-header{margin-bottom:2rem;text-align:center}.import-export-header h1{color:#1f2937;font-size:2.5rem;font-weight:800;margin:0 0 .5rem}.import-export-header p{color:#6b7280;font-size:1.125rem;margin:0}.tab-navigation{background:#f3f4f6;border-radius:.75rem;display:flex;gap:.25rem;margin-bottom:2rem;padding:.25rem}.tab-button{align-items:center;background:#0000;border:none;border-radius:.5rem;cursor:pointer;display:flex;flex:1 1;font-weight:600;gap:.5rem;justify-content:center;padding:.75rem 1.5rem;transition:all .2s ease}.tab-button:hover{background:#e5e7eb}.tab-button.active{background:#fff;box-shadow:0 1px 3px #0000001a;color:#3b82f6}.import-section{background:#fff;border-radius:1rem;box-shadow:0 4px 6px -1px #0000001a;padding:2rem}.import-instructions{background:#f0f9ff;border:1px solid #0ea5e9;border-radius:.75rem;margin-bottom:2rem;padding:1.5rem}.import-instructions h3{color:#0c4a6e;font-size:1.25rem;font-weight:600;margin:0 0 1rem}.import-instructions ul{color:#075985;margin:0;padding-left:1.5rem}.import-instructions li{line-height:1.5;margin-bottom:.5rem}.drop-zone{background:#fafafa;border:2px dashed #d1d5db;border-radius:1rem;cursor:pointer;margin-bottom:2rem;padding:3rem 2rem;text-align:center;transition:all .3s ease}.drop-zone:hover{background:#f0f9ff;border-color:#3b82f6}.drop-zone.active{background:#eff6ff;border-color:#3b82f6;transform:scale(1.02)}.drop-zone-content{align-items:center;display:flex;flex-direction:column;gap:1rem}.drop-zone-icon{font-size:3rem;opacity:.6}.drop-zone h3{color:#374151;font-size:1.25rem;font-weight:600;margin:0}.drop-zone p{color:#6b7280;margin:0}.browse-button{background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:.5rem;color:#fff;cursor:pointer;font-weight:600;padding:.75rem 1.5rem;transition:all .2s ease}.browse-button:hover{background:linear-gradient(135deg,#2563eb,#1e40af);transform:translateY(-1px)}.template-downloads{background:#f9fafb;border-radius:.75rem;margin-bottom:2rem;padding:1.5rem}.template-downloads h4{color:#374151;font-size:1.125rem;font-weight:600;margin:0 0 1rem}.template-buttons{display:flex;flex-wrap:wrap;gap:1rem}.template-btn{align-items:center;background:#fff;border:1px solid #d1d5db;border-radius:.5rem;cursor:pointer;display:flex;font-weight:500;gap:.5rem;padding:.75rem 1rem;transition:all .2s ease}.template-btn:hover{background:#f0f9ff;border-color:#3b82f6;color:#3b82f6}.processing-indicator{align-items:center;background:#f0f9ff;border-radius:.75rem;display:flex;gap:1rem;justify-content:center;margin-bottom:2rem;padding:2rem}.spinner{animation:spin 1s linear infinite;border:3px solid #e5e7eb;border-radius:50%;border-top-color:#3b82f6;height:24px;width:24px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.processing-indicator p{color:#1e40af;font-weight:500;margin:0}.import-result{background:#fff;border:1px solid #e5e7eb;border-radius:.75rem;padding:1.5rem}.import-result h3{color:#1f2937;font-size:1.25rem;font-weight:600;margin:0 0 1rem}.result-summary{display:flex;gap:1rem;margin-bottom:1.5rem}.result-stat{border-radius:.5rem;display:flex;flex:1 1;flex-direction:column;gap:.25rem;padding:1rem;text-align:center}.result-stat.success{background:#f0fdf4;border:1px solid #10b981}.result-stat.error{background:#fef2f2;border:1px solid #ef4444}.result-stat.total{background:#f3f4f6;border:1px solid #6b7280}.stat-number{color:#1f2937;font-size:1.5rem;font-weight:700}.result-stat.success .stat-number{color:#059669}.result-stat.error .stat-number{color:#dc2626}.stat-label{color:#6b7280;font-size:.875rem;font-weight:500}.error-details{background:#fef2f2;border:1px solid #fecaca;border-radius:.5rem;padding:1rem}.error-details h4{color:#dc2626;font-size:1rem;font-weight:600;margin:0 0 .5rem}.error-details ul{margin:0;padding-left:1.5rem}.error-item{color:#991b1b;font-size:.875rem;margin-bottom:.25rem}.export-section{background:#fff;border-radius:1rem;box-shadow:0 4px 6px -1px #0000001a;padding:2rem}.export-options h3{color:#1f2937;font-size:1.5rem;font-weight:600;margin:0 0 1.5rem}.option-group{margin-bottom:1.5rem}.option-group label{color:#374151;display:block;font-weight:600;margin-bottom:.5rem}.option-group input,.option-group select{border:2px solid #d1d5db;border-radius:.5rem;font-size:1rem;padding:.75rem;transition:border-color .2s ease;width:100%}.option-group input:focus,.option-group select:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.date-range{align-items:center;display:flex;gap:1rem}.date-range span{color:#6b7280;font-weight:500}.checkbox-group{display:flex;flex-direction:column;gap:.75rem}.checkbox-item{align-items:center;border-radius:.5rem;cursor:pointer;display:flex;gap:.75rem;padding:.5rem;transition:background-color .2s ease}.checkbox-item:hover{background:#f3f4f6}.checkbox-item input[type=checkbox]{margin:0;width:auto}.checkbox-item span{color:#374151;font-weight:500}.export-button{align-items:center;background:linear-gradient(135deg,#10b981,#059669);border:none;border-radius:.75rem;color:#fff;cursor:pointer;display:flex;font-size:1.125rem;font-weight:600;gap:.75rem;justify-content:center;margin-top:1rem;padding:1rem 2rem;transition:all .2s ease;width:100%}.export-button:hover:not(:disabled){background:linear-gradient(135deg,#059669,#047857);box-shadow:0 4px 6px -1px #0000001a;transform:translateY(-1px)}.export-button:disabled{cursor:not-allowed;opacity:.6;transform:none}@media (max-width:768px){.import-export{padding:1rem}.import-export-header h1{font-size:2rem}.tab-navigation{flex-direction:column}.tab-button{justify-content:flex-start}.drop-zone{padding:2rem 1rem}.date-range,.result-summary,.template-buttons{flex-direction:column}.date-range{align-items:stretch}.date-range span{text-align:center}}@keyframes fileUpload{0%{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}to{opacity:1;transform:scale(1)}}.drop-zone.active{animation:fileUpload .3s ease-in-out}.import-success{background:#f0fdf4;border-color:#10b981}.import-error{background:#fef2f2;border-color:#ef4444}.loading-overlay{align-items:center;background:#ffffffe6;border-radius:1rem;bottom:0;display:flex;justify-content:center;left:0;position:absolute;right:0;top:0;z-index:10}.file-type-indicator{align-items:center;background:#f3f4f6;border-radius:.25rem;color:#6b7280;display:inline-flex;font-size:.75rem;font-weight:500;gap:.25rem;padding:.25rem .5rem}.file-type-indicator.csv{background:#fef3c7;color:#92400e}.file-type-indicator.excel{background:#dbeafe;color:#1e40af}.notification-container{display:flex;flex-direction:column;gap:10px;max-width:400px;position:fixed;right:20px;top:20px;width:100%;z-index:9999}.notification{align-items:flex-start;animation:slideInRight .3s ease-out;background:#fff;border-left:4px solid;border-radius:12px;box-shadow:0 10px 25px #00000026;cursor:pointer;display:flex;gap:12px;overflow:hidden;padding:16px;position:relative;transition:all .3s ease}.notification:hover{box-shadow:0 15px 35px #0003;transform:translateX(-5px)}.notification:before{animation:shimmer 2s infinite;background:linear-gradient(90deg,#0000,#ffffff4d,#0000);content:"";height:3px;left:0;position:absolute;right:0;top:0}.notification-success{background:linear-gradient(135deg,#f0fdf4,#fff);border-left-color:#10b981}.notification-error{background:linear-gradient(135deg,#fef2f2,#fff);border-left-color:#ef4444}.notification-warning{background:linear-gradient(135deg,#fffbeb,#fff);border-left-color:#f59e0b}.notification-info{background:linear-gradient(135deg,#eff6ff,#fff);border-left-color:#3b82f6}.notification-icon{flex-shrink:0;font-size:20px;margin-top:2px}.notification-content{flex:1 1;min-width:0}.notification-header{align-items:flex-start;display:flex;justify-content:space-between;margin-bottom:4px}.notification-title{color:#1f2937;font-size:14px;font-weight:600;line-height:1.3;margin:0}.notification-time{color:#6b7280;font-size:11px;margin-left:8px;white-space:nowrap}.notification-message{word-wrap:break-word;color:#4b5563;font-size:13px;line-height:1.4;margin:0}.notification-close{align-items:center;background:none;border:none;border-radius:50%;color:#9ca3af;cursor:pointer;display:flex;flex-shrink:0;font-size:18px;height:20px;justify-content:center;padding:0;transition:all .2s ease;width:20px}.notification-close:hover{background:#0000001a;color:#374151}@keyframes slideInRight{0%{opacity:0;transform:translateX(100%)}to{opacity:1;transform:translateX(0)}}@keyframes slideOutRight{0%{opacity:1;transform:translateX(0)}to{opacity:0;transform:translateX(100%)}}@keyframes shimmer{0%{transform:translateX(-100%)}to{transform:translateX(100%)}}.notification-timed:after{animation:progressBar 5s linear forwards;background:#0000001a;bottom:0;content:"";height:2px;left:0;position:absolute}@keyframes progressBar{0%{width:100%}to{width:0}}@media (max-width:768px){.notification-container{left:10px;max-width:none;right:10px;top:10px}.notification{padding:12px}.notification-title{font-size:13px}.notification-message{font-size:12px}.notification-time{font-size:10px}}@media (prefers-color-scheme:dark){.notification{background:#1f2937;color:#f9fafb}.notification-title{color:#f9fafb}.notification-message{color:#d1d5db}.notification-time{color:#9ca3af}.notification-close{color:#6b7280}.notification-close:hover{background:#ffffff1a;color:#d1d5db}.notification-success{background:linear-gradient(135deg,#064e3b,#1f2937)}.notification-error{background:linear-gradient(135deg,#7f1d1d,#1f2937)}.notification-warning{background:linear-gradient(135deg,#78350f,#1f2937)}.notification-info{background:linear-gradient(135deg,#1e3a8a,#1f2937)}}.notification:focus{outline:2px solid #3b82f6;outline-offset:2px}.notification-close:focus{outline:2px solid #3b82f6;outline-offset:1px}@media (prefers-contrast:high){.notification{border:2px solid}.notification-success{border-color:#10b981}.notification-error{border-color:#ef4444}.notification-warning{border-color:#f59e0b}.notification-info{border-color:#3b82f6}}.layout{background:#f8fafc;display:flex;min-height:100vh}.sidebar{background:#fff;border-right:1px solid #e2e8f0;box-shadow:2px 0 10px #0000001a;display:flex;flex-direction:column;height:100vh;left:0;position:fixed;transition:left .3s ease;width:280px;z-index:1000}.sidebar:not(.open){left:-280px}.main-content{margin-left:280px;transition:margin-left .3s ease}.sidebar:not(.open)~.main-content{margin-left:0}.sidebar-header{border-bottom:1px solid #e2e8f0;justify-content:space-between;padding:24px}.logo,.sidebar-header{align-items:center;display:flex}.logo{gap:12px}.logo-icon{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#667eea,#764ba2);-webkit-background-clip:text;background-clip:text;font-size:28px}.logo-text{color:#1a1a1a;font-size:20px;font-weight:700}.sidebar-toggle{background:none;border:none;border-radius:8px;color:#718096;cursor:pointer;font-size:20px;padding:8px;transition:all .3s ease}.sidebar-toggle:hover{background:#f7fafc;color:#4a5568}.sidebar-nav{flex:1 1;padding:24px 0}.nav-item{align-items:center;background:none;border:none;color:#4a5568;cursor:pointer;display:flex;font-size:15px;font-weight:500;gap:16px;padding:16px 24px;text-align:left;transition:all .3s ease;width:100%}.nav-item:hover{background:#f7fafc;color:#667eea}.nav-item.active{background:linear-gradient(135deg,#667eea1a,#764ba21a);border-right:3px solid #667eea;color:#667eea}.nav-icon{font-size:20px;text-align:center;width:24px}.nav-label{font-weight:500}.sidebar-footer{border-top:1px solid #e2e8f0;padding:24px}.logout-btn{align-items:center;background:#fee2e2;border:none;border-radius:12px;color:#dc2626;cursor:pointer;display:flex;font-size:15px;font-weight:500;gap:16px;padding:16px;transition:all .3s ease;width:100%}.logout-btn:hover{background:#fecaca;transform:translateY(-1px)}.main-content{display:flex;flex:1 1;flex-direction:column;min-height:100vh}.topbar{align-items:center;background:#fff;border-bottom:1px solid #e2e8f0;display:flex;justify-content:space-between;padding:16px 24px;position:-webkit-sticky;position:sticky;top:0;z-index:100}.menu-toggle{background:none;border:none;border-radius:8px;color:#4a5568;cursor:pointer;font-size:24px;padding:8px;transition:all .3s ease}.menu-toggle:hover{background:#f7fafc;color:#667eea}.topbar-right{gap:20px}.topbar-right,.user-info{align-items:center;display:flex}.user-info{background:#f7fafc;border-radius:12px;gap:12px;padding:8px 16px}.user-avatar{align-items:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:50%;color:#fff;display:flex;font-size:20px;height:32px;justify-content:center;width:32px}.user-name{color:#4a5568;font-size:14px;font-weight:500}.page-content{flex:1 1;overflow-y:auto;padding:24px}.mobile-overlay{background:#00000080;bottom:0;display:none;left:0;position:fixed;right:0;top:0;z-index:999}@media (min-width:1024px){.sidebar{box-shadow:2px 0 10px #0000001a;left:0;position:fixed}.main-content{margin-left:280px}.menu-toggle,.sidebar-toggle{display:none}.mobile-overlay{display:none!important}}@media (max-width:1023px){.sidebar{left:-280px}.sidebar.open{left:0}.main-content{margin-left:0}.menu-toggle,.mobile-overlay,.sidebar-toggle{display:block}.page-content{padding:16px}.topbar{padding:12px 16px}}@media (max-width:768px){.sidebar{left:-100%;width:100%}.sidebar.open{left:0}.user-info{padding:6px 12px}.user-name{display:none}}
/*# sourceMappingURL=main.31c54a3f.css.map*/