.login-page{min-height:100vh;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--secondary-color) 0%,var(--dark-navy) 100%);padding:2rem}.login-container{background:#fff;border-radius:20px;padding:3rem;max-width:400px;width:100%;box-shadow:0 20px 60px #0000004d}.login-header{text-align:center;margin-bottom:2rem}.login-header h1{color:var(--secondary-color);margin-bottom:.5rem}.login-header p{color:#666;font-size:.9rem}.login-tabs{display:flex;gap:.5rem;margin-bottom:2rem;border-bottom:2px solid var(--border-color)}.login-tabs button{flex:1;padding:.75rem;border:none;background:none;cursor:pointer;font-size:1rem;color:#666;border-bottom:2px solid transparent;margin-bottom:-2px;transition:all .3s}.login-tabs button.active{color:var(--primary-color);border-bottom-color:var(--primary-color)}.login-form{display:flex;flex-direction:column;gap:1rem}.login-form input{padding:.75rem;border:1px solid var(--border-color);border-radius:8px;font-size:1rem;transition:border-color .3s}.login-form input:focus{outline:none;border-color:var(--primary-color)}.btn-submit{padding:.75rem;background:var(--primary-color);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;transition:background .3s;margin-top:.5rem}.btn-submit:hover:not(:disabled){background:var(--accent-color)}.btn-submit:disabled{opacity:.6;cursor:not-allowed}.error-message{background:#fee;color:#c33;padding:.75rem;border-radius:8px;text-align:center;font-size:.9rem}.login-logo{height:80px;margin-bottom:1rem}.demo-credentials{margin-top:1.5rem;padding:1rem;background:#f5f5f5;border-radius:8px;font-size:.85rem;color:#666;text-align:center}.dashboard{width:100%;padding:0}.dashboard-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.dashboard h1{color:#0a1929;margin-bottom:.5rem;font-size:2rem}.subtitle{color:#666;margin-bottom:0}.welcome-banner{background:linear-gradient(135deg,#0a1929,#1e3a5f);border-radius:16px;padding:2rem;margin-bottom:2rem;color:#fff;position:relative;overflow:hidden}.welcome-banner:before{content:"";position:absolute;top:-50%;right:-10%;width:300px;height:300px;background:#00d4ff1a;border-radius:50%}.welcome-banner h2{font-size:1.75rem;margin-bottom:.5rem;position:relative;z-index:1}.welcome-banner p{color:#ffffffe6;position:relative;z-index:1}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 10px #0000001a;display:flex;align-items:center;gap:1rem}.stat-icon{font-size:2.5rem;flex-shrink:0}.stat-info{flex:1}.stat-info h3{font-size:2rem;color:#00d4ff;margin-bottom:.25rem;font-weight:700}.stat-info p{color:#666;font-size:.9rem;margin-bottom:.25rem}.stat-trend{font-size:.75rem;color:#10b981;font-weight:600}.stat-trend-danger{color:#ef4444}.quick-access{display:flex;gap:1rem;margin-bottom:2rem;flex-wrap:wrap}.quick-btn{background:#fff;border:2px solid #e5e7eb;border-radius:12px;padding:1rem 1.5rem;display:flex;align-items:center;gap:.75rem;cursor:pointer;font-size:.95rem;font-weight:500;color:#0a1929;z-index:100;position:relative;pointer-events:auto}.quick-icon{font-size:1.5rem}.dashboard-content{display:grid;grid-template-columns:2fr 1fr;gap:2rem;margin-bottom:2rem}.content-left,.content-right{display:flex;flex-direction:column;gap:2rem}.chart-card,.recent-announcements-card,.recent-reservations-card,.dues-status-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 10px #0000001a}.chart-card h3,.recent-announcements-card h3,.recent-reservations-card h3,.dues-status-card h3{color:#0a1929;margin-bottom:1.5rem;font-size:1.25rem}.bar-chart{display:flex;align-items:flex-end;justify-content:space-around;height:200px;gap:.5rem}.bar-item{flex:1;display:flex;flex-direction:column;align-items:center;height:100%}.bar-wrapper{flex:1;width:100%;display:flex;align-items:flex-end;justify-content:center}.bar{width:100%;max-width:50px;background:linear-gradient(to top,#00d4ff,#09c);border-radius:8px 8px 0 0;position:relative;display:flex;align-items:flex-start;justify-content:center;padding-top:.5rem}.bar-value{color:#fff;font-size:.7rem;font-weight:700}.bar-label{margin-top:.5rem;font-size:.75rem;color:#666;text-transform:uppercase}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem}.view-all{background:none;border:none;color:#00d4ff;cursor:pointer;font-weight:500;font-size:.9rem;padding:.25rem .5rem;z-index:100;position:relative;pointer-events:auto}.announcements-list,.reservations-list{display:flex;flex-direction:column;gap:.75rem}.announcement-item,.reservation-item{display:flex;justify-content:space-between;align-items:center;padding:1rem;background:#f8f9fa;border-radius:8px}.announcement-info,.reservation-info{display:flex;flex-direction:column;gap:.25rem;flex:1}.announcement-title,.reservation-facility{font-weight:600;color:#0a1929}.announcement-time,.reservation-time{font-size:.85rem;color:#666}.priority-badge,.status-badge{font-size:.75rem;padding:.25rem .75rem;border-radius:12px;font-weight:500}.priority-badge.high{background:#fee2e2;color:#dc2626}.priority-badge.medium{background:#fef3c7;color:#d97706}.priority-badge.normal{background:#dbeafe;color:#2563eb}.status-badge.confirmed{background:#d1fae5;color:#059669}.status-badge.pending{background:#fef3c7;color:#d97706}.status-badge.cancelled{background:#fee2e2;color:#dc2626}.dues-progress{margin-bottom:1.5rem}.progress-bar{width:100%;height:12px;background:#e5e7eb;border-radius:6px;overflow:hidden;margin-bottom:.75rem}.progress-fill{height:100%;background:linear-gradient(90deg,#00d4ff,#09c);border-radius:6px}.progress-info{display:flex;justify-content:space-between;font-size:.85rem;color:#666}.dues-stats{display:flex;flex-direction:column;gap:1rem}.dues-stat-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#f8f9fa;border-radius:8px}.dues-label{color:#666;font-size:.9rem}.dues-value{font-weight:600;font-size:1.1rem}.dues-value.paid{color:#10b981}.dues-value.unpaid{color:#ef4444}.empty-state{text-align:center;padding:2rem;color:#999;font-size:.9rem}.loading{text-align:center;padding:3rem;color:#666;font-size:1.1rem}@media (max-width: 1024px){.dashboard-content{grid-template-columns:1fr}}@media (max-width: 768px){.dashboard{padding:1rem}.stats-grid{grid-template-columns:repeat(2,1fr)}.quick-access{flex-direction:column}.bar-chart{height:150px}}.announcements-page{width:100%}.announcements-list{display:flex;flex-direction:column;gap:1.5rem}.announcement-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 10px #0000001a;transition:transform .2s,box-shadow .2s}.announcement-card:hover{transform:translateY(-2px);box-shadow:0 4px 20px #00000026}.announcement-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.announcement-header h3{color:#0a1929;margin:0 0 .5rem}.priority-badge{padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600}.announcement-actions{display:flex;gap:.5rem}.announcement-content{color:#666;line-height:1.6;margin-bottom:1rem}.announcement-date{color:#999;font-size:.85rem}.reservations-page{width:100%}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.page-header h1{color:#0a1929;margin:0}.reservations-list{display:flex;flex-direction:column;gap:1.5rem}.reservation-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 10px #0000001a;transition:transform .2s,box-shadow .2s}.reservation-card:hover{transform:translateY(-2px);box-shadow:0 4px 20px #00000026}.reservation-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.reservation-header h3{color:#0a1929;margin:0 0 .5rem}.reservation-date{color:#666;margin:0}.status-badge{padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:600;margin-bottom:.5rem;display:block}.status-confirmed{background:#d4edda;color:#155724}.status-completed{background:#dbeafe;color:#2563eb}.reservation-actions{display:flex;gap:.5rem}.btn-edit,.btn-delete{background:none;border:none;cursor:pointer;font-size:1.25rem;padding:.5rem;border-radius:6px;transition:background .2s}.btn-edit:hover{background:#e0f2fe}.btn-delete:hover{background:#ffebee}.reservation-apartment{color:#666;margin-bottom:.5rem}.reservation-notes{color:#999;font-size:.9rem;font-style:italic}.empty-state{text-align:center;padding:3rem;color:#666}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:10000}.modal-content{background:#fff;border-radius:12px;padding:2rem;max-width:600px;width:90%;max-height:90vh;overflow-y:auto}.modal-content h2{color:#0a1929;margin-bottom:1.5rem}.form-group label{display:block;color:#0a1929;margin-bottom:.5rem;font-weight:500}.form-group input,.form-group textarea,.form-group select{width:100%;padding:.75rem;border:1px solid #e5e7eb;border-radius:8px;font-size:1rem;transition:border-color .2s}.form-group input:focus,.form-group textarea:focus,.form-group select:focus{outline:none;border-color:#00d4ff}.modal-actions{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem}.modal-actions button{padding:.75rem 1.5rem;border:none;border-radius:8px;cursor:pointer;font-weight:600;transition:all .2s}.modal-actions button[type=button]{background:#f5f7fa;color:#0a1929}.modal-actions button[type=button]:hover{background:#e5e7eb}@media (max-width: 768px){.form-row{grid-template-columns:1fr}}.dues-page-enhanced{width:100%;padding:0}.page-header-enhanced{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid #e5e7eb}.btn-primary-large{display:flex;align-items:center;gap:.5rem;padding:.875rem 1.5rem;background:#00d4ff;color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s;box-shadow:0 2px 8px #00d4ff4d}.btn-primary-large:hover{background:#09c;transform:translateY(-1px);box-shadow:0 4px 12px #00d4ff66}.filters-section{display:flex;gap:1.5rem;align-items:flex-end;margin-bottom:2rem;padding:1.5rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014;flex-wrap:wrap}.filter-group{display:flex;flex-direction:column;gap:.5rem}.filter-group label{font-size:.875rem;font-weight:600;color:#0a1929}.filter-select{padding:.75rem;border:2px solid #e5e7eb;border-radius:8px;font-size:.9375rem;min-width:180px;transition:border-color .2s}.filter-stats{display:flex;gap:2rem;margin-left:auto}.stat-item{display:flex;flex-direction:column;gap:.25rem}.stat-value.success{color:#155724}.stat-value.warning{color:#856404}.dues-by-apartment{display:flex;flex-direction:column;gap:2rem}.apartment-dues-section{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 2px 8px #00000014}.apartment-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #f5f7fa}.apartment-header h2{color:#0a1929;font-size:1.5rem;font-weight:700;margin:0}.apartment-due-count{background:#e0f2fe;color:#0277bd;padding:.375rem .875rem;border-radius:12px;font-size:.875rem;font-weight:600}.dues-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.due-card-enhanced{border:2px solid #e5e7eb;border-radius:12px;padding:1.5rem;transition:all .3s;background:#fff}.due-card-enhanced:hover{border-color:#00d4ff;box-shadow:0 4px 16px #00d4ff26;transform:translateY(-2px)}.due-card-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.due-card-header h3{color:#0a1929;font-size:1.125rem;font-weight:600;margin:0 0 .5rem}.due-amount-large{font-size:1.75rem;font-weight:700;color:#00d4ff;margin:0}.status-badge-large{padding:.5rem 1rem;border-radius:12px;font-size:.875rem;font-weight:600;white-space:nowrap}.due-card-body{margin-bottom:1rem}.due-info-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid #f5f7fa}.due-info-row:last-child{border-bottom:none}.info-value.success{color:#155724}.info-value-large{color:#00d4ff;font-size:1.5rem;font-weight:700}.due-description-text{color:#666;font-size:.875rem;margin:.75rem 0;line-height:1.5}.due-card-actions{display:flex;justify-content:space-between;align-items:center;gap:1rem;margin-top:1rem;padding-top:1rem;border-top:2px solid #f5f7fa}.btn-pay-large{flex:1;padding:.875rem;background:#00d4ff;color:#fff;border:none;border-radius:10px;font-size:1rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-pay-large:hover{background:#09c;transform:translateY(-1px)}.btn-action-edit,.btn-action-delete{width:40px;height:40px;display:flex;align-items:center;justify-content:center;border:none;border-radius:8px;cursor:pointer;font-size:1.125rem;transition:all .2s}.payment-info-box{background:#f5f7fa;border-radius:12px;padding:1.5rem;margin-bottom:1.5rem}.payment-info-row{display:flex;justify-content:space-between;align-items:center;padding:.75rem 0;border-bottom:1px solid #e5e7eb}.payment-info-row:last-child{border-bottom:none}@media (max-width: 768px){.filters-section{flex-direction:column}.filter-stats{margin-left:0;width:100%;justify-content:space-between}.dues-grid,.form-row{grid-template-columns:1fr}}.expenses-page{width:100%}.expenses-stats{display:grid;grid-template-columns:repeat(auto-fill,minmax(200px,1fr));gap:1.5rem;margin-bottom:2rem}.stat-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #00000014;display:flex;align-items:center;gap:1rem}.stat-icon{font-size:2.5rem;width:64px;height:64px;display:flex;align-items:center;justify-content:center;background:#e0f2fe;border-radius:12px}.stat-content h3{color:#666;font-size:.875rem;font-weight:500;margin:0 0 .5rem}.stat-amount{color:#0a1929;font-size:1.5rem;font-weight:700;margin:0}.expenses-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.expense-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #00000014;transition:all .3s}.expense-card:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.expense-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem}.expense-header h3{color:#0a1929;font-size:1.125rem;font-weight:600;margin:0 0 .5rem}.expense-amount{color:#00d4ff;font-size:1.75rem;font-weight:700;margin:0}.expense-actions{display:flex;gap:.5rem}.expense-body{padding-top:1rem;border-top:2px solid #f5f7fa}.expense-date{color:#666;font-size:.875rem;margin:0 0 .5rem}.expense-description{color:#666;font-size:.9375rem;line-height:1.5;margin:0 0 1rem}.receipt-preview{margin-top:1rem;padding:1rem;background:#f5f7fa;border-radius:8px}.receipt-image{width:100%;max-height:200px;object-fit:contain;border-radius:8px;margin-bottom:.5rem}.receipt-link{display:inline-block;color:#00d4ff;font-size:.875rem;font-weight:600;text-decoration:none}.receipt-link:hover{text-decoration:underline}.image-preview{margin-top:1rem;border-radius:10px;overflow:hidden;border:2px solid #e5e7eb}.image-preview img{width:100%;max-height:200px;object-fit:cover}@media (max-width: 768px){.expenses-stats,.expenses-list,.form-row{grid-template-columns:1fr}}.maintenance-requests-page{width:100%}.requests-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:1.5rem}.request-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #00000014;transition:all .3s}.request-card:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.request-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;padding-bottom:1rem;border-bottom:2px solid #f5f7fa}.request-header h3{color:#0a1929;font-size:1.25rem;font-weight:700;margin:.5rem 0 .25rem}.request-type{color:#666;font-size:.875rem;margin:0}.priority-badge{display:inline-block;padding:.25rem .75rem;border-radius:12px;font-size:.75rem;font-weight:600;margin-bottom:.5rem}.priority-low{background:#e3f2fd;color:#1976d2}.priority-normal{background:#f3e5f5;color:#7b1fa2}.priority-high{background:#fff3e0;color:#e65100}.priority-urgent{background:#ffebee;color:#c62828}.status-badge{padding:.5rem 1rem;border-radius:12px;font-size:.875rem;font-weight:600;white-space:nowrap}.status-pending{background:#fff3cd;color:#856404}.status-in_progress{background:#dbeafe;color:#2563eb}.status-completed{background:#d4edda;color:#155724}.status-cancelled{background:#f8d7da;color:#721c24}.request-body{margin-bottom:1rem}.request-description{color:#666;font-size:.9375rem;line-height:1.6;margin:0 0 1rem}.request-apartment{color:#666;font-size:.875rem;margin:0 0 1rem}.request-images{display:flex;gap:.5rem;margin-bottom:1rem;flex-wrap:wrap}.request-image{width:100px;height:100px;object-fit:cover;border-radius:8px;border:2px solid #e5e7eb;cursor:pointer;transition:transform .2s}.request-image:hover{transform:scale(1.1)}.request-date{color:#999;font-size:.8125rem;margin:0}.request-actions{display:flex;justify-content:space-between;align-items:center;gap:1rem;padding-top:1rem;border-top:2px solid #f5f7fa}.status-select{flex:1;padding:.625rem;border:2px solid #e5e7eb;border-radius:8px;font-size:.875rem;cursor:pointer;transition:border-color .2s}.status-select:focus{outline:none;border-color:#00d4ff}.action-buttons{display:flex;gap:.5rem}.btn-action-edit,.btn-action-delete{width:36px;height:36px;display:flex;align-items:center;justify-content:center;border:none;border-radius:8px;cursor:pointer;font-size:1.125rem;transition:all .2s}.btn-action-edit:hover{background:#b3e5fc;transform:scale(1.1)}.btn-action-delete:hover{background:#ffcdd2;transform:scale(1.1)}.form-group-enhanced small{display:block;color:#666;font-size:.8125rem;margin-top:.25rem}@media (max-width: 768px){.requests-grid,.form-row{grid-template-columns:1fr}}.debt-tracking-page{width:100%}.page-header-enhanced{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:2rem;padding-bottom:1.5rem;border-bottom:2px solid #e5e7eb;flex-wrap:wrap;gap:1rem}.page-header-enhanced h1{color:#0a1929;font-size:2rem;font-weight:700;margin:0 0 .5rem}.page-subtitle{color:#666;font-size:1rem;margin:0}.header-filters{display:flex;gap:1rem}.filter-select{padding:.75rem 1rem;border:2px solid #e5e7eb;border-radius:8px;font-size:.9375rem;min-width:180px;transition:border-color .2s}.filter-select:focus{outline:none;border-color:#00d4ff}.apartment-summary-section,.monthly-debt-section{margin-bottom:3rem}.apartment-summary-section h2,.monthly-debt-section h2{color:#0a1929;font-size:1.5rem;font-weight:700;margin:0 0 1.5rem}.apartments-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(400px,1fr));gap:1.5rem}.apartment-debt-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #00000014;transition:all .3s}.apartment-debt-card:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.apartment-debt-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:2px solid #f5f7fa}.apartment-debt-header h3{color:#0a1929;font-size:1.25rem;font-weight:700;margin:0}.btn-send-extract{padding:.5rem 1rem;background:#00d4ff;color:#fff;border:none;border-radius:8px;font-size:.875rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-send-extract:hover{background:#09c;transform:translateY(-1px)}.debt-stats-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:1rem;margin-bottom:1.5rem}.debt-stat{display:flex;flex-direction:column;gap:.25rem;padding:1rem;background:#f5f7fa;border-radius:8px}.debt-stat.success{background:#d4edda}.debt-stat.warning{background:#fff3cd}.debt-stat.danger{background:#f8d7da}.stat-label{font-size:.8125rem;color:#666;font-weight:500}.debt-stat.success .stat-label{color:#155724}.debt-stat.warning .stat-label{color:#856404}.debt-stat.danger .stat-label{color:#721c24}.stat-value{font-size:1.25rem;font-weight:700;color:#0a1929}.debt-stat.success .stat-value{color:#155724}.debt-stat.warning .stat-value{color:#856404}.debt-stat.danger .stat-value{color:#721c24}.apartment-debt-details{padding-top:1rem;border-top:2px solid #f5f7fa}.apartment-debt-details h4{color:#0a1929;font-size:1rem;font-weight:600;margin:0 0 .75rem}.debt-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:.5rem}.debt-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#f5f7fa;border-radius:8px;border-left:4px solid #e5e7eb}.debt-item.paid{border-left-color:#28a745;background:#d4edda}.debt-item.overdue{border-left-color:#dc3545;background:#f8d7da}.debt-item.unpaid{border-left-color:#ffc107;background:#fff3cd}.debt-date{font-size:.8125rem;color:#666;min-width:80px}.debt-type{flex:1;font-weight:600;color:#0a1929;margin:0 1rem}.debt-amount{font-weight:700;color:#0a1929;min-width:100px;text-align:right}.debt-status{font-size:.875rem;padding:.25rem .75rem;border-radius:12px;font-weight:600;min-width:100px;text-align:center}.status-paid{background:#d4edda;color:#155724}.status-overdue{background:#f8d7da;color:#721c24}.status-unpaid{background:#fff3cd;color:#856404}.no-debt{color:#666;font-size:.875rem;text-align:center;padding:1rem;margin:0}.monthly-debts-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.monthly-debt-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #00000014;transition:all .3s}.monthly-debt-card:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.monthly-debt-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:1rem;border-bottom:2px solid #f5f7fa}.monthly-debt-header h3{color:#0a1929;font-size:1.25rem;font-weight:700;margin:0}.month-total{font-size:1.5rem;font-weight:700;color:#00d4ff}.monthly-stats{display:flex;gap:1rem;margin-bottom:1rem}.month-stat{flex:1;display:flex;flex-direction:column;gap:.25rem;padding:.75rem;border-radius:8px}.month-stat.success{background:#d4edda}.month-stat.warning{background:#fff3cd}.month-stat span{font-size:.8125rem;color:#666}.month-stat.success span{color:#155724}.month-stat.warning span{color:#856404}.month-stat strong{font-size:1.125rem;color:#0a1929}.month-stat.success strong{color:#155724}.month-stat.warning strong{color:#856404}.monthly-dues-list{display:flex;flex-direction:column;gap:.5rem}.monthly-due-item{display:flex;justify-content:space-between;align-items:center;padding:.75rem;background:#f5f7fa;border-radius:8px;border-left:4px solid #e5e7eb}.monthly-due-item.paid{border-left-color:#28a745;background:#d4edda}.monthly-due-item.overdue{border-left-color:#dc3545;background:#f8d7da}.monthly-due-item.unpaid{border-left-color:#ffc107;background:#fff3cd}.due-info{flex:1;display:flex;flex-direction:column;gap:.25rem}.due-type{font-weight:600;color:#0a1929;font-size:.9375rem}.due-apartment{font-size:.8125rem;color:#666}.due-amount-status{display:flex;align-items:center;gap:.75rem}.due-amount{font-weight:700;color:#0a1929;min-width:80px;text-align:right}.due-status{font-size:1.25rem}@media (max-width: 768px){.apartments-grid,.monthly-debts-grid,.debt-stats-grid{grid-template-columns:1fr}.header-filters{flex-direction:column;width:100%}.filter-select{width:100%}}.employees-page{width:100%}.employees-by-role{display:flex;flex-direction:column;gap:2rem}.role-section{background:#fff;border-radius:16px;padding:2rem;box-shadow:0 2px 8px #00000014}.role-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1.5rem;padding-bottom:1rem;border-bottom:2px solid #f5f7fa}.role-header h2{color:#0a1929;font-size:1.5rem;font-weight:700;margin:0}.role-count{background:#e0f2fe;color:#0277bd;padding:.375rem .875rem;border-radius:12px;font-size:.875rem;font-weight:600}.employees-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1.5rem}.employee-card{border:2px solid #e5e7eb;border-radius:12px;padding:1.5rem;transition:all .3s;background:#fff}.employee-card:hover{border-color:#00d4ff;box-shadow:0 4px 16px #00d4ff26;transform:translateY(-2px)}.employee-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;padding-bottom:1rem;border-bottom:2px solid #f5f7fa}.employee-header h3{color:#0a1929;font-size:1.125rem;font-weight:700;margin:0 0 .5rem}.employee-phone{color:#666;font-size:.875rem;margin:0 0 .25rem}.employee-email{color:#666;font-size:.8125rem;margin:0}.status-inactive{background:#f8d7da;color:#721c24}.employee-body{margin-bottom:1rem}.employee-info-row{display:flex;justify-content:space-between;align-items:center;padding:.5rem 0;border-bottom:1px solid #f5f7fa}.employee-info-row:last-child{border-bottom:none}.info-label{color:#666;font-size:.875rem}.info-value{color:#0a1929;font-weight:600;font-size:.9375rem}.employee-notes{color:#666;font-size:.875rem;line-height:1.5;margin:.75rem 0 0;padding:.75rem;background:#f5f7fa;border-radius:8px}.employee-actions{display:flex;gap:.5rem;padding-top:1rem;border-top:2px solid #f5f7fa}.empty-state-enhanced{text-align:center;padding:4rem 2rem;background:#fff;border-radius:16px}@media (max-width: 768px){.employees-grid,.form-row{grid-template-columns:1fr}}.inventory-page{width:100%}.header-stats{display:flex;align-items:center;gap:1.5rem}.stat-box{display:flex;flex-direction:column;gap:.25rem;padding:1rem 1.5rem;background:#fff;border-radius:12px;box-shadow:0 2px 8px #00000014}.stat-label{font-size:.8125rem;color:#666}.stat-value{font-size:1.5rem;font-weight:700;color:#00d4ff}.inventories-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(350px,1fr));gap:1.5rem}.inventory-card{background:#fff;border-radius:12px;padding:1.5rem;box-shadow:0 2px 8px #00000014;transition:all .3s}.inventory-card:hover{box-shadow:0 4px 16px #0000001f;transform:translateY(-2px)}.inventory-header{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:1rem;padding-bottom:1rem;border-bottom:2px solid #f5f7fa}.inventory-header h3{color:#0a1929;font-size:1.25rem;font-weight:700;margin:0 0 .5rem}.inventory-category{color:#666;font-size:.875rem;margin:0}.status-badge{padding:.375rem .75rem;border-radius:12px;font-size:.8125rem;font-weight:600;white-space:nowrap}.status-active{background:#d4edda;color:#155724}.status-broken{background:#fff3cd;color:#856404}.status-disposed{background:#f8d7da;color:#721c24}.inventory-body{margin-bottom:1rem}.inventory-info-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:.75rem;margin-bottom:1rem}.info-item{display:flex;flex-direction:column;gap:.25rem}.info-label{font-size:.8125rem;color:#666}.info-value{font-size:.9375rem;font-weight:600;color:#0a1929}.info-value.highlight{color:#00d4ff;font-size:1.125rem}.inventory-notes{color:#666;font-size:.875rem;line-height:1.5;margin:.75rem 0 0;padding:.75rem;background:#f5f7fa;border-radius:8px}.inventory-actions{display:flex;gap:.5rem;padding-top:1rem;border-top:2px solid #f5f7fa}.btn-action-edit,.btn-action-delete{flex:1;padding:.75rem;border:none;border-radius:8px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-action-edit{background:#e0f2fe;color:#0277bd}.btn-action-edit:hover{background:#b3e5fc}.btn-action-delete{background:#ffebee;color:#c62828}.btn-action-delete:hover{background:#ffcdd2}.empty-state-enhanced{text-align:center;padding:4rem 2rem;background:#fff;border-radius:16px;grid-column:1 / -1}.empty-icon{font-size:4rem;margin-bottom:1rem}.empty-state-enhanced h3{color:#0a1929;font-size:1.5rem;margin:0 0 .5rem}.empty-state-enhanced p{color:#666;margin:0}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:10000;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);padding:1rem;box-sizing:border-box}.modal-content-large{background:#fff;border-radius:16px;width:100%;max-width:700px;max-height:90vh;overflow-y:auto;box-shadow:0 20px 60px #0000004d}.modal-header{display:flex;justify-content:space-between;align-items:center;padding:1.5rem 2rem;border-bottom:2px solid #f5f7fa}.modal-header h2{color:#0a1929;font-size:1.5rem;font-weight:700;margin:0}.modal-close-btn{width:32px;height:32px;display:flex;align-items:center;justify-content:center;background:#f5f7fa;border:none;border-radius:8px;font-size:1.5rem;color:#666;cursor:pointer;transition:all .2s}.modal-close-btn:hover{background:#e5e7eb;color:#0a1929}.modal-form{padding:2rem}.form-group-enhanced{margin-bottom:1.5rem}.form-group-enhanced label{display:block;color:#0a1929;font-weight:600;margin-bottom:.5rem;font-size:.9375rem}.form-group-enhanced input,.form-group-enhanced select,.form-group-enhanced textarea{width:100%;padding:.875rem;border:2px solid #e5e7eb;border-radius:10px;font-size:1rem;transition:all .2s;box-sizing:border-box}.form-group-enhanced input:focus,.form-group-enhanced select:focus,.form-group-enhanced textarea:focus{outline:none;border-color:#00d4ff;box-shadow:0 0 0 3px #00d4ff1a}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1rem}.modal-actions-enhanced{display:flex;gap:1rem;justify-content:flex-end;margin-top:2rem;padding-top:1.5rem;border-top:2px solid #f5f7fa}.btn-secondary{padding:.75rem 1.5rem;background:#f5f7fa;color:#0a1929;border:none;border-radius:10px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-secondary:hover{background:#e5e7eb}.btn-primary{padding:.75rem 1.5rem;background:#00d4ff;color:#fff;border:none;border-radius:10px;font-size:.9375rem;font-weight:600;cursor:pointer;transition:all .2s}.btn-primary:hover{background:#09c;transform:translateY(-1px)}.loading{text-align:center;padding:3rem;color:#666}@media (max-width: 768px){.inventories-grid,.form-row,.inventory-info-grid{grid-template-columns:1fr}.header-stats{flex-direction:column;width:100%}}.settings-page h1{color:var(--secondary-color);margin-bottom:2rem}.message{padding:1rem;border-radius:8px;margin-bottom:2rem}.message.success{background:#d4edda;color:#155724}.message.error{background:#f8d7da;color:#721c24}.settings-form{background:#fff;border-radius:12px;padding:2rem;box-shadow:0 2px 10px #0000001a}.form-group{margin-bottom:1.5rem}.form-group label{display:block;margin-bottom:.5rem;color:var(--secondary-color);font-weight:500}.form-group input{width:100%;padding:.75rem;border:1px solid var(--border-color);border-radius:8px;font-size:1rem;transition:border-color .3s}.form-group input:focus{outline:none;border-color:var(--primary-color)}.form-row{display:grid;grid-template-columns:1fr 1fr;gap:1.5rem}.btn-save{width:100%;padding:.75rem;background:var(--primary-color);color:#fff;border:none;border-radius:8px;font-size:1rem;font-weight:700;cursor:pointer;transition:background .3s;margin-top:1rem}.btn-save:hover:not(:disabled){background:var(--accent-color)}.btn-save:disabled{opacity:.6;cursor:not-allowed}.app-layout{display:flex;min-height:100vh;background:#f5f7fa}.sidebar{width:260px;background:#fff;color:#0a1929;display:flex;flex-direction:column;transition:width .3s;position:fixed;height:100vh;left:0;top:0;z-index:1000;box-shadow:2px 0 10px #0000001a;border-right:1px solid #e5e7eb}.sidebar.closed{width:70px}.sidebar-header{padding:1.5rem;border-bottom:1px solid #e5e7eb;display:flex;align-items:center;justify-content:center}.logo{display:flex;align-items:center;justify-content:center;text-decoration:none}.logo-img{height:50px;width:auto;object-fit:contain}.logo-text{display:none}.sidebar-nav{flex:1;padding:1rem 0;overflow-y:auto}.nav-item{display:flex;align-items:center;gap:1rem;padding:1rem 1.5rem;color:#666;text-decoration:none;transition:all .3s;border-left:3px solid transparent}.nav-item:hover{background:#f5f7fa;color:#0a1929}.nav-item.active{background:#e3f2fd;color:#1976d2;border-left-color:#1976d2;font-weight:600}.nav-icon{font-size:1.25rem;width:24px;text-align:center}.nav-label{font-size:.95rem;font-weight:500}.sidebar.closed .nav-label{display:none}.sidebar-footer{padding:1rem 1.5rem;border-top:1px solid #e5e7eb}.version{font-size:.75rem;color:#999;text-align:center}.sidebar.closed .version{display:none}.main-wrapper{flex:1;margin-left:260px;transition:margin-left .3s;display:flex;flex-direction:column}.sidebar.closed~.main-wrapper{margin-left:70px}.top-header{background:#fff;padding:1rem 2rem;box-shadow:0 2px 10px #0000000d;display:flex;justify-content:space-between;align-items:center;position:sticky;top:0;z-index:100}.header-left{display:flex;align-items:center;gap:1rem}.sidebar-toggle{background:none;border:none;font-size:1.5rem;cursor:pointer;color:#0a1929;padding:.5rem;border-radius:8px;transition:background .2s;z-index:1001;position:relative;pointer-events:auto}.sidebar-toggle:hover{background:#f5f7fa}.search-box input{padding:.75rem 1rem;border:1px solid #e5e7eb;border-radius:8px;width:300px;font-size:.9rem;transition:border-color .2s}.search-box input:focus{outline:none;border-color:#00d4ff}.header-right{display:flex;align-items:center;gap:1.5rem}.notification-btn{background:none;border:none;font-size:1.5rem;cursor:pointer;padding:.5rem;border-radius:8px;transition:background .2s;z-index:1001;position:relative;pointer-events:auto}.notification-btn:hover{background:#f5f7fa}.user-dropdown{display:flex;align-items:center;gap:.75rem;position:relative;cursor:pointer;padding:.5rem;border-radius:8px;transition:background .2s}.user-dropdown:hover{background:#f5f7fa}.user-info{display:flex;flex-direction:column;align-items:flex-end}.user-name{font-weight:600;color:#0a1929;font-size:.9rem}.user-role{font-size:.75rem;color:#666}.user-avatar{width:40px;height:40px;border-radius:50%;background:linear-gradient(135deg,#00d4ff,#09c);display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:1.1rem}.dropdown-menu{position:absolute;top:100%;right:0;margin-top:.5rem;background:#fff;border-radius:8px;box-shadow:0 4px 20px #00000026;min-width:150px;opacity:0;visibility:hidden;transform:translateY(-10px);transition:all .2s;z-index:1000}.user-dropdown:hover .dropdown-menu{opacity:1;visibility:visible;transform:translateY(0)}.dropdown-menu button{width:100%;padding:.75rem 1rem;border:none;background:none;text-align:left;cursor:pointer;color:#0a1929;font-size:.9rem;transition:background .2s;border-radius:8px;pointer-events:auto;z-index:1001;position:relative}.dropdown-menu button:hover{background:#f5f7fa}.main-content{flex:1;padding:2rem;overflow-y:auto}@media (max-width: 1024px){.sidebar{width:240px}.main-wrapper{margin-left:240px}.sidebar.closed~.main-wrapper{margin-left:70px}.main-content{padding:1.5rem}}@media (max-width: 768px){.sidebar{width:280px;transform:translate(-100%);box-shadow:4px 0 20px #00000026}.sidebar.open{transform:translate(0)}.sidebar.closed{width:280px}.main-wrapper{margin-left:0;width:100%}.sidebar.closed~.main-wrapper{margin-left:0}.top-header{padding:.75rem 1rem;flex-wrap:wrap;gap:.5rem}.header-left{flex:1;min-width:0}.header-right{flex-wrap:wrap;gap:.5rem}.search-box{flex:1;min-width:0}.search-box input{width:100%;min-width:150px;font-size:.85rem;padding:.625rem .875rem}.user-info{display:none}.user-dropdown{gap:.5rem}.user-avatar{width:36px;height:36px;font-size:1rem}.notification-btn{font-size:1.25rem;padding:.375rem}.main-content{padding:1rem}.nav-item{padding:.875rem 1.25rem;font-size:.9rem}.nav-icon{font-size:1.1rem;width:22px}.sidebar-header{padding:1.25rem}.logo-img{height:45px}}@media (max-width: 480px){.sidebar{width:100%}.top-header{padding:.625rem .75rem}.search-box input{font-size:.8rem;padding:.5rem .75rem}.main-content{padding:.75rem}.nav-item{padding:.75rem 1rem}.user-avatar{width:32px;height:32px;font-size:.9rem}.notification-btn{font-size:1.1rem}}*{margin:0;padding:0;box-sizing:border-box}:root{--primary-color: #00d4ff;--secondary-color: #0a1929;--accent-color: #0099cc;--dark-navy: #1e3a5f;--text-light: #ffffff;--text-dark: #0a1929;--bg-light: #f8f9fa;--border-color: #e0e0e0}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:var(--bg-light);color:var(--text-dark)}code{font-family:source-code-pro,Menlo,Monaco,Consolas,Courier New,monospace}.btn-primary,button.btn-primary,.btn-primary-large,button.btn-primary-large{background:linear-gradient(135deg,#1976d2,#1565c0);border:none;color:#fff;padding:.875rem 1.75rem;border-radius:8px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .3s ease;box-shadow:0 2px 8px #1976d240;position:relative;overflow:hidden;z-index:1}.btn-primary:before,button.btn-primary:before,.btn-primary-large:before,button.btn-primary-large:before{content:"";position:absolute;top:0;left:-100%;width:100%;height:100%;background:linear-gradient(135deg,#1565c0,#0d47a1);transition:left .3s ease;z-index:-1}.btn-primary:hover,button.btn-primary:hover,.btn-primary-large:hover,button.btn-primary-large:hover{transform:translateY(-2px);box-shadow:0 4px 16px #1976d266}.btn-primary:hover:before,button.btn-primary:hover:before,.btn-primary-large:hover:before,button.btn-primary-large:hover:before{left:0}.btn-primary:active,button.btn-primary:active,.btn-primary-large:active,button.btn-primary-large:active{transform:translateY(0);box-shadow:0 2px 8px #1976d240}.btn-secondary,button.btn-secondary{background:#fff;border:2px solid #1976d2;color:#1976d2;padding:.875rem 1.75rem;border-radius:8px;font-weight:600;font-size:.95rem;cursor:pointer;transition:all .3s ease}.btn-secondary:hover,button.btn-secondary:hover{background:#1976d2;color:#fff;transform:translateY(-2px);box-shadow:0 4px 12px #1976d24d}.text-primary{color:var(--primary-color)!important}.bg-primary{background-color:var(--primary-color)!important}.bg-secondary{background-color:var(--secondary-color)!important}
