:root{--brand-teal: #028b85;--brand-teal-dark: #026b66;--brand-teal-light: #03a8a1;--brand-teal-dim: rgba(2, 139, 133, .08);--brand-teal-muted: rgba(2, 139, 133, .15);--accent-green: #16a34a;--accent-green-dim: rgba(22, 163, 74, .1);--accent-gold: #d4a017;--accent-gold-dim: rgba(212, 160, 23, .1);--accent-red: #dc2626;--accent-red-dim: rgba(220, 38, 38, .08);--accent-purple: #7c3aed;--accent-purple-dim: rgba(124, 58, 237, .08);--accent-blue: #2563eb;--accent-blue-dim: rgba(37, 99, 235, .08);--bg-primary: #f4f6f8;--bg-white: #ffffff;--bg-sidebar: #ffffff;--bg-input: #f8fafb;--bg-card-hover: #f0f4f3;--bg-tooltip: #ffffff;--border-color: #e2e8f0;--border-color-hover: #cbd5e1;--border-color-focus: var(--brand-teal);--text-primary: #1e293b;--text-secondary: #64748b;--text-muted: #94a3b8;--text-heading: #0f172a;--radius-sm: .5rem;--radius-md: .75rem;--radius-lg: 1rem;--radius-xl: 1.25rem;--shadow-card: 0 1px 3px rgba(0, 0, 0, .04), 0 2px 8px rgba(0, 0, 0, .03);--shadow-card-hover: 0 4px 16px rgba(0, 0, 0, .07), 0 1px 4px rgba(0, 0, 0, .04);--shadow-sidebar: 2px 0 12px rgba(0, 0, 0, .04);--sidebar-width: 260px;--sidebar-collapsed: 72px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .25s cubic-bezier(.4, 0, .2, 1);--transition-slow: .4s cubic-bezier(.4, 0, .2, 1);font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;line-height:1.5;font-weight:400;color:var(--text-primary);background:var(--bg-primary);font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}*{box-sizing:border-box}body{margin:0;min-width:320px;background:var(--bg-primary)}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit;color:inherit}#root{min-height:100vh}::selection{background:var(--brand-teal);color:#fff}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:transparent}::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}::-webkit-scrollbar-thumb:hover{background:var(--border-color-hover)}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes scaleIn{0%{opacity:0;transform:scale(.94)}to{opacity:1;transform:scale(1)}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{to{transform:rotate(360deg)}}@keyframes toastPop{0%{opacity:0;transform:translateY(-10px) scale(.97)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes notificationShake{0%,to{transform:scale(1) rotate(0)}15%{transform:scale(1.15) rotate(-10deg)}30%{transform:scale(1.2) rotate(8deg)}45%{transform:scale(1.15) rotate(-6deg)}60%{transform:scale(1.1) rotate(4deg)}75%{transform:scale(1.05) rotate(-2deg)}}.animate-fade-in-up{animation:fadeInUp var(--transition-slow) both}.animate-fade-in{animation:fadeIn var(--transition-base) both}.animate-scale-in{animation:scaleIn var(--transition-slow) both}.notification-badge-alert{animation:notificationShake 1.4s ease-in-out infinite;transform-origin:center}.toast-pop{animation:toastPop .22s cubic-bezier(.4,0,.2,1) both}.stagger-1{animation-delay:50ms}.stagger-2{animation-delay:.1s}.stagger-3{animation-delay:.15s}.stagger-4{animation-delay:.2s}.stagger-5{animation-delay:.25s}.stagger-6{animation-delay:.3s}table{width:100%;border-collapse:collapse}thead tr{text-align:left;color:var(--text-muted);font-size:.78rem;font-weight:600;text-transform:uppercase;letter-spacing:.05em}thead th{padding:.875rem .75rem;border-bottom:2px solid var(--border-color)}tbody tr{border-bottom:1px solid var(--border-color);transition:background var(--transition-fast)}tbody tr:hover{background:var(--bg-card-hover)}tbody td{padding:.875rem .75rem;font-size:.925rem}tbody tr:last-child{border-bottom:none}.badge{display:inline-block;padding:.25rem .65rem;border-radius:999px;font-size:.75rem;font-weight:600;letter-spacing:.02em;text-transform:capitalize;white-space:nowrap}.badge-teal{background:var(--brand-teal-dim);color:var(--brand-teal)}.badge-green{background:var(--accent-green-dim);color:var(--accent-green)}.badge-gold{background:var(--accent-gold-dim);color:var(--accent-gold)}.badge-red{background:var(--accent-red-dim);color:var(--accent-red)}.badge-purple{background:var(--accent-purple-dim);color:var(--accent-purple)}.badge-blue{background:var(--accent-blue-dim);color:var(--accent-blue)}
