:root{--primary-color:#2a5c82;--secondary-color:#4ecdc4;--success-color:#2ecc71;--danger-color:#e74c3c;--warning-color:#f39c12;--dark-color:#2c3e50;--light-color:#ecf0f1;--text-color:#34495e;--border-radius:8px;--box-shadow:0 2px 10px #0000001a;--transition:all .3s ease}*{box-sizing:border-box;margin:0;padding:0}body{color:var(--text-color);background-color:#f8fafc;font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif}.container-fluid{padding:0 30px}.card{border-radius:var(--border-radius);box-shadow:var(--box-shadow);transition:var(--transition);border:none;margin-bottom:20px}.card:hover{transform:translateY(-2px);box-shadow:0 4px 15px #00000026}.card-header{background:linear-gradient(135deg,var(--primary-color),#0256ed);color:#fff;padding:15px 20px;font-weight:600;border-radius:var(--border-radius)var(--border-radius)0 0!important}.btn{transition:var(--transition);border-radius:6px;padding:10px 20px;font-weight:500}.btn-primary{background:linear-gradient(135deg,var(--primary-color),#0256ed);border:none}.btn-primary:hover{transform:translateY(-1px);box-shadow:0 4px 10px #2a5c824d}.btn-success{background:linear-gradient(135deg,var(--success-color),#27ae60);border:none}.btn-outline-primary{color:var(--primary-color);border-color:var(--primary-color)}.btn-outline-primary:hover{background:var(--primary-color);border-color:var(--primary-color)}.form-control,.form-select{transition:var(--transition);border:1px solid #e0e0e0;border-radius:6px;padding:10px 15px}.form-control:focus,.form-select:focus{border-color:var(--primary-color);box-shadow:0 0 0 .2rem #2a5c8240}.table{border-radius:var(--border-radius);box-shadow:var(--box-shadow);background:#fff;overflow:hidden}.table thead th{background:var(--primary-color);color:#fff;border:none;padding:15px;font-weight:500}.table td{vertical-align:middle;padding:15px}.badge{border-radius:20px;padding:8px 12px;font-weight:500}.badge-success{color:var(--success-color);border:1px solid var(--success-color);background:#2ecc711a}.badge-warning{color:var(--warning-color);border:1px solid var(--warning-color);background:#f39c121a}.badge-danger{color:var(--danger-color);border:1px solid var(--danger-color);background:#e74c3c1a}.stats-card{border-radius:var(--border-radius);text-align:center;box-shadow:var(--box-shadow);background:linear-gradient(135deg,#fff,#f8f9fa);padding:20px}.stats-card h3{color:var(--primary-color);margin:10px 0 5px;font-size:28px;font-weight:700}.stats-card p{color:#7f8c8d;margin:0}.progress{background:#e0e0e0;border-radius:4px;height:8px}.dashboard-layout{background-color:#f8f9fa;min-height:100vh}.sidebar{height:calc(100vh - 72px);position:sticky;top:72px;overflow-y:auto}.sidebar::-webkit-scrollbar{width:4px}.sidebar::-webkit-scrollbar-track{background:#f1f1f1}.sidebar::-webkit-scrollbar-thumb{background:#cbd5e0;border-radius:4px}.sidebar::-webkit-scrollbar-thumb:hover{background:#a0aec0}.stats-card{transition:transform .3s,box-shadow .3s}.stats-card:hover{transform:translateY(-2px);box-shadow:0 10px 30px #0000001a!important}.activity-list .border-bottom:last-child{border-bottom:none!important}.btn-outline-primary.py-3{flex-direction:column;justify-content:center;align-items:center;height:100%;transition:all .3s;display:flex}.btn-outline-primary.py-3:hover{transform:translateY(-2px);box-shadow:0 5px 15px #667eea4d}.progress{background-color:#e9ecef;border-radius:10px}.progress-bar{background:linear-gradient(90deg,#667eea,#764ba2);border-radius:10px}.badge.pill{padding:6px 12px;font-weight:500}.table-hover tbody tr:hover{background-color:#667eea0d}.chart-placeholder{position:relative;overflow:hidden}.chart-placeholder:after{content:"";background:linear-gradient(90deg,#0000,#ffffff1a,#0000);animation:2s infinite shimmer;position:absolute;inset:0}@keyframes shimmer{0%{transform:translate(-100%)}to{transform:translate(100%)}}@media (max-width:768px){.sidebar{z-index:1000;transition:left .3s;position:fixed;left:-280px}.sidebar.open{left:0}.dashboard-layout .d-flex{flex-direction:column}.stats-card{margin-bottom:1rem}}.navbar-brand img{object-fit:contain;background-color:#0000}.logo-png{mix-blend-mode:multiply;background:0 0}.logo-png-dark{filter:brightness(0)invert()}
