@import"https://rsms.me/inter/inter.css";:root{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Helvetica Neue,sans-serif;line-height:1.5;font-weight:400;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;--color-primary: #0176d3;--color-primary-dark: #015ab8;--color-primary-light: #f0f7ff;--color-dark: #181818;--color-gray: #706e6b;--color-light-gray: #f8f9fa;--color-border: #e0e0e0;--color-success: #28a745;--color-danger: #dc3545;--color-warning: #ffc107;--status-active: #0d47a1;--status-active-bg: #e3f2fd;--status-pending: #e65100;--status-pending-bg: #fff3e0;--status-closed: #1b5e20;--status-closed-bg: #e8f5e9;--status-inactive: #c62828;--status-inactive-bg: #ffebee;--status-written-off: #c62828;--status-written-off-bg: #ffebee;--spacing-xs: .25rem;--spacing-sm: .5rem;--spacing-md: 1rem;--spacing-lg: 1.5rem;--spacing-xl: 2rem;--spacing-2xl: 3rem;--radius-sm: 4px;--radius-md: 8px;--radius-lg: 12px;--radius-full: 9999px;--shadow-sm: 0 1px 2px rgba(0, 0, 0, .05);--shadow-md: 0 2px 4px rgba(0, 0, 0, .1);--shadow-lg: 0 4px 12px rgba(0, 0, 0, .15);--shadow-xl: 0 10px 40px rgba(0, 0, 0, .3);--transition-fast: .15s ease;--transition-normal: .3s ease;--transition-slow: .5s ease}*{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;height:100%;margin:0;padding:0}body{margin:0;min-width:320px;min-height:100vh;background-color:#fff;color:var(--color-dark)}#root{width:100%;height:100%}h1{font-size:2rem;font-weight:600;line-height:1.2;color:var(--color-dark)}h2{font-size:1.75rem;font-weight:600;line-height:1.3;color:var(--color-dark)}h3{font-size:1.5rem;font-weight:600;line-height:1.3;color:var(--color-dark)}h4{font-size:1.25rem;font-weight:600;line-height:1.4;color:var(--color-dark)}h5{font-size:1.1rem;font-weight:600;line-height:1.4;color:var(--color-dark)}h6{font-size:1rem;font-weight:600;line-height:1.5;color:var(--color-dark)}p{margin-bottom:1rem;color:var(--color-dark)}a{color:var(--color-primary);text-decoration:none;transition:color var(--transition-fast)}a:hover{color:var(--color-primary-dark)}.dashboard-page,.loans-page,.clients-page,.payment-entry-page,.repayments-page,.reports-page,.fees-page{background-color:var(--color-light-gray);min-height:100vh;padding:2rem}.page-header{background-color:var(--color-primary)!important;color:#fff!important;padding:1.5rem 2rem;border-radius:var(--radius-md);margin-bottom:2rem;display:flex;justify-content:space-between;align-items:center;box-shadow:0 2px 4px #0176d326}.page-header h1{color:#fff!important;font-size:1.75rem;margin:0;font-weight:600}.page-header h2{color:#fff!important}.page-header p{color:#ffffffe6!important;margin:.5rem 0 0;font-size:.95rem}.page-header-actions{display:flex;gap:1rem;align-items:center}button{font-family:"Inter",inherit;border-radius:var(--radius-md);border:1px solid transparent;padding:.75rem 1.25rem;font-size:.95rem;font-weight:500;background-color:var(--color-primary);color:#fff;cursor:pointer;transition:all var(--transition-fast);display:inline-flex;align-items:center;justify-content:center;gap:.5rem}button:hover{background-color:var(--color-primary-dark);box-shadow:0 2px 8px #0176d333}button:active{transform:translateY(1px)}button:disabled{background-color:#ccc;cursor:not-allowed;opacity:.6}.btn-primary{background-color:var(--color-primary);color:#fff}.btn-primary:hover{background-color:var(--color-primary-dark)}.btn-secondary{background-color:var(--color-light-gray);color:var(--color-dark);border:1px solid var(--color-border)}.btn-secondary:hover{background-color:#f0f0f0;border-color:var(--color-primary)}.btn-sm{background-color:transparent!important;color:var(--color-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.4rem .8rem;font-size:.8rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast);margin:0 .25rem;display:inline-flex;align-items:center}.btn-sm:hover{background-color:var(--color-primary-light)!important;border-color:var(--color-primary);color:var(--color-primary-dark)}.btn-danger{background-color:var(--color-danger)}.btn-danger:hover{background-color:#c82333}.btn-success{background-color:var(--color-success)}.btn-success:hover{background-color:#218838}.loans-controls,.clients-controls{display:flex;justify-content:space-between;align-items:center;padding:0 0 1rem;flex-wrap:wrap;gap:1rem;margin-bottom:1rem}.loans-search,.clients-search{flex:1;min-width:250px}.loans-search input,.clients-search input{width:100%;padding:.75rem;border:1px solid var(--color-border);border-radius:var(--radius-md);font-size:.95rem;color:var(--color-dark)}.loans-search input:focus,.clients-search input:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #0176d31a}.loans-filters,.clients-filters{display:flex;gap:1rem;flex-wrap:wrap;align-items:center}.status-filter-group{display:flex;align-items:center;gap:.5rem}.status-label{color:var(--color-gray);font-size:.9rem;font-weight:500}.filter-btn{background-color:#fff;color:var(--color-dark);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.5rem 1rem;font-size:.85rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast);text-transform:capitalize;display:inline-flex;align-items:center}.filter-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.filter-btn.active{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.export-group{display:flex;gap:.5rem}input,textarea,select{font-family:"Inter",inherit;font-size:.95rem;padding:.75rem 1rem;border:1px solid var(--color-border);border-radius:var(--radius-md);background-color:#fff;color:var(--color-dark);transition:all var(--transition-fast);width:100%}input:focus,textarea:focus,select:focus{outline:none;border-color:var(--color-primary);box-shadow:0 0 0 3px #0176d31a}input:disabled,textarea:disabled,select:disabled{background-color:var(--color-light-gray);cursor:not-allowed;opacity:.6}.table-container{padding:0;overflow-x:auto;background:#fff;border-radius:var(--radius-md);box-shadow:0 2px 4px #0000000d}.table-stats{padding:1rem;background:var(--color-light-gray);border-bottom:1px solid var(--color-border);font-size:.9rem;color:var(--color-gray);font-weight:500}table{width:100%;border-collapse:collapse;background-color:#fff;font-size:.95rem}thead{background-color:#f3f2f2;color:var(--color-dark)}th{padding:.75rem 1rem;text-align:left;font-weight:600;border-bottom:2px solid var(--color-border);font-size:.9rem;-webkit-user-select:none;user-select:none}th[style*="cursor: pointer"]{color:var(--color-primary);font-weight:700;cursor:pointer}th[style*="cursor: pointer"]:hover{background-color:var(--color-primary-light)}td{padding:.75rem 1rem;border-bottom:1px solid var(--color-border);font-size:.9rem;color:var(--color-dark)}.loans-table,.clients-table{width:100%;border-collapse:collapse;background:#fff}.loans-table th,.clients-table th{background-color:#f3f2f2;color:var(--color-dark);font-weight:600;text-align:left;padding:.75rem 1rem;border-bottom:2px solid var(--color-border);font-size:.9rem}.loans-table td,.clients-table td{padding:.75rem 1rem;border-bottom:1px solid var(--color-border);font-size:.9rem;color:var(--color-dark)}.action-cell{display:flex;gap:.5rem;align-items:center}.action-cell .btn-sm{background-color:transparent!important;color:var(--color-primary);border:1px solid var(--color-border);margin:0}.action-cell .btn-sm:hover{background-color:var(--color-primary-light)!important}.loans-table tbody tr:hover,.clients-table tbody tr:hover{background-color:var(--color-primary);cursor:pointer}.loans-table tbody tr:hover td,.clients-table tbody tr:hover td{color:#fff}.loans-table tbody tr:hover .action-cell .btn-sm,.clients-table tbody tr:hover .action-cell .btn-sm{background-color:transparent!important;color:#fff;border-color:#fff}.loans-table tbody tr:hover .action-cell .btn-sm:hover,.clients-table tbody tr:hover .action-cell .btn-sm:hover{background-color:#fff!important;color:var(--color-primary);border-color:#fff}.loans-table tbody tr:hover .loan-link,.loans-table tbody tr:hover .client-link,.clients-table tbody tr:hover .loan-link,.clients-table tbody tr:hover .client-link{color:#fff;text-decoration:underline}.loan-link,.client-link{background:none;border:none;color:var(--color-primary);font-weight:500;cursor:pointer;text-decoration:none;padding:0;font-size:inherit;transition:all var(--transition-fast)}.loan-link:hover,.client-link:hover{color:var(--color-primary-dark);text-decoration:underline}.status-badge{padding:.25rem .75rem;border-radius:12px;font-size:.85rem;font-weight:600;display:inline-block;text-transform:uppercase;letter-spacing:.02em}.status-badge.active{background-color:var(--status-active-bg);color:var(--status-active)}.status-badge.pending{background-color:var(--status-pending-bg);color:var(--status-pending)}.status-badge.closed{background-color:var(--status-closed-bg);color:var(--status-closed)}.status-badge.inactive{background-color:var(--status-inactive-bg);color:var(--status-inactive)}.status-badge.written-off{background-color:var(--status-written-off-bg);color:var(--status-written-off)}.loans-table tbody tr:hover .status-badge,.clients-table tbody tr:hover .status-badge{background-color:#ffffff4d;color:#fff}.pagination-controls{display:flex;justify-content:space-between;align-items:center;padding:1.5rem;background:var(--color-light-gray);border-top:1px solid var(--color-border);border-radius:0 0 var(--radius-md) var(--radius-md);margin-top:-1px;gap:1rem}.page-size-selector{display:flex;align-items:center;gap:.75rem}.page-size-selector span{font-size:.9rem;color:var(--color-gray);font-weight:500}.page-size-btn{background-color:#fff;color:var(--color-dark);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.4rem .8rem;font-size:.85rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast);min-width:40px;display:inline-flex;align-items:center;justify-content:center}.page-size-btn:hover{border-color:var(--color-primary);color:var(--color-primary)}.page-size-btn.active{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}.pagination-nav{display:flex;align-items:center;gap:1rem}.btn-pagination{background-color:#fff;color:var(--color-primary);border:1px solid var(--color-border);border-radius:var(--radius-md);padding:.5rem 1rem;font-size:.9rem;font-weight:500;cursor:pointer;transition:all var(--transition-fast);display:inline-flex;align-items:center}.btn-pagination:hover:not(:disabled){background-color:var(--color-primary-light);border-color:var(--color-primary);color:var(--color-primary-dark)}.btn-pagination:disabled{opacity:.5;cursor:not-allowed;color:var(--color-gray)}.page-info{font-size:.9rem;color:var(--color-dark)!important;font-weight:600;min-width:140px;text-align:center;background-color:#fff;padding:.5rem 1rem;border-radius:var(--radius-md);border:1px solid var(--color-border)}.card{background-color:#fff;border:1px solid var(--color-border);border-radius:var(--radius-md);padding:1.5rem;box-shadow:var(--shadow-sm);transition:all var(--transition-normal)}.card:hover{box-shadow:var(--shadow-md);border-color:var(--color-primary)}.modal-overlay{position:fixed;inset:0;background:#00000080;display:flex;align-items:center;justify-content:center;z-index:1000;animation:fadeIn .2s ease}.modal-content{background:#fff;border-radius:var(--radius-lg);padding:2rem;max-width:600px;width:95%;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl);animation:slideUp .3s ease}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes slideUp{0%{transform:translateY(20px);opacity:0}to{transform:translateY(0);opacity:1}}.text-center{text-align:center}.text-right{text-align:right}.text-left{text-align:left}.text-muted{color:var(--color-gray)}.font-bold{font-weight:600}.font-light{font-weight:400}.gap-1{gap:var(--spacing-sm)}.gap-2{gap:var(--spacing-md)}.gap-3{gap:var(--spacing-lg)}.mb-0{margin-bottom:0}.mb-1{margin-bottom:var(--spacing-sm)}.mb-2{margin-bottom:var(--spacing-md)}.mb-3{margin-bottom:var(--spacing-lg)}.mb-4{margin-bottom:var(--spacing-xl)}.mt-0{margin-top:0}.mt-1{margin-top:var(--spacing-sm)}.mt-2{margin-top:var(--spacing-md)}.mt-3{margin-top:var(--spacing-lg)}.mt-4{margin-top:var(--spacing-xl)}.p-0{padding:0}.p-1{padding:var(--spacing-sm)}.p-2{padding:var(--spacing-md)}.p-3{padding:var(--spacing-lg)}.p-4{padding:var(--spacing-xl)}.hidden{display:none}.loading-state,.empty-state{text-align:center;padding:3rem;color:var(--color-gray);font-size:.95rem}@media(max-width:1024px){:root{--spacing-lg: 1.25rem;--spacing-xl: 1.5rem}h1{font-size:1.75rem}h2{font-size:1.5rem}h3{font-size:1.25rem}}@media(max-width:768px){:root{--spacing-md: .875rem;--spacing-lg: 1rem;--spacing-xl: 1.5rem}h1{font-size:1.5rem}h2{font-size:1.25rem}h3{font-size:1.1rem}button{width:100%}input,textarea,select{font-size:16px}table{font-size:.85rem}th,td{padding:.75rem .5rem}.modal-content{width:95%;padding:1.5rem}.page-header{flex-direction:column;align-items:flex-start;gap:1rem}.loans-controls,.clients-controls{flex-direction:column;align-items:stretch}.loans-search,.clients-search{width:100%}.loans-filters,.clients-filters{width:100%;justify-content:space-between}.pagination-controls{flex-direction:column;align-items:stretch}.page-size-selector,.pagination-nav{justify-content:center;width:100%}.page-info{width:100%}}@media(max-width:480px){:root{--spacing-sm: .375rem;--spacing-md: .75rem;--spacing-lg: .875rem}h1{font-size:1.25rem}h2{font-size:1.1rem}h3{font-size:1rem}button{padding:.625rem 1rem;font-size:.875rem}input,textarea,select{padding:.625rem .875rem;font-size:16px}table{font-size:.75rem}th,td{padding:.5rem}.modal-content{width:100%;margin:1rem;padding:1rem}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#888;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#555}@media print{body{background-color:#fff}.no-print{display:none}}
