:root{--primary-color: #3498db;--success-color: #27ae60;--danger-color: #e74c3c;--warning-color: #f39c12;--info-color: #17a2b8;--light-color: #f8f9fa;--dark-color: #343a40;--border-color: #dee2e6}*{margin:0;padding:0;box-sizing:border-box}body{font-family:'Segoe UI', Tahoma, Geneva, Verdana, sans-serif;background-color:#f5f6fa;color:#2c3e50;line-height:1.4;font-size:0.875rem}.container{max-width:100%;margin:0 auto;padding:0 15px}.navbar{background:linear-gradient(135deg, #4a5568 0%, #2d3748 100%);padding:0.75rem 0;box-shadow:0 2px 10px rgba(0,0,0,0.1)}.navbar .container{display:flex;justify-content:space-between;align-items:center}.navbar-brand{color:white;text-decoration:none;font-size:1.25rem;font-weight:600}.navbar-nav{display:flex;gap:0.75rem;align-items:center}.nav-link{color:white;text-decoration:none;padding:0.4rem 0.8rem;border-radius:5px;transition:all 0.3s ease;font-size:0.875rem}.nav-link:hover{background-color:rgba(255,255,255,0.1)}.btn{display:inline-block;padding:0.4rem 0.8rem;border:none;border-radius:5px;text-decoration:none;cursor:pointer;font-size:0.8rem;transition:all 0.3s ease}.btn-primary{background-color:var(--primary-color);color:white}.btn-success{background-color:var(--success-color);color:white}.btn-danger{background-color:var(--danger-color);color:white}.btn-secondary{background-color:#6c757d;color:white}.btn-outline-primary{border:1px solid var(--primary-color);color:var(--primary-color);background:transparent}.btn-outline-secondary{border:1px solid #6c757d;color:#6c757d;background:transparent}.btn-outline-danger{border:1px solid var(--danger-color);color:var(--danger-color);background:transparent}.btn:hover{transform:translateY(-1px);box-shadow:0 3px 8px rgba(0,0,0,0.15)}.btn-sm{padding:0.2rem 0.4rem;font-size:0.75rem}.dashboard{padding:1.5rem 0}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem}.dashboard-header h1{font-size:2rem;color:#2c3e50}.month-selector .form-inline{display:flex;gap:0.75rem;align-items:center}.summary-cards{display:grid;grid-template-columns:repeat(auto-fit, minmax(250px, 1fr));gap:1.5rem;margin-bottom:2rem}.summary-card{background:white;padding:1.5rem;border-radius:12px;box-shadow:0 3px 10px rgba(0,0,0,0.08);text-align:center;border-left:4px solid;min-height:100px;display:flex;flex-direction:column;justify-content:center}.summary-card.income{border-left-color:var(--success-color)}.summary-card.expense{border-left-color:var(--danger-color)}.summary-card.balance{border-left-color:var(--primary-color)}.summary-card.balance.positive{border-left-color:var(--success-color)}.summary-card.balance.negative{border-left-color:var(--danger-color)}.summary-card h3,.summary-card h4{color:#7f8c8d;margin-bottom:0.75rem;font-size:0.9rem;font-weight:500}.summary-card .value{font-size:1.6rem;font-weight:600;color:var(--primary-color);margin-bottom:0.25rem}.dashboard-content{display:grid;grid-template-columns:2fr 1fr;gap:1.5rem}.recent-transactions,.expenses-by-category{background:white;padding:1.5rem;border-radius:12px;box-shadow:0 3px 10px rgba(0,0,0,0.08)}.recent-transactions h2,.expenses-by-category h2{margin-bottom:1rem;color:#2c3e50;font-size:1.1rem}.transaction-item{display:flex;align-items:center;gap:1rem;padding:1rem;border-bottom:1px solid var(--border-color);transition:all 0.3s ease;margin-bottom:0.25rem;border-radius:6px;background:white}.transaction-item:hover{background-color:#f8f9fa;box-shadow:0 1px 4px rgba(0,0,0,0.1);transform:translateX(2px)}.transaction-item:last-child{border-bottom:none}.transaction-item.income{border-left:3px solid var(--success-color)}.transaction-item.expense{border-left:3px solid var(--danger-color)}.transaction-info{flex:1;display:flex;flex-direction:column;gap:0.25rem}.transaction-info strong{display:block;font-size:0.95rem;color:#2c3e50;margin-bottom:0.2rem}.transaction-info .category{background:#e9ecef;padding:0.2rem 0.6rem;border-radius:10px;font-size:0.75rem;margin-right:0.4rem;color:#495057;font-weight:500}.transaction-info .date{color:#6c757d;font-size:0.8rem;font-weight:500}.transaction-amount{font-family:'Courier New', monospace;letter-spacing:0.3px;font-weight:600;font-size:1rem;margin:0 1rem;min-width:100px;text-align:right}.transaction-actions{display:flex;gap:0.5rem;flex-shrink:0}.form-group{margin-bottom:1rem}.form-group label{display:block;margin-bottom:0.4rem;font-weight:500;color:#2c3e50;font-size:0.85rem}.form-control{width:100%;padding:0.6rem;border:1px solid var(--border-color);border-radius:5px;font-size:0.875rem;transition:border-color 0.3s ease}.form-control:focus{outline:none;border-color:var(--primary-color);box-shadow:0 0 0 0.15rem rgba(52,152,219,0.2)}.form-actions{display:flex;gap:0.75rem;margin-top:1.5rem}.transaction-form{background:white;padding:1.5rem;border-radius:12px;box-shadow:0 3px 10px rgba(0,0,0,0.08);max-width:600px;margin:1.5rem auto}.alert{padding:1rem;margin-bottom:1rem;border-radius:6px;border:1px solid transparent;font-size:0.875rem}.alert-success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.alert-danger{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.category-chart{display:flex;flex-direction:column;gap:0.75rem}.monthly-tabs-container{margin-top:1.5rem}.month-tabs{display:flex;gap:0.75rem;margin-bottom:2rem;border-bottom:2px solid #e9ecef;padding-bottom:0;flex-wrap:wrap;align-items:center}.month-tab{display:flex;flex-direction:column;align-items:center;padding:0.8rem 1.5rem;background:white;border:2px solid #e9ecef;border-bottom:none;border-radius:8px 8px 0 0;text-decoration:none;color:#6c757d;transition:all 0.3s ease;position:relative;top:2px;min-width:100px}.month-tab:hover{background:#f8f9fa;color:#495057;text-decoration:none;transform:translateY(-1px)}.month-tab.active{background:var(--primary-color);color:white;border-color:var(--primary-color);box-shadow:0 -3px 6px rgba(52,152,219,0.2)}.tab-name{font-weight:600;font-size:0.8rem}.tab-year{font-size:0.7rem;opacity:0.8}.new-month-tab{margin-left:auto;padding:0.4rem}.new-month-form{display:flex;gap:0.4rem;align-items:center}.form-control-sm{padding:0.2rem 0.4rem;font-size:0.75rem;border:1px solid #ced4da;border-radius:3px}.month-content{background:white;border-radius:0 12px 12px 12px;padding:2rem;box-shadow:0 3px 10px rgba(0,0,0,0.08);min-height:60vh}.month-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem;border-bottom:2px solid #e9ecef;padding-bottom:1rem}.month-header h1{color:#2c3e50;margin:0;font-size:2.2rem}.month-actions{display:flex;gap:0.75rem}.monthly-data{display:grid;grid-template-columns:1fr 1fr;gap:2.5rem;margin-top:2rem}.income-section,.expense-section{background:#f8f9fa;padding:1.8rem;border-radius:12px;border:1px solid #e9ecef;height:500px;display:flex;flex-direction:column;overflow:hidden}.income-section{border-left:4px solid var(--success-color)}.expense-section{border-left:4px solid var(--danger-color)}.income-section h2,.expense-section h2{margin-bottom:1.5rem;color:#2c3e50;border-bottom:2px solid #e9ecef;padding-bottom:0.75rem;font-size:1.2rem;flex-shrink:0}.transactions-list{flex:1;overflow-y:auto;overflow-x:hidden;padding-right:0.5rem;margin-right:-0.5rem}.transactions-list::-webkit-scrollbar{width:6px}.transactions-list::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.transactions-list::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:10px;transition:background 0.3s ease}.transactions-list::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.transactions-list{scrollbar-width:thin;scrollbar-color:#c1c1c1 #f1f1f1}.transactions-list{scroll-behavior:smooth}.category-summary{margin-top:2rem;padding-top:2rem;border-top:2px solid #e9ecef;flex-shrink:0;max-height:200px;overflow-y:auto}.category-summary::-webkit-scrollbar{width:4px}.category-summary::-webkit-scrollbar-track{background:#f1f1f1;border-radius:10px}.category-summary::-webkit-scrollbar-thumb{background:#d1d1d1;border-radius:10px}.category-summary h3{margin-bottom:0.75rem;color:#2c3e50;font-size:1rem}.category-item{display:grid;grid-template-columns:140px 100px 1fr 50px;gap:1rem;align-items:center;margin-bottom:0.75rem;padding:0.6rem;background:white;border-radius:6px;box-shadow:0 1px 3px rgba(0,0,0,0.05)}.category-name{font-weight:500;color:#2c3e50;font-size:0.875rem}.category-amount{font-family:'Courier New', monospace;letter-spacing:0.3px;text-align:right;font-weight:600;color:var(--danger-color);font-size:0.875rem}.category-percentage{font-size:0.75rem;color:#6c757d;text-align:right}.empty-state{text-align:center;padding:2rem 1rem;color:#6c757d;background:white;border-radius:12px;border:2px dashed #e9ecef;margin:1rem 0.25rem 0 0;display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:200px}.empty-state p{margin-bottom:1rem;font-size:1rem}.section-total{margin-top:0.75rem;padding:0.75rem;border-radius:6px;text-align:right;font-size:1rem;border:2px solid}.section-total.income{background:rgba(39,174,96,0.1);border-color:var(--success-color);color:var(--success-color)}.section-total.expense{background:rgba(231,76,60,0.1);border-color:var(--danger-color);color:var(--danger-color)}.value{font-family:'Courier New', monospace;letter-spacing:0.3px}.transaction-amount{font-family:'Courier New', monospace;letter-spacing:0.3px}.category-amount{font-family:'Courier New', monospace;letter-spacing:0.3px}.payment-checkbox{display:flex;align-items:center;margin-right:0.75rem}.checkbox-btn{background:none;border:none;padding:0;cursor:pointer;font-size:1.4rem;transition:all 0.3s ease;display:flex;align-items:center;justify-content:center;width:35px;height:35px;border-radius:6px}.checkbox-btn:hover{background-color:rgba(0,0,0,0.1);transform:scale(1.05)}.checkbox-btn.checked{background-color:rgba(39,174,96,0.2)}.checkbox-btn.unchecked{background-color:rgba(0,0,0,0.05)}.checkbox-icon{font-size:1.1rem;line-height:1}.transaction-item.pending{opacity:0.7;background-color:rgba(255,193,7,0.1)}.transaction-item.paid{background-color:rgba(39,174,96,0.05)}.transaction-item.overdue{background-color:rgba(231,76,60,0.1);border-left:3px solid var(--danger-color)}.status-badge{display:inline-block;padding:0.2rem 0.6rem;border-radius:12px;font-size:0.7rem;font-weight:500;text-transform:uppercase;letter-spacing:0.3px;margin-top:0.15rem}.status-badge.pending{background-color:#fff3cd;color:#856404;border:1px solid #ffeaa7}.status-badge.paid{background-color:#d1ecf1;color:#0c5460;border:1px solid #bee5eb}.overdue-indicator,.due-today-indicator{display:block;margin-top:0.15rem;font-size:0.55rem;font-weight:bold}.overdue-indicator{color:var(--danger-color)}.due-today-indicator{color:var(--warning-color)}.summary-section{margin:2rem 0}.summary-row{margin-bottom:2rem}.summary-row h3{margin-bottom:1rem;color:#2c3e50;border-bottom:2px solid #e9ecef;padding-bottom:0.6rem;font-size:1.1rem}.summary-card.paid{border-left-color:var(--success-color);background:linear-gradient(135deg, rgba(39,174,96,0.08), rgba(39,174,96,0.03))}.summary-card.planned{border-left-color:var(--primary-color);background:linear-gradient(135deg, rgba(52,152,219,0.08), rgba(52,152,219,0.03))}.summary-card small{display:block;margin-top:0.4rem;color:#6c757d;font-size:0.75rem}.alerts-section{margin:1rem 0 2rem 0}.alert-warning{background-color:#fff3cd;border:1px solid #ffeaa7;color:#856404}@media (max-width: 1200px){.container{max-width:100%;padding:0 10px}.monthly-data{gap:1.5rem}.income-section,.expense-section{height:400px}}@media (max-width: 768px){.container{padding:0 8px}.month-content{padding:1rem}.monthly-data{grid-template-columns:1fr;gap:1.5rem}.summary-cards{grid-template-columns:1fr;gap:1rem}.transaction-item{flex-direction:column;align-items:flex-start;gap:0.75rem;padding:1rem}.payment-checkbox{align-self:flex-start;margin-right:0;margin-bottom:0.4rem}.transaction-amount{margin:0;align-self:flex-end}.transaction-actions{width:100%;justify-content:flex-end}.category-item{grid-template-columns:1fr;gap:0.4rem;text-align:center}.month-header{flex-direction:column;gap:1rem;text-align:center}.month-header h1{font-size:1.8rem}.month-tabs{flex-direction:column;align-items:stretch}.month-tab{flex-direction:row;justify-content:space-between}.new-month-tab{margin-left:0}.income-section,.expense-section{height:350px}}.auth-container{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg, #4a5568 0%, #2d3748 100%);padding:20px}.auth-card{background:white;border-radius:16px;box-shadow:0 20px 60px rgba(0,0,0,0.3);padding:40px;width:100%;max-width:450px;animation:slideUp 0.5s ease-out}@keyframes slideUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.auth-header{text-align:center;margin-bottom:30px}.auth-logo{font-size:48px;margin-bottom:15px}.auth-header h1{color:#2c3e50;font-size:1.8rem;margin-bottom:8px;font-weight:700}.auth-header p{color:#6c757d;font-size:0.95rem}.auth-form{margin-bottom:20px}.auth-form .form-group{margin-bottom:20px}.auth-form label{display:block;margin-bottom:8px;font-weight:600;color:#2c3e50;font-size:0.9rem}.input-with-icon{position:relative;display:flex;align-items:center;background:#f8f9fa;border-radius:10px;border:2px solid #e9ecef;transition:all 0.3s ease}.input-with-icon:focus-within{border-color:#4a5568;background:white;box-shadow:0 0 0 3px rgba(74,85,104,0.1)}.input-icon{position:absolute;left:12px;top:50%;transform:translateY(-50%);font-size:16px;pointer-events:none}.input-with-icon .form-control{padding-left:42px;background:transparent !important;border:none !important;box-shadow:none !important}.auth-form .form-control{width:100%;padding:12px 15px;border:2px solid #e9ecef;border-radius:10px;font-size:1rem;transition:all 0.3s ease;background:#f8f9fa}.auth-form .form-control:focus{outline:none;border-color:#4a5568;background:white;box-shadow:0 0 0 3px rgba(74,85,104,0.1)}.auth-form .form-control::placeholder{color:#adb5bd}.form-hint{display:block;margin-top:6px;font-size:0.8rem;color:#6c757d}.form-row{display:flex;gap:15px}.form-group.half{flex:1}.form-divider{border:none;border-top:2px solid #e9ecef;margin:25px 0 20px}.form-section-title{color:#6c757d;font-size:0.9rem;margin-bottom:15px;font-weight:500}.form-section-description{display:flex;align-items:center;gap:0.5rem;color:var(--text-secondary, #718096);font-size:0.85rem;margin:-10px 0 15px 0;padding:0.75rem 1rem;background:rgba(59,130,246,0.06);border-left:3px solid var(--color-primary, #4a5568);border-radius:6px}.form-section-description i{color:var(--color-primary, #4a5568);font-size:1rem;flex-shrink:0}.profile-page.auth-container{background:var(--color-bg, #f5f5f5)}.profile-card{max-width:700px !important}.profile-block{background:white;border-radius:12px;padding:24px;margin-bottom:24px;border:1px solid #e9ecef}.profile-block:last-of-type{margin-bottom:0}.block-title{display:flex;align-items:center;gap:10px;font-size:1.1rem;font-weight:600;color:var(--color-text-primary, #1a202c);margin:0 0 16px 0}.block-title i{font-size:1.2rem;color:var(--color-text-secondary, #718096)}.primary-block-title{color:var(--color-primary, #4a5568);font-size:1.2rem}.primary-block-title i{color:var(--color-primary, #4a5568)}.financial-block{background:white;border-color:rgba(59,130,246,0.2);border-left:4px solid var(--color-primary, #4a5568)}.block-description{font-size:0.9rem;color:var(--color-text-secondary, #718096);margin:-8px 0 20px 0;line-height:1.6}.block-description strong{color:var(--color-text-primary, #1a202c);font-weight:600}.block-description-small{font-size:0.85rem;color:var(--color-text-muted, #a0aec0);margin:-8px 0 16px 0}.readonly-field{background:#e9ecef !important;color:#6c757d !important;cursor:not-allowed;border-color:#dee2e6 !important}.safety-months-group{display:flex;align-items:center;gap:12px;padding:12px;background:white;border:1px solid #dee2e6;border-radius:8px}.safety-month-input{width:80px !important;text-align:center;font-weight:600;font-size:1.1rem}.months-separator{color:var(--color-text-muted, #a0aec0);font-size:0.9rem;font-weight:500}.months-label{color:var(--color-text-secondary, #718096);font-size:0.9rem;font-weight:500}.highlight-group{background:white;padding:16px;border-radius:8px;border:2px solid rgba(59,130,246,0.15)}.highlight-group label{font-weight:600;color:var(--color-text-primary, #1a202c)}.money-input-group{display:flex;align-items:center;background:white;border:1px solid #dee2e6;border-radius:8px;overflow:hidden;transition:border-color 0.2s ease}.money-input-group:focus-within{border-color:var(--color-primary, #4a5568);box-shadow:0 0 0 3px rgba(74,85,104,0.1)}.money-prefix{padding:12px 16px;background:#f8f9fa;border-right:1px solid #dee2e6;font-weight:600;font-size:1.1rem;color:var(--color-text-primary, #1a202c)}.money-input{border:none !important;box-shadow:none !important;flex:1;font-size:1.2rem !important;font-weight:600 !important;padding:12px 16px !important;font-variant-numeric:tabular-nums}.money-input:focus{outline:none !important}.security-block{background:white;border-color:#e9ecef}.security-block .block-title{font-size:1rem;color:var(--color-text-secondary, #718096)}.security-block .block-title i{font-size:1rem}.account-block{background:white;border-color:#e9ecef}@media (max-width: 768px){.profile-card{max-width:100% !important}.profile-block{padding:16px;margin-bottom:16px}.safety-months-group{flex-wrap:wrap;justify-content:center}.safety-month-input{width:70px !important}.money-input{font-size:1rem !important}.money-prefix{padding:10px 12px;font-size:1rem}}.auth-form .form-actions{margin-top:25px}.btn-block{width:100%;padding:14px 20px;font-size:1rem;font-weight:600;border-radius:10px}.auth-form .btn-primary{background:var(--color-primary, #4a5568);border:none;color:white;transition:all 0.2s ease}.auth-form .btn-primary:hover{background:var(--color-primary-dark, #2d3748)}.auth-links{text-align:center;padding-top:20px;border-top:1px solid #e9ecef}.auth-links p{margin:10px 0;color:#6c757d;font-size:0.9rem}.auth-link{color:#4a5568;text-decoration:none;font-weight:500;transition:color 0.2s ease}.auth-link:hover{color:#2d3748;text-decoration:underline}.auth-link.highlight{color:#2d3748;font-weight:600}.token-display{background:#f8f9fa;border:2px dashed #e9ecef;border-radius:12px;padding:20px;margin:20px 0;text-align:center}.token-label{color:#6c757d;font-size:0.9rem;margin-bottom:10px}.token-box{background:white;border:1px solid #dee2e6;border-radius:8px;padding:12px;word-break:break-all;font-family:monospace;font-size:0.85rem}.token-box a{color:#4a5568;text-decoration:none}.token-box a:hover{text-decoration:underline}.token-hint{display:block;margin-top:10px;color:#6c757d;font-size:0.8rem}.auth-card .alert{margin-bottom:20px;border-radius:10px;padding:12px 15px}.auth-card .alert ul{margin:10px 0 0 20px;padding:0}.auth-card .alert li{margin:5px 0}.user-menu{display:flex;align-items:center;gap:15px}.locale-selector{display:flex;align-items:center}.locale-form{margin:0}.locale-select{background:rgba(255,255,255,0.15);border:1px solid rgba(255,255,255,0.3);color:white;padding:6px 10px;border-radius:6px;font-size:0.9rem;cursor:pointer;transition:all 0.3s ease;outline:none;font-weight:500}.locale-select:hover{background:rgba(255,255,255,0.25);border-color:rgba(255,255,255,0.5)}.locale-select:focus{background:rgba(255,255,255,0.25);border-color:rgba(255,255,255,0.6);box-shadow:0 0 0 2px rgba(255,255,255,0.1)}.locale-select option{background:#4a5568;color:white;padding:8px}.user-info{display:flex;align-items:center;gap:8px;color:white;font-size:0.9rem}.user-avatar{width:32px;height:32px;background:rgba(255,255,255,0.2);border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:14px}.user-name{font-weight:500}.user-actions{display:flex;gap:8px}.btn-logout{background:rgba(255,255,255,0.1);border:1px solid rgba(255,255,255,0.3);color:white;padding:6px 12px;border-radius:6px;font-size:0.8rem;cursor:pointer;transition:all 0.3s ease;text-decoration:none}.btn-logout:hover{background:rgba(255,255,255,0.2);border-color:rgba(255,255,255,0.5)}.btn-profile{background:transparent;border:1px solid rgba(255,255,255,0.3);color:white;padding:6px 12px;border-radius:6px;font-size:0.8rem;cursor:pointer;transition:all 0.3s ease;text-decoration:none}.btn-profile:hover{background:rgba(255,255,255,0.1)}.btn-admin{background:rgba(255,193,7,0.2);border:1px solid rgba(255,193,7,0.5);color:#ffc107;padding:6px 12px;border-radius:6px;font-size:0.8rem;cursor:pointer;transition:all 0.3s ease;text-decoration:none}.btn-admin:hover{background:rgba(255,193,7,0.3);color:#ffc107}@media (max-width: 480px){.auth-card{padding:30px 25px;border-radius:12px}.auth-header h1{font-size:1.5rem}.auth-logo{font-size:40px}.form-row{flex-direction:column;gap:0}.form-group.half{width:100%}.user-menu{flex-direction:column;gap:10px}.user-info{display:none}}.navbar-brand i{margin-right:8px;font-size:1.3rem;vertical-align:middle}.nav-link i{margin-right:5px;font-size:0.9rem}.btn i{margin-right:5px}.user-avatar i{font-size:1.8rem;color:white}.auth-logo i{font-size:48px;color:#4a5568}.navbar{box-shadow:0 2px 4px rgba(0,0,0,0.1)}.btn{font-weight:500;letter-spacing:0.3px}.card-improved{border:1px solid rgba(0,0,0,0.08)}.insight-card{border:1px solid #e9ecef}@media (max-width: 768px){.navbar{padding:0.5rem 0}.navbar .container{flex-wrap:wrap;gap:10px}.navbar-brand{font-size:1rem;flex-shrink:0}.navbar-brand i{margin-right:6px;font-size:1.1rem}.navbar-nav{order:3;width:100%;flex-wrap:wrap;gap:0.5rem;justify-content:flex-start}.navbar-nav .nav-link{font-size:0.75rem;padding:0.3rem 0.6rem}.nav-link i{margin-right:3px;font-size:0.8rem}.navbar-nav .btn-success,.navbar-nav .btn-danger{display:none}.user-menu{margin-left:auto;gap:5px}.user-actions{gap:5px}.btn-logout,.btn-profile{font-size:0.7rem;padding:4px 8px}.user-avatar i{font-size:1.5rem}}.editor-wrapper{border:1px solid #e2e8f0;border-radius:8px;background:white;overflow:hidden}.editor-toolbar{display:flex;flex-wrap:wrap;gap:8px;padding:10px 14px;background:linear-gradient(180deg, #fcfcfc 0%, #f5f5f5 100%);border-bottom:1px solid #d4d4d4;box-shadow:inset 0 -1px 0 0 rgba(255,255,255,0.5)}.toolbar-group{display:flex;gap:2px;align-items:center;background:white;border:1px solid #d4d4d4;border-radius:4px;padding:2px;box-shadow:0 1px 2px rgba(0,0,0,0.04)}.toolbar-button{display:inline-flex;align-items:center;justify-content:center;width:32px;height:32px;padding:0;background:transparent;border:none;border-radius:3px;font-size:14px;color:#333;cursor:pointer;transition:all 0.12s ease;user-select:none;position:relative}.toolbar-button svg{width:16px;height:16px;display:block}.toolbar-button:hover{background:#e8f4fd;color:#0066cc}.toolbar-button:active{background:#d0e9f8}.toolbar-button.is-active{background:#0066cc;color:white;box-shadow:inset 0 1px 2px rgba(0,0,0,0.15)}.toolbar-button.is-active:hover{background:#0052a3}.toolbar-select{height:32px;padding:4px 28px 4px 8px;background:white;border:1px solid #d4d4d4;border-radius:4px;font-size:13px;font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Oxygen, Ubuntu, Cantarell, sans-serif;color:#333;cursor:pointer;outline:none;appearance:none;background-image:url('data:image/svg+xml;charset=UTF-8,<svg width="10" height="6" viewBox="0 0 10 6" xmlns="http://www.w3.org/2000/svg"><path d="M1 1l4 4 4-4" stroke="%23666" stroke-width="1.5" fill="none" stroke-linecap="round" stroke-linejoin="round"/></svg>');background-repeat:no-repeat;background-position:right 8px center;transition:all 0.15s ease;min-width:120px}.toolbar-select:hover{border-color:#999;background-color:#f9f9f9}.toolbar-select:focus{border-color:#0066cc;box-shadow:0 0 0 2px rgba(0,102,204,0.1)}.toolbar-separator{width:1px;height:24px;background:#d4d4d4;margin:0 4px;align-self:center}.editor-content{min-height:500px}.ProseMirror{padding:24px;min-height:500px;outline:none;font-size:15px;line-height:1.7;color:#2d3748}.ProseMirror:focus{outline:none}.ProseMirror p.is-editor-empty:first-child::before{content:attr(data-placeholder);color:#a0aec0;pointer-events:none;height:0;float:left}.ProseMirror h1{font-size:2rem;font-weight:700;line-height:1.2;margin-top:1.5rem;margin-bottom:0.75rem;color:#1a202c}.ProseMirror h2{font-size:1.5rem;font-weight:700;line-height:1.3;margin-top:1.25rem;margin-bottom:0.5rem;color:#1a202c}.ProseMirror h3{font-size:1.25rem;font-weight:600;line-height:1.4;margin-top:1rem;margin-bottom:0.5rem;color:#2d3748}.ProseMirror h1:first-child,.ProseMirror h2:first-child,.ProseMirror h3:first-child{margin-top:0}.ProseMirror p{margin-bottom:1rem}.ProseMirror p:last-child{margin-bottom:0}.ProseMirror strong{font-weight:700;color:#1a202c}.ProseMirror em{font-style:italic}.ProseMirror u{text-decoration:underline}.ProseMirror ul,.ProseMirror ol{padding-left:1.5rem;margin-bottom:1rem}.ProseMirror ul{list-style-type:disc}.ProseMirror ol{list-style-type:decimal}.ProseMirror li{margin-bottom:0.25rem}.ProseMirror li p{margin-bottom:0.25rem}.ProseMirror blockquote{border-left:4px solid #3182ce;padding-left:1rem;margin-left:0;margin-right:0;margin-top:1rem;margin-bottom:1rem;color:#4a5568;font-style:italic;background:#f7fafc;padding:1rem;border-radius:4px}.ProseMirror blockquote p:last-child{margin-bottom:0}.ProseMirror code{background:#f7fafc;border:1px solid #e2e8f0;border-radius:4px;padding:2px 6px;font-family:'Monaco', 'Menlo', 'Ubuntu Mono', monospace;font-size:0.9em;color:#e53e3e}.ProseMirror pre{background:#1a202c;color:#f7fafc;padding:1rem;border-radius:8px;overflow-x:auto;margin:1rem 0}.ProseMirror pre code{background:none;border:none;color:inherit;padding:0}@media (max-width: 768px){.editor-toolbar{padding:8px 10px;gap:6px}.toolbar-group{padding:1px}.toolbar-button{width:30px;height:30px}.toolbar-button svg{width:14px;height:14px}.toolbar-select{height:30px;font-size:12px;min-width:100px;padding:3px 24px 3px 6px}.toolbar-separator{height:20px;margin:0 2px}.ProseMirror{padding:16px;font-size:14px;min-height:400px}.ProseMirror h1{font-size:1.75rem}.ProseMirror h2{font-size:1.375rem}.ProseMirror h3{font-size:1.125rem}.editor-content{min-height:400px}}@media (max-width: 480px){.ProseMirror{padding:12px;min-height:350px}.editor-content{min-height:350px}}.editor-wrapper:focus-within{border-color:#4299e1;box-shadow:0 0 0 3px rgba(66,153,225,0.1)}.auth-unified-container{min-height:100vh;display:flex;font-family:'Segoe UI', Tahoma, Geneva, Verdana, sans-serif}.auth-brand-panel{width:50%;background:linear-gradient(135deg, #667eea 0%, #764ba2 100%);display:flex;align-items:center;justify-content:center;padding:60px;position:relative;overflow:hidden}.auth-brand-content{text-align:center;z-index:1;max-width:500px}.auth-illustration{max-width:400px;max-height:300px;width:100%;height:auto;margin-bottom:40px;filter:drop-shadow(0 10px 30px rgba(0,0,0,0.15));animation:float 6s ease-in-out infinite}@keyframes float{0%,100%{transform:translateY(0)}50%{transform:translateY(-20px)}}.auth-tagline{font-size:2.5rem;font-weight:700;color:white;margin-bottom:15px;line-height:1.2;text-shadow:0 2px 10px rgba(0,0,0,0.2)}.auth-subtitle{font-size:1.2rem;color:rgba(255,255,255,0.9);line-height:1.6;font-weight:300}.auth-form-panel{width:50%;background:white;display:flex;flex-direction:column;padding:60px;overflow-y:auto}.auth-logo{display:flex;align-items:center;justify-content:center;gap:12px;margin-bottom:40px;text-decoration:none;color:inherit}.auth-logo-icon{width:48px;height:48px;background:linear-gradient(135deg, #667eea 0%, #764ba2 100%);border-radius:12px;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 12px rgba(102,126,234,0.3)}.auth-logo-icon i{font-size:24px;color:white}.auth-logo-text{font-size:1.5rem;font-weight:700;color:#2c3e50;letter-spacing:-0.5px}.auth-logo-text span{color:#667eea}.auth-brand-logo{display:flex;align-items:center;justify-content:center;gap:8px;margin-bottom:12px;padding-bottom:0}.auth-icon{width:20px;height:20px;flex-shrink:0;opacity:0.8}.auth-brand-name{font-size:1.1rem;font-weight:600;color:#667eea;margin:0;letter-spacing:-0.3px}.auth-tabs{display:flex;gap:0;border-bottom:2px solid #e9ecef;margin-bottom:30px}.auth-tab{flex:1;padding:15px 20px;border:none;background:none;color:#6c757d;font-size:1rem;font-weight:500;cursor:pointer;border-bottom:3px solid transparent;transition:all 0.3s ease;position:relative;user-select:none;-webkit-tap-highlight-color:transparent;z-index:10;pointer-events:auto}.auth-tab:hover{color:#667eea;background:rgba(102,126,234,0.05)}.auth-tab:active{transform:scale(0.98)}.auth-tab.active{color:#667eea;font-weight:600;border-bottom-color:#667eea;background:rgba(102,126,234,0.05)}.auth-form-container{display:none}.auth-form-container.active{display:block;animation:fadeIn 0.3s ease-out}@keyframes fadeIn{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.auth-form-panel .form-group{margin-bottom:20px}.auth-form-panel label{display:block;font-weight:600;color:#2c3e50;margin-bottom:8px;font-size:0.9rem}.auth-form-panel .form-control{width:100%;padding:12px 15px;border:2px solid #e9ecef;border-radius:10px;font-size:1rem;transition:all 0.3s ease;background:#f8f9fa;font-family:inherit}.auth-form-panel .form-control:focus{outline:none;border-color:#667eea;background:white;box-shadow:0 0 0 4px rgba(102,126,234,0.1)}.auth-form-panel .form-row{display:flex;gap:15px;margin-bottom:20px}.auth-form-panel .form-group.half{flex:1;margin-bottom:0}.auth-form-panel .btn-primary{background:linear-gradient(135deg, #667eea 0%, #764ba2 100%);border:none;color:white;padding:14px 20px;font-size:1rem;font-weight:600;border-radius:10px;width:100%;cursor:pointer;transition:all 0.3s ease;margin-top:10px}.auth-form-panel .btn-primary:hover{transform:translateY(-2px);box-shadow:0 8px 25px rgba(102,126,234,0.4)}.auth-form-panel .btn-primary:active{transform:translateY(0)}.auth-form-footer{text-align:center;margin-top:20px;padding-top:20px;border-top:1px solid #e9ecef}.auth-form-footer a{color:#667eea;text-decoration:none;font-weight:500;font-size:0.9rem;transition:color 0.3s ease}.auth-form-footer a:hover{color:#764ba2;text-decoration:underline}.auth-form-panel .alert{padding:1rem;margin-bottom:1.5rem;border-radius:10px;font-size:0.9rem;animation:slideDown 0.3s ease-out}@keyframes slideDown{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.auth-form-panel .alert-success{background-color:#d4edda;border:1px solid #c3e6cb;color:#155724}.auth-form-panel .alert-danger{background-color:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.auth-form-panel .alert ul{margin:0;padding-left:20px}.auth-form-panel .alert strong{display:block;margin-bottom:8px}@media (max-width: 1024px){.auth-brand-panel{padding:40px}.auth-form-panel{padding:40px}.auth-tagline{font-size:2rem}.auth-subtitle{font-size:1.1rem}.auth-illustration{max-width:350px;max-height:260px}}@media (max-width: 768px){.auth-unified-container{flex-direction:column}.auth-brand-panel{width:100%;min-height:250px;padding:30px 20px}.auth-illustration{max-height:140px;max-width:280px;margin-bottom:20px}.auth-tagline{font-size:1.5rem;margin-bottom:10px}.auth-subtitle{font-size:0.95rem}.auth-form-panel{width:100%;padding:30px 20px}.auth-brand-logo{margin-bottom:10px}.auth-icon{width:18px;height:18px}.auth-brand-name{font-size:1rem}.auth-tabs{margin-bottom:20px}.auth-tab{padding:12px 15px;font-size:0.9rem}.auth-form-panel .form-row{flex-direction:column;gap:0}.auth-form-panel .form-group.half{width:100%;margin-bottom:20px}.auth-form-panel .form-control{padding:10px 12px;font-size:0.95rem}.auth-form-panel .btn-primary{padding:12px 18px}}@media (max-width: 480px){.auth-brand-panel{min-height:200px;padding:25px 15px}.auth-illustration{max-height:120px;max-width:240px}.auth-tagline{font-size:1.3rem}.auth-subtitle{font-size:0.85rem}.auth-form-panel{padding:25px 15px}}.auth-tab.disabled{opacity:0.6;cursor:not-allowed;pointer-events:none;position:relative}.auth-tab.disabled:hover{background:none;color:#6c757d}.beta-badge{display:inline-block;background:linear-gradient(135deg, #f6ad55 0%, #ed8936 100%);color:white;font-size:0.65rem;font-weight:700;padding:2px 8px;border-radius:10px;margin-left:8px;vertical-align:middle;text-transform:uppercase;letter-spacing:0.5px}.auth-tab:focus,.auth-form-panel .form-control:focus,.auth-form-panel .btn-primary:focus,.auth-form-footer a:focus{outline:2px solid #667eea;outline-offset:2px}@media (hover: none){.auth-tab{min-height:44px}.auth-form-panel .btn-primary{min-height:48px}}.captcha-container{margin:20px 0;padding:16px;background:#f8f9fa;border-radius:10px;border:1px solid #e9ecef}.captcha-notice{display:flex;align-items:center;gap:10px;margin-bottom:16px;color:#495057;font-size:0.9rem}.captcha-notice i{color:#667eea;font-size:1.1rem}.cf-turnstile{display:flex;justify-content:center}.g-recaptcha{display:flex;justify-content:center}.captcha-container.error{border-color:#e74c3c;background:#fdf2f2}.captcha-container.error .captcha-notice{color:#e74c3c}.captcha-container.error .captcha-notice i{color:#e74c3c}@media (max-width: 480px){.captcha-container{padding:12px}.cf-turnstile,.g-recaptcha{transform:scale(0.9);transform-origin:center}}.terms-acceptance{margin:20px 0;padding:16px;background:#f8f9fa;border-radius:10px;border:1px solid #e9ecef}.terms-acceptance .checkbox-label{display:flex;align-items:flex-start;gap:12px;cursor:pointer;font-weight:400;margin:0}.terms-acceptance input[type="checkbox"]{width:20px;height:20px;min-width:20px;margin-top:2px;cursor:pointer;accent-color:#667eea}.terms-acceptance .terms-text{font-size:0.9rem;color:#495057;line-height:1.5}.terms-acceptance .terms-text a{color:#667eea;text-decoration:none;font-weight:500;transition:color 0.3s ease}.terms-acceptance .terms-text a:hover{color:#764ba2;text-decoration:underline}.terms-acceptance.field_with_errors,.terms-acceptance:has(.field_with_errors){border-color:#e74c3c;background:#fdf2f2}@media (max-width: 480px){.terms-acceptance{padding:12px}.terms-acceptance .terms-text{font-size:0.85rem}}.calculadoras-page{max-width:1200px;margin:0 auto;padding:0 1rem}.calculadoras-header{text-align:center;margin-bottom:2.5rem}.calculadoras-header h1{font-size:1.75rem;font-weight:700;color:var(--text, #1f2937);margin:0 0 0.5rem;display:flex;align-items:center;justify-content:center;gap:0.75rem}.calculadoras-header h1 i{color:var(--color-primary, #4a5568)}.calculadoras-subtitle{color:var(--text-muted, #6b7280);font-size:1rem;margin:0 0 0.75rem 0}.calculadoras-context{display:flex;align-items:center;justify-content:center;gap:0.5rem;color:var(--text-secondary, #718096);font-size:0.9rem;margin:0;padding:0.75rem 1rem;background:rgba(59,130,246,0.06);border-left:3px solid var(--color-primary, #4a5568);border-radius:6px;max-width:600px;margin:0 auto}.calculadoras-context i{color:var(--color-primary, #4a5568);font-size:1rem}.calculadoras-grid{display:grid;grid-template-columns:repeat(auto-fill, minmax(320px, 1fr));gap:1.5rem}.calculadora-card{background:var(--surface, #fff);border-radius:16px;padding:1.5rem;box-shadow:0 2px 8px rgba(0,0,0,0.06);border:1px solid var(--border, #e5e7eb);transition:all 0.2s ease;display:flex;flex-direction:column}.calculadora-card:hover{transform:translateY(-4px);box-shadow:0 8px 24px rgba(74,85,104,0.15);border-color:var(--primary, #4a5568)}.calculadora-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.calculadora-icon{width:48px;height:48px;background:linear-gradient(135deg, var(--primary, #4a5568), var(--primary-dark, #2d3748));border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:1.25rem}.calculadora-badge{padding:0.25rem 0.75rem;border-radius:20px;font-size:0.75rem;font-weight:600;text-transform:uppercase;letter-spacing:0.5px}.badge-primary{background:rgba(74,85,104,0.1);color:var(--primary, #4a5568)}.badge-info{background:rgba(59,130,246,0.1);color:#3b82f6}.badge-success{background:rgba(16,185,129,0.1);color:#10b981}.calculadora-title{font-size:1.125rem;font-weight:600;color:var(--text, #1f2937);margin:0 0 0.5rem}.calculadora-description{color:var(--text-muted, #6b7280);font-size:0.9rem;line-height:1.5;margin:0 0 1.25rem;flex-grow:1}.calculadora-btn{display:flex;align-items:center;justify-content:center;gap:0.5rem;width:100%;padding:0.75rem 1rem;background:linear-gradient(135deg, var(--primary, #4a5568), var(--primary-dark, #2d3748));color:#fff;border:none;border-radius:10px;font-size:0.95rem;font-weight:600;cursor:pointer;transition:all 0.2s ease}.calculadora-btn:hover{transform:translateY(-2px);box-shadow:0 4px 12px rgba(74,85,104,0.4)}.calculadora-btn:active{transform:translateY(0)}.calculadora-modal-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.6);backdrop-filter:blur(4px);z-index:10000;align-items:center;justify-content:center;padding:1rem;opacity:0;transition:opacity 0.2s ease}.calculadora-modal-overlay.show{display:flex;opacity:1}.calculadora-modal{background:var(--surface, #fff);border-radius:20px;width:100%;max-width:500px;max-height:90vh;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(0,0,0,0.3);transform:scale(0.9);transition:transform 0.2s ease}.calculadora-modal-overlay.show .calculadora-modal{transform:scale(1)}.calculadora-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1.25rem 1.5rem;border-bottom:1px solid var(--border, #e5e7eb);background:linear-gradient(135deg, var(--primary, #4a5568), var(--primary-dark, #2d3748))}.calculadora-modal-header h2{font-size:1.125rem;font-weight:600;color:#fff;margin:0}.modal-close{width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:rgba(255,255,255,0.2);border:none;border-radius:50%;color:#fff;cursor:pointer;transition:all 0.2s ease}.modal-close:hover{background:rgba(255,255,255,0.3)}.calculadora-modal-body{padding:1.5rem;overflow-y:auto;flex:1}.calculator-content{display:flex;flex-direction:column;gap:1.5rem}.calculator-notice{background:rgba(59,130,246,0.1);border:1px solid rgba(59,130,246,0.2);border-radius:10px;padding:0.875rem 1rem;font-size:0.85rem;color:#3b82f6;display:flex;align-items:flex-start;gap:0.625rem}.calculator-notice i{margin-top:2px}.calculator-inputs{display:flex;flex-direction:column;gap:1rem}.input-group{display:flex;flex-direction:column;gap:0.375rem}.input-group label{font-size:0.875rem;font-weight:500;color:var(--text, #1f2937)}.input-money{display:flex;align-items:center;background:var(--bg, #f9fafb);border:1px solid var(--border, #e5e7eb);border-radius:10px;overflow:hidden;transition:all 0.2s ease}.input-money:focus-within{border-color:var(--primary, #4a5568);box-shadow:0 0 0 3px rgba(74,85,104,0.1)}.input-money .currency{padding:0.75rem;background:var(--surface-hover, #f3f4f6);color:var(--text-muted, #6b7280);font-weight:500;font-size:0.9rem;border-right:1px solid var(--border, #e5e7eb)}.input-money input{flex:1;padding:0.75rem;border:none;background:transparent;font-size:1rem;color:var(--text, #1f2937);outline:none}.input-percent{display:flex;align-items:center;flex:1;background:var(--bg, #f9fafb);border:1px solid var(--border, #e5e7eb);border-radius:10px;overflow:hidden}.input-percent:focus-within{border-color:var(--primary, #4a5568);box-shadow:0 0 0 3px rgba(74,85,104,0.1)}.input-percent input{flex:1;padding:0.75rem;border:none;background:transparent;font-size:1rem;color:var(--text, #1f2937);outline:none;text-align:right}.input-percent .percent{padding:0.75rem;background:var(--surface-hover, #f3f4f6);color:var(--text-muted, #6b7280);font-weight:500;font-size:0.9rem;border-left:1px solid var(--border, #e5e7eb)}.input-row{display:flex;gap:0.75rem}.input-row input[type="number"]{flex:1;padding:0.75rem;border:1px solid var(--border, #e5e7eb);border-radius:10px;background:var(--bg, #f9fafb);font-size:1rem;color:var(--text, #1f2937);outline:none}.input-row input[type="number"]:focus{border-color:var(--primary, #4a5568);box-shadow:0 0 0 3px rgba(74,85,104,0.1)}.input-group select{padding:0.75rem;border:1px solid var(--border, #e5e7eb);border-radius:10px;background:var(--bg, #f9fafb);font-size:0.95rem;color:var(--text, #1f2937);cursor:pointer;outline:none}.input-group select:focus{border-color:var(--primary, #4a5568);box-shadow:0 0 0 3px rgba(74,85,104,0.1)}.input-hint{font-size:0.75rem;color:var(--text-muted, #9ca3af)}.calculator-results{background:var(--bg, #f9fafb);border-radius:12px;padding:1.25rem;display:flex;flex-direction:column;gap:0.75rem}.result-item{display:flex;justify-content:space-between;align-items:center;padding:0.875rem 1rem;border-radius:10px;background:var(--surface, #fff)}.result-label{font-size:0.875rem;color:var(--text-muted, #6b7280)}.result-value{font-size:1.25rem;font-weight:700}.result-primary{border-left:4px solid var(--primary, #4a5568)}.result-primary .result-value{color:var(--primary, #4a5568)}.result-success{border-left:4px solid #10b981}.result-success .result-value{color:#10b981}.result-warning{border-left:4px solid #f59e0b}.result-warning .result-value{color:#f59e0b}.result-danger{border-left:4px solid #ef4444}.result-danger .result-value{color:#ef4444}.result-info{border-left:4px solid #3b82f6}.result-info .result-value{color:#3b82f6}.result-secondary{border-left:4px solid #8b5cf6}.result-secondary .result-value{color:#8b5cf6}.result-breakdown{background:var(--surface, #fff);border-radius:10px;padding:1rem;display:flex;flex-direction:column;gap:0.5rem}.breakdown-item{display:flex;justify-content:space-between;font-size:0.875rem;color:var(--text-muted, #6b7280)}.result-explanation{padding:1rem;background:var(--surface, #fff);border-radius:10px;font-size:0.9rem;color:var(--text, #1f2937);line-height:1.5}.result-explanation i{margin-right:0.5rem}.text-success{color:#10b981 !important}.text-warning{color:#f59e0b !important}.text-danger{color:#ef4444 !important}.text-info{color:#3b82f6 !important}@media (max-width: 768px){.calculadoras-grid{grid-template-columns:1fr}.calculadora-modal{max-height:95vh;border-radius:16px 16px 0 0;margin-top:auto}.calculadora-modal-overlay{align-items:flex-end;padding:0}.calculadoras-header h1{font-size:1.5rem}.input-row{flex-direction:column}}[data-theme="dark"] .calculadora-card{background:var(--surface);border-color:var(--border)}[data-theme="dark"] .calculadora-modal{background:var(--surface)}[data-theme="dark"] .calculator-results{background:var(--bg)}[data-theme="dark"] .result-item,[data-theme="dark"] .result-breakdown,[data-theme="dark"] .result-explanation{background:var(--surface)}[data-theme="dark"] .input-money,[data-theme="dark"] .input-percent,[data-theme="dark"] .input-group select,[data-theme="dark"] .input-row input[type="number"]{background:var(--bg);border-color:var(--border);color:var(--text)}[data-theme="dark"] .input-money .currency,[data-theme="dark"] .input-percent .percent{background:var(--surface-hover);color:var(--text-muted);border-color:var(--border)}:root{--color-income: #1e7e4a;--color-income-light: #e8f5ee;--color-expense: #9b2c2c;--color-expense-light: #fdf2f2;--color-primary: #4a5568;--color-primary-dark: #2d3748;--color-text-primary: #1a202c;--color-text-secondary: #718096;--color-text-muted: #a0aec0;--color-border: #e2e8f0;--color-bg: #f7fafc;--color-bg-card: #ffffff;--shadow-sm: 0 1px 2px rgba(0, 0, 0, 0.04);--shadow-md: 0 2px 4px rgba(0, 0, 0, 0.06);--shadow-lg: 0 4px 8px rgba(0, 0, 0, 0.08);--radius-sm: 4px;--radius-md: 6px;--radius-lg: 8px;--spacing-xs: 4px;--spacing-sm: 8px;--spacing-md: 16px;--spacing-lg: 24px;--spacing-xl: 32px;--font-weight-normal: 400;--font-weight-medium: 500;--font-weight-semibold: 600;--font-weight-bold: 700}.dashboard-container{padding:var(--spacing-lg) 0;max-width:1400px;margin:0 auto}.month-control-center{background:var(--color-bg-card);padding:var(--spacing-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-md);border:1px solid var(--color-border);margin-bottom:var(--spacing-lg)}.control-header{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);margin-bottom:var(--spacing-md)}.month-title-compact{font-size:1.75rem;font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin:0;text-align:center}.nav-arrow-compact{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--color-bg);color:var(--color-text-secondary);text-decoration:none;border-radius:var(--radius-md);font-size:24px;font-weight:var(--font-weight-bold);transition:all 0.2s ease;border:1px solid var(--color-border)}.nav-arrow-compact:hover{background:var(--color-primary);color:white;border-color:var(--color-primary);transform:scale(1.05)}.btn-today-compact{display:flex;align-items:center;justify-content:center;width:40px;height:40px;background:var(--color-primary);color:white;text-decoration:none;border-radius:var(--radius-md);font-size:18px;transition:all 0.2s ease;border:1px solid var(--color-primary);margin-left:var(--spacing-sm)}.btn-today-compact:hover{background:var(--color-primary-dark);transform:scale(1.05)}.financial-summary-compact{display:flex;flex-direction:column;align-items:center;gap:var(--spacing-xs);padding:var(--spacing-md) 0;border-top:1px solid var(--color-border);border-bottom:1px solid var(--color-border);margin-bottom:var(--spacing-md)}.balance-primary{display:flex;align-items:baseline;gap:var(--spacing-sm)}.balance-label{font-size:0.95rem;color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.balance-amount{font-size:1.5rem;font-weight:var(--font-weight-bold)}.balance-amount.positive{color:var(--color-income)}.balance-amount.negative{color:var(--color-expense)}.financial-details{display:flex;align-items:center;gap:var(--spacing-sm);font-size:0.85rem;color:var(--color-text-muted)}.detail-item{display:inline-flex;gap:4px}.contextual-message{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:rgba(59,130,246,0.08);border-left:3px solid var(--color-primary);border-radius:var(--radius-sm);font-size:0.85rem;color:var(--color-text-primary);margin-bottom:var(--spacing-sm)}.contextual-message i{color:var(--color-primary);font-size:1rem;flex-shrink:0}.contextual-message span{line-height:1.5}.emotional-feedback{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);border-radius:var(--radius-sm);font-size:0.85rem;font-weight:var(--font-weight-medium);margin-bottom:var(--spacing-md)}.emotional-feedback i{font-size:1rem;flex-shrink:0}.positive-feedback{background:rgba(34,197,94,0.1);border-left:3px solid #22c55e;color:var(--color-text-primary)}.positive-feedback i{color:#22c55e}.negative-feedback{background:rgba(239,68,68,0.1);border-left:3px solid #ef4444;color:var(--color-text-primary)}.negative-feedback i{color:#ef4444}.detail-value{font-weight:var(--font-weight-medium);color:var(--color-text-secondary)}.summary-divider{color:var(--color-text-muted)}.quick-actions-compact{display:flex;align-items:center;justify-content:center;gap:var(--spacing-md);flex-wrap:wrap}.btn-quick-action{padding:10px 20px;border:none;border-radius:var(--radius-md);font-size:0.9rem;font-weight:var(--font-weight-semibold);cursor:pointer;transition:all 0.2s ease;display:flex;align-items:center;gap:6px}.btn-quick-action.btn-income{background:var(--color-income);color:white;padding:12px 24px;font-size:0.95rem;box-shadow:0 2px 4px rgba(28,126,69,0.3)}.btn-quick-action.btn-income:hover{background:#176b3a;transform:translateY(-2px);box-shadow:0 4px 12px rgba(28,126,69,0.4)}.btn-quick-action.btn-expense{background:transparent;color:var(--color-expense);border:2px solid var(--color-expense);padding:10px 20px}.btn-quick-action.btn-expense:hover{background:var(--color-expense);color:white;transform:translateY(-1px);box-shadow:var(--shadow-sm)}.month-selector-compact{display:flex;gap:6px;align-items:center;margin-left:var(--spacing-md);padding-left:var(--spacing-md);border-left:1px solid var(--color-border)}.month-selector-form-compact{display:flex;gap:6px;align-items:center}.month-select-compact,.year-select-compact{padding:6px 10px;border:1px solid var(--color-border);border-radius:var(--radius-sm);background:transparent;color:var(--color-text-secondary);font-size:0.8rem;cursor:pointer;transition:all 0.2s ease}.month-select-compact:hover,.year-select-compact:hover{border-color:var(--color-text-secondary);background:var(--color-bg)}.month-select-compact:focus,.year-select-compact:focus{outline:none;border-color:var(--color-primary);background:var(--color-bg);box-shadow:0 0 0 2px rgba(74,85,104,0.05)}.btn-go-compact{padding:8px 16px;background:var(--color-primary);color:white;border:none;border-radius:var(--radius-md);font-size:0.85rem;font-weight:var(--font-weight-semibold);cursor:pointer;transition:all 0.2s ease}.btn-go-compact:hover{background:var(--color-primary-dark);transform:translateY(-1px)}@media (max-width: 768px){.month-control-center{padding:var(--spacing-md)}.month-title-compact{font-size:1.35rem}.balance-primary{flex-direction:column;gap:4px;text-align:center}.balance-label{font-size:0.85rem}.balance-amount{font-size:1.3rem}.financial-details{font-size:0.75rem;gap:var(--spacing-xs)}.detail-value{font-size:0.8rem}.quick-actions-compact{flex-direction:column;width:100%}.btn-quick-action{width:100%;justify-content:center}.month-selector-compact{width:100%;margin-left:0;padding-left:0;border-left:none}.month-selector-form-compact{width:100%}.month-select-compact,.year-select-compact{flex:1}.btn-quick-action.btn-income,.btn-quick-action.btn-expense{padding:12px 20px}.future-month-notice{bottom:70px;right:10px;left:10px;max-width:none}.future-month-notice-title{font-size:0.85rem}.future-month-notice-text{font-size:0.75rem}}.month-navigation-improved{display:flex;align-items:center;gap:var(--spacing-md);margin-bottom:var(--spacing-lg);background:var(--color-bg-card);padding:var(--spacing-md) var(--spacing-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border)}.nav-arrow{flex-shrink:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center;background:var(--color-bg);color:var(--color-text-secondary);text-decoration:none;border-radius:var(--radius-md);font-size:18px;font-weight:var(--font-weight-semibold);transition:all 0.2s ease;border:1px solid var(--color-border)}.nav-arrow:hover{background:var(--color-primary);color:white;border-color:var(--color-primary)}.month-tabs-scroll{flex:1;display:flex;gap:var(--spacing-sm);overflow-x:auto;padding:4px 0;scrollbar-width:thin;scrollbar-color:var(--color-border) transparent}.month-tabs-scroll::-webkit-scrollbar{height:4px}.month-tabs-scroll::-webkit-scrollbar-track{background:transparent}.month-tabs-scroll::-webkit-scrollbar-thumb{background:var(--color-border);border-radius:4px}.month-tab-improved{flex-shrink:0;display:flex;flex-direction:column;align-items:center;padding:var(--spacing-sm) var(--spacing-md);background:transparent;border:1px solid transparent;border-radius:var(--radius-md);text-decoration:none;color:var(--color-text-muted);transition:all 0.2s ease;min-width:80px}.month-tab-improved:hover{background:var(--color-bg);color:var(--color-text-secondary)}.month-tab-improved.active{background:var(--color-primary-dark);color:white;border-color:var(--color-primary-dark)}.month-tab-improved .tab-name{font-weight:var(--font-weight-medium);font-size:0.8rem}.month-tab-improved .tab-year{font-size:0.7rem;opacity:0.7}.btn-current-month{flex-shrink:0;padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg);color:var(--color-text-secondary);text-decoration:none;border-radius:var(--radius-md);font-size:0.8rem;font-weight:var(--font-weight-medium);transition:all 0.2s ease;white-space:nowrap;border:1px solid var(--color-border)}.btn-current-month:hover{background:var(--color-primary);color:white;border-color:var(--color-primary)}.month-selector{flex-shrink:0;display:flex;align-items:center}.month-selector-form{display:flex;gap:var(--spacing-sm);align-items:center}.month-select,.year-select{padding:var(--spacing-sm) 12px;border:1px solid var(--color-border);border-radius:var(--radius-md);background:var(--color-bg-card);color:var(--color-text-primary);font-size:0.85rem;font-weight:var(--font-weight-medium);cursor:pointer;transition:all 0.2s ease}.month-select:focus,.year-select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 2px rgba(74,85,104,0.1)}.month-select:hover,.year-select:hover{border-color:var(--color-primary)}.btn-go{padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary-dark);color:white;border:none;border-radius:var(--radius-md);font-size:0.85rem;font-weight:var(--font-weight-medium);cursor:pointer;transition:all 0.2s ease}.btn-go:hover{background:var(--color-text-primary)}.month-header-improved{display:flex;justify-content:space-between;align-items:center;margin-bottom:var(--spacing-xl);background:var(--color-bg-card);padding:var(--spacing-lg) var(--spacing-xl);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border)}.header-content h1{font-size:1.5rem;color:var(--color-text-primary);margin-bottom:var(--spacing-sm);font-weight:var(--font-weight-semibold)}.month-summary{font-size:0.8rem;color:var(--color-text-muted, #a0aec0);margin:0;font-weight:400;letter-spacing:0.01em}.month-summary span{color:var(--color-text-secondary, #718096)}.month-summary .positive{color:var(--color-income, #1e7e4a);font-weight:500}.month-summary .negative{color:var(--color-expense, #9b2c2c);font-weight:500}.header-actions{display:flex;gap:var(--spacing-sm)}.header-actions .btn{padding:10px 16px;font-weight:var(--font-weight-medium);border-radius:var(--radius-md);display:flex;align-items:center;gap:6px;font-size:0.85rem;border:none;cursor:pointer;transition:all 0.2s ease}.header-actions .btn-income{background:var(--color-income, #1e7e4a);color:white}.header-actions .btn-income:hover{background:#176b3d}.header-actions .btn-expense{background:#8b4a4a;color:white}.header-actions .btn-expense:hover{background:#7a3f3f}.btn-icon{font-size:1rem}.alerts-improved{display:grid;grid-template-columns:repeat(auto-fit, minmax(280px, 1fr));gap:var(--spacing-md);margin-bottom:var(--spacing-lg)}.alert-card{background:var(--color-bg-card);border-radius:var(--radius-md);padding:var(--spacing-md);box-shadow:var(--shadow-sm);border-left:3px solid;border-top:1px solid var(--color-border);border-right:1px solid var(--color-border);border-bottom:1px solid var(--color-border)}.alert-danger-improved{border-left-color:var(--color-expense)}.alert-warning-improved{border-left-color:#b7791f}.alert-header{display:flex;align-items:center;gap:var(--spacing-sm);margin-bottom:var(--spacing-sm)}.alert-icon{font-size:1rem;color:var(--color-text-secondary)}.alert-header strong{font-size:0.9rem;color:var(--color-text-primary);font-weight:var(--font-weight-semibold)}.alert-body{margin-bottom:var(--spacing-sm)}.alert-transaction{padding:6px 10px;background:var(--color-bg);border-radius:var(--radius-sm);margin-bottom:6px;font-size:0.8rem;color:var(--color-text-secondary)}.alert-actions{display:flex;gap:var(--spacing-sm)}.btn-alert{padding:6px 12px;background:var(--color-primary);color:white;border:none;border-radius:var(--radius-sm);font-size:0.8rem;font-weight:var(--font-weight-medium);cursor:pointer;transition:all 0.2s ease}.btn-alert:hover{background:var(--color-primary-dark)}.cards-improved{display:grid;grid-template-columns:repeat(3, 1fr);gap:var(--spacing-md);margin-bottom:var(--spacing-xl)}.card-improved{background:var(--color-bg-card);border-radius:var(--radius-md);padding:var(--spacing-lg);box-shadow:var(--shadow-md);display:flex;gap:var(--spacing-md);align-items:flex-start;border:1px solid var(--color-border);transition:box-shadow 0.2s ease}.card-improved:hover{box-shadow:var(--shadow-lg)}.income-card{border-top:3px solid var(--color-income)}.expense-card{border-top:3px solid var(--color-expense)}.balance-card{border-top:3px solid var(--color-primary)}.balance-card.positive-balance{border-top-color:var(--color-income)}.balance-card.negative-balance{border-top-color:var(--color-expense)}.card-icon{font-size:1.25rem;line-height:1;color:var(--color-text-muted);margin-top:2px}.income-card .card-icon{color:var(--color-income)}.expense-card .card-icon{color:var(--color-expense)}.card-content{flex:1}.card-content h3{font-size:0.7rem;text-transform:uppercase;color:var(--color-text-muted);font-weight:var(--font-weight-semibold);letter-spacing:0.5px;margin-bottom:var(--spacing-xs)}.card-main-value{font-size:1.75rem;font-weight:var(--font-weight-bold);color:var(--color-text-primary);margin-bottom:2px;line-height:1.2;letter-spacing:-0.5px}.card-main-value.positive{color:var(--color-income)}.card-main-value.negative{color:var(--color-expense)}.card-sub-value{font-size:0.7rem;color:var(--color-text-muted);margin-bottom:var(--spacing-sm)}.card-planned-badge{display:inline-flex;align-items:center;gap:6px;margin-top:var(--spacing-sm);padding:6px 12px;background:rgba(74,85,104,0.08);border-radius:var(--radius-md);font-size:0.75rem}.card-planned-badge i{color:var(--color-primary);font-size:0.7rem}.badge-label{color:var(--color-text-secondary);font-weight:var(--font-weight-medium)}.badge-value{font-size:0.75rem;font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.badge-value.positive{color:var(--color-income)}.badge-value.negative{color:var(--color-expense)}.insights-section{margin-bottom:var(--spacing-xl);background:var(--color-bg-card);padding:var(--spacing-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border)}.insights-title{font-size:0.85rem;color:var(--color-text-secondary);margin-bottom:var(--spacing-md);font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:0.5px}.insights-title i{margin-right:var(--spacing-sm);color:var(--color-text-muted)}.insights-grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:var(--spacing-md)}.insight-card{background:var(--color-bg-card, #fff);border-radius:var(--radius-md);padding:var(--spacing-md);display:flex;gap:var(--spacing-sm);align-items:flex-start;border:1px solid var(--color-border);box-shadow:var(--shadow-sm);transition:all 0.2s ease}.insight-card:hover{border-color:var(--color-primary)}.insight-card.positive-insight{border-left:3px solid var(--color-income)}.insight-card.negative-insight{border-left:3px solid var(--color-expense)}.insight-icon{font-size:1rem;color:var(--color-text-muted);margin-top:2px}.insight-content{flex:1;min-width:0}.insight-label{font-size:0.7rem;color:var(--color-text-muted);font-weight:var(--font-weight-medium);margin-bottom:var(--spacing-xs)}.insight-value{font-size:0.85rem;font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin-bottom:2px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.insight-amount{font-size:0.9rem;font-weight:var(--font-weight-bold);color:var(--color-text-primary)}.insight-amount.positive{color:var(--color-income)}.insight-amount.negative{color:var(--color-expense)}.tables-section{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg);margin-bottom:var(--spacing-xl)}.table-container{background:var(--color-bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);overflow:hidden}.table-header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);background:var(--color-bg);border-bottom:1px solid var(--color-border)}.table-header h3{font-size:0.9rem;font-weight:var(--font-weight-semibold);color:var(--color-text-primary);margin:0}.table-header h3 i{margin-right:var(--spacing-sm);font-size:0.85rem}.table-filters{display:flex;gap:var(--spacing-sm)}.filter-select{padding:5px 10px;border:1px solid var(--color-border);border-radius:var(--radius-sm);font-size:0.8rem;background:var(--color-bg-card);color:var(--color-text-secondary);cursor:pointer;transition:border-color 0.2s ease}.filter-select:focus{outline:none;border-color:var(--color-primary)}.table-wrapper{max-height:450px;overflow-y:auto}.transactions-table-improved{width:100%;border-collapse:collapse}.transactions-table-improved thead{position:sticky;top:0;background:var(--color-bg);z-index:10}.transactions-table-improved th{padding:10px var(--spacing-md);text-align:left;font-size:0.7rem;text-transform:uppercase;color:var(--color-text-muted);font-weight:var(--font-weight-semibold);letter-spacing:0.5px;border-bottom:1px solid var(--color-border)}.transactions-table-improved td{padding:12px var(--spacing-md);border-bottom:1px solid var(--color-border);font-size:0.85rem;vertical-align:middle}.transaction-row-improved{transition:background-color 0.15s ease}.transaction-row-improved:hover{background:var(--color-bg)}.transaction-row-improved.paid{opacity:0.65}.transaction-row-improved.overdue{background:var(--color-expense-light)}.checkbox-cell{text-align:center;width:36px}.checkbox-toggle{background:none;border:none;cursor:pointer;padding:4px;border-radius:var(--radius-sm);transition:all 0.15s ease;font-size:1rem}.checkbox-toggle:hover{background:var(--color-bg)}.checkbox-toggle.loading{opacity:0.5;pointer-events:none}.checkbox-toggle:disabled{cursor:not-allowed}.description-cell strong{color:#1a202c;font-weight:var(--font-weight-semibold);font-size:0.9rem}.transaction-notes{font-size:0.7rem;color:var(--color-text-muted);margin-top:2px;display:flex;align-items:center;gap:4px}.notes-icon{font-size:0.65rem}.category-cell{text-align:center}.category-tag{display:inline-block;padding:3px 8px;background:rgba(74,85,104,0.06);color:var(--color-text-muted);border-radius:var(--radius-sm);font-size:0.7rem;font-weight:var(--font-weight-normal)}.date-cell{font-size:0.75rem;color:#a0aec0}.date-status{display:block;margin-top:2px;font-size:0.65rem;font-weight:var(--font-weight-semibold);text-transform:uppercase}.date-status.overdue{color:var(--color-expense)}.date-status.today{color:#b7791f}.date-status.paid{color:var(--color-income)}.amount-cell{text-align:right;font-weight:var(--font-weight-bold);font-size:0.95rem}.amount-cell.income{color:var(--color-income)}.amount-cell.expense{color:var(--color-expense)}.payment-method{font-size:0.75rem;color:var(--color-text-muted);margin-top:2px;display:flex;align-items:center;justify-content:flex-end;gap:3px;cursor:help}.payment-method .method-text{display:none}.payment-method:hover .method-icon{transform:scale(1.1)}.method-icon{font-size:0.6rem}.actions-cell{text-align:center}.btn-action{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;text-decoration:none;border-radius:var(--radius-sm);font-size:0.75rem;margin:0 2px;transition:all 0.15s ease;border:none;cursor:pointer;background:transparent;color:var(--color-text-muted);opacity:0.5}.transaction-row-improved:hover .btn-action{opacity:1;background:var(--color-bg)}.btn-action:hover{opacity:1}.btn-action.btn-edit:hover{background:var(--color-primary);color:white}.btn-action.btn-delete:hover{background:var(--color-expense);color:white}.table-footer{padding:var(--spacing-md) var(--spacing-lg);background:var(--color-bg);border-top:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center;font-weight:var(--font-weight-medium);font-size:0.85rem;color:var(--color-text-secondary)}.total-amount{font-size:1.1rem;font-weight:var(--font-weight-bold)}.total-amount.positive{color:var(--color-income)}.total-amount.negative{color:var(--color-expense)}.empty-transactions{padding:var(--spacing-xl) var(--spacing-lg);text-align:center;color:var(--color-text-muted)}.empty-icon{font-size:2.5rem;margin-bottom:var(--spacing-md);opacity:0.4}.empty-transactions p{font-size:0.9rem;margin-bottom:var(--spacing-md)}.fab-container{position:fixed;bottom:calc(24px + env(safe-area-inset-bottom, 0px));right:24px;z-index:1000}.fab{width:56px;height:56px;border-radius:50%;background:var(--color-primary-dark);border:none;color:white;font-size:1.5rem;cursor:pointer;box-shadow:var(--shadow-lg);transition:all 0.2s ease;display:none}.fab:hover{transform:scale(1.1);box-shadow:0 6px 16px rgba(102,126,234,0.5)}.fab:active{transform:scale(0.95)}.fab-icon{display:block;line-height:1}.fab-menu{position:absolute;bottom:75px;right:0;background:white;border-radius:12px;box-shadow:0 8px 24px rgba(0,0,0,0.15);padding:10px;display:none;min-width:160px}.fab-menu.active{display:block;animation:fadeInUp 0.3s ease}@keyframes fadeInUp{from{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.fab-option{display:flex;align-items:center;gap:12px;padding:12px 15px;text-decoration:none;color:#2c3e50;border-radius:8px;margin-bottom:5px;transition:all 0.2s ease}.fab-option:last-child{margin-bottom:0}.fab-option:hover{background:#f8f9fa}.fab-option.income:hover{background:rgba(39,174,96,0.1)}.fab-option.expense:hover{background:rgba(139,74,74,0.1)}.fab-option.disabled{opacity:0.5;cursor:not-allowed;pointer-events:none}.fab-option-icon{font-size:1.5rem}.fab-option-label{font-weight:600;font-size:0.9rem;display:flex;align-items:center;gap:6px}.coming-soon{font-size:0.7rem;font-weight:normal;color:var(--color-text-muted);font-style:italic}.info-icon,.info-icon-small{color:#cbd5e0;cursor:help;user-select:none;transition:all 0.2s ease;display:inline-flex;align-items:center;justify-content:center}.info-icon{font-size:0.85rem;margin-left:6px}.info-icon-small{font-size:0.7rem;margin-left:4px;opacity:0.7}.info-icon:hover,.info-icon-small:hover{color:var(--color-primary);transform:scale(1.1);opacity:1}.future-month-notice{position:fixed;bottom:80px;right:20px;max-width:320px;background:linear-gradient(135deg, #667eea 0%, #764ba2 100%);color:white;padding:14px 18px;border-radius:var(--radius-lg);box-shadow:0 8px 24px rgba(102,126,234,0.35);z-index:1000;animation:slideInRight 0.4s ease;display:flex;gap:12px;align-items:flex-start}.future-month-notice-icon{font-size:1.3rem;flex-shrink:0}.future-month-notice-content{flex:1}.future-month-notice-title{font-weight:var(--font-weight-semibold);font-size:0.9rem;margin-bottom:4px}.future-month-notice-text{font-size:0.8rem;opacity:0.95;line-height:1.4}.future-month-notice-close{background:transparent;border:none;color:white;font-size:1.2rem;cursor:pointer;padding:0;width:20px;height:20px;display:flex;align-items:center;justify-content:center;opacity:0.8;transition:opacity 0.2s;flex-shrink:0}.future-month-notice-close:hover{opacity:1}@keyframes slideInRight{from{opacity:0;transform:translateX(100px)}to{opacity:1;transform:translateX(0)}}@media (max-width: 1200px){.tables-section{grid-template-columns:1fr}}@media (max-width: 768px){.month-navigation-improved{flex-wrap:wrap;gap:10px}.month-selector{width:100%;order:3}.month-selector-form{width:100%}.month-select,.year-select{flex:1}.btn-go{flex-shrink:0}.month-header-improved{flex-direction:column;align-items:flex-start;gap:20px}.header-actions{width:100%;flex-direction:column}.header-actions .btn{width:100%;justify-content:center}.cards-improved{grid-template-columns:1fr}.insights-grid{grid-template-columns:1fr}.tables-section{grid-template-columns:1fr}.fab{display:flex;align-items:center;justify-content:center}.header-actions{display:none}}.skeleton{background:linear-gradient(90deg, #f0f0f0 25%, #e0e0e0 50%, #f0f0f0 75%);background-size:200% 100%;animation:loading 1.5s infinite;border-radius:8px}@keyframes loading{0%{background-position:200% 0}100%{background-position:-200% 0}}.skeleton-card{height:160px;margin-bottom:20px}.skeleton-table-row{height:60px;margin-bottom:10px}.skeleton-header{height:80px;margin-bottom:20px}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.5);backdrop-filter:blur(4px);z-index:2000;display:flex;align-items:center;justify-content:center;animation:fadeIn 0.3s ease}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.modal-dialog-improved{background:white;border-radius:16px;max-width:700px;width:90%;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(0,0,0,0.3);animation:slideUp 0.3s ease}@keyframes slideUp{from{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}.modal-content-improved{display:flex;flex-direction:column;height:100%}.modal-header-improved{position:relative;padding:0 16px;padding-right:56px;height:56px;min-height:56px;background:linear-gradient(135deg, #667eea 0%, #764ba2 100%);color:white;border-radius:16px 16px 0 0;display:flex;align-items:center}.modal-header-improved h3{margin:0;font-size:1.25rem;font-weight:600;flex:1;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.modal-close{position:absolute;top:50%;right:16px;transform:translateY(-50%);z-index:2;background:rgba(255,255,255,0.15);border:none;border-radius:50%;color:white;font-size:1.5rem;cursor:pointer;opacity:1;transition:background 0.2s;line-height:1;padding:0;width:36px;height:36px;display:flex;align-items:center;justify-content:center}.modal-close:hover{background:rgba(255,255,255,0.25)}.modal-body-improved{padding:25px 30px;overflow-y:auto;flex:1}.modal-intro{margin-bottom:20px;color:#495057;font-size:1rem}.planning-banner{display:flex;align-items:flex-start;gap:var(--spacing-md);padding:var(--spacing-md);background:linear-gradient(135deg, rgba(59,130,246,0.08) 0%, rgba(59,130,246,0.04) 100%);border-left:3px solid var(--color-primary);border-radius:var(--radius-md);margin-bottom:var(--spacing-lg)}.planning-banner i{color:var(--color-primary);font-size:1.5rem;flex-shrink:0;margin-top:2px}.planning-banner .banner-content{flex:1}.planning-banner strong{display:block;color:var(--color-text-primary);font-size:0.95rem;margin-bottom:var(--spacing-xs)}.planning-banner p{margin:0;color:var(--color-text-secondary);font-size:0.85rem;line-height:1.5}.copy-hint{display:flex;align-items:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:rgba(99,102,241,0.06);border-radius:var(--radius-sm);font-size:0.85rem;color:var(--color-text-secondary);margin-bottom:var(--spacing-md)}.copy-hint i{color:var(--color-primary);flex-shrink:0}.copy-tabs-container{background:white;border:1px solid #e9ecef;border-radius:12px;overflow:hidden}.copy-tab-buttons{display:flex;background:#f8f9fa;border-bottom:2px solid #e9ecef}.copy-tab-btn{flex:1;padding:15px 20px;background:none;border:none;font-size:1rem;font-weight:600;color:#6c757d;cursor:pointer;transition:all 0.3s;border-bottom:3px solid transparent}.copy-tab-btn:hover{background:rgba(102,126,234,0.1);color:#667eea}.copy-tab-btn.active{color:#667eea;background:white;border-bottom-color:#667eea}.copy-tab-panel{display:none}.copy-tab-panel.active{display:block}.copy-actions{padding:15px 20px;background:#f8f9fa;border-bottom:1px solid #e9ecef;display:flex;gap:10px}.btn-select-all,.btn-select-none{padding:6px 14px;border:1px solid #dee2e6;background:white;border-radius:6px;font-size:0.85rem;font-weight:600;cursor:pointer;transition:all 0.3s}.btn-select-all:hover{background:#27ae60;color:white;border-color:#27ae60}.btn-select-none:hover{background:#e74c3c;color:white;border-color:#e74c3c}.transactions-copy-list{padding:15px 20px;max-height:300px;overflow-y:auto}.transaction-copy-item{display:flex;align-items:center;padding:12px 15px;border:2px solid #e9ecef;border-radius:8px;margin-bottom:10px;cursor:pointer;transition:all 0.3s;background:white}.transaction-copy-item:hover{border-color:#667eea;background:rgba(102,126,234,0.05)}.transaction-copy-item.selected{border-color:#667eea;background:rgba(102,126,234,0.1)}.copy-checkbox{width:20px;height:20px;margin-right:15px;cursor:pointer;flex-shrink:0}.transaction-copy-info{display:grid;grid-template-columns:2fr 1fr 1fr;gap:15px;align-items:center;flex:1}.copy-desc{font-weight:600;color:#2c3e50;font-size:0.95rem}.copy-cat{padding:4px 10px;background:#e9ecef;color:#495057;border-radius:12px;font-size:0.8rem;font-weight:500;text-align:center}.copy-val{text-align:right;font-weight:700;font-family:'Courier New', monospace;font-size:1rem}.copy-val.income{color:#27ae60}.copy-val.expense{color:#e74c3c}.empty-copy{padding:40px 20px;text-align:center;color:#6c757d}.empty-copy p{font-size:1.1rem;margin:0}.copy-summary{margin-top:20px;padding:20px;background:#f8f9fa;border-radius:12px;border:1px solid #e9ecef}.copy-summary .summary-item{display:flex;justify-content:space-between;align-items:center;padding:10px 0;border-bottom:1px solid #e9ecef}.copy-summary .summary-item:last-child{border-bottom:none}.copy-summary .summary-item span:first-child{color:#6c757d;font-size:0.9rem}.copy-summary .summary-item strong{margin:0 10px;color:#2c3e50;font-size:1.1rem}.copy-summary .summary-item .income{color:#27ae60;font-weight:700;font-family:'Courier New', monospace}.copy-summary .summary-item .expense{color:#e74c3c;font-weight:700;font-family:'Courier New', monospace}.modal-footer-improved{padding:20px 30px;background:#f8f9fa;border-radius:0 0 16px 16px;display:flex;gap:15px;justify-content:flex-end}.btn-modal{padding:12px 24px;border:none;border-radius:8px;font-size:1rem;font-weight:600;cursor:pointer;transition:all 0.3s}.btn-modal.btn-secondary{background:#6c757d;color:white}.btn-modal.btn-secondary:hover{background:#5a6268;transform:translateY(-2px)}.btn-modal.btn-primary{background:linear-gradient(135deg, #667eea 0%, #764ba2 100%);color:white}.btn-modal.btn-primary:hover{transform:translateY(-2px);box-shadow:0 6px 20px rgba(102,126,234,0.4)}.btn-modal:disabled{opacity:0.5;cursor:not-allowed}.btn-modal:disabled:hover{transform:none;box-shadow:none}@media (max-width: 768px){.modal-dialog-improved{width:95%;max-height:95vh}.modal-header-improved{padding:20px}.modal-body-improved{padding:20px}.transaction-copy-info{grid-template-columns:1fr;gap:8px}.copy-cat,.copy-val{text-align:left}.modal-footer-improved{flex-direction:column}.btn-modal{width:100%}}@media (min-width: 768px) and (max-width: 1200px){.modal-overlay{padding:20px;align-items:center;justify-content:center}.modal-dialog-improved{max-width:620px;width:85%;max-height:80vh;border-radius:12px;margin:0 auto;display:flex;flex-direction:column;box-shadow:0 10px 40px rgba(0,0,0,0.2)}.modal-content-improved{display:flex;flex-direction:column;height:100%;max-height:80vh;overflow:hidden}.modal-header-improved{position:relative;flex:0 0 56px;height:56px;min-height:56px;padding:0 16px;padding-right:56px}.modal-header-improved h3{font-size:1.1rem}.modal-body-improved{flex:1 1 auto;overflow-y:auto;overflow-x:hidden;padding:14px 20px;min-height:0;max-height:calc(80vh - 116px)}.planning-banner{padding:10px 14px;margin-bottom:10px;gap:10px}.planning-banner i{font-size:1.1rem}.planning-banner strong{font-size:0.85rem}.planning-banner p{font-size:0.75rem;margin-top:2px}.modal-intro{font-size:0.9rem;margin-bottom:10px}.copy-tab-buttons{gap:6px;margin-bottom:8px}.copy-tab-btn{padding:8px 14px;font-size:0.85rem}.copy-hint{padding:5px 10px;font-size:0.8rem;margin-bottom:6px}.copy-actions{padding:5px 10px;gap:10px}.btn-select-all,.btn-select-none{padding:5px 10px;font-size:0.75rem}.transactions-copy-list{max-height:none;padding:6px}.transaction-copy-item{padding:8px 12px}.copy-desc{font-size:0.9rem}.copy-cat,.copy-val{font-size:0.8rem}.copy-summary{padding:10px;margin-top:10px}.copy-summary .summary-item{font-size:0.85rem}.modal-footer-improved{flex:0 0 auto;padding:12px 20px;gap:12px;border-top:1px solid #e9ecef}.btn-modal{padding:10px 24px;font-size:0.9rem}.btn-modal.btn-secondary{background:transparent;border:1px solid #adb5bd;color:#6c757d}.btn-modal.btn-secondary:hover{background:#f8f9fa}}@media (max-width: 480px){.modal-overlay{padding:0;align-items:stretch}.modal-dialog-improved{position:fixed;top:0;left:0;right:0;bottom:0;width:100%;max-width:100%;max-height:none;height:100%;border-radius:0;margin:0;display:flex;flex-direction:column}.modal-content-improved{display:flex;flex-direction:column;height:100%;max-height:100%;overflow:hidden}.modal-header-improved{position:relative;flex:0 0 auto;height:52px;min-height:52px;padding:0 12px;padding-right:52px;border-radius:0;border-bottom:1px solid #e9ecef}.modal-header-improved h3{font-size:1rem}.modal-close{width:36px;height:36px;font-size:1.5rem;right:12px}.modal-body-improved{flex:1 1 auto;overflow-y:auto;overflow-x:hidden;-webkit-overflow-scrolling:touch;padding:12px;min-height:0}.planning-banner{padding:8px 10px;margin-bottom:10px;gap:8px}.planning-banner i{font-size:1rem;flex-shrink:0}.planning-banner strong{font-size:0.85rem}.planning-banner p{font-size:0.75rem;margin:2px 0 0 0}.modal-intro{font-size:0.85rem;margin-bottom:10px}.copy-tab-buttons{gap:4px;margin-bottom:8px}.copy-tab-btn{padding:8px 12px;font-size:0.8rem;flex:1}.copy-tab-btn i{margin-right:4px}.copy-hint{padding:6px 8px;font-size:0.75rem;margin-bottom:6px}.copy-actions{padding:6px 8px;gap:8px}.btn-select-all,.btn-select-none{padding:5px 10px;font-size:0.7rem}.transactions-copy-list{max-height:none;overflow-y:visible;border:1px solid #e9ecef;border-radius:6px;padding:4px}.transaction-copy-item{padding:8px 10px}.copy-desc{font-size:0.85rem}.copy-cat,.copy-val{font-size:0.75rem}.copy-summary{padding:10px;margin-top:10px;border-radius:6px}.copy-summary .summary-item{font-size:0.8rem;flex-wrap:wrap;gap:4px}.modal-footer-improved{flex:0 0 auto;padding:10px 12px;padding-bottom:calc(10px + env(safe-area-inset-bottom, 0px));border-radius:0;box-shadow:0 -2px 10px rgba(0,0,0,0.1);background:#f8f9fa;display:flex;gap:10px;border-top:1px solid #e9ecef}.btn-modal{padding:10px 16px;font-size:0.85rem;flex:1;min-height:42px}.btn-modal.btn-secondary{background:transparent;border:1px solid #6c757d;color:#6c757d}.btn-modal.btn-primary{order:1}.btn-modal.btn-secondary{order:0}}@media (max-width: 375px){.modal-header-improved{height:48px;min-height:48px;padding:0 10px;padding-right:46px}.modal-header-improved h3{font-size:0.9rem}.modal-close{width:32px;height:32px;font-size:1.25rem;right:8px}.modal-body-improved{padding:10px}.planning-banner{padding:6px 8px}.planning-banner p{display:none}.modal-intro{font-size:0.8rem}.copy-tab-btn{padding:6px 10px;font-size:0.75rem}.transaction-copy-item{padding:6px 8px}.copy-desc{font-size:0.8rem}.copy-cat,.copy-val{font-size:0.7rem}.modal-footer-improved{padding:8px 10px;padding-bottom:calc(8px + env(safe-area-inset-bottom, 0px));gap:8px}.btn-modal{padding:8px 12px;font-size:0.8rem;min-height:38px}}.btn-text-short{display:none}.btn-text-full{display:inline}@media (max-width: 480px){.btn-text-short{display:inline}.btn-text-full{display:none}}@media (max-width: 896px) and (orientation: landscape){.modal-dialog-improved{position:fixed;top:0;left:0;right:0;bottom:0;width:100%;max-width:100%;height:100%;max-height:100%;border-radius:0}.modal-content-improved{height:100%;max-height:100%}.modal-header-improved{height:44px;min-height:44px;padding:0 10px;padding-right:44px}.modal-header-improved h3{font-size:0.9rem}.modal-close{width:32px;height:32px;font-size:1.2rem;right:8px}.modal-body-improved{padding:8px 12px}.planning-banner{display:none}.copy-hint{display:none}.transactions-copy-list{max-height:none}.modal-footer-improved{padding:6px 10px;padding-bottom:calc(6px + env(safe-area-inset-bottom, 0px))}.btn-modal{padding:8px 14px;font-size:0.8rem;min-height:36px}.btn-text-short{display:inline}.btn-text-full{display:none}}@media (max-width: 576px){body{overflow-x:hidden}.dashboard-container{padding:10px;width:100%;max-width:100vw;overflow-x:hidden}.container{padding:0 10px}.month-navigation-improved{padding:10px;gap:8px;margin-bottom:15px}.nav-arrow{width:35px;height:35px;font-size:20px}.month-tabs-scroll{scrollbar-width:none}.month-tabs-scroll::-webkit-scrollbar{display:none}.month-tab-improved{min-width:80px;padding:8px 12px}.month-tab-improved .tab-name{font-size:0.8rem}.month-tab-improved .tab-year{font-size:0.65rem}.btn-current-month{padding:8px 12px;font-size:0.75rem}.month-selector{width:100%}.month-selector-form{width:100%;gap:6px}.month-select,.year-select{padding:6px 8px;font-size:0.75rem;min-width:0}.btn-go{padding:6px 12px;font-size:0.75rem}.month-header-improved{padding:15px;margin-bottom:15px}.header-content h1{font-size:1.4rem;margin-bottom:8px}.month-summary{font-size:0.85rem;line-height:1.4}.alerts-improved{grid-template-columns:1fr;gap:10px;margin-bottom:15px}.alert-card{padding:15px}.alert-header{gap:8px;margin-bottom:10px}.alert-icon{font-size:1.2rem}.alert-header strong{font-size:0.95rem}.alert-transaction{font-size:0.8rem;padding:6px 10px}.btn-alert{padding:6px 12px;font-size:0.75rem;width:100%}.cards-improved{grid-template-columns:1fr;gap:12px;margin-bottom:15px}.card-improved{padding:15px;gap:12px}.card-icon{font-size:2rem}.card-content h3{font-size:0.75rem}.card-main-value{font-size:1.6rem}.card-sub-value{font-size:0.75rem}.card-planned-badge{padding:5px 10px;margin-top:8px;font-size:0.7rem}.card-planned-badge i{font-size:0.65rem}.badge-label{font-size:0.7rem}.badge-value{font-size:0.75rem}.insights-section{padding:15px;margin-bottom:15px}.insights-title{font-size:1.1rem;margin-bottom:15px}.insights-grid{grid-template-columns:1fr;gap:10px}.insight-card{padding:15px;gap:12px}.insight-icon{font-size:1.5rem}.insight-label{font-size:0.7rem}.insight-value{font-size:0.9rem}.insight-amount{font-size:0.85rem}.tables-section{grid-template-columns:1fr;gap:15px;margin-bottom:15px}.table-header{padding:15px;flex-direction:column;gap:10px;align-items:flex-start}.table-header h3{font-size:1rem}.table-filters{width:100%}.filter-select{width:100%;padding:8px;font-size:0.8rem}.table-wrapper{max-height:400px;overflow-x:auto}.transactions-table-improved{font-size:0.8rem}.transactions-table-improved th{padding:10px 8px;font-size:0.7rem}.transactions-table-improved td{padding:10px 8px;font-size:0.8rem}.checkbox-cell{width:30px}.checkbox-toggle{font-size:1rem}.category-tag{padding:3px 8px;font-size:0.7rem}.date-cell{font-size:0.75rem}.date-status{font-size:0.65rem}.amount-cell{font-size:0.85rem}.payment-method{font-size:0.65rem}.btn-action{width:28px;height:28px;font-size:0.75rem;margin:0 2px}.table-footer{padding:12px 15px;flex-direction:column;gap:8px;align-items:flex-start}.total-amount{font-size:1rem}.empty-transactions{padding:40px 15px}.empty-icon{font-size:3rem}.empty-transactions p{font-size:0.95rem}.fab-container{bottom:20px;right:20px}.fab{width:56px;height:56px;font-size:1.8rem}.fab-menu{bottom:70px;min-width:140px}.fab-option{padding:10px 12px;gap:10px}.fab-option-icon{font-size:1.3rem}.fab-option-label{font-size:0.85rem}}@media (min-width: 577px) and (max-width: 768px){.dashboard-container{padding:15px}.month-navigation-improved{padding:12px 15px;gap:10px}.nav-arrow{width:38px;height:38px;font-size:22px}.month-tab-improved{min-width:90px;padding:10px 16px}.btn-current-month{padding:10px 16px;font-size:0.8rem}.month-header-improved{padding:20px}.header-content h1{font-size:1.6rem}.month-summary{font-size:0.95rem}.cards-improved{grid-template-columns:1fr;gap:15px}.card-improved{padding:20px}.card-icon{font-size:2.5rem}.card-main-value{font-size:1.9rem}.insights-grid{grid-template-columns:repeat(2, 1fr);gap:12px}.table-header{padding:18px 20px}.table-footer{padding:15px 20px}}@media (max-width: 768px){*{max-width:100%}body{overflow-x:hidden}.container{max-width:100vw;overflow-x:hidden}.dashboard-container{max-width:100vw;overflow-x:hidden}.month-navigation-improved,.month-header-improved,.alerts-improved,.cards-improved,.insights-section,.tables-section,.table-container{max-width:100%;box-sizing:border-box}.table-wrapper{overflow-x:auto;-webkit-overflow-scrolling:touch}.transactions-table-improved{min-width:100%;table-layout:auto}}.card-icon i{font-size:3rem;color:inherit;opacity:0.9}.income-card .card-icon i{color:#27ae60}.expense-card .card-icon i{color:#e74c3c}.balance-card .card-icon i{color:#3498db}.balance-card.positive-balance .card-icon i{color:#27ae60}.balance-card.negative-balance .card-icon i{color:#e74c3c}.alert-icon i{font-size:1.5rem;vertical-align:middle}.alert-danger-improved .alert-icon i{color:#e74c3c}.alert-warning-improved .alert-icon i{color:#f39c12}.insight-icon i{font-size:2rem;color:#667eea}.positive-insight .insight-icon i{color:#27ae60}.negative-insight .insight-icon i{color:#e74c3c}.table-header h3 i{margin-right:8px;font-size:1.1rem;vertical-align:middle}.fab i{font-size:1.5rem;line-height:1}.fab-option-icon i{font-size:1.5rem}.btn-current-month i,.header-actions .btn i{margin-right:6px;font-size:1rem}.btn-go i{margin-right:4px}.modal-header-improved h3 i{margin-right:10px;font-size:1.4rem}.copy-tab-btn i{margin-right:8px}.btn-select-all i,.btn-select-none i{margin-right:6px;font-size:0.9rem}.insights-title i{margin-right:10px;color:#f39c12}.financial-calculations-section{margin-bottom:24px}.section-title{font-size:1.3rem;color:#2c3e50;margin-bottom:16px;font-weight:600;display:flex;align-items:center;gap:8px}.section-title i{color:#667eea;font-size:1.2rem}.financial-cards{display:grid;grid-template-columns:repeat(3, 1fr);gap:var(--spacing-md)}.emergency-reserve-card{border-top:3px solid var(--color-primary)}.emergency-reserve-card .card-icon i{color:var(--color-primary)}.survival-rate-card{border-top:3px solid #92400e}.survival-rate-card .card-icon i{color:#92400e}.savings-capacity-card{border-top:3px solid var(--color-income)}.savings-capacity-card .card-icon i{color:var(--color-income)}.card-progress{margin:var(--spacing-sm) 0}.progress-bar{width:100%;height:6px;background-color:var(--color-border);border-radius:var(--radius-sm);overflow:hidden}.progress-fill{height:100%;background-color:var(--color-income);border-radius:var(--radius-sm);transition:width 0.4s ease}.card-message{font-size:0.75rem;color:var(--color-text-secondary);padding:var(--spacing-sm) 10px;background:var(--color-bg);border-radius:var(--radius-sm);margin:var(--spacing-sm) 0;display:flex;align-items:flex-start;gap:6px;line-height:1.4}.card-message i{font-size:0.75rem;margin-top:1px;flex-shrink:0;color:var(--color-text-muted)}.card-message.alert{background:var(--color-expense-light);color:var(--color-expense);border-left:2px solid var(--color-expense)}.card-message.alert i{color:var(--color-expense)}.card-breakdown{margin:var(--spacing-sm) 0;padding:var(--spacing-sm) 0 2px 0;border-top:1px solid var(--color-border)}.breakdown-item{display:flex;justify-content:space-between;align-items:center;padding:3px 0;font-size:0.75rem}.breakdown-label{color:var(--color-text-muted)}.breakdown-value{font-weight:var(--font-weight-semibold);font-size:0.8rem}.breakdown-value.positive{color:var(--color-income)}.breakdown-value.negative{color:var(--color-expense)}.status-badge{display:inline-flex;align-items:center;gap:4px;padding:4px 10px;color:white;border-radius:var(--radius-sm);font-size:0.65rem;font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:0.3px}.card-footer{margin-top:var(--spacing-sm);padding-top:var(--spacing-sm);border-top:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:6px}.footer-hint{font-size:0.7rem;color:var(--color-text-muted);font-style:normal}.input-group{display:flex;align-items:center;border:1px solid #dee2e6;border-radius:6px;overflow:hidden;transition:border-color 0.3s ease}.input-group:focus-within{border-color:#667eea;box-shadow:0 0 0 3px rgba(102,126,234,0.1)}.input-prefix{background:#f8f9fa;padding:10px 15px;color:#6c757d;font-weight:600;border-right:1px solid #dee2e6}.input-group .form-control{border:none;flex:1}.input-group .form-control:focus{outline:none;box-shadow:none}@media (max-width: 768px){.financial-cards{grid-template-columns:1fr;gap:10px}.section-title{font-size:1.1rem}.card-footer{flex-direction:column;align-items:flex-start}.card-improved{padding:14px 16px}}@media (max-width: 576px){.section-title{font-size:1rem}.card-message{font-size:0.68rem}.breakdown-item{font-size:0.68rem}.status-badge{font-size:0.6rem;padding:2px 6px}.card-improved{padding:12px 14px;gap:10px}.card-icon{font-size:1.6rem}.card-main-value{font-size:1.5rem}}.planning-page{max-width:1400px;margin:0 auto;padding:var(--spacing-lg) 0}.planning-header{margin-bottom:var(--spacing-xl);padding:var(--spacing-lg) var(--spacing-xl);background:var(--color-bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);border-top:3px solid var(--color-primary-dark)}.planning-title{font-size:1.25rem;font-weight:var(--font-weight-semibold);margin:0 0 var(--spacing-xs) 0;display:flex;align-items:center;gap:var(--spacing-sm);color:var(--color-text-primary)}.planning-title i{font-size:1.1rem;color:var(--color-primary)}.planning-subtitle{font-size:0.85rem;margin:0;color:var(--color-text-muted);font-weight:var(--font-weight-normal)}.planning-info{display:grid;grid-template-columns:repeat(2, 1fr);gap:var(--spacing-md);margin-top:var(--spacing-xl)}.info-card{background:var(--color-bg-card);padding:var(--spacing-lg);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border)}.info-card h3{display:flex;align-items:center;gap:var(--spacing-sm);margin:0 0 var(--spacing-md) 0;color:var(--color-text-primary);font-size:0.85rem;font-weight:var(--font-weight-semibold)}.info-card h3 i{font-size:0.9rem;color:var(--color-text-muted)}.info-card ul{margin:0;padding-left:var(--spacing-md)}.info-card li{margin-bottom:var(--spacing-sm);line-height:1.5;font-size:0.8rem;color:var(--color-text-secondary)}.info-card li strong{color:var(--color-text-primary);font-weight:var(--font-weight-medium)}.info-card p{margin:0 0 var(--spacing-md) 0;line-height:1.5;color:var(--color-text-secondary);font-size:0.8rem}.empty-state{text-align:center;padding:var(--spacing-xl) var(--spacing-lg);background:var(--color-bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border)}.empty-state i{color:var(--color-text-muted);margin-bottom:var(--spacing-md);opacity:0.4}.empty-state h2{margin:var(--spacing-md) 0 var(--spacing-sm) 0;color:var(--color-text-primary);font-size:1.1rem;font-weight:var(--font-weight-semibold)}.empty-state p{margin:0 0 var(--spacing-lg) 0;color:var(--color-text-secondary);font-size:0.9rem}.savings-insight-box{margin-top:var(--spacing-md);padding:var(--spacing-md);border-radius:var(--radius-md);display:flex;align-items:center;gap:var(--spacing-sm);font-size:0.85rem;line-height:1.5;border:2px solid}.savings-insight-box i{font-size:1.1rem;flex-shrink:0}.positive-insight{background:rgba(34,197,94,0.1);border-color:rgba(34,197,94,0.3);color:var(--color-text-primary)}.positive-insight i{color:#22c55e}.negative-insight{background:rgba(239,68,68,0.1);border-color:rgba(239,68,68,0.3);color:var(--color-text-primary)}.negative-insight i{color:#ef4444}.savings-insight-box strong{font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.methodology-card{overflow:hidden}.methodology-toggle{width:100%;background:transparent;border:none;padding:0;display:flex;align-items:center;gap:var(--spacing-sm);cursor:pointer;color:var(--color-text-primary);font-size:0.85rem;font-weight:var(--font-weight-semibold);transition:color 0.2s ease}.methodology-toggle:hover{color:var(--color-primary)}.methodology-toggle i:first-child{font-size:0.9rem;color:var(--color-text-muted)}.methodology-toggle .toggle-arrow{margin-left:auto;font-size:0.7rem;transition:transform 0.3s ease}.methodology-toggle[aria-expanded="false"] .toggle-arrow{transform:rotate(-90deg)}.methodology-content{max-height:500px;opacity:1;overflow:hidden;transition:max-height 0.3s ease, opacity 0.3s ease, margin-top 0.3s ease;margin-top:var(--spacing-md)}.methodology-content.collapsed{max-height:0;opacity:0;margin-top:0}.parameters-card .parameters-description{margin:0 0 var(--spacing-md) 0;line-height:1.5;color:var(--color-text-secondary);font-size:0.8rem}.parameters-card .btn{width:100%}@media (max-width: 768px){.planning-title{font-size:1.1rem}.planning-title i{font-size:1rem}.planning-subtitle{font-size:0.8rem}.planning-info{grid-template-columns:1fr}.financial-cards{grid-template-columns:1fr;gap:var(--spacing-md)}.savings-insight-box{font-size:0.8rem;padding:var(--spacing-sm)}}@media (max-width: 576px){.planning-header{padding:var(--spacing-md)}.planning-title{font-size:1rem}.planning-subtitle{font-size:0.75rem}.info-card{padding:var(--spacing-md)}.info-card li{font-size:0.75rem}.savings-insight-box{font-size:0.75rem;flex-direction:column;align-items:flex-start;gap:var(--spacing-xs)}}.toast-notification{position:fixed;bottom:20px;right:20px;padding:12px 20px;border-radius:8px;color:white;font-weight:500;z-index:9999;box-shadow:0 4px 12px rgba(0,0,0,0.15);animation:toast-slide-in 0.3s ease-out;display:flex;align-items:center;gap:8px}.toast-notification.success{background:linear-gradient(135deg, #28a745 0%, #20c997 100%)}.toast-notification.error{background:linear-gradient(135deg, #dc3545 0%, #e74c3c 100%)}.toast-notification.fade-out{animation:toast-fade-out 0.3s ease-out forwards}@keyframes toast-slide-in{from{transform:translateX(100%);opacity:0}to{transform:translateX(0);opacity:1}}@keyframes toast-fade-out{from{transform:translateX(0);opacity:1}to{transform:translateX(100%);opacity:0}}@media (max-width: 480px){.toast-notification{left:20px;right:20px;bottom:10px;font-size:0.875rem;padding:10px 16px}}.pix-radar-section{margin-bottom:var(--spacing-lg)}.pix-radar-card{background:var(--color-bg-card);border-radius:var(--radius-lg);box-shadow:var(--shadow-sm);border:1px solid var(--color-border);border-top:3px solid var(--color-primary);overflow:hidden}.pix-radar-card:hover{box-shadow:var(--shadow-md)}.pix-radar--success{border-top-color:var(--color-income)}.pix-radar--warning{border-top-color:#b7791f}.pix-radar--danger{border-top-color:var(--color-expense)}.pix-radar__header{display:flex;justify-content:space-between;align-items:center;padding:var(--spacing-md) var(--spacing-lg);border-bottom:1px solid var(--color-border);background:var(--color-bg)}.pix-radar__title{display:flex;align-items:center;gap:var(--spacing-sm);font-size:0.85rem;font-weight:var(--font-weight-semibold);color:var(--color-text-primary)}.pix-radar__title i{color:var(--color-primary);font-size:0.9rem}.pix-radar__badge{padding:4px 10px;border-radius:var(--radius-sm);font-size:0.65rem;font-weight:var(--font-weight-semibold);text-transform:uppercase;letter-spacing:0.3px}.pix-radar__badge--success{background:var(--color-income-light);color:var(--color-income)}.pix-radar__badge--warning{background:#fef3c7;color:#92400e}.pix-radar__badge--danger{background:var(--color-expense-light);color:var(--color-expense)}.pix-radar__header-actions{display:flex;align-items:center;gap:var(--spacing-sm)}.pix-radar__hide-btn{display:flex;align-items:center;justify-content:center;width:24px;height:24px;border-radius:var(--radius-sm);background:transparent;color:var(--color-text-muted);transition:all 0.15s ease;text-decoration:none;border:none;cursor:pointer}.pix-radar__hide-btn:hover{background:var(--color-border);color:var(--color-text-secondary);text-decoration:none}.pix-radar__hide-btn i{font-size:0.7rem}.pix-radar-hide-form{display:inline}.pix-radar-show-form{display:block}.pix-radar-hidden{margin-bottom:var(--spacing-lg)}.pix-radar-show-link{border:none;cursor:pointer;width:100%;display:flex;align-items:center;justify-content:center;gap:var(--spacing-sm);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-bg);border:1px solid var(--color-border);border-radius:var(--radius-md);color:var(--color-text-secondary);font-size:0.8rem;font-weight:var(--font-weight-medium);text-decoration:none;transition:all 0.15s ease}.pix-radar-show-link:hover{background:var(--color-bg-card);border-color:var(--color-primary);text-decoration:none;color:var(--color-primary)}.pix-radar-show-link i:first-child{font-size:0.85rem}.pix-radar-show-link i:last-child{font-size:0.65rem}.pix-radar__body{padding:var(--spacing-lg)}.pix-radar__main-value{text-align:center;margin-bottom:var(--spacing-md)}.pix-radar__label{display:block;font-size:0.7rem;color:var(--color-text-muted);text-transform:uppercase;letter-spacing:0.5px;margin-bottom:var(--spacing-xs)}.pix-radar__amount{display:block;font-size:1.5rem;font-weight:var(--font-weight-bold);color:var(--color-text-primary);line-height:1.2}.pix-radar__progress{margin-bottom:var(--spacing-md)}.pix-radar__progress-track{position:relative;height:8px;background:var(--color-border);border-radius:var(--radius-sm);overflow:visible}.pix-radar__progress-fill{height:100%;border-radius:5px;transition:width 0.5s ease}.pix-radar__progress-fill--success{background:linear-gradient(90deg, #27ae60, #2ecc71)}.pix-radar__progress-fill--warning{background:linear-gradient(90deg, #f39c12, #f1c40f)}.pix-radar__progress-fill--danger{background:linear-gradient(90deg, #e74c3c, #c0392b)}.pix-radar__progress-markers{position:absolute;top:0;left:0;right:0;bottom:0;pointer-events:none}.pix-radar__progress-markers .marker{position:absolute;top:-2px;bottom:-2px;width:2px;border-radius:1px}.marker--warning{background:rgba(243,156,18,0.6)}.marker--danger{background:rgba(231,76,60,0.6)}.pix-radar__progress-text{display:block;text-align:center;font-size:0.8rem;color:#6c757d;margin-top:8px}.pix-radar__grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:10px;margin-bottom:16px}.pix-radar__grid-item{display:flex;align-items:center;gap:10px;padding:12px;background:#f8f9fa;border-radius:8px;border:1px solid #e9ecef}.pix-radar__grid-icon{width:32px;height:32px;display:flex;align-items:center;justify-content:center;border-radius:8px;font-size:0.85rem;flex-shrink:0}.pix-radar__grid-item--received .pix-radar__grid-icon{background:rgba(39,174,96,0.12);color:#27ae60}.pix-radar__grid-item--sent .pix-radar__grid-icon{background:rgba(231,76,60,0.12);color:#e74c3c}.pix-radar__grid-item--limit .pix-radar__grid-icon{background:rgba(102,126,234,0.12);color:#667eea}.pix-radar__grid-item--available .pix-radar__grid-icon{background:rgba(32,201,151,0.12);color:#20c997}.pix-radar__grid-data{display:flex;flex-direction:column;min-width:0}.pix-radar__grid-label{font-size:0.65rem;color:#6c757d;text-transform:uppercase;letter-spacing:0.3px}.pix-radar__grid-value{font-size:0.9rem;font-weight:600;color:#2c3e50}.pix-radar__info{padding:14px;border-radius:8px;margin-bottom:12px}.pix-radar__info--success{background:rgba(39,174,96,0.08);border:1px solid rgba(39,174,96,0.2)}.pix-radar__info--warning{background:rgba(243,156,18,0.08);border:1px solid rgba(243,156,18,0.2)}.pix-radar__info--danger{background:rgba(231,76,60,0.08);border:1px solid rgba(231,76,60,0.2)}.pix-radar__info-header{display:flex;align-items:center;gap:8px;margin-bottom:8px;font-weight:600;font-size:0.8rem}.pix-radar__info--success .pix-radar__info-header{color:#1e8449}.pix-radar__info--warning .pix-radar__info-header{color:#9a7b0a}.pix-radar__info--danger .pix-radar__info-header{color:#922b21}.pix-radar__info-text{margin:0;font-size:0.8rem;line-height:1.5;color:#495057}.pix-radar__details{margin-top:4px}.pix-radar__details-toggle{display:flex;align-items:center;gap:8px;width:100%;padding:10px 12px;background:transparent;border:1px dashed #dee2e6;border-radius:8px;cursor:pointer;font-size:0.8rem;color:#6c757d;transition:all 0.2s ease;list-style:none}.pix-radar__details-toggle::-webkit-details-marker{display:none}.pix-radar__details-toggle:hover{background:#f8f9fa;border-color:#adb5bd;color:#495057}.pix-radar__details-arrow{margin-left:auto;transition:transform 0.25s ease;font-size:0.7rem}.pix-radar__details[open] .pix-radar__details-arrow{transform:rotate(180deg)}.pix-radar__details-content{padding:14px;margin-top:10px;background:#f8f9fa;border-radius:8px;font-size:0.8rem;color:#495057;line-height:1.6}.pix-radar__details-content p{margin:0 0 10px}.pix-radar__details-content ul{margin:0 0 10px;padding-left:18px}.pix-radar__details-content li{margin-bottom:4px}.pix-radar__details-note{margin:0;padding-top:10px;border-top:1px dashed #dee2e6;font-size:0.75rem;color:#6c757d}@media (max-width: 992px){.pix-radar__grid{grid-template-columns:repeat(2, 1fr)}}@media (max-width: 768px){.pix-radar__header{flex-direction:column;align-items:flex-start;gap:10px}.pix-radar__badge{align-self:flex-start}.pix-radar__amount{font-size:1.6rem}.pix-radar__grid{grid-template-columns:repeat(2, 1fr);gap:8px}.pix-radar__grid-item{padding:10px}.pix-radar__grid-value{font-size:0.85rem}}@media (max-width: 480px){.pix-radar__body{padding:14px}.pix-radar__amount{font-size:1.5rem}.pix-radar__grid{grid-template-columns:1fr 1fr}.pix-radar__grid-icon{width:28px;height:28px;font-size:0.75rem}.pix-radar__grid-label{font-size:0.6rem}.pix-radar__grid-value{font-size:0.8rem}.pix-radar__info{padding:12px}.pix-radar__progress-track{height:8px}}#editTransactionForm .form-group{margin-bottom:16px}#editTransactionForm label{display:block;font-weight:600;color:#495057;margin-bottom:6px;font-size:0.9rem}#editTransactionForm .form-control{width:100%;padding:10px 12px;border:1px solid #dee2e6;border-radius:8px;font-size:1rem;transition:border-color 0.2s, box-shadow 0.2s;background:#fff;box-sizing:border-box}#editTransactionForm .form-control:focus{outline:none;border-color:#667eea;box-shadow:0 0 0 3px rgba(102,126,234,0.15)}#editTransactionForm select.form-control{appearance:none;background-image:url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3e%3cpath fill='none' stroke='%23343a40' stroke-linecap='round' stroke-linejoin='round' stroke-width='2' d='M2 5l6 6 6-6'/%3e%3c/svg%3e");background-repeat:no-repeat;background-position:right 12px center;background-size:12px;padding-right:36px}#editTransactionForm textarea.form-control{resize:vertical;min-height:60px}#editTransactionForm .form-row{display:flex;gap:16px}#editTransactionForm .form-group.half{flex:1}@media (max-width: 480px){#editTransactionForm .form-row{flex-direction:column;gap:0}#editTransactionForm .form-control{padding:12px;font-size:16px}}.kanban-container{max-width:100%;margin:0 auto}.kanban-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;gap:1rem}.kanban-header h1{font-size:1.5rem;font-weight:600;color:var(--text);margin:0}.btn-new-task{display:flex;align-items:center;gap:0.5rem;padding:0.6rem 1rem;font-size:0.875rem;white-space:nowrap}.kanban-board{display:flex;gap:1rem;min-height:calc(100vh - 220px)}.kanban-column{flex:1;min-width:280px;max-width:400px;display:flex;flex-direction:column;background:var(--surface-2);border-radius:10px;overflow:hidden}.kanban-column-header{display:flex;justify-content:space-between;align-items:center;padding:0.875rem 1rem;border-bottom:3px solid transparent}.kanban-column-header h3{font-size:0.875rem;font-weight:600;text-transform:uppercase;letter-spacing:0.5px;margin:0;color:var(--text)}.task-count{display:flex;align-items:center;justify-content:center;min-width:24px;height:24px;padding:0 0.5rem;font-size:0.75rem;font-weight:600;border-radius:12px;background:var(--bg-muted);color:var(--text-muted)}.kanban-column-todo .kanban-column-header,.kanban-column-header.kanban-column-todo{border-bottom-color:var(--primary)}.kanban-column-todo .task-count{background:var(--primary-light);color:var(--primary)}.kanban-column-doing .kanban-column-header,.kanban-column-header.kanban-column-doing{border-bottom-color:var(--warning)}.kanban-column-doing .task-count{background:var(--warning-light);color:var(--warning-text)}.kanban-column-done .kanban-column-header,.kanban-column-header.kanban-column-done{border-bottom-color:var(--success)}.kanban-column-done .task-count{background:var(--success-light);color:var(--success)}.kanban-column[data-status="done"] .task-count.has-tasks{background:var(--success);color:white;animation:pulseSuccess 2s ease-in-out}@keyframes pulseSuccess{0%{transform:scale(1)}50%{transform:scale(1.1)}100%{transform:scale(1)}}.kanban-column-body{flex:1;padding:0.75rem;display:flex;flex-direction:column;gap:0.75rem;overflow-y:auto;min-height:100px}.kanban-column-body.drag-over{background:var(--primary-light)}.kanban-empty-state{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:2rem 1rem;text-align:center;color:var(--text-muted)}.kanban-empty-state i{font-size:2rem;margin-bottom:0.75rem;opacity:0.4}.kanban-empty-state p{font-size:0.875rem;font-weight:500;margin:0 0 0.25rem 0;color:var(--text-secondary)}.kanban-empty-state span{font-size:0.8125rem;opacity:0.7}.task-card{background:var(--surface);border-radius:8px;padding:0.875rem;box-shadow:var(--shadow-sm);cursor:grab;transition:box-shadow 0.2s ease, transform 0.2s ease, opacity 0.2s ease;border:1px solid var(--border-light)}.task-card:hover{box-shadow:var(--shadow)}.task-card:active{cursor:grabbing}.task-card.dragging{opacity:0.5;transform:rotate(3deg);box-shadow:var(--shadow-lg)}.task-card.task-new,.task-card.task-moved,.task-card.task-updated{animation:taskHighlight 0.6s ease}.task-card.task-moving{opacity:0.7;transform:scale(0.98)}@keyframes taskHighlight{0%{background:var(--success-light);box-shadow:0 0 0 2px var(--success)}100%{background:var(--surface);box-shadow:var(--shadow-sm)}}.task-card-header{display:flex;justify-content:space-between;align-items:flex-start;gap:0.5rem;margin-bottom:0.5rem}.task-title{font-size:0.9375rem;font-weight:500;color:var(--text);line-height:1.4;word-break:break-word}.task-actions{display:flex;gap:0.25rem;opacity:0;transition:opacity 0.2s ease}.task-card:hover .task-actions{opacity:1}.task-action-btn{display:flex;align-items:center;justify-content:center;width:28px;height:28px;border:none;background:transparent;color:var(--text-muted);border-radius:4px;cursor:pointer;transition:background 0.2s ease, color 0.2s ease}.task-action-btn:hover{background:var(--bg-hover)}.task-action-btn.task-edit:hover{color:var(--primary)}.task-action-btn.task-delete:hover{color:var(--danger)}.task-card-body{margin-bottom:0.5rem}.task-description{font-size:0.8125rem;color:var(--text-muted);line-height:1.5;margin:0;word-break:break-word}.task-card-footer{display:flex;justify-content:space-between;align-items:center;gap:0.5rem}.task-due-date{display:flex;align-items:center;gap:0.375rem;font-size:0.75rem;color:var(--text-muted)}.task-due-date i{font-size:0.6875rem}.task-due-date.overdue{color:var(--danger);font-weight:500}.task-due-date.today{color:var(--info);font-weight:500}.task-move-buttons{display:none;gap:0.25rem}.task-move-btn{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:1px solid var(--border);background:var(--surface);color:var(--text-muted);border-radius:6px;cursor:pointer;transition:all 0.2s ease}.task-move-btn:hover{background:var(--primary);border-color:var(--primary);color:white}.task-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:var(--surface-overlay);display:none;align-items:center;justify-content:center;z-index:1000;padding:1rem}.task-modal-overlay.show{display:flex}.task-modal{background:var(--surface);border-radius:12px;width:100%;max-width:480px;max-height:90vh;overflow:hidden;box-shadow:var(--shadow-xl);animation:modalSlideIn 0.2s ease}@keyframes modalSlideIn{from{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.task-modal-header{display:flex;justify-content:space-between;align-items:center;padding:1rem 1.25rem;border-bottom:1px solid var(--border)}.task-modal-header h3{font-size:1.125rem;font-weight:600;color:var(--text);margin:0}.task-modal-close{display:flex;align-items:center;justify-content:center;width:32px;height:32px;border:none;background:transparent;color:var(--text-muted);border-radius:6px;cursor:pointer;transition:all 0.2s ease}.task-modal-close:hover{background:var(--bg-hover);color:var(--text)}.task-modal-body{padding:1.25rem}.task-modal-body .form-group{margin-bottom:1rem}.task-modal-body .form-group:last-child{margin-bottom:0}.task-modal-body label{display:block;font-size:0.875rem;font-weight:500;color:var(--text);margin-bottom:0.375rem}.task-modal-body .form-control{width:100%;padding:0.625rem 0.875rem;font-size:0.9375rem;border:1px solid var(--input-border);border-radius:6px;background:var(--input-bg);color:var(--text);transition:border-color 0.2s ease, box-shadow 0.2s ease}.task-modal-body .form-control:focus{outline:none;border-color:var(--input-focus-border);box-shadow:var(--input-focus-shadow)}.task-modal-body textarea.form-control{resize:vertical;min-height:80px}.task-modal-footer{display:flex;justify-content:flex-end;gap:0.75rem;padding:1rem 1.25rem;border-top:1px solid var(--border);background:var(--surface-2)}.task-modal-footer .btn{padding:0.5rem 1rem;font-size:0.875rem}@media (max-width: 768px){.kanban-header{flex-direction:column;align-items:stretch}.kanban-header h1{font-size:1.25rem}.btn-new-task{justify-content:center}.kanban-board{flex-direction:column;gap:1.5rem}.kanban-column{max-width:100%;min-width:auto}.kanban-column-body{min-height:auto;max-height:none}.task-move-buttons{display:flex}.task-actions{opacity:1}.task-card{cursor:default}.task-card:active{cursor:default}}@media (max-width: 480px){.kanban-container{padding:0}.kanban-header{margin-bottom:1rem}.task-card{padding:0.75rem}.task-title{font-size:0.875rem}.task-modal{max-width:100%;border-radius:12px 12px 0 0;position:fixed;bottom:0;left:0;right:0;max-height:85vh}@keyframes modalSlideIn{from{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}}[data-theme="dark"] .kanban-column{background:var(--surface)}[data-theme="dark"] .task-card{background:var(--surface-2);border-color:var(--border)}[data-theme="dark"] .task-card:hover{background:var(--surface-3)}[data-theme="dark"] .task-modal{background:var(--surface)}[data-theme="dark"] .task-modal-footer{background:var(--surface-2)}.mobile-only{display:none}@media (max-width: 768px){.mobile-only{display:flex}.desktop-only{display:none}}:root{--primary-gradient: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--primary: #667eea;--primary-dark: #764ba2;--success: #27ae60;--success-light: rgba(39, 174, 96, 0.1);--danger: #e74c3c;--danger-light: rgba(231, 76, 60, 0.1);--dark: #1a1a2e;--dark-soft: #2d2d44;--gray-900: #16213e;--gray-700: #4a5568;--gray-500: #718096;--gray-300: #e2e8f0;--gray-100: #f7fafc;--white: #ffffff;--font: 'Inter', -apple-system, BlinkMacSystemFont, sans-serif;--section-padding: 100px;--section-padding-mobile: 60px;--radius: 16px;--radius-sm: 8px;--radius-lg: 24px;--shadow-sm: 0 2px 8px rgba(0, 0, 0, 0.08);--shadow-md: 0 4px 20px rgba(0, 0, 0, 0.1);--shadow-lg: 0 8px 40px rgba(0, 0, 0, 0.12);--shadow-glow: 0 0 60px rgba(102, 126, 234, 0.3)}*{margin:0;padding:0;box-sizing:border-box}.landing-body{font-family:var(--font);color:var(--dark);line-height:1.6;background:var(--white);overflow-x:hidden;-webkit-font-smoothing:antialiased}.container{max-width:1200px;margin:0 auto;padding:0 24px}.gradient-text{background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.landing-header{position:fixed;top:0;left:0;right:0;z-index:1000;padding:16px 0;background:rgba(26,26,46,0.95);backdrop-filter:blur(20px);border-bottom:1px solid rgba(255,255,255,0.1)}.landing-header .container{display:flex;justify-content:space-between;align-items:center}.logo{display:flex;align-items:center;gap:12px;text-decoration:none}.logo-icon{width:40px;height:40px;background:var(--primary-gradient);border-radius:10px;display:flex;align-items:center;justify-content:center}.logo-icon i{color:var(--white);font-size:1.1rem}.logo-text{color:var(--white);font-weight:700;font-size:1.25rem;letter-spacing:-0.02em}.header-nav{display:flex;align-items:center;gap:24px}.nav-link{color:rgba(255,255,255,0.8);text-decoration:none;font-weight:500;font-size:0.95rem;transition:color 0.2s}.nav-link:hover{color:var(--white)}.btn-cta-header{background:var(--success);color:var(--white);padding:10px 20px;border-radius:var(--radius-sm);text-decoration:none;font-weight:600;font-size:0.9rem;transition:all 0.2s}.btn-cta-header:hover{background:#2ecc71;transform:translateY(-1px)}.hero{position:relative;min-height:100vh;display:flex;align-items:center;justify-content:center;text-align:center;padding:140px 0 80px;background:var(--dark);overflow:hidden}.hero .container{position:relative;z-index:2}.hero-badge{display:inline-flex;align-items:center;gap:8px;background:rgba(102,126,234,0.2);border:1px solid rgba(102,126,234,0.4);padding:8px 16px;border-radius:50px;margin-bottom:32px}.hero-badge i{color:var(--primary);font-size:0.85rem}.hero-badge span{color:var(--white);font-size:0.85rem;font-weight:600;text-transform:uppercase;letter-spacing:0.05em}.hero-title{font-size:clamp(2.5rem, 6vw, 4rem);font-weight:800;line-height:1.1;color:var(--white);margin-bottom:24px;letter-spacing:-0.03em}.hero-subtitle{font-size:1.25rem;color:rgba(255,255,255,0.7);max-width:600px;margin:0 auto 40px;line-height:1.6}.hero-price-highlight{background:rgba(255,255,255,0.05);border:1px solid rgba(255,255,255,0.1);border-radius:var(--radius-lg);padding:32px 48px;display:inline-block;margin-bottom:40px}.price-tag{display:flex;align-items:baseline;justify-content:center;gap:4px;margin-bottom:16px}.price-currency{font-size:1.5rem;font-weight:700;color:var(--white)}.price-value{font-size:4rem;font-weight:800;background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}.price-period{font-size:1.25rem;color:rgba(255,255,255,0.6);font-weight:500}.price-benefits{display:flex;justify-content:center;gap:24px;flex-wrap:wrap}.price-benefits span{display:flex;align-items:center;gap:6px;color:rgba(255,255,255,0.8);font-size:0.9rem;font-weight:500}.price-benefits i{color:var(--success);font-size:0.75rem}.hero-cta{display:flex;justify-content:center;gap:16px;flex-wrap:wrap;margin-bottom:24px}.btn-primary-hero{display:inline-flex;align-items:center;gap:10px;background:var(--success);color:var(--white);padding:16px 32px;border-radius:var(--radius-sm);text-decoration:none;font-weight:600;font-size:1.1rem;transition:all 0.3s;box-shadow:0 4px 20px rgba(39,174,96,0.4)}.btn-primary-hero:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(39,174,96,0.5)}.btn-secondary-hero{display:inline-flex;align-items:center;gap:10px;background:transparent;color:var(--white);padding:16px 32px;border-radius:var(--radius-sm);text-decoration:none;font-weight:600;font-size:1.1rem;border:2px solid rgba(255,255,255,0.3);transition:all 0.3s}.btn-secondary-hero:hover{border-color:rgba(255,255,255,0.6);background:rgba(255,255,255,0.05)}.hero-note{color:rgba(255,255,255,0.5);font-size:0.9rem;display:flex;align-items:center;justify-content:center;gap:8px}.hero-note i{font-size:0.8rem}.hero-bg-shapes{position:absolute;inset:0;overflow:hidden;pointer-events:none}.shape{position:absolute;border-radius:50%;filter:blur(80px);opacity:0.4}.shape-1{width:600px;height:600px;background:var(--primary);top:-200px;right:-200px}.shape-2{width:400px;height:400px;background:var(--primary-dark);bottom:-100px;left:-100px}.shape-3{width:300px;height:300px;background:var(--success);bottom:20%;right:10%;opacity:0.2}.value-prop{padding:var(--section-padding) 0;background:var(--white)}.value-grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:24px}.value-card{text-align:center;padding:40px 24px;background:var(--gray-100);border-radius:var(--radius);transition:all 0.3s}.value-card:hover{transform:translateY(-4px);box-shadow:var(--shadow-md)}.value-icon{width:64px;height:64px;background:var(--primary-gradient);border-radius:16px;display:flex;align-items:center;justify-content:center;margin:0 auto 20px}.value-icon i{color:var(--white);font-size:1.5rem}.value-card h3{font-size:1.25rem;font-weight:700;color:var(--dark);margin-bottom:8px}.value-card p{color:var(--gray-500);font-size:0.95rem;line-height:1.5}.section-header{text-align:center;margin-bottom:60px}.section-badge{display:inline-block;background:var(--primary-gradient);color:var(--white);padding:6px 16px;border-radius:50px;font-size:0.8rem;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:16px}.section-header h2{font-size:clamp(1.75rem, 4vw, 2.5rem);font-weight:800;color:var(--dark);margin-bottom:12px;letter-spacing:-0.02em}.section-header p{font-size:1.1rem;color:var(--gray-500)}.why-pro{padding:var(--section-padding) 0;background:var(--gray-100)}.pro-grid{display:grid;grid-template-columns:repeat(2, 1fr);gap:24px;max-width:900px;margin:0 auto}.pro-item{display:flex;align-items:flex-start;gap:20px;padding:28px;background:var(--white);border-radius:var(--radius);box-shadow:var(--shadow-sm);transition:all 0.3s}.pro-item:hover{transform:translateY(-2px);box-shadow:var(--shadow-md)}.pro-icon{width:52px;height:52px;border-radius:12px;display:flex;align-items:center;justify-content:center;flex-shrink:0}.pro-icon.no{background:var(--danger-light)}.pro-icon.no i{color:var(--danger);font-size:1.25rem}.pro-icon.yes{background:var(--success-light)}.pro-icon.yes i{color:var(--success);font-size:1.25rem}.pro-content h4{font-size:1.1rem;font-weight:700;color:var(--dark);margin-bottom:4px}.pro-content p{color:var(--gray-500);font-size:0.95rem}.features{padding:var(--section-padding) 0;background:var(--white)}.features-grid{display:grid;grid-template-columns:repeat(4, 1fr);gap:16px}.feature-card{display:flex;align-items:center;gap:12px;padding:20px 24px;background:var(--gray-100);border-radius:var(--radius-sm);transition:all 0.2s}.feature-card:hover{background:var(--gray-300)}.feature-card i{color:var(--primary);font-size:1.25rem;width:24px;text-align:center}.feature-card span{font-weight:600;color:var(--dark);font-size:0.95rem}.comparison{padding:var(--section-padding) 0;background:var(--gray-100)}.comparison-cards{display:grid;grid-template-columns:repeat(2, 1fr);gap:32px;max-width:900px;margin:0 auto}.comparison-card{padding:32px;border-radius:var(--radius);box-shadow:var(--shadow-md)}.comparison-card.others{background:var(--white);border:2px solid var(--gray-300)}.comparison-card.us{background:linear-gradient(135deg, #f0fdf4 0%, #dcfce7 100%);border:2px solid var(--success)}.comparison-header-card{display:flex;align-items:center;gap:12px;margin-bottom:24px}.comparison-header-card i{font-size:1.5rem}.comparison-card.others .comparison-header-card i{color:var(--danger)}.comparison-card.us .comparison-header-card i{color:var(--success)}.comparison-header-card h3{font-size:1.25rem;font-weight:700}.comparison-card.others h3{color:var(--gray-700)}.comparison-card.us h3{color:var(--success)}.comparison-card ul{list-style:none;margin:0;padding:0}.comparison-card li{display:flex;align-items:center;gap:12px;padding:12px 0;font-size:0.95rem;border-bottom:1px solid rgba(0,0,0,0.05)}.comparison-card li:last-child{border-bottom:none}.comparison-card.others li i{color:var(--danger);font-size:0.85rem}.comparison-card.us li i{color:var(--success);font-size:0.85rem}.comparison-highlight{margin-top:24px;padding:16px;background:rgba(39,174,96,0.15);border-radius:var(--radius-sm);display:flex;align-items:center;justify-content:center;gap:10px}.comparison-highlight i{color:var(--success);font-size:1.1rem}.comparison-highlight span{font-weight:700;color:var(--success);font-size:0.95rem}.pricing{padding:var(--section-padding) 0;background:var(--dark)}.pricing-box{max-width:480px;margin:0 auto;padding:48px 40px;background:var(--white);border-radius:var(--radius-lg);text-align:center;box-shadow:var(--shadow-glow)}.pricing-header{margin-bottom:32px}.pricing-badge{display:inline-block;background:var(--primary-gradient);color:var(--white);padding:6px 16px;border-radius:50px;font-size:0.75rem;font-weight:600;text-transform:uppercase;letter-spacing:0.05em;margin-bottom:12px}.pricing-header h2{font-size:1.5rem;font-weight:700;color:var(--dark)}.pricing-amount{margin-bottom:16px}.pricing-amount .currency{font-size:1.5rem;font-weight:700;color:var(--dark);vertical-align:top}.pricing-amount .amount{font-size:4.5rem;font-weight:800;background:var(--primary-gradient);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;line-height:1}.pricing-amount .period{font-size:1.25rem;color:var(--gray-500);font-weight:500}.pricing-tagline{color:var(--gray-500);font-size:1rem;margin-bottom:32px}.pricing-includes{list-style:none;text-align:left;margin-bottom:32px;padding:0}.pricing-includes li{display:flex;align-items:center;gap:12px;padding:14px 0;border-bottom:1px solid var(--gray-300);font-size:1rem;color:var(--dark)}.pricing-includes li:last-child{border-bottom:none}.pricing-includes i{color:var(--success);font-size:1rem}.btn-pricing{display:flex;align-items:center;justify-content:center;gap:10px;width:100%;background:var(--success);color:var(--white);padding:18px 32px;border-radius:var(--radius-sm);text-decoration:none;font-weight:700;font-size:1.1rem;transition:all 0.3s;box-shadow:0 4px 20px rgba(39,174,96,0.3)}.btn-pricing:hover{transform:translateY(-2px);box-shadow:0 8px 30px rgba(39,174,96,0.4)}.pricing-note{margin-top:20px;color:var(--gray-500);font-size:0.85rem}.trust{padding:80px 0;background:var(--gray-100)}.trust-grid{display:grid;grid-template-columns:repeat(3, 1fr);gap:32px;max-width:800px;margin:0 auto}.trust-item{text-align:center}.trust-item i{font-size:2rem;color:var(--primary);margin-bottom:16px}.trust-item h4{font-size:1.1rem;font-weight:700;color:var(--dark);margin-bottom:4px}.trust-item p{color:var(--gray-500);font-size:0.9rem}.final-cta{padding:var(--section-padding) 0;background:var(--primary-gradient);text-align:center}.final-cta h2{font-size:clamp(1.75rem, 4vw, 2.5rem);font-weight:800;color:var(--white);margin-bottom:12px}.final-cta>.container>p{font-size:1.15rem;color:rgba(255,255,255,0.8);margin-bottom:40px}.cta-buttons{display:flex;justify-content:center;gap:16px;flex-wrap:wrap}.btn-primary-final{display:inline-flex;align-items:center;gap:10px;background:var(--white);color:var(--primary-dark);padding:16px 32px;border-radius:var(--radius-sm);text-decoration:none;font-weight:700;font-size:1.1rem;transition:all 0.3s;box-shadow:var(--shadow-md)}.btn-primary-final:hover{transform:translateY(-2px);box-shadow:var(--shadow-lg)}.btn-secondary-final{display:inline-flex;align-items:center;gap:10px;background:transparent;color:var(--white);padding:16px 32px;border-radius:var(--radius-sm);text-decoration:none;font-weight:600;font-size:1.1rem;border:2px solid rgba(255,255,255,0.4);transition:all 0.3s}.btn-secondary-final:hover{border-color:var(--white);background:rgba(255,255,255,0.1)}.landing-footer{padding:40px 0;background:var(--dark)}.footer-content{display:flex;flex-direction:column;align-items:center;gap:20px}.footer-brand{display:flex;align-items:center;gap:10px;font-size:1.15rem;font-weight:600;color:var(--white)}.footer-brand i{color:var(--primary)}.footer-links{display:flex;gap:32px}.footer-links a{color:rgba(255,255,255,0.6);text-decoration:none;font-size:0.9rem;transition:color 0.2s}.footer-links a:hover{color:var(--white)}.footer-copyright{color:rgba(255,255,255,0.4);font-size:0.85rem}@media (max-width: 1024px){.value-grid{grid-template-columns:repeat(2, 1fr)}.features-grid{grid-template-columns:repeat(2, 1fr)}.pro-grid{grid-template-columns:1fr}}@media (max-width: 768px){:root{--section-padding: 60px}.container{padding:0 20px}.logo-text{display:none}.nav-link{display:none}.hero{padding:120px 0 60px;min-height:auto}.hero-title{font-size:2rem}.hero-title br{display:none}.hero-subtitle{font-size:1rem;margin-bottom:32px}.hero-price-highlight{padding:24px 20px;width:100%}.price-value{font-size:3rem}.price-benefits{flex-direction:column;gap:8px}.hero-cta{flex-direction:column;width:100%}.btn-primary-hero,.btn-secondary-hero{width:100%;justify-content:center}.value-grid{grid-template-columns:1fr;gap:16px}.value-card{padding:24px;display:flex;align-items:center;gap:20px;text-align:left}.value-icon{margin:0;width:56px;height:56px;flex-shrink:0}.value-card h3{margin-bottom:4px}.pro-grid{gap:16px}.pro-item{padding:20px}.features-grid{grid-template-columns:1fr;gap:12px}.feature-card{padding:16px 20px}.comparison-cards{grid-template-columns:1fr;gap:20px}.comparison-card{padding:24px}.pricing-box{padding:32px 24px;margin:0 10px}.pricing-amount .amount{font-size:3.5rem}.trust-grid{grid-template-columns:1fr;gap:24px}.cta-buttons{flex-direction:column;width:100%}.btn-primary-final,.btn-secondary-final{width:100%;justify-content:center}.footer-links{flex-wrap:wrap;justify-content:center;gap:20px}}@media (max-width: 375px){.hero{padding:100px 0 50px}.hero-title{font-size:1.75rem}.hero-badge{padding:6px 12px}.hero-badge span{font-size:0.75rem}.price-value{font-size:2.5rem}.section-header h2{font-size:1.5rem}.pricing-amount .amount{font-size:3rem}}.quick-modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:rgba(0,0,0,0.5);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center;z-index:2000;padding:1rem}.quick-modal{background:var(--surface, #fff);border-radius:12px;width:100%;max-width:500px;max-height:90vh;display:flex;flex-direction:column;box-shadow:0 20px 60px rgba(0,0,0,0.3);animation:quickModalSlideIn 0.3s ease;overflow:hidden}@keyframes quickModalSlideIn{from{opacity:0;transform:translateY(-30px) scale(0.95)}to{opacity:1;transform:translateY(0) scale(1)}}.quick-modal-header{display:flex;align-items:center;justify-content:space-between;padding:1rem 1.25rem;color:white;position:relative}.quick-modal-header.income{background:linear-gradient(135deg, #28a745 0%, #20c997 100%)}.quick-modal-header.expense{background:linear-gradient(135deg, #dc3545 0%, #e83e8c 100%)}.quick-modal-header h3{display:flex;align-items:center;gap:0.5rem;margin:0;font-size:1.125rem;font-weight:600}.quick-modal-header .modal-icon{font-size:1.25rem}.quick-modal-drag-handle{display:none}.quick-modal-close{background:rgba(255,255,255,0.2);border:none;color:white;width:32px;height:32px;border-radius:50%;font-size:1.25rem;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:background 0.2s ease}.quick-modal-close:hover{background:rgba(255,255,255,0.3)}.quick-modal-body{flex:1;overflow-y:auto;padding:1.25rem}.quick-main-section{display:flex;flex-direction:column;gap:1rem}.quick-field{display:flex;flex-direction:column}.quick-field label{font-size:0.75rem;font-weight:600;text-transform:uppercase;letter-spacing:0.5px;color:var(--text-muted, #6c757d);margin-bottom:0.375rem}.quick-field-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.quick-amount-field{margin-bottom:0.5rem}.quick-amount-field label{font-size:0.75rem;font-weight:600;text-transform:uppercase;letter-spacing:0.5px;color:var(--text-muted, #6c757d);margin-bottom:0.375rem;display:block}.amount-input-wrapper{display:flex;align-items:center;background:var(--surface-2, #f8f9fa);border:2px solid var(--border, #dee2e6);border-radius:8px;padding:0.5rem 1rem;transition:border-color 0.2s ease, box-shadow 0.2s ease}.amount-input-wrapper:focus-within{border-color:var(--primary, #3498db);box-shadow:0 0 0 3px rgba(52,152,219,0.15)}.currency-prefix{font-size:1.25rem;font-weight:600;color:var(--text-muted, #6c757d);margin-right:0.5rem}.quick-amount-input{flex:1;border:none;background:transparent;font-size:1.5rem;font-weight:600;font-family:'Courier New', monospace;text-align:right;color:var(--text, #2c3e50);outline:none;width:100%;-moz-appearance:textfield}.quick-amount-input::placeholder{color:var(--text-muted, #adb5bd)}.quick-amount-input::-webkit-outer-spin-button,.quick-amount-input::-webkit-inner-spin-button{-webkit-appearance:none;margin:0}.quick-input,.quick-select,.quick-textarea{padding:0.625rem 0.875rem;border:1px solid var(--border, #dee2e6);border-radius:6px;font-size:0.9375rem;background:var(--surface, #fff);color:var(--text, #2c3e50);transition:border-color 0.2s ease, box-shadow 0.2s ease}.quick-input:focus,.quick-select:focus,.quick-textarea:focus{outline:none;border-color:var(--primary, #3498db);box-shadow:0 0 0 3px rgba(52,152,219,0.1)}.quick-input:invalid:not(:placeholder-shown),.quick-select:invalid{border-color:var(--danger, #e74c3c)}.quick-textarea{resize:vertical;min-height:60px}.quick-advanced-toggle{display:flex;align-items:center;gap:0.5rem;padding:0.75rem 0;margin-top:0.5rem;color:var(--primary, #3498db);font-size:0.875rem;font-weight:500;cursor:pointer;border-top:1px solid var(--border-light, #e9ecef);transition:color 0.2s ease}.quick-advanced-toggle:hover{color:var(--primary-hover, #2980b9)}.quick-advanced-toggle .toggle-icon{font-size:0.75rem;transition:transform 0.2s ease}.quick-advanced-section{padding-top:1rem;display:flex;flex-direction:column;gap:1rem;animation:advancedSlideIn 0.2s ease}@keyframes advancedSlideIn{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.quick-status-options{display:flex;gap:0.75rem}.status-option{flex:1;cursor:pointer}.status-option input[type="radio"]{display:none}.status-option span{display:block;padding:0.625rem;text-align:center;border:1px solid var(--border, #dee2e6);border-radius:6px;font-size:0.875rem;background:var(--surface, #fff);transition:all 0.2s ease}.status-option input[type="radio"]:checked+span{border-color:var(--primary, #3498db);background:rgba(52,152,219,0.1);color:var(--primary, #3498db);font-weight:600}.quick-modal-footer{display:flex;justify-content:flex-end;gap:0.75rem;padding:1rem 1.25rem;border-top:1px solid var(--border, #dee2e6);background:var(--surface-2, #f8f9fa)}.btn-quick{padding:0.625rem 1.25rem;border:none;border-radius:6px;font-size:0.875rem;font-weight:500;cursor:pointer;display:flex;align-items:center;gap:0.5rem;transition:all 0.2s ease}.btn-quick.btn-secondary{background:var(--surface, #fff);color:var(--text-muted, #6c757d);border:1px solid var(--border, #dee2e6)}.btn-quick.btn-secondary:hover{background:var(--surface-2, #f8f9fa);color:var(--text, #2c3e50)}.btn-quick.btn-save{background:var(--primary, #3498db);color:white}.btn-quick.btn-save:hover{background:var(--primary-hover, #2980b9);transform:translateY(-1px)}.btn-quick.btn-save.income{background:#28a745}.btn-quick.btn-save.income:hover{background:#218838}.btn-quick.btn-save.expense{background:#dc3545}.btn-quick.btn-save.expense:hover{background:#c82333}.btn-quick:disabled{opacity:0.7;cursor:not-allowed;transform:none !important}@media (max-width: 768px){.quick-modal-overlay{align-items:flex-end;padding:0}.quick-modal{max-width:100%;max-height:90vh;border-radius:16px 16px 0 0;animation:quickModalSlideUp 0.3s ease}@keyframes quickModalSlideUp{from{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.quick-modal-drag-handle{display:block;position:absolute;top:8px;left:50%;transform:translateX(-50%);width:40px;height:4px;background:rgba(255,255,255,0.4);border-radius:2px}.quick-modal-header{padding-top:1.5rem}.quick-field-row{grid-template-columns:1fr}.quick-modal-footer{position:sticky;bottom:0;flex-direction:column;gap:0.5rem;padding-bottom:calc(1rem + env(safe-area-inset-bottom, 0px))}.btn-quick{width:100%;justify-content:center;padding:0.875rem}.btn-quick.btn-save{order:-1;font-size:1rem}.quick-amount-input{font-size:1.25rem}.currency-prefix{font-size:1rem}}[data-theme="dark"] .quick-modal{background:var(--surface, #1a1a2e)}[data-theme="dark"] .quick-modal-close{background:rgba(0,0,0,0.2)}[data-theme="dark"] .quick-modal-close:hover{background:rgba(0,0,0,0.3)}[data-theme="dark"] .amount-input-wrapper{background:var(--surface-2, #16213e);border-color:var(--border, #2d3748)}[data-theme="dark"] .quick-input,[data-theme="dark"] .quick-select,[data-theme="dark"] .quick-textarea{background:var(--surface-2, #16213e);border-color:var(--border, #2d3748);color:var(--text, #e2e8f0)}[data-theme="dark"] .quick-modal-footer{background:var(--surface-2, #16213e);border-color:var(--border, #2d3748)}[data-theme="dark"] .status-option span{background:var(--surface-2, #16213e);border-color:var(--border, #2d3748)}[data-theme="dark"] .quick-advanced-toggle{border-color:var(--border, #2d3748)}.quick-mode-toggle{display:flex;gap:0.5rem;margin-bottom:1rem;padding:0.25rem;background:var(--surface-2, #f8f9fa);border-radius:8px}.mode-btn{flex:1;padding:0.5rem 0.75rem;border:none;background:transparent;border-radius:6px;font-size:0.8125rem;font-weight:500;color:var(--text-muted, #6c757d);cursor:pointer;transition:all 0.2s ease}.mode-btn:hover{color:var(--text, #2c3e50)}.mode-btn.active{background:var(--surface, #fff);color:var(--primary, #3498db);box-shadow:0 1px 3px rgba(0,0,0,0.1)}.quick-multi-shared{margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid var(--border-light, #e9ecef)}.quick-multi-item{background:var(--surface-2, #f8f9fa);border:1px solid var(--border, #dee2e6);border-radius:8px;padding:0.75rem;margin-bottom:0.75rem;animation:itemSlideIn 0.2s ease}@keyframes itemSlideIn{from{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.quick-multi-item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:0.75rem}.item-number{font-size:0.75rem;font-weight:600;color:var(--text-muted, #6c757d);background:var(--surface, #fff);padding:0.25rem 0.5rem;border-radius:4px}.btn-remove-item{background:transparent;border:none;color:var(--text-muted, #adb5bd);cursor:pointer;padding:0.25rem;border-radius:4px;transition:all 0.2s ease}.btn-remove-item:hover{color:var(--danger, #e74c3c);background:rgba(231,76,60,0.1)}.quick-multi-item-fields{display:grid;grid-template-columns:100px 1fr 120px;gap:0.5rem;align-items:end}.quick-multi-item-fields .quick-field label{font-size:0.6875rem;margin-bottom:0.25rem}.quick-multi-item-fields .amount-input-wrapper{padding:0.375rem 0.5rem}.quick-multi-item-fields .amount-input-wrapper.small{border-width:1px}.quick-multi-item-fields .currency-prefix{font-size:0.875rem;margin-right:0.25rem}.quick-multi-item-fields .quick-amount-input{font-size:1rem}.quick-multi-item-fields .quick-input,.quick-multi-item-fields .quick-select{padding:0.5rem 0.625rem;font-size:0.8125rem}.btn-add-item{width:100%;padding:0.625rem;border:2px dashed var(--border, #dee2e6);background:transparent;border-radius:8px;color:var(--primary, #3498db);font-size:0.875rem;font-weight:500;cursor:pointer;display:flex;align-items:center;justify-content:center;gap:0.5rem;transition:all 0.2s ease}.btn-add-item:hover{border-color:var(--primary, #3498db);background:rgba(52,152,219,0.05)}@media (max-width: 768px){.quick-multi-item-fields{grid-template-columns:1fr;gap:0.75rem}.quick-multi-item-fields .quick-field-amount{order:1}.quick-multi-item-fields .quick-field-desc{order:2}.quick-multi-item-fields .quick-field-cat{order:3}.mode-btn{font-size:0.75rem;padding:0.5rem}}[data-theme="dark"] .quick-mode-toggle{background:var(--surface-2, #16213e)}[data-theme="dark"] .mode-btn.active{background:var(--surface, #1a1a2e)}[data-theme="dark"] .quick-multi-item{background:var(--surface, #1a1a2e);border-color:var(--border, #2d3748)}[data-theme="dark"] .item-number{background:var(--surface-2, #16213e)}[data-theme="dark"] .btn-add-item{border-color:var(--border, #2d3748)}:root{--sidebar-width: 260px;--sidebar-collapsed-width: 72px;--sidebar-active: linear-gradient(135deg, #667eea 0%, #764ba2 100%);--topbar-height: 60px;--topbar-height-safe: calc(60px + env(safe-area-inset-top, 0px));--transition-speed: 0.3s}.app-layout{display:flex;min-height:100vh}.sidebar{position:fixed;top:0;left:0;width:var(--sidebar-width);height:100vh;background:var(--sidebar-bg);display:flex;flex-direction:column;z-index:1000;transition:transform var(--transition-speed) ease,width var(--transition-speed) ease;overflow:hidden}.sidebar-header{padding:20px;border-bottom:1px solid rgba(255,255,255,0.08);display:flex;align-items:center;justify-content:space-between;min-height:70px}.sidebar-logo{display:flex;align-items:center;gap:12px;text-decoration:none;color:white}.sidebar-logo-icon{width:40px;height:40px;background:var(--sidebar-active);border-radius:10px;display:flex;align-items:center;justify-content:center;font-size:1.2rem;color:white;flex-shrink:0}.sidebar-logo-text{font-size:1.1rem;font-weight:700;color:white;white-space:nowrap;transition:opacity 0.2s ease, width 0.2s ease;overflow:hidden}.sidebar-logo-text span{color:#667eea}.sidebar-toggle-btn{display:none;width:100%;background:var(--sidebar-hover);border:1px solid rgba(255,255,255,0.1);color:var(--sidebar-text);cursor:pointer;padding:12px 14px;border-radius:8px;transition:all 0.25s ease;margin-bottom:12px;align-items:center;justify-content:flex-start;gap:12px;font-size:0.9rem;font-weight:500;position:relative}.sidebar-toggle-btn:hover{background:rgba(102,126,234,0.2);border-color:rgba(102,126,234,0.4);color:white}.sidebar-toggle-btn:active{transform:scale(0.98)}.sidebar-toggle-btn i{transition:transform 0.3s ease;font-size:0.9rem;width:20px;text-align:center;flex-shrink:0}.sidebar-toggle-btn .toggle-text{transition:opacity 0.2s ease, width 0.2s ease;white-space:nowrap;overflow:hidden}.sidebar-close-btn{display:none;background:transparent;border:none;color:var(--sidebar-text);cursor:pointer;padding:8px;border-radius:6px;font-size:1.2rem;transition:all 0.2s ease}.sidebar-close-btn:hover{background:var(--sidebar-hover);color:white}.sidebar-nav{flex:1;padding:16px 12px;overflow-y:auto;overflow-x:hidden}.sidebar-nav::-webkit-scrollbar{width:4px}.sidebar-nav::-webkit-scrollbar-track{background:transparent}.sidebar-nav::-webkit-scrollbar-thumb{background:rgba(255,255,255,0.1);border-radius:4px}.nav-section{margin-bottom:24px}.nav-section-title{font-size:0.7rem;font-weight:600;text-transform:uppercase;letter-spacing:1px;color:rgba(255,255,255,0.4);padding:0 12px;margin-bottom:8px;transition:opacity 0.2s ease, visibility 0.2s ease;white-space:nowrap;overflow:hidden}.nav-item{display:flex;align-items:center;gap:12px;padding:12px 14px;color:var(--sidebar-text);text-decoration:none;border-radius:8px;margin-bottom:4px;transition:all 0.2s ease;position:relative;white-space:nowrap}.nav-item:hover{background:var(--sidebar-hover);color:var(--sidebar-text-active)}.nav-item.active{background:var(--sidebar-active);color:var(--sidebar-text-active);box-shadow:0 4px 12px rgba(102,126,234,0.3)}.nav-item-icon{width:20px;height:20px;display:flex;align-items:center;justify-content:center;font-size:1rem;flex-shrink:0}.nav-item-text{font-size:0.9rem;font-weight:500;transition:opacity 0.2s ease, width 0.2s ease;white-space:nowrap;overflow:hidden}.nav-item-subscription{background:linear-gradient(135deg, rgba(255,193,7,0.15) 0%, rgba(255,152,0,0.15) 100%);border:1px solid rgba(255,193,7,0.3)}.nav-item-subscription:hover{background:linear-gradient(135deg, rgba(255,193,7,0.25) 0%, rgba(255,152,0,0.25) 100%);border-color:rgba(255,193,7,0.5)}.nav-item-subscription .nav-item-icon{color:#ffc107}.nav-item-badge{background:linear-gradient(135deg, #ffc107 0%, #ff9800 100%);color:#1a1a2e;font-size:0.65rem;font-weight:700;padding:2px 6px;border-radius:4px;text-transform:uppercase;letter-spacing:0.5px;margin-left:auto}.sidebar.collapsed .nav-item-badge{display:none}.sidebar-footer{padding:16px;border-top:1px solid rgba(255,255,255,0.08)}.sidebar-user{display:flex;align-items:center;gap:12px;padding:10px;background:var(--sidebar-hover);border-radius:10px}.sidebar-user-avatar{width:36px;height:36px;background:var(--sidebar-active);border-radius:8px;display:flex;align-items:center;justify-content:center;color:white;font-size:1rem;flex-shrink:0}.sidebar-user-info{flex:1;min-width:0;transition:opacity 0.2s ease, width 0.2s ease;overflow:hidden}.sidebar-user-name{font-size:0.85rem;font-weight:600;color:white;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.sidebar-user-role{font-size:0.7rem;color:var(--sidebar-text)}.topbar{position:fixed;top:0;left:var(--sidebar-width);right:0;height:var(--topbar-height-safe);padding-top:env(safe-area-inset-top, 0px);background:var(--topbar-bg);border-bottom:1px solid var(--topbar-border);display:flex;align-items:center;justify-content:space-between;padding-left:24px;padding-right:24px;z-index:999;transition:left var(--transition-speed) ease,background-color 0.3s ease,border-color 0.3s ease;box-sizing:border-box}.topbar-menu-btn{display:none;background:transparent;border:none;color:var(--topbar-text);cursor:pointer;padding:8px;border-radius:8px;font-size:1.3rem;transition:all 0.2s ease}.topbar-menu-btn:hover{background:var(--bg-hover)}.topbar-left{display:flex;align-items:center;gap:16px}.topbar-title{font-size:1.1rem;font-weight:600;color:var(--topbar-text)}.topbar-actions{display:flex;align-items:center;gap:12px}.topbar-btn{display:flex;align-items:center;gap:8px;padding:8px 16px;border:none;border-radius:8px;font-size:0.85rem;font-weight:600;cursor:pointer;text-decoration:none;transition:all 0.2s ease}.topbar-btn-success{background:#27ae60;color:white}.topbar-btn-success:hover{background:#219a52;transform:translateY(-1px);box-shadow:0 4px 12px rgba(39,174,96,0.3)}.topbar-btn-danger{background:#e74c3c;color:white}.topbar-btn-danger:hover{background:#d63031;transform:translateY(-1px);box-shadow:0 4px 12px rgba(231,76,60,0.3)}.topbar-right{display:flex;align-items:center;gap:16px}.topbar-locale-select{padding:6px 10px;border:1px solid var(--border);border-radius:6px;background:var(--input-bg);color:var(--text-secondary);font-size:0.85rem;cursor:pointer;transition:all 0.2s ease}.topbar-locale-select:hover{border-color:var(--primary)}.topbar-locale-select:focus{outline:none;border-color:var(--primary);box-shadow:var(--input-focus-shadow)}.topbar-user{position:relative}.topbar-user-btn{display:flex;align-items:center;gap:10px;padding:6px 12px;background:var(--bg-hover);border:1px solid var(--border);border-radius:8px;cursor:pointer;transition:all 0.2s ease}.topbar-user-btn:hover{background:var(--bg-active)}.topbar-user-avatar{width:32px;height:32px;background:var(--primary-gradient);border-radius:8px;display:flex;align-items:center;justify-content:center;color:white;font-size:0.9rem}.topbar-user-info{display:flex;flex-direction:column;align-items:flex-start;gap:2px}.topbar-user-name{font-size:0.85rem;font-weight:500;color:var(--text)}.read-mode-badge{font-size:0.65rem;padding:2px 8px;background:rgba(255,193,7,0.15);color:#f57c00;border-radius:10px;font-weight:600;text-transform:uppercase;letter-spacing:0.3px;display:inline-flex;align-items:center;gap:4px}.read-mode-badge i{font-size:0.7rem}.topbar-user-arrow{font-size:0.7rem;color:var(--text-muted);transition:transform 0.2s ease}.topbar-user-btn[aria-expanded="true"] .topbar-user-arrow{transform:rotate(180deg)}.topbar-user-dropdown{position:absolute;top:calc(100% + 8px);right:0;min-width:200px;background:var(--surface);border:1px solid var(--border);border-radius:10px;box-shadow:var(--shadow-lg);opacity:0;visibility:hidden;transform:translateY(-10px);transition:all 0.2s ease;z-index:1001}.topbar-user-dropdown.show{opacity:1;visibility:visible;transform:translateY(0)}.dropdown-item{display:flex;align-items:center;gap:10px;padding:12px 16px;color:var(--text-secondary);text-decoration:none;font-size:0.9rem;transition:all 0.2s ease}.dropdown-item:first-child{border-radius:10px 10px 0 0}.dropdown-item:last-child{border-radius:0 0 10px 10px}.dropdown-item:hover{background:var(--bg-hover);color:var(--primary)}.dropdown-item i{width:18px;text-align:center;font-size:0.95rem}.dropdown-divider{height:1px;background:var(--border);margin:4px 0}.dropdown-item-danger{color:var(--danger)}.dropdown-item-danger:hover{background:var(--danger-light);color:var(--danger)}.main-content{flex:1;margin-left:var(--sidebar-width);margin-top:var(--topbar-height-safe);padding:24px;min-height:calc(100vh - var(--topbar-height-safe));transition:margin-left var(--transition-speed) ease,background-color 0.3s ease;background:var(--bg);overflow-x:hidden;max-width:100vw;box-sizing:border-box}.main-content .container,.main-content .dashboard-container{max-width:100%;padding:0;margin:0}.main-content .alert{margin-bottom:20px}.sidebar-overlay{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgba(0,0,0,0.5);backdrop-filter:blur(4px);z-index:999;opacity:0;pointer-events:none;transition:opacity var(--transition-speed) ease}.sidebar-overlay.show{opacity:1;pointer-events:auto}@media (max-width: 1024px){:root{--sidebar-width: 240px}}@media (max-width: 768px){.sidebar{transform:translateX(-100%);width:280px;padding-top:env(safe-area-inset-top, 0px)}.sidebar.open{transform:translateX(0)}.sidebar-close-btn{display:block}.sidebar-overlay{display:block}.topbar{left:0;padding-left:16px;padding-right:16px}.topbar-menu-btn{display:flex}.topbar-title{display:none}.topbar-actions{display:none}.topbar-user-name{display:none}.main-content{margin-left:0;padding:16px}.mobile-fab-container{display:block}}@media (max-width: 480px){.sidebar{width:100%}.topbar-right{gap:8px}.topbar-locale-select{padding:4px 8px;font-size:0.8rem}.main-content{padding:12px}}@media (min-width: 769px){.sidebar-toggle-btn{display:flex}.sidebar.collapsed{width:var(--sidebar-collapsed-width)}.sidebar.collapsed .sidebar-logo-text,.sidebar.collapsed .nav-section-title,.sidebar.collapsed .nav-item-text,.sidebar.collapsed .sidebar-user-info,.sidebar.collapsed .toggle-text{opacity:0;visibility:hidden;width:0;margin:0;padding:0}.sidebar.collapsed .sidebar-logo{justify-content:center}.sidebar.collapsed .sidebar-header{justify-content:center;padding:16px}.sidebar.collapsed .sidebar-toggle-btn{justify-content:center;padding:12px;gap:0}.sidebar.collapsed .sidebar-toggle-btn i{transform:rotate(180deg)}.sidebar.collapsed .nav-item{justify-content:center;padding:14px;gap:0}.sidebar.collapsed .nav-item-icon{width:24px;height:24px;font-size:1.1rem}.sidebar.collapsed .sidebar-user{justify-content:center;padding:12px}.sidebar.collapsed .sidebar-footer{padding:12px}.sidebar.collapsed+.topbar{left:var(--sidebar-collapsed-width)}.sidebar.collapsed~.main-content{margin-left:var(--sidebar-collapsed-width)}.sidebar.collapsed .nav-item::after{content:attr(data-tooltip);position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%);background:#1a1d29;color:white;padding:8px 14px;border-radius:8px;font-size:0.85rem;font-weight:500;white-space:nowrap;opacity:0;visibility:hidden;transition:all 0.15s ease;z-index:1001;box-shadow:0 4px 16px rgba(0,0,0,0.25);pointer-events:none}.sidebar.collapsed .nav-item:hover::after{opacity:1;visibility:visible}.sidebar.collapsed .nav-item.active::after{background:linear-gradient(135deg, #667eea 0%, #764ba2 100%)}.sidebar.collapsed .sidebar-toggle-btn::after{content:attr(data-tooltip);position:absolute;left:calc(100% + 12px);top:50%;transform:translateY(-50%);background:#1a1d29;color:white;padding:8px 14px;border-radius:8px;font-size:0.85rem;font-weight:500;white-space:nowrap;opacity:0;visibility:hidden;transition:all 0.15s ease;z-index:1001;box-shadow:0 4px 16px rgba(0,0,0,0.25);pointer-events:none}.sidebar.collapsed .sidebar-toggle-btn:hover::after{opacity:1;visibility:visible}}@media (min-width: 769px){.mobile-only{display:none !important}}@media (max-width: 768px){.desktop-only{display:none !important}}@keyframes slideIn{from{transform:translateX(-100%)}to{transform:translateX(0)}}@keyframes fadeIn{from{opacity:0}to{opacity:1}}.app-layout .navbar{display:none !important}.app-layout main.container{max-width:none;padding:0;margin:0}.nav-item-with-submenu{position:relative}.nav-item-parent{display:flex;align-items:center;justify-content:space-between;cursor:pointer;user-select:none}.nav-item-arrow{margin-left:auto;transition:transform 0.3s ease;font-size:0.75rem;opacity:0.7;width:16px;height:16px;display:flex;align-items:center;justify-content:center}.nav-item-with-submenu.expanded .nav-item-arrow{transform:rotate(180deg)}.nav-submenu{max-height:0;overflow:hidden;opacity:0;transition:max-height 0.3s ease, opacity 0.2s ease, margin 0.3s ease;margin:0}.nav-item-with-submenu.expanded .nav-submenu{max-height:300px;opacity:1;margin-top:4px;margin-bottom:4px}.nav-subitem{display:flex;align-items:center;gap:12px;padding:10px 14px 10px 46px;color:var(--sidebar-text);text-decoration:none;border-radius:8px;margin-bottom:2px;transition:all 0.2s ease;position:relative;white-space:nowrap;font-size:0.85rem}.nav-subitem::before{content:'';position:absolute;left:22px;top:50%;width:8px;height:1px;background:rgba(255,255,255,0.2);transition:all 0.2s ease}.nav-subitem:hover{background:var(--sidebar-hover);color:var(--sidebar-text-active)}.nav-subitem:hover::before{width:12px;background:rgba(255,255,255,0.4)}.nav-subitem.active{background:rgba(102,126,234,0.15);color:var(--sidebar-text-active);border-left:3px solid #667eea;padding-left:43px}.nav-subitem.active::before{background:#667eea}.nav-subitem-icon{width:18px;height:18px;display:flex;align-items:center;justify-content:center;font-size:0.9rem;flex-shrink:0}.nav-subitem-text{font-size:0.85rem;font-weight:500;transition:opacity 0.2s ease;white-space:nowrap;overflow:hidden}@media (min-width: 769px){.sidebar.collapsed .nav-item-arrow,.sidebar.collapsed .nav-submenu{display:none}.sidebar.collapsed .nav-item-with-submenu:hover .nav-submenu{display:block;position:absolute;left:calc(100% + 12px);top:0;background:#1a1d29;border-radius:8px;box-shadow:0 4px 16px rgba(0,0,0,0.25);padding:8px;max-height:none;opacity:1;margin:0;min-width:200px;z-index:1002}.sidebar.collapsed .nav-item-with-submenu:hover .nav-submenu .nav-subitem{padding:10px 14px}.sidebar.collapsed .nav-item-with-submenu:hover .nav-submenu .nav-subitem::before{display:none}}@media (max-width: 768px){.nav-subitem{padding-left:40px}}:root{--color-mode: 'light';--primary: #4a5568;--primary-hover: #2d3748;--primary-light: rgba(74, 85, 104, 0.1);--primary-gradient: linear-gradient(135deg, #4a5568 0%, #2d3748 100%);--success: #27ae60;--success-light: rgba(39, 174, 96, 0.1);--success-bg: #d4edda;--success-border: #c3e6cb;--success-text: #155724;--danger: #e74c3c;--danger-light: rgba(231, 76, 60, 0.1);--danger-bg: #f8d7da;--danger-border: #f5c6cb;--danger-text: #721c24;--warning: #f39c12;--warning-light: rgba(243, 156, 18, 0.1);--warning-bg: #fff3cd;--warning-border: #ffeaa7;--warning-text: #856404;--info: #17a2b8;--info-light: rgba(23, 162, 184, 0.1);--info-bg: #d1ecf1;--info-border: #bee5eb;--info-text: #0c5460;--bg: #f5f6fa;--bg-elevated: #ffffff;--bg-hover: #f8f9fa;--bg-active: #e9ecef;--bg-muted: #f1f3f5;--surface: #ffffff;--surface-2: #f8f9fa;--surface-3: #f1f3f5;--surface-overlay: rgba(0, 0, 0, 0.5);--text: #2c3e50;--text-secondary: #495057;--text-muted: #6c757d;--text-disabled: #adb5bd;--text-inverse: #ffffff;--border: #dee2e6;--border-light: #e9ecef;--border-dark: #ced4da;--border-focus: #4a5568;--shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.08);--shadow: 0 2px 8px rgba(0, 0, 0, 0.08);--shadow-md: 0 4px 12px rgba(0, 0, 0, 0.1);--shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.12);--shadow-xl: 0 20px 60px rgba(0, 0, 0, 0.15);--shadow-primary: 0 4px 12px rgba(74, 85, 104, 0.3);--input-bg: #ffffff;--input-border: #dee2e6;--input-focus-border: #4a5568;--input-focus-shadow: 0 0 0 3px rgba(74, 85, 104, 0.1);--input-placeholder: #adb5bd;--scrollbar-bg: #f1f1f1;--scrollbar-thumb: #c1c1c1;--scrollbar-thumb-hover: #a8a8a8;--sidebar-bg: #1a1d29;--sidebar-hover: #252836;--sidebar-text: #a0a3b1;--sidebar-text-active: #ffffff;--sidebar-border: rgba(255, 255, 255, 0.08);--topbar-bg: #ffffff;--topbar-text: #2c3e50;--topbar-border: #e9ecef;--table-header-bg: #f8f9fa;--table-border: #f1f3f4;--table-row-hover: #f8f9fa;--table-row-stripe: #fafbfc;--badge-bg: #e9ecef;--badge-text: #495057;--skeleton-base: #f0f0f0;--skeleton-shine: #e0e0e0;--chart-grid: #e9ecef;--chart-text: #6c757d}[data-theme="dark"]{--color-mode: 'dark';--primary: #7c93f5;--primary-hover: #8fa3f7;--primary-light: rgba(124, 147, 245, 0.15);--primary-gradient: linear-gradient(135deg, #7c93f5 0%, #9b6dff 100%);--success: #2ecc71;--success-light: rgba(46, 204, 113, 0.15);--success-bg: rgba(46, 204, 113, 0.15);--success-border: rgba(46, 204, 113, 0.3);--success-text: #2ecc71;--danger: #ff6b6b;--danger-light: rgba(255, 107, 107, 0.15);--danger-bg: rgba(255, 107, 107, 0.15);--danger-border: rgba(255, 107, 107, 0.3);--danger-text: #ff6b6b;--warning: #feca57;--warning-light: rgba(254, 202, 87, 0.15);--warning-bg: rgba(254, 202, 87, 0.15);--warning-border: rgba(254, 202, 87, 0.3);--warning-text: #feca57;--info: #54a0ff;--info-light: rgba(84, 160, 255, 0.15);--info-bg: rgba(84, 160, 255, 0.15);--info-border: rgba(84, 160, 255, 0.3);--info-text: #54a0ff;--bg: #0f1117;--bg-elevated: #1a1d29;--bg-hover: #252836;--bg-active: #2d3142;--bg-muted: #1e2130;--surface: #1a1d29;--surface-2: #252836;--surface-3: #2d3142;--surface-overlay: rgba(0, 0, 0, 0.7);--text: #e8e9ed;--text-secondary: #b8bbc4;--text-muted: #8b8f9d;--text-disabled: #5c5f6d;--text-inverse: #0f1117;--border: #2d3142;--border-light: #252836;--border-dark: #383d52;--border-focus: #7c93f5;--shadow-sm: 0 1px 3px rgba(0, 0, 0, 0.3);--shadow: 0 2px 8px rgba(0, 0, 0, 0.4);--shadow-md: 0 4px 12px rgba(0, 0, 0, 0.5);--shadow-lg: 0 8px 24px rgba(0, 0, 0, 0.6);--shadow-xl: 0 20px 60px rgba(0, 0, 0, 0.7);--shadow-primary: 0 4px 12px rgba(124, 147, 245, 0.25);--input-bg: #252836;--input-border: #383d52;--input-focus-border: #7c93f5;--input-focus-shadow: 0 0 0 3px rgba(124, 147, 245, 0.2);--input-placeholder: #5c5f6d;--scrollbar-bg: #1a1d29;--scrollbar-thumb: #383d52;--scrollbar-thumb-hover: #4a4f65;--sidebar-bg: #0f1117;--sidebar-hover: #1a1d29;--sidebar-text: #8b8f9d;--sidebar-text-active: #ffffff;--sidebar-border: rgba(255, 255, 255, 0.05);--topbar-bg: #1a1d29;--topbar-text: #e8e9ed;--topbar-border: #2d3142;--table-header-bg: #1e2130;--table-border: #2d3142;--table-row-hover: #252836;--table-row-stripe: #1e2130;--badge-bg: #2d3142;--badge-text: #b8bbc4;--skeleton-base: #252836;--skeleton-shine: #2d3142;--chart-grid: #2d3142;--chart-text: #8b8f9d}.theme-toggle{display:flex;align-items:center;gap:8px;background:var(--bg-hover);border:1px solid var(--border);border-radius:8px;padding:6px 12px;cursor:pointer;transition:all 0.3s ease;color:var(--text-secondary);font-size:0.9rem}.theme-toggle:hover{border-color:var(--primary);background:var(--primary-light);color:var(--primary)}.theme-toggle-icon{font-size:1.1rem;transition:transform 0.3s ease}.theme-toggle:hover .theme-toggle-icon{transform:rotate(15deg)}[data-theme="dark"] .theme-toggle .fa-sun{display:inline-block}[data-theme="dark"] .theme-toggle .fa-moon{display:none}:root .theme-toggle .fa-sun,[data-theme="light"] .theme-toggle .fa-sun{display:none}:root .theme-toggle .fa-moon,[data-theme="light"] .theme-toggle .fa-moon{display:inline-block}@media (max-width: 768px){.theme-toggle{padding:6px 10px}.theme-toggle-text{display:none}}body{background-color:var(--bg);color:var(--text);transition:background-color 0.3s ease, color 0.3s ease}::selection{background:var(--primary);color:var(--text-inverse)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--scrollbar-bg)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}*{scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-bg)}a{color:var(--primary)}a:hover{color:var(--primary-hover)}hr{border-color:var(--border)}code,pre{background:var(--surface-2);color:var(--text);border:1px solid var(--border)}table{border-color:var(--table-border)}th{background:var(--table-header-bg);color:var(--text-muted)}td{border-color:var(--table-border)}tr:hover{background:var(--table-row-hover)}:focus-visible{outline:2px solid var(--primary);outline-offset:2px}::placeholder{color:var(--input-placeholder)}:disabled,.disabled{opacity:0.6;cursor:not-allowed}.app-layout,.sidebar,.topbar,.main-content,.card-improved,.insight-card,.table-container,.modal-dialog-improved,.alert,.btn,input,select,textarea{transition:background-color 0.3s ease, border-color 0.3s ease, color 0.3s ease, box-shadow 0.3s ease}.no-transitions,.no-transitions *{transition:none !important}.card-improved,.summary-card,.insight-card,.alert-card,.info-card,.month-navigation-improved,.month-header-improved,.insights-section,.table-container,.transaction-form,.auth-card{background:var(--surface);border-color:var(--border);box-shadow:var(--shadow)}[data-theme="dark"] .card-improved,[data-theme="dark"] .summary-card,[data-theme="dark"] .insight-card,[data-theme="dark"] .alert-card,[data-theme="dark"] .info-card,[data-theme="dark"] .month-navigation-improved,[data-theme="dark"] .month-header-improved,[data-theme="dark"] .insights-section,[data-theme="dark"] .table-container,[data-theme="dark"] .transaction-form,[data-theme="dark"] .auth-card{background:var(--surface);border-color:var(--border)}[data-theme="dark"] .income-card{background:linear-gradient(135deg, rgba(46,204,113,0.08), var(--surface))}[data-theme="dark"] .expense-card{background:linear-gradient(135deg, rgba(255,107,107,0.08), var(--surface))}[data-theme="dark"] .balance-card{background:linear-gradient(135deg, rgba(84,160,255,0.08), var(--surface))}[data-theme="dark"] .balance-card.positive-balance{background:linear-gradient(135deg, rgba(46,204,113,0.08), var(--surface))}[data-theme="dark"] .balance-card.negative-balance{background:linear-gradient(135deg, rgba(255,107,107,0.08), var(--surface))}[data-theme="dark"] h1,[data-theme="dark"] h2,[data-theme="dark"] h3,[data-theme="dark"] h4,[data-theme="dark"] h5,[data-theme="dark"] h6{color:var(--text)}[data-theme="dark"] .dashboard-header h1,[data-theme="dark"] .month-header h1,[data-theme="dark"] .header-content h1,[data-theme="dark"] .planning-title,[data-theme="dark"] .section-title,[data-theme="dark"] .insights-title,[data-theme="dark"] .table-header h3{color:var(--text)}[data-theme="dark"] .card-content h3,[data-theme="dark"] .summary-card h3,[data-theme="dark"] .summary-card h4,[data-theme="dark"] .insight-label{color:var(--text-muted)}[data-theme="dark"] .description-cell strong,[data-theme="dark"] .copy-desc{color:var(--text)}[data-theme="dark"] .month-summary{color:var(--text-muted)}[data-theme="dark"] .income-section,[data-theme="dark"] .expense-section,[data-theme="dark"] .category-summary,[data-theme="dark"] .copy-summary,[data-theme="dark"] .modal-footer-improved,[data-theme="dark"] .table-header,[data-theme="dark"] .table-footer{background:var(--surface-2);border-color:var(--border)}[data-theme="dark"] .month-content{background:var(--surface);box-shadow:var(--shadow)}[data-theme="dark"] .category-item,[data-theme="dark"] .transaction-item{background:var(--surface);border-color:var(--border)}[data-theme="dark"] .transaction-item:hover{background:var(--surface-2)}[data-theme="dark"] .alert-success{background:var(--success-bg);border-color:var(--success-border);color:var(--success-text)}[data-theme="dark"] .alert-danger{background:var(--danger-bg);border-color:var(--danger-border);color:var(--danger-text)}[data-theme="dark"] .alert-warning{background:var(--warning-bg);border-color:var(--warning-border);color:var(--warning-text)}[data-theme="dark"] .transactions-table-improved thead,[data-theme="dark"] .transactions-table-improved th{background:var(--table-header-bg);color:var(--text-muted);border-color:var(--table-border)}[data-theme="dark"] .transactions-table-improved td{border-color:var(--table-border);color:var(--text)}[data-theme="dark"] .transaction-row-improved:hover{background:var(--table-row-hover)}[data-theme="dark"] .form-control,[data-theme="dark"] .filter-select,[data-theme="dark"] .month-select,[data-theme="dark"] .year-select,[data-theme="dark"] select,[data-theme="dark"] input[type="text"],[data-theme="dark"] input[type="email"],[data-theme="dark"] input[type="password"],[data-theme="dark"] input[type="number"],[data-theme="dark"] input[type="date"],[data-theme="dark"] textarea{background:var(--input-bg);border-color:var(--input-border);color:var(--text)}[data-theme="dark"] .form-control:focus,[data-theme="dark"] .filter-select:focus,[data-theme="dark"] select:focus,[data-theme="dark"] input:focus,[data-theme="dark"] textarea:focus{border-color:var(--input-focus-border);box-shadow:var(--input-focus-shadow);background:var(--surface-2)}[data-theme="dark"] .form-group label,[data-theme="dark"] .auth-form label{color:var(--text)}[data-theme="dark"] .btn-outline-primary{border-color:var(--primary);color:var(--primary)}[data-theme="dark"] .btn-outline-secondary{border-color:var(--text-muted);color:var(--text-muted)}[data-theme="dark"] .btn-outline-danger{border-color:var(--danger);color:var(--danger)}[data-theme="dark"] .month-tabs{border-color:var(--border)}[data-theme="dark"] .month-tab,[data-theme="dark"] .month-tab-improved{background:var(--surface);border-color:var(--border);color:var(--text-muted)}[data-theme="dark"] .month-tab:hover,[data-theme="dark"] .month-tab-improved:hover{background:var(--surface-2);color:var(--text)}[data-theme="dark"] .copy-tab-buttons{background:var(--surface-2);border-color:var(--border)}[data-theme="dark"] .copy-tab-btn{color:var(--text-muted)}[data-theme="dark"] .copy-tab-btn:hover{background:var(--primary-light);color:var(--primary)}[data-theme="dark"] .copy-tab-btn.active{background:var(--surface);color:var(--primary);border-color:var(--primary)}[data-theme="dark"] .category-tag,[data-theme="dark"] .copy-cat,[data-theme="dark"] .transaction-info .category{background:var(--badge-bg);color:var(--badge-text)}[data-theme="dark"] .status-badge.pending{background:var(--warning-bg);color:var(--warning-text);border-color:var(--warning-border)}[data-theme="dark"] .status-badge.paid{background:var(--info-bg);color:var(--info-text);border-color:var(--info-border)}[data-theme="dark"] .empty-state,[data-theme="dark"] .empty-transactions,[data-theme="dark"] .empty-copy{background:var(--surface);border-color:var(--border);color:var(--text-muted)}[data-theme="dark"] .modal-overlay{background:var(--surface-overlay)}[data-theme="dark"] .modal-dialog-improved,[data-theme="dark"] .delete-modal{background:var(--surface);box-shadow:var(--shadow-xl)}[data-theme="dark"] .modal-body-improved{color:var(--text)}[data-theme="dark"] .modal-intro{color:var(--text-secondary)}[data-theme="dark"] .copy-tabs-container{background:var(--surface);border-color:var(--border)}[data-theme="dark"] .transaction-copy-item{background:var(--surface);border-color:var(--border)}[data-theme="dark"] .transaction-copy-item:hover{background:var(--primary-light);border-color:var(--primary)}[data-theme="dark"] .transaction-copy-item.selected{background:var(--primary-light);border-color:var(--primary)}[data-theme="dark"] .copy-actions{background:var(--surface-2);border-color:var(--border)}[data-theme="dark"] .btn-select-all,[data-theme="dark"] .btn-select-none{background:var(--surface);border-color:var(--border);color:var(--text)}[data-theme="dark"] .btn-modal.btn-secondary{background:var(--surface-2);color:var(--text)}[data-theme="dark"] .delete-modal-overlay{background:var(--surface-overlay)}[data-theme="dark"] .delete-modal{background:var(--surface)}[data-theme="dark"] .delete-modal-title{color:var(--text)}[data-theme="dark"] .delete-modal-message{color:var(--text-secondary)}[data-theme="dark"] .delete-modal-icon{background:linear-gradient(135deg, rgba(255,107,107,0.2), rgba(255,107,107,0.1))}[data-theme="dark"] .delete-modal-icon i{color:var(--danger)}[data-theme="dark"] .delete-modal-checkbox{background:var(--surface-2);border-color:var(--border)}[data-theme="dark"] .delete-modal-checkbox label{color:var(--text-secondary)}[data-theme="dark"] .delete-modal-btn.cancel{background:var(--surface-2);color:var(--text)}[data-theme="dark"] .delete-modal-btn.cancel:hover{background:var(--surface-3)}[data-theme="dark"] .transactions-list::-webkit-scrollbar-track,[data-theme="dark"] .category-summary::-webkit-scrollbar-track,[data-theme="dark"] .table-wrapper::-webkit-scrollbar-track{background:var(--scrollbar-bg)}[data-theme="dark"] .transactions-list::-webkit-scrollbar-thumb,[data-theme="dark"] .category-summary::-webkit-scrollbar-thumb,[data-theme="dark"] .table-wrapper::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb)}[data-theme="dark"] .transactions-list::-webkit-scrollbar-thumb:hover,[data-theme="dark"] .category-summary::-webkit-scrollbar-thumb:hover,[data-theme="dark"] .table-wrapper::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}[data-theme="dark"] .transaction-info strong{color:var(--text)}[data-theme="dark"] .transaction-info .date{color:var(--text-muted)}[data-theme="dark"] .transaction-amount{color:var(--text)}[data-theme="dark"] .transaction-item.pending{background:var(--warning-light)}[data-theme="dark"] .transaction-item.paid{background:rgba(46,204,113,0.05)}[data-theme="dark"] .transaction-item.overdue{background:var(--danger-light)}[data-theme="dark"] .card-main-value.positive,[data-theme="dark"] .secondary-value.positive,[data-theme="dark"] .insight-amount.positive,[data-theme="dark"] .month-summary .positive,[data-theme="dark"] .total-amount.positive,[data-theme="dark"] .copy-val.income,[data-theme="dark"] .amount-cell.income{color:var(--success)}[data-theme="dark"] .card-main-value.negative,[data-theme="dark"] .secondary-value.negative,[data-theme="dark"] .insight-amount.negative,[data-theme="dark"] .month-summary .negative,[data-theme="dark"] .total-amount.negative,[data-theme="dark"] .copy-val.expense,[data-theme="dark"] .amount-cell.expense,[data-theme="dark"] .category-amount{color:var(--danger)}[data-theme="dark"] .insight-card{background:var(--surface-2);border-color:var(--border)}[data-theme="dark"] .insight-card.positive-insight{background:linear-gradient(135deg, rgba(46,204,113,0.1), var(--surface-2));border-color:var(--success)}[data-theme="dark"] .insight-card.negative-insight{background:linear-gradient(135deg, rgba(255,107,107,0.1), var(--surface-2));border-color:var(--danger)}[data-theme="dark"] .insight-value{color:var(--text)}[data-theme="dark"] .alert-danger-improved{background:linear-gradient(135deg, rgba(255,107,107,0.1), var(--surface))}[data-theme="dark"] .alert-warning-improved{background:linear-gradient(135deg, rgba(254,202,87,0.1), var(--surface))}[data-theme="dark"] .alert-header strong{color:var(--text)}[data-theme="dark"] .alert-transaction{background:var(--surface-2);color:var(--text-secondary)}[data-theme="dark"] .section-total.income{background:rgba(46,204,113,0.1);border-color:var(--success);color:var(--success)}[data-theme="dark"] .section-total.expense{background:rgba(255,107,107,0.1);border-color:var(--danger);color:var(--danger)}[data-theme="dark"] .card-breakdown{border-color:var(--border)}[data-theme="dark"] .breakdown-label{color:var(--text-muted)}[data-theme="dark"] .breakdown-value{color:var(--text)}[data-theme="dark"] .card-message{background:var(--surface-2);color:var(--text-muted)}[data-theme="dark"] .card-message.alert{background:var(--danger-light);color:var(--danger)}[data-theme="dark"] .footer-hint{color:var(--text-muted)}[data-theme="dark"] .planning-info{color:var(--text)}[data-theme="dark"] .info-card h3{color:var(--primary)}[data-theme="dark"] .info-card li,[data-theme="dark"] .info-card p{color:var(--text-secondary)}[data-theme="dark"] .auth-header h1{color:var(--text)}[data-theme="dark"] .auth-header p{color:var(--text-muted)}[data-theme="dark"] .auth-form .form-control{background:var(--input-bg);border-color:var(--input-border);color:var(--text)}[data-theme="dark"] .input-with-icon{background:var(--input-bg);border-color:var(--input-border)}[data-theme="dark"] .input-with-icon:focus-within{border-color:var(--input-focus-border);background:var(--surface-2);box-shadow:var(--input-focus-shadow)}[data-theme="dark"] .auth-links{border-color:var(--border)}[data-theme="dark"] .auth-links p{color:var(--text-muted)}[data-theme="dark"] .fab-menu{background:var(--surface);box-shadow:var(--shadow-lg)}[data-theme="dark"] .fab-option{color:var(--text)}[data-theme="dark"] .fab-option:hover{background:var(--bg-hover)}[data-theme="dark"] .checkbox-toggle:hover{background:var(--surface-2)}[data-theme="dark"] .checkbox-btn.unchecked{background:var(--surface-2)}[data-theme="dark"] .date-cell{color:var(--text-secondary)}[data-theme="dark"] .date-status.overdue{color:var(--danger)}[data-theme="dark"] .date-status.today{color:var(--warning)}[data-theme="dark"] .date-status.paid{color:var(--success)}[data-theme="dark"] .transaction-notes{color:var(--text-muted)}[data-theme="dark"] .payment-method{color:var(--text-muted)}[data-theme="dark"] .skeleton{background:linear-gradient(90deg, var(--skeleton-base) 25%, var(--skeleton-shine) 50%, var(--skeleton-base) 75%);background-size:200% 100%}[data-theme="dark"] .toast-notification{box-shadow:var(--shadow-lg)}[data-theme="dark"] .nav-arrow{background:var(--primary-gradient)}[data-theme="dark"] .btn-current-month{background:var(--info)}[data-theme="dark"] .btn-current-month:hover{background:#4592d6}[data-theme="dark"] .chart-container{background:var(--surface)}[data-theme="dark"] .input-group{border-color:var(--input-border)}[data-theme="dark"] .input-prefix{background:var(--surface-2);border-color:var(--input-border);color:var(--text-muted)}[data-theme="dark"] .progress-bar{background:var(--surface-3)}[data-theme="dark"] .btn-action:hover{background:var(--surface-2)}[data-theme="dark"] .income-section,[data-theme="dark"] .expense-section{border-color:var(--border)}[data-theme="dark"] .income-section h2,[data-theme="dark"] .expense-section h2{color:var(--text);border-color:var(--border)}[data-theme="dark"] .month-header,[data-theme="dark"] .summary-row h3{border-color:var(--border);color:var(--text)}[data-theme="dark"] .category-summary h3{color:var(--text)}[data-theme="dark"] .category-name{color:var(--text)}[data-theme="dark"] .category-percentage{color:var(--text-muted)}trix-editor{min-height:500px;border:1px solid #e2e8f0;border-radius:8px;padding:16px;background:white}trix-toolbar{background:#f8f9fa;border:1px solid #e2e8f0;border-radius:8px 8px 0 0;padding:8px;position:sticky;top:0;z-index:10}trix-editor:focus{outline:none;border-color:#4299e1;box-shadow:0 0 0 3px rgba(66,153,225,0.1)}@media (max-width: 768px){trix-editor{min-height:400px;padding:12px}}@media (max-width: 480px){trix-editor{min-height:350px}}
