@import"https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.4.0/css/all.min.css";:root{--primary: #4361ee;--secondary: #3f37c9;--success: #28a745;--warning: #f72585;--danger: #dc3545;--info: #4895ef;--purple: #7209b7;--dark-purple: #5a189a;--light: #f8f9fa;--dark: #212529;--sidebar-bg: #0d47a1;--sidebar-width: 80px;--gray: #6c757d;--light-gray: #e9ecef}*{margin:0;padding:0;box-sizing:border-box;font-family:Segoe UI,Tahoma,Geneva,Verdana,sans-serif}body{background-color:#f5f7fb;color:var(--dark);line-height:1.6;min-height:100vh;overflow-x:hidden}.text-center{text-align:center}.d-flex{display:flex}.align-items-center{align-items:center}.justify-content-between{justify-content:space-between}.mb-3{margin-bottom:1rem}.mt-3{margin-top:1rem}.gap-2{gap:.5rem}.btn{padding:10px 15px;border:none;border-radius:8px;cursor:pointer;font-weight:600;display:inline-flex;align-items:center;justify-content:center;gap:8px;transition:all .2s;text-decoration:none;white-space:nowrap}.btn:disabled{opacity:.6;cursor:not-allowed}.btn-sm{padding:8px 12px;font-size:14px;border-radius:6px;min-width:36px;min-height:36px;display:inline-flex;align-items:center;justify-content:center;cursor:pointer;border:none}.action-buttons{display:flex;gap:8px;flex-wrap:nowrap;align-items:center}.action-buttons .btn-sm{padding:8px 12px;font-size:14px;border-radius:6px;min-width:36px;min-height:36px;display:flex;align-items:center;justify-content:center;transition:all .2s ease;cursor:pointer;border:none;box-shadow:0 2px 4px #0000001a}.action-buttons .btn-sm i{font-size:14px}.action-buttons .btn-sm:hover{transform:scale(1.1);box-shadow:0 4px 8px #0003}.btn-primary{background:linear-gradient(135deg,#4361ee,#3b52d4);color:#fff;border:none}.btn-primary:hover{box-shadow:0 4px 12px #4361ee66}.btn-secondary{background:linear-gradient(135deg,#6c757d,#5a6268);color:#fff;border:none}.btn-secondary:hover{box-shadow:0 4px 12px #6c757d66}.btn-success{background:linear-gradient(135deg,#10b981,#059669);color:#fff;border:none}.btn-success:hover{box-shadow:0 4px 12px #10b98166}.btn-warning{background:linear-gradient(135deg,#f59e0b,#d97706);color:#fff;border:none}.btn-warning:hover{box-shadow:0 4px 12px #f59e0b66}.btn-danger{background:linear-gradient(135deg,#ef4444,#dc2626);color:#fff;border:none}.btn-danger:hover{box-shadow:0 4px 12px #ef444466}.btn-info{background:linear-gradient(135deg,#06b6d4,#0891b2);color:#fff;border:none}.btn-info:hover{box-shadow:0 4px 12px #06b6d466}.btn-dark{background:linear-gradient(135deg,#374151,#1f2937);color:#fff;border:none}.btn-dark:hover{box-shadow:0 4px 12px #37415166}.btn-purple{background:linear-gradient(135deg,#7c3aed,#6d28d9);color:#fff;border:none}.btn-purple:hover{box-shadow:0 4px 12px #7c3aed66}.btn:hover:not(:disabled){opacity:.95;transform:translateY(-2px)}.card{background:#fff;border-radius:10px;padding:20px;box-shadow:0 4px 6px #0000000d;margin-bottom:20px}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:15px;padding-bottom:10px;border-bottom:1px solid var(--light-gray)}.card-title{font-size:1.2rem;font-weight:600;color:var(--dark)}.form-group{margin-bottom:15px}.form-group label{display:block;margin-bottom:5px;font-weight:600}.form-control{width:100%;padding:10px;border:1px solid var(--light-gray);border-radius:8px;font-size:1rem}.form-control:focus{outline:none;border-color:var(--primary);box-shadow:0 0 0 3px #4361ee33}.form-control:read-only{background-color:#e9ecef}.form-row{display:flex;gap:15px}.form-col{flex:1}.table{width:100%;border-collapse:collapse;margin-bottom:20px;white-space:nowrap}.table th,.table td{padding:12px 15px;text-align:left;border-bottom:1px solid var(--light-gray)}.table th{background-color:var(--light);font-weight:600}.table tbody tr:hover{background-color:#fcfcfc}.table-responsive{overflow-x:auto;-webkit-overflow-scrolling:touch}.badge{padding:5px 10px;border-radius:20px;font-size:.8rem;font-weight:600}.badge-success{background:#d4edda;color:#155724}.badge-danger{background:#f8d7da;color:#721c24}.badge-warning{background:#fff3cd;color:#856404}.badge-primary{background:#cce5ff;color:#004085}.badge-info{background:#d1ecf1;color:#0c5460}.badge-secondary{background:#e2e3e5;color:#383d41}.badge-dark{background:#d6d8d9;color:#1b1e21}.badge-purple{background:#e2d9f3;color:#4a1e7a}.filter-controls{display:flex;gap:15px;margin-bottom:20px;flex-wrap:wrap;align-items:flex-end}.filter-controls .form-group{margin-bottom:0;flex:1;min-width:150px}.filter-controls .button-group{flex:0 1 auto;display:flex;gap:10px}.category-tools{background:#cce5ff!important;color:#004085!important}.category-petrol{background:#d4edda!important;color:#155724!important}.category-rent{background:#fff3cd!important;color:#856404!important}.category-utilities{background:#d1ecf1!important;color:#0c5460!important}.category-marketing{background:#e2d9f3!important;color:#4a1e7a!important}.category-other{background:#e2e3e5!important;color:#383d41!important}.spinner{width:24px;height:24px;border:3px solid var(--light-gray);border-top-color:var(--primary);border-radius:50%;animation:spin 1s linear infinite;margin:0 auto}@keyframes spin{to{transform:rotate(360deg)}}.toast{position:fixed;bottom:20px;right:20px;padding:15px 20px;background:var(--dark);color:#fff;border-radius:8px;opacity:0;transform:translateY(20px);transition:.3s;z-index:3000;pointer-events:none}.toast.show{opacity:1;transform:translateY(0);pointer-events:auto}.toast.success{background:var(--success)}.toast.error{background:var(--danger)}@media (max-width: 992px){.card{padding:15px;margin-bottom:15px}.card-header{flex-direction:column;gap:10px;align-items:flex-start}}@media (max-width: 768px){:root{--sidebar-width: 60px}body{font-size:14px}.form-row{flex-direction:column;gap:0}.filter-controls{flex-direction:column;align-items:stretch;gap:10px}.filter-controls .form-group{min-width:100%}.filter-controls .button-group{justify-content:space-between;flex-wrap:wrap}.btn{padding:8px 12px;font-size:13px}.card{padding:12px;border-radius:8px}.card-title{font-size:1rem}.table th,.table td{padding:8px 10px;font-size:12px}.badge{padding:3px 8px;font-size:10px}.form-control{padding:8px 10px;font-size:14px}.card-header .btn,.button-group .btn,.table .btn{width:auto;margin-bottom:0;padding:6px 10px}.btn-sm{padding:4px 8px;font-size:11px}}@media (max-width: 576px){body{font-size:13px}.card{padding:10px;margin-bottom:10px;border-radius:6px}.card-header{margin-bottom:10px;padding-bottom:8px}.card-title{font-size:.95rem}.btn{padding:8px 10px;font-size:12px;gap:5px}.btn-sm{padding:4px 6px;font-size:10px}.table th,.table td{padding:6px 8px;font-size:11px}.table th{font-size:10px;text-transform:uppercase;letter-spacing:.5px}.form-control{padding:8px;font-size:13px;border-radius:6px}.form-group{margin-bottom:10px}.form-group label{font-size:12px;margin-bottom:4px}.filter-controls{gap:8px}.filter-controls .button-group{gap:5px}.badge{padding:2px 6px;font-size:9px;border-radius:10px}.d-none-mobile{display:none!important}.input-group-text{padding:8px 10px;font-size:12px}.modal-content{width:95%;max-height:85vh;margin:10px;border-radius:10px}}@media (max-width: 400px){body{font-size:12px}.card{padding:8px}.card-title{font-size:.9rem}.table th,.table td{padding:5px 6px;font-size:10px}.btn{padding:6px 8px;font-size:11px}.form-control{padding:6px 8px;font-size:12px}}.modal{display:none;position:fixed;z-index:1050;left:0;top:0;width:100%;height:100%;overflow:hidden;background-color:#00000080;align-items:center;justify-content:center;opacity:0;transition:opacity .3s ease-in-out;pointer-events:none}.modal.show{display:flex!important;opacity:1;pointer-events:auto}.modal-content{background-color:#fff;margin:auto;padding:0;border:none;width:90%;max-width:500px;border-radius:12px;position:relative;box-shadow:0 5px 15px #0000004d;max-height:90vh;display:flex;flex-direction:column;animation:slideDown .3s ease-out}@keyframes slideDown{0%{transform:translateY(-30px);opacity:0}to{transform:translateY(0);opacity:1}}.input-group{display:flex;align-items:stretch}.input-group-text{background:#e9ecef;padding:10px 15px;border:1px solid #e9ecef;border-right:none;border-radius:8px 0 0 8px;color:#495057;font-weight:500;display:flex;align-items:center}.input-group .form-control{border-radius:0 8px 8px 0!important}
