:root{--primary-green: #28a745;--sidebar-bg: #f8f9fa;--header-bg: #ffffff;--text-muted: #6c757d}body{margin:0;padding:0;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background-color:#f5f5f5}*{box-sizing:border-box}::-webkit-scrollbar{width:8px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.fade-in{animation:fadeIn .3s ease-in}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.slide-in{animation:slideIn .3s ease-out}@keyframes slideIn{0%{transform:translateY(-10px);opacity:0}to{transform:translateY(0);opacity:1}}.spinner-border-sm{width:1rem;height:1rem}.btn{border-radius:8px;font-weight:500;transition:all .2s ease}.btn:hover{transform:translateY(-1px)}.card{transition:all .2s ease;border-radius:12px}.card:hover{transform:translateY(-2px);box-shadow:0 4px 20px #0000001a}.form-control,.form-select{border-radius:8px;border:1px solid #dee2e6;transition:all .2s ease}.form-control:focus,.form-select:focus{border-color:#28a745;box-shadow:0 0 0 .2rem #28a74540}.table{border-radius:8px;overflow:hidden}.table th{background-color:#f8f9fa;border-bottom:2px solid #dee2e6;font-weight:600}.modal-content{border-radius:12px;border:none;box-shadow:0 10px 40px #00000026}.modal-header{border-bottom:1px solid #dee2e6;border-radius:12px 12px 0 0}.modal-footer{border-top:1px solid #dee2e6;border-radius:0 0 12px 12px}.badge{font-weight:500;border-radius:6px}.alert{border-radius:8px;border:none}.pagination .page-link{border-radius:6px;margin:0 2px;border:1px solid #dee2e6}.pagination .page-item.active .page-link{background-color:#28a745;border-color:#28a745}.chart-container{position:relative;height:400px;margin:1rem 0}.topbar{background-color:var(--header-bg);border-bottom:1px solid #dee2e6;padding:.5rem 1rem;position:sticky;top:0;z-index:999}.user-info{display:flex;align-items:center}.user-avatar{width:32px;height:32px;border-radius:50%;background-color:#007bff;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;margin-right:10px}@media (max-width: 768px){.sidebar{margin-left:-250px}.sidebar.show,.main-content{margin-left:0}.mobile-toggle{display:block!important}}.mobile-toggle{display:none}@media (max-width: 768px){.container-fluid{padding-left:1rem;padding-right:1rem}.card-body{padding:1rem}.btn{font-size:.9rem}}
