.topbar{position:sticky;top:0;z-index:1000;background-color:#fff;border-bottom:1px solid #e0e0e0;padding:.75rem 1rem;display:flex;align-items:center;justify-content:space-between;box-shadow:0 2px 4px #00000008}.menu-button{font-size:1.2rem;background:none;border:none;cursor:pointer}.topbar-right{display:flex;align-items:center;gap:1rem}.admin-label{font-weight:600;color:#333}.logout-btn{background-color:#f44336;color:#fff;border:none;padding:.4rem .75rem;border-radius:4px;cursor:pointer;font-size:.85rem}.logout-btn:hover{background-color:#d32f2f}.layout{display:flex;min-height:100vh;font-family:Arial,sans-serif}.sidebar{position:fixed;top:0;left:0;width:220px;height:100vh;background:#2c3e50;color:#fff;padding:1.5rem 1rem;z-index:1000;transition:left .3s ease}.sidebar h2{margin:0 0 2rem;font-size:1.4rem;text-align:center}.sidebar ul{list-style:none;padding:0;margin:0}.sidebar li{margin-bottom:1rem}.sidebar a{color:#fff;text-decoration:none;padding:.4rem .8rem;display:block;border-radius:4px}.sidebar a.active,.sidebar a:hover{background:#34495e}.main{margin-left:220px;width:calc(100% - 220px);display:flex;flex-direction:column;min-height:100vh}.content{padding:2rem;background:#f9f9f9;flex-grow:1}.topbar{background:#fff;padding:1rem 2rem;display:flex;justify-content:space-between;align-items:center;border-bottom:1px solid #ccc}.menu-button{font-size:1.5rem;background:none;border:none;cursor:pointer;margin-right:1rem;display:none}@media (max-width: 768px){.menu-button{display:block}.sidebar{left:-250px;width:220px;height:100%;padding-top:1rem;z-index:1000}.sidebar.open{left:0}.sidebar-backdrop{position:fixed;top:0;left:0;right:0;bottom:0;background:#0000004d;z-index:999}.main{margin-left:0;width:100%}}.sidebar-nav{list-style:none;padding:0;margin:0}.submenu-container{margin-top:10px}.submenu-header{color:#fff;text-decoration:none;padding:.4rem .8rem;display:block;border-radius:4px;cursor:pointer}.submenu-header:hover{color:#fff}.submenu{list-style:none;margin:5px 30px 30px;padding-right:24px}.submenu li{margin:6px 0}.submenu li a{text-decoration:none;color:#fff;font-size:14px;padding:6px 35px;display:block;border-radius:4px}.submenu li a:hover{background-color:#eaeaea;color:#000}.submenu li a.active{background-color:#007bff;color:#fff;font-weight:700}.auth-page{display:flex;justify-content:center;align-items:center;height:100vh;background:#f8f9fa}.auth-card{background:#fff;padding:2.5rem 2rem;border-radius:10px;box-shadow:0 0 20px #00000014;width:100%;max-width:400px;text-align:center}.auth-logo{width:100px;margin-bottom:1.5rem}.auth-card h2{margin-bottom:1.5rem;color:#333}.auth-card form{display:flex;flex-direction:column;gap:1rem}.auth-card input{padding:.75rem;border:1px solid #ccc;border-radius:6px;font-size:1rem}.auth-card button{padding:.75rem;background-color:#4a00e0;color:#fff;border:none;border-radius:6px;font-size:1rem;cursor:pointer;transition:background .3s ease}.auth-card button:hover{background-color:#3600a5}.error{color:red;font-size:.9rem}.dashboard{padding:1rem}.dashboard h1{font-size:1.6rem;margin-bottom:1.5rem}.dashboard-cards{display:grid;grid-template-columns:repeat(4,1fr);gap:1rem;margin-bottom:2rem}.card{background:#f5f5f5;padding:1rem;border-radius:8px;border:2px solid #ddd;box-shadow:0 4px 12px #0000001a;text-align:center;transition:transform .2s ease}.card:hover{transform:translateY(-3px)}.card h3{font-size:1rem;margin-bottom:.5rem}.card p{font-size:1.2rem;font-weight:700;margin:0}.dashboard-grid{display:flex;flex-wrap:wrap;gap:1rem}.dashboard-chart,.dashboard-recent{flex:1 1 300px;background:#fff;border-radius:8px;padding:1rem;border:1px solid #ddd;box-shadow:0 4px 12px #0000001a}.chart-placeholder{height:200px;background:#eaeaea;border-radius:6px;display:flex;align-items:center;justify-content:center;color:#888}.recent-list{list-style:none;padding:0;margin:0;display:grid;gap:.8rem}.recent-list li{background:#fdfdfd;border:2px solid #ddd;border-radius:6px;padding:.75rem;box-shadow:0 2px 6px #00000014;font-size:.95rem}@media (max-width: 768px){.dashboard-cards{grid-template-columns:repeat(2,1fr)}.card{padding:.8rem}.card h3{font-size:.85rem}.card p{font-size:1rem}.dashboard-grid{flex-direction:column}}@media (max-width: 480px){.dashboard-cards{grid-template-columns:repeat(2,1fr)}.card h3{font-size:.8rem}.card p{font-size:.95rem}.recent-list li{font-size:.9rem}}.dashboard-debtors{margin-top:2rem;background:#fff;border-radius:8px;padding:1rem;border:1px solid #ddd;box-shadow:0 4px 12px #0000001a}.dashboard-debtors h3{margin-bottom:1rem}.dashboard-debtors ul{list-style:none;padding:0;margin:0;display:grid;gap:.8rem}.dashboard-debtors li{background:#fefefe;border:2px solid #ddd;border-radius:6px;padding:.75rem;box-shadow:0 2px 6px #00000014;font-size:.95rem}.users-page{padding:1rem;max-width:100%}.users-page h2{margin-bottom:1.2rem;font-size:1.4rem}.user-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.user-filters input,.user-filters select{padding:.4rem .6rem;border-radius:4px;border:1px solid #ccc;flex:1;min-width:150px}.user-summary{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.5rem;margin-bottom:1.5rem}.summary-card{background:#f7f7f7;border:1px solid #ddd;border-left:4px solid #4a90e2;border-radius:6px;padding:.75rem;box-shadow:0 1px 2px #0000001a;font-size:.9rem;font-weight:700}.user-table{overflow-x:auto;background:#fff;border-radius:6px;box-shadow:0 2px 5px #0000001a;padding:1rem}.user-table table{width:100%;border-collapse:collapse}.user-table th,.user-table td{padding:.6rem;text-align:left;border-bottom:1px solid #eee;font-size:.9rem}.user-table th{background:#f5f5f5;font-weight:600}.user-table td button{margin-right:.3rem;padding:.3rem .5rem;font-size:.8rem;border:none;border-radius:4px;cursor:pointer;background:#eee}.user-table td button:hover{background:#ddd}@media (max-width: 768px){.user-summary{grid-template-columns:repeat(2,1fr)}.summary-card{font-size:.8rem;padding:.6rem}.user-table table,.user-table thead,.user-table tbody,.user-table th,.user-table td,.user-table tr{display:block}.user-table thead{display:none}.user-table tr{margin-bottom:1rem;border:1px solid #ddd;border-radius:6px;padding:.75rem;box-shadow:0 1px 3px #0000001a}.user-table td{display:flex;justify-content:space-between;padding:.4rem 0}.user-table td:before{content:attr(data-label);font-weight:700;flex:1;margin-right:.5rem}}.badge-approved{background-color:#d4edda;color:#155724}.badge-pending{background-color:#fff3cd;color:#856404}.badge-declined{background-color:#f8d7da;color:#721c24}.badge-approved{background-color:green;color:#fff}.badge-declined{background-color:red;color:#fff}.badge-pending{background-color:orange;color:#fff}.badge-verified{background-color:#28a745;color:#fff}.badge-unverified{background-color:#dc3545;color:#fff}.badge-incomplete{background-color:#fff;color:gray;padding:2px 6px;border-radius:4px}.user-details-modal{max-height:70vh;overflow-y:auto;display:flex;flex-direction:column;gap:1.5rem;padding-right:8px}.user-images{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap}.user-images img{border-radius:8px;object-fit:cover;border:1px solid #ddd;max-width:120px;max-height:120px}.user-info-sections section{margin-bottom:1.25rem}.user-info-sections h4{margin-bottom:.5rem;color:#444;font-size:1rem;border-bottom:1px solid #eee;padding-bottom:4px}.user-info-sections ul{list-style:none;padding-left:0;margin:0}.user-info-sections li{display:flex;justify-content:space-between;padding:6px 0;border-bottom:1px dashed #f0f0f0;font-size:.95rem}.user-info-sections li strong{flex:1;color:#333}.user-info-sections li span{flex:2;text-align:right;font-weight:500;color:#555}@media (max-width: 600px){.user-images img{max-width:90px;max-height:90px}.user-info-sections li{flex-direction:column;align-items:flex-start}.user-info-sections li span{text-align:left;margin-top:2px}}.user-details-modal{max-height:80vh;overflow-y:auto;padding:1rem}.user-image-row{display:flex;justify-content:center;gap:1rem;flex-wrap:wrap;margin-bottom:1rem}.user-photo,.user-id{max-width:180px;width:100%;height:auto;border-radius:8px;object-fit:cover;border:1px solid #ccc}.info-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:1rem}.info-grid section{background:#f9f9f9;padding:.75rem 1rem;border-radius:6px;box-shadow:0 0 4px #0000000d}.info-grid h4{margin-bottom:.5rem;color:#333;font-size:1.1rem}.modal-overlay{position:fixed;top:0;left:0;width:100%;height:100%;background:#00000073;display:flex;justify-content:center;align-items:center;z-index:1000}.modal{background:#fff;border-radius:8px;width:90%;max-width:500px;padding:1.5rem;box-shadow:0 10px 30px #00000040;animation:fadeIn .2s ease-in-out}.modal-header{display:flex;justify-content:space-between;align-items:center}.modal-header h3{margin:0}.modal-close{background:none;border:none;font-size:1.3rem;cursor:pointer}.modal-content{margin-top:1rem}@keyframes fadeIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.edit-user-modal .form-group{display:flex;flex-direction:column;gap:4px;margin-bottom:12px}.edit-user-modal label{font-size:14px;color:#333;font-weight:500}.edit-user-modal input,.edit-user-modal select{padding:8px 10px;font-size:14px;border:1px solid #ccc;border-radius:4px;background-color:#fff;width:100%;box-sizing:border-box}.edit-user-modal input[type=checkbox]{margin-right:8px;width:auto}.edit-user-modal .form-group label input[type=checkbox]{display:inline-block;vertical-align:middle;margin-right:6px}.edit-user-modal .actions{display:flex;justify-content:flex-end;gap:10px;margin-top:24px}.edit-user-modal button{padding:10px 16px;font-size:14px;border:none;border-radius:4px;cursor:pointer}.edit-user-modal button:first-of-type{background-color:#ccc;color:#333}.edit-user-modal button:last-of-type{background-color:#00b894;color:#fff}.loan-section{margin-bottom:1.5rem;border-bottom:1px solid #ddd;padding-bottom:1rem}.loan-section h4{margin-top:0;font-size:1.1rem;color:#333}.loan-photo{max-width:120px;margin-right:10px;border:1px solid #ccc;border-radius:4px}.loans-page{padding:1rem;max-width:100%}.loans-page h2{margin-bottom:1.2rem;font-size:1.4rem}.loan-filters{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1rem}.loan-filters input,.loan-filters select{padding:.4rem .6rem;border-radius:4px;border:1px solid #ccc;flex:1;min-width:150px}.loan-summary{display:grid;grid-template-columns:repeat(auto-fill,minmax(120px,1fr));gap:.5rem;margin-bottom:1.5rem}.summary-card{background:#f7f7f7;border:1px solid #ddd;border-left:4px solid #00cec9;border-radius:6px;padding:.75rem;box-shadow:0 1px 2px #0000001a;font-size:.9rem;font-weight:700}.loan-table{overflow-x:auto;background:#fff;border-radius:6px;box-shadow:0 2px 5px #0000001a;padding:1rem}.loan-table table{width:100%;border-collapse:collapse}.loan-table th,.loan-table td{padding:.6rem;text-align:left;border-bottom:1px solid #eee;font-size:.9rem}.loan-table th{background:#f5f5f5;font-weight:600}.loan-table td button{margin-right:.3rem;padding:.3rem .5rem;font-size:.8rem;border:none;border-radius:4px;cursor:pointer;background:#eee}.loan-table td button:hover{background:#ddd}@media (max-width: 768px){.loan-summary{grid-template-columns:repeat(2,1fr)}.summary-card{font-size:.8rem;padding:.6rem}.loan-table table,.loan-table thead,.loan-table tbody,.loan-table th,.loan-table td,.loan-table tr{display:block}.loan-table thead{display:none}.loan-table tr{margin-bottom:1rem;border:5px solid #ddd;border-radius:6px;padding:.75rem;box-shadow:0 1px 3px #0000001a;background-color:#fff}.loan-table td{display:flex;border:5px solid #ddd;justify-content:space-between;padding:.4rem 0}.loan-table td:before{content:attr(data-label);font-weight:700;flex:1;margin-right:.5rem;color:#444}}.status-badge{padding:4px 8px;border-radius:4px;font-weight:700;text-transform:capitalize}.status-badge.pending{background-color:#fff3cd;color:#856404}.status-badge.approved{background-color:#d4edda;color:#155724}.status-badge.declined{background-color:#f8d7da;color:#721c24}.status-badge.running{background-color:#e0f7fa;color:#00796b}.status-badge.overdue{background-color:#fbe9e7;color:#d84315}.status-badge.cleared{background-color:#e8f5e9;color:#2e7d32}.pagination-controls{margin-top:1.5rem;display:flex;gap:8px;flex-wrap:wrap;justify-content:center}.pagination-controls button{padding:6px 12px;border:1px solid #ccc;background:#fff;border-radius:4px;cursor:pointer}.pagination-controls .active{background:#0984e3;color:#fff;font-weight:700}.pagination-dropdown{margin-top:1rem;text-align:right;font-size:.9rem}.pagination-dropdown select{padding:4px 8px;border-radius:4px;border:1px solid #ccc}.loan-table-desktop{display:block}.loan-cards-mobile{display:none}@media (max-width: 768px){.loan-table-desktop{display:none}.loan-cards-mobile{display:block}.loan-card{background:#fff;border-radius:8px;box-shadow:0 2px 5px #0000001a;padding:1rem;margin-bottom:1rem;font-size:.9rem}.loan-card>div{margin-bottom:.5rem}.card-actions{display:flex;gap:.5rem;flex-wrap:wrap}.card-actions button{flex:1;padding:.4rem .6rem;font-size:.85rem;border:none;border-radius:4px;background:#eee;cursor:pointer}.card-actions button:hover{background:#ddd}}@media (min-width: 769px){.loan-cards-mobile{display:none}.loan-table-desktop{display:block}.loan-table td button{padding:.3rem .5rem;font-size:.8rem}}.page-container{padding:24px;background-color:#f9f9f9;min-height:100vh}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.page-header h2{font-size:24px;margin:0}.pagination-controls{display:flex;align-items:center;gap:8px}.pagination-controls select{padding:4px 8px;border-radius:4px;border:1px solid #ccc}.table-container{overflow-x:auto;background:#fff;border-radius:8px;box-shadow:0 1px 4px #00000014}table{width:100%;border-collapse:collapse;min-width:900px}th,td{padding:12px 16px;text-align:left;border-bottom:1px solid #eee}th{background-color:#f4f4f4;font-weight:600;color:#333}td{font-size:14px;color:#444}.status{padding:4px 10px;border-radius:12px;font-weight:500;text-transform:capitalize;font-size:13px}.status.pending{background-color:#fff7e6;color:#b37f00;border:1px solid #ffe58f}.status.approved{background-color:#f6ffed;color:#389e0d;border:1px solid #b7eb8f}.status.rejected{background-color:#fff1f0;color:#cf1322;border:1px solid #ffa39e}.approve-btn,.reject-btn{padding:6px 10px;font-size:13px;margin-right:6px;border:none;border-radius:4px;cursor:pointer}.approve-btn{background-color:#4caf50;color:#fff}.reject-btn{background-color:#f44336;color:#fff}.approve-btn:hover{background-color:#3e8e41}.reject-btn:hover{background-color:#d32f2f}.pagination-buttons{display:flex;justify-content:center;align-items:center;gap:12px;margin-top:20px}.pagination-buttons button{padding:6px 12px;font-size:14px;border:1px solid #ccc;background:#fff;cursor:pointer;border-radius:4px}.pagination-buttons button:disabled{opacity:.5;cursor:not-allowed}.repayment-history-page{padding:2rem}.repayment-filters{display:flex;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.repayment-filters input,.repayment-filters select{padding:8px;font-size:14px;min-width:200px}.repayment-table table{width:100%;border-collapse:collapse}.repayment-table th,.repayment-table td{padding:10px;border:1px solid #ddd;font-size:14px;text-align:left}.repayment-table th{background-color:#f2f2f2}.pagination-controls{margin-top:1rem;display:flex;flex-wrap:wrap;gap:6px}.pagination-controls button{padding:6px 12px;border:none;background:#eee;cursor:pointer}.pagination-controls button.active{background:#333;color:#fff}.settings-page{padding:1rem;max-width:700px;margin:0 auto}.settings-page h2{font-size:1.6rem;margin-bottom:1.5rem}.settings-form{display:flex;flex-direction:column;gap:1rem}.form-group{display:flex;flex-direction:column}.form-group label{font-weight:500;margin-bottom:.3rem}.form-group input,.form-group select,.form-group textarea{padding:.5rem;border-radius:4px;border:1px solid #ccc}.loan-terms-section{margin-top:2rem}.loan-terms-section h4{margin-bottom:.5rem}.loan-term-group{display:flex;gap:.5rem;margin-bottom:.5rem}.loan-term-group input,.loan-term-group select{flex:1;padding:.4rem;border:1px solid #ccc;border-radius:4px}.add-term-btn{background:#ddd;border:none;padding:.4rem 1rem;border-radius:4px;cursor:pointer}.save-btn{background-color:#00b894;color:#fff;padding:.7rem 1.4rem;border:none;border-radius:4px;cursor:pointer;margin-top:1rem}.analytics-page{padding:1rem;max-width:100%}.analytics-page h2{margin-bottom:1.5rem;font-size:1.5rem}.analytics-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:1rem;margin-bottom:2rem}.summary-card{background:#f5f5f5;padding:1rem;border-radius:6px;box-shadow:0 1px 3px #0000001a;font-weight:700}.analytics-filter{margin-bottom:1.5rem;display:flex;align-items:center;gap:.5rem}.analytics-filter select{padding:.4rem;border-radius:4px;border:1px solid #ccc}.analytics-chart{background:#fff;padding:1rem;border-radius:6px;box-shadow:0 1px 3px #0000001a}.analytics-page{padding:20px}.analytics-summary{display:grid;grid-template-columns:repeat(auto-fit,minmax(280px,1fr));gap:20px;margin-bottom:20px}.summary-card{background:#fff;padding:15px 20px;border-radius:10px;box-shadow:0 2px 8px #0000000d;font-size:16px;line-height:1.5;white-space:normal;word-break:break-word}.roles-page{padding:1rem}.roles-page h2{margin-bottom:1rem;font-size:1.4rem}.add-role-form{display:flex;flex-wrap:wrap;gap:.5rem;margin-bottom:1.5rem}.add-role-form input,.add-role-form select{padding:.5rem;border-radius:4px;border:1px solid #ccc;flex:1 1 180px}.add-role-form button{background:#00b894;color:#fff;border:none;padding:.5rem 1rem;border-radius:4px;cursor:pointer}.role-table{width:100%;border-collapse:collapse}.role-table th,.role-table td{text-align:left;padding:.75rem;border-bottom:1px solid #eee}body{margin:0;font-family:Arial,sans-serif}.layout{display:flex}.sidebar{width:220px;background:#2c3e50;color:#fff;min-height:100vh;padding:1rem}.sidebar h2{margin-top:0}.sidebar ul{list-style:none;padding:0}.sidebar li{margin:1rem 0}.sidebar a{color:#fff;text-decoration:none}.sidebar a:hover{text-decoration:underline}.content{padding:2rem;flex-grow:1}
