@import url(https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;600;700&display=swap);*,:after,:before{box-sizing:border-box}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;margin:0}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}@media (max-width:768px){.modal-overlay{align-items:flex-end!important;padding:0!important}.modal-content,[class*=Modal]>div,[class*=modal-content]{animation:slideUpMobile .3s ease-out!important;border-radius:16px 16px 0 0!important;margin:0!important;max-height:92vh!important;max-width:100%!important;overflow-y:auto!important;width:100%!important}@keyframes slideUpMobile{0%{opacity:0;transform:translateY(100%)}to{opacity:1;transform:translateY(0)}}.modal-content table,[class*=modal-content] table{-webkit-overflow-scrolling:touch;display:block;overflow-x:auto}.modal-footer{flex-direction:column-reverse!important}.modal-btn{width:100%!important}}.login-page-wrapper{align-items:center;background:linear-gradient(135deg,#4facfe,#00f2fe);display:flex;height:100vh;justify-content:center;left:0;margin:0;position:fixed;top:0;width:100%}.login-page-wrapper,input::placeholder{font-family:Poppins,sans-serif}.login-container{align-items:center;display:flex;justify-content:center;width:100%}.login-box{background:#fff;border-radius:12px;box-shadow:0 4px 8px #0003;padding:40px;text-align:center;width:400px}.login-title{color:#2c3e50;font-size:28px;margin-bottom:10px}.login-subtitle{color:#7f8c8d;font-size:14px;margin-bottom:20px}.input-group{font-family:Poppins,sans-serif;margin-bottom:15px;position:relative}.password-toggle-btn{align-items:center;background:none;border:none;color:#7f8c8d;cursor:pointer;display:flex;font-size:18px;padding:0;position:absolute;right:12px;top:12px}.password-toggle-btn:hover{color:#2c3e50}.password-hint{background-color:#e3f2fd;border-left:4px solid #4facfe;border-radius:4px;margin-top:8px;padding:12px;text-align:left;transition:all .3s ease;-webkit-user-select:none;user-select:none}.password-hint:hover{background-color:#bbdefb}.password-hint small{color:#1976d2;font-size:12px;line-height:1.6}.password-hint strong{align-items:center;color:#0d47a1;display:flex;font-size:13px}.login-input{border:1px solid #ddd;border-radius:8px;box-sizing:border-box;padding:12px;width:100%}.login-button{background:#4facfe;border:none;border-radius:8px;color:#fff;cursor:pointer;font-family:Poppins,sans-serif;font-size:16px;padding:12px;width:100%}.login-button:hover{background:#00bcd4}.signup-link{color:#7f8c8d;margin-top:15px}.confirmBox{animation:slideInDown .5s ease-out,pulse 2s ease-in-out infinite;margin-top:16px}.confirmBox:before{background-color:#fff;border-radius:50%;color:#059669;content:"✓";display:inline-block;font-size:16px;font-weight:700;height:24px;line-height:24px;margin-right:8px;text-align:center;vertical-align:middle;width:24px}.confirmText{display:inline;vertical-align:middle}.forgot-link a,.signup-link a{color:#4facfe;font-weight:600;text-align:left;text-decoration:none}.terms-container{align-items:center;color:#000;display:flex;font-size:13px;margin-bottom:0}.terms-container input[type=checkbox]{margin-right:8px}.terms-container a{color:#4facfe;font-weight:600;margin-left:4px;text-decoration:none}.terms-container a:hover{text-decoration:underline}.errorBox{animation:fadeIn .5s ease-in-out;background-color:#f8d7da;border:1px solid #f5c6cb;border-radius:5px;box-shadow:0 2px 5px #0003;color:#721c24;margin:10px 0;padding:10px}.spinner{border:3px solid #f3f3f3;margin:0 auto}.confirmBox{animation:slideInDown .5s ease-out;background:linear-gradient(135deg,#10b981,#059669);border:2px solid #059669;border-radius:12px;box-shadow:0 4px 12px #10b9814d;margin-top:20px;padding:16px}.confirmText{color:#fff;font-size:14px;font-weight:500;line-height:1.5;margin:0;text-align:center}@keyframes slideInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.errorBox{animation:slideInDown .5s ease-out;background:linear-gradient(135deg,#ef4444,#dc2626);border:2px solid #dc2626;border-radius:12px;box-shadow:0 4px 12px #ef44444d;margin-top:20px;padding:16px}.errorText{color:#fff;font-size:14px;font-weight:500;line-height:1.5;margin:0;text-align:center}*{box-sizing:border-box}*,body,html{margin:0;padding:0}body,html{background:linear-gradient(135deg,#4facfe,#00f2fe)!important;overflow:hidden}#root,body,html{height:100%;width:100%}#root{background:#0000}.dashboard-layout{margin:0;min-height:100vh;overflow:hidden;padding:0;position:relative;width:100%}.sidebar nav a{color:inherit;outline:none}.sidebar nav a,.sidebar nav a:focus,.sidebar nav a:hover{text-decoration:none}.menu-item{border-radius:4px;padding:15px 20px;transition:background .2s}.menu-item:hover{background:#34495e}.menu-item.active{background:#1abc9c}.sidebar{background:#2c3e50;box-shadow:2px 0 5px #0000001a;color:#ecf0f1;display:flex;flex-direction:column;height:100vh;left:0;position:fixed;top:0;width:220px;z-index:1000}@media (max-width:768px){.sidebar{display:none}}.sidebar-header{color:#fff;font-size:1.5rem;font-weight:700;padding:20px 0;text-align:center}.sidebar-logo{margin:0}.group-selector{background:#1a252f;border-left:3px solid #4facfe;border-radius:6px;margin:0 12px 12px;padding:12px 16px}.group-selector-label{color:#95a5a6;display:block;font-size:.75rem;font-weight:600;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.group-selector-dropdown{background:#2c3e50;border:1px solid #34495e;border-radius:4px;color:#ecf0f1;cursor:pointer;font-size:.9rem;padding:8px 10px;transition:all .2s ease;width:100%}.group-selector-dropdown:hover{background:#34495e;border-color:#4facfe}.group-selector-dropdown:focus{border-color:#4facfe;box-shadow:0 0 0 2px #4facfe33;outline:none}.group-selector-dropdown option{background:#2c3e50;color:#ecf0f1;padding:8px}.sidebar nav{display:flex;flex-direction:column;gap:0}.sidebar nav>*{margin:0}.sidebar-menu{list-style:none;margin:0;padding:0}.menu-item{align-items:center;cursor:pointer;display:flex;gap:10px;padding:12px 20px;transition:background .3s ease}.menu-icon{font-size:20px}.menu-item.active,.menu-item:hover{background:#34495e;border-left:4px solid #4facfe}.menu-item span{font-size:1rem}.menu-item-button{background:#0000;border:none;color:#ecf0f1;font-family:inherit;font-size:inherit;text-align:left;width:100%}.menu-item-button:hover{background:#34495e;border-left:4px solid #4facfe}.menu-section{margin:0;padding:0}.submenu{animation:slideDown .3s ease;background-color:#1a252f;border-left:2px solid #4facfe;margin:0 0 0 20px;padding:0}.submenu-item{background-color:initial;font-size:.9rem;padding-left:48px!important}.submenu-item:hover{background:#243447!important;border-left:3px solid #00f2fe}.menu-item-button svg{margin-left:0}.bottom-nav{display:none}@media (max-width:768px){.bottom-nav{background:#2c3e50;border-top:1px solid #34495e;bottom:0;box-shadow:0 -2px 10px #0003;display:flex;height:60px;left:0;position:fixed;right:0;z-index:1001}.bottom-nav-item{align-items:center;background:#0000;border:none;color:#95a5a6;cursor:pointer;display:flex;flex:1 1;flex-direction:column;font-family:inherit;font-size:0;gap:3px;justify-content:center;padding:6px 4px;text-decoration:none;transition:color .2s,background .2s}.bottom-nav-item svg{flex-shrink:0;font-size:20px;height:22px;width:22px}.bottom-nav-label{font-size:10px;font-weight:500;line-height:1;white-space:nowrap}.bottom-nav-item.active,.bottom-nav-item:hover{background:#4facfe14;color:#4facfe}.bottom-nav-item.active{border-top:2px solid #4facfe}}.quick-modal-overlay{align-items:center;animation:fadeIn .2s ease-out;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:2000}.quick-modal-content{animation:slideUp .3s ease-out;background:#fff;border-radius:12px;box-shadow:0 10px 40px #0003;max-height:90vh;max-width:500px;overflow:hidden;width:90%}.quick-modal-header{align-items:center;background:linear-gradient(135deg,#4facfe,#00f2fe);border-bottom:1px solid #fff3;display:flex;justify-content:space-between;padding:20px 25px}.quick-modal-header h2{font-size:1.3rem;font-weight:600;gap:8px;margin:0}.quick-modal-close,.quick-modal-header h2{align-items:center;color:#fff;display:flex}.quick-modal-close{background:#fff3;border:none;border-radius:6px;cursor:pointer;font-size:1.5rem;height:32px;justify-content:center;line-height:1;transition:all .2s;width:32px}.quick-modal-close:hover:not(:disabled){background:#ffffff4d;transform:rotate(90deg)}.quick-modal-close:disabled{cursor:not-allowed;opacity:.5}.quick-modal-body{max-height:calc(90vh - 140px);overflow-y:auto;padding:25px}.quick-form-group{margin-bottom:20px}.quick-form-group:last-of-type{margin-bottom:0}.quick-form-group label{color:#333;display:block;font-size:.9rem;font-weight:600;margin-bottom:8px}.quick-form-group input{border:2px solid #e0e0e0;border-radius:8px;box-sizing:border-box;font-size:1rem;padding:12px 15px;transition:all .2s;width:100%}.quick-form-group input:focus{border-color:#4facfe;box-shadow:0 0 0 3px #4facfe1a;outline:none}.quick-form-group input:disabled{background-color:#f5f5f5;cursor:not-allowed;opacity:.6}.quick-form-group input::placeholder{color:#999}.quick-error-message{background-color:#fee;border:1px solid #fcc;border-radius:8px;color:#c33}.quick-error-message,.quick-success-message{align-items:center;display:flex;font-size:.9rem;gap:8px;margin-bottom:20px;padding:12px 15px}.quick-success-message{background-color:#e8f5e9;border:1px solid #a5d6a7;border-radius:8px;color:#2e7d32}.quick-modal-footer{border-top:1px solid #f0f0f0;display:flex;gap:12px;margin-top:20px;padding-top:20px}.quick-btn{align-items:center;border:none;border-radius:8px;cursor:pointer;display:flex;flex:1 1;font-size:1rem;font-weight:600;gap:6px;justify-content:center;padding:12px 20px;transition:all .2s}.quick-btn-cancel{background-color:#f5f5f5;color:#666}.quick-btn-cancel:hover:not(:disabled){background-color:#e0e0e0}.quick-btn-save{background:linear-gradient(135deg,#4facfe,#00f2fe);box-shadow:0 4px 12px #4facfe4d;color:#fff}.quick-btn-save:hover:not(:disabled){box-shadow:0 6px 20px #4facfe66;transform:translateY(-2px)}.quick-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}@media (max-width:600px){.quick-modal-content{margin:10px;width:95%}.quick-modal-header{padding:16px 20px}.quick-modal-header h2{font-size:1.1rem}.quick-modal-body{padding:20px}.quick-modal-footer{flex-direction:column}.quick-btn{width:100%}}.chart-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;padding:20px;transition:all .3s}.chart-card:hover{box-shadow:0 8px 20px #0000001f;transform:translateY(-4px)}.chart-empty{color:#999;font-size:.9rem;padding:40px 20px;text-align:center}.chart-header{align-items:center;border-bottom:2px solid #f0f0f0;display:flex;justify-content:space-between;margin-bottom:20px;padding-bottom:15px}.chart-header h3{color:#333;font-size:1.2rem;font-weight:700;margin:0}.debt-total,.total-investment{-webkit-text-fill-color:#0000;background:linear-gradient(135deg,#4facfe,#00f2fe);-webkit-background-clip:text;background-clip:text;font-size:1.3rem;font-weight:700}.chart-legend{display:flex;gap:20px}.legend-item{align-items:center;color:#666;display:flex;font-size:.85rem;font-weight:500;gap:6px}.legend-dot{border-radius:50%;height:12px;width:12px}.legend-dot.revenue{background:linear-gradient(135deg,#4facfe,#00f2fe)}.legend-dot.expense{background:linear-gradient(135deg,#f093fb,#f5576c)}.chart-content{margin-bottom:20px}.bar-chart{overflow:visible}.bar{cursor:pointer;transition:all .3s}.bar:hover{opacity:.8;transform:scaleY(1.05);transform-origin:bottom}.revenue-bar{fill:url(#revenueGradient)}.expense-bar{fill:url(#expenseGradient)}.bar-chart .revenue-bar{fill:#4facfe}.bar-chart .expense-bar{fill:#f5576c}.chart-label{fill:#666;font-size:11px;font-weight:500}.chart-summary{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin-top:20px}.summary-item{background:#f8f9fa;border-left:4px solid;border-radius:8px;padding:12px;text-align:center}.summary-item.revenue-summary{border-color:#4facfe}.summary-item.expense-summary{border-color:#f5576c}.summary-item.profit-summary{border-color:#4caf50}.summary-label{color:#666;display:block;font-size:.75rem;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.summary-value{color:#333;display:block;font-size:1.1rem;font-weight:700}.pie-chart-container{align-items:center;display:flex;gap:30px;justify-content:space-between}.pie-chart{flex-shrink:0}.pie-slice{cursor:pointer;filter:drop-shadow(0 2px 4px rgba(0,0,0,.1));transition:all .3s}.pie-slice:hover{filter:drop-shadow(0 4px 8px rgba(0,0,0,.2));opacity:1!important;transform:scale(1.05);transform-origin:center}.pie-legend{display:flex;flex:1 1;flex-direction:column;gap:12px}.pie-legend-item{align-items:center;border-radius:6px;display:flex;gap:10px;padding:8px;transition:background-color .2s}.pie-legend-item:hover{background-color:#f8f9fa}.pie-dot{border-radius:50%;flex-shrink:0;height:14px;width:14px}.pie-label{color:#333;flex:1 1;font-size:.9rem;font-weight:500}.pie-value{color:#666;font-size:.9rem;font-weight:600}.debt-progress-list{gap:20px;margin-bottom:20px}.debt-item,.debt-progress-list{display:flex;flex-direction:column}.debt-item{gap:8px}.debt-info{align-items:center;display:flex;justify-content:space-between}.debt-name{color:#333;font-size:.9rem;font-weight:600}.debt-amount{color:#666;font-size:.85rem}.progress-bar{background-color:#f0f0f0;height:24px;width:100%}.progress-bar,.progress-fill{border-radius:12px;position:relative}.progress-fill{align-items:center;display:flex;justify-content:flex-end;padding-right:12px;transition:width 1s ease-out}.progress-label{color:#fff;font-size:.75rem;font-weight:600;text-shadow:0 1px 2px #0003}.debt-summary{grid-gap:12px;border-top:2px solid #f0f0f0;display:grid;gap:12px;grid-template-columns:1fr 1fr;padding-top:20px}.debt-summary-item{background:#f8f9fa;border-radius:8px;padding:12px;text-align:center}.debt-summary-label{color:#666;display:block;font-size:.75rem;letter-spacing:.5px;margin-bottom:4px;text-transform:uppercase}.debt-summary-value{display:block;font-size:1.1rem;font-weight:700}.debt-summary-value.paid{color:#4caf50}.debt-summary-value.remaining{color:#f44336}@media (max-width:768px){.chart-summary{grid-template-columns:1fr}.chart-legend,.pie-chart-container{flex-direction:column}.chart-legend{gap:8px}.debt-summary{grid-template-columns:1fr}}@media (max-width:480px){.chart-card{padding:15px}.chart-header h3{font-size:1rem}.debt-total,.total-investment{font-size:1.1rem}}.chart-card{animation:slideIn .5s ease-out}.chart-card:first-child{animation-delay:0s}.chart-card:nth-child(2){animation-delay:.1s}.chart-card:nth-child(3){animation-delay:.2s}.dashboard-main{bottom:0;box-sizing:border-box;left:220px;overflow:hidden;padding:20px;position:fixed;right:0;top:0}.dashboard-container{background-color:#fff;border-radius:16px;box-shadow:0 12px 48px #00000026;box-sizing:border-box;display:flex;flex-direction:column;height:calc(100vh - 40px);margin:0 auto;max-width:2600px}.dashboard-header{align-items:center;background:linear-gradient(180deg,#fff 0,#fafafa);border-bottom:2px solid #f0f0f0;border-radius:16px 16px 0 0;display:flex;flex-shrink:0;justify-content:space-between;padding:20px 28px}.header-left h1{color:#2c3e50;font-size:1.75rem;font-weight:700;letter-spacing:-.5px;margin:0 0 6px}.dashboard-subtitle{color:#7f8c8d;font-size:.9rem;font-weight:400}.month-selector{background-color:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;gap:12px;padding:6px 12px}.month-nav-btn,.month-selector{align-items:center;display:flex}.month-nav-btn{background:none;border:none;border-radius:4px;color:#555;cursor:pointer;justify-content:center;padding:4px;transition:background-color .2s,color .2s}.month-nav-btn:hover{background-color:#e0e0e0;color:#333}.month-label{color:#2c3e50;font-size:1rem;font-weight:600;min-width:160px;text-align:center;-webkit-user-select:none;user-select:none}.logout-btn{background-color:#f44336;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:12px 24px;transition:background-color .2s}.logout-btn:hover{background-color:#d32f2f}.dashboard-content{background-color:#fff;flex:1 1;min-height:0;overflow-y:auto;padding:28px 32px}.stats-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr));margin-bottom:30px}.stat-card{align-items:center;background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #00000014;display:flex;gap:15px;padding:20px;transition:transform .2s,box-shadow .2s}.stat-card:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-4px)}.stat-icon{align-items:center;border-radius:12px;display:flex;flex-shrink:0;font-size:2rem;height:60px;justify-content:center;width:60px}.stat-blue .stat-icon{background-color:#e3f2fd}.stat-green .stat-icon{background-color:#e8f5e9}.stat-orange .stat-icon{background-color:#fff3e0}.stat-purple .stat-icon{background-color:#f3e5f5}.stat-info{flex:1 1}.stat-label{color:#666;font-size:.85rem;font-weight:500;letter-spacing:.5px;margin:0 0 5px;text-transform:uppercase}.stat-value{color:#333;font-size:1.8rem;font-weight:700;margin:0}.charts-section{margin:30px 0}.section-title{border-bottom:3px solid #f0f0f0;color:#333;font-size:1.4rem;font-weight:700;margin:0 0 20px;padding-bottom:10px;position:relative}.section-title:before{background:linear-gradient(135deg,#4facfe,#00f2fe);bottom:-3px;content:"";height:3px;left:0;position:absolute;width:60px}.charts-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(350px,1fr))}.content-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(1600px,1fr))}.content-box{background-color:#fff;border-radius:8px;box-shadow:0 2px 4px #00000014;padding:20px}.content-title{color:#333;font-size:1.1rem;font-weight:600;margin:0 0 20px}.activity-list{display:flex;flex-direction:column;gap:0}.activity-item{align-items:flex-start;border-bottom:1px solid #f0f0f0;display:flex;gap:12px;padding:15px 0}.activity-item:last-child{border-bottom:none}.activity-dot{border-radius:50%;flex-shrink:0;height:12px;margin-top:4px;width:12px}.dot-blue{background-color:#2196f3}.dot-green{background-color:#4caf50}.dot-orange{background-color:#ff9800}.dot-purple{background-color:#9c27b0}.activity-text-wrapper{flex:1 1}.activity-text{color:#333;font-size:.9rem;font-weight:500;margin:0 0 4px}.activity-time{color:#999;font-size:.8rem;margin:0}.actions-list{display:flex;flex-direction:column;gap:12px}.quick-action-btn{align-items:center;background-color:#fff;border:2px solid #e0e0e0;border-radius:6px;color:#333;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:12px;padding:15px;text-align:left;transition:all .2s;width:100%}.quick-action-btn:hover{background-color:#e3f2fd;border-color:#2196f3;transform:translateX(4px)}.quick-action-btn-highlight{background:linear-gradient(135deg,#4facfe,#00f2fe);border-color:#0000;box-shadow:0 4px 12px #4facfe4d;color:#fff;font-weight:600}.quick-action-btn-highlight:hover{background:linear-gradient(135deg,#3b9ce8,#00d8e8);border-color:#0000;box-shadow:0 6px 20px #4facfe66;transform:translateX(4px) translateY(-2px)}.action-icon{flex-shrink:0;font-size:1.5rem}@media (max-width:768px){.dashboard-main{left:0;padding:8px 8px 68px}.dashboard-container{border-radius:12px;height:calc(100vh - 76px)}.dashboard-header{align-items:flex-start;flex-direction:column;gap:10px;padding:12px 16px}.header-left h1{font-size:1.3rem}.month-selector{justify-content:space-between;width:100%}.month-label{font-size:.9rem;min-width:120px}.logout-btn{padding:10px;width:100%}.dashboard-content{padding:12px}.stats-grid{gap:10px;grid-template-columns:repeat(2,1fr);margin-bottom:16px}.stat-card{gap:10px;padding:12px}.stat-icon{font-size:1.4rem;height:44px;width:44px}.stat-value{font-size:1.3rem}.stat-label{font-size:.75rem}.charts-grid{gap:12px}.charts-grid,.content-grid{grid-template-columns:1fr}.section-title{font-size:1.1rem}}@media (max-width:480px){.stats-grid{grid-template-columns:1fr 1fr}.stat-value{font-size:1.1rem}.dashboard-content{padding:10px}}.modal-overlay{animation:fadeIn .2s ease-in-out}.modal-content{max-width:450px}.modal-header{border-bottom:1px solid #e0e0e0;padding:24px 24px 16px}.modal-header h2{color:#333;font-size:1.3rem;font-weight:600;margin:0}.modal-body p{color:#666;font-size:1rem;line-height:1.5;margin:0}.modal-footer{padding:16px 24px 24px}.modal-btn{border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 24px;transition:all .2s}.modal-btn-cancel{background-color:#f5f5f5;color:#666}.modal-btn-cancel:hover{background-color:#e0e0e0}.modal-btn-confirm{background-color:#f44336;color:#fff}.modal-btn-confirm:hover{background-color:#d32f2f;box-shadow:0 4px 8px #f443364d;transform:translateY(-1px)}@media (max-width:480px){.modal-content{margin:20px;max-width:none;width:95%}.modal-footer{flex-direction:column-reverse}.modal-btn{width:100%}}.clients-main{background-color:#f4f6f8;flex:1 1;height:100vh;overflow:hidden;padding:20px}.clients-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;height:calc(100vh - 40px)}.clients-header{align-items:center;background-color:#fff;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px 30px}.header-left h1{color:#333;font-size:1.8rem;font-weight:600;margin:0 0 5px}.clients-count{color:#666;font-size:.9rem}.add-client-btn{background-color:#2196f3;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:600;padding:12px 24px;transition:background-color .2s}.add-client-btn:hover{background-color:#1976d2}.clients-filters{background-color:#fafafa;border-bottom:1px solid #e0e0e0;padding:20px 30px}.alphabet-filter{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:15px}.filter-btn{background:none;border:1px solid #ddd;border-radius:4px;color:#666;cursor:pointer;font-size:.85rem;padding:6px 12px;transition:all .2s}.filter-btn:hover{background-color:#e3f2fd;border-color:#2196f3;color:#2196f3}.filter-btn.active{background-color:#2196f3;border-color:#2196f3;color:#fff}.search-filters{align-items:center;display:flex;gap:15px}.clients-table-container{flex:1 1;overflow-y:auto;padding:0 30px 20px}.clients-table{background-color:#fff;border-collapse:collapse;width:100%}.clients-table thead{background-color:#f8f9fa;position:-webkit-sticky;position:sticky;top:0;z-index:10}.clients-table th{border-bottom:2px solid #e0e0e0;color:#555;font-size:.8rem;font-weight:600;letter-spacing:.5px;padding:15px 12px;text-align:left;text-transform:uppercase}.clients-table th.checkbox-col{text-align:center;width:40px}.clients-table td{border-bottom:1px solid #f0f0f0;padding:15px 12px;vertical-align:middle}.clients-table tr:hover{background-color:#f8f9fa}.client-type-icon{display:flex;font-size:1.2rem;justify-content:center}.client-name{align-items:center;display:flex}.name-link{color:#2196f3;cursor:pointer;font-weight:500;text-decoration:none;transition:color .2s}.name-link:hover{color:#1976d2;text-decoration:underline}.actions-buttons{display:flex;gap:8px}.action-btn{background:none;border:none;border-radius:4px;cursor:pointer;font-size:1rem;padding:6px 8px;transition:background-color .2s}.action-btn:hover{background-color:#f0f0f0}.view-btn:hover{background-color:#e3f2fd}.edit-btn:hover{background-color:#fff3e0}.delete-btn:hover{background-color:#ffebee}.empty-state,.loading{align-items:center;color:#666;display:flex;font-style:italic;height:200px;justify-content:center}.empty-state p{font-size:1.1rem;margin:0}@media (max-width:768px){.clients-main{padding:10px}.clients-header{flex-direction:column;gap:15px}.clients-filters,.clients-header{padding:15px 20px}.alphabet-filter{justify-content:center}.clients-table-container{overflow-x:auto;padding:0 20px 15px}.clients-table{min-width:600px}.actions-buttons{flex-direction:column;gap:4px}}@media (max-width:480px){.clients-header h1{font-size:1.5rem}.clients-table td,.clients-table th{font-size:.85rem;padding:10px 8px}.modal{max-width:300px;padding:20px}}.mensagens-main{background-color:#f4f6f8;flex:1 1;height:99vh;overflow:hidden;padding:20px;width:160vh}.mensagens-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;height:calc(100vh - 40px);overflow:hidden}.chats-panel{border-right:1px solid #e0e0e0;color:#fff;flex-direction:column;width:320px}.chats-header,.chats-panel{background-color:#2c3e50;display:flex}.chats-header{align-items:center;border-bottom:1px solid #34495e;flex-shrink:0;justify-content:space-between;padding:20px}.chats-header h2{color:#fff;flex:1 1;font-size:1.4rem;font-weight:600;margin:0;text-align:center}.refresh-btn{background:none;border:none;border-radius:4px;color:#fff;cursor:pointer;font-size:1.2rem;padding:8px;transition:background-color .2s}.refresh-btn:hover{background-color:#34495e}.refresh-btn:disabled{cursor:not-allowed;opacity:.5}.search-form{border-bottom:1px solid #34495e;display:flex;flex-shrink:0;gap:8px;height:40px;padding:4px 10px}.search-input{background-color:#34495e;border:1px solid #34495e;border-radius:20px;color:#fff;flex:1 1;font-size:.9rem;padding:8px 12px}.search-input::placeholder{color:#bdc3c7}.search-input:focus{background-color:#2c3e50;border-color:#4facfe;outline:none}.search-btn{align-items:center;background:#4facfe;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;font-size:.9rem;height:35px;justify-content:center;transition:background-color .2s;width:35px}.search-btn:hover:not(:disabled){background-color:#3498db}.search-btn:disabled{cursor:not-allowed;opacity:.5}.client-redirect-info{align-items:center;background-color:#4cacfe33;border-left:3px solid #4facfe;color:#ecf0f1;display:flex;flex-shrink:0;font-size:.85rem;gap:8px;padding:8px 20px}.chats-list{display:flex;flex:1 1;flex-direction:column;overflow-y:auto;padding:0}.chat-item{align-items:center;border-bottom:1px solid #34495e;color:#fff;cursor:pointer;display:flex;flex-shrink:0;padding:12px 20px;position:relative;transition:background-color .2s}.chat-item.selected,.chat-item:hover{background-color:#34495e}.chat-item.selected{border-left:3px solid #4facfe}.chat-avatar{align-items:center;background-color:#4facfe;border-radius:50%;color:#fff;flex-shrink:0;font-size:1.1rem;font-weight:700;height:45px;margin-right:15px;width:45px}.chat-avatar,.chat-info{display:flex;justify-content:center}.chat-info{flex:1 1;flex-direction:column;min-width:0}.chat-name{color:#fff;font-size:1rem;font-weight:600;margin-bottom:4px}.chat-last-message,.chat-name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.chat-last-message{color:#bdc3c7;font-size:.85rem;margin-bottom:2px}.chat-time{color:#95a5a6;font-size:.75rem}.unread-badge{align-items:center;background-color:#4facfe;border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.75rem;font-weight:700;height:20px;justify-content:center;margin-left:10px;width:20px}.messages-panel{flex:1 1;flex-direction:column}.messages-header,.messages-panel{background-color:#fff;display:flex}.messages-header{align-items:center;border-bottom:1px solid #e0e0e0;flex-shrink:0;justify-content:space-between;padding:20px}.chat-participant,.participant-avatar{align-items:center;display:flex}.participant-avatar{background-color:#4facfe;border-radius:50%;color:#fff;flex-shrink:0;font-weight:700;height:40px;justify-content:center;margin-right:15px;width:40px}.participant-info h3{color:#333;font-size:1.1rem;margin:0 0 2px}.participant-status{color:#4caf50;font-size:.8rem;font-weight:500}.chat-actions{display:flex;gap:8px}.chat-action-btn{background:none;border:1px solid #e0e0e0;border-radius:6px;cursor:pointer;font-size:1rem;padding:8px;transition:background-color .2s,border-color .2s}.chat-action-btn:hover{background-color:#f5f5f5;border-color:#4facfe}.messages-list{background-color:#f8f9fa;flex:1 1;gap:12px;overflow-y:auto;padding:20px}.message,.messages-list{display:flex;flex-direction:column}.message{word-wrap:break-word;flex-shrink:0;max-width:70%}.message.sent{align-items:flex-end;align-self:flex-end}.message.received{align-items:flex-start;align-self:flex-start}.message-content{border-radius:18px;font-size:.95rem;line-height:1.4;padding:12px 16px}.message.sent .message-content{background-color:#2196f3;border-bottom-right-radius:6px;color:#fff}.message.received .message-content{background-color:#fff;border:1px solid #e0e0e0;border-bottom-left-radius:6px;color:#333}.message-time{color:#999;font-size:.7rem;margin-top:4px;padding:0 8px}.message-input-form{background-color:#fff;border-top:1px solid #e0e0e0;flex-shrink:0;padding:20px}.message-input-container{align-items:center;display:flex;gap:12px;max-width:100%}.message-input{background-color:#f8f9fa;border:1px solid #ddd;border-radius:25px;flex:1 1;font-size:.95rem;outline:none;padding:12px 16px;transition:border-color .2s,background-color .2s}.message-input:focus{background-color:#fff;border-color:#2196f3}.send-btn{align-items:center;background-color:#2196f3;border:none;border-radius:50%;color:#fff;cursor:pointer;display:flex;flex-shrink:0;font-size:1.2rem;height:45px;justify-content:center;transition:background-color .2s,transform .1s;width:45px}.send-btn:hover:not(:disabled){background-color:#1976d2;transform:scale(1.05)}.send-btn:disabled{background-color:#ccc;cursor:not-allowed;transform:none}.empty-messages,.empty-state,.no-chat-selected{align-items:center;color:#666;display:flex;flex-direction:column;height:100%;justify-content:center;padding:20px;text-align:center}.empty-state{color:#bdc3c7}.no-chat-message h3{color:#333;font-size:1.3rem;margin:0 0 10px}.no-chat-message p{color:#666;font-size:1rem;margin:0 0 8px}.no-chat-message small{color:#999;font-size:.85rem}.empty-messages p,.empty-state p{font-size:1rem;margin:0 0 8px}.empty-messages small{color:#999;font-size:.85rem}.loading{color:#bdc3c7;padding:20px}.error-message{gap:10px;padding:12px 20px}.error-message button{margin-left:10px}@media (max-width:768px){.mensagens-container{flex-direction:column;margin:10px}.chats-panel{border-bottom:1px solid #e0e0e0;border-right:none;height:300px;width:100%}.messages-panel{height:calc(100vh - 340px)}.message{max-width:85%}}@media (max-width:480px){.chats-header{padding:15px}.chat-item{padding:12px 15px}.message-input-form,.messages-header,.messages-list{padding:15px}.message{max-width:90%}}.client-form-main{background-color:#f4f6f8;flex:1 1;height:100vh;overflow:hidden;padding:20px;width:65vw}.client-form-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;height:calc(100vh - 40px);width:65vw}.form-header{align-items:center;background-color:#fff;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:20px 30px}.form-header h1{color:#333;font-size:1.8rem;font-weight:600;margin:0}.form-actions{display:flex;gap:15px}.btn-cancel,.btn-save{border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 20px;transition:background-color .2s}.btn-cancel:hover:not(:disabled){background-color:#e0e0e0}.btn-save{background-color:#2196f3;color:#fff}.btn-save:hover:not(:disabled){background-color:#1976d2}.btn-cancel:disabled,.btn-save:disabled{cursor:not-allowed;opacity:.6}.form-tabs{background-color:#f8f9fa;border-bottom:1px solid #e0e0e0;display:flex}.tab{background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;font-size:.9rem;padding:15px 25px;transition:all .2s}.tab:hover{background-color:#e3f2fd;color:#2196f3}.tab.active{background-color:#fff;border-bottom-color:#2196f3;color:#2196f3;font-weight:600}.client-form{flex:1 1;overflow-y:auto;padding:30px}.form-section{margin-bottom:30px}.form-section h3{border-bottom:2px solid #f0f0f0;color:#333;font-size:1.2rem;font-weight:600;margin:0 0 20px;padding-bottom:10px}.form-row{align-items:flex-end;display:flex;gap:20px;margin-bottom:20px}.form-group,.form-group.flex-1{flex:1 1}.form-group.flex-2{flex:2 1}.form-group label{font-size:.9rem;font-weight:500}.form-group input,.form-group select,.form-group textarea{background-color:#fff;border:1px solid #ddd;border-radius:6px;font-size:.95rem;padding:12px 15px;transition:border-color .2s,box-shadow .2s}.form-group input:focus,.form-group select:focus,.form-group textarea:focus{border-color:#2196f3;box-shadow:0 0 0 3px #2196f31a;outline:none}.form-group textarea{font-family:inherit;line-height:1.5;min-height:100px;resize:vertical}.comments-textarea{min-height:120px;width:100%}.form-group select{cursor:pointer}.array-item{background-color:#f8f9fa;border:1px solid #e9ecef;border-radius:8px;padding:20px;position:relative}.array-item,.array-item .form-row{margin-bottom:15px}.array-item .form-row:last-child{margin-bottom:0}.remove-btn{align-self:flex-end;background-color:#f44336;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.8rem;padding:8px 12px;transition:background-color .2s}.remove-btn:hover{background-color:#d32f2f}.add-btn{background-color:initial;border:2px dashed #2196f3;border-radius:6px;color:#2196f3;cursor:pointer;font-size:.9rem;font-weight:500;margin-top:10px;padding:12px 20px;transition:all .2s}.add-btn:hover{background-color:#e3f2fd;border-style:solid}.form-group label:after{content:""}.form-group input[required]+label:after,label:has(+input[required]):after{color:#f44336;content:" *"}@media (max-width:1000px){.client-form-main{padding:10px}.form-header{flex-direction:column;gap:15px;padding:15px 20px}.form-tabs{flex-wrap:wrap}.tab{font-size:.85rem;padding:12px 15px}.client-form{padding:20px}.form-row{flex-direction:column;gap:15px}.form-group.flex-1,.form-group.flex-2{flex:1 1}.array-item{padding:15px}}@media (max-width:1600px){.form-header h1{font-size:1.5rem}.form-actions{justify-content:space-between;width:100%}.btn-cancel,.btn-save{flex:1 1}.form-tabs{overflow-x:auto}.tab{min-width:120px;white-space:nowrap}.client-form{padding:15px}.form-section h3{font-size:1.1rem}}.client-view-main{background-color:#f4f6f8;flex:1 1;height:100vh;overflow:hidden;padding:20px}.client-view-container{background-color:#fff;border-radius:8px;box-shadow:0 2px 8px #0000001a;display:flex;flex-direction:column;height:calc(100vh - 40px)}.client-header{background-color:#fff;border-bottom:1px solid #e0e0e0;justify-content:space-between;padding:25px 30px}.client-header,.client-info{align-items:center;display:flex}.client-info{gap:20px}.client-avatar{align-items:center;background:linear-gradient(135deg,#4facfe,#00f2fe);border-radius:50%;box-shadow:0 4px 12px #4facfe4d;color:#fff;display:flex;font-size:2rem;font-weight:700;height:80px;justify-content:center;width:80px}.client-details h1{color:#333;font-size:1.8rem;font-weight:600;margin:0 0 8px}.client-type{background-color:#e3f2fd;border-radius:15px;color:#1976d2;display:inline-block;font-size:.8rem;font-weight:600;letter-spacing:.5px;margin-bottom:5px;padding:4px 12px;text-transform:uppercase}.client-date{color:#666;display:block;font-size:.9rem}.client-actions{display:flex;gap:12px}.btn-delete,.btn-edit{align-items:center;border:none;border-radius:6px;cursor:pointer;display:flex;font-size:.9rem;font-weight:500;gap:6px;padding:10px 16px;transition:all .2s}.btn-edit{background-color:#ff9800;color:#fff}.btn-edit:hover{background-color:#f57c00;transform:translateY(-1px)}.btn-delete{background-color:#f44336;color:#fff}.btn-delete:hover{background-color:#d32f2f;transform:translateY(-1px)}.view-tabs{background-color:#f8f9fa;border-bottom:1px solid #e0e0e0;display:flex;overflow-x:auto}.view-tabs .tab{background:none;border:none;border-bottom:3px solid #0000;color:#666;cursor:pointer;font-size:.9rem;min-width:100px;padding:15px 20px;transition:all .2s;white-space:nowrap}.view-tabs .tab:hover{background-color:#e3f2fd;color:#2196f3}.view-tabs .tab.active{background-color:#fff;border-bottom-color:#2196f3;color:#2196f3;font-weight:600}.tab-content{padding:30px}.cadastro-content{margin:0 auto;max-width:1000px}.documentos-content{margin:0 auto;max-width:800px}.info-section{background-color:#fafafa;border:1px solid #f0f0f0;border-radius:8px;margin-bottom:35px;padding:25px}.info-section h3{border-bottom:2px solid #e0e0e0;color:#333;font-size:1.3rem;font-weight:600;margin:0 0 20px;padding-bottom:12px}.info-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.info-item{display:flex;flex-direction:column}.info-item label{color:#555;font-size:.9rem;font-weight:600;letter-spacing:.5px;margin-bottom:6px;text-transform:uppercase}.info-item span{word-wrap:break-word;color:#333;font-size:1rem;padding:8px 0}.contact-list{display:flex;flex-direction:column;gap:8px}.contact-item{background-color:#fff;border:1px solid #e0e0e0;border-radius:6px;font-size:.95rem;padding:10px 15px}.contact-item a{color:#2196f3;text-decoration:none}.contact-item a:hover{text-decoration:underline}.operator{color:#666;font-size:.85rem}.address-item{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;margin-bottom:15px;padding:20px}.address-details p{color:#333;line-height:1.5;margin:0 0 8px}.address-details p:last-child{margin-bottom:0}.bank-account{margin-bottom:15px}.bank-account,.comments-text{background-color:#fff;border:1px solid #e0e0e0;border-radius:8px;padding:20px}.comments-text{color:#333;line-height:1.6;white-space:pre-wrap}.empty-tab-content{align-items:center;color:#666;display:flex;flex-direction:column;height:300px;justify-content:center;text-align:center}.empty-tab-content h3{color:#333;font-size:1.3rem;margin:0 0 10px}.empty-tab-content p{font-size:1rem;margin:0}.loading{font-size:1.1rem;font-style:italic;height:200px}.error-state,.loading{align-items:center;color:#666;display:flex;justify-content:center}.error-state{flex-direction:column;height:300px;text-align:center}.error-state h2{color:#333;font-size:1.5rem;margin:0 0 20px}.error-state button{background-color:#2196f3;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.9rem;font-weight:500;padding:12px 24px;transition:background-color .2s}.error-state button:hover{background-color:#1976d2}.modal{background-color:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;max-width:400px;padding:30px;width:90%}.modal h3{color:#333;font-size:1.3rem;margin:0 0 15px}.modal p{color:#666;line-height:1.5;margin:0 0 25px}.modal-actions{display:flex;gap:15px;justify-content:flex-end}.btn-cancel,.btn-confirm{border:none;border-radius:6px;cursor:pointer;font-weight:500;padding:10px 20px;transition:background-color .2s}.btn-cancel{background-color:#f5f5f5;color:#666}.btn-cancel:hover{background-color:#e0e0e0}.btn-confirm{background-color:#f44336;color:#fff}.btn-confirm:hover{background-color:#d32f2f}.error-message{background-color:#f44336;border-radius:6px;box-shadow:0 4px 12px #f443364d;color:#fff;gap:15px;max-width:400px;padding:15px 20px;position:fixed;right:20px;top:20px;z-index:1000}.error-message button{background:none;border:none;color:#fff;cursor:pointer;font-size:1.2rem;padding:0}@media (max-width:768px){.client-view-main{padding:10px}.client-header{flex-direction:column;gap:20px;padding:20px;text-align:center}.client-info{flex-direction:column;gap:15px}.client-avatar{height:60px;width:60px}.client-avatar,.client-details h1{font-size:1.5rem}.client-actions{justify-content:center;width:100%}.btn-delete,.btn-edit{flex:1 1;justify-content:center}.view-tabs{justify-content:flex-start}.view-tabs .tab{font-size:.85rem;padding:12px 15px}.tab-content{padding:20px}.info-section{margin-bottom:25px;padding:20px}.info-grid{gap:15px;grid-template-columns:1fr}}@media (max-width:480px){.client-header{padding:15px}.client-details h1{font-size:1.3rem}.client-actions{flex-direction:column;width:100%}.view-tabs .tab{font-size:.8rem;min-width:80px;padding:10px 12px}.info-section,.tab-content{padding:15px}.info-section h3{font-size:1.1rem}.address-item,.bank-account,.contact-item{padding:15px}.modal{max-width:300px;padding:20px}}.device-verification-container{align-items:center;background:linear-gradient(135deg,#4facfe,#00f2fe);display:flex;justify-content:center;min-height:100vh;padding:20px;width:100vw}.device-verification-card{animation:slideUp .4s ease-out;background:#fff;border-radius:16px;box-shadow:0 20px 60px #0000004d;max-width:600px;overflow:hidden;width:100%}.device-verification-header{background:linear-gradient(135deg,#3b82f6,#1d4ed8);color:#fff;padding:40px 30px;text-align:center}.icon-shield{align-items:center;animation:pulse 2s ease-in-out infinite;background:#fff;border-radius:50%;display:flex;font-size:40px;height:80px;justify-content:center;margin:0 auto 20px;width:80px}@keyframes pulse{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.device-verification-header h1{font-size:26px;font-weight:700;margin:0 0 8px}.device-verification-header .subtitle{font-size:14px;margin:0;opacity:.95}.device-verification-content{padding:40px 30px}.info-box{background:#f0f9ff;border-left:4px solid #3b82f6;border-radius:4px;margin-bottom:30px;padding:16px 20px}.info-box p{color:#1e40af;font-size:14px;line-height:1.5;margin:0 0 8px}.info-box p:last-child{margin-bottom:0}.email-display{color:#1d4ed8;font-size:15px;font-weight:600}.form-group{margin-bottom:24px}.form-group label{color:#1f2937;display:block;font-size:14px;margin-bottom:8px}.code-input{border:2px solid #e5e7eb;border-radius:8px;font-family:Courier New,monospace;font-size:28px;font-weight:700;letter-spacing:12px;padding:16px 20px;text-align:center;transition:all .2s;width:100%}.code-input:focus{border-color:#3b82f6;box-shadow:0 0 0 3px #3b82f61a;outline:none}.code-input:disabled{background-color:#f9fafb;cursor:not-allowed}.input-hint{color:#6b7280;display:block;font-size:13px;margin-top:8px}.error-message{align-items:center;background:#fef2f2;border:1px solid #fecaca;border-radius:8px;color:#991b1b;display:flex;font-size:14px;gap:8px;margin-bottom:20px;padding:12px 16px}.error-icon{flex-shrink:0}.success-message{background:#f0fdf4;border:1px solid #86efac;border-radius:8px;color:#166534;font-size:14px;margin-bottom:20px;padding:12px 16px;text-align:center}.verify-btn{align-items:center;background:linear-gradient(135deg,#3b82f6,#1d4ed8);border:none;border-radius:8px;color:#fff;cursor:pointer;display:flex;font-size:16px;font-weight:600;gap:8px;justify-content:center;padding:16px;transition:all .2s;width:100%}.verify-btn:hover:not(:disabled){box-shadow:0 8px 16px #3b82f64d;transform:translateY(-2px)}.verify-btn:disabled{cursor:not-allowed;opacity:.6;transform:none}.spinner{animation:spin .6s linear infinite;border:2px solid #ffffff4d;border-top-color:#fff;height:16px;width:16px}.resend-section{border-top:1px solid #e5e7eb;margin-top:24px;padding-top:24px;text-align:center}.resend-section p{color:#6b7280;font-size:14px;margin:0 0 12px}.resend-btn{background:none;border:none;color:#3b82f6;cursor:pointer;font-size:14px;font-weight:600;padding:0;text-decoration:underline;transition:color .2s}.resend-btn:hover:not(:disabled){color:#1d4ed8}.resend-btn:disabled{cursor:not-allowed;opacity:.6}.back-btn{background:#0000;border:1px solid #e5e7eb;border-radius:8px;color:#6b7280;cursor:pointer;font-size:14px;font-weight:500;margin-top:16px;padding:12px;transition:all .2s;width:100%}.back-btn:hover{background:#f9fafb;border-color:#d1d5db;color:#374151}@media (max-width:480px){.device-verification-card{border-radius:0;max-width:none}.device-verification-content,.device-verification-header{padding:30px 20px}.code-input{font-size:24px;letter-spacing:8px;padding:14px 16px}}.import-modal-overlay{align-items:center;background:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:10000}.import-modal-content{background:#fff;border-radius:12px;box-shadow:0 4px 20px #00000026;display:flex;flex-direction:column;max-height:90vh;max-width:600px;width:90%}.import-modal-header{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:20px 24px}.import-modal-header h2{color:#212529;font-size:20px;font-weight:600;margin:0}.close-button{align-items:center;background:none;border:none;color:#6c757d;cursor:pointer;display:flex;font-size:24px;padding:4px;transition:color .2s}.close-button:hover{color:#212529}.import-modal-body{flex:1 1;overflow-y:auto;padding:24px}.import-instructions{background:#f8f9fa;border-radius:8px;margin-bottom:24px;padding:16px}.import-instructions h3{color:#495057;font-size:16px;font-weight:600;margin:0 0 12px}.import-instructions ul{margin:0 0 16px;padding-left:20px}.import-instructions li{color:#495057;font-size:14px;margin-bottom:8px}.btn-template{align-items:center;background:#007bff;border:none;border-radius:6px;color:#fff;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:8px 16px;transition:background .2s}.btn-template:hover{background:#0056b3}.import-upload-section{margin-bottom:20px}.file-input-wrapper{position:relative}.file-input-wrapper input[type=file]{height:1px;opacity:0;overflow:hidden;position:absolute;width:1px}.file-input-label{align-items:center;background:#f8f9fa;border:2px dashed #ced4da;border-radius:8px;color:#495057;cursor:pointer;display:flex;font-size:15px;font-weight:500;gap:10px;justify-content:center;padding:16px;transition:all .2s}.file-input-label:hover{background:#e9ecef;border-color:#007bff;color:#007bff}.file-input-wrapper input[type=file]:disabled+.file-input-label{cursor:not-allowed;opacity:.6}.file-info{align-items:center;background:#d4edda;border:1px solid #c3e6cb;border-radius:6px;color:#155724;display:flex;font-size:14px;gap:10px;margin-top:12px;padding:12px}.file-info .icon-success{color:#28a745;font-size:18px}.file-size{color:#6c757d;font-size:13px}.import-error{align-items:center;background:#f8d7da;border:1px solid #f5c6cb;border-radius:6px;color:#721c24;display:flex;font-size:14px;gap:10px;margin-bottom:16px;padding:12px}.import-error svg{flex-shrink:0;font-size:18px}.import-result{background:#f8f9fa;border-radius:8px;padding:16px}.result-summary{grid-gap:12px;display:grid;gap:12px;grid-template-columns:repeat(3,1fr);margin-bottom:16px}.result-item{align-items:center;background:#fff;border-radius:6px;box-shadow:0 1px 3px #0000001a;display:flex;gap:10px;padding:12px}.result-item svg{flex-shrink:0;font-size:24px}.result-item.success svg{color:#28a745}.result-item.error svg{color:#dc3545}.result-item div{display:flex;flex-direction:column}.result-item strong{color:#212529;font-size:20px;font-weight:700}.result-item span{color:#6c757d;font-size:12px}.result-errors{background:#fff;border-radius:6px;padding:12px}.result-errors h4{color:#721c24;font-size:14px;font-weight:600;margin:0 0 10px}.result-errors ul{margin:0;padding-left:20px}.result-errors li{color:#721c24;font-size:13px;margin-bottom:6px}.more-errors{color:#6c757d;font-size:13px;font-style:italic;margin:10px 0 0}.import-modal-footer{border-top:1px solid #e9ecef;display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.btn-primary,.btn-secondary{padding:10px 20px}.btn-primary{background:#28a745}.btn-primary:hover:not(:disabled){background:#218838}.btn-primary:disabled{background:#6c757d;cursor:not-allowed;opacity:.6}.btn-secondary:hover:not(:disabled){background:#545b62}.btn-secondary:disabled{cursor:not-allowed;opacity:.6}@media (max-width:768px){.import-modal-content{max-height:95vh;width:95%}.result-summary{grid-template-columns:1fr}.tab-header{flex-wrap:wrap!important;gap:10px!important;margin-bottom:14px!important}.tab-header h3{font-size:1rem;width:100%}.tab-actions{flex-wrap:wrap!important;gap:6px!important;width:100%}.tab-actions button{flex:1 1 auto;font-size:12px!important;justify-content:center;min-width:100px;padding:7px 10px!important;white-space:nowrap}.table-scroll-container{-webkit-overflow-scrolling:touch;border-radius:8px;max-height:none!important;overflow-x:auto!important;overflow-y:visible!important}}@media (max-width:768px){.table-scroll-container::-webkit-scrollbar{height:6px}.table-scroll-container::-webkit-scrollbar-track{background:#e9ecef;border-radius:0 0 8px 8px}.table-scroll-container::-webkit-scrollbar-thumb{background:#adb5bd;border-radius:3px}.table-scroll-container table{min-width:560px}.table-scroll-container td,.table-scroll-container th{font-size:13px!important;padding:8px 10px!important;white-space:nowrap}.tab-info-box{font-size:13px!important;margin-bottom:14px!important;padding:10px 12px!important}.tab-notification{bottom:72px!important;left:12px!important;right:12px!important;text-align:center}.tab-modal-box{border-radius:12px 12px 0 0!important;max-height:85vh!important;max-width:95%!important;overflow-y:auto!important;padding:16px!important;width:95%!important}.tab-modal-overlay{align-items:flex-end!important}.tab-modal-actions{flex-direction:column-reverse!important;gap:8px!important}.tab-modal-actions button{padding:12px!important;width:100%!important}.transactions-header-bar{align-items:stretch!important;flex-direction:column!important;gap:8px!important;margin-bottom:10px!important}.tx-actions-row{flex-wrap:wrap!important;gap:6px!important;width:100%}.tx-actions-row>div:first-of-type{flex:0 0 100%!important}.tx-actions-row>div:first-of-type>button{justify-content:center!important;width:100%!important}.tx-actions-row>button{font-size:12px!important;justify-content:center!important;padding:7px 8px!important;white-space:nowrap}.tx-actions-row>button,.tx-actions-row>div:not(:first-of-type){flex-basis:calc(50% - 6px);flex-grow:1;flex-shrink:1;min-width:80px}.tx-actions-row>div:not(:first-of-type)>button{font-size:12px!important;justify-content:center!important;padding:7px 8px!important;white-space:nowrap;width:100%!important}.tx-summary-grid{gap:8px!important;grid-template-columns:repeat(2,1fr)!important}.tx-summary-grid>div{padding:10px!important}.tx-summary-grid>div>div:first-child{font-size:11px!important;margin-bottom:2px!important}.tx-summary-grid>div>div:last-child{font-size:15px!important}.bulk-actions-bar,.transactions-totals{flex-wrap:wrap!important;font-size:13px!important;gap:6px!important}.bulk-actions-bar{padding:8px!important}.bulk-actions-bar button{font-size:12px!important;padding:6px 10px!important}.financial-management-header{align-items:stretch!important;flex-direction:column!important;gap:10px!important}.budget-card{margin-bottom:12px!important}.budget-card-header{flex-wrap:wrap!important;gap:8px!important;padding:12px!important}.category-row{flex-wrap:wrap!important;gap:6px!important;padding:10px 12px!important}.category-row .category-actions{justify-content:flex-end!important;width:100%!important}.open-finance-header{flex-direction:column!important;gap:10px!important}.open-finance-actions{flex-wrap:wrap!important;gap:8px!important}.open-finance-actions button,.open-finance-actions select{flex:1 1 auto!important}.accounts-list{flex-direction:column!important}.account-card{width:100%!important}}.financial-management-tab{margin:0 auto;max-width:1400px;padding:24px}.filters-section{background:#f8f9fa;border:1px solid #dee2e6;border-radius:12px;margin-bottom:24px;padding:16px}.filters-toggle{align-items:center;background:#fff;border:1px solid #dee2e6;border-radius:8px;color:#495057;cursor:pointer;display:flex;font-size:14px;font-weight:500;gap:8px;padding:10px 16px;transition:all .2s}.filters-toggle:hover{background:#e9ecef;border-color:#adb5bd}.filters-content{border-top:1px solid #dee2e6;margin-top:16px;padding-top:16px}.filters-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));margin-bottom:16px}.filter-field label{color:#495057;display:block;font-size:13px;font-weight:500;margin-bottom:6px}.filter-field input,.filter-field select{border:1px solid #ced4da;border-radius:6px;font-size:14px;padding:8px 12px;transition:border-color .2s;width:100%}.filter-field input:focus,.filter-field select:focus{border-color:#007bff;outline:none}.filters-actions{display:flex;gap:12px;justify-content:flex-end}.btn-primary,.btn-secondary{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:500;padding:8px 20px;transition:all .2s}.btn-primary{background:#007bff}.btn-primary:hover{background:#0056b3}.btn-secondary{background:#6c757d;color:#fff}.btn-secondary:hover{background:#545b62}.btn-danger{background:#dc3545;border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:14px;font-weight:500;padding:8px 20px;transition:all .2s}.btn-danger:hover{background:#c82333}.summary-section{margin-bottom:32px}.summary-section h2{color:#212529;font-size:24px;font-weight:600;margin-bottom:16px}.summary-cards{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.summary-card{align-items:center;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;display:flex;gap:16px;padding:20px;transition:transform .2s,box-shadow .2s}.summary-card:hover{box-shadow:0 4px 12px #0000001f;transform:translateY(-2px)}.summary-card .card-icon{align-items:center;border-radius:10px;color:#fff;display:flex;font-size:24px;height:48px;justify-content:center;width:48px}.summary-card.green .card-icon{background:linear-gradient(135deg,#28a745,#20c997)}.summary-card.red .card-icon{background:linear-gradient(135deg,#dc3545,#c82333)}.summary-card.blue .card-icon{background:linear-gradient(135deg,#007bff,#0056b3)}.summary-card.orange .card-icon{background:linear-gradient(135deg,#fd7e14,#e8590c)}.card-content{flex:1 1}.card-label{color:#6c757d;font-size:13px;font-weight:500;margin:0 0 4px}.card-value{color:#212529;font-size:22px;font-weight:700;margin:0}.budgets-section h2{color:#212529;font-size:24px;font-weight:600;margin-bottom:16px}.budgets-list{display:flex;flex-direction:column;gap:16px}.budget-card{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;overflow:hidden;transition:box-shadow .2s}.budget-card:hover{box-shadow:0 4px 12px #0000001f}.budget-header{cursor:pointer;padding:20px;-webkit-user-select:none;user-select:none}.budget-title{align-items:center;display:flex;flex:1 1;justify-content:space-between;margin-bottom:16px}.budget-title h3{color:#212529;font-size:20px;font-weight:600;margin:0}.budget-actions{display:flex;gap:8px;margin-right:16px}.action-button{align-items:center;background:none;border:none;border-radius:8px;cursor:pointer;display:flex;font-size:16px;height:36px;justify-content:center;transition:all .2s;width:36px}.chart-button{background:#f0e6ff;color:#6f42c1}.chart-button:hover{background:#6f42c1;color:#fff}.move-button{background:#fff3e0;color:#fd7e14}.move-button:hover{background:#fd7e14;color:#fff}.edit-button{background:#e7f1ff;color:#007bff}.edit-button:hover{background:#007bff;color:#fff}.delete-button{background:#ffe5e7;color:#dc3545}.delete-button:hover{background:#dc3545;color:#fff}.budget-period{background:#f8f9fa;border-radius:6px;color:#6c757d;font-size:14px;font-weight:500;padding:4px 12px}.budget-summary{align-items:center;display:flex;gap:20px}.budget-values{display:flex;flex:1 1;gap:24px}.value-item{display:flex;flex-direction:column;gap:4px}.value-label{color:#6c757d;font-size:12px;font-weight:500}.value-amount{color:#212529;font-size:16px;font-weight:600}.budget-progress{align-items:center;display:flex;flex:1 1;gap:12px}.progress-bar{background:#e9ecef;border-radius:4px;flex:1 1;height:8px;overflow:hidden}.progress-bar.small{height:6px}.progress-fill{border-radius:4px;height:100%;transition:width .3s ease,background-color .3s ease}.progress-percentage{font-size:14px;font-weight:600;min-width:50px;text-align:right}.progress-percentage.small{font-size:12px;min-width:45px}.expand-button{align-items:center;background:none;border:none;color:#6c757d;cursor:pointer;display:flex;font-size:20px;padding:4px;transition:color .2s}.expand-button:hover{color:#212529}.budget-categories{border-top:1px solid #e9ecef;margin-top:-4px;padding:0 20px 20px}.budget-categories h4{color:#495057;font-size:16px;font-weight:600;margin:16px 0 12px}.categories-list{display:flex;flex-direction:column;gap:12px}.category-item{background:#f8f9fa;border-radius:8px;padding:16px}.category-header{align-items:center;display:flex;justify-content:space-between;margin-bottom:12px}.category-name{color:#212529;font-size:15px;font-weight:600}.category-status{border-radius:12px;color:#fff;font-size:11px;font-weight:600;letter-spacing:.5px;padding:4px 10px;text-transform:uppercase}.category-details{display:flex;flex-direction:column;gap:10px}.category-values{color:#495057;display:flex;font-size:13px;gap:16px}.category-progress{align-items:center;display:flex;gap:10px}.empty-state,.no-categories{color:#6c757d;font-size:15px;padding:40px 20px;text-align:center}.spinner{animation:spin 1s linear infinite;border:4px solid #f3f3f3;border-radius:50%;border-top-color:#007bff;height:40px;margin:0 auto 16px;width:40px}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}.alert{border-radius:8px;font-size:14px;padding:12px 16px}.alert-error{background:#f8d7da;border:1px solid #f5c6cb;color:#721c24}.modal-overlay{background:#00000080;z-index:1000}.modal-content{animation:slideUp .3s ease-out;background:#fff;box-shadow:0 10px 40px #0003}@keyframes slideUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.modal-header{align-items:center;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:20px 24px}.modal-header h3{color:#212529;font-size:20px;font-weight:600;margin:0}.modal-close{align-items:center;background:none;border:none;border-radius:6px;color:#6c757d;cursor:pointer;display:flex;font-size:28px;height:32px;justify-content:center;transition:all .2s;width:32px}.modal-close:hover{background:#f8f9fa;color:#212529}.modal-body{padding:24px}.delete-warning{color:#212529;font-size:16px;line-height:1.5;margin:0 0 12px}.delete-warning strong{color:#dc3545;font-weight:600}.delete-info{background:#fff3cd;border-left:3px solid #ffc107;border-radius:4px;color:#6c757d;font-size:14px;line-height:1.5;margin:0;padding:12px}.form-field{margin-bottom:0}.form-field label{color:#495057;display:block;font-size:14px;font-weight:500;margin-bottom:8px}.form-field input{border:1px solid #ced4da;border-radius:8px;font-size:14px;padding:10px 12px;transition:border-color .2s;width:100%}.form-field input:focus{border-color:#007bff;box-shadow:0 0 0 3px #007bff1a;outline:none}.modal-footer{border-top:1px solid #e9ecef;display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.toast-notification{animation:slideInRight .3s ease-out;border-radius:8px;box-shadow:0 4px 12px #00000026;font-size:14px;font-weight:500;max-width:500px;min-width:300px;padding:16px 24px;position:fixed;right:24px;top:24px;z-index:2000}@keyframes slideInRight{0%{opacity:0;transform:translateX(400px)}to{opacity:1;transform:translateX(0)}}.toast-success{background:#28a745;border-left:4px solid #1e7e34;color:#fff}.toast-error{background:#dc3545;border-left:4px solid #c82333;color:#fff}.toast-notification span{display:block;line-height:1.4}@media (max-width:768px){.financial-management-tab{padding:12px 12px 68px}.summary-cards{grid-template-columns:repeat(2,1fr)}.summary-card{gap:8px;padding:12px}.summary-card .card-icon{border-radius:8px;flex-shrink:0;font-size:16px;height:34px;width:34px}.card-value{font-size:14px}.card-label{font-size:11px}.budget-summary{align-items:stretch;flex-direction:column}.budget-values{flex-direction:column;gap:12px}.category-values{flex-direction:column;gap:8px}.budget-header{flex-wrap:wrap}.budget-actions{justify-content:flex-end;margin-bottom:12px;margin-right:0;order:-1;width:100%}.modal-content{margin:16px;width:95%}.toast-notification{bottom:72px;left:12px;max-width:none;min-width:auto;right:12px;text-align:center;top:auto}}.open-finance-tab{width:100%}.message-banner{animation:slideDown .3s ease-out;border-radius:8px;font-size:14px;margin-bottom:20px;padding:12px 16px}.message-banner.success{background-color:#e8f5e9;border:1px solid #4caf50;color:#2e7d32}.message-banner.error{background-color:#ffebee;border:1px solid #f44336;color:#c62828}@keyframes slideDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.actions-bar{display:flex;gap:12px;margin-bottom:24px}.btn{align-items:center;border:none;border-radius:6px;cursor:pointer;display:inline-flex;font-size:14px;font-weight:500;gap:8px;padding:10px 20px;transition:all .2s}.btn:disabled{cursor:not-allowed;opacity:.6}.btn-primary{background-color:#1976d2;color:#fff}.btn-primary:hover:not(:disabled){background-color:#1565c0;box-shadow:0 4px 8px #1976d24d;transform:translateY(-1px)}.btn-secondary{background-color:#f5f5f5;border:1px solid #ddd;color:#333}.btn-secondary:hover:not(:disabled){background-color:#e0e0e0}.btn-danger-outline{background-color:initial;border:1px solid #f44336;color:#f44336;font-size:13px;padding:6px 12px}.btn-danger-outline:hover{background-color:#f44336;color:#fff}.modal-overlay{align-items:center;animation:fadeIn .2s ease-out;background-color:#00000080;bottom:0;display:flex;justify-content:center;left:0;position:fixed;right:0;top:0;z-index:9999}.modal-content{animation:scaleIn .3s ease-out;background-color:#fff;border-radius:12px;box-shadow:0 8px 32px #0003;max-height:80vh;max-width:500px;overflow:auto;padding:24px;width:90%}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}.pluggy-modal{padding:20px}.section{margin-bottom:32px}.section h2{color:#333;font-size:18px;font-weight:600;margin-bottom:16px}.cards-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}.card{background:#fff;border:1px solid #e0e0e0;border-radius:12px;overflow:hidden;transition:all .2s}.card:hover{box-shadow:0 4px 12px #0000001a;transform:translateY(-2px)}.card-header{align-items:center;background-color:#f9f9f9;border-bottom:1px solid #e0e0e0;display:flex;justify-content:space-between;padding:16px}.card-header h3{color:#333;font-size:16px;font-weight:600;margin:0}.status-badge{border-radius:12px;font-size:12px;font-weight:500;text-transform:uppercase}.status-badge.updated{background-color:#e8f5e9;color:#2e7d32}.status-badge.login_error{background-color:#ffebee;color:#c62828}.account-type{background-color:#e3f2fd;border-radius:12px;color:#1976d2;font-size:12px;font-weight:500;padding:4px 12px}.card-body{padding:16px}.card-info{color:#666;font-size:14px;margin:0 0 8px}.card-date{color:#999;font-size:12px;margin:8px 0 0}.account-balance{color:#2e7d32;font-size:24px;font-weight:700;margin:12px 0}.card-footer{border-top:1px solid #e0e0e0;display:flex;gap:8px;justify-content:flex-end;padding:12px 16px}.empty-state{background-color:#f9f9f9;border:2px dashed #ddd;border-radius:8px;padding:40px 20px;text-align:center}.empty-state p{color:#666;margin:8px 0}.empty-state p:first-child{color:#333;font-weight:600}.info-box{background-color:#e3f2fd;border-left:4px solid #1976d2;border-radius:8px;margin-top:24px;padding:16px}.info-box h3{color:#1565c0;font-size:16px;font-weight:600;margin:0 0 12px}.info-box ul{margin:0;padding-left:20px}.info-box li{color:#333;font-size:14px;line-height:1.5;margin-bottom:8px}.info-box li:last-child{margin-bottom:0}@media (max-width:768px){.open-finance-tab{padding-bottom:68px}.cards-grid{grid-template-columns:1fr}.actions-bar{flex-wrap:wrap}.btn{flex:1 1 auto;justify-content:center}}.financial-page{bottom:0;box-sizing:border-box;left:220px;overflow:hidden;padding:20px;position:fixed;right:0;top:0}.financial-container{background-color:#fff;border-radius:16px;box-shadow:0 12px 48px #00000026;box-sizing:border-box;display:flex;flex-direction:column;height:calc(100vh - 40px);margin:0 auto;max-width:2600px}.financial-header{background:linear-gradient(180deg,#fff 0,#fafafa);border-bottom:2px solid #f0f0f0;border-radius:16px 16px 0 0;flex-shrink:0;padding:20px 28px}.financial-header h1{color:#2c3e50;font-size:1.75rem;font-weight:700;letter-spacing:-.5px;margin:0 0 6px}.financial-header p{color:#7f8c8d;font-size:.9rem;font-weight:400;margin:0}.date-range-selector{align-items:center;display:flex;gap:16px}.date-month-nav{align-items:center;background-color:#f0f2f5;border:1px solid #e0e0e0;border-radius:8px;display:flex;gap:8px;padding:4px 8px}.date-month-nav .month-nav-btn{align-items:center;background:none;border:none;border-radius:4px;color:#555;cursor:pointer;display:flex;justify-content:center;padding:4px;transition:background-color .2s,color .2s}.date-month-nav .month-nav-btn:hover{background-color:#ddd;color:#333}.date-range-label{color:#2c3e50;font-size:.9rem;font-weight:600;min-width:150px;text-align:center;-webkit-user-select:none;user-select:none;white-space:nowrap}.date-presets{display:flex;gap:6px}.preset-btn{background-color:#fff;border:1px solid #dee2e6;border-radius:6px;color:#555;cursor:pointer;font-size:.8rem;font-weight:500;padding:5px 12px;transition:all .2s;white-space:nowrap}.preset-btn:hover{background-color:#e3f2fd;border-color:#4facfe;color:#4facfe}.preset-btn.active{background:linear-gradient(135deg,#4facfe,#00f2fe);border-color:#0000;color:#fff;font-weight:600}.custom-date-row{align-items:center;background-color:#f8f9fa;border:1px solid #e0e0e0;border-radius:8px;display:flex;gap:16px;margin-top:12px;padding:10px 16px}.custom-date-field{align-items:center;display:flex;gap:8px}.custom-date-field label{color:#555;font-size:.85rem;font-weight:500;white-space:nowrap}.custom-date-input{background-color:#fff;border:1px solid #ced4da;border-radius:6px;color:#333;cursor:pointer;font-size:.85rem;outline:none;padding:6px 10px;transition:border-color .2s}.custom-date-input:focus{border-color:#4facfe;box-shadow:0 0 0 2px #4facfe33}.custom-date-apply-btn{background:linear-gradient(135deg,#4facfe,#00f2fe);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:600;padding:6px 16px;transition:opacity .2s;white-space:nowrap}.custom-date-apply-btn:hover{opacity:.9}.custom-date-apply-btn:disabled{cursor:not-allowed;opacity:.4}.financial-tabs-container{display:flex;flex:1 1;flex-direction:column;min-height:0;overflow:hidden}.tabs-navigation{background:#f8f9fa;border-bottom:1px solid #e8e8e8;display:flex;flex-shrink:0}.tab-button{align-items:center;background-color:initial;border:none;color:#7f8c8d;cursor:pointer;display:flex;flex:1 1;font-size:.95rem;font-weight:600;gap:10px;justify-content:center;padding:14px 24px;position:relative;transition:all .3s ease}.tab-button:hover{background-color:#fff;color:#2c3e50}.tab-button.active{background-color:#fff;color:#4facfe;font-weight:700}.tab-button.active:after{background:linear-gradient(90deg,#4facfe,#00f2fe);bottom:-1px;box-shadow:0 2px 8px #4facfe66;content:"";height:4px;left:0;position:absolute;right:0}.tab-icon{font-size:1.2rem}.tab-icon,.tab-label{display:inline-block}.tab-content{animation:fadeIn .3s ease;background-color:#fff;flex:1 1;min-height:0;overflow-y:auto;padding:28px 32px}@keyframes fadeIn{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@media (max-width:768px){.financial-page{left:0;padding:8px 8px 68px}.financial-container{border-radius:12px;height:calc(100vh - 76px)}.financial-header{padding:10px 14px}.financial-header h1{font-size:1.2rem;margin-bottom:2px}.financial-header p{font-size:.8rem}.financial-header-top{align-items:stretch!important;flex-direction:column!important;gap:10px}.date-range-selector{align-items:stretch;flex-direction:column;gap:8px;min-width:0;overflow:hidden;width:100%}.date-month-nav{justify-content:space-between}.date-range-label{font-size:.85rem;min-width:0;min-width:auto}.date-presets{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;min-width:0;overflow-x:auto;padding-bottom:4px;width:100%}.date-presets::-webkit-scrollbar{height:3px}.date-presets::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:2px}.preset-btn{flex:0 0 auto;font-size:.72rem;padding:4px 9px;white-space:nowrap}.tabs-navigation{-webkit-overflow-scrolling:touch;flex-wrap:nowrap;overflow-x:auto}.tabs-navigation::-webkit-scrollbar{display:none}.tab-button{flex:1 1;flex-direction:column;font-size:.6rem;gap:2px;min-width:0;padding:7px 4px;white-space:normal}.tab-icon{font-size:1.1rem;line-height:1}.tab-label{line-height:1.2;max-width:100%;text-align:center;word-break:break-word}.tab-content{padding:10px}.custom-date-row{flex-direction:column;gap:10px}.custom-date-field{width:100%}.custom-date-input{flex:1 1}.custom-date-apply-btn{padding:8px;width:100%}}@media (max-width:480px){.tab-button{font-size:.58rem;padding:6px 2px}.tab-content{padding:8px}}.budgets-tab,.categories-tab,.transactions-tab{animation:slideIn .3s ease}@keyframes slideIn{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}.tab-content::-webkit-scrollbar{width:8px}.tab-content::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}.tab-content::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}.tab-content::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.settings-main{bottom:0;box-sizing:border-box;left:220px;overflow:hidden;padding:20px;position:fixed;right:0;top:0}.settings-container{background-color:#fff;border-radius:16px;box-shadow:0 12px 48px #00000026;box-sizing:border-box;display:flex;flex-direction:column;height:calc(100vh - 40px);margin:0 auto;max-width:2600px}.settings-header{align-items:center;background:linear-gradient(180deg,#fff 0,#fafafa);border-bottom:2px solid #f0f0f0;border-radius:16px 16px 0 0;display:flex;flex-shrink:0;justify-content:space-between;padding:20px 28px}.settings-header h1{color:#2c3e50;font-size:1.75rem;font-weight:700;letter-spacing:-.5px;margin:0 0 6px}.settings-subtitle{color:#7f8c8d;font-size:.9rem;font-weight:400}.settings-content{display:flex;flex:1 1;flex-direction:column;gap:24px;min-height:0;overflow-y:auto;padding:28px 32px}.settings-card{background-color:#fff;border:1px solid #f0f0f0;border-radius:8px;box-shadow:0 2px 4px #00000014;padding:24px}.settings-card-title{border-bottom:2px solid #f0f0f0;color:#333;font-size:1.2rem;font-weight:600;margin:0 0 20px;padding-bottom:12px}.settings-error,.settings-loading{color:#999;font-size:.9rem}.settings-error{color:#f44336}.profile-grid{grid-gap:20px;display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.profile-field{display:flex;flex-direction:column;gap:6px}.profile-field label{color:#999;font-size:.8rem;font-weight:600;letter-spacing:.5px;text-transform:uppercase}.profile-field span{color:#333;font-size:1rem;font-weight:500}.status-badge{border-radius:20px;display:inline-block;font-size:.85rem;padding:4px 12px;width:-webkit-fit-content;width:fit-content}.status-active{background-color:#e8f5e9;color:#2e7d32}.status-blocked{background-color:#ffebee;color:#c62828}.password-form{gap:16px;max-width:450px}.form-group,.password-form{display:flex;flex-direction:column}.form-group{gap:6px}.form-group label{color:#555;font-size:.85rem;font-weight:600}.form-group input{border:2px solid #e0e0e0;border-radius:6px;font-size:.95rem;outline:none;padding:10px 14px;transition:border-color .2s}.form-group input:focus{border-color:#4facfe}.password-msg{border-radius:6px;font-size:.9rem;font-weight:500;padding:10px 14px}.password-msg.success{background-color:#e8f5e9;border:1px solid #a5d6a7;color:#2e7d32}.password-msg.error{background-color:#ffebee;border:1px solid #ef9a9a;color:#c62828}.change-password-btn{background:linear-gradient(135deg,#4facfe,#00f2fe);border:none;border-radius:6px;color:#fff;cursor:pointer;font-size:.95rem;font-weight:600;padding:12px 24px;transition:all .2s;width:-webkit-fit-content;width:fit-content}.change-password-btn:hover:not(:disabled){box-shadow:0 4px 12px #4facfe4d;transform:translateY(-1px)}.change-password-btn:disabled{cursor:not-allowed;opacity:.6}.settings-logout-btn{background-color:#f44336;border:none;border-radius:8px;color:#fff;cursor:pointer;font-size:.85rem;font-weight:700;letter-spacing:.5px;padding:10px 20px;transition:background-color .2s}.settings-logout-btn:hover{background-color:#d32f2f}.settings-modal-overlay{align-items:center;background:#00000080;display:flex;inset:0;justify-content:center;position:fixed;z-index:1000}.settings-modal{background:#fff;border-radius:12px;box-shadow:0 8px 32px #0003;max-width:400px;padding:32px;width:90%}.settings-modal-header h2{color:#2c3e50;font-size:1.2rem;margin:0 0 16px}.settings-modal-body p{color:#555;font-size:.95rem;margin:0 0 24px}.settings-modal-footer{display:flex;gap:12px;justify-content:flex-end}.settings-modal-btn{border:none;border-radius:6px;cursor:pointer;font-size:.9rem;font-weight:600;padding:10px 24px;transition:all .2s}.settings-modal-btn-cancel{background-color:#f5f5f5;color:#666}.settings-modal-btn-cancel:hover{background-color:#e0e0e0}.settings-modal-btn-confirm{background-color:#f44336;color:#fff}.settings-modal-btn-confirm:hover{background-color:#d32f2f;box-shadow:0 4px 8px #f443364d;transform:translateY(-1px)}@media (max-width:768px){.settings-main{left:0;padding:8px 8px 68px}.settings-container{border-radius:12px;height:calc(100vh - 76px)}.settings-header{flex-wrap:wrap;gap:8px;padding:12px 16px}.settings-header h1{font-size:1.2rem;margin-bottom:2px}.settings-content{gap:14px;padding:14px}.settings-card{padding:16px}.profile-grid{gap:12px;grid-template-columns:1fr}.password-form{max-width:100%}.change-password-btn{width:100%}.settings-logout-btn{font-size:.8rem;padding:8px 14px}}.objectives-page{background:#f4f5f7;display:flex;min-height:100vh}.objectives-content{box-sizing:border-box;flex:1 1;margin-left:220px;min-height:100vh;overflow-y:auto;padding:28px 28px 40px}.objectives-header{align-items:flex-end;display:flex;flex-wrap:wrap;gap:12px;justify-content:space-between;margin-bottom:24px}.objectives-title{color:#1a1a2e;font-size:1.6rem;font-weight:700;margin:0 0 4px}.objectives-subtitle{color:#6c757d;font-size:.875rem;margin:0}.btn-new-objective{background:linear-gradient(135deg,#667eea,#764ba2);border:none;border-radius:8px;box-shadow:0 2px 8px #667eea59;color:#fff;cursor:pointer;font-size:14px;font-weight:600;padding:10px 22px;transition:opacity .15s;white-space:nowrap}.btn-new-objective:hover{opacity:.88}.objectives-main{display:block}.objectives-left{min-width:0;width:100%}.detail-overlay{align-items:center;animation:fadeInOverlay .18s ease;background:#0f0f1e8c;box-sizing:border-box;display:flex;inset:0;justify-content:center;padding:20px;position:fixed;z-index:1100}@keyframes fadeInOverlay{0%{opacity:0}to{opacity:1}}.detail-overlay__panel{animation:slideUpPanel .22s cubic-bezier(.34,1.3,.64,1);border-radius:14px;display:flex;flex-direction:column;max-height:88vh;max-width:820px;overflow:hidden;width:100%}@keyframes slideUpPanel{0%{opacity:0;transform:translateY(32px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}.objectives-empty,.objectives-loading{color:#6c757d;font-size:15px;padding:60px 20px;text-align:center}.objectives-empty__icon{font-size:3rem;margin-bottom:12px}.obj-cards-grid{grid-gap:16px;display:grid;gap:16px;grid-template-columns:repeat(auto-fill,minmax(240px,1fr));margin-bottom:28px}.obj-card{background:#fff;border:2px solid #0000;border-radius:12px;box-shadow:0 2px 8px #00000012;cursor:pointer;padding:16px;transition:transform .15s,box-shadow .15s,border-color .15s}.obj-card:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.obj-card--selected{border-color:#667eea;box-shadow:0 4px 16px #667eea40}.obj-card__header{align-items:center;display:flex;justify-content:space-between;margin-bottom:10px}.obj-card__type{border-radius:99px;font-size:11px;font-weight:600;padding:3px 8px}.obj-card__status{color:#6c757d;font-size:11px;font-weight:500}.obj-card__status--active{color:#28a745}.obj-card__status--completed{color:#667eea}.obj-card__status--cancelled{color:#dc3545}.obj-card__name{color:#1a1a2e;font-size:15px;font-weight:700;line-height:1.3;margin:0 0 4px}.obj-card__desc,.obj-card__name{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.obj-card__desc{color:#6c757d;font-size:12px;margin:0 0 10px}.obj-card__amounts{align-items:baseline;display:flex;gap:4px;margin-bottom:8px}.obj-card__current{color:#1a1a2e;font-size:16px;font-weight:700}.obj-card__separator{color:#adb5bd;font-size:14px}.obj-card__target{color:#6c757d;font-size:13px}.obj-card__pct{color:#6c757d;font-size:11px;margin-bottom:10px;margin-top:5px}.obj-card__footer{border-top:1px solid #f0f0f0;display:flex;justify-content:space-between;padding-top:10px}.obj-card__label{color:#6c757d;font-size:11px;margin-bottom:2px}.obj-card__value{color:#1a1a2e;font-size:14px;font-weight:600}.detail-panel{background:#fff;border-radius:14px;box-shadow:0 4px 20px #0000001a;overflow:hidden}.detail-panel__header{align-items:flex-start;background:#fafafa;border-bottom:1px solid #e9ecef;display:flex;justify-content:space-between;padding:16px 18px}.detail-panel__title{color:#1a1a2e;font-size:16px;font-weight:700;margin:0 0 2px}.detail-panel__close{background:none;border:none;color:#6c757d;cursor:pointer;font-size:22px;line-height:1;padding:0 4px}.detail-tabs{border-bottom:1px solid #e9ecef;display:flex;overflow-x:auto;padding:0 16px}.detail-tab{background:none;border:none;border-bottom:2px solid #0000;color:#6c757d;cursor:pointer;font-size:13px;font-weight:500;padding:10px 12px;transition:color .15s;white-space:nowrap}.detail-tab--active{border-bottom-color:#667eea;color:#667eea}.detail-panel__body{flex:1 1;overflow-y:auto;padding:20px}.detail-overlay__panel .detail-panel{border-radius:14px;display:flex;flex-direction:column;height:100%;overflow:hidden}.overview-grid{grid-gap:12px;display:grid;gap:12px;grid-template-columns:1fr 1fr}.overview-stat{background:#f8f9fa;border-radius:8px;padding:12px 14px}.overview-stat__label{color:#6c757d;font-size:11px;font-weight:500;margin-bottom:4px}.overview-stat__value{color:#1a1a2e;font-size:16px;font-weight:700}.progress-list{display:flex;flex-direction:column;gap:8px}.progress-item{background:#f8f9fa;border-left:3px solid #667eea;border-radius:8px;justify-content:space-between;padding:10px 12px}.chart-loading,.progress-item{align-items:center;display:flex}.chart-loading{color:#6c757d;font-size:13px;height:200px;justify-content:center}.mgmt-table-wrap{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000012;margin-bottom:24px;padding:20px}.mgmt-table-title{color:#1a1a2e;font-size:15px;font-weight:700;margin:0 0 14px}.mgmt-table-scroll{overflow-x:auto}.mgmt-table{border-collapse:collapse;font-size:13px;white-space:nowrap;width:100%}.mgmt-table th{border-bottom:2px solid #e9ecef;color:#6c757d;font-size:11px;font-weight:600;letter-spacing:.04em;padding:8px 12px;text-align:left;text-transform:uppercase}.mgmt-table td{border-bottom:1px solid #f0f0f0;color:#1a1a2e;padding:10px 12px}.mgmt-row--selected td{background:#f0f0ff}.mgmt-name{color:#667eea!important;cursor:pointer;font-weight:600}.mgmt-name:hover{text-decoration:underline}.mgmt-btn{background:none;border:1px solid #e9ecef;border-radius:4px;cursor:pointer;font-size:13px;padding:3px 7px;transition:background .15s}.mgmt-btn:hover{background:#f0f0f0}.status-badge{border-radius:99px;font-size:11px;font-weight:600;padding:2px 8px}.status-badge--active{background:#dcfce7;color:#166534}.status-badge--completed{background:#ede9fe;color:#5b21b6}.status-badge--cancelled{background:#fee2e2;color:#991b1b}.cashflow-section{background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000012;margin-bottom:24px;padding:20px}.cashflow-header{align-items:center;display:flex;flex-wrap:wrap;gap:10px;justify-content:space-between;margin-bottom:16px}.cashflow-title{color:#1a1a2e;font-size:15px;font-weight:700;margin:0}.cashflow-toggle{border:1px solid #e9ecef;border-radius:6px;display:flex;overflow:hidden}.cashflow-toggle-btn{background:#fff;border:none;cursor:pointer;font-size:13px;padding:6px 14px;transition:background .15s}.cashflow-toggle-btn.active{background:#667eea;color:#fff;font-weight:600}.cashflow-table-wrap{max-height:480px;overflow-x:auto;overflow-y:auto}.cashflow-table{border-collapse:collapse;font-size:12px;width:100%}.cashflow-table th{background:#f8f9fa;border-bottom:2px solid #e9ecef;color:#6c757d;font-size:11px;font-weight:600;padding:6px 10px;text-align:center}.cashflow-table td{border-bottom:1px solid #f0f0f0;color:#6c757d;padding:5px 10px;text-align:center}.cashflow-month{text-align:left!important}.cashflow-cell--active,.cashflow-month{color:#1a1a2e!important;font-weight:500}.cashflow-total-row td{background:#f8f9fa;color:#1a1a2e!important;font-weight:700}.confirm-overlay{align-items:center;background:#00000073;display:flex;inset:0;justify-content:center;position:fixed;z-index:2000}.confirm-dialog{background:#fff;border-radius:10px;box-shadow:0 8px 32px #0003;color:#1a1a2e;font-size:15px;max-width:380px;padding:24px 28px;width:90%}.confirm-btn{border:none;border-radius:6px;cursor:pointer;font-size:14px;font-weight:600;padding:8px 20px}.confirm-btn--cancel{background:#e9ecef;color:#495057}.confirm-btn--delete{background:#dc3545;color:#fff}@media (max-width:768px){.objectives-content{margin-left:0!important;padding:16px 14px 80px!important}.objectives-header{align-items:flex-start;flex-direction:column}.objectives-title{font-size:1.3rem}.objectives-main{flex-direction:column}.detail-overlay{align-items:flex-end!important;padding:0!important}.detail-overlay__panel{border-radius:14px 14px 0 0!important;max-height:92vh!important;max-width:100%!important}.obj-cards-grid,.overview-grid{grid-template-columns:1fr!important}.cashflow-table td,.cashflow-table th{font-size:11px;padding:4px 6px}.mgmt-table td,.mgmt-table th{padding:7px 8px}}
/*# sourceMappingURL=main.91b462f8.css.map*/