:root{--color-brand:#3b82f6;--color-brand-hover:#2563eb;--color-brand-light:#3b82f61f;--color-brand-glow:#3b82f640;--color-success:#10b981;--color-success-light:#10b9811f;--color-warning:#f59e0b;--color-warning-light:#f59e0b1f;--color-danger:#ef4444;--color-danger-light:#ef44441f;--color-info:#6366f1;--color-info-light:#6366f11f;--font-sans:"Inter",-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;--font-mono:"JetBrains Mono","Fira Code","SF Mono",monospace;--text-xs:0.6875rem;--text-sm:0.75rem;--text-base:0.8125rem;--text-md:0.875rem;--text-lg:1rem;--text-xl:1.125rem;--text-2xl:1.5rem;--text-3xl:2rem;--text-4xl:2.5rem;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--font-extrabold:800;--leading-tight:1.2;--leading-normal:1.5;--leading-relaxed:1.65;--space-0:0;--space-1:4px;--space-2:8px;--space-3:12px;--space-4:16px;--space-5:20px;--space-6:24px;--space-8:32px;--space-10:40px;--space-12:48px;--space-16:64px;--space-20:80px;--radius-sm:6px;--radius-md:8px;--radius-lg:12px;--radius-xl:16px;--radius-2xl:20px;--radius-full:9999px;--shadow-xs:0 1px 2px #0000000d;--shadow-sm:0 2px 4px #0000000f;--shadow-md:0 4px 12px #00000014;--shadow-lg:0 8px 24px #0000001f;--shadow-xl:0 16px 48px #00000029;--shadow-glow:0 0 20px var(--color-brand-glow);--ease-spring:cubic-bezier(0.16,1,0.3,1);--ease-smooth:cubic-bezier(0.4,0,0.2,1);--ease-bounce:cubic-bezier(0.34,1.56,0.64,1);--ease-out-expo:cubic-bezier(0.19,1,0.22,1);--duration-instant:100ms;--duration-fast:150ms;--duration-normal:250ms;--duration-slow:400ms;--duration-slower:600ms;--z-dropdown:50;--z-sticky:100;--z-overlay:200;--z-modal:300;--z-toast:400;--z-tooltip:500;--navbar-height:56px;--sidebar-width:240px;--content-max-width:1400px;--table-row-height:44px;--glass-blur:12px;--glass-saturation:180%}:root,[data-theme=dark]{--bg-page:#0c0c12;--bg-card:#13131b;--bg-elevated:#1a1a25;--bg-hover:#22222e;--bg-active:#2a2a38;--bg-input:#16161f;--bg-overlay:#0009;--border-subtle:#ffffff0f;--border-default:#ffffff1a;--border-strong:#ffffff29;--border-focus:var(--color-brand);--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-tertiary:#64748b;--text-muted:#475569;--text-inverse:#0f172a;--glass-bg:#13131bb3;--glass-bg-light:#ffffff0a;--glass-bg-hover:#ffffff0f;--glass-border:#ffffff14;--glass-shadow:0 8px 32px #0000004d;--navbar-bg:#0c0c12d9;--navbar-border:#ffffff0f;--table-header-bg:#13131be6;--table-row-hover:#3b82f60f;--table-row-selected:#3b82f61a;--table-border:#ffffff0d;--scrollbar-track:#0000;--scrollbar-thumb:#ffffff1f;--scrollbar-thumb-hover:#fff3}[data-theme=light]{--bg-page:#f5f7fa;--bg-card:#fff;--bg-elevated:#fff;--bg-hover:#f1f5f9;--bg-active:#e2e8f0;--bg-input:#f8fafc;--bg-overlay:#0f172a66;--border-subtle:#0000000a;--border-default:#00000014;--border-strong:#00000024;--border-focus:var(--color-brand);--text-primary:#0f172a;--text-secondary:#475569;--text-tertiary:#64748b;--text-muted:#94a3b8;--text-inverse:#f8fafc;--glass-bg:#ffffffbf;--glass-bg-light:#ffffff80;--glass-bg-hover:#ffffffd9;--glass-border:#00000014;--glass-shadow:0 8px 32px #00000014;--navbar-bg:#ffffffd9;--navbar-border:#0000000f;--table-header-bg:#f8fafcf2;--table-row-hover:#3b82f60a;--table-row-selected:#3b82f614;--table-border:#0000000d;--scrollbar-track:#0000;--scrollbar-thumb:#0000001f;--scrollbar-thumb-hover:#0003;--shadow-xs:0 1px 2px #00000008;--shadow-sm:0 2px 4px #0000000a;--shadow-md:0 4px 12px #0000000f;--shadow-lg:0 8px 24px #00000014;--shadow-xl:0 16px 48px #0000001a}*,:after,:before{box-sizing:border-box;margin:0;padding:0}html{-webkit-text-size-adjust:100%;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;font-size:16px;scroll-behavior:smooth;text-rendering:optimizeLegibility}body{background-color:var(--bg-page);font-family:var(--font-sans);font-size:var(--text-md);font-weight:var(--font-normal);line-height:var(--leading-normal);min-height:100vh;overflow-x:hidden;transition:background-color var(--duration-slow) var(--ease-smooth),color var(--duration-slow) var(--ease-smooth)}body,h1,h2,h3,h4,h5,h6{color:var(--text-primary)}h1,h2,h3,h4,h5,h6{font-weight:var(--font-bold);line-height:var(--leading-tight)}h1{font-size:var(--text-2xl)}h2{font-size:var(--text-xl)}h3{font-size:var(--text-lg)}h4{font-size:var(--text-md)}p{color:var(--text-secondary);line-height:var(--leading-relaxed)}a{color:var(--color-brand);text-decoration:none;transition:color var(--duration-fast) var(--ease-smooth)}a:hover{color:var(--color-brand-hover)}b,strong{font-weight:var(--font-semibold)}code,pre{font-family:var(--font-mono);font-size:.9em}code{background:var(--bg-hover);border-radius:var(--radius-sm);color:var(--color-brand);padding:2px 6px}button,input,select,textarea{background:none;border:none;font-family:inherit;font-size:inherit;line-height:inherit;outline:none}input,select,textarea{background:var(--bg-input);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--text-md);padding:var(--space-3) var(--space-4);transition:border-color var(--duration-fast) var(--ease-smooth),box-shadow var(--duration-fast) var(--ease-smooth),background-color var(--duration-fast) var(--ease-smooth)}input:hover,select:hover,textarea:hover{border-color:var(--border-strong)}input:focus,select:focus,textarea:focus{background:var(--bg-card);border-color:var(--color-brand);box-shadow:0 0 0 3px var(--color-brand-light)}input::placeholder,textarea::placeholder{color:var(--text-muted)}input:disabled,select:disabled,textarea:disabled{cursor:not-allowed;opacity:.5}select{-webkit-appearance:none;appearance:none;background-image:url("data:image/svg+xml;charset=utf-8,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='12'%3E%3Cpath fill='%2394a3b8' d='M6 8.825 1.175 4l1.063-1.062L6 6.7l3.763-3.763L10.825 4z'/%3E%3C/svg%3E");background-position:right 12px center;background-repeat:no-repeat;cursor:pointer;padding-right:36px}textarea{min-height:80px;resize:vertical}label{color:var(--text-secondary);display:block;font-size:var(--text-sm);letter-spacing:.5px;margin-bottom:var(--space-1)}button,label{font-weight:var(--font-semibold)}button{align-items:center;border-radius:var(--radius-md);cursor:pointer;display:inline-flex;gap:var(--space-2);justify-content:center;padding:var(--space-2) var(--space-4);transition:all var(--duration-fast) var(--ease-smooth);-webkit-user-select:none;user-select:none;white-space:nowrap}button:disabled{cursor:not-allowed;opacity:.5;pointer-events:none}button:active:not(:disabled){transform:scale(.97)}::-webkit-scrollbar-track{background:var(--scrollbar-track)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb);border-radius:var(--radius-full)}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover)}*{scrollbar-color:var(--scrollbar-thumb) var(--scrollbar-track);scrollbar-width:thin}::selection{background:var(--color-brand-light);color:var(--text-primary)}:focus-visible{outline:2px solid var(--color-brand);outline-offset:2px}img,svg{display:block;max-width:100%}table{border-collapse:collapse;border-spacing:0;width:100%}ol,ul{list-style:none}.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;padding:0;position:absolute;width:1px}.sr-only,.truncate{overflow:hidden;white-space:nowrap}.truncate{text-overflow:ellipsis}.no-scrollbar::-webkit-scrollbar{display:none}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}@keyframes fadeInUp{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-12px)}to{opacity:1;transform:translateY(0)}}@keyframes fadeInScale{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes fadeOut{0%{opacity:1}to{opacity:0}}@keyframes slideInRight{0%{opacity:0;transform:translateX(20px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInLeft{0%{opacity:0;transform:translateX(-20px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.9)}to{opacity:1;transform:scale(1)}}@keyframes popIn{0%{opacity:0;transform:scale(.8)}70%{transform:scale(1.03)}to{opacity:1;transform:scale(1)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.95)}to{transform:scale(1)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes dotPulse{0%,80%,to{transform:scale(0)}40%{transform:scale(1)}}@keyframes shake{0%,to{transform:translateX(0)}10%,30%,50%,70%,90%{transform:translateX(-4px)}20%,40%,60%,80%{transform:translateX(4px)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes floatSlow{0%,to{transform:translateY(0) rotate(0deg)}33%{transform:translateY(-8px) rotate(1deg)}66%{transform:translateY(-4px) rotate(-1deg)}}@keyframes gradientShift{0%{background-position:0 50%}50%{background-position:100% 50%}to{background-position:0 50%}}@keyframes gradientRotate{0%{--gradient-angle:0deg}to{--gradient-angle:360deg}}@keyframes progressShrink{0%{width:100%}to{width:0}}@keyframes ripple{0%{opacity:.5;transform:scale(0)}to{opacity:0;transform:scale(4)}}.animate-fade-in{animation:fadeIn var(--duration-normal) var(--ease-smooth) forwards}.animate-fade-in-up{animation:fadeInUp var(--duration-normal) var(--ease-spring) forwards}.animate-fade-in-down{animation:fadeInDown var(--duration-normal) var(--ease-spring) forwards}.animate-fade-in-scale{animation:fadeInScale var(--duration-normal) var(--ease-spring) forwards}.animate-slide-in-right{animation:slideInRight var(--duration-normal) var(--ease-spring) forwards}.animate-slide-in-left{animation:slideInLeft var(--duration-normal) var(--ease-spring) forwards}.animate-scale-in{animation:scaleIn var(--duration-normal) var(--ease-spring) forwards}.animate-pop-in{animation:popIn var(--duration-slow) var(--ease-spring) forwards}.animate-bounce-in{animation:bounceIn var(--duration-slower) var(--ease-spring) forwards}.animate-shake{animation:shake .5s var(--ease-smooth)}.animate-pulse{animation:pulse 2s var(--ease-smooth) infinite}.animate-spin{animation:spin 1s linear infinite}.animate-float{animation:float 3s ease-in-out infinite}.stagger-children>*{animation:fadeInUp var(--duration-normal) var(--ease-spring) forwards;opacity:0}.stagger-children>:first-child{animation-delay:0ms}.stagger-children>:nth-child(2){animation-delay:50ms}.stagger-children>:nth-child(3){animation-delay:.1s}.stagger-children>:nth-child(4){animation-delay:.15s}.stagger-children>:nth-child(5){animation-delay:.2s}.stagger-children>:nth-child(6){animation-delay:.25s}.stagger-children>:nth-child(7){animation-delay:.3s}.stagger-children>:nth-child(8){animation-delay:.35s}.skeleton{animation:shimmer 1.5s ease-in-out infinite;background:linear-gradient(90deg,var(--bg-hover) 25%,var(--bg-active) 50%,var(--bg-hover) 75%);background-size:200% 100%;border-radius:var(--radius-md)}.skeleton-text{border-radius:var(--radius-sm);height:14px;margin-bottom:8px}.skeleton-text.short{width:60%}.skeleton-text.medium{width:80%}.skeleton-text.full{width:100%}.skeleton-circle{border-radius:var(--radius-full)}.skeleton-card{border-radius:var(--radius-lg);height:120px}.transition-all{transition:all var(--duration-normal) var(--ease-smooth)}.transition-colors{transition:color var(--duration-fast) var(--ease-smooth),background-color var(--duration-fast) var(--ease-smooth),border-color var(--duration-fast) var(--ease-smooth)}.transition-transform{transition:transform var(--duration-normal) var(--ease-spring)}.transition-opacity{transition:opacity var(--duration-normal) var(--ease-smooth)}.hover-lift{transition:transform var(--duration-normal) var(--ease-spring),box-shadow var(--duration-normal) var(--ease-smooth)}.hover-lift:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.hover-scale{transition:transform var(--duration-fast) var(--ease-spring)}.hover-scale:hover{transform:scale(1.02)}.hover-glow{transition:box-shadow var(--duration-normal) var(--ease-smooth)}.hover-glow:hover{box-shadow:var(--shadow-glow)}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}.skeleton{animation:none}}@media (max-width:639px){:root{--navbar-height:52px;--space-page:12px}body{font-size:var(--text-base)}.glass-navbar{height:var(--navbar-height);padding:0 var(--space-3)}.nav-brand{font-size:var(--text-base)!important;max-width:180px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.nav-actions{gap:var(--space-2)!important}.nav-user{display:none!important}.stats-row{flex-direction:column!important;gap:var(--space-3)!important;padding:var(--space-3)!important}.stats-row>.glass-card{flex:initial!important;min-width:0!important;min-width:auto!important}.table-card{border-radius:0;margin:0}.table-toolbar{flex-direction:column;gap:var(--space-3);padding:var(--space-3)!important}.toolbar-left,.toolbar-right{flex-wrap:wrap;width:100%}.toolbar-right{justify-content:flex-start!important}.search-input{min-width:0!important;min-width:auto!important;width:100%!important}.table-wrap{border-radius:0}.iam-page-container{padding:var(--space-3)!important}.iam-page-header{flex-direction:column;gap:var(--space-3)}.iam-page-tabs{width:100%}.modal-box,.modal-card{border-radius:var(--radius-lg)!important;margin:var(--space-3);max-height:90vh;max-width:none!important;width:95vw!important}.modal-body{padding:var(--space-4)!important}.form-row{flex-direction:column!important;gap:var(--space-3)!important}.chart-container svg{height:140px!important;width:140px!important}.login-card{max-width:400px!important;padding:var(--space-6) var(--space-5)!important;width:95vw!important}.btn-ghost,.btn-primary{font-size:var(--text-sm)!important;padding:var(--space-2) var(--space-3)!important}.hide-mobile{display:none!important}}@media (min-width:640px) and (max-width:1024px){:root{--space-page:16px}.stats-row{flex-wrap:wrap!important}.stats-row>.glass-card{flex:1 1 45%!important;min-width:280px!important}.table-toolbar{flex-wrap:wrap}.iam-grid{flex-direction:column!important}.chart-container svg{height:160px!important;width:160px!important}.hide-tablet{display:none!important}}@media (min-width:1025px){:root{--space-page:20px}.show-mobile,.show-tablet{display:none!important}}@media (min-width:1400px){.content-container{margin:0 auto;max-width:var(--content-max-width)}}@media (hover:none) and (pointer:coarse){.btn-ghost,.btn-outline-sm,.btn-primary,button{min-height:44px;min-width:44px}.glass-card:hover,.hover-lift:hover{transform:none}.draggable-header{cursor:default!important}.draggable-header[draggable=true]{-webkit-user-drag:none}}@media print{.actions-cell,.btn-ghost,.btn-primary,.glass-navbar,.modal-overlay,.nav-actions,.table-toolbar{display:none!important}body{background:#fff!important;color:#000!important}.glass-card,.table-card{background:#fff!important;border:1px solid #ddd!important;box-shadow:none!important}.worker-table td,.worker-table th{border:1px solid #ccc!important;color:#000!important;padding:6px 8px!important}}:root{--toastify-color-light:#fff;--toastify-color-dark:#121212;--toastify-color-info:#3498db;--toastify-color-success:#07bc0c;--toastify-color-warning:#f1c40f;--toastify-color-error:#e74d3c;--toastify-color-transparent:#ffffffb3;--toastify-icon-color-info:var(--toastify-color-info);--toastify-icon-color-success:var(--toastify-color-success);--toastify-icon-color-warning:var(--toastify-color-warning);--toastify-icon-color-error:var(--toastify-color-error);--toastify-container-width:fit-content;--toastify-toast-width:320px;--toastify-toast-offset:16px;--toastify-toast-top:max(var(--toastify-toast-offset),env(safe-area-inset-top));--toastify-toast-right:max(var(--toastify-toast-offset),env(safe-area-inset-right));--toastify-toast-left:max(var(--toastify-toast-offset),env(safe-area-inset-left));--toastify-toast-bottom:max(var(--toastify-toast-offset),env(safe-area-inset-bottom));--toastify-toast-background:#fff;--toastify-toast-padding:14px;--toastify-toast-min-height:64px;--toastify-toast-max-height:800px;--toastify-toast-bd-radius:6px;--toastify-toast-shadow:0px 4px 12px #0000001a;--toastify-font-family:sans-serif;--toastify-z-index:9999;--toastify-text-color-light:#757575;--toastify-text-color-dark:#fff;--toastify-text-color-info:#fff;--toastify-text-color-success:#fff;--toastify-text-color-warning:#fff;--toastify-text-color-error:#fff;--toastify-spinner-color:#616161;--toastify-spinner-color-empty-area:#e0e0e0;--toastify-color-progress-light:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);--toastify-color-progress-dark:#bb86fc;--toastify-color-progress-info:var(--toastify-color-info);--toastify-color-progress-success:var(--toastify-color-success);--toastify-color-progress-warning:var(--toastify-color-warning);--toastify-color-progress-error:var(--toastify-color-error);--toastify-color-progress-bgo:0.2}.Toastify__toast-container{box-sizing:border-box;color:#fff;display:flex;flex-direction:column;position:fixed;-webkit-transform:translateZ(9999);-webkit-transform:translateZ(var(--toastify-z-index));width:-webkit-fit-content;width:fit-content;width:var(--toastify-container-width);z-index:9999;z-index:var(--toastify-z-index)}.Toastify__toast-container--top-left{left:max(16px,env(safe-area-inset-left));left:var(--toastify-toast-left);top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top)}.Toastify__toast-container--top-center{align-items:center;left:50%;top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top);transform:translateX(-50%)}.Toastify__toast-container--top-right{align-items:end;right:max(16px,env(safe-area-inset-right));right:var(--toastify-toast-right);top:max(16px,env(safe-area-inset-top));top:var(--toastify-toast-top)}.Toastify__toast-container--bottom-left{bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);left:max(16px,env(safe-area-inset-left));left:var(--toastify-toast-left)}.Toastify__toast-container--bottom-center{align-items:center;bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);left:50%;transform:translateX(-50%)}.Toastify__toast-container--bottom-right{align-items:end;bottom:max(16px,env(safe-area-inset-bottom));bottom:var(--toastify-toast-bottom);right:max(16px,env(safe-area-inset-right));right:var(--toastify-toast-right)}.Toastify__toast{--y:0px;align-items:center;border-radius:6px;border-radius:var(--toastify-toast-bd-radius);box-shadow:0 4px 12px #0000001a;box-shadow:var(--toastify-toast-shadow);box-sizing:border-box;display:flex;flex:1 1 auto;font-family:sans-serif;font-family:var(--toastify-font-family);margin-bottom:1rem;max-height:800px;max-height:var(--toastify-toast-max-height);min-height:64px;min-height:var(--toastify-toast-min-height);padding:14px;padding:var(--toastify-toast-padding);position:relative;touch-action:none;width:320px;width:var(--toastify-toast-width);word-break:break-word;z-index:0}@media only screen and (max-width:480px){.Toastify__toast-container{left:env(safe-area-inset-left);margin:0;width:100vw}.Toastify__toast-container--top-center,.Toastify__toast-container--top-left,.Toastify__toast-container--top-right{top:env(safe-area-inset-top);transform:translateX(0)}.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-right{bottom:env(safe-area-inset-bottom);transform:translateX(0)}.Toastify__toast-container--rtl{left:auto;right:env(safe-area-inset-right)}.Toastify__toast{--toastify-toast-width:100%;border-radius:0;margin-bottom:0}}.Toastify__toast-container[data-stacked=true]{width:320px;width:var(--toastify-toast-width)}@media only screen and (max-width:480px){.Toastify__toast-container[data-stacked=true]{width:100vw}}.Toastify__toast--stacked{position:absolute;transform:translate3d(0,var(--y),0) scale(var(--s));transition:transform .3s;width:100%}.Toastify__toast--stacked[data-collapsed] .Toastify__close-button,.Toastify__toast--stacked[data-collapsed] .Toastify__toast-body{transition:opacity .1s}.Toastify__toast--stacked[data-collapsed=false]{overflow:visible}.Toastify__toast--stacked[data-collapsed=true]:not(:last-child)>*{opacity:0}.Toastify__toast--stacked:after{bottom:100%;content:"";height:calc(var(--g)*1px);left:0;position:absolute;right:0}.Toastify__toast--stacked[data-pos=top]{top:0}.Toastify__toast--stacked[data-pos=bot]{bottom:0}.Toastify__toast--stacked[data-pos=bot].Toastify__toast--stacked:before{transform-origin:top}.Toastify__toast--stacked[data-pos=top].Toastify__toast--stacked:before{transform-origin:bottom}.Toastify__toast--stacked:before{bottom:0;content:"";height:100%;left:0;position:absolute;right:0;transform:scaleY(3);z-index:-1}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-icon{-webkit-margin-end:10px;display:flex;flex-shrink:0;margin-inline-end:10px;width:22px}.Toastify--animate{animation-duration:.5s;animation-fill-mode:both}.Toastify--animate-icon{animation-duration:.3s;animation-fill-mode:both}.Toastify__toast-theme--dark{background:#121212;background:var(--toastify-color-dark);color:#fff;color:var(--toastify-text-color-dark)}.Toastify__toast-theme--colored.Toastify__toast--default,.Toastify__toast-theme--light{background:#fff;background:var(--toastify-color-light);color:#757575;color:var(--toastify-text-color-light)}.Toastify__toast-theme--colored.Toastify__toast--info{background:#3498db;background:var(--toastify-color-info);color:#fff;color:var(--toastify-text-color-info)}.Toastify__toast-theme--colored.Toastify__toast--success{background:#07bc0c;background:var(--toastify-color-success);color:#fff;color:var(--toastify-text-color-success)}.Toastify__toast-theme--colored.Toastify__toast--warning{background:#f1c40f;background:var(--toastify-color-warning);color:#fff;color:var(--toastify-text-color-warning)}.Toastify__toast-theme--colored.Toastify__toast--error{background:#e74d3c;background:var(--toastify-color-error);color:#fff;color:var(--toastify-text-color-error)}.Toastify__progress-bar-theme--light{background:linear-gradient(90deg,#4cd964,#5ac8fa,#007aff,#34aadc,#5856d6,#ff2d55);background:var(--toastify-color-progress-light)}.Toastify__progress-bar-theme--dark{background:#bb86fc;background:var(--toastify-color-progress-dark)}.Toastify__progress-bar--info{background:#3498db;background:var(--toastify-color-progress-info)}.Toastify__progress-bar--success{background:#07bc0c;background:var(--toastify-color-progress-success)}.Toastify__progress-bar--warning{background:#f1c40f;background:var(--toastify-color-progress-warning)}.Toastify__progress-bar--error{background:#e74d3c;background:var(--toastify-color-progress-error)}.Toastify__progress-bar-theme--colored.Toastify__progress-bar--error,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--info,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--success,.Toastify__progress-bar-theme--colored.Toastify__progress-bar--warning{background:#ffffffb3;background:var(--toastify-color-transparent)}.Toastify__close-button{background:#0000;border:none;color:#fff;cursor:pointer;opacity:.7;outline:none;padding:0;position:absolute;right:6px;top:6px;transition:.3s ease;z-index:1}.Toastify__toast--rtl .Toastify__close-button{left:6px;right:auto}.Toastify__close-button--light{color:#000;opacity:.3}.Toastify__close-button>svg{fill:currentColor;height:16px;width:14px}.Toastify__close-button:focus,.Toastify__close-button:hover{opacity:1}@keyframes Toastify__trackProgress{0%{transform:scaleX(1)}to{transform:scaleX(0)}}.Toastify__progress-bar{bottom:0;height:100%;left:0;opacity:.7;position:absolute;transform-origin:left;width:100%;z-index:1}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{border-bottom-left-radius:0;left:auto;right:0;transform-origin:right}.Toastify__progress-bar--wrp{border-bottom-left-radius:6px;border-bottom-left-radius:var(--toastify-toast-bd-radius);border-bottom-right-radius:6px;border-bottom-right-radius:var(--toastify-toast-bd-radius);bottom:0;height:5px;left:0;overflow:hidden;position:absolute;width:100%}.Toastify__progress-bar--wrp[data-hidden=true]{opacity:0}.Toastify__progress-bar--bg{height:100%;opacity:.2;opacity:var(--toastify-color-progress-bgo);width:100%}.Toastify__spinner{animation:Toastify__spin .65s linear infinite;border:2px solid #e0e0e0;border-color:var(--toastify-spinner-color-empty-area);border-radius:100%;border-right-color:#616161;border-right-color:var(--toastify-spinner-color);box-sizing:border-box;height:20px;width:20px}@keyframes Toastify__bounceInRight{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(3000px,0,0)}60%{opacity:1;transform:translate3d(-25px,0,0)}75%{transform:translate3d(10px,0,0)}90%{transform:translate3d(-5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutRight{20%{opacity:1;transform:translate3d(-20px,var(--y),0)}to{opacity:0;transform:translate3d(2000px,var(--y),0)}}@keyframes Toastify__bounceInLeft{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(-3000px,0,0)}60%{opacity:1;transform:translate3d(25px,0,0)}75%{transform:translate3d(-10px,0,0)}90%{transform:translate3d(5px,0,0)}to{transform:none}}@keyframes Toastify__bounceOutLeft{20%{opacity:1;transform:translate3d(20px,var(--y),0)}to{opacity:0;transform:translate3d(-2000px,var(--y),0)}}@keyframes Toastify__bounceInUp{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,3000px,0)}60%{opacity:1;transform:translate3d(0,-20px,0)}75%{transform:translate3d(0,10px,0)}90%{transform:translate3d(0,-5px,0)}to{transform:translateZ(0)}}@keyframes Toastify__bounceOutUp{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,-2000px,0)}}@keyframes Toastify__bounceInDown{0%,60%,75%,90%,to{animation-timing-function:cubic-bezier(.215,.61,.355,1)}0%{opacity:0;transform:translate3d(0,-3000px,0)}60%{opacity:1;transform:translate3d(0,25px,0)}75%{transform:translate3d(0,-10px,0)}90%{transform:translate3d(0,5px,0)}to{transform:none}}@keyframes Toastify__bounceOutDown{20%{transform:translate3d(0,calc(var(--y) - 10px),0)}40%,45%{opacity:1;transform:translate3d(0,calc(var(--y) + 20px),0)}to{opacity:0;transform:translate3d(0,2000px,0)}}.Toastify__bounce-enter--bottom-left,.Toastify__bounce-enter--top-left{animation-name:Toastify__bounceInLeft}.Toastify__bounce-enter--bottom-right,.Toastify__bounce-enter--top-right{animation-name:Toastify__bounceInRight}.Toastify__bounce-enter--top-center{animation-name:Toastify__bounceInDown}.Toastify__bounce-enter--bottom-center{animation-name:Toastify__bounceInUp}.Toastify__bounce-exit--bottom-left,.Toastify__bounce-exit--top-left{animation-name:Toastify__bounceOutLeft}.Toastify__bounce-exit--bottom-right,.Toastify__bounce-exit--top-right{animation-name:Toastify__bounceOutRight}.Toastify__bounce-exit--top-center{animation-name:Toastify__bounceOutUp}.Toastify__bounce-exit--bottom-center{animation-name:Toastify__bounceOutDown}@keyframes Toastify__zoomIn{0%{opacity:0;transform:scale3d(.3,.3,.3)}50%{opacity:1}}@keyframes Toastify__zoomOut{0%{opacity:1}50%{opacity:0;transform:translate3d(0,var(--y),0) scale3d(.3,.3,.3)}to{opacity:0}}.Toastify__zoom-enter{animation-name:Toastify__zoomIn}.Toastify__zoom-exit{animation-name:Toastify__zoomOut}@keyframes Toastify__flipIn{0%{animation-timing-function:ease-in;opacity:0;transform:perspective(400px) rotateX(90deg)}40%{animation-timing-function:ease-in;transform:perspective(400px) rotateX(-20deg)}60%{opacity:1;transform:perspective(400px) rotateX(10deg)}80%{transform:perspective(400px) rotateX(-5deg)}to{transform:perspective(400px)}}@keyframes Toastify__flipOut{0%{transform:translate3d(0,var(--y),0) perspective(400px)}30%{opacity:1;transform:translate3d(0,var(--y),0) perspective(400px) rotateX(-20deg)}to{opacity:0;transform:translate3d(0,var(--y),0) perspective(400px) rotateX(90deg)}}.Toastify__flip-enter{animation-name:Toastify__flipIn}.Toastify__flip-exit{animation-name:Toastify__flipOut}@keyframes Toastify__slideInRight{0%{transform:translate3d(110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translate3d(0,var(--y),0)}}@keyframes Toastify__slideOutRight{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(110%,var(--y),0);visibility:hidden}}@keyframes Toastify__slideOutLeft{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(-110%,var(--y),0);visibility:hidden}}@keyframes Toastify__slideOutDown{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(0,500px,0);visibility:hidden}}@keyframes Toastify__slideOutUp{0%{transform:translate3d(0,var(--y),0)}to{transform:translate3d(0,-500px,0);visibility:hidden}}.Toastify__slide-enter--bottom-left,.Toastify__slide-enter--top-left{animation-name:Toastify__slideInLeft}.Toastify__slide-enter--bottom-right,.Toastify__slide-enter--top-right{animation-name:Toastify__slideInRight}.Toastify__slide-enter--top-center{animation-name:Toastify__slideInDown}.Toastify__slide-enter--bottom-center{animation-name:Toastify__slideInUp}.Toastify__slide-exit--bottom-left,.Toastify__slide-exit--top-left{animation-duration:.3s;animation-name:Toastify__slideOutLeft;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-right,.Toastify__slide-exit--top-right{animation-duration:.3s;animation-name:Toastify__slideOutRight;animation-timing-function:ease-in}.Toastify__slide-exit--top-center{animation-duration:.3s;animation-name:Toastify__slideOutUp;animation-timing-function:ease-in}.Toastify__slide-exit--bottom-center{animation-duration:.3s;animation-name:Toastify__slideOutDown;animation-timing-function:ease-in}@keyframes Toastify__spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}[data-ui-theme=grafana]{--bg:#f7f8fa;--bg2:#fff;--bg3:#f0f2f5;--border:#d8dbdf;--text:#1f2226;--text2:#62656a;--text3:#8a8d90;--primary:#2563eb;--primary-hover:#1d4ed8;--danger:#e02f44;--green:#299647;--orange:#f59e0b;--shadow:0 2px 4px #0000000f;--shadow-md:0 8px 24px #0000001f;--shadow-lg:0 12px 32px #00000029;--radius:4px;--input-bg:#fff;--input-border:#cbd0d5}[data-ui-theme=grafana][data-theme=dark]{--bg:#0b0c10;--bg2:#181b1f;--bg3:#222529;--border:#3a3f44;--text:#e9ecf1;--text2:#9fa7b3;--text3:#6e757f;--primary:#3b82f6;--primary-hover:#60a5fa;--danger:#f2495c;--green:#73bf69;--orange:#fbbf24;--shadow:0 2px 4px #00000040;--shadow-md:0 8px 24px #00000073;--shadow-lg:0 12px 32px #0009;--input-bg:#090a0d;--input-border:#2c3235}[data-ui-theme=legacy]{--bg:#f1f5f9;--bg2:#fff;--bg3:#f8fafc;--border:#e2e8f0;--text:#1e293b;--text2:#64748b;--text3:#94a3b8;--primary:#2563eb;--primary-hover:#1d4ed8;--danger:#ef4444;--green:#16a34a;--orange:#d97706;--shadow:0 1px 3px #0000001a;--shadow-md:0 4px 16px #0000001f;--radius:8px;--input-bg:#fff;--input-border:#cbd5e1}[data-ui-theme=legacy][data-theme=dark]{--bg:#0f172a;--bg2:#1e293b;--bg3:#0f172a;--border:#334155;--text:#f1f5f9;--text2:#94a3b8;--text3:#64748b;--primary:#3b82f6;--primary-hover:#2563eb;--shadow:0 1px 3px #0006;--shadow-md:0 4px 16px #00000080;--input-bg:#1e293b;--input-border:#334155}[data-color-theme=cyberpunk]{--bg:#0a0a12;--bg2:#12121e;--bg3:#1a1a2e;--border:#2a2a4a;--text:#e0e0ff;--text2:#88c;--text3:#55a;--primary:#f0f;--primary-hover:#c0c;--danger:#f05;--green:#0f8;--orange:#f60;--shadow:0 2px 8px #ff00ff1a;--shadow-md:0 8px 24px #ff00ff26;--shadow-lg:0 12px 32px #f0f3;--radius:2px;--input-bg:#0a0a12;--input-border:#3a3a5e}[data-color-theme=forest]{--bg:#0c1a0c;--bg2:#142014;--bg3:#1c2c1c;--border:#2d4a2d;--text:#d4e8d4;--text2:#8a8;--text3:#585;--primary:#4caf50;--primary-hover:#388e3c;--danger:#e53935;--green:#66bb6a;--orange:#ffb74d;--shadow:0 2px 8px #4caf501a;--shadow-md:0 8px 24px #4caf5026;--shadow-lg:0 12px 32px #4caf5033;--radius:6px;--input-bg:#0c1a0c;--input-border:#2d4a2d}[data-ui-theme=compact] .stats-row{gap:8px;padding:12px 16px 0}[data-ui-theme=compact] .stat-card{min-width:100px;padding:10px 14px}[data-ui-theme=compact] .stat-val{font-size:24px}[data-ui-theme=compact] .stat-label{font-size:10px}[data-ui-theme=compact] .table-card{margin:12px 16px}[data-ui-theme=compact] .table-toolbar{gap:8px;padding:10px 14px}[data-ui-theme=compact] .worker-table th{font-size:10px;padding:8px 10px}[data-ui-theme=compact] .worker-table td{font-size:12px;padding:8px 10px}[data-ui-theme=compact] .navbar{height:42px;padding:0 16px}[data-ui-theme=compact] .search-input{font-size:12px;padding:6px 10px;width:160px}[data-ui-theme=cozy] .stats-row{gap:20px;padding:28px 32px 0}[data-ui-theme=cozy] .stat-card{min-width:170px;padding:24px 28px}[data-ui-theme=cozy] .stat-val{font-size:40px}[data-ui-theme=cozy] .stat-label{font-size:12px;letter-spacing:1px}[data-ui-theme=cozy] .table-card{margin:28px 32px}[data-ui-theme=cozy] .table-toolbar{gap:16px;padding:22px 26px}[data-ui-theme=cozy] .worker-table th{font-size:12px;padding:16px 20px}[data-ui-theme=cozy] .worker-table td{font-size:15px;padding:18px 20px}[data-ui-theme=cozy] .navbar{height:60px;padding:0 32px}[data-ui-theme=cozy] .search-input{font-size:14px;padding:10px 14px;width:260px}[data-ui-theme=compact] .stat-card,[data-ui-theme=cozy] .stat-card{border-top:3px solid #2563eb!important;border-top:3px solid var(--primary)!important}[data-ui-theme=compact] .stat-card.available,[data-ui-theme=cozy] .stat-card.available{border-top-color:#299647!important;border-top-color:var(--green)!important}[data-ui-theme=compact] .stat-card.occupied,[data-ui-theme=cozy] .stat-card.occupied{border-top-color:#e02f44!important;border-top-color:var(--danger)!important}[data-ui-theme=compact] .table-card,[data-ui-theme=cozy] .table-card{border-top:3px solid #2563eb!important;border-top:3px solid var(--primary)!important}[data-color-theme=cyberpunk] .navbar{background:#0a0a12;border-bottom:2px solid #f0f;box-shadow:0 2px 20px #ff00ff4d}[data-color-theme=cyberpunk] .navbar .btn-ghost:hover{border-color:#f0f}[data-color-theme=cyberpunk] .status-badge.avail{background:#00ff8826;border:1px solid #00ff884d;box-shadow:0 0 8px #00ff8826;color:#0f8}[data-color-theme=cyberpunk] .status-badge.occ{background:#ff005526;border:1px solid #ff00554d;box-shadow:0 0 8px #ff005526;color:#f05}[data-color-theme=forest] .navbar{background:#0c1a0c;border-bottom:2px solid #4caf50;box-shadow:0 2px 10px #4caf5033}:root{--bg:#f7f8fa;--bg2:#fff;--bg3:#f0f2f5;--border:#d8dbdf;--text:#1f2226;--text2:#62656a;--text3:#8a8d90;--primary:#2563eb;--primary-hover:#1d4ed8;--danger:#e02f44;--green:#299647;--orange:#f59e0b;--shadow:0 2px 4px #0000000f;--shadow-md:0 8px 24px #0000001f;--shadow-lg:0 12px 32px #00000029;--radius:4px;--input-bg:#fff;--input-border:#cbd0d5}[data-theme=dark]{--bg:#0b0c10;--bg2:#181b1f;--bg3:#222529;--border:#2c3235;--text:#e9ecf1;--text2:#9fa7b3;--text3:#6e757f;--primary:#3b82f6;--primary-hover:#60a5fa;--danger:#f2495c;--green:#73bf69;--orange:#fbbf24;--shadow:0 2px 4px #00000040;--shadow-md:0 8px 24px #00000073;--shadow-lg:0 12px 32px #0009;--input-bg:#090a0d;--input-border:#2c3235}*{box-sizing:border-box;margin:0;padding:0}body{-webkit-font-smoothing:antialiased;background:#f7f8fa;background:var(--bg);color:#1f2226;color:var(--text);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;line-height:1.5;transition:background .2s,color .2s}.navbar{align-items:center;display:flex;height:52px;justify-content:space-between;padding:0 24px;position:-webkit-sticky;position:sticky;top:0;transition:background-color .2s,border-bottom .2s;z-index:100}[data-ui-theme=grafana] .navbar{background:#111217;border-bottom:2px solid #2563eb;border-bottom:2px solid var(--primary);box-shadow:0 2px 10px #0006;color:#e9ecf1}[data-ui-theme=grafana] .nav-brand{align-items:center;color:#e9ecf1;display:flex;font-size:16px;font-weight:700;gap:8px;letter-spacing:.5px;text-transform:uppercase}[data-ui-theme=grafana] .nav-brand:before{background:#2563eb;background:var(--primary);border-radius:2px;content:"";display:inline-block;height:14px;width:14px}[data-ui-theme=grafana] .nav-user{color:#9fa7b3;font-size:13px;font-weight:500}[data-ui-theme=legacy] .navbar{background:#2563eb;background:var(--primary);border-bottom:none;box-shadow:0 8px 24px #0000001f;box-shadow:var(--shadow-md);color:#fff}[data-ui-theme=legacy] .nav-brand{color:#fff;font-size:18px;font-weight:700;letter-spacing:-.3px}[data-ui-theme=legacy] .nav-user{color:#fff;font-size:13px;opacity:.9}.nav-actions{align-items:center;display:flex;gap:12px}.btn-primary{background:#2563eb;background:var(--primary);border:none;border-radius:4px;border-radius:var(--radius);color:#fff;cursor:pointer;font-size:13px;font-weight:600;letter-spacing:.3px;padding:8px 16px;transition:background .15s,box-shadow .15s;white-space:nowrap}.btn-primary:hover{background:#1d4ed8;background:var(--primary-hover);box-shadow:0 2px 8px #3b82f633}.btn-primary:disabled{cursor:not-allowed;opacity:.6}.btn-primary.full{font-size:15px;padding:12px;width:100%}.btn-ghost{background:#0000;border:1px solid #d8dbdf;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);cursor:pointer;font-size:13px;font-weight:500;padding:8px 14px;transition:background .15s,color .15s,border-color .15s}.btn-ghost,.btn-ghost:hover{color:#1f2226;color:var(--text)}.btn-ghost:hover{background:#f0f2f5;background:var(--bg3)}[data-ui-theme=grafana] .navbar .btn-ghost{border-color:#3c4245;color:#e9ecf1}[data-ui-theme=grafana] .navbar .btn-ghost:hover{background:#222529;border-color:#2563eb;border-color:var(--primary);color:#fff}[data-ui-theme=legacy] .navbar .btn-ghost{border-color:#fff6;color:#fff}[data-ui-theme=legacy] .navbar .btn-ghost:hover{background:#ffffff26;border-color:#fff;color:#fff}.btn-export{background:#fff;background:var(--bg2);border:1px solid #d8dbdf;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);color:#1f2226;color:var(--text);cursor:pointer;font-size:12px;font-weight:600;padding:6px 12px;transition:background .15s,border-color .15s}[data-ui-theme=grafana] .btn-export{background:#222529;border-color:#3c4245;color:#e9ecf1}.btn-export:hover{background:#f0f2f5;background:var(--bg3);border-color:#2563eb;border-color:var(--primary)}[data-ui-theme=grafana] .btn-export:hover{background:#2c3235;border-color:#2563eb;border-color:var(--primary);color:#fff}.btn-export:disabled{cursor:not-allowed;opacity:.6}.export-group{display:flex;gap:6px}.btn-edit{background:#0000;border:1px solid #2563eb;border:1px solid var(--primary);border-radius:4px;border-radius:var(--radius);color:#2563eb;color:var(--primary);cursor:pointer;font-size:12px;font-weight:600;padding:4px 10px;transition:background .15s,color .15s;white-space:nowrap}.btn-edit:hover{background:#2563eb;background:var(--primary);color:#fff}.btn-danger-sm{background:#0000;border:1px solid #e02f44;border:1px solid var(--danger);border-radius:4px;border-radius:var(--radius);color:#e02f44;color:var(--danger);cursor:pointer;font-size:12px;padding:4px 8px;transition:background .15s,color .15s}.btn-danger-sm:hover{background:#e02f44;background:var(--danger);color:#fff}.theme-toggle-btn{background:#0000;border:1px solid #d8dbdf;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);color:#1f2226;color:var(--text);cursor:pointer;font-size:13px;line-height:1;padding:6px 10px;transition:background .15s,border-color .15s}[data-ui-theme=grafana] .theme-toggle-btn{border-color:#3c4245;color:#e9ecf1}.theme-toggle-btn:hover{background:#f0f2f5;background:var(--bg3)}[data-ui-theme=grafana] .theme-toggle-btn:hover{background:#222529;border-color:#2563eb;border-color:var(--primary)}.theme-toggle-btn.top-right{border-color:#d8dbdf;border-color:var(--border);color:#1f2226;color:var(--text);position:fixed;right:16px;top:12px;z-index:200}[data-ui-theme=legacy] .navbar .theme-toggle-btn{border-color:#fff6;color:#fff}[data-ui-theme=legacy] .navbar .theme-toggle-btn:hover{background:#ffffff26;border-color:#fff}.save-btn-wrap{position:relative}.btn-save{background:#fff;background:var(--bg2);border:1px solid #d8dbdf;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);color:#1f2226;color:var(--text);cursor:pointer;font-size:12px;font-weight:600;padding:4px 10px;transition:background .15s,border-color .15s;white-space:nowrap}.btn-save:hover{background:#f0f2f5;background:var(--bg3);border-color:#2563eb;border-color:var(--primary)}.btn-save:disabled{cursor:not-allowed;opacity:.6}.save-dropdown{background:#fff;background:var(--bg2);border:1px solid #d8dbdf;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);box-shadow:0 8px 24px #0000001f;box-shadow:var(--shadow-md);min-width:160px;overflow:hidden;position:absolute;right:0;top:calc(100% + 4px);z-index:200}.save-dropdown button{align-items:center;background:#0000;border:none;color:#1f2226;color:var(--text);cursor:pointer;display:flex;font-size:13px;gap:8px;padding:10px 14px;text-align:left;transition:background .12s;width:100%}.save-dropdown button:hover{background:#f0f2f5;background:var(--bg3);color:#2563eb;color:var(--primary)}.stats-row{display:flex;flex-wrap:wrap;gap:10px;padding:12px 16px 0}.stat-card{background:#fff;background:var(--bg2);border:2px solid #d8dbdf;border:2px solid var(--border);border-radius:4px;border-radius:var(--radius);box-shadow:0 2px 4px #0000000f;box-shadow:var(--shadow);flex:1 1;min-width:110px;padding:16px 20px;transition:transform .2s,box-shadow .2s}.stat-card:hover{box-shadow:0 8px 24px #0000001f;box-shadow:var(--shadow-md);transform:translateY(-2px)}[data-ui-theme=grafana] .stat-card{border-top:3px solid #2563eb!important;border-top:3px solid var(--primary)!important}[data-ui-theme=grafana] .stat-card.available{border-top-color:#299647!important;border-top-color:var(--green)!important}[data-ui-theme=grafana] .stat-card.occupied{border-top-color:#e02f44!important;border-top-color:var(--danger)!important}.stat-label{color:#62656a;color:var(--text2);font-size:11px;font-weight:700;letter-spacing:.8px;text-transform:uppercase}.stat-val{color:#1f2226;color:var(--text);font-size:24px;font-weight:700;margin-top:2px}[data-ui-theme=grafana] .stat-val{font-family:Menlo,Monaco,Consolas,monospace}.stat-val.green{color:#299647;color:var(--green)}.stat-val.orange{color:#f59e0b;color:var(--orange)}.table-card{background:#fff;background:var(--bg2);border:2px solid #d8dbdf;border:2px solid var(--border);border-radius:4px;border-radius:var(--radius);box-shadow:0 2px 4px #0000000f;box-shadow:var(--shadow);margin:16px 16px 32px;overflow:visible;padding-bottom:20px}[data-ui-theme=grafana] .table-card{border-top:3px solid #2563eb!important;border-top:3px solid var(--primary)!important}.table-toolbar{align-items:center;border-bottom:1px solid #d8dbdf;border-bottom:1px solid var(--border);display:flex;flex-wrap:wrap;gap:8px;justify-content:space-between;padding:10px 14px}.table-toolbar h2{color:#1f2226;color:var(--text);font-size:16px;font-weight:700;letter-spacing:.3px}.toolbar-right{flex-wrap:wrap;gap:10px}.filter-group,.toolbar-right{align-items:center;display:flex}.filter-group{gap:8px}.search-input{background:#fff;background:var(--input-bg);border:1px solid #cbd0d5;border:1px solid var(--input-border);border-radius:4px;border-radius:var(--radius);color:#1f2226;color:var(--text);font-size:13px;padding:8px 12px;width:220px}.search-input:focus{border-color:#2563eb;border-color:var(--primary);box-shadow:0 0 0 2px #2563eb26;outline:none}[data-ui-theme=grafana] .search-input:focus{box-shadow:0 0 0 2px #3b82f633}.table-wrap{overflow-x:auto;overflow-y:visible;padding-bottom:20px}.table-wrap-scroll-space{padding-bottom:360px;scroll-padding-bottom:360px}.table-wrap-scroll-space .empty-row{min-height:160px}.worker-table{border-collapse:collapse;table-layout:fixed;width:100%}.worker-table th{background:#f0f2f5;background:var(--bg3);border-bottom:2px solid #d8dbdf;border-bottom:2px solid var(--border);border-right:1px solid #d8dbdf;border-right:1px solid var(--border);box-sizing:border-box;color:#62656a;color:var(--text2);font-size:10.5px;font-weight:700;letter-spacing:.5px;line-height:1.3;overflow:hidden;padding:8px 10px;position:relative;text-align:center;text-transform:uppercase;vertical-align:middle;white-space:normal;word-break:break-word}.worker-table th.has-col-filter{overflow:visible;padding-bottom:8px;padding-top:6px;vertical-align:top}[data-theme=dark] .worker-table th,[data-theme=light] .worker-table th{background:#2563eb;background:var(--primary);border-bottom:2px solid #0003;border-right:1px solid #fff3;color:#fff}[data-theme=dark] .worker-table th .filter-btn,[data-theme=light] .worker-table th .filter-btn{color:#fff;opacity:.75}[data-theme=dark] .worker-table th .filter-btn.active,[data-theme=dark] .worker-table th .filter-btn:hover,[data-theme=light] .worker-table th .filter-btn.active,[data-theme=light] .worker-table th .filter-btn:hover{background:#fff3;color:#fff;opacity:1}[data-theme=dark] .worker-table th .resize-handle:active,[data-theme=dark] .worker-table th .resize-handle:hover,[data-theme=light] .worker-table th .resize-handle:active,[data-theme=light] .worker-table th .resize-handle:hover{background-color:#fff;opacity:.8}.resize-handle{right:-3px;transition:background-color .15s;width:7px}.resize-handle:active,.resize-handle:hover{opacity:.7}.worker-table td{border-bottom:1px solid #d8dbdf;border-bottom:1px solid var(--border);border-right:1px solid #d8dbdf;border-right:1px solid var(--border);box-sizing:border-box;color:#1f2226;color:var(--text);font-size:12.5px;font-weight:500;overflow:hidden;padding:8px 10px;text-overflow:ellipsis;vertical-align:middle;white-space:nowrap}.worker-table td:last-child,.worker-table th:last-child{border-right:none}.worker-table tbody tr:has(+tr.table-row-spacer) td{padding-bottom:12px}.worker-table tr.table-row-spacer td{background:#0000!important;border:none!important;height:48px;padding:0!important;pointer-events:none}.worker-table tr:hover td{background:#f0f2f5;background:var(--bg3);transition:background .1s}.actions-cell{align-items:center;display:flex;gap:6px;overflow:visible!important;white-space:nowrap}.empty-row{color:#8a8d90;color:var(--text3);font-size:14px;padding:40px!important;text-align:center}.muted{color:#62656a;color:var(--text2)}.status-badge{border-radius:12px;display:inline-block;font-size:11px;font-weight:700;letter-spacing:.5px;padding:4px 10px;text-transform:uppercase}.status-badge.avail{background:#29964726;border:1px solid #2996474d;color:#299647}.status-badge.occ{background:#e02f441f;border:1px solid #e02f4440;color:#dc2626}[data-ui-theme=legacy] .status-badge.avail{background:#dcfce7;border:none;color:#15803d}[data-ui-theme=legacy] .status-badge.occ{background:#fee2e2;border:none;color:#b91c1c}[data-theme=dark] .status-badge.avail{background:#73bf6926;border-color:#73bf694d;color:#73bf69}[data-theme=dark] .status-badge.occ{background:#ef444426;border-color:#ef44444d;color:#f87171}.cat-badge{color:#2563eb;color:var(--primary);font-size:12px;font-weight:700;text-transform:uppercase}input,select,textarea{background:#fff;background:var(--input-bg);border:1px solid #cbd0d5;border:1px solid var(--input-border);border-radius:4px;border-radius:var(--radius);color:#1f2226;color:var(--text);font-family:inherit;font-size:13.5px;padding:9px 12px;transition:border-color .15s,box-shadow .15s;width:100%}input:focus,select:focus,textarea:focus{border-color:#2563eb;border-color:var(--primary);box-shadow:0 0 0 2px #2563eb26;outline:none}[data-ui-theme=grafana] input:focus,[data-ui-theme=grafana] select:focus,[data-ui-theme=grafana] textarea:focus{box-shadow:0 0 0 2px #3b82f633}label{color:#62656a;color:var(--text2);display:flex;flex-direction:column;font-size:11.5px;font-weight:700;gap:6px;letter-spacing:.6px;text-transform:uppercase}.modal-overlay{align-items:center;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#000000a6;display:flex;inset:0;justify-content:center;padding:16px;position:fixed;z-index:300}.modal-box{background:#fff;background:var(--bg2);border:1px solid #d8dbdf;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);box-shadow:0 12px 32px #00000029;box-shadow:var(--shadow-lg);display:flex;flex-direction:column;max-height:90vh;max-width:620px;width:100%}[data-ui-theme=grafana] .modal-box{border-top:4px solid #2563eb!important;border-top:4px solid var(--primary)!important}.modal-box.small{max-width:400px}.modal-header{align-items:center;border-bottom:1px solid #d8dbdf;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:18px 24px}.modal-header h2{color:#1f2226;color:var(--text);font-size:16px;font-weight:700;letter-spacing:.5px;text-transform:uppercase}.close-btn{background:none;border:none;border-radius:4px;border-radius:var(--radius);color:#62656a;color:var(--text2);cursor:pointer;font-size:18px;padding:4px 8px;transition:background .15s}.close-btn:hover{background:#f0f2f5;background:var(--bg3);color:#1f2226;color:var(--text)}.modal-body{display:flex;flex:1 1;flex-direction:column;gap:16px;overflow-y:auto;padding:24px}.modal-footer{border-top:1px solid #d8dbdf;border-top:1px solid var(--border);display:flex;gap:12px;justify-content:flex-end;padding:16px 24px}.form-row{grid-gap:14px;display:grid;gap:14px;grid-template-columns:1fr 1fr}.section-header{align-items:center;color:#62656a;color:var(--text2);display:flex;font-size:11px;font-weight:700;justify-content:space-between;letter-spacing:.6px;margin-top:6px;text-transform:uppercase}.history-card{background:#f0f2f5;background:var(--bg3);border:1px solid #d8dbdf;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);display:flex;flex-direction:column;gap:10px;padding:14px}.history-card-header{align-items:center;color:#62656a;color:var(--text2);display:flex;font-size:12px;font-weight:700;justify-content:space-between}.cat-list{display:flex;flex-direction:column;gap:8px;max-height:250px;overflow-y:auto;padding:14px 24px}.cat-row{align-items:center;border-bottom:1px solid #d8dbdf;border-bottom:1px solid var(--border);display:flex;justify-content:space-between;padding:8px 0}.cat-add{border-top:1px solid #d8dbdf;border-top:1px solid var(--border);display:flex;gap:8px;padding:14px 24px}.cat-add input{flex:1 1}.login-wrapper{background:#111217}.login-card{background:#181b1f;border:1px solid #2c3235;border-radius:4px;border-radius:var(--radius);border-top:4px solid #2563eb!important;border-top:4px solid var(--primary)!important;box-shadow:0 12px 32px #00000029;box-shadow:var(--shadow-lg);padding:40px;width:380px}.login-header{margin-bottom:28px}.login-header h1{color:#e9ecf1;font-size:20px;font-weight:700;letter-spacing:.5px;margin:10px 0 6px;text-transform:uppercase}.login-header p{color:#9fa7b3;font-size:13.5px}.login-form{gap:18px}.login-hint{background:#090a0d;border-radius:4px;color:#6e757f;font-size:12px;margin-top:16px;padding:8px}.login-form label{color:#9fa7b3}.login-form input{background:#090a0d;border-color:#2c3235;color:#e9ecf1}.error-msg{background:#e02f441f;border:1px solid #e02f444d;border-radius:4px;border-radius:var(--radius);color:#f2495c;font-size:13px;font-weight:500;padding:10px 14px}::-webkit-scrollbar{height:8px;width:8px}::-webkit-scrollbar-track{background:#0000}::-webkit-scrollbar-thumb{background:#d8dbdf;background:var(--border);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#8a8d90;background:var(--text3)}.draggable-header{position:relative;transition:background-color .2s,opacity .2s;-webkit-user-select:none;user-select:none}.worker-table th.col-dropdown-container.filter-open{overflow:visible;z-index:201}.draggable-header:hover{background:#d8dbdf!important;background:var(--border)!important}.draggable-header.dragging{background:#f7f8fa!important;background:var(--bg)!important;border:2px dashed #2563eb;border:2px dashed var(--primary);opacity:.4}.th-content{flex-direction:column;gap:3px;overflow:hidden;padding:2px 0}.th-content,.th-label-row{align-items:center;display:flex;justify-content:center;min-width:0;width:100%}.th-label-row{gap:4px}.th-content.has-filters{overflow:visible}.th-filter-chips{display:flex;flex-wrap:wrap;gap:3px;justify-content:center;margin-top:2px;width:100%}.th-filter-chip,.th-filter-chips{align-items:center;max-width:100%}.th-filter-chip{background:#ffffff38;border:1px solid #fff6;border-radius:10px;display:inline-flex;font-size:9px;font-weight:600;gap:2px;letter-spacing:0;line-height:1.3;padding:1px 2px 1px 6px;text-transform:none}.th-filter-chip-text{color:#fff;max-width:72px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.th-filter-chip-remove{background:#0000;border:none;color:#ff4d4d;cursor:pointer;flex-shrink:0;font-size:12px;font-weight:800;line-height:1;padding:0 4px 0 2px}.th-filter-chip-remove:hover{background:#ffffff47;border-radius:50%;color:#ff1a1a}.toolbar-clear-col-filters{border-color:#dc262659;color:#e02f44;color:var(--danger);font-size:12px;padding:6px 10px}.toolbar-clear-col-filters:hover{background:#dc262614;color:#e02f44;color:var(--danger)}.filter-btn{align-items:center;background:#0000;border:none;border-radius:2px;color:#62656a;color:var(--text2);cursor:pointer;display:flex;font-size:9px;justify-content:center;opacity:.4;padding:4px;transition:opacity .15s,transform .15s}.filter-btn.active,.filter-btn:hover{background:#0000000d;color:#2563eb;color:var(--primary);opacity:1;transform:scale(1.15)}.filter-popover{background:#fff;background:var(--bg2);border:1px solid #d8dbdf;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);box-shadow:0 8px 24px #0000001f;box-shadow:var(--shadow-md);color:#1f2226;color:var(--text);cursor:default;display:flex;flex-direction:column;left:0;margin-top:6px;padding-bottom:4px;position:absolute;top:100%;width:220px;z-index:200}.filter-applied-chips span{background:#f0f2f5;background:var(--bg3);border:1px solid #d8dbdf;border:1px solid var(--border);color:#1f2226;color:var(--text)}.filter-suggestions{display:flex;flex-direction:column;gap:4px;margin-top:4px;max-height:140px;overflow-y:auto;padding-bottom:10px}.filter-popover-spacer{flex-shrink:0;height:16px}.filter-suggestion-item{border-radius:4px;cursor:pointer;font-size:12px;padding:6px 8px;text-transform:none}.filter-suggestion-item:hover{background:#f0f2f5;background:var(--bg3)}.filter-suggestion-item.selected{background:#2563eb;background:var(--primary);color:#fff;font-weight:700}.col-filter-input{background:#fff!important;background:var(--input-bg)!important;border:1px solid #cbd0d5!important;border:1px solid var(--input-border)!important;border-radius:4px!important;border-radius:var(--radius)!important;color:#1f2226!important;color:var(--text)!important;font-size:11px!important;height:26px;padding:5px 24px 5px 8px!important;width:100%}.col-filter-input:focus{border-color:#2563eb!important;border-color:var(--primary)!important;outline:none!important}.col-toggle-btn{align-items:center;display:flex;font-size:16px;justify-content:center;transition:transform .2s,background .15s}.col-toggle-btn:hover{transform:rotate(45deg)}.col-toggle-panel{animation:fadeSlideDown .15s ease;background:#fff;background:var(--bg2);border:1px solid #d8dbdf;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);box-shadow:0 12px 32px #00000029;box-shadow:var(--shadow-lg);overflow:visible;position:absolute;right:0;top:calc(100% + 6px);width:220px;z-index:9000}@keyframes fadeSlideDown{0%{opacity:0;transform:translateY(-6px)}to{opacity:1;transform:translateY(0)}}.col-toggle-header{align-items:center;border-bottom:1px solid #d8dbdf;border-bottom:1px solid var(--border);color:#62656a;color:var(--text2);display:flex;font-size:11px;font-weight:700;justify-content:space-between;letter-spacing:.6px;padding:10px 12px 8px;text-transform:uppercase}.col-toggle-reset{background:#0000;border:1px solid #d8dbdf;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);color:#2563eb;color:var(--primary);cursor:pointer;font-size:10px;font-weight:700;padding:2px 7px;transition:background .12s}.col-toggle-reset:hover{background:#f0f2f5;background:var(--bg3)}.col-toggle-list{max-height:280px;overflow-y:auto;padding:6px 0}.col-toggle-item{align-items:center;cursor:pointer;display:flex;justify-content:space-between;padding:7px 14px;transition:background .1s;-webkit-user-select:none;user-select:none}.col-toggle-item:hover{background:#f0f2f5;background:var(--bg3)}.col-toggle-label{color:#1f2226;color:var(--text);font-size:12px;font-weight:500;letter-spacing:.5px;text-transform:uppercase}.col-toggle-switch{border-radius:9px;flex-shrink:0;height:18px;position:relative;transition:background .22s;width:34px}.col-toggle-switch.on{background:#2563eb;background:var(--primary)}.col-toggle-switch.off{background:#d8dbdf;background:var(--border)}.col-toggle-thumb{background:#fff;border-radius:50%;box-shadow:0 1px 3px #00000040;height:14px;position:absolute;top:2px;transition:left .22s cubic-bezier(.4,0,.2,1);width:14px}.col-toggle-switch.on .col-toggle-thumb{left:18px}.col-toggle-switch.off .col-toggle-thumb{left:2px}.filter-clear-btn{align-items:center;background:#0000;border:none;border-radius:50%;color:#62656a;color:var(--text2);cursor:pointer;display:flex;font-size:10px;justify-content:center;padding:2px 4px;position:absolute;right:6px}.filter-clear-btn:hover{background:#0000001a;color:#1f2226;color:var(--text)}.role-badge{border-radius:9999px;display:inline-block;font-size:10px;font-weight:700;padding:2px 8px;text-transform:uppercase}.role-badge.admin{background:#2563eb26;border:1px solid #2563eb4d;color:#2563eb}[data-ui-theme=grafana] .role-badge.admin{background:#e06c0026;border:1px solid #e06c004d;color:#2563eb;color:var(--primary)}.role-badge.viewer{background:#64748b26;border:1px solid #64748b4d;color:#62656a;color:var(--text2)}.admin-modal{background:#fff;background:var(--bg2);border:1px solid #d8dbdf;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);box-shadow:0 12px 32px #00000029;box-shadow:var(--shadow-lg)}.admin-users-table th{border-bottom:2px solid #d8dbdf;border-bottom:2px solid var(--border);color:#62656a;color:var(--text2);font-weight:700;text-transform:uppercase}.admin-users-table td{border-bottom:1px solid #d8dbdf;border-bottom:1px solid var(--border)}.btn-resume-icon{background:#0000;border:1px solid #2563eb;border:1px solid var(--primary);border-radius:4px;border-radius:var(--radius);color:#2563eb;color:var(--primary);cursor:pointer;font-size:14px;padding:3px 8px;transition:background .15s,color .15s}.btn-resume-icon:hover{background:#2563eb;background:var(--primary);color:#fff}.resume-upload-section{display:flex;flex-direction:column;gap:6px}.modal-card{background:#fff;background:var(--bg2);border:1px solid #d8dbdf;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);box-shadow:0 12px 32px #00000029;box-shadow:var(--shadow-lg);max-height:90vh;overflow-y:auto;width:100%}[data-ui-theme=grafana] .modal-card{border-top:4px solid #2563eb!important;border-top:4px solid var(--primary)!important}.modal-close{background:none;border:none;border-radius:4px;border-radius:var(--radius);color:#62656a;color:var(--text2);cursor:pointer;font-size:18px;padding:4px 8px;transition:background .15s}.modal-close:hover{background:#f0f2f5;background:var(--bg3);color:#1f2226;color:var(--text)}.btn-outline-sm{background:#0000;border:1px solid #d8dbdf;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);color:#62656a;color:var(--text2);cursor:pointer;font-size:11px;font-weight:600;padding:4px 10px;transition:border-color .15s,color .15s}.btn-outline-sm:hover{border-color:#2563eb;border-color:var(--primary);color:#2563eb;color:var(--primary)}.hamburger-btn{background:#0000;border:none;cursor:pointer;display:flex;flex-direction:column;height:16px;justify-content:space-around;margin-left:16px;padding:0;width:20px;z-index:10}.hamburger-btn span{background-color:#62656a;background-color:var(--text2);border-radius:10px;height:2px;transition:all .3s linear;width:20px}.hamburger-btn:hover span{background-color:#1f2226;background-color:var(--text)}.iam-page-container{animation:fadeIn .2s ease-out;margin:0 auto;max-width:1200px;padding:24px;width:100%}@keyframes fadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.iam-page-header{align-items:center;border-bottom:1px solid #d8dbdf;border-bottom:1px solid var(--border);display:flex;flex-wrap:wrap;gap:16px;justify-content:space-between;margin-bottom:24px;padding-bottom:16px}.iam-page-tabs{background:#fff;background:var(--bg2);border:1px solid #d8dbdf;border:1px solid var(--border);border-radius:4px;border-radius:var(--radius);display:flex;padding:4px}.iam-page-tab-btn{background:#0000;border:none;border-radius:2px;border-radius:calc(var(--radius) - 2px);color:#62656a;color:var(--text2);cursor:pointer;font-size:13px;font-weight:600;padding:6px 16px;transition:all .15s}.iam-page-tab-btn:hover{color:#1f2226;color:var(--text)}.iam-page-tab-btn.active{background:#2563eb;background:var(--primary);color:#fff}.iam-page-body{margin-top:16px}.hamburger-btn.active span:first-child{transform:rotate(45deg) translate(4px,4px)}.hamburger-btn.active span:nth-child(2){opacity:0}.hamburger-btn.active span:nth-child(3){transform:rotate(-45deg) translate(5px,-5px)}.resize-handle{bottom:0;cursor:col-resize;position:absolute;right:0;top:0;width:5px;z-index:10}.resize-handle:active,.resize-handle:hover{background-color:#2563eb;background-color:var(--primary);opacity:.5}.glass-card{backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturation));-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturation));background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--glass-shadow);padding:var(--space-6);transition:transform var(--duration-normal) var(--ease-spring),box-shadow var(--duration-normal) var(--ease-smooth),border-color var(--duration-normal) var(--ease-smooth)}.glass-card:hover{border-color:var(--border-strong);box-shadow:var(--shadow-lg);transform:translateY(-2px)}.glass-card.no-hover:hover{box-shadow:var(--glass-shadow);transform:none}.glass-navbar{align-items:center;backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturation));-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturation));background:var(--navbar-bg);border-bottom:1px solid var(--navbar-border);display:flex;height:var(--navbar-height);justify-content:space-between;padding:0 var(--space-6);position:-webkit-sticky;position:sticky;top:0;transition:background-color var(--duration-slow) var(--ease-smooth);z-index:var(--z-sticky)}.glass-button{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:var(--glass-bg-light);border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--text-primary);cursor:pointer;font-size:var(--text-base);font-weight:var(--font-semibold);padding:var(--space-2) var(--space-4);transition:all var(--duration-fast) var(--ease-smooth)}.glass-button:hover{background:var(--glass-bg-hover);border-color:var(--border-strong);transform:translateY(-1px)}.glass-button:active{transform:translateY(0) scale(.98)}.glass-button.primary{background:var(--color-brand-light);border-color:#3b82f633;color:var(--color-brand)}.glass-button.primary:hover{background:#3b82f633;box-shadow:0 0 16px #3b82f626}.glass-button.secondary{background:var(--glass-bg-light);color:var(--text-secondary)}.glass-button.secondary:hover{background:var(--glass-bg-hover);color:var(--text-primary)}.glass-input{backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:var(--glass-bg-light);border:1px solid var(--glass-border);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--text-md);padding:var(--space-3) var(--space-4);transition:all var(--duration-fast) var(--ease-smooth)}.glass-input:focus{background:var(--bg-card);border-color:var(--color-brand);box-shadow:0 0 0 3px var(--color-brand-light)}.glass-modal-overlay{align-items:center;animation:fadeIn var(--duration-fast) var(--ease-smooth);backdrop-filter:blur(4px);-webkit-backdrop-filter:blur(4px);background:var(--bg-overlay);display:flex;inset:0;justify-content:center;position:fixed;z-index:var(--z-modal)}.glass-modal{animation:fadeInScale var(--duration-normal) var(--ease-spring);backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturation));-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturation));border:1px solid var(--glass-border);border-radius:var(--radius-xl);box-shadow:var(--shadow-xl);max-height:90vh;max-width:500px;overflow-y:auto;padding:var(--space-6);width:90%}.glass-modal,.glass-table{background:var(--glass-bg)}.glass-table{backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));border:1px solid var(--glass-border);border-collapse:collapse;border-radius:var(--radius-xl);box-shadow:var(--glass-shadow);overflow:hidden;width:100%}.glass-table th{background:var(--table-header-bg);color:var(--text-secondary);font-size:var(--text-sm);font-weight:var(--font-semibold);letter-spacing:.5px;text-align:left;text-transform:uppercase}.glass-table td,.glass-table th{border-bottom:1px solid var(--table-border);padding:var(--space-3) var(--space-4)}.glass-table td{color:var(--text-primary);font-size:var(--text-base)}.glass-table tr:last-child td{border-bottom:none}.glass-table tr:hover td{background:var(--table-row-hover)}.glass-status-badge{align-items:center;background:var(--glass-bg-light);border:1px solid var(--glass-border);border-radius:var(--radius-full);color:var(--text-secondary);display:inline-flex;font-size:var(--text-xs);font-weight:var(--font-semibold);gap:var(--space-1);letter-spacing:.3px;padding:var(--space-1) var(--space-3);transition:all var(--duration-fast) var(--ease-smooth)}.glass-status-badge.available{background:var(--color-success-light);border-color:#10b98133;color:var(--color-success)}.glass-status-badge.occupied{background:var(--color-warning-light);border-color:#f59e0b33;color:var(--color-warning)}.glass-stat{backdrop-filter:blur(var(--glass-blur));-webkit-backdrop-filter:blur(var(--glass-blur));background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-lg);display:flex;flex-direction:column;gap:var(--space-2);padding:var(--space-5);transition:all var(--duration-normal) var(--ease-spring)}.glass-stat:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md);transform:translateY(-2px)}.glass-stat .stat-value{color:var(--text-primary);font-size:var(--text-3xl);font-weight:var(--font-extrabold);line-height:1}.glass-stat .stat-label{color:var(--text-tertiary);font-size:var(--text-xs);font-weight:var(--font-bold);letter-spacing:1.5px;text-transform:uppercase}.glass-orb{animation:floatSlow 8s ease-in-out infinite;border-radius:50%;filter:blur(80px);opacity:.3;pointer-events:none;position:absolute}.glass-orb.blue{background:var(--color-brand);height:400px;width:400px}.glass-orb.purple{animation-delay:-3s;background:var(--color-info);height:300px;width:300px}.glass-orb.green{animation-delay:-5s;background:var(--color-success);height:250px;width:250px}.glass-divider{background:var(--glass-border);height:1px;margin:var(--space-4) 0;width:100%}.glass-chip{align-items:center;background:var(--glass-bg-light);border:1px solid var(--glass-border);border-radius:var(--radius-full);color:var(--text-secondary);cursor:default;display:inline-flex;font-size:var(--text-xs);font-weight:var(--font-medium);gap:var(--space-1);padding:var(--space-1) var(--space-2);transition:all var(--duration-fast) var(--ease-smooth)}.glass-chip:hover{background:var(--glass-bg-hover);border-color:var(--border-strong)}.glass-chip .chip-remove{align-items:center;border-radius:50%;color:var(--text-tertiary);cursor:pointer;display:inline-flex;font-size:10px;height:14px;justify-content:center;transition:all var(--duration-fast);width:14px}.glass-chip .chip-remove:hover{background:var(--color-danger-light);color:var(--color-danger)}@media (prefers-reduced-motion:reduce){.glass-button,.glass-card,.glass-orb,.glass-stat{animation:none!important;transition:none!important}}@media (prefers-contrast:high){.glass-button,.glass-card,.glass-input,.glass-modal{backdrop-filter:none;-webkit-backdrop-filter:none;border-width:2px}}.login-wrapper{align-items:center;background:var(--bg-page);display:flex;justify-content:center;min-height:100vh;overflow:hidden;padding:var(--space-6);position:relative}.login-bg-effects{inset:0;overflow:hidden;pointer-events:none;position:absolute}.login-theme-toggle{align-items:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-full);cursor:pointer;display:flex;font-size:18px;height:40px;justify-content:center;position:fixed;right:var(--space-4);top:var(--space-4);transition:all var(--duration-fast) var(--ease-smooth);width:40px;z-index:100}.login-theme-toggle:hover{border-color:var(--border-strong);box-shadow:var(--shadow-md)}.login-card{backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturation));-webkit-backdrop-filter:blur(var(--glass-blur)) saturate(var(--glass-saturation));background:var(--glass-bg);border:1px solid var(--glass-border);border-radius:var(--radius-2xl);box-shadow:var(--shadow-xl);max-width:420px;overflow:hidden;padding:var(--space-10) var(--space-8);position:relative;width:100%;z-index:10}.login-card:before{background:linear-gradient(90deg,var(--color-brand),var(--color-info),var(--color-success));border-radius:var(--radius-2xl) var(--radius-2xl) 0 0;content:"";height:3px;left:0;position:absolute;right:0;top:0}.login-header{margin-bottom:var(--space-8);text-align:center}.login-logo{align-items:center;background:var(--color-brand-light);border-radius:var(--radius-lg);color:var(--color-brand);display:inline-flex;height:56px;justify-content:center;margin-bottom:var(--space-4);width:56px}.login-header h1{color:var(--text-primary);font-size:var(--text-xl);font-weight:var(--font-bold);margin-bottom:var(--space-2)}.login-subtitle{color:var(--text-tertiary);font-size:var(--text-base);margin:0}.login-form{gap:var(--space-5)}.login-field,.login-form{display:flex;flex-direction:column}.login-field{gap:var(--space-2)}.login-field label{align-items:center;color:var(--text-secondary);display:inline-flex;font-size:var(--text-sm);font-weight:var(--font-semibold);gap:var(--space-2);letter-spacing:.5px;margin-bottom:0;text-transform:uppercase}.login-field input{background:var(--bg-input);border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-primary);font-size:var(--text-md);padding:var(--space-3) var(--space-4);transition:all var(--duration-fast) var(--ease-smooth)}.login-field input:hover{border-color:var(--border-strong)}.login-field input:focus{background:var(--bg-card);border-color:var(--color-brand);box-shadow:0 0 0 3px var(--color-brand-light)}.login-password-wrap{position:relative}.login-password-wrap input{padding-right:44px;width:100%}.login-password-toggle{align-items:center;background:none;border:none;border-radius:var(--radius-sm);color:var(--text-tertiary);cursor:pointer;display:flex;height:32px;justify-content:center;padding:0;position:absolute;right:var(--space-3);top:50%;transform:translateY(-50%);transition:color var(--duration-fast);width:32px}.login-password-toggle:hover{color:var(--text-primary)}.login-submit{background:var(--color-brand);border:none;border-radius:var(--radius-md);color:#fff;cursor:pointer;font-size:var(--text-md);font-weight:var(--font-semibold);margin-top:var(--space-2);overflow:hidden;padding:var(--space-3) var(--space-6);position:relative;transition:all var(--duration-fast) var(--ease-smooth);width:100%}.login-submit:hover:not(:disabled){background:var(--color-brand-hover);box-shadow:0 4px 16px #3b82f64d}.login-submit:disabled{cursor:not-allowed;opacity:.6}.login-spinner{animation:spin .6s linear infinite;border:2px solid #ffffff4d;border-radius:50%;border-top-color:#fff;display:inline-block;height:18px;width:18px}.login-error{background:var(--color-danger-light);border:1px solid #ef444433;border-radius:var(--radius-md);color:var(--color-danger);font-size:var(--text-sm);font-weight:var(--font-medium);overflow:hidden;padding:var(--space-3) var(--space-4)}.mfa-icon-wrap{font-size:48px;margin:var(--space-2) 0;text-align:center}.mfa-description{color:var(--text-secondary);font-size:var(--text-base);line-height:var(--leading-relaxed);margin:0;text-align:center}.mfa-description strong{color:var(--text-primary)}.totp-input{font-family:var(--font-mono);font-size:var(--text-2xl)!important;font-weight:var(--font-bold);letter-spacing:8px;text-align:center}.login-back-btn{align-items:center;background:#0000;border:1px solid var(--border-default);border-radius:var(--radius-md);color:var(--text-secondary);cursor:pointer;display:inline-flex;font-size:var(--text-base);font-weight:var(--font-medium);gap:var(--space-2);justify-content:center;padding:var(--space-3);transition:all var(--duration-fast) var(--ease-smooth);width:100%}.login-back-btn:hover{background:var(--bg-hover);border-color:var(--border-strong);color:var(--text-primary)}.login-hint{border-top:1px solid var(--border-subtle);color:var(--text-muted);font-size:var(--text-xs);margin-top:var(--space-6);padding-top:var(--space-4);text-align:center}
/*# sourceMappingURL=main.c5353742.css.map*/