* { scrollbar-width: thin; scrollbar-color: #cbd5e1 transparent; }
.sidebar-link { transition: all 0.2s; }
.sidebar-link:hover, .sidebar-link.active { background: rgba(255,255,255,0.12); }
.card-hover { transition: all 0.25s; }
.card-hover:hover { transform: translateY(-2px); box-shadow: 0 12px 40px rgba(0,0,0,0.08); }
.fade-in { animation: fadeIn 0.3s ease-out; }
@keyframes fadeIn { from { opacity:0; transform:translateY(8px); } to { opacity:1; transform:translateY(0); } }
.stat-card { position:relative; overflow:hidden; }
.stat-card::before { content:''; position:absolute; top:-50%; right:-50%; width:100%; height:100%; background:radial-gradient(circle,rgba(255,255,255,0.1) 0%,transparent 70%); }
.workflow-step { position:relative; }
.workflow-step::before { content:''; position:absolute; left:18px; top:40px; bottom:-8px; width:2px; background:#e2e8f0; }
.workflow-step:last-child::before { display:none; }
.score-bar { transition: width 0.8s ease-out; }
.modal-overlay { background:rgba(15,23,42,0.5); backdrop-filter:blur(4px); }
.badge { font-size:0.68rem; padding:2px 8px; border-radius:9999px; font-weight:600; text-transform:uppercase; letter-spacing:0.05em; display:inline-block; }
.toast { animation: slideIn 0.3s ease-out; }
@keyframes slideIn { from { transform:translateX(100%); opacity:0; } to { transform:translateX(0); opacity:1; } }
.toggle-on { background:#10b981; }
.toggle-off { background:#cbd5e1; }
.toggle-dot-on { transform: translateX(24px); }
