#root,body,html{height:100%;margin:0;padding:0;width:100%}#root{display:flex;flex-direction:column;height:100%;overflow:hidden}body{font-family:Inter,system-ui,-apple-system,sans-serif}::-webkit-scrollbar{height:10px;width:10px}::-webkit-scrollbar-track{background:#f1f5f9}::-webkit-scrollbar-thumb{background:#cbd5e1;border-radius:5px}::-webkit-scrollbar-thumb:hover{background:#94a3b8}[data-theme=dark] ::-webkit-scrollbar-track{background:#1e293b}[data-theme=dark] ::-webkit-scrollbar-thumb{background:#475569}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:#64748b}[data-theme=dark] code,[data-theme=dark] pre{background-color:initial}[data-theme=dark] .breadcrumb{background-color:initial;color:#94a3b8}[data-theme=dark] .breadcrumb-item.active{color:#f1f5f9}::selection{background-color:#3b82f6;color:#fff}::-moz-selection{background-color:#3b82f6;color:#fff}input[type=date],input[type=datetime-local],input[type=email],input[type=number],input[type=password],input[type=search],input[type=text],input[type=time],select,textarea{-webkit-appearance:none;appearance:none}input[type=checkbox],input[type=radio]{cursor:pointer}input[type=search]::-webkit-search-cancel-button,input[type=search]::-webkit-search-decoration{-webkit-appearance:none;appearance:none}::placeholder{color:#94a3b8;opacity:1}::-moz-placeholder{color:#94a3b8;opacity:1}:-ms-input-placeholder{color:#94a3b8}::-ms-input-placeholder{color:#94a3b8}input:-webkit-autofill,input:-webkit-autofill:focus,input:-webkit-autofill:hover{-webkit-text-fill-color:var(--text-primary);box-shadow:0 0 0 1000px var(--card-bg) inset}:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}a:focus-visible,button:focus-visible{outline:2px solid #3b82f6;outline-offset:2px}a{color:#3b82f6;text-decoration:none;transition:color .2s cubic-bezier(.4,0,.2,1)}a:hover{color:#1d4ed8}h1{font-size:clamp(1.5rem,5vw,2.5rem);line-height:1.2}h2{font-size:clamp(1.25rem,4vw,2rem);line-height:1.25}h3{font-size:clamp(1.125rem,3vw,1.5rem);line-height:1.3}h4{font-size:clamp(1rem,2.5vw,1.25rem);line-height:1.4}h5,h6{font-size:clamp(.875rem,2vw,1rem);line-height:1.5}p{line-height:1.6;margin-bottom:1rem}small{line-height:1.5}code,pre,small{font-size:.875rem}code,pre{background-color:#f1f5f9;border-radius:.375rem;font-family:Menlo,Monaco,Courier New,monospace}code{padding:.125rem .375rem}pre{line-height:1.5;overflow-x:auto;padding:1rem}pre code{background:none;padding:0}tbody,thead{border-bottom:1px solid #e2e8f0}td,th{padding:.75rem}ol,ul{margin:0 0 1rem;padding:0 0 0 1.5rem}li{margin-bottom:.5rem}blockquote{border-left:4px solid #3b82f6;color:#64748b;margin:1rem 0;padding-left:1rem}hr{border:none;border-top:1px solid #e2e8f0;margin:2rem 0}mark{background-color:#fef3c7;border-radius:.25rem;color:inherit;padding:.125rem .25rem}strong{font-weight:600}em{font-style:italic}del{color:#94a3b8;text-decoration:line-through}ins{text-decoration:underline;-webkit-text-decoration-color:#10b981;text-decoration-color:#10b981;text-underline-offset:2px}.sr-only{clip:rect(0,0,0,0);border-width:0;height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px}.focus-trap-start:focus-visible~:focus-visible{outline:none}@supports (padding:max(0px)){body{padding-left:max(env(safe-area-inset-left),0px);padding-right:max(env(safe-area-inset-right),0px)}}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}@media (max-width:768px){body{font-size:16px}button{min-width:44px}a,button{min-height:44px}a{display:inline-block;padding:6px 8px}input,select,textarea{font-size:16px;min-height:44px}}.modal{animation:slideUp .3s ease-out}.modal-overlay{animation:fadeIn .2s ease-in-out}button:hover,input:focus,select:focus,textarea:focus{transition:all .15s ease-in-out}.breadcrumb{background-color:initial;border-radius:.375rem;color:#64748b;font-size:.875rem;margin-bottom:1.5rem;padding:.75rem 1rem}.breadcrumb,.breadcrumb-item{align-items:center;display:flex}.breadcrumb-item a{color:#3b82f6;text-decoration:none}.breadcrumb-item a:hover{text-decoration:underline}.breadcrumb-separator{color:#94a3b8;margin:0 .5rem}.breadcrumb-item.active{color:#1e293b;font-weight:500}*{box-sizing:border-box;margin:0;padding:0}html{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;scroll-behavior:smooth}:root{--primary-color:#1890ff;--primary-dark:#096dd9;--primary-light:#40a9ff;--primary-ultralight:#e6f4ff;--secondary-color:#06b6d4;--secondary-light:#67e8f9;--success-color:#52c41a;--success-light:#95de64;--danger-color:#ff4d4f;--warning-color:#faad14;--info-color:#1890ff;--bg-color:#f5f5f5;--bg-light:#fff;--card-bg:#fff;--card-hover-bg:var(--primary-ultralight);--text-primary:#000000e0;--text-secondary:#000000a6;--text-light:#00000073;--border-color:#d9d9d9;--border-light:#f0f0f0;--radius-sm:4px;--radius:6px;--radius-lg:8px;--radius-xl:12px;--shadow-sm:0 1px 2px 0 #0000000f;--shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;--shadow-md:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;--shadow-lg:0 20px 25px -5px #00000026,0 10px 10px -5px #0000000a;--shadow-xl:0 25px 50px -12px #00000040;--transition-fast:100ms cubic-bezier(0.4,0,0.2,1);--transition-base:200ms cubic-bezier(0.4,0,0.2,1);--transition-smooth:350ms cubic-bezier(0.4,0,0.2,1);--transition-slow:400ms cubic-bezier(0.4,0,0.2,1);--transition-ease-in:cubic-bezier(0.4,0,1,1);--transition-ease-out:cubic-bezier(0,0,0.2,1);--transition-ease-in-out:cubic-bezier(0.4,0,0.2,1);--z-dropdown:100;--z-sticky:20;--z-fixed:30;--z-modal-backdrop:40;--z-modal:50;--z-popover:60;--z-tooltip:70;--surface:#fff;--surface-light:#fafafa;--success-bg:#f6ffed;--danger-bg:#fff2f0;--warning-bg:#fffbe6;--info-bg:#e6f4ff;--success-text:#389e0d;--success-border:#b7eb8f;--warning-text:#d48806;--warning-border:#ffe58f;--danger-text:#cf1322;--danger-border:#ffa39e;--info-text:#096dd9;--info-border:#91caff;color-scheme:light}[data-color=emerald]{--primary-color:#059669;--primary-dark:#047857;--primary-light:#34d399;--primary-ultralight:#d1fae5}[data-theme=dark][data-color=emerald]{--primary-color:#10b981;--primary-dark:#059669;--primary-light:#34d399;--primary-ultralight:#064e3b}[data-color=violet]{--primary-color:#7c3aed;--primary-dark:#6d28d9;--primary-light:#8b5cf6;--primary-ultralight:#ede9fe}[data-theme=dark][data-color=violet]{--primary-color:#8b5cf6;--primary-dark:#7c3aed;--primary-light:#a78bfa;--primary-ultralight:#4c1d95}[data-color=rose]{--primary-color:#e11d48;--primary-dark:#be123c;--primary-light:#fb7185;--primary-ultralight:#ffe4e6}[data-theme=dark][data-color=rose]{--primary-color:#f43f5e;--primary-dark:#e11d48;--primary-light:#fb7185;--primary-ultralight:#881337}[data-color=slate]{--primary-color:#475569;--primary-dark:#334155;--primary-light:#94a3b8;--primary-ultralight:#f1f5f9}[data-theme=dark][data-color=slate]{--primary-color:#94a3b8;--primary-dark:#64748b;--primary-light:#cbd5e1;--primary-ultralight:#0f172a}[data-color=amber]{--primary-color:#d97706;--primary-dark:#b45309;--primary-light:#fbbf24;--primary-ultralight:#fef3c7}[data-theme=dark][data-color=amber]{--primary-color:#f59e0b;--primary-dark:#d97706;--primary-light:#fcd34d;--primary-ultralight:#78350f}[data-color=teal]{--primary-color:#0d9488;--primary-dark:#0f766e;--primary-light:#2dd4bf;--primary-ultralight:#ccfbf1}[data-theme=dark][data-color=teal]{--primary-color:#14b8a6;--primary-dark:#0d9488;--primary-light:#5eead4;--primary-ultralight:#042f2e}[data-color=indigo]{--primary-color:#4f46e5;--primary-dark:#4338ca;--primary-light:#818cf8;--primary-ultralight:#e0e7ff}[data-theme=dark][data-color=indigo]{--primary-color:#6366f1;--primary-dark:#4f46e5;--primary-light:#a5b4fc;--primary-ultralight:#1e1b4b}[data-color=lime]{--primary-color:#65a30d;--primary-dark:#4d7c0f;--primary-light:#a3e635;--primary-ultralight:#ecfccb}[data-theme=dark][data-color=lime]{--primary-color:#84cc16;--primary-dark:#65a30d;--primary-light:#bef264;--primary-ultralight:#1a2e05}[data-color=fuchsia]{--primary-color:#c026d3;--primary-dark:#a21caf;--primary-light:#e879f9;--primary-ultralight:#fae8ff}[data-theme=dark][data-color=fuchsia]{--primary-color:#d946ef;--primary-dark:#c026d3;--primary-light:#f0abfc;--primary-ultralight:#4a044e}[data-theme=dark]{--primary-color:#1890ff;--primary-dark:#0958a5;--primary-light:#40a9ff;--primary-ultralight:#111a2c;--secondary-color:#22d3ee;--secondary-light:#67e8f9;--success-color:#52c41a;--success-light:#95de64;--danger-color:#ff4d4f;--warning-color:#faad14;--info-color:#1890ff;--bg-color:#141414;--bg-light:#1f1f1f;--card-bg:#1f1f1f;--card-hover-bg:#263347;--text-primary:#ffffffd9;--text-secondary:#ffffffa6;--text-light:#ffffff73;--border-color:#424242;--border-light:#303030;--shadow-sm:0 1px 2px 0 #0000004d;--shadow:0 4px 6px -1px #0006,0 2px 4px -1px #0003;--shadow-md:0 10px 15px -3px #0006,0 4px 6px -2px #0003;--shadow-lg:0 20px 25px -5px #00000080,0 10px 10px -5px #0003;--shadow-xl:0 25px 50px -12px #0009;--surface:#1f1f1f;--surface-light:#141414;--success-bg:#52c41a26;--danger-bg:#ff4d4f26;--warning-bg:#faad1426;--info-bg:#1890ff26;--success-text:#95de64;--success-border:#52c41a;--warning-text:#ffd666;--warning-border:#d48806;--danger-text:#ff7875;--danger-border:#ff4d4f;--info-text:#69b1ff;--info-border:#1890ff;color-scheme:dark}[data-theme=dark] thead{box-shadow:0 2px 8px #0006}body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;background-color:#f5f5f5;background-color:var(--bg-color);color:#000000e0;color:var(--text-primary);font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Oxygen,Ubuntu,Cantarell,Fira Sans,Droid Sans,Helvetica Neue,sans-serif;line-height:1.6;overflow-x:hidden}@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 slideInLeft{0%{opacity:0;transform:translateX(-30px)}to{opacity:1;transform:translateX(0)}}@keyframes slideInRight{0%{opacity:0;transform:translateX(30px)}to{opacity:1;transform:translateX(0)}}@keyframes slideUp{0%{opacity:0;transform:translateY(30px)}to{opacity:1;transform:translateY(0)}}@keyframes slideDown{0%{opacity:0;transform:translateY(-30px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}50%{opacity:1;transform:scale(1.05)}70%{transform:scale(.9)}to{transform:scale(1)}}@keyframes spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}@keyframes glow{0%,to{box-shadow:0 0 5px #7c3aed4d}50%{box-shadow:0 0 20px #7c3aed99}}.animate-fade-in{animation:fadeIn ease-in-out .2s cubic-bezier(.4,0,.2,1);animation:fadeIn var(--transition-base) ease-in-out}.animate-slide-up{animation:slideUp ease-out .35s cubic-bezier(.4,0,.2,1);animation:slideUp var(--transition-smooth) ease-out}.animate-slide-down{animation:slideDown ease-out .35s cubic-bezier(.4,0,.2,1);animation:slideDown var(--transition-smooth) ease-out}.animate-slide-left{animation:slideInLeft ease-out .35s cubic-bezier(.4,0,.2,1);animation:slideInLeft var(--transition-smooth) ease-out}.animate-slide-right{animation:slideInRight ease-out .35s cubic-bezier(.4,0,.2,1);animation:slideInRight var(--transition-smooth) ease-out}.animate-scale-in{animation:scaleIn ease-out .2s cubic-bezier(.4,0,.2,1);animation:scaleIn var(--transition-base) ease-out}.animate-bounce-in{animation:bounceIn ease-out .35s cubic-bezier(.4,0,.2,1);animation:bounceIn var(--transition-smooth) ease-out}.animate-spin{animation:spin 1s linear infinite}.animate-pulse{animation:pulse 2s cubic-bezier(.4,0,.6,1) infinite}.animate-glow{animation:glow 2s ease-in-out infinite}.app{display:flex;flex:1 1;min-height:0;overflow:hidden}.header{align-items:center;background:#fff;background:var(--card-bg);border-bottom:1px solid #d9d9d9;border-bottom:1px solid var(--border-color);box-shadow:0 1px 2px 0 #0000000f;box-shadow:var(--shadow-sm);display:flex;flex-shrink:0;flex-wrap:wrap;gap:1rem;justify-content:space-between;min-height:56px;padding:.75rem 1rem;position:-webkit-sticky;position:sticky;top:0;z-index:100}.header,.header h1{color:#000000e0;color:var(--text-primary)}.header h1{font-size:clamp(1.25rem,3vw,1.5rem);font-weight:700;margin:0;white-space:nowrap}.header-welcome{color:#000000e0;color:var(--text-primary);font-size:.9rem;font-weight:500;max-width:45vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:540px){.header-welcome{max-width:40vw}}.header-user{flex-wrap:wrap;gap:.5rem;justify-content:flex-end}.header-user,.sidebar-toggle{align-items:center;display:flex}.sidebar-toggle{background:#0000!important;border:1px solid #0000!important;border-radius:6px!important;border-radius:var(--radius)!important;color:#000000a6;color:var(--text-secondary);font-size:.9rem;height:34px;justify-content:center;padding:0!important;width:34px}.sidebar-toggle:hover{background:#f5f5f5!important;background:var(--bg-color)!important;border-color:#0000!important;color:#000000e0!important;color:var(--text-primary)!important}.header-role-badge{background:#f5f5f5;background:var(--bg-color);border:1px solid #d9d9d9;border:1px solid var(--border-color);border-radius:999px;color:#000000a6;color:var(--text-secondary);font-size:.72rem;font-weight:600;padding:.18rem .65rem;white-space:nowrap}.theme-switch{align-items:center;background:#d9d9d9;border:none;border-radius:999px;cursor:pointer;display:inline-flex;flex-shrink:0;height:22px;padding:2px;position:relative;transition:background .2s cubic-bezier(.4,0,.2,1);transition:background var(--transition-base);width:44px}[data-theme=dark] .theme-switch:not(.dark){background:#fff3}.theme-switch.dark{background:#1890ff;background:var(--primary-color)}.theme-switch-thumb{align-items:center;background:#fff;border-radius:50%;box-shadow:0 1px 3px #0000004d;color:#faad14;color:var(--warning-color);display:flex;font-size:.65rem;height:18px;justify-content:center;transform:translateX(0);transition:transform .2s cubic-bezier(.4,0,.2,1);transition:transform var(--transition-base);width:18px}.theme-switch.dark .theme-switch-thumb{color:#1890ff;color:var(--primary-color);transform:translateX(22px)}.header-avatar{align-items:center;background:#1890ff;background:var(--primary-color);border-radius:50%;color:#fff;display:flex;font-size:.72rem;font-weight:700;height:32px;justify-content:center;min-width:32px;width:32px}.header-dropdown-menu{background:#fff;background:var(--card-bg);border:1px solid #d9d9d9;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--radius-lg);box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-md);min-width:180px;overflow:hidden;position:absolute;right:0;top:calc(100% + 6px);z-index:1000}.header-dropdown-item{background:#0000;border:none;border-top:1px solid #f0f0f0;border-top:1px solid var(--border-light);color:#000000e0;color:var(--text-primary);cursor:pointer;display:block;font-family:inherit;font-size:.85rem;font-weight:400;padding:.5rem 1rem;text-align:left;transition:background .15s;width:100%}.header-dropdown-item:first-child{border-top:none}.header-dropdown-item:hover{background:#f5f5f5;background:var(--bg-color)}.header-dropdown-item.active{background:#e6f4ff;background:var(--primary-ultralight);color:#1890ff;color:var(--primary-color);font-weight:600}.user-badge{background:#f5f5f5;background:var(--bg-color);border:1px solid #d9d9d9;border:1px solid var(--border-color);border-radius:999px;color:#000000e0;color:var(--text-primary);font-size:.82rem;font-weight:600;line-height:1.4;padding:.3rem .85rem;white-space:nowrap}@media (max-width:768px){.header{min-height:56px;padding:.5rem .75rem}.header h1{font-size:1.25rem}.user-badge{font-size:.78rem;padding:.28rem .7rem}}@media (max-width:540px){.user-badge{display:none}}@media (max-width:420px){.header-dropdown-menu{left:0;right:auto}}.sidebar{background:linear-gradient(180deg,#001529,#051f3d);border-right:none;box-shadow:2px 0 8px #00000026;height:100%;overflow-x:hidden;overflow-y:auto;padding:0;transition:width .3s ease,transform .3s ease;width:220px;z-index:90}.sidebar::-webkit-scrollbar{width:6px}.sidebar::-webkit-scrollbar-thumb{background:#fff3;border-radius:8px;-webkit-transition:background .2s cubic-bezier(.4,0,.2,1);transition:background .2s cubic-bezier(.4,0,.2,1);-webkit-transition:background var(--transition-base);transition:background var(--transition-base)}.sidebar::-webkit-scrollbar-thumb:hover{background:#ffffff59}.sidebar::-webkit-scrollbar-track{background:#0000}.sidebar-brand{align-items:center;border-bottom:1px solid #ffffff1f;display:flex;gap:.6rem;margin-bottom:.25rem;padding:.875rem 1rem .75rem}.sidebar-brand-logo{flex-shrink:0;font-size:1.5rem;line-height:1}.sidebar-brand-text{min-width:0}.sidebar-brand-name{color:#fff;font-size:1.05rem;font-weight:800;letter-spacing:.3px}.sidebar-brand-name,.sidebar-brand-tagline{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-brand-tagline{color:#8ec5fc;font-size:.66rem;margin-top:.1rem}.layout-shell.sidebar-collapsed .sidebar-brand{justify-content:center;padding:.5rem 0 1rem}.layout-shell.sidebar-collapsed .sidebar-brand-text{display:none}.sidebar-nav{display:flex;flex-direction:column;gap:0;list-style:none}.sidebar-nav-item{position:relative}.sidebar-nav-link{align-items:center;background:none;border:1px solid #0000;border-radius:0;color:#ffffffd9;cursor:pointer;display:flex;font-family:inherit;font-size:.8125rem;font-weight:500;gap:.75rem;padding:.625rem 1rem;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base);white-space:nowrap}.sidebar-nav-link:hover{background-color:#ffffff1a;border-color:#0000;color:#fff}.sidebar-nav-link.active{background:#1890ff;background:var(--primary-color);border-color:#0000;color:#fff}.sidebar-nav-link.group-active{color:#fff}.sidebar-sub-link.active{background:#1890ff;background:var(--primary-color);border-color:#0000;color:#fff}.sidebar-icon-slot{align-items:center;color:inherit;display:inline-flex;flex-shrink:0;font-size:1rem;justify-content:center;line-height:1;min-width:1.15rem;width:1.15rem}.sidebar-label{flex:1 1;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar-chevron{align-items:center;display:inline-flex;flex-shrink:0;font-size:.72rem;justify-content:center;opacity:.65;transition:transform .2s cubic-bezier(.4,0,.2,1),opacity .2s cubic-bezier(.4,0,.2,1);transition:transform var(--transition-base),opacity var(--transition-base)}.sidebar-nav-link.group-active .sidebar-chevron,.sidebar-nav-link:hover .sidebar-chevron{opacity:.9}.sidebar-user-card{align-items:center;background:#ffffff12;border:1px solid #ffffff1f;border-radius:8px;border-radius:var(--radius-lg);display:flex;gap:.6rem;margin:.5rem .625rem .75rem;padding:.55rem .65rem;transition:background .2s cubic-bezier(.4,0,.2,1);transition:background var(--transition-base)}.sidebar-user-avatar{align-items:center;background:#1890ff;background:var(--primary-color);border:2px solid #1890ff;border:2px solid var(--primary-color);border-radius:50%;color:#fff;display:flex;flex-shrink:0;font-size:.78rem;font-weight:700;height:34px;justify-content:center;min-width:34px;width:34px}.sidebar-user-info{flex:1 1;min-width:0}.sidebar-user-name{color:#fff;font-size:.78rem;font-weight:600}.sidebar-user-name,.sidebar-user-role{overflow:hidden;text-overflow:ellipsis;text-transform:capitalize;white-space:nowrap}.sidebar-user-role{color:#8ec5fc;font-size:.68rem}.layout-shell.sidebar-collapsed .sidebar-user-card{justify-content:center;padding:.5rem}.layout-shell.sidebar-collapsed .sidebar-user-info{display:none}.layout-shell.sidebar-collapsed .sidebar{padding:.5rem;width:80px}.layout-shell.sidebar-collapsed .sidebar-chevron,.layout-shell.sidebar-collapsed .sidebar-label{display:none}.layout-shell.sidebar-collapsed .sidebar-nav-link{justify-content:center;padding:.75rem}.layout-shell.sidebar-collapsed .sidebar-nav-link.active,.layout-shell.sidebar-collapsed .sidebar-sub-link.active{position:relative}.layout-shell.sidebar-collapsed .sidebar-nav-link.active:before,.layout-shell.sidebar-collapsed .sidebar-sub-link.active:before{background:#fff;border-radius:0 3px 3px 0;bottom:25%;content:"";left:0;opacity:.8;position:absolute;top:25%;width:3px}.sidebar-backdrop{display:none}@media (max-width:1024px){.sidebar{box-shadow:0 20px 25px -5px #00000026,0 10px 10px -5px #0000000a;box-shadow:var(--shadow-lg);height:calc(100vh - 64px);left:0;max-width:min(280px,75vw);position:fixed;top:64px;transform:translateX(-100%);transition:transform .4s cubic-bezier(.4,0,.2,1);transition:transform var(--transition-slow);width:280px;z-index:1100}.layout-shell.sidebar-open .sidebar{transform:translateX(0)}.sidebar-backdrop{background:#00000080;inset:64px 0 0 0;position:fixed;z-index:1090}}.main-content{background-color:#f5f5f5;background-color:var(--bg-color);display:flex;flex:1 1;flex-direction:column;min-height:0;min-width:0;overflow-x:hidden;overflow-y:auto}.breadcrumb-bar{border-bottom:1px solid #f0f0f0;border-bottom:1px solid var(--border-light);flex-shrink:0;padding:.6rem 2rem}.breadcrumb-bar,.content-card{background:#fff;background:var(--card-bg)}.content-card{border-radius:12px;border-radius:var(--radius-xl);box-shadow:0 1px 2px 0 #0000000f;box-shadow:var(--shadow-sm);flex:1 1;margin:1.25rem 2rem;padding:2rem}@media (max-width:1280px){.breadcrumb-bar{padding:.6rem 1.5rem}.content-card{margin:1rem 1.5rem;padding:1.5rem}}@media (max-width:1024px){.breadcrumb-bar{padding:.5rem 1rem}.content-card{margin:.75rem 1rem;padding:1rem}}@media (max-width:768px){.breadcrumb-bar{padding:.4rem .75rem}.content-card{margin:.5rem .75rem;padding:.75rem}}@media (max-width:480px){.breadcrumb-bar{padding:.35rem .5rem}.content-card{margin:.4rem .5rem;padding:.5rem}}.card{background:#fff;background:var(--card-bg);border:1px solid #d9d9d9;border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow);margin-bottom:1.5rem;padding:1.5rem;transition:all .2s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base)}.card:hover{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-md);transform:translateY(-2px)}.card-sm{border-radius:8px;padding:1rem}.card-lg{border-radius:16px;padding:2rem}.card-header{align-items:center;display:flex;flex-wrap:wrap;gap:1rem;justify-content:space-between;margin-bottom:1.5rem}.card-title{color:#000000e0;color:var(--text-primary);font-size:clamp(1.125rem,3vw,1.5rem);font-weight:700;margin:0}.card-subtitle{color:#000000a6;color:var(--text-secondary);font-size:.9rem;margin:.5rem 0 0}.card-body{flex:1 1}.card-footer{border-top:1px solid #d9d9d9;border-top:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:1rem;justify-content:flex-end;margin-top:1.5rem;padding-top:1.5rem}@media (max-width:768px){.card{margin-bottom:1rem;padding:1.25rem}.card-lg{padding:1.5rem}.card-header{align-items:flex-start;flex-direction:column;gap:.75rem}.card-footer{justify-content:flex-start;margin-top:1rem;padding-top:1rem}}.card-shadow-primary{border-color:#0055cc26!important;box-shadow:0 4px 6px -1px #0055cc1a,0 2px 4px -1px #0055cc14,0 0 20px #0055cc26}.card-shadow-primary:hover{box-shadow:0 10px 15px -3px #05c3,0 4px 6px -2px #0055cc1a,0 0 30px #0055cc40;transform:translateY(-4px)}.card-shadow-success{border-color:#10b98126!important;box-shadow:0 4px 6px -1px #10b9811a,0 2px 4px -1px #10b98114,0 0 20px #10b98126}.card-shadow-success:hover{box-shadow:0 10px 15px -3px #10b98133,0 4px 6px -2px #10b9811a,0 0 30px #10b98140;transform:translateY(-4px)}.card-shadow-danger{border-color:#ef444426!important;box-shadow:0 4px 6px -1px #ef44441a,0 2px 4px -1px #ef444414,0 0 20px #ef444426}.card-shadow-danger:hover{box-shadow:0 10px 15px -3px #ef444433,0 4px 6px -2px #ef44441a,0 0 30px #ef444440;transform:translateY(-4px)}.card-shadow-warning{border-color:#f59e0b26!important;box-shadow:0 4px 6px -1px #f59e0b1a,0 2px 4px -1px #f59e0b14,0 0 20px #f59e0b26}.card-shadow-warning:hover{box-shadow:0 10px 15px -3px #f59e0b33,0 4px 6px -2px #f59e0b1a,0 0 30px #f59e0b40;transform:translateY(-4px)}.card-shadow-info{border-color:#3b82f626!important;box-shadow:0 4px 6px -1px #3b82f61a,0 2px 4px -1px #3b82f614,0 0 20px #3b82f626}.card-shadow-info:hover{box-shadow:0 10px 15px -3px #3b82f633,0 4px 6px -2px #3b82f61a,0 0 30px #3b82f640;transform:translateY(-4px)}.card-shadow-cyan{border-color:#06b6d426!important;box-shadow:0 4px 6px -1px #06b6d41a,0 2px 4px -1px #06b6d414,0 0 20px #06b6d426}.card-shadow-cyan:hover{box-shadow:0 10px 15px -3px #06b6d433,0 4px 6px -2px #06b6d41a,0 0 30px #06b6d440;transform:translateY(-4px)}.stats-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(250px,1fr));margin-bottom:2rem}@media (max-width:1280px){.stats-grid{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}}@media (max-width:1024px){.stats-grid{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}}@media (max-width:768px){.stats-grid{gap:1rem;grid-template-columns:repeat(auto-fit,minmax(160px,1fr))}}@media (max-width:480px){.stats-grid{gap:.75rem;grid-template-columns:1fr}}.grid-auto-fit{grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}.grid-2-col,.grid-auto-fit{grid-gap:1.5rem;display:grid;gap:1.5rem}.grid-2-col{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.grid-3-col{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.grid-4-col{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}@media (max-width:1280px){.grid-4-col{grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.grid-3-col{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.grid-2-col{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}}@media (max-width:1024px){.grid-auto-fit{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}.grid-2-col{grid-template-columns:repeat(auto-fit,minmax(220px,1fr))}.grid-3-col,.grid-4-col{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){.grid-auto-fit{gap:1rem;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}.grid-2-col{gap:1rem;grid-template-columns:1fr}.grid-3-col,.grid-4-col{gap:1rem;grid-template-columns:repeat(2,1fr)}}@media (max-width:480px){.grid-2-col,.grid-3-col,.grid-4-col,.grid-auto-fit{gap:.75rem;grid-template-columns:1fr}}.stat-card{align-items:center;background:#fff;background:var(--card-bg);border:1px solid #d9d9d9;border:1px solid var(--border-color);border-radius:12px;box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow);cursor:pointer;display:flex;gap:1rem;padding:1.5rem;transition:transform .2s cubic-bezier(.4,0,.2,1),box-shadow .2s cubic-bezier(.4,0,.2,1);transition:transform var(--transition-base),box-shadow var(--transition-base)}.stat-card:hover{box-shadow:0 20px 25px -5px #00000026,0 10px 10px -5px #0000000a;box-shadow:var(--shadow-lg);transform:translateY(-4px)}.stat-icon{align-items:center;border-radius:12px;color:#fff;display:flex;font-size:1.75rem;height:60px;justify-content:center;min-width:60px;width:60px}.stat-icon.primary{background:linear-gradient(135deg,#1890ff,#096dd9);background:linear-gradient(135deg,var(--primary-color) 0,var(--primary-dark) 100%)}.stat-icon.success{background:linear-gradient(135deg,#10b981,#059669)}.stat-icon.warning{background:linear-gradient(135deg,#f59e0b,#d97706)}.stat-icon.danger{background:linear-gradient(135deg,#ef4444,#dc2626)}.stat-icon.info{background:linear-gradient(135deg,#06b6d4,#0891b2)}.stat-content{flex:1 1;min-width:0}.stat-content h3{color:#000000e0;color:var(--text-primary);font-size:clamp(1.5rem,3vw,2rem);font-weight:700;line-height:1.2;margin:0 0 .25rem}.stat-content p{color:#000000a6;color:var(--text-secondary);font-size:.9rem;margin:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}@media (max-width:1024px){.stat-card{gap:.75rem;padding:1.25rem}.stat-icon{font-size:1.5rem;height:50px;min-width:50px;width:50px}.stat-content h3{font-size:clamp(1.25rem,2.5vw,1.75rem)}}@media (max-width:768px){.stat-card{flex-direction:column;gap:.75rem;padding:1rem;text-align:center}.stat-icon{font-size:1.5rem;height:48px;min-width:48px;width:48px}.stat-content{width:100%}.stat-content h3{font-size:1.5rem}.stat-content p{font-size:.85rem;white-space:normal}}@media (max-width:480px){.stat-card{gap:.5rem;padding:.75rem}.stat-icon{height:40px;min-width:40px;width:40px}.stat-content h3,.stat-icon{font-size:1.25rem}.stat-content p{font-size:.8rem}}.action-cell .action-buttons button{opacity:0;transition:opacity .2s}.action-cell .action-buttons .btn-success,.action-cell .action-buttons .btn-warning,tr.selected .action-cell .action-buttons button{opacity:1}tr.selected{background-color:#f5f5f5;background-color:var(--bg-color)}.fsw-inner::-webkit-scrollbar{display:none}.table-container{-webkit-overflow-scrolling:touch;border:1px solid #d9d9d9;border:1px solid var(--border-color);border-radius:8px;overflow-x:auto;width:100%}table{background:#fff;background:var(--card-bg);border-collapse:collapse;font-size:.95rem;width:100%}thead{background-color:#f5f5f5;background-color:var(--bg-color);box-shadow:0 2px 6px #00000014;position:-webkit-sticky;position:sticky;top:0;z-index:5}th{border-bottom:2px solid #d9d9d9;border-bottom:2px solid var(--border-color);color:#000000e0;color:var(--text-primary);font-weight:600;text-align:left;white-space:nowrap}td,th{padding:1rem}td{border-bottom:1px solid #d9d9d9;border-bottom:1px solid var(--border-color);vertical-align:middle}tr:hover{background-color:#f5f5f5;background-color:var(--bg-color)}.table-container td,.table-container th{cursor:default;-webkit-user-select:none;user-select:none}.table-container td .btn,.table-container th .btn{cursor:pointer}.btn:focus,.table-container td:focus,.table-container th:focus,.table-container:focus,tr:focus{outline:none}@media (max-width:1024px){table{font-size:.9rem}td,th{padding:.75rem}}@media (max-width:768px){.table-container{border-radius:4px;font-size:.85rem}td,th{padding:.65rem}th{font-size:.8rem}}@media (max-width:480px){table{font-size:.8rem}td,th{padding:.5rem}th{font-size:.75rem}}.btn{align-items:center;border:1px solid #0000;border-radius:4px;border-radius:var(--radius-sm);cursor:pointer;display:inline-flex;font-size:clamp(.85rem,2vw,.9rem);font-weight:500;gap:.5rem;justify-content:center;min-height:36px;padding:.5rem 1.15rem;text-decoration:none;transition:all .2s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base);-webkit-user-select:none;user-select:none;white-space:nowrap}.btn:disabled{cursor:not-allowed;opacity:.5;transform:none!important}.btn:focus{outline:none}.btn-primary{background:linear-gradient(90deg,#1890ff,#40a9ff);background:linear-gradient(to right,var(--primary-color),var(--primary-light));border-color:#1890ff;border-color:var(--primary-color);box-shadow:0 1px 2px 0 #0000000f;box-shadow:var(--shadow-sm);color:#fff}.btn-primary:hover:not(:disabled){box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-secondary{background:#06b6d4;background:var(--secondary-color);border-color:#06b6d4;border-color:var(--secondary-color);box-shadow:0 1px 2px 0 #0000000f;box-shadow:var(--shadow-sm);color:#fff}.btn-secondary:hover:not(:disabled){box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-success{background:#52c41a;background:var(--success-color);border-color:#52c41a;border-color:var(--success-color);color:#fff}.btn-success:hover:not(:disabled){box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-warning{background:#faad14;background:var(--warning-color);border-color:#faad14;border-color:var(--warning-color);color:#fff}.btn-warning:hover:not(:disabled){box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-danger{background:#ff4d4f;background:var(--danger-color);border-color:#ff4d4f;border-color:var(--danger-color);box-shadow:0 1px 2px 0 #0000000f;box-shadow:var(--shadow-sm);color:#fff}.btn-danger:hover:not(:disabled){box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-outline{background:#fff;background:var(--card-bg);border:1px solid #d9d9d9;border:1px solid var(--border-color);color:#000000e0;color:var(--text-primary);transition:all .2s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base)}.btn-outline:hover{border-color:#1890ff;border-color:var(--primary-color);color:#1890ff;color:var(--primary-color)}.btn-sm{font-size:.78rem;min-height:28px;padding:.3rem .65rem}.btn-lg{font-size:.95rem;min-height:44px;padding:.65rem 1.35rem}.btn-icon{align-items:center;border-radius:4px;border-radius:var(--radius-sm);display:flex;height:44px;justify-content:center;padding:0;width:44px}.btn-icon-sm{height:36px;width:36px}@media (max-width:768px){.btn{font-size:.9rem;min-height:36px;padding:.5rem 1rem}.btn-sm{font-size:.75rem;min-height:28px;padding:.35rem .65rem}.btn-lg{font-size:.95rem;min-height:44px;padding:.65rem 1.25rem}}@media (max-width:480px){.btn{font-size:.85rem;min-height:32px;padding:.45rem .9rem}.btn-lg{font-size:.9rem;min-height:40px;padding:.5rem 1rem}}.form-group{display:flex;flex-direction:column;margin-bottom:1.5rem}.form-label{color:#000000e0;color:var(--text-primary);display:block;font-size:.95rem;font-weight:600;margin-bottom:.5rem}.form-label.required:after{color:#ff4d4f;color:var(--danger-color);content:"*";margin-left:.25rem}.form-control{background:#fff;background:var(--card-bg);border:1px solid #d9d9d9;border:1px solid var(--border-color);border-radius:8px;color:#000000e0;color:var(--text-primary);font-family:inherit;font-size:1rem;min-height:40px;padding:.75rem 1rem;transition:all .2s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base);width:100%}.form-control:focus{border-color:#1890ff;border-color:var(--primary-color);box-shadow:0 0 0 3px color-mix(in srgb,#1890ff 20%,#0000);box-shadow:0 0 0 3px color-mix(in srgb,var(--primary-color) 20%,#0000);outline:none}select.form-control option{background:#fff;background:var(--card-bg);color:#000000e0;color:var(--text-primary)}.form-control:disabled{background:#f5f5f5;background:var(--bg-color);color:#000000a6;color:var(--text-secondary);cursor:not-allowed;opacity:.6}.form-control-error{border-color:#ff4d4f;border-color:var(--danger-color)}.form-control-error:focus{box-shadow:0 0 0 3px #ef44441a}.form-error{color:#ff4d4f;color:var(--danger-color)}.form-error,.form-help{font-size:.85rem;margin-top:.25rem}.form-help{color:#000000a6;color:var(--text-secondary)}@media (max-width:768px){.form-control{font-size:16px;padding:.65rem .75rem}}.form-grid{grid-gap:1.5rem;display:grid;gap:1.5rem;grid-template-columns:repeat(auto-fit,minmax(300px,1fr))}@media (max-width:1024px){.form-grid{grid-template-columns:repeat(auto-fit,minmax(250px,1fr))}}@media (max-width:768px){.form-grid{grid-template-columns:1fr}}.badge{align-items:center;border:1px solid #0000;border-radius:4px;border-radius:var(--radius-sm);display:inline-flex;font-size:.75rem;font-weight:500;line-height:1.6;padding:.125rem .6rem;white-space:nowrap}.badge-primary{background:color-mix(in srgb,#1890ff 10%,#fff);background:color-mix(in srgb,var(--primary-color) 10%,var(--card-bg));border-color:color-mix(in srgb,#1890ff 30%,#0000);border-color:color-mix(in srgb,var(--primary-color) 30%,#0000);color:#1890ff;color:var(--primary-color)}.badge-secondary{background:#f5f5f5;background:var(--bg-color);border-color:#d9d9d9;border-color:var(--border-color);color:#000000a6;color:var(--text-secondary)}.badge-success{background:color-mix(in srgb,#52c41a 10%,#fff);background:color-mix(in srgb,var(--success-color) 10%,var(--card-bg));border-color:color-mix(in srgb,#52c41a 30%,#0000);border-color:color-mix(in srgb,var(--success-color) 30%,#0000);color:#389e0d;color:var(--success-text)}.badge-danger{background:color-mix(in srgb,#ff4d4f 10%,#fff);background:color-mix(in srgb,var(--danger-color) 10%,var(--card-bg));border-color:color-mix(in srgb,#ff4d4f 30%,#0000);border-color:color-mix(in srgb,var(--danger-color) 30%,#0000);color:#cf1322;color:var(--danger-text)}.badge-warning{background:color-mix(in srgb,#faad14 10%,#fff);background:color-mix(in srgb,var(--warning-color) 10%,var(--card-bg));border-color:color-mix(in srgb,#faad14 30%,#0000);border-color:color-mix(in srgb,var(--warning-color) 30%,#0000);color:#d48806;color:var(--warning-text)}.badge-info{background:color-mix(in srgb,#1890ff 10%,#fff);background:color-mix(in srgb,var(--primary-color) 10%,var(--card-bg));border-color:color-mix(in srgb,#1890ff 30%,#0000);border-color:color-mix(in srgb,var(--primary-color) 30%,#0000);color:#1890ff;color:var(--primary-color)}.modal-overlay{align-items:center;animation:fadeIn .2s cubic-bezier(.4,0,.2,1);animation:fadeIn var(--transition-base);background:#00000073;bottom:0;display:flex;justify-content:center;left:0;padding:1rem;position:fixed;right:0;top:0;z-index:1000}.modal,.modal-overlay{-webkit-overflow-scrolling:touch}.modal{animation:fadeIn .35s cubic-bezier(.4,0,.2,1);animation:fadeIn var(--transition-smooth);background:#fff;background:var(--card-bg);border:1px solid #d9d9d9;border:1px solid var(--border-color);border-radius:8px;border-radius:var(--radius-lg);box-shadow:0 25px 50px -12px #00000040;box-shadow:var(--shadow-xl);max-height:90vh;max-width:600px;overflow-y:auto;padding:1.5rem;width:100%}.modal-header{align-items:center;border-bottom:1px solid #d9d9d9;border-bottom:1px solid var(--border-color);display:flex;justify-content:space-between;margin:-1.5rem -1.5rem 1.5rem;padding:1.25rem 1.5rem}.modal-title{color:#000000e0;color:var(--text-primary);font-size:1.25rem;font-weight:600;margin:0}.modal-close{align-items:center;background:none;border:none;border-radius:4px;border-radius:var(--radius-sm);color:#00000073;color:var(--text-light);cursor:pointer;display:flex;font-size:1.5rem;height:32px;justify-content:center;padding:0;transition:all .2s cubic-bezier(.4,0,.2,1);transition:all var(--transition-base);width:32px}.modal-close:hover{background:#f5f5f5;background:var(--bg-color);color:#000000e0;color:var(--text-primary)}.modal-body{margin-bottom:1.5rem}.modal-footer{border-top:1px solid #d9d9d9;border-top:1px solid var(--border-color);display:flex;flex-wrap:wrap;gap:.75rem;justify-content:flex-end;margin:0 -1.5rem -1.5rem;padding:1rem 1.5rem}.modal-lg{max-width:800px}.modal-xl{max-width:1200px}@media (max-width:768px){.modal-overlay{align-items:center;padding:.75rem}.modal{border-radius:16px;max-height:90vh;padding:1.5rem}.modal-lg,.modal-xl{max-width:95vw}}@media (max-width:480px){.modal{border-radius:12px;padding:1.25rem}.modal-title{font-size:1.25rem}.modal-footer{flex-direction:column-reverse}.modal-footer .btn{width:100%}}.spinner{animation:spin .8s linear infinite;border:3px solid #d9d9d9;border-top:3px solid #1890ff;border:3px solid var(--border-color);border-radius:50%;border-top-color:var(--primary-color);height:40px;margin:2rem auto;width:40px}.fa-spin{animation:spin 1s linear infinite}.loading-container{min-height:200px}.loading-container,.login-container{align-items:center;display:flex;justify-content:center;padding:2rem}.login-container{background:linear-gradient(135deg,#0a192f,#0d2744 55%,color-mix(in srgb,#1890ff 35%,#0d2744));background:linear-gradient(135deg,#0a192f 0,#0d2744 55%,color-mix(in srgb,var(--primary-color) 35%,#0d2744) 100%);flex-direction:column;min-height:100vh;overflow:hidden;position:relative}.login-decor-circle{background:color-mix(in srgb,#1890ff 14%,#0000);background:color-mix(in srgb,var(--primary-color) 14%,#0000);border-radius:50%;pointer-events:none;position:fixed}.login-decor-circle.top-right{height:400px;right:-100px;top:-100px;width:400px}.login-decor-circle.bottom-left{background:color-mix(in srgb,#1890ff 9%,#0000);background:color-mix(in srgb,var(--primary-color) 9%,#0000);bottom:-80px;height:300px;left:-80px;width:300px}.login-card{background:#fff;background:var(--card-bg);border-radius:12px;border-radius:var(--radius-xl);box-shadow:0 25px 50px -12px #00000040;box-shadow:var(--shadow-xl);max-width:420px;padding:clamp(1.5rem,4vw,2rem) clamp(1.5rem,4vw,2rem) 1.5rem;position:relative;width:100%;z-index:1}.login-card h2{color:#000000e0;color:var(--text-primary);font-size:clamp(1.25rem,4vw,1.375rem);font-weight:600;margin-bottom:.25rem;text-align:center}.login-logo{color:#1890ff;color:var(--primary-color);font-size:2.1rem;gap:.6rem;margin-bottom:1.25rem}.login-brand,.login-logo{align-items:center;display:flex;justify-content:center}.login-brand{gap:.7rem;margin-bottom:1.5rem}.login-brand-icon{color:#1890ff;color:var(--primary-color);display:flex;font-size:2rem;line-height:1}.login-brand-text{align-items:flex-start;display:flex;flex-direction:column;line-height:1.1}.login-brand-name{color:#000000e0;color:var(--text-primary);font-size:1.55rem;font-weight:900;letter-spacing:.5px}.login-tagline{font-size:.68rem;letter-spacing:1.5px;margin-top:.15rem;text-transform:uppercase}.login-compliance-badge,.login-tagline{color:#000000a6;color:var(--text-secondary)}.login-compliance-badge{align-items:center;display:flex;font-size:.7rem;gap:.4rem;justify-content:center;margin-top:.75rem}.login-compliance-badge svg{color:#52c41a;color:var(--success-color);font-size:.75rem}.login-footer{color:#ffffff73;font-size:.72rem;margin-top:1.25rem;position:relative;text-align:center;z-index:1}@media (max-width:480px){.login-container{padding:1rem}.login-card{border-radius:8px;border-radius:var(--radius-lg);padding:1.5rem}.login-card h2{font-size:1.25rem}.login-logo{font-size:1.75rem}}.alert{align-items:flex-start;animation:slideInDown .3s ease-out;border-radius:8px;display:flex;gap:1rem;margin-bottom:1rem;padding:1rem 1.5rem}@keyframes slideInDown{0%{opacity:0;transform:translateY(-10px)}to{opacity:1;transform:translateY(0)}}.alert-success{background:#10b9811a;border-left:4px solid #52c41a;border-left:4px solid var(--success-color);color:#52c41a;color:var(--success-color)}.alert-warning{background:#f59e0b1a;border-left:4px solid #faad14;border-left:4px solid var(--warning-color);color:#faad14;color:var(--warning-color)}.alert-danger{background:#ef44441a;border-left:4px solid #ff4d4f;border-left:4px solid var(--danger-color);color:#ff4d4f;color:var(--danger-color)}.alert-info{background:#2563eb1a;border-left:4px solid #1890ff;border-left:4px solid var(--primary-color);color:#1890ff;color:var(--primary-color)}.text-left{text-align:left}.text-primary{color:#1890ff;color:var(--primary-color)}.text-success{color:#52c41a;color:var(--success-color)}.text-danger{color:#ff4d4f;color:var(--danger-color)}.text-warning{color:#faad14;color:var(--warning-color)}.mt-0{margin-top:0}.mt-4{margin-top:2rem}.mb-0{margin-bottom:0}.mb-4{margin-bottom:2rem}.mx-auto{margin-left:auto;margin-right:auto}.my-auto{margin-bottom:auto;margin-top:auto}.p-0{padding:0}.p-1{padding:.5rem}.p-2{padding:1rem}.p-3{padding:1.5rem}.p-4{padding:2rem}.flex-col{display:flex;flex-direction:column}.flex-wrap{flex-wrap:wrap}.flex-between{display:flex;justify-content:space-between}.flex-between,.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.justify-end{justify-content:flex-end}.gap-0{gap:0}.gap-3{gap:1.5rem}.gap-4{gap:2rem}.h-full{height:100%}.max-w-sm{max-width:24rem}.max-w-md{max-width:28rem}.max-w-lg{max-width:32rem}.max-w-2xl{max-width:42rem}.max-w-4xl{max-width:56rem}.overflow-hidden{overflow:hidden}.overflow-x-auto{overflow-x:auto}.overflow-y-auto{overflow-y:auto}.overflow-x-hidden{overflow-x:hidden}.rounded{border-radius:.375rem}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-2xl{border-radius:1rem}.rounded-full{border-radius:9999px}.shadow{box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f;box-shadow:var(--shadow)}.shadow-md{box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-md)}.shadow-lg{box-shadow:0 20px 25px -5px #00000026,0 10px 10px -5px #0000000a;box-shadow:var(--shadow-lg)}@media print{.breadcrumb-bar,.btn,.header,.sidebar,.sidebar-backdrop,.sidebar-toggle{display:none}.main-content{background:#fff;max-width:none!important;overflow:visible;width:100%!important}.content-card{background:#fff;border-radius:0;box-shadow:none;margin:0;padding:0}.layout-shell{display:block}body{background:#fff}.card{border:1px solid #d9d9d9;border:1px solid var(--border-color);box-shadow:none}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}@media (max-width:1280px){.card-header{align-items:flex-start;flex-wrap:wrap;gap:.75rem}.card-header .card-actions,.card-header>div:last-child{display:flex;flex-wrap:wrap;gap:.5rem;justify-content:flex-start;width:100%}.card-header .btn,.card-header button.btn,.card-header label.btn{font-size:.84rem;line-height:1.2;padding:.46rem .7rem;white-space:nowrap}}@media (max-width:768px){.form-grid,.stats-grid{grid-template-columns:1fr}.table-container{font-size:.85rem}td,th{padding:.5rem}}@media (max-width:1024px){.layout-shell{flex-direction:row!important;position:relative}.layout-shell .main-content{min-width:0}}.text-center{text-align:center}.text-right{text-align:right}.text-muted{color:#000000a6;color:var(--text-secondary)}.mt-1{margin-top:.5rem}.mt-2{margin-top:1rem}.mt-3{margin-top:1.5rem}.mb-1{margin-bottom:.5rem}.mb-2{margin-bottom:1rem}.mb-3{margin-bottom:1.5rem}.flex{display:flex}.flex-center{align-items:center;display:flex;justify-content:center}.gap-1{gap:.5rem}.gap-2{gap:1rem}.w-full{width:100%}.btn-info{background:#1890ff;background:var(--info-color);border-color:#1890ff;border-color:var(--info-color);color:#fff}.btn-info:hover:not(:disabled){box-shadow:0 10px 15px -3px #0000001a,0 4px 6px -2px #0000000d;box-shadow:var(--shadow-md);transform:translateY(-1px)}.btn-outline-primary{background:#0000;border:1px solid #1890ff;border:1px solid var(--primary-color);color:#1890ff;color:var(--primary-color)}.btn-outline-primary:hover{background:#1890ff;background:var(--primary-color);color:#fff}.btn-danger-outline{background:#0000;border:1px solid #ff4d4f;border:1px solid var(--danger-color);color:#ff4d4f;color:var(--danger-color)}.btn-danger-outline:hover{background:#ff4d4f;background:var(--danger-color);color:#fff}:root{--toastify-color-light:#fff;--toastify-color-dark:#121212;--toastify-color-info:#3498db;--toastify-color-success:#07bc0c;--toastify-color-warning:#f1c40f;--toastify-color-error:#e74c3c;--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-toast-width:320px;--toastify-toast-background:#fff;--toastify-toast-min-height:64px;--toastify-toast-max-height:800px;--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__toast-container{box-sizing:border-box;color:#fff;padding:4px;position:fixed;-webkit-transform:translateZ(9999);-webkit-transform:translateZ(var(--toastify-z-index));width:320px;width:var(--toastify-toast-width);z-index:9999;z-index:var(--toastify-z-index)}.Toastify__toast-container--top-left{left:1em;top:1em}.Toastify__toast-container--top-center{left:50%;top:1em;transform:translateX(-50%)}.Toastify__toast-container--top-right{right:1em;top:1em}.Toastify__toast-container--bottom-left{bottom:1em;left:1em}.Toastify__toast-container--bottom-center{bottom:1em;left:50%;transform:translateX(-50%)}.Toastify__toast-container--bottom-right{bottom:1em;right:1em}@media only screen and (max-width:480px){.Toastify__toast-container{left:0;margin:0;padding:0;width:100vw}.Toastify__toast-container--top-center,.Toastify__toast-container--top-left,.Toastify__toast-container--top-right{top:0;transform:translateX(0)}.Toastify__toast-container--bottom-center,.Toastify__toast-container--bottom-left,.Toastify__toast-container--bottom-right{bottom:0;transform:translateX(0)}.Toastify__toast-container--rtl{left:auto;right:0}}.Toastify__toast{border-radius:4px;box-shadow:0 1px 10px 0 #0000001a,0 2px 15px 0 #0000000d;box-sizing:border-box;cursor:default;direction:ltr;display:flex;font-family:sans-serif;font-family:var(--toastify-font-family);justify-content:space-between;margin-bottom:1rem;max-height:800px;max-height:var(--toastify-toast-max-height);min-height:64px;min-height:var(--toastify-toast-min-height);overflow:hidden;padding:8px;position:relative;z-index:0}.Toastify__toast--rtl{direction:rtl}.Toastify__toast--close-on-click{cursor:pointer}.Toastify__toast-body{align-items:center;display:flex;flex:1 1 auto;margin:auto 0;padding:6px}.Toastify__toast-body>div:last-child{flex:1 1;word-break:break-word}.Toastify__toast-icon{-webkit-margin-end:10px;display:flex;flex-shrink:0;margin-inline-end:10px;width:20px}.Toastify--animate{animation-duration:.7s;animation-fill-mode:both}.Toastify--animate-icon{animation-duration:.3s;animation-fill-mode:both}@media only screen and (max-width:480px){.Toastify__toast{border-radius:0;margin-bottom:0}}.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:#e74c3c;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:#e74c3c;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{align-self:flex-start;background:#0000;border:none;color:#fff;cursor:pointer;opacity:.7;outline:none;padding:0;transition:.3s ease}.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:5px;left:0;opacity:.7;position:absolute;transform-origin:left;width:100%;z-index:9999;z-index:var(--toastify-z-index)}.Toastify__progress-bar--animated{animation:Toastify__trackProgress linear 1 forwards}.Toastify__progress-bar--controlled{transition:transform .2s}.Toastify__progress-bar--rtl{left:auto;right:0;transform-origin:right}.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,0,0)}to{opacity:0;transform:translate3d(2000px,0,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,0,0)}to{opacity:0;transform:translate3d(-2000px,0,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,-10px,0)}40%,45%{opacity:1;transform:translate3d(0,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,10px,0)}40%,45%{opacity:1;transform:translate3d(0,-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: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:perspective(400px)}30%{opacity:1;transform:perspective(400px) rotateX(-20deg)}to{opacity:0;transform: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:translateZ(0)}}@keyframes Toastify__slideInLeft{0%{transform:translate3d(-110%,0,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideInUp{0%{transform:translate3d(0,110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideInDown{0%{transform:translate3d(0,-110%,0);visibility:visible}to{transform:translateZ(0)}}@keyframes Toastify__slideOutRight{0%{transform:translateZ(0)}to{transform:translate3d(110%,0,0);visibility:hidden}}@keyframes Toastify__slideOutLeft{0%{transform:translateZ(0)}to{transform:translate3d(-110%,0,0);visibility:hidden}}@keyframes Toastify__slideOutDown{0%{transform:translateZ(0)}to{transform:translate3d(0,500px,0);visibility:hidden}}@keyframes Toastify__slideOutUp{0%{transform:translateZ(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-name:Toastify__slideOutLeft}.Toastify__slide-exit--bottom-right,.Toastify__slide-exit--top-right{animation-name:Toastify__slideOutRight}.Toastify__slide-exit--top-center{animation-name:Toastify__slideOutUp}.Toastify__slide-exit--bottom-center{animation-name:Toastify__slideOutDown}@keyframes Toastify__spin{0%{transform:rotate(0deg)}to{transform:rotate(1turn)}}
/*# sourceMappingURL=main.a6d08ef9.css.map*/