::selection{background-color:#bfdbfe;color:#1e3a5f}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}.badge{display:inline-flex;align-items:center;padding:.125rem .625rem;border-radius:9999px;font-size:.75rem;font-weight:500;line-height:1.25rem;border:1px solid transparent;white-space:nowrap}.badge-slate{background:#f1f5f9;color:#334155;border-color:#e2e8f0}.dark .badge-slate{background:#1e293b80;color:#cbd5e1;border-color:#334155}.badge-gray{background:#f3f4f6;color:#374151;border-color:#e5e7eb}.dark .badge-gray{background:#1f293780;color:#d1d5db;border-color:#374151}.badge-red{background:#fef2f2;color:#991b1b;border-color:#fecaca}.dark .badge-red{background:#7f1d1d4d;color:#fca5a5;border-color:#7f1d1d}.badge-orange{background:#fff7ed;color:#9a3412;border-color:#fed7aa}.dark .badge-orange{background:#7c2d124d;color:#fdba74;border-color:#7c2d12}.badge-amber{background:#fffbeb;color:#92400e;border-color:#fde68a}.dark .badge-amber{background:#78350f4d;color:#fcd34d;border-color:#78350f}.badge-yellow{background:#fefce8;color:#854d0e;border-color:#fef08a}.dark .badge-yellow{background:#713f124d;color:#fde047;border-color:#713f12}.badge-lime{background:#f7fee7;color:#3f6212;border-color:#d9f99d}.dark .badge-lime{background:#3653144d;color:#bef264;border-color:#365314}.badge-green{background:#f0fdf4;color:#166534;border-color:#bbf7d0}.dark .badge-green{background:#14532d4d;color:#86efac;border-color:#14532d}.badge-emerald{background:#ecfdf5;color:#065f46;border-color:#a7f3d0}.dark .badge-emerald{background:#064e3b4d;color:#6ee7b7;border-color:#064e3b}.badge-teal{background:#f0fdfa;color:#115e59;border-color:#99f6e4}.dark .badge-teal{background:#134e4a4d;color:#5eead4;border-color:#134e4a}.badge-cyan{background:#ecfeff;color:#155e75;border-color:#a5f3fc}.dark .badge-cyan{background:#164e634d;color:#67e8f9;border-color:#164e63}.badge-sky{background:#f0f9ff;color:#075985;border-color:#bae6fd}.dark .badge-sky{background:#0c4a6e4d;color:#7dd3fc;border-color:#0c4a6e}.badge-blue{background:#eff6ff;color:#1e40af;border-color:#bfdbfe}.dark .badge-blue{background:#1e3a8a4d;color:#93c5fd;border-color:#1e3a8a}.badge-indigo{background:#eef2ff;color:#3730a3;border-color:#c7d2fe}.dark .badge-indigo{background:#312e814d;color:#a5b4fc;border-color:#312e81}.badge-violet{background:#f5f3ff;color:#5b21b6;border-color:#c4b5fd}.dark .badge-violet{background:#4c1d954d;color:#c4b5fd;border-color:#4c1d95}.badge-purple{background:#faf5ff;color:#6b21a8;border-color:#d8b4fe}.dark .badge-purple{background:#581c874d;color:#d8b4fe;border-color:#581c87}.badge-fuchsia{background:#fdf4ff;color:#86198f;border-color:#f0abfc}.dark .badge-fuchsia{background:#701a754d;color:#f0abfc;border-color:#701a75}.badge-pink{background:#fdf2f8;color:#9d174d;border-color:#fbcfe8}.dark .badge-pink{background:#8318434d;color:#fbcfe8;border-color:#831843}.badge-rose{background:#fff1f2;color:#9f1239;border-color:#fecdd3}.dark .badge-rose{background:#8813374d;color:#fda4af;border-color:#881337}.login-bg{background:linear-gradient(135deg,#f0f4ff,#e8ecf4 40%,#f5f3ff);position:relative}.login-bg:before{content:"";position:absolute;top:0;right:0;bottom:0;left:0;background:radial-gradient(ellipse at 20% 50%,rgba(99,102,241,.05) 0%,transparent 50%),radial-gradient(ellipse at 80% 20%,rgba(59,130,246,.05) 0%,transparent 50%);pointer-events:none}.sidebar-gradient{background:linear-gradient(180deg,#0f172a,#1e293b)}.header-blur{background:#ffffffd9;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.dark .header-blur{background:#111827d9}.nav-active-indicator{position:absolute;left:0;top:6px;bottom:6px;width:3px;background:#60a5fa;border-radius:0 2px 2px 0}.avatar-ring{box-shadow:0 0 0 2px #3b82f64d}.kpi-accent{position:absolute;top:0;left:0;right:0;height:3px}.kpi-accent--blue{background:linear-gradient(90deg,#3b82f6,#60a5fa)}.kpi-accent--green{background:linear-gradient(90deg,#059669,#34d399)}.kpi-accent--amber{background:linear-gradient(90deg,#d97706,#fbbf24)}.kpi-accent--red{background:linear-gradient(90deg,#dc2626,#f87171)}.chart-accent{display:inline-block;width:3px;height:1.125rem;background:#3b82f6;border-radius:2px;margin-right:.5rem;vertical-align:middle}.timeline-dot{width:8px;height:8px;border-radius:50%;border:2px solid;background:#fff;flex-shrink:0;margin-top:6px}.timeline-dot--blue{border-color:#3b82f6}.timeline-dot--green{border-color:#10b981}.timeline-dot--red{border-color:#ef4444}.timeline-line{position:absolute;left:3.5px;top:20px;bottom:-12px;width:1px;background:#e2e8f0}.color-swatch{display:inline-block;width:12px;height:12px;border-radius:50%;margin-right:6px;vertical-align:middle;border:1px solid rgba(0,0,0,.1)}.modal-overlay{animation:fadeIn .2s ease-out}.modal-panel{animation:modalSlideUp .3s ease-out}.dropdown-animate{animation:dropdownOpen .15s ease-out;transform-origin:top}.toast-enter{animation:toastSlideIn .4s ease-out}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeSlideUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes modalSlideUp{0%{opacity:0;transform:translateY(16px) scale(.98)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes toastSlideIn{0%{opacity:0;transform:translateY(-8px)}to{opacity:1;transform:translateY(0)}}@keyframes dropdownOpen{0%{opacity:0;transform:scaleY(.95)}to{opacity:1;transform:scaleY(1)}}@keyframes enter{0%{opacity:var(--tw-enter-opacity, 1);transform:translate3d(var(--tw-enter-translate-x, 0),var(--tw-enter-translate-y, 0),0) scale3d(var(--tw-enter-scale, 1),var(--tw-enter-scale, 1),1) rotate(var(--tw-enter-rotate, 0))}}.animate-in{animation-name:enter;animation-duration:.3s;animation-timing-function:cubic-bezier(.16,1,.3,1);--tw-enter-opacity: initial;--tw-enter-scale: initial;--tw-enter-rotate: initial;--tw-enter-translate-x: initial;--tw-enter-translate-y: initial}.fade-in{--tw-enter-opacity: 0}.slide-in-from-top-2{--tw-enter-translate-y: -.5rem}.slide-in-from-bottom-4{--tw-enter-translate-y: 1rem}.zoom-in-95{--tw-enter-scale: .95}.duration-300.animate-in{animation-duration:.3s}.duration-500.animate-in{animation-duration:.5s}.delay-150.animate-in{animation-delay:.15s}.delay-300.animate-in{animation-delay:.3s}
