:root,:root.dark{--color-bg-primary: #0a0f1a;--color-bg-secondary: #111827;--color-bg-tertiary: #1a2233;--color-bg-elevated: #1f2937;--color-bg-hover: #243045;--color-bg-glass: rgba(17, 24, 39, .7);--color-bg-glass-hover: rgba(31, 41, 55, .8);--color-text-primary: #f9fafb;--color-text-secondary: #e5e7eb;--color-text-tertiary: #9ca3af;--color-text-muted: #6b7280;--color-text-inverse: #111827;--color-border: rgba(55, 65, 81, .5);--color-border-light: rgba(75, 85, 99, .3);--color-border-focus: #3b82f6;--color-border-glass: rgba(255, 255, 255, .1);--color-primary: #3b82f6;--color-primary-light: #60a5fa;--color-primary-dark: #2563eb;--color-primary-glow: rgba(59, 130, 246, .4);--color-success: #10b981;--color-success-light: #34d399;--color-success-glow: rgba(16, 185, 129, .4);--color-warning: #f59e0b;--color-warning-light: #fbbf24;--color-warning-glow: rgba(245, 158, 11, .4);--color-danger: #ef4444;--color-danger-light: #f87171;--color-danger-glow: rgba(239, 68, 68, .4);--color-info: #8b5cf6;--color-info-light: #a78bfa;--color-info-glow: rgba(139, 92, 246, .4);--gradient-primary: linear-gradient(135deg, #3b82f6 0%, #8b5cf6 100%);--gradient-primary-hover: linear-gradient(135deg, #2563eb 0%, #7c3aed 100%);--gradient-success: linear-gradient(135deg, #10b981 0%, #34d399 100%);--gradient-warning: linear-gradient(135deg, #f59e0b 0%, #fbbf24 100%);--gradient-danger: linear-gradient(135deg, #ef4444 0%, #f87171 100%);--gradient-info: linear-gradient(135deg, #8b5cf6 0%, #a78bfa 100%);--gradient-dark: linear-gradient(135deg, #1f2937 0%, #111827 100%);--gradient-glass: linear-gradient(135deg, rgba(255,255,255,.1) 0%, rgba(255,255,255,.05) 100%);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .3);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .4), 0 2px 4px -1px rgba(0, 0, 0, .2);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .5), 0 4px 6px -2px rgba(0, 0, 0, .3);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .5), 0 10px 10px -5px rgba(0, 0, 0, .3);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .6);--shadow-inner: inset 0 2px 4px 0 rgba(0, 0, 0, .3);--shadow-glow-primary: 0 0 20px rgba(59, 130, 246, .4);--shadow-glow-success: 0 0 20px rgba(16, 185, 129, .4);--shadow-glow-warning: 0 0 20px rgba(245, 158, 11, .4);--shadow-glow-danger: 0 0 20px rgba(239, 68, 68, .4);--glass-bg: rgba(17, 24, 39, .6);--glass-bg-hover: rgba(31, 41, 55, .7);--glass-border: rgba(255, 255, 255, .08);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .37);--glass-blur: blur(12px);--sidebar-bg: var(--color-bg-secondary);--sidebar-active: rgba(59, 130, 246, .15);--sidebar-width: 280px;--sidebar-width-collapsed: 70px;--table-header-bg: rgba(31, 41, 55, .5);--table-row-hover: rgba(59, 130, 246, .05);--table-border: var(--color-border);--radius-sm: .375rem;--radius: .5rem;--radius-md: .75rem;--radius-lg: 1rem;--radius-xl: 1.5rem;--radius-2xl: 2rem;--radius-full: 9999px;--transition-fast: .15s cubic-bezier(.4, 0, .2, 1);--transition-base: .2s cubic-bezier(.4, 0, .2, 1);--transition-slow: .3s cubic-bezier(.4, 0, .2, 1);--transition-bounce: .5s cubic-bezier(.34, 1.56, .64, 1);--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070;--z-toast: 1100}:root.light{--color-bg-primary: #ffffff;--color-bg-secondary: #f9fafb;--color-bg-tertiary: #f3f4f6;--color-bg-elevated: #e5e7eb;--color-bg-hover: #f3f4f6;--color-bg-glass: rgba(255, 255, 255, .7);--color-bg-glass-hover: rgba(249, 250, 251, .8);--color-text-primary: #111827;--color-text-secondary: #4b5563;--color-text-tertiary: #6b7280;--color-text-muted: #9ca3af;--color-text-inverse: #ffffff;--color-border: rgba(209, 213, 219, .5);--color-border-light: rgba(229, 231, 235, .5);--color-border-focus: #3b82f6;--color-border-glass: rgba(0, 0, 0, .05);--glass-bg: rgba(255, 255, 255, .6);--glass-bg-hover: rgba(249, 250, 251, .7);--glass-border: rgba(0, 0, 0, .05);--glass-shadow: 0 8px 32px 0 rgba(0, 0, 0, .1);--shadow-sm: 0 1px 2px 0 rgba(0, 0, 0, .05);--shadow-md: 0 4px 6px -1px rgba(0, 0, 0, .1);--shadow-lg: 0 10px 15px -3px rgba(0, 0, 0, .1);--shadow-xl: 0 20px 25px -5px rgba(0, 0, 0, .1);--shadow-2xl: 0 25px 50px -12px rgba(0, 0, 0, .15)}*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{width:100%;max-width:100vw;overflow-x:hidden;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;scroll-behavior:smooth}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,sans-serif;background:var(--color-bg-primary);background-image:radial-gradient(at 0% 0%,rgba(59,130,246,.08) 0px,transparent 50%),radial-gradient(at 100% 0%,rgba(139,92,246,.08) 0px,transparent 50%),radial-gradient(at 100% 100%,rgba(16,185,129,.05) 0px,transparent 50%);background-attachment:fixed;color:var(--color-text-primary);line-height:1.6;font-size:16px;overflow-x:hidden;min-height:100vh}#root{width:100%;max-width:100%;min-height:100vh}::-webkit-scrollbar{width:10px;height:10px}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--color-primary),var(--color-info));border-radius:var(--radius-full);border:2px solid var(--color-bg-secondary)}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}.animate-fade-in{animation:fadeIn var(--transition-slow) ease-out}.animate-fade-in-up{animation:fadeInUp var(--transition-slow) ease-out}.animate-fade-in-down{animation:fadeInDown var(--transition-slow) ease-out}.animate-fade-in-left{animation:fadeInLeft var(--transition-slow) ease-out}.animate-fade-in-right{animation:fadeInRight var(--transition-slow) ease-out}.animate-scale-in{animation:scaleIn var(--transition-base) ease-out}.animate-slide-in-right{animation:slideInRight var(--transition-slow) ease-out}.animate-slide-in-left{animation:slideInLeft var(--transition-slow) ease-out}.gradient-primary{background:var(--gradient-primary)}.gradient-success{background:var(--gradient-success)}.gradient-warning{background:var(--gradient-warning)}.gradient-danger{background:var(--gradient-danger)}.gradient-info{background:var(--gradient-info)}.shadow-glow-primary{box-shadow:var(--shadow-glow-primary)}.shadow-glow-success{box-shadow:var(--shadow-glow-success)}.shadow-glow-warning{box-shadow:var(--shadow-glow-warning)}.shadow-glow-danger{box-shadow:var(--shadow-glow-danger)}h1,h2,h3,h4,h5,h6{font-weight:600;line-height:1.3;letter-spacing:-.025em}h1{font-size:2rem}h2{font-size:1.5rem}h3{font-size:1.25rem}h4{font-size:1.125rem}p{line-height:1.7}.text-gradient{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.text-gradient-success{background:var(--gradient-success);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.text-gradient-warning{background:var(--gradient-warning);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}.text-gradient-danger{background:var(--gradient-danger);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text}:root,:root.dark{--bg-primary: var(--color-bg-primary);--bg-secondary: var(--color-bg-secondary);--bg-tertiary: var(--color-bg-tertiary);--bg-card: var(--color-bg-card, var(--color-bg-tertiary));--bg-elevated: var(--color-bg-elevated);--bg-hover: var(--color-bg-hover);--text-primary: var(--color-text-primary);--text-secondary: var(--color-text-secondary);--text-muted: var(--color-text-muted);--border-color: var(--color-border);--accent: var(--color-primary);--accent-bg: var(--color-primary-light);--accent-hover: var(--color-primary-hover);--success: var(--color-success);--success-bg: var(--color-success-light);--warning: var(--color-warning);--warning-bg: var(--color-warning-light);--danger: var(--color-danger);--danger-bg: var(--color-danger-light);--info: var(--color-info);--info-bg: var(--color-info-light);--anim-fast: .15s;--anim-base: .2s;--anim-slow: .3s;--anim-slower: .5s;--anim-bounce: cubic-bezier(.34, 1.56, .64, 1);--anim-smooth: cubic-bezier(.4, 0, .2, 1)}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInLeft{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes fadeInRight{0%{opacity:0;transform:translate(20px)}to{opacity:1;transform:translate(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes scaleInCenter{0%{opacity:0;transform:scale(.5)}to{opacity:1;transform:scale(1)}}@keyframes slideUp{0%{opacity:0;transform:translateY(40px)}to{opacity:1;transform:translateY(0)}}@keyframes slideInRight{0%{opacity:0;transform:translate(100%)}to{opacity:1;transform:translate(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translate(-100%)}to{opacity:1;transform:translate(0)}}@keyframes pulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(1.05)}}@keyframes pulse-glow{0%,to{box-shadow:0 0 20px #3b82f666}50%{box-shadow:0 0 40px #3b82f699}}@keyframes pulse-ring{0%{transform:scale(.8);opacity:1}to{transform:scale(2);opacity:0}}@keyframes bounce{0%,to{transform:translateY(0)}50%{transform:translateY(-5px)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes skeleton-loading{0%{background-position:200% 0}to{background-position:-200% 0}}@keyframes typing-dot{0%,to{opacity:.3;transform:translateY(0)}50%{opacity:1;transform:translateY(-4px)}}@keyframes gradient-shift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}@keyframes count-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes live-pulse{0%{box-shadow:0 0 #10b981b3}70%{box-shadow:0 0 0 10px #10b98100}to{box-shadow:0 0 #10b98100}}@keyframes warning-pulse{0%{box-shadow:0 0 #f59e0bb3}70%{box-shadow:0 0 0 10px #f59e0b00}to{box-shadow:0 0 #f59e0b00}}@keyframes danger-pulse{0%{box-shadow:0 0 #ef4444b3}70%{box-shadow:0 0 0 10px #ef444400}to{box-shadow:0 0 #ef444400}}@keyframes ripple{0%{transform:scale(0);opacity:1}to{transform:scale(4);opacity:0}}.animate-fade-in{animation:fadeIn var(--anim-slow) var(--anim-smooth)}.animate-fade-in-up{animation:fadeInUp var(--anim-slow) var(--anim-smooth)}.animate-fade-in-down{animation:fadeInDown var(--anim-slow) var(--anim-smooth)}.animate-fade-in-left{animation:fadeInLeft var(--anim-slow) var(--anim-smooth)}.animate-fade-in-right{animation:fadeInRight var(--anim-slow) var(--anim-smooth)}.animate-scale-in{animation:scaleIn var(--anim-base) var(--anim-smooth)}.animate-scale-in-center{animation:scaleInCenter var(--anim-slow) var(--anim-bounce)}.animate-slide-up{animation:slideUp var(--anim-slow) var(--anim-smooth)}.animate-slide-in-right{animation:slideInRight var(--anim-slow) var(--anim-smooth)}.animate-slide-in-left{animation:slideInLeft var(--anim-slow) var(--anim-smooth)}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-pulse-glow{animation:pulse-glow 2s ease-in-out infinite}.animate-live-pulse{animation:live-pulse 2s infinite}.animate-warning-pulse{animation:warning-pulse 2s infinite}.animate-danger-pulse{animation:danger-pulse 2s infinite}.animate-spin{animation:spin 1s linear infinite}.animate-bounce{animation:bounce 1s ease-in-out infinite}.animate-float{animation:float 3s ease-in-out infinite}.animate-shimmer{background:linear-gradient(90deg,var(--color-bg-tertiary) 0%,var(--color-bg-hover) 50%,var(--color-bg-tertiary) 100%);background-size:200% 100%;animation:skeleton-loading 1.5s ease-in-out infinite}.animate-gradient{background-size:200% 200%;animation:gradient-shift 3s ease infinite}.animate-typing-dot{animation:typing-dot .6s ease-in-out infinite}.glass{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.glass-hover:hover{background:var(--glass-bg-hover)}.glass-header{background:var(--glass-bg);backdrop-filter:var(--glass-blur);-webkit-backdrop-filter:var(--glass-blur);border-bottom:1px solid var(--glass-border);box-shadow:var(--glass-shadow)}.tabular-nums{font-variant-numeric:tabular-nums}button,a,input,textarea,select{transition:all var(--anim-fast) var(--anim-smooth)}:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px;border-radius:var(--radius)}::selection{background-color:#3b82f64d;color:var(--color-text-primary)}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--color-bg-secondary);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb{background:linear-gradient(180deg,var(--color-primary),var(--color-info));border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,var(--color-primary-light),var(--color-info-light))}@media (prefers-reduced-motion: reduce){*,*:before,*:after{animation-duration:.01ms!important;animation-iteration-count:1!important;transition-duration:.01ms!important}}:root{--space-1: .25rem;--space-2: .5rem;--space-3: .75rem;--space-4: 1rem;--space-5: 1.25rem;--space-6: 1.5rem;--space-8: 2rem;--space-10: 2.5rem;--space-12: 3rem;--space-16: 4rem;--space-20: 5rem;--space-24: 6rem;--container-padding: 1.5rem;--container-sm: 640px;--container-md: 768px;--container-lg: 1024px;--container-xl: 1280px;--z-dropdown: 1000;--z-sticky: 1020;--z-fixed: 1030;--z-modal-backdrop: 1040;--z-modal: 1050;--z-popover: 1060;--z-tooltip: 1070}@media (min-width: 640px){:root{--container-padding: 2rem}}@media (min-width: 768px){:root{--container-padding: 2.5rem}}@media (min-width: 1024px){:root{--container-padding: 3rem}}@media (min-width: 1280px){:root{--container-padding: 4rem}}.container{width:100%;max-width:var(--container-xl);margin:0 auto;padding:var(--container-padding)}.container-sm{max-width:var(--container-sm)}.container-md{max-width:var(--container-md)}.container-lg{max-width:var(--container-lg)}.container-xl{max-width:var(--container-xl)}.grid{display:grid;gap:var(--space-6)}.grid-cols-1{grid-template-columns:repeat(1,1fr)}.grid-cols-2{grid-template-columns:repeat(2,1fr)}.grid-cols-3{grid-template-columns:repeat(3,1fr)}.grid-cols-4{grid-template-columns:repeat(4,1fr)}.grid-cols-5{grid-template-columns:repeat(5,1fr)}.grid-cols-6{grid-template-columns:repeat(6,1fr)}@media (min-width: 768px){.grid-cols-md-1{grid-template-columns:repeat(1,1fr)}.grid-cols-md-2{grid-template-columns:repeat(2,1fr)}.grid-cols-md-3{grid-template-columns:repeat(3,1fr)}.grid-cols-md-4{grid-template-columns:repeat(4,1fr)}.grid-cols-md-5{grid-template-columns:repeat(5,1fr)}.grid-cols-md-6{grid-template-columns:repeat(6,1fr)}}@media (min-width: 1024px){.grid-cols-lg-1{grid-template-columns:repeat(1,1fr)}.grid-cols-lg-2{grid-template-columns:repeat(2,1fr)}.grid-cols-lg-3{grid-template-columns:repeat(3,1fr)}.grid-cols-lg-4{grid-template-columns:repeat(4,1fr)}.grid-cols-lg-5{grid-template-columns:repeat(5,1fr)}.grid-cols-lg-6{grid-template-columns:repeat(6,1fr)}}.flex{display:flex}.flex-col{flex-direction:column}.items-start{align-items:flex-start}.items-center{align-items:center}.items-end{align-items:flex-end}.items-stretch{align-items:stretch}.justify-start{justify-content:flex-start}.justify-center{justify-content:center}.justify-end{justify-content:flex-end}.justify-between{justify-content:space-between}.justify-around{justify-content:space-around}.flex-1{flex:1}.flex-grow{flex-grow:1}.flex-shrink{flex-shrink:1}.p-1{padding:var(--space-1)}.p-2{padding:var(--space-2)}.p-3{padding:var(--space-3)}.p-4{padding:var(--space-4)}.p-5{padding:var(--space-5)}.p-6{padding:var(--space-6)}.p-8{padding:var(--space-8)}.px-1{padding-left:var(--space-1);padding-right:var(--space-1)}.px-2{padding-left:var(--space-2);padding-right:var(--space-2)}.px-3{padding-left:var(--space-3);padding-right:var(--space-3)}.px-4{padding-left:var(--space-4);padding-right:var(--space-4)}.px-5{padding-left:var(--space-5);padding-right:var(--space-5)}.px-6{padding-left:var(--space-6);padding-right:var(--space-6)}.px-8{padding-left:var(--space-8);padding-right:var(--space-8)}.py-1{padding-top:var(--space-1);padding-bottom:var(--space-1)}.py-2{padding-top:var(--space-2);padding-bottom:var(--space-2)}.py-3{padding-top:var(--space-3);padding-bottom:var(--space-3)}.py-4{padding-top:var(--space-4);padding-bottom:var(--space-4)}.py-5{padding-top:var(--space-5);padding-bottom:var(--space-5)}.py-6{padding-top:var(--space-6);padding-bottom:var(--space-6)}.py-8{padding-top:var(--space-8);padding-bottom:var(--space-8)}.m-1{margin:var(--space-1)}.m-2{margin:var(--space-2)}.m-3{margin:var(--space-3)}.m-4{margin:var(--space-4)}.m-5{margin:var(--space-5)}.m-6{margin:var(--space-6)}.m-8{margin:var(--space-8)}.mx-1{margin-left:var(--space-1);margin-right:var(--space-1)}.mx-2{margin-left:var(--space-2);margin-right:var(--space-2)}.mx-3{margin-left:var(--space-3);margin-right:var(--space-3)}.mx-4{margin-left:var(--space-4);margin-right:var(--space-4)}.mx-5{margin-left:var(--space-5);margin-right:var(--space-5)}.mx-6{margin-left:var(--space-6);margin-right:var(--space-6)}.mx-8{margin-left:var(--space-8);margin-right:var(--space-8)}.my-1{margin-top:var(--space-1);margin-bottom:var(--space-1)}.my-2{margin-top:var(--space-2);margin-bottom:var(--space-2)}.my-3{margin-top:var(--space-3);margin-bottom:var(--space-3)}.my-4{margin-top:var(--space-4);margin-bottom:var(--space-4)}.my-5{margin-top:var(--space-5);margin-bottom:var(--space-5)}.my-6{margin-top:var(--space-6);margin-bottom:var(--space-6)}.my-8{margin-top:var(--space-8);margin-bottom:var(--space-8)}.mt-1{margin-top:var(--space-1)}.mt-2{margin-top:var(--space-2)}.mt-3{margin-top:var(--space-3)}.mt-4{margin-top:var(--space-4)}.mt-5{margin-top:var(--space-5)}.mt-6{margin-top:var(--space-6)}.mt-8{margin-top:var(--space-8)}.mb-1{margin-bottom:var(--space-1)}.mb-2{margin-bottom:var(--space-2)}.mb-3{margin-bottom:var(--space-3)}.mb-4{margin-bottom:var(--space-4)}.mb-5{margin-bottom:var(--space-5)}.mb-6{margin-bottom:var(--space-6)}.mb-8{margin-bottom:var(--space-8)}.text-xs{font-size:.75rem;line-height:1rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-base{font-size:1rem;line-height:1.5rem}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-2xl{font-size:1.5rem;line-height:2rem}.text-3xl{font-size:1.875rem;line-height:2.25rem}.text-4xl{font-size:2.25rem;line-height:2.5rem}.font-thin{font-weight:100}.font-light{font-weight:300}.font-normal{font-weight:400}.font-medium{font-weight:500}.font-semibold{font-weight:600}.font-bold{font-weight:700}.font-black{font-weight:900}.text-left{text-align:left}.text-center{text-align:center}.text-right{text-align:right}.uppercase{text-transform:uppercase}.lowercase{text-transform:lowercase}.capitalize{text-transform:capitalize}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-muted{color:var(--text-muted)}.text-success{color:var(--success)}.text-warning{color:var(--warning)}.text-danger{color:var(--danger)}.text-primary-50{color:rgba(var(--primary-rgb),.05)}.text-primary-100{color:rgba(var(--primary-rgb),.1)}.text-primary-200{color:rgba(var(--primary-rgb),.2)}.text-primary-300{color:rgba(var(--primary-rgb),.3)}.text-primary-400{color:rgba(var(--primary-rgb),.4)}.text-primary-500{color:rgba(var(--primary-rgb),.5)}.text-primary-600{color:rgba(var(--primary-rgb),.6)}.text-primary-700{color:rgba(var(--primary-rgb),.7)}.text-primary-800{color:rgba(var(--primary-rgb),.8)}.text-primary-900{color:rgba(var(--primary-rgb),.9)}.bg-primary{background-color:var(--primary)}.bg-secondary{background-color:var(--bg-secondary)}.bg-tertiary{background-color:var(--bg-tertiary)}.bg-card{background-color:var(--bg-card)}.bg-hover{background-color:var(--bg-hover)}.bg-input{background-color:var(--bg-input)}.bg-surface{background-color:var(--surface)}.bg-surface-hover{background-color:var(--surface-hover)}.bg-success{background-color:var(--success)}.bg-warning{background-color:var(--warning)}.bg-danger{background-color:var(--danger)}.bg-transparent{background-color:transparent}.border-primary{border-color:var(--primary)}.border-secondary{border-color:var(--bg-secondary)}.border-tertiary{border-color:var(--bg-tertiary)}.border-card{border-color:var(--bg-card)}.border-hover{border-color:var(--bg-hover)}.border-input{border-color:var(--bg-input)}.border-surface{border-color:var(--surface)}.border-surface-hover{border-color:var(--surface-hover)}.border-success{border-color:var(--success)}.border-warning{border-color:var(--warning)}.border-danger{border-color:var(--danger)}.border-transparent{border-color:transparent}.shadow-sm{box-shadow:var(--shadow-sm)}.shadow-md{box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:var(--shadow-lg)}.shadow-none{box-shadow:none}.rounded-none{border-radius:0}.rounded-sm{border-radius:.125rem}.rounded{border-radius:.25rem}.rounded-md{border-radius:.375rem}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.border{border-width:1px;border-style:solid}.border-0{border:none}.border-2{border-width:2px;border-style:solid}.border-4{border-width:4px;border-style:solid}.opacity-0{opacity:0}.opacity-25{opacity:.25}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-100{opacity:1}.visible{visibility:visible}.invisible{visibility:hidden}.block{display:block}.inline-block{display:inline-block}.inline{display:inline}.hidden{display:none}.static{position:static}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.sticky{position:sticky}.top-0{top:0}.right-0{right:0}.bottom-0{bottom:0}.left-0{left:0}.w-full{width:100%}.w-auto{width:auto}.w-screen{width:100vw}.h-full{height:100%}.h-auto{height:auto}.h-screen{height:100vh}.max-w-full{max-width:100%}.max-w-screen-sm{max-width:640px}.max-w-screen-md{max-width:768px}.max-w-screen-lg{max-width:1024px}.max-w-screen-xl{max-width:1280px}.min-h-screen{min-height:100vh}.cursor-default{cursor:default}.cursor-pointer{cursor:pointer}.cursor-wait{cursor:wait}.cursor-text{cursor:text}.cursor-move{cursor:move}.cursor-not-allowed{cursor:not-allowed}.select-none{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.select-text{-webkit-user-select:text;-moz-user-select:text;-ms-user-select:text;user-select:text}.resize-none{resize:none}.resize-y{resize:vertical}.resize-x{resize:horizontal}.resize{resize:both}.card{background:var(--color-bg-secondary);border:1px solid var(--color-border);border-radius:var(--radius-lg);padding:1.25rem;box-shadow:var(--shadow-sm);transition:all var(--transition-base)}.card:hover{box-shadow:var(--shadow-md)}.card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:1rem;padding-bottom:.75rem;border-bottom:1px solid var(--color-border)}.card-title{font-size:1.125rem;font-weight:600;color:var(--color-text-primary)}.btn{padding:.5rem 1rem;border-radius:var(--radius);border:none;cursor:pointer;font-size:.875rem;font-weight:500;transition:all var(--transition-fast);display:inline-flex;align-items:center;gap:.5rem}.btn:disabled{opacity:.5;cursor:not-allowed}.btn-primary{background:var(--color-primary);color:#fff}.btn-primary:hover:not(:disabled){background:var(--color-primary-hover);transform:translateY(-1px);box-shadow:var(--shadow-md)}.btn-secondary{background:var(--color-bg-tertiary);color:var(--color-text-primary);border:1px solid var(--color-border)}.btn-secondary:hover:not(:disabled){background:var(--color-bg-hover);border-color:var(--color-border-light)}.btn-success{background:var(--color-success);color:#fff}.btn-success:hover:not(:disabled){background:var(--color-success-dark)}.btn-danger{background:var(--color-danger);color:#fff}.btn-danger:hover:not(:disabled){background:var(--color-danger-dark)}.btn-warning{background:var(--color-warning);color:#fff}.btn-warning:hover:not(:disabled){background:var(--color-warning-dark)}.badge{padding:.25rem .5rem;border-radius:var(--radius-sm);font-size:.75rem;font-weight:500}.badge-success{background:#10b98126;color:var(--color-success);border:1px solid rgba(16,185,129,.2)}.badge-warning{background:#f59e0b26;color:var(--color-warning);border:1px solid rgba(245,158,11,.2)}.badge-danger{background:#ef444426;color:var(--color-danger);border:1px solid rgba(239,68,68,.2)}.badge-info{background:#3b82f626;color:var(--color-primary);border:1px solid rgba(59,130,246,.2)}.input{width:100%;padding:.625rem .875rem;border:1px solid var(--color-border);border-radius:var(--radius);background:var(--color-bg-primary);color:var(--color-text-primary);font-size:.875rem;transition:all var(--transition-fast);box-sizing:border-box}.input:focus{outline:none;border-color:var(--color-border-focus);box-shadow:0 0 0 3px #3b82f61a}.input::placeholder{color:var(--color-text-muted)}.form-group{margin-bottom:1rem}.form-label{display:block;margin-bottom:.375rem;font-size:.875rem;font-weight:500;color:var(--color-text-secondary)}.grid{display:grid;gap:1.25rem}.grid-2{grid-template-columns:repeat(2,1fr)}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-4{grid-template-columns:repeat(4,1fr)}@media (max-width: 1024px){.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 768px){.grid-2,.grid-3,.grid-4{grid-template-columns:1fr}}.table-container{overflow-x:auto;width:100%}.modal-overlay{position:fixed;top:0;left:0;right:0;bottom:0;background:#0009;display:flex;align-items:center;justify-content:center;z-index:var(--z-modal);padding:1.25rem;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.modal{background:var(--color-bg-secondary);border-radius:var(--radius-lg);border:1px solid var(--color-border);width:100%;max-width:600px;max-height:90vh;overflow-y:auto;box-shadow:var(--shadow-xl)}.modal-header{padding:1rem 1.25rem;border-bottom:1px solid var(--color-border);display:flex;justify-content:space-between;align-items:center}.modal-title{font-size:1.125rem;font-weight:600;color:var(--color-text-primary)}.modal-close{background:none;border:none;color:var(--color-text-muted);cursor:pointer;padding:.25rem;border-radius:var(--radius);transition:all var(--transition-fast)}.modal-close:hover{color:var(--color-text-primary);background:var(--color-bg-hover)}.modal-body{padding:1.25rem}.modal-footer{padding:.75rem 1.25rem;border-top:1px solid var(--color-border);display:flex;justify-content:flex-end;gap:.75rem}.modal-large{max-width:800px;width:95%}.status-dot{width:8px;height:8px;border-radius:50%;display:inline-block;margin-right:.5rem}.status-online{background:var(--color-success);box-shadow:0 0 8px var(--color-success)}.status-offline{background:var(--color-danger)}.status-warning{background:var(--color-warning)}.page-loading{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:400px;color:var(--color-text-muted);gap:1rem}.spin{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}
