.page-wrapper{width:100%;min-height:100%}.page-wrapper.page-entering{opacity:0}.page-wrapper.page-entered,.page-wrapper.page-leaving{opacity:1}.fade-mode-enter-from{opacity:0;transform:translateY(15px)}.fade-mode-leave-to{opacity:0;transform:translateY(-10px)}.slide-left-enter-active,.slide-left-leave-active{transition:all .4s cubic-bezier(.34,1.56,.64,1)}.slide-right-enter-active,.slide-right-leave-active{transition:all .4s cubic-bezier(.34,1.56,.64,1)}.slide-right-enter-from{opacity:0;transform:translate(-40px)scale(.98)}.scale-mode-enter-active,.scale-mode-leave-active{transition:all .3s cubic-bezier(.34,1.56,.64,1)}.scale-mode-enter-from{opacity:0;transform:scale(.9)}.scale-mode-leave-to{opacity:0;transform:scale(.95)}.page-wrapper.page-entered>*{animation:.5s both fadeInUp}.page-wrapper.page-entered>:first-child{animation-delay:50ms}.page-wrapper.page-entered>:nth-child(2){animation-delay:.1s}.page-wrapper.page-entered>:nth-child(3){animation-delay:.15s}.page-wrapper.page-entered>:nth-child(4){animation-delay:.2s}.page-wrapper.page-entered>:nth-child(5){animation-delay:.25s}.page-wrapper.page-entered>:nth-child(6){animation-delay:.3s}.page-wrapper.page-entered>:nth-child(7){animation-delay:.35s}.page-wrapper.page-entered>:nth-child(8){animation-delay:.4s}.page-wrapper.page-entered>:nth-child(9){animation-delay:.45s}.page-wrapper.page-entered>:nth-child(10){animation-delay:.5s}.page-wrapper.page-entered>:nth-child(11){animation-delay:.55s}.page-wrapper.page-entered>:nth-child(12){animation-delay:.6s}.page-wrapper.page-entered>:nth-child(13){animation-delay:.65s}.page-wrapper.page-entered>:nth-child(14){animation-delay:.7s}.page-wrapper.page-entered>:nth-child(15){animation-delay:.75s}.page-wrapper.page-entered>:nth-child(16){animation-delay:.8s}.page-wrapper.page-entered>:nth-child(17){animation-delay:.85s}.page-wrapper.page-entered>:nth-child(18){animation-delay:.9s}.page-wrapper.page-entered>:nth-child(19){animation-delay:.95s}.page-wrapper.page-entered>:nth-child(20){animation-delay:1s}@keyframes fadeInUp{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}#app{width:100%;height:100vh}#nprogress{pointer-events:none}#nprogress .bar{z-index:1031;background:#29d;width:100%;height:2px;position:fixed;top:0;left:0}#nprogress .peg{opacity:1;width:100px;height:100%;display:block;position:absolute;right:0;transform:rotate(3deg)translateY(-4px);box-shadow:0 0 10px #29d,0 0 5px #29d}#nprogress .spinner{z-index:1031;display:block;position:fixed;top:15px;right:15px}#nprogress .spinner-icon{box-sizing:border-box;border:2px solid #0000;border-color:#29d #0000 #0000 #29d;border-radius:50%;width:18px;height:18px;animation:.4s linear infinite nprogress-spinner}.nprogress-custom-parent{position:relative;overflow:hidden}.nprogress-custom-parent #nprogress .spinner,.nprogress-custom-parent #nprogress .bar{position:absolute}@-webkit-keyframes nprogress-spinner{0%{-webkit-transform:rotate(0)}to{-webkit-transform:rotate(360deg)}}@keyframes nprogress-spinner{0%{transform:rotate(0)}to{transform:rotate(360deg)}}[data-v-d4b680a0]:root{--radius-none:0;--radius-xs:2px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:10px;--radius-2xl:12px;--radius-3xl:14px;--radius-full:9999px;--radius-button:var(--radius-lg);--radius-button-sm:var(--radius-md);--radius-card:var(--radius-2xl);--radius-card-lg:var(--radius-3xl);--radius-dialog:var(--radius-xl);--radius-modal:var(--radius-2xl);--radius-avatar:var(--radius-full);--radius-badge:var(--radius-full);--radius-input:var(--radius-sm);--radius-tooltip:var(--radius-md);--radius-dropdown:var(--radius-lg);--radius-table:var(--radius-none);--radius-tag:var(--radius-sm);--radius-progress:var(--radius-full);--radius-bubble:14px;--radius-bubble-tail:4px;--radius-widget:var(--radius-2xl);--radius-sidebar-item:var(--radius-md);--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", sans-serif;--font-mono:"JetBrains Mono", "Fira Code", "Consolas", "Monaco", monospace;--font-display:"Inter", sans-serif;--font-size-xs:12px;--font-size-sm:13px;--font-size-base:14px;--font-size-md:15px;--font-size-lg:16px;--font-size-xl:18px;--font-size-2xl:20px;--font-size-3xl:24px;--font-size-4xl:28px;--line-height-tight:1.25;--line-height-snug:1.375;--line-height-normal:1.5;--line-height-relaxed:1.625;--line-height-loose:2;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--letter-spacing-tight:-.02em;--letter-spacing-normal:0;--letter-spacing-wide:.02em;--space-0:0;--space-px:1px;--space-0-5:2px;--space-1:4px;--space-1-5:6px;--space-2:8px;--space-2-5:10px;--space-3:12px;--space-3-5:14px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-9:36px;--space-10:40px;--space-11:44px;--space-12:48px;--space-14:56px;--space-16:64px;--space-20:80px;--space-24:96px;--space-32:128px;--spacing-xs:var(--space-1);--spacing-sm:var(--space-2);--spacing-md:var(--space-4);--spacing-lg:var(--space-6);--spacing-xl:var(--space-8);--spacing-2xl:var(--space-12);--gap-xs:var(--space-2);--gap-sm:var(--space-3);--gap-md:var(--space-4);--gap-lg:var(--space-6);--padding-input:var(--space-3) var(--space-4);--padding-btn-sm:var(--space-1-5) var(--space-3);--padding-btn-md:var(--space-2) var(--space-4);--padding-btn-lg:var(--space-3) var(--space-6);--padding-card:var(--space-6);--padding-panel:var(--space-6);--padding-modal:var(--space-8);--padding-page:var(--space-6);--shadow-none:none;--shadow-xs:0 1px 2px #0000000a, 0 1px 3px #0000000f;--shadow-sm:0 2px 4px #0000000f, 0 4px 6px #00000014;--shadow-md:0 4px 8px #00000014, 0 8px 16px #0000001a;--shadow-lg:0 8px 16px #0000001a, 0 16px 32px #0000001f;--shadow-xl:0 12px 24px #0000001f, 0 24px 48px #00000029;--shadow-2xl:0 20px 40px #00000026, 0 40px 80px #0003;--shadow-primary:0 4px 14px #409eff40, 0 8px 28px #409eff26;--shadow-success:0 4px 14px #67c23a40;--shadow-warning:0 4px 14px #e6a23c40;--shadow-danger:0 4px 14px #f56c6c40;--shadow-inner:inset 0 2px 4px #0000000f;--elevation-flat:var(--shadow-none);--elevation-hover:var(--shadow-sm);--elevation-raised:var(--shadow-md);--elevation-float:var(--shadow-lg);--elevation-modal:var(--shadow-xl);--elevation-popover:var(--shadow-md);--elevation-dropdown:var(--shadow-lg);--elevation-widget:var(--shadow-lg);--elevation-tooltip:var(--shadow-md);--elevation-card:var(--shadow-sm);--elevation-card-hover:var(--shadow-md);--duration-instant:.1s;--duration-fast:.15s;--duration-normal:.25s;--duration-slow:.35s;--duration-slower:.5s;--duration-slowest:.75s;--ease-linear:linear;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--ease-bounce:cubic-bezier(.34, 1.56, .64, 1);--ease-spring:cubic-bezier(.175, .885, .32, 1.275);--transition-colors:color var(--duration-fast) ease, background-color var(--duration-fast) ease, border-color var(--duration-fast) ease;--transition-transform:transform var(--duration-normal) var(--ease-spring);--transition-all:all var(--duration-normal) var(--ease-in-out);--transition-shadow:box-shadow var(--duration-normal) ease;--transition-opacity:opacity var(--duration-normal) ease;--sidebar-transition:width .3s cubic-bezier(.4, 0, .2, 1);--menu-item-transition:all .25s cubic-bezier(.4, 0, .2, 1);--z-base:0;--z-dropdown:100;--z-sticky:200;--z-fixed:300;--z-overlay:400;--z-modal:500;--z-popover:600;--z-tooltip:700;--z-toast:800;--z-maximum:9999;--sidebar-bg:#1e293b;--sidebar-bg-dark:#0f172a;--sidebar-text:#cbd5e1;--sidebar-text-muted:#94a3b8;--sidebar-active-bg:#3b82f626;--sidebar-active-text:#fff;--sidebar-active-icon:#3b82f6;--sidebar-hover-bg:#ffffff0f;--sidebar-border-color:#ffffff14;--sidebar-width-expanded:260px;--sidebar-width-collapsed:64px;--sidebar-logo-height:64px;--sidebar-menu-padding:8px 12px}[data-v-d4b680a0],[data-v-d4b680a0]:before,[data-v-d4b680a0]:after{box-sizing:border-box;margin:0;padding:0}html[data-v-d4b680a0]{font-size:16px;line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}body[data-v-d4b680a0]{font-family:var(--font-sans);color:var(--text-primary);background-color:var(--bg-page);min-height:100vh;transition:background-color var(--duration-slow) ease, color var(--duration-slow) ease}.sidebar-unified[data-v-d4b680a0]{background-color:var(--sidebar-bg,#1e293b);color:var(--sidebar-text,#cbd5e1);height:100vh;transition:width var(--sidebar-transition), background-color var(--duration-slow) ease;flex-direction:column;display:flex;position:relative;overflow:hidden}.sidebar-unified .logo[data-v-d4b680a0]{height:var(--sidebar-logo-height,64px);padding:0 var(--space-5);align-items:center;gap:var(--space-3);border-bottom:1px solid var(--sidebar-border-color,#ffffff14);transition:all var(--duration-normal) ease, padding var(--sidebar-transition);display:flex}.sidebar-unified .logo img[data-v-d4b680a0]{border-radius:var(--radius-md);object-fit:contain;width:32px;height:32px;transition:transform var(--duration-normal) var(--ease-spring), opacity var(--duration-fast) ease;flex-shrink:0}.sidebar-unified .logo span[data-v-d4b680a0]{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:#fff;white-space:nowrap;text-overflow:ellipsis;transition:opacity var(--duration-normal) ease, transform var(--duration-normal) ease;overflow:hidden}.sidebar-unified .logo .logo-badge[data-v-d4b680a0]{color:var(--sidebar-active-icon,#3b82f6);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);white-space:nowrap;transition:all var(--duration-fast) ease;background:linear-gradient(135deg,#3b82f633 0%,#6366f126 100%);border:1px solid #3b82f633;margin-left:auto;padding:2px 10px}.sidebar-unified .logo:hover img[data-v-d4b680a0]{transform:scale(1.05)rotate(-5deg)}.sidebar-unified .logo:hover .logo-badge[data-v-d4b680a0]{background:linear-gradient(135deg,#3b82f64d 0%,#6366f140 100%);box-shadow:0 2px 8px #3b82f640}.sidebar-unified .el-scrollbar[data-v-d4b680a0]{flex:1;overflow-x:hidden}.sidebar-unified .el-scrollbar[data-v-d4b680a0] .el-scrollbar__wrap{overflow-x:hidden}.sidebar-unified .aside-menu[data-v-d4b680a0]{padding:var(--space-3) var(--space-3);background-color:#0000!important;border-right:none!important}.sidebar-unified .aside-menu[data-v-d4b680a0] .el-menu-item{margin:2px var(--space-1);border-radius:var(--radius-sidebar-item,6px);height:44px;transition:all var(--menu-item-transition), background-color var(--duration-instant) ease;line-height:44px;position:relative;padding:0 var(--space-4)!important;color:var(--sidebar-text,#cbd5e1)!important;background-color:#0000!important}.sidebar-unified .aside-menu[data-v-d4b680a0] .el-menu-item:hover{transform:translate(3px);background-color:var(--sidebar-hover-bg,#ffffff0f)!important;color:var(--sidebar-active-text,#fff)!important}.sidebar-unified .aside-menu[data-v-d4b680a0] .el-menu-item:hover .el-icon{color:var(--sidebar-active-icon,#3b82f6);transform:scale(1.15)rotate(5deg)}.sidebar-unified .aside-menu[data-v-d4b680a0] .el-menu-item.is-active{font-weight:var(--font-weight-semibold);background:linear-gradient(135deg, var(--sidebar-active-bg,#3b82f626) 0%, #6366f11a 100%)!important;color:var(--sidebar-active-text,#fff)!important}.sidebar-unified .aside-menu[data-v-d4b680a0] .el-menu-item.is-active:before{content:"";background:linear-gradient(180deg, var(--sidebar-active-icon,#3b82f6) 0%, #60a5fa 100%);border-radius:var(--radius-sm) var(--radius-xs) var(--radius-xs) var(--radius-sm);width:3px;height:60%;animation:.3s cubic-bezier(.34,1.56,.64,1) slideInIndicator-d4b680a0;position:absolute;top:50%;left:4px;transform:translateY(-50%);box-shadow:0 0 8px #3b82f666}.sidebar-unified .aside-menu[data-v-d4b680a0] .el-menu-item.is-active .el-icon{color:var(--sidebar-active-icon,#3b82f6);filter:drop-shadow(0 0 4px #3b82f64d)}.sidebar-unified .aside-menu[data-v-d4b680a0] .el-menu-item .el-icon{vertical-align:middle;margin-right:var(--space-3);transition:transform var(--duration-normal) var(--ease-spring), color var(--duration-fast) ease;font-size:18px}.sidebar-unified .aside-menu[data-v-d4b680a0] .el-menu-item span{font-size:var(--font-size-base);font-weight:var(--font-weight-normal);letter-spacing:var(--letter-spacing-wide)}.sidebar-unified .aside-menu[data-v-d4b680a0] .el-sub-menu__title{margin:2px var(--space-1);border-radius:var(--radius-sidebar-item,6px);height:44px;transition:all var(--menu-item-transition), background-color var(--duration-instant) ease;line-height:44px;position:relative;padding:0 var(--space-4)!important;color:var(--sidebar-text,#cbd5e1)!important;background-color:#0000!important}.sidebar-unified .aside-menu[data-v-d4b680a0] .el-sub-menu__title:hover{transform:translate(2px);background-color:var(--sidebar-hover-bg,#ffffff0a)!important;color:var(--sidebar-active-text,#fff)!important}.sidebar-unified .aside-menu[data-v-d4b680a0] .el-sub-menu__title:hover .el-icon:first-child{color:var(--sidebar-active-icon,#3b82f6);transform:scale(1.1)rotate(5deg)}.sidebar-unified .aside-menu[data-v-d4b680a0] .el-sub-menu__title .el-icon{vertical-align:middle;margin-right:var(--space-3);transition:transform var(--duration-normal) var(--ease-spring), color var(--duration-fast) ease;font-size:18px}.sidebar-unified .aside-menu[data-v-d4b680a0] .el-sub-menu__title .el-sub-menu__icon-arrow{transition:transform var(--duration-normal) var(--ease-spring), opacity var(--duration-fast) ease;font-size:14px}.sidebar-unified .aside-menu[data-v-d4b680a0] .el-sub-menu.is-opened>.el-sub-menu__title .el-sub-menu__icon-arrow{transform:rotate(180deg)}.sidebar-unified .aside-menu[data-v-d4b680a0] .el-menu--inline{padding-left:var(--space-2)}.sidebar-unified .aside-menu[data-v-d4b680a0] .el-menu--inline .el-menu-item{margin:1px var(--space-2);height:40px;line-height:40px;font-size:var(--font-size-sm);padding-left:calc(var(--space-4) + var(--space-8))!important}.sidebar-unified .aside-menu[data-v-d4b680a0] .el-menu--inline .el-menu-item:before{height:50%;left:8px}@keyframes slideInIndicator-d4b680a0{0%{opacity:0;transform:translateY(-50%)scaleY(0)scaleX(.5)}to{opacity:1;transform:translateY(-50%)scaleY(1)scaleX(1)}}@keyframes menuIconBounce-d4b680a0{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes fadeInSlideRight-d4b680a0{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.sidebar-unified.is-collapsed .logo[data-v-d4b680a0]{padding:0 var(--space-3);justify-content:center}.sidebar-unified.is-collapsed .logo img[data-v-d4b680a0]{width:28px;height:28px}.sidebar-unified.is-collapsed .logo span[data-v-d4b680a0],.sidebar-unified.is-collapsed .logo .logo-badge[data-v-d4b680a0]{display:none}.sidebar-unified.is-collapsed .aside-menu[data-v-d4b680a0] .el-menu-item,.sidebar-unified.is-collapsed .aside-menu[data-v-d4b680a0] .el-sub-menu__title{width:calc(100% - var(--space-4));justify-content:center;margin:2px auto;padding:0!important}.sidebar-unified.is-collapsed .aside-menu[data-v-d4b680a0] .el-menu-item .el-icon,.sidebar-unified.is-collapsed .aside-menu[data-v-d4b680a0] .el-sub-menu__title .el-icon{margin-right:0;font-size:20px}.sidebar-unified.is-collapsed .aside-menu[data-v-d4b680a0] .el-menu-item span,.sidebar-unified.is-collapsed .aside-menu[data-v-d4b680a0] .el-sub-menu__title span,.sidebar-unified.is-collapsed .aside-menu[data-v-d4b680a0] .el-sub-menu .el-sub-menu__icon-arrow{display:none}.sidebar-unified.is-collapsed .aside-menu[data-v-d4b680a0] .el-sub-menu:hover>ul{min-width:200px;z-index:var(--z-dropdown);background-color:var(--sidebar-bg-dark,#0f172a);box-shadow:var(--shadow-xl);border:1px solid var(--sidebar-border-color);animation:.2s fadeInSlideRight-d4b680a0;position:absolute;top:0;left:100%;display:block!important}@media (max-width:768px){.sidebar-unified.mobile-menu[data-v-d4b680a0]{z-index:var(--z-modal);box-shadow:var(--shadow-2xl);transition:transform var(--duration-slow) cubic-bezier(.4, 0, .2, 1);position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar-unified.mobile-menu.show[data-v-d4b680a0]{transform:translate(0)}}[data-theme=dark]{background-color:var(--sidebar-bg-dark,#0f172a);background:linear-gradient(#60a5fa 0%,#93c5fd 100%);border-color:#60a5fa33;box-shadow:0 0 12px #60a5fa80}.admin-layout .admin-aside[data-v-d4b680a0]{background-color:var(--sidebar-bg,#1e293b);color:var(--sidebar-text,#cbd5e1);height:100vh;transition:width var(--sidebar-transition), background-color var(--duration-slow) ease;border-right:1px solid var(--sidebar-border-color);flex-direction:column;display:flex;position:relative;overflow:hidden}.admin-layout .admin-aside.mobile-menu[data-v-d4b680a0]{z-index:var(--z-modal);box-shadow:var(--shadow-2xl);transition:transform var(--duration-slow) cubic-bezier(.4, 0, .2, 1);position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.admin-layout .admin-aside.mobile-menu.show[data-v-d4b680a0]{transform:translate(0)}.admin-layout .admin-aside .logo[data-v-d4b680a0]{height:var(--sidebar-logo-height);padding:0 var(--padding-page);border-bottom:1px solid var(--sidebar-border-color);justify-content:center;align-items:center;gap:var(--space-3);display:flex}.admin-layout .admin-aside .logo img[data-v-d4b680a0]{object-fit:contain;width:auto;height:32px}.admin-layout .admin-aside .logo span[data-v-d4b680a0]{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:#fff;white-space:nowrap}.admin-layout .admin-aside .logo .logo-badge[data-v-d4b680a0]{font-size:var(--font-size-xs);margin-left:var(--space-2);color:var(--sidebar-text,#cbd5e1);background-color:#ffffff1f;border:1px solid #ffffff14;padding:2px 10px}.admin-layout .admin-aside .admin-menu[data-v-d4b680a0]{padding:var(--space-3) var(--space-3);background-color:#0000!important;border-right:none!important}.admin-layout .admin-aside .admin-menu[data-v-d4b680a0] .el-menu-item{margin:2px var(--space-1);border-radius:var(--radius-sidebar-item,6px);height:44px;transition:all var(--menu-item-transition), background-color var(--duration-instant) ease;line-height:44px;position:relative;padding:0 var(--space-4)!important;color:var(--sidebar-text,#cbd5e1)!important;background-color:#0000!important}.admin-layout .admin-aside .admin-menu[data-v-d4b680a0] .el-menu-item:hover{transform:translate(3px);background-color:var(--sidebar-hover-bg,#ffffff0f)!important;color:var(--sidebar-active-text,#fff)!important}.admin-layout .admin-aside .admin-menu[data-v-d4b680a0] .el-menu-item:hover .el-icon{color:var(--sidebar-active-icon,#3b82f6);transform:scale(1.15)rotate(5deg)}.admin-layout .admin-aside .admin-menu[data-v-d4b680a0] .el-menu-item.is-active{font-weight:var(--font-weight-semibold);background:linear-gradient(135deg, var(--sidebar-active-bg,#3b82f626) 0%, #6366f11a 100%)!important;color:var(--sidebar-active-text,#fff)!important}.admin-layout .admin-aside .admin-menu[data-v-d4b680a0] .el-menu-item.is-active:before{content:"";background:linear-gradient(180deg, var(--sidebar-active-icon,#3b82f6) 0%, #60a5fa 100%);border-radius:var(--radius-sm) var(--radius-xs) var(--radius-xs) var(--radius-sm);width:3px;height:60%;animation:.3s cubic-bezier(.34,1.56,.64,1) slideInIndicator-d4b680a0;position:absolute;top:50%;left:4px;transform:translateY(-50%);box-shadow:0 0 8px #3b82f666}.admin-layout .admin-aside .admin-menu[data-v-d4b680a0] .el-menu-item.is-active .el-icon{color:var(--sidebar-active-icon,#3b82f6);filter:drop-shadow(0 0 4px #3b82f64d)}.admin-layout .admin-aside .admin-menu[data-v-d4b680a0] .el-menu-item .el-icon{vertical-align:middle;margin-right:var(--space-3);transition:transform var(--duration-normal) var(--ease-spring), color var(--duration-fast) ease;font-size:18px}.admin-layout .admin-aside .admin-menu[data-v-d4b680a0] .el-menu-item span{font-size:var(--font-size-base);font-weight:var(--font-weight-normal);letter-spacing:var(--letter-spacing-wide)}.admin-layout .admin-aside .admin-menu[data-v-d4b680a0] .el-sub-menu__title{margin:2px var(--space-1);border-radius:var(--radius-sidebar-item,6px);height:44px;transition:all var(--menu-item-transition), background-color var(--duration-instant) ease;line-height:44px;position:relative;padding:0 var(--space-4)!important;color:var(--sidebar-text,#cbd5e1)!important;background-color:#0000!important}.admin-layout .admin-aside .admin-menu[data-v-d4b680a0] .el-sub-menu__title:hover{transform:translate(2px);background-color:var(--sidebar-hover-bg,#ffffff0a)!important;color:var(--sidebar-active-text,#fff)!important}.admin-layout .admin-aside .admin-menu[data-v-d4b680a0] .el-sub-menu__title:hover .el-icon:first-child{color:var(--sidebar-active-icon,#3b82f6);transform:scale(1.1)rotate(5deg)}.admin-layout .admin-aside .admin-menu[data-v-d4b680a0] .el-sub-menu__title .el-icon{vertical-align:middle;margin-right:var(--space-3);transition:transform var(--duration-normal) var(--ease-spring), color var(--duration-fast) ease;font-size:18px}.admin-layout .admin-aside .admin-menu[data-v-d4b680a0] .el-sub-menu__title .el-sub-menu__icon-arrow{transition:transform var(--duration-normal) var(--ease-spring), opacity var(--duration-fast) ease;font-size:14px}.admin-layout .admin-aside .admin-menu[data-v-d4b680a0] .el-sub-menu.is-opened>.el-sub-menu__title .el-sub-menu__icon-arrow{transform:rotate(180deg)}.admin-layout .admin-aside .admin-menu[data-v-d4b680a0] .el-menu--inline{padding-left:var(--space-2)}.admin-layout .admin-aside .admin-menu[data-v-d4b680a0] .el-menu--inline .el-menu-item{margin:1px var(--space-2);height:40px;line-height:40px;font-size:var(--font-size-sm);padding-left:calc(var(--space-4) + var(--space-8))!important}.admin-layout .admin-aside .admin-menu[data-v-d4b680a0] .el-menu--inline .el-menu-item:before{height:50%;left:8px}.admin-layout .admin-header[data-v-d4b680a0]{background:var(--bg-primary);box-shadow:var(--shadow-sm);border-bottom:1px solid var(--border-light)}.layout-container[data-v-7680a324]{height:100vh}.mobile-overlay[data-v-7680a324]{z-index:var(--z-modal-backdrop);background-color:#00000080;position:fixed;top:0;bottom:0;left:0;right:0}.aside[data-v-7680a324]{background-color:var(--bg-sidebar);transition:width var(--transition-normal);z-index:var(--z-fixed);overflow:hidden}.aside.mobile-menu[data-v-7680a324]{position:fixed;top:0;bottom:0;left:0}.aside.mobile-menu[data-v-7680a324]:not(.show){width:0!important}.aside.mobile-menu.show[data-v-7680a324]{box-shadow:var(--shadow-lg)}.aside .logo[data-v-7680a324]{height:var(--header-height);color:var(--text-inverse);font-size:var(--text-lg);font-weight:var(--font-semibold);border-bottom:1px solid #ffffff1a;justify-content:center;align-items:center;display:flex;overflow:hidden}.aside .logo img[data-v-7680a324]{height:var(--avatar-size-md);margin-right:var(--space-2)}.aside .aside-menu[data-v-7680a324]{height:calc(100vh - var(--header-height));border-right:none}.aside .aside-menu[data-v-7680a324]:not(.el-menu--collapse){width:var(--sidebar-width)}.aside .aside-menu[data-v-7680a324] .el-menu-item,.aside .aside-menu[data-v-7680a324] .el-sub-menu__title{color:var(--text-sidebar)}.aside .aside-menu[data-v-7680a324] .el-menu-item:hover,.aside .aside-menu[data-v-7680a324] .el-sub-menu__title:hover{background-color:var(--bg-sidebar-hover)!important}.aside .aside-menu[data-v-7680a324] .el-menu-item.is-active{border-left:3px solid var(--color-primary);background-color:var(--bg-sidebar-active)!important;color:var(--color-primary)!important}.header[data-v-7680a324]{background:var(--bg-primary);box-shadow:var(--shadow-sm);padding:0 var(--space-6);height:var(--header-height);border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;display:flex}.header .header-left[data-v-7680a324]{align-items:center;gap:var(--space-4);display:flex}.header .header-left .collapse-btn[data-v-7680a324],.header .header-left .mobile-menu-btn[data-v-7680a324]{cursor:pointer;color:var(--text-secondary);padding:var(--space-1);transition:all var(--transition-fast);font-size:18px}.header .header-left .collapse-btn[data-v-7680a324]:hover,.header .header-left .mobile-menu-btn[data-v-7680a324]:hover{color:var(--color-primary);background-color:var(--color-primary-light)}.header .header-left .collapse-btn[data-v-7680a324]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.header .header-left .mobile-menu-btn[data-v-7680a324]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}@media (max-width:576px){.header .header-left[data-v-7680a324] .el-breadcrumb{display:none}}.header .header-right[data-v-7680a324]{align-items:center;gap:var(--space-3);display:flex}.header .header-right .user-info[data-v-7680a324]{align-items:center;gap:var(--space-2);cursor:pointer;color:var(--text-secondary);padding:var(--space-1) var(--space-3);transition:all var(--transition-fast);display:flex}.header .header-right .user-info[data-v-7680a324]:hover{color:var(--color-primary);background-color:var(--color-primary-light)}.header .header-right .user-info .username[data-v-7680a324]{font-size:var(--text-sm);font-weight:var(--font-medium)}.main[data-v-7680a324]{background-color:var(--bg-secondary);padding:var(--space-6);overflow-y:auto}@media (max-width:768px){.main[data-v-7680a324]{padding:var(--space-3)}}.fade-transform-enter-active[data-v-7680a324],.fade-transform-leave-active[data-v-7680a324]{transition:opacity var(--transition-normal), transform var(--transition-normal)}.fade-transform-enter-from[data-v-7680a324]{opacity:0;transform:translate(-20px)}.fade-transform-leave-to[data-v-7680a324]{opacity:0;transform:translate(20px)}[data-v-d364349b]:root{--radius-none:0;--radius-xs:2px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:10px;--radius-2xl:12px;--radius-3xl:14px;--radius-full:9999px;--radius-button:var(--radius-lg);--radius-button-sm:var(--radius-md);--radius-card:var(--radius-2xl);--radius-card-lg:var(--radius-3xl);--radius-dialog:var(--radius-xl);--radius-modal:var(--radius-2xl);--radius-avatar:var(--radius-full);--radius-badge:var(--radius-full);--radius-input:var(--radius-sm);--radius-tooltip:var(--radius-md);--radius-dropdown:var(--radius-lg);--radius-table:var(--radius-none);--radius-tag:var(--radius-sm);--radius-progress:var(--radius-full);--radius-bubble:14px;--radius-bubble-tail:4px;--radius-widget:var(--radius-2xl);--radius-sidebar-item:var(--radius-md);--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", sans-serif;--font-mono:"JetBrains Mono", "Fira Code", "Consolas", "Monaco", monospace;--font-display:"Inter", sans-serif;--font-size-xs:12px;--font-size-sm:13px;--font-size-base:14px;--font-size-md:15px;--font-size-lg:16px;--font-size-xl:18px;--font-size-2xl:20px;--font-size-3xl:24px;--font-size-4xl:28px;--line-height-tight:1.25;--line-height-snug:1.375;--line-height-normal:1.5;--line-height-relaxed:1.625;--line-height-loose:2;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--letter-spacing-tight:-.02em;--letter-spacing-normal:0;--letter-spacing-wide:.02em;--space-0:0;--space-px:1px;--space-0-5:2px;--space-1:4px;--space-1-5:6px;--space-2:8px;--space-2-5:10px;--space-3:12px;--space-3-5:14px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-9:36px;--space-10:40px;--space-11:44px;--space-12:48px;--space-14:56px;--space-16:64px;--space-20:80px;--space-24:96px;--space-32:128px;--spacing-xs:var(--space-1);--spacing-sm:var(--space-2);--spacing-md:var(--space-4);--spacing-lg:var(--space-6);--spacing-xl:var(--space-8);--spacing-2xl:var(--space-12);--gap-xs:var(--space-2);--gap-sm:var(--space-3);--gap-md:var(--space-4);--gap-lg:var(--space-6);--padding-input:var(--space-3) var(--space-4);--padding-btn-sm:var(--space-1-5) var(--space-3);--padding-btn-md:var(--space-2) var(--space-4);--padding-btn-lg:var(--space-3) var(--space-6);--padding-card:var(--space-6);--padding-panel:var(--space-6);--padding-modal:var(--space-8);--padding-page:var(--space-6);--shadow-none:none;--shadow-xs:0 1px 2px #0000000a, 0 1px 3px #0000000f;--shadow-sm:0 2px 4px #0000000f, 0 4px 6px #00000014;--shadow-md:0 4px 8px #00000014, 0 8px 16px #0000001a;--shadow-lg:0 8px 16px #0000001a, 0 16px 32px #0000001f;--shadow-xl:0 12px 24px #0000001f, 0 24px 48px #00000029;--shadow-2xl:0 20px 40px #00000026, 0 40px 80px #0003;--shadow-primary:0 4px 14px #409eff40, 0 8px 28px #409eff26;--shadow-success:0 4px 14px #67c23a40;--shadow-warning:0 4px 14px #e6a23c40;--shadow-danger:0 4px 14px #f56c6c40;--shadow-inner:inset 0 2px 4px #0000000f;--elevation-flat:var(--shadow-none);--elevation-hover:var(--shadow-sm);--elevation-raised:var(--shadow-md);--elevation-float:var(--shadow-lg);--elevation-modal:var(--shadow-xl);--elevation-popover:var(--shadow-md);--elevation-dropdown:var(--shadow-lg);--elevation-widget:var(--shadow-lg);--elevation-tooltip:var(--shadow-md);--elevation-card:var(--shadow-sm);--elevation-card-hover:var(--shadow-md);--duration-instant:.1s;--duration-fast:.15s;--duration-normal:.25s;--duration-slow:.35s;--duration-slower:.5s;--duration-slowest:.75s;--ease-linear:linear;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--ease-bounce:cubic-bezier(.34, 1.56, .64, 1);--ease-spring:cubic-bezier(.175, .885, .32, 1.275);--transition-colors:color var(--duration-fast) ease, background-color var(--duration-fast) ease, border-color var(--duration-fast) ease;--transition-transform:transform var(--duration-normal) var(--ease-spring);--transition-all:all var(--duration-normal) var(--ease-in-out);--transition-shadow:box-shadow var(--duration-normal) ease;--transition-opacity:opacity var(--duration-normal) ease;--sidebar-transition:width .3s cubic-bezier(.4, 0, .2, 1);--menu-item-transition:all .25s cubic-bezier(.4, 0, .2, 1);--z-base:0;--z-dropdown:100;--z-sticky:200;--z-fixed:300;--z-overlay:400;--z-modal:500;--z-popover:600;--z-tooltip:700;--z-toast:800;--z-maximum:9999;--sidebar-bg:#1e293b;--sidebar-bg-dark:#0f172a;--sidebar-text:#cbd5e1;--sidebar-text-muted:#94a3b8;--sidebar-active-bg:#3b82f626;--sidebar-active-text:#fff;--sidebar-active-icon:#3b82f6;--sidebar-hover-bg:#ffffff0f;--sidebar-border-color:#ffffff14;--sidebar-width-expanded:260px;--sidebar-width-collapsed:64px;--sidebar-logo-height:64px;--sidebar-menu-padding:8px 12px}[data-v-d364349b],[data-v-d364349b]:before,[data-v-d364349b]:after{box-sizing:border-box;margin:0;padding:0}html[data-v-d364349b]{font-size:16px;line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}body[data-v-d364349b]{font-family:var(--font-sans);color:var(--text-primary);background-color:var(--bg-page);min-height:100vh;transition:background-color var(--duration-slow) ease, color var(--duration-slow) ease}.sidebar-unified[data-v-d364349b]{background-color:var(--sidebar-bg,#1e293b);color:var(--sidebar-text,#cbd5e1);height:100vh;transition:width var(--sidebar-transition), background-color var(--duration-slow) ease;flex-direction:column;display:flex;position:relative;overflow:hidden}.sidebar-unified .logo[data-v-d364349b]{height:var(--sidebar-logo-height,64px);padding:0 var(--space-5);align-items:center;gap:var(--space-3);border-bottom:1px solid var(--sidebar-border-color,#ffffff14);transition:all var(--duration-normal) ease, padding var(--sidebar-transition);display:flex}.sidebar-unified .logo img[data-v-d364349b]{border-radius:var(--radius-md);object-fit:contain;width:32px;height:32px;transition:transform var(--duration-normal) var(--ease-spring), opacity var(--duration-fast) ease;flex-shrink:0}.sidebar-unified .logo span[data-v-d364349b]{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:#fff;white-space:nowrap;text-overflow:ellipsis;transition:opacity var(--duration-normal) ease, transform var(--duration-normal) ease;overflow:hidden}.sidebar-unified .logo .logo-badge[data-v-d364349b]{color:var(--sidebar-active-icon,#3b82f6);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);white-space:nowrap;transition:all var(--duration-fast) ease;background:linear-gradient(135deg,#3b82f633 0%,#6366f126 100%);border:1px solid #3b82f633;margin-left:auto;padding:2px 10px}.sidebar-unified .logo:hover img[data-v-d364349b]{transform:scale(1.05)rotate(-5deg)}.sidebar-unified .logo:hover .logo-badge[data-v-d364349b]{background:linear-gradient(135deg,#3b82f64d 0%,#6366f140 100%);box-shadow:0 2px 8px #3b82f640}.sidebar-unified .el-scrollbar[data-v-d364349b]{flex:1;overflow-x:hidden}.sidebar-unified .el-scrollbar[data-v-d364349b] .el-scrollbar__wrap{overflow-x:hidden}.sidebar-unified .aside-menu[data-v-d364349b]{padding:var(--space-3) var(--space-3);background-color:#0000!important;border-right:none!important}.sidebar-unified .aside-menu[data-v-d364349b] .el-menu-item{margin:2px var(--space-1);border-radius:var(--radius-sidebar-item,6px);height:44px;transition:all var(--menu-item-transition), background-color var(--duration-instant) ease;line-height:44px;position:relative;padding:0 var(--space-4)!important;color:var(--sidebar-text,#cbd5e1)!important;background-color:#0000!important}.sidebar-unified .aside-menu[data-v-d364349b] .el-menu-item:hover{transform:translate(3px);background-color:var(--sidebar-hover-bg,#ffffff0f)!important;color:var(--sidebar-active-text,#fff)!important}.sidebar-unified .aside-menu[data-v-d364349b] .el-menu-item:hover .el-icon{color:var(--sidebar-active-icon,#3b82f6);transform:scale(1.15)rotate(5deg)}.sidebar-unified .aside-menu[data-v-d364349b] .el-menu-item.is-active{font-weight:var(--font-weight-semibold);background:linear-gradient(135deg, var(--sidebar-active-bg,#3b82f626) 0%, #6366f11a 100%)!important;color:var(--sidebar-active-text,#fff)!important}.sidebar-unified .aside-menu[data-v-d364349b] .el-menu-item.is-active:before{content:"";background:linear-gradient(180deg, var(--sidebar-active-icon,#3b82f6) 0%, #60a5fa 100%);border-radius:var(--radius-sm) var(--radius-xs) var(--radius-xs) var(--radius-sm);width:3px;height:60%;animation:.3s cubic-bezier(.34,1.56,.64,1) slideInIndicator-d364349b;position:absolute;top:50%;left:4px;transform:translateY(-50%);box-shadow:0 0 8px #3b82f666}.sidebar-unified .aside-menu[data-v-d364349b] .el-menu-item.is-active .el-icon{color:var(--sidebar-active-icon,#3b82f6);filter:drop-shadow(0 0 4px #3b82f64d)}.sidebar-unified .aside-menu[data-v-d364349b] .el-menu-item .el-icon{vertical-align:middle;margin-right:var(--space-3);transition:transform var(--duration-normal) var(--ease-spring), color var(--duration-fast) ease;font-size:18px}.sidebar-unified .aside-menu[data-v-d364349b] .el-menu-item span{font-size:var(--font-size-base);font-weight:var(--font-weight-normal);letter-spacing:var(--letter-spacing-wide)}.sidebar-unified .aside-menu[data-v-d364349b] .el-sub-menu__title{margin:2px var(--space-1);border-radius:var(--radius-sidebar-item,6px);height:44px;transition:all var(--menu-item-transition), background-color var(--duration-instant) ease;line-height:44px;position:relative;padding:0 var(--space-4)!important;color:var(--sidebar-text,#cbd5e1)!important;background-color:#0000!important}.sidebar-unified .aside-menu[data-v-d364349b] .el-sub-menu__title:hover{transform:translate(2px);background-color:var(--sidebar-hover-bg,#ffffff0a)!important;color:var(--sidebar-active-text,#fff)!important}.sidebar-unified .aside-menu[data-v-d364349b] .el-sub-menu__title:hover .el-icon:first-child{color:var(--sidebar-active-icon,#3b82f6);transform:scale(1.1)rotate(5deg)}.sidebar-unified .aside-menu[data-v-d364349b] .el-sub-menu__title .el-icon{vertical-align:middle;margin-right:var(--space-3);transition:transform var(--duration-normal) var(--ease-spring), color var(--duration-fast) ease;font-size:18px}.sidebar-unified .aside-menu[data-v-d364349b] .el-sub-menu__title .el-sub-menu__icon-arrow{transition:transform var(--duration-normal) var(--ease-spring), opacity var(--duration-fast) ease;font-size:14px}.sidebar-unified .aside-menu[data-v-d364349b] .el-sub-menu.is-opened>.el-sub-menu__title .el-sub-menu__icon-arrow{transform:rotate(180deg)}.sidebar-unified .aside-menu[data-v-d364349b] .el-menu--inline{padding-left:var(--space-2)}.sidebar-unified .aside-menu[data-v-d364349b] .el-menu--inline .el-menu-item{margin:1px var(--space-2);height:40px;line-height:40px;font-size:var(--font-size-sm);padding-left:calc(var(--space-4) + var(--space-8))!important}.sidebar-unified .aside-menu[data-v-d364349b] .el-menu--inline .el-menu-item:before{height:50%;left:8px}@keyframes slideInIndicator-d364349b{0%{opacity:0;transform:translateY(-50%)scaleY(0)scaleX(.5)}to{opacity:1;transform:translateY(-50%)scaleY(1)scaleX(1)}}@keyframes menuIconBounce-d364349b{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes fadeInSlideRight-d364349b{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.sidebar-unified.is-collapsed .logo[data-v-d364349b]{padding:0 var(--space-3);justify-content:center}.sidebar-unified.is-collapsed .logo img[data-v-d364349b]{width:28px;height:28px}.sidebar-unified.is-collapsed .logo span[data-v-d364349b],.sidebar-unified.is-collapsed .logo .logo-badge[data-v-d364349b]{display:none}.sidebar-unified.is-collapsed .aside-menu[data-v-d364349b] .el-menu-item,.sidebar-unified.is-collapsed .aside-menu[data-v-d364349b] .el-sub-menu__title{width:calc(100% - var(--space-4));justify-content:center;margin:2px auto;padding:0!important}.sidebar-unified.is-collapsed .aside-menu[data-v-d364349b] .el-menu-item .el-icon,.sidebar-unified.is-collapsed .aside-menu[data-v-d364349b] .el-sub-menu__title .el-icon{margin-right:0;font-size:20px}.sidebar-unified.is-collapsed .aside-menu[data-v-d364349b] .el-menu-item span,.sidebar-unified.is-collapsed .aside-menu[data-v-d364349b] .el-sub-menu__title span,.sidebar-unified.is-collapsed .aside-menu[data-v-d364349b] .el-sub-menu .el-sub-menu__icon-arrow{display:none}.sidebar-unified.is-collapsed .aside-menu[data-v-d364349b] .el-sub-menu:hover>ul{min-width:200px;z-index:var(--z-dropdown);background-color:var(--sidebar-bg-dark,#0f172a);box-shadow:var(--shadow-xl);border:1px solid var(--sidebar-border-color);animation:.2s fadeInSlideRight-d364349b;position:absolute;top:0;left:100%;display:block!important}@media (max-width:768px){.sidebar-unified.mobile-menu[data-v-d364349b]{z-index:var(--z-modal);box-shadow:var(--shadow-2xl);transition:transform var(--duration-slow) cubic-bezier(.4, 0, .2, 1);position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar-unified.mobile-menu.show[data-v-d364349b]{transform:translate(0)}}[data-theme=dark]{background-color:var(--sidebar-bg-dark,#0f172a);background:linear-gradient(#60a5fa 0%,#93c5fd 100%);border-color:#60a5fa33;box-shadow:0 0 12px #60a5fa80}.business-layout .business-aside[data-v-d364349b]{background-color:var(--sidebar-bg,#1e293b);color:var(--sidebar-text,#cbd5e1);height:100vh;transition:width var(--sidebar-transition), background-color var(--duration-slow) ease;border-right:1px solid var(--sidebar-border-color);flex-direction:column;display:flex;position:relative;overflow:hidden}.business-layout .business-aside.mobile-menu[data-v-d364349b]{z-index:var(--z-modal);box-shadow:var(--shadow-2xl);transition:transform var(--duration-slow) cubic-bezier(.4, 0, .2, 1);position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.business-layout .business-aside.mobile-menu.show[data-v-d364349b]{transform:translate(0)}.business-layout .business-aside .logo[data-v-d364349b]{height:var(--sidebar-logo-height);padding:0 var(--padding-page);border-bottom:1px solid var(--sidebar-border-color);justify-content:center;align-items:center;gap:var(--space-3);display:flex}.business-layout .business-aside .logo img[data-v-d364349b]{object-fit:contain;width:auto;height:32px}.business-layout .business-aside .logo span[data-v-d364349b]{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:#fff;white-space:nowrap}.business-layout .business-aside .logo .logo-badge[data-v-d364349b]{font-size:var(--font-size-xs);color:#3498db;margin-left:var(--space-2);background:linear-gradient(135deg,#3498db33,#2980b926);border:1px solid #3498db33;padding:2px 10px}.business-layout .business-aside .business-menu[data-v-d364349b]{padding:var(--space-3) var(--space-3);background-color:#0000!important;border-right:none!important}.business-layout .business-aside .business-menu[data-v-d364349b] .el-menu-item{margin:2px var(--space-1);border-radius:var(--radius-sidebar-item,6px);height:44px;transition:all var(--menu-item-transition), background-color var(--duration-instant) ease;line-height:44px;position:relative;padding:0 var(--space-4)!important;color:var(--sidebar-text,#cbd5e1)!important;background-color:#0000!important}.business-layout .business-aside .business-menu[data-v-d364349b] .el-menu-item:hover{transform:translate(3px);background-color:var(--sidebar-hover-bg,#ffffff0f)!important;color:var(--sidebar-active-text,#fff)!important}.business-layout .business-aside .business-menu[data-v-d364349b] .el-menu-item:hover .el-icon{color:var(--sidebar-active-icon,#3b82f6);transform:scale(1.15)rotate(5deg)}.business-layout .business-aside .business-menu[data-v-d364349b] .el-menu-item.is-active{font-weight:var(--font-weight-semibold);background:linear-gradient(135deg, var(--sidebar-active-bg,#3b82f626) 0%, #6366f11a 100%)!important;color:var(--sidebar-active-text,#fff)!important}.business-layout .business-aside .business-menu[data-v-d364349b] .el-menu-item.is-active:before{content:"";background:linear-gradient(180deg, var(--sidebar-active-icon,#3b82f6) 0%, #60a5fa 100%);border-radius:var(--radius-sm) var(--radius-xs) var(--radius-xs) var(--radius-sm);width:3px;height:60%;animation:.3s cubic-bezier(.34,1.56,.64,1) slideInIndicator-d364349b;position:absolute;top:50%;left:4px;transform:translateY(-50%);box-shadow:0 0 8px #3b82f666}.business-layout .business-aside .business-menu[data-v-d364349b] .el-menu-item.is-active .el-icon{color:var(--sidebar-active-icon,#3b82f6);filter:drop-shadow(0 0 4px #3b82f64d)}.business-layout .business-aside .business-menu[data-v-d364349b] .el-menu-item .el-icon{vertical-align:middle;margin-right:var(--space-3);transition:transform var(--duration-normal) var(--ease-spring), color var(--duration-fast) ease;font-size:18px}.business-layout .business-aside .business-menu[data-v-d364349b] .el-menu-item span{font-size:var(--font-size-base);font-weight:var(--font-weight-normal);letter-spacing:var(--letter-spacing-wide)}.business-layout .business-aside .business-menu[data-v-d364349b] .el-sub-menu__title{margin:2px var(--space-1);border-radius:var(--radius-sidebar-item,6px);height:44px;transition:all var(--menu-item-transition), background-color var(--duration-instant) ease;line-height:44px;position:relative;padding:0 var(--space-4)!important;color:var(--sidebar-text,#cbd5e1)!important;background-color:#0000!important}.business-layout .business-aside .business-menu[data-v-d364349b] .el-sub-menu__title:hover{transform:translate(2px);background-color:var(--sidebar-hover-bg,#ffffff0a)!important;color:var(--sidebar-active-text,#fff)!important}.business-layout .business-aside .business-menu[data-v-d364349b] .el-sub-menu__title:hover .el-icon:first-child{color:var(--sidebar-active-icon,#3b82f6);transform:scale(1.1)rotate(5deg)}.business-layout .business-aside .business-menu[data-v-d364349b] .el-sub-menu__title .el-icon{vertical-align:middle;margin-right:var(--space-3);transition:transform var(--duration-normal) var(--ease-spring), color var(--duration-fast) ease;font-size:18px}.business-layout .business-aside .business-menu[data-v-d364349b] .el-sub-menu__title .el-sub-menu__icon-arrow{transition:transform var(--duration-normal) var(--ease-spring), opacity var(--duration-fast) ease;font-size:14px}.business-layout .business-aside .business-menu[data-v-d364349b] .el-sub-menu.is-opened>.el-sub-menu__title .el-sub-menu__icon-arrow{transform:rotate(180deg)}.business-layout .business-aside .business-menu[data-v-d364349b] .el-menu--inline{padding-left:var(--space-2)}.business-layout .business-aside .business-menu[data-v-d364349b] .el-menu--inline .el-menu-item{margin:1px var(--space-2);height:40px;line-height:40px;font-size:var(--font-size-sm);padding-left:calc(var(--space-4) + var(--space-8))!important}.business-layout .business-aside .business-menu[data-v-d364349b] .el-menu--inline .el-menu-item:before{height:50%;left:8px}.business-layout .business-header[data-v-d364349b]{background:var(--el-bg-color,#fff);border-bottom:1px solid #eee;box-shadow:0 2px 12px #2c3e5014}.business-layout .business-header .notification-badge[data-v-d364349b]{margin-right:12px}[data-v-87aa6695]:root{--radius-none:0;--radius-xs:2px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:10px;--radius-2xl:12px;--radius-3xl:14px;--radius-full:9999px;--radius-button:var(--radius-lg);--radius-button-sm:var(--radius-md);--radius-card:var(--radius-2xl);--radius-card-lg:var(--radius-3xl);--radius-dialog:var(--radius-xl);--radius-modal:var(--radius-2xl);--radius-avatar:var(--radius-full);--radius-badge:var(--radius-full);--radius-input:var(--radius-sm);--radius-tooltip:var(--radius-md);--radius-dropdown:var(--radius-lg);--radius-table:var(--radius-none);--radius-tag:var(--radius-sm);--radius-progress:var(--radius-full);--radius-bubble:14px;--radius-bubble-tail:4px;--radius-widget:var(--radius-2xl);--radius-sidebar-item:var(--radius-md);--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", sans-serif;--font-mono:"JetBrains Mono", "Fira Code", "Consolas", "Monaco", monospace;--font-display:"Inter", sans-serif;--font-size-xs:12px;--font-size-sm:13px;--font-size-base:14px;--font-size-md:15px;--font-size-lg:16px;--font-size-xl:18px;--font-size-2xl:20px;--font-size-3xl:24px;--font-size-4xl:28px;--line-height-tight:1.25;--line-height-snug:1.375;--line-height-normal:1.5;--line-height-relaxed:1.625;--line-height-loose:2;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--letter-spacing-tight:-.02em;--letter-spacing-normal:0;--letter-spacing-wide:.02em;--space-0:0;--space-px:1px;--space-0-5:2px;--space-1:4px;--space-1-5:6px;--space-2:8px;--space-2-5:10px;--space-3:12px;--space-3-5:14px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-9:36px;--space-10:40px;--space-11:44px;--space-12:48px;--space-14:56px;--space-16:64px;--space-20:80px;--space-24:96px;--space-32:128px;--spacing-xs:var(--space-1);--spacing-sm:var(--space-2);--spacing-md:var(--space-4);--spacing-lg:var(--space-6);--spacing-xl:var(--space-8);--spacing-2xl:var(--space-12);--gap-xs:var(--space-2);--gap-sm:var(--space-3);--gap-md:var(--space-4);--gap-lg:var(--space-6);--padding-input:var(--space-3) var(--space-4);--padding-btn-sm:var(--space-1-5) var(--space-3);--padding-btn-md:var(--space-2) var(--space-4);--padding-btn-lg:var(--space-3) var(--space-6);--padding-card:var(--space-6);--padding-panel:var(--space-6);--padding-modal:var(--space-8);--padding-page:var(--space-6);--shadow-none:none;--shadow-xs:0 1px 2px #0000000a, 0 1px 3px #0000000f;--shadow-sm:0 2px 4px #0000000f, 0 4px 6px #00000014;--shadow-md:0 4px 8px #00000014, 0 8px 16px #0000001a;--shadow-lg:0 8px 16px #0000001a, 0 16px 32px #0000001f;--shadow-xl:0 12px 24px #0000001f, 0 24px 48px #00000029;--shadow-2xl:0 20px 40px #00000026, 0 40px 80px #0003;--shadow-primary:0 4px 14px #409eff40, 0 8px 28px #409eff26;--shadow-success:0 4px 14px #67c23a40;--shadow-warning:0 4px 14px #e6a23c40;--shadow-danger:0 4px 14px #f56c6c40;--shadow-inner:inset 0 2px 4px #0000000f;--elevation-flat:var(--shadow-none);--elevation-hover:var(--shadow-sm);--elevation-raised:var(--shadow-md);--elevation-float:var(--shadow-lg);--elevation-modal:var(--shadow-xl);--elevation-popover:var(--shadow-md);--elevation-dropdown:var(--shadow-lg);--elevation-widget:var(--shadow-lg);--elevation-tooltip:var(--shadow-md);--elevation-card:var(--shadow-sm);--elevation-card-hover:var(--shadow-md);--duration-instant:.1s;--duration-fast:.15s;--duration-normal:.25s;--duration-slow:.35s;--duration-slower:.5s;--duration-slowest:.75s;--ease-linear:linear;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--ease-bounce:cubic-bezier(.34, 1.56, .64, 1);--ease-spring:cubic-bezier(.175, .885, .32, 1.275);--transition-colors:color var(--duration-fast) ease, background-color var(--duration-fast) ease, border-color var(--duration-fast) ease;--transition-transform:transform var(--duration-normal) var(--ease-spring);--transition-all:all var(--duration-normal) var(--ease-in-out);--transition-shadow:box-shadow var(--duration-normal) ease;--transition-opacity:opacity var(--duration-normal) ease;--sidebar-transition:width .3s cubic-bezier(.4, 0, .2, 1);--menu-item-transition:all .25s cubic-bezier(.4, 0, .2, 1);--z-base:0;--z-dropdown:100;--z-sticky:200;--z-fixed:300;--z-overlay:400;--z-modal:500;--z-popover:600;--z-tooltip:700;--z-toast:800;--z-maximum:9999;--sidebar-bg:#1e293b;--sidebar-bg-dark:#0f172a;--sidebar-text:#cbd5e1;--sidebar-text-muted:#94a3b8;--sidebar-active-bg:#3b82f626;--sidebar-active-text:#fff;--sidebar-active-icon:#3b82f6;--sidebar-hover-bg:#ffffff0f;--sidebar-border-color:#ffffff14;--sidebar-width-expanded:260px;--sidebar-width-collapsed:64px;--sidebar-logo-height:64px;--sidebar-menu-padding:8px 12px}[data-v-87aa6695],[data-v-87aa6695]:before,[data-v-87aa6695]:after{box-sizing:border-box;margin:0;padding:0}html[data-v-87aa6695]{font-size:16px;line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}body[data-v-87aa6695]{font-family:var(--font-sans);color:var(--text-primary);background-color:var(--bg-page);min-height:100vh;transition:background-color var(--duration-slow) ease, color var(--duration-slow) ease}@keyframes slideInIndicator-87aa6695{0%{opacity:0;transform:translateY(-50%)scaleY(0)scaleX(.5)}to{opacity:1;transform:translateY(-50%)scaleY(1)scaleX(1)}}@keyframes menuIconBounce-87aa6695{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes fadeInSlideRight-87aa6695{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.service-layout .service-aside[data-v-87aa6695]{background-color:var(--bg-sidebar);border-right:1px solid #ffffff14}.service-layout .service-aside .logo[data-v-87aa6695]{background-color:#111827;justify-content:space-between;align-items:center;display:flex}.service-layout .service-aside .logo .service-status[data-v-87aa6695]{font-size:var(--text-xs);align-items:center;gap:var(--space-1);display:flex}.service-layout .service-aside .logo .service-status .status-dot[data-v-87aa6695]{width:8px;height:8px}.service-layout .service-aside .logo .service-status .status-dot.online[data-v-87aa6695]{background-color:var(--color-success)}.service-layout .service-aside .logo .service-status .status-dot.offline[data-v-87aa6695]{background-color:var(--color-gray-400)}.service-layout .service-aside .logo .service-status .status-dot.busy[data-v-87aa6695]{background-color:var(--color-warning)}.service-layout .service-aside .service-menu[data-v-87aa6695]{padding:var(--space-3) var(--space-3);background-color:#0000!important;border-right:none!important}.service-layout .service-aside .service-menu[data-v-87aa6695] .el-menu-item{margin:2px var(--space-1);border-radius:var(--radius-sidebar-item,6px);height:44px;transition:all var(--menu-item-transition), background-color var(--duration-instant) ease;line-height:44px;position:relative;padding:0 var(--space-4)!important;color:var(--sidebar-text,#cbd5e1)!important;background-color:#0000!important}.service-layout .service-aside .service-menu[data-v-87aa6695] .el-menu-item:hover{transform:translate(3px);background-color:var(--sidebar-hover-bg,#ffffff0f)!important;color:var(--sidebar-active-text,#fff)!important}.service-layout .service-aside .service-menu[data-v-87aa6695] .el-menu-item:hover .el-icon{color:var(--sidebar-active-icon,#3b82f6);transform:scale(1.15)rotate(5deg)}.service-layout .service-aside .service-menu[data-v-87aa6695] .el-menu-item.is-active{font-weight:var(--font-weight-semibold);background:linear-gradient(135deg, var(--sidebar-active-bg,#3b82f626) 0%, #6366f11a 100%)!important;color:var(--sidebar-active-text,#fff)!important}.service-layout .service-aside .service-menu[data-v-87aa6695] .el-menu-item.is-active:before{content:"";background:linear-gradient(180deg, var(--sidebar-active-icon,#3b82f6) 0%, #60a5fa 100%);border-radius:var(--radius-sm) var(--radius-xs) var(--radius-xs) var(--radius-sm);width:3px;height:60%;animation:.3s cubic-bezier(.34,1.56,.64,1) slideInIndicator-87aa6695;position:absolute;top:50%;left:4px;transform:translateY(-50%);box-shadow:0 0 8px #3b82f666}.service-layout .service-aside .service-menu[data-v-87aa6695] .el-menu-item.is-active .el-icon{color:var(--sidebar-active-icon,#3b82f6);filter:drop-shadow(0 0 4px #3b82f64d)}.service-layout .service-aside .service-menu[data-v-87aa6695] .el-menu-item .el-icon{vertical-align:middle;margin-right:var(--space-3);transition:transform var(--duration-normal) var(--ease-spring), color var(--duration-fast) ease;font-size:18px}.service-layout .service-aside .service-menu[data-v-87aa6695] .el-menu-item span{font-size:var(--font-size-base);font-weight:var(--font-weight-normal);letter-spacing:var(--letter-spacing-wide)}.service-layout .service-aside .service-menu[data-v-87aa6695] .el-sub-menu__title{margin:2px var(--space-1);border-radius:var(--radius-sidebar-item,6px);height:44px;transition:all var(--menu-item-transition), background-color var(--duration-instant) ease;line-height:44px;position:relative;padding:0 var(--space-4)!important;color:var(--sidebar-text,#cbd5e1)!important;background-color:#0000!important}.service-layout .service-aside .service-menu[data-v-87aa6695] .el-sub-menu__title:hover{transform:translate(2px);background-color:var(--sidebar-hover-bg,#ffffff0a)!important;color:var(--sidebar-active-text,#fff)!important}.service-layout .service-aside .service-menu[data-v-87aa6695] .el-sub-menu__title:hover .el-icon:first-child{color:var(--sidebar-active-icon,#3b82f6);transform:scale(1.1)rotate(5deg)}.service-layout .service-aside .service-menu[data-v-87aa6695] .el-sub-menu__title .el-icon{vertical-align:middle;margin-right:var(--space-3);transition:transform var(--duration-normal) var(--ease-spring), color var(--duration-fast) ease;font-size:18px}.service-layout .service-aside .service-menu[data-v-87aa6695] .el-sub-menu__title .el-sub-menu__icon-arrow{transition:transform var(--duration-normal) var(--ease-spring), opacity var(--duration-fast) ease;font-size:14px}.service-layout .service-aside .service-menu[data-v-87aa6695] .el-sub-menu.is-opened>.el-sub-menu__title .el-sub-menu__icon-arrow{transform:rotate(180deg)}.service-layout .service-aside .service-menu[data-v-87aa6695] .el-menu--inline{padding-left:var(--space-2)}.service-layout .service-aside .service-menu[data-v-87aa6695] .el-menu--inline .el-menu-item{margin:1px var(--space-2);height:40px;line-height:40px;font-size:var(--font-size-sm);padding-left:calc(var(--space-4) + var(--space-8))!important}.service-layout .service-aside .service-menu[data-v-87aa6695] .el-menu--inline .el-menu-item:before{height:50%;left:8px}.service-layout .service-aside .service-menu .menu-badge[data-v-87aa6695] .el-badge__content{top:8px;right:12px}.service-layout .service-aside .service-menu[data-v-87aa6695] .el-menu-item:hover,.service-layout .service-aside .service-menu[data-v-87aa6695] .el-sub-menu__title:hover{background-color:var(--bg-sidebar-hover)!important}.service-layout .service-aside .service-menu[data-v-87aa6695] .el-menu-item.is-active{border-left:3px solid var(--color-primary);background-color:var(--bg-sidebar-active)!important}.service-layout .service-header[data-v-87aa6695]{background:var(--bg-primary);box-shadow:var(--shadow-sm);border-bottom:1px solid var(--border-light)}.service-layout .service-header .status-switcher .status-tag[data-v-87aa6695]{cursor:pointer;transition:all var(--transition-fast)}.service-layout .service-header .status-switcher .status-tag[data-v-87aa6695]:hover{transform:scale(1.02)}.service-layout .service-header .status-switcher .status-tag[data-v-87aa6695]:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.service-layout .service-header .service-user .avatar[data-v-87aa6695]{border:2px solid var(--color-primary-light);transition:border-color var(--transition-fast)}.service-layout .service-header .service-user .avatar[data-v-87aa6695]:hover{border-color:var(--color-primary)}.service-layout .service-main[data-v-87aa6695]{padding:var(--space-4);background-color:var(--bg-secondary);overflow-y:auto}@media (max-width:768px){.service-layout .service-main[data-v-87aa6695]{padding:var(--space-3)}}[data-v-34a64d8a]:root{--radius-none:0;--radius-xs:2px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:10px;--radius-2xl:12px;--radius-3xl:14px;--radius-full:9999px;--radius-button:var(--radius-lg);--radius-button-sm:var(--radius-md);--radius-card:var(--radius-2xl);--radius-card-lg:var(--radius-3xl);--radius-dialog:var(--radius-xl);--radius-modal:var(--radius-2xl);--radius-avatar:var(--radius-full);--radius-badge:var(--radius-full);--radius-input:var(--radius-sm);--radius-tooltip:var(--radius-md);--radius-dropdown:var(--radius-lg);--radius-table:var(--radius-none);--radius-tag:var(--radius-sm);--radius-progress:var(--radius-full);--radius-bubble:14px;--radius-bubble-tail:4px;--radius-widget:var(--radius-2xl);--radius-sidebar-item:var(--radius-md);--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", sans-serif;--font-mono:"JetBrains Mono", "Fira Code", "Consolas", "Monaco", monospace;--font-display:"Inter", sans-serif;--font-size-xs:12px;--font-size-sm:13px;--font-size-base:14px;--font-size-md:15px;--font-size-lg:16px;--font-size-xl:18px;--font-size-2xl:20px;--font-size-3xl:24px;--font-size-4xl:28px;--line-height-tight:1.25;--line-height-snug:1.375;--line-height-normal:1.5;--line-height-relaxed:1.625;--line-height-loose:2;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--letter-spacing-tight:-.02em;--letter-spacing-normal:0;--letter-spacing-wide:.02em;--space-0:0;--space-px:1px;--space-0-5:2px;--space-1:4px;--space-1-5:6px;--space-2:8px;--space-2-5:10px;--space-3:12px;--space-3-5:14px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-9:36px;--space-10:40px;--space-11:44px;--space-12:48px;--space-14:56px;--space-16:64px;--space-20:80px;--space-24:96px;--space-32:128px;--spacing-xs:var(--space-1);--spacing-sm:var(--space-2);--spacing-md:var(--space-4);--spacing-lg:var(--space-6);--spacing-xl:var(--space-8);--spacing-2xl:var(--space-12);--gap-xs:var(--space-2);--gap-sm:var(--space-3);--gap-md:var(--space-4);--gap-lg:var(--space-6);--padding-input:var(--space-3) var(--space-4);--padding-btn-sm:var(--space-1-5) var(--space-3);--padding-btn-md:var(--space-2) var(--space-4);--padding-btn-lg:var(--space-3) var(--space-6);--padding-card:var(--space-6);--padding-panel:var(--space-6);--padding-modal:var(--space-8);--padding-page:var(--space-6);--shadow-none:none;--shadow-xs:0 1px 2px #0000000a, 0 1px 3px #0000000f;--shadow-sm:0 2px 4px #0000000f, 0 4px 6px #00000014;--shadow-md:0 4px 8px #00000014, 0 8px 16px #0000001a;--shadow-lg:0 8px 16px #0000001a, 0 16px 32px #0000001f;--shadow-xl:0 12px 24px #0000001f, 0 24px 48px #00000029;--shadow-2xl:0 20px 40px #00000026, 0 40px 80px #0003;--shadow-primary:0 4px 14px #409eff40, 0 8px 28px #409eff26;--shadow-success:0 4px 14px #67c23a40;--shadow-warning:0 4px 14px #e6a23c40;--shadow-danger:0 4px 14px #f56c6c40;--shadow-inner:inset 0 2px 4px #0000000f;--elevation-flat:var(--shadow-none);--elevation-hover:var(--shadow-sm);--elevation-raised:var(--shadow-md);--elevation-float:var(--shadow-lg);--elevation-modal:var(--shadow-xl);--elevation-popover:var(--shadow-md);--elevation-dropdown:var(--shadow-lg);--elevation-widget:var(--shadow-lg);--elevation-tooltip:var(--shadow-md);--elevation-card:var(--shadow-sm);--elevation-card-hover:var(--shadow-md);--duration-instant:.1s;--duration-fast:.15s;--duration-normal:.25s;--duration-slow:.35s;--duration-slower:.5s;--duration-slowest:.75s;--ease-linear:linear;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--ease-bounce:cubic-bezier(.34, 1.56, .64, 1);--ease-spring:cubic-bezier(.175, .885, .32, 1.275);--transition-colors:color var(--duration-fast) ease, background-color var(--duration-fast) ease, border-color var(--duration-fast) ease;--transition-transform:transform var(--duration-normal) var(--ease-spring);--transition-all:all var(--duration-normal) var(--ease-in-out);--transition-shadow:box-shadow var(--duration-normal) ease;--transition-opacity:opacity var(--duration-normal) ease;--sidebar-transition:width .3s cubic-bezier(.4, 0, .2, 1);--menu-item-transition:all .25s cubic-bezier(.4, 0, .2, 1);--z-base:0;--z-dropdown:100;--z-sticky:200;--z-fixed:300;--z-overlay:400;--z-modal:500;--z-popover:600;--z-tooltip:700;--z-toast:800;--z-maximum:9999;--sidebar-bg:#1e293b;--sidebar-bg-dark:#0f172a;--sidebar-text:#cbd5e1;--sidebar-text-muted:#94a3b8;--sidebar-active-bg:#3b82f626;--sidebar-active-text:#fff;--sidebar-active-icon:#3b82f6;--sidebar-hover-bg:#ffffff0f;--sidebar-border-color:#ffffff14;--sidebar-width-expanded:260px;--sidebar-width-collapsed:64px;--sidebar-logo-height:64px;--sidebar-menu-padding:8px 12px}[data-v-34a64d8a],[data-v-34a64d8a]:before,[data-v-34a64d8a]:after{box-sizing:border-box;margin:0;padding:0}html[data-v-34a64d8a]{font-size:16px;line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}body[data-v-34a64d8a]{font-family:var(--font-sans);color:var(--text-primary);background-color:var(--bg-page);min-height:100vh;transition:background-color var(--duration-slow) ease, color var(--duration-slow) ease}.sidebar-unified[data-v-34a64d8a]{background-color:var(--sidebar-bg,#1e293b);color:var(--sidebar-text,#cbd5e1);height:100vh;transition:width var(--sidebar-transition), background-color var(--duration-slow) ease;flex-direction:column;display:flex;position:relative;overflow:hidden}.sidebar-unified .logo[data-v-34a64d8a]{height:var(--sidebar-logo-height,64px);padding:0 var(--space-5);align-items:center;gap:var(--space-3);border-bottom:1px solid var(--sidebar-border-color,#ffffff14);transition:all var(--duration-normal) ease, padding var(--sidebar-transition);display:flex}.sidebar-unified .logo img[data-v-34a64d8a]{border-radius:var(--radius-md);object-fit:contain;width:32px;height:32px;transition:transform var(--duration-normal) var(--ease-spring), opacity var(--duration-fast) ease;flex-shrink:0}.sidebar-unified .logo span[data-v-34a64d8a]{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:#fff;white-space:nowrap;text-overflow:ellipsis;transition:opacity var(--duration-normal) ease, transform var(--duration-normal) ease;overflow:hidden}.sidebar-unified .logo .logo-badge[data-v-34a64d8a]{color:var(--sidebar-active-icon,#3b82f6);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);white-space:nowrap;transition:all var(--duration-fast) ease;background:linear-gradient(135deg,#3b82f633 0%,#6366f126 100%);border:1px solid #3b82f633;margin-left:auto;padding:2px 10px}.sidebar-unified .logo:hover img[data-v-34a64d8a]{transform:scale(1.05)rotate(-5deg)}.sidebar-unified .logo:hover .logo-badge[data-v-34a64d8a]{background:linear-gradient(135deg,#3b82f64d 0%,#6366f140 100%);box-shadow:0 2px 8px #3b82f640}.sidebar-unified .el-scrollbar[data-v-34a64d8a]{flex:1;overflow-x:hidden}.sidebar-unified .el-scrollbar[data-v-34a64d8a] .el-scrollbar__wrap{overflow-x:hidden}.sidebar-unified .aside-menu[data-v-34a64d8a]{padding:var(--space-3) var(--space-3);background-color:#0000!important;border-right:none!important}.sidebar-unified .aside-menu[data-v-34a64d8a] .el-menu-item{margin:2px var(--space-1);border-radius:var(--radius-sidebar-item,6px);height:44px;transition:all var(--menu-item-transition), background-color var(--duration-instant) ease;line-height:44px;position:relative;padding:0 var(--space-4)!important;color:var(--sidebar-text,#cbd5e1)!important;background-color:#0000!important}.sidebar-unified .aside-menu[data-v-34a64d8a] .el-menu-item:hover{transform:translate(3px);background-color:var(--sidebar-hover-bg,#ffffff0f)!important;color:var(--sidebar-active-text,#fff)!important}.sidebar-unified .aside-menu[data-v-34a64d8a] .el-menu-item:hover .el-icon{color:var(--sidebar-active-icon,#3b82f6);transform:scale(1.15)rotate(5deg)}.sidebar-unified .aside-menu[data-v-34a64d8a] .el-menu-item.is-active{font-weight:var(--font-weight-semibold);background:linear-gradient(135deg, var(--sidebar-active-bg,#3b82f626) 0%, #6366f11a 100%)!important;color:var(--sidebar-active-text,#fff)!important}.sidebar-unified .aside-menu[data-v-34a64d8a] .el-menu-item.is-active:before{content:"";background:linear-gradient(180deg, var(--sidebar-active-icon,#3b82f6) 0%, #60a5fa 100%);border-radius:var(--radius-sm) var(--radius-xs) var(--radius-xs) var(--radius-sm);width:3px;height:60%;animation:.3s cubic-bezier(.34,1.56,.64,1) slideInIndicator-34a64d8a;position:absolute;top:50%;left:4px;transform:translateY(-50%);box-shadow:0 0 8px #3b82f666}.sidebar-unified .aside-menu[data-v-34a64d8a] .el-menu-item.is-active .el-icon{color:var(--sidebar-active-icon,#3b82f6);filter:drop-shadow(0 0 4px #3b82f64d)}.sidebar-unified .aside-menu[data-v-34a64d8a] .el-menu-item .el-icon{vertical-align:middle;margin-right:var(--space-3);transition:transform var(--duration-normal) var(--ease-spring), color var(--duration-fast) ease;font-size:18px}.sidebar-unified .aside-menu[data-v-34a64d8a] .el-menu-item span{font-size:var(--font-size-base);font-weight:var(--font-weight-normal);letter-spacing:var(--letter-spacing-wide)}.sidebar-unified .aside-menu[data-v-34a64d8a] .el-sub-menu__title{margin:2px var(--space-1);border-radius:var(--radius-sidebar-item,6px);height:44px;transition:all var(--menu-item-transition), background-color var(--duration-instant) ease;line-height:44px;position:relative;padding:0 var(--space-4)!important;color:var(--sidebar-text,#cbd5e1)!important;background-color:#0000!important}.sidebar-unified .aside-menu[data-v-34a64d8a] .el-sub-menu__title:hover{transform:translate(2px);background-color:var(--sidebar-hover-bg,#ffffff0a)!important;color:var(--sidebar-active-text,#fff)!important}.sidebar-unified .aside-menu[data-v-34a64d8a] .el-sub-menu__title:hover .el-icon:first-child{color:var(--sidebar-active-icon,#3b82f6);transform:scale(1.1)rotate(5deg)}.sidebar-unified .aside-menu[data-v-34a64d8a] .el-sub-menu__title .el-icon{vertical-align:middle;margin-right:var(--space-3);transition:transform var(--duration-normal) var(--ease-spring), color var(--duration-fast) ease;font-size:18px}.sidebar-unified .aside-menu[data-v-34a64d8a] .el-sub-menu__title .el-sub-menu__icon-arrow{transition:transform var(--duration-normal) var(--ease-spring), opacity var(--duration-fast) ease;font-size:14px}.sidebar-unified .aside-menu[data-v-34a64d8a] .el-sub-menu.is-opened>.el-sub-menu__title .el-sub-menu__icon-arrow{transform:rotate(180deg)}.sidebar-unified .aside-menu[data-v-34a64d8a] .el-menu--inline{padding-left:var(--space-2)}.sidebar-unified .aside-menu[data-v-34a64d8a] .el-menu--inline .el-menu-item{margin:1px var(--space-2);height:40px;line-height:40px;font-size:var(--font-size-sm);padding-left:calc(var(--space-4) + var(--space-8))!important}.sidebar-unified .aside-menu[data-v-34a64d8a] .el-menu--inline .el-menu-item:before{height:50%;left:8px}@keyframes slideInIndicator-34a64d8a{0%{opacity:0;transform:translateY(-50%)scaleY(0)scaleX(.5)}to{opacity:1;transform:translateY(-50%)scaleY(1)scaleX(1)}}@keyframes menuIconBounce-34a64d8a{0%{transform:scale(1)}50%{transform:scale(1.2)}to{transform:scale(1)}}@keyframes fadeInSlideRight-34a64d8a{0%{opacity:0;transform:translate(-10px)}to{opacity:1;transform:translate(0)}}.sidebar-unified.is-collapsed .logo[data-v-34a64d8a]{padding:0 var(--space-3);justify-content:center}.sidebar-unified.is-collapsed .logo img[data-v-34a64d8a]{width:28px;height:28px}.sidebar-unified.is-collapsed .logo span[data-v-34a64d8a],.sidebar-unified.is-collapsed .logo .logo-badge[data-v-34a64d8a]{display:none}.sidebar-unified.is-collapsed .aside-menu[data-v-34a64d8a] .el-menu-item,.sidebar-unified.is-collapsed .aside-menu[data-v-34a64d8a] .el-sub-menu__title{width:calc(100% - var(--space-4));justify-content:center;margin:2px auto;padding:0!important}.sidebar-unified.is-collapsed .aside-menu[data-v-34a64d8a] .el-menu-item .el-icon,.sidebar-unified.is-collapsed .aside-menu[data-v-34a64d8a] .el-sub-menu__title .el-icon{margin-right:0;font-size:20px}.sidebar-unified.is-collapsed .aside-menu[data-v-34a64d8a] .el-menu-item span,.sidebar-unified.is-collapsed .aside-menu[data-v-34a64d8a] .el-sub-menu__title span,.sidebar-unified.is-collapsed .aside-menu[data-v-34a64d8a] .el-sub-menu .el-sub-menu__icon-arrow{display:none}.sidebar-unified.is-collapsed .aside-menu[data-v-34a64d8a] .el-sub-menu:hover>ul{min-width:200px;z-index:var(--z-dropdown);background-color:var(--sidebar-bg-dark,#0f172a);box-shadow:var(--shadow-xl);border:1px solid var(--sidebar-border-color);animation:.2s fadeInSlideRight-34a64d8a;position:absolute;top:0;left:100%;display:block!important}@media (max-width:768px){.sidebar-unified.mobile-menu[data-v-34a64d8a]{z-index:var(--z-modal);box-shadow:var(--shadow-2xl);transition:transform var(--duration-slow) cubic-bezier(.4, 0, .2, 1);position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.sidebar-unified.mobile-menu.show[data-v-34a64d8a]{transform:translate(0)}}[data-theme=dark]{background-color:var(--sidebar-bg-dark,#0f172a);background:linear-gradient(#60a5fa 0%,#93c5fd 100%);border-color:#60a5fa33;box-shadow:0 0 12px #60a5fa80}.platform-layout[data-v-34a64d8a]{min-height:100vh}.platform-layout .platform-aside[data-v-34a64d8a]{background-color:var(--sidebar-bg,#1e293b);color:var(--sidebar-text,#cbd5e1);height:100vh;transition:width var(--sidebar-transition), background-color var(--duration-slow) ease;border-right:1px solid var(--sidebar-border-color);flex-direction:column;display:flex;position:relative;overflow:hidden}.platform-layout .platform-aside.mobile-menu[data-v-34a64d8a]{z-index:var(--z-modal);box-shadow:var(--shadow-2xl);transition:transform var(--duration-slow) cubic-bezier(.4, 0, .2, 1);position:fixed;top:0;bottom:0;left:0;transform:translate(-100%)}.platform-layout .platform-aside.mobile-menu.show[data-v-34a64d8a]{transform:translate(0)}.platform-layout .platform-aside .logo[data-v-34a64d8a]{height:var(--sidebar-logo-height);padding:0 var(--padding-page);border-bottom:1px solid var(--sidebar-border-color);justify-content:center;align-items:center;gap:var(--space-3);display:flex}.platform-layout .platform-aside .logo img[data-v-34a64d8a]{object-fit:contain;width:auto;height:32px}.platform-layout .platform-aside .logo span[data-v-34a64d8a]{font-size:var(--font-size-lg);font-weight:var(--font-weight-semibold);color:#fff;white-space:nowrap}.platform-layout .platform-aside .logo .logo-badge[data-v-34a64d8a]{color:var(--sidebar-active-icon);font-size:var(--font-size-xs);font-weight:var(--font-weight-medium);background:linear-gradient(135deg,#3b82f633,#6366f126);border:1px solid #3b82f633;padding:2px 10px}.platform-layout .platform-aside .platform-menu[data-v-34a64d8a]{padding:var(--space-3) var(--space-3);background-color:#0000!important;border-right:none!important}.platform-layout .platform-aside .platform-menu[data-v-34a64d8a] .el-menu-item{margin:2px var(--space-1);border-radius:var(--radius-sidebar-item,6px);height:44px;transition:all var(--menu-item-transition), background-color var(--duration-instant) ease;line-height:44px;position:relative;padding:0 var(--space-4)!important;color:var(--sidebar-text,#cbd5e1)!important;background-color:#0000!important}.platform-layout .platform-aside .platform-menu[data-v-34a64d8a] .el-menu-item:hover{transform:translate(3px);background-color:var(--sidebar-hover-bg,#ffffff0f)!important;color:var(--sidebar-active-text,#fff)!important}.platform-layout .platform-aside .platform-menu[data-v-34a64d8a] .el-menu-item:hover .el-icon{color:var(--sidebar-active-icon,#3b82f6);transform:scale(1.15)rotate(5deg)}.platform-layout .platform-aside .platform-menu[data-v-34a64d8a] .el-menu-item.is-active{font-weight:var(--font-weight-semibold);background:linear-gradient(135deg, var(--sidebar-active-bg,#3b82f626) 0%, #6366f11a 100%)!important;color:var(--sidebar-active-text,#fff)!important}.platform-layout .platform-aside .platform-menu[data-v-34a64d8a] .el-menu-item.is-active:before{content:"";background:linear-gradient(180deg, var(--sidebar-active-icon,#3b82f6) 0%, #60a5fa 100%);border-radius:var(--radius-sm) var(--radius-xs) var(--radius-xs) var(--radius-sm);width:3px;height:60%;animation:.3s cubic-bezier(.34,1.56,.64,1) slideInIndicator-34a64d8a;position:absolute;top:50%;left:4px;transform:translateY(-50%);box-shadow:0 0 8px #3b82f666}.platform-layout .platform-aside .platform-menu[data-v-34a64d8a] .el-menu-item.is-active .el-icon{color:var(--sidebar-active-icon,#3b82f6);filter:drop-shadow(0 0 4px #3b82f64d)}.platform-layout .platform-aside .platform-menu[data-v-34a64d8a] .el-menu-item .el-icon{vertical-align:middle;margin-right:var(--space-3);transition:transform var(--duration-normal) var(--ease-spring), color var(--duration-fast) ease;font-size:18px}.platform-layout .platform-aside .platform-menu[data-v-34a64d8a] .el-menu-item span{font-size:var(--font-size-base);font-weight:var(--font-weight-normal);letter-spacing:var(--letter-spacing-wide)}.platform-layout .platform-aside .platform-menu[data-v-34a64d8a] .el-sub-menu__title{margin:2px var(--space-1);border-radius:var(--radius-sidebar-item,6px);height:44px;transition:all var(--menu-item-transition), background-color var(--duration-instant) ease;line-height:44px;position:relative;padding:0 var(--space-4)!important;color:var(--sidebar-text,#cbd5e1)!important;background-color:#0000!important}.platform-layout .platform-aside .platform-menu[data-v-34a64d8a] .el-sub-menu__title:hover{transform:translate(2px);background-color:var(--sidebar-hover-bg,#ffffff0a)!important;color:var(--sidebar-active-text,#fff)!important}.platform-layout .platform-aside .platform-menu[data-v-34a64d8a] .el-sub-menu__title:hover .el-icon:first-child{color:var(--sidebar-active-icon,#3b82f6);transform:scale(1.1)rotate(5deg)}.platform-layout .platform-aside .platform-menu[data-v-34a64d8a] .el-sub-menu__title .el-icon{vertical-align:middle;margin-right:var(--space-3);transition:transform var(--duration-normal) var(--ease-spring), color var(--duration-fast) ease;font-size:18px}.platform-layout .platform-aside .platform-menu[data-v-34a64d8a] .el-sub-menu__title .el-sub-menu__icon-arrow{transition:transform var(--duration-normal) var(--ease-spring), opacity var(--duration-fast) ease;font-size:14px}.platform-layout .platform-aside .platform-menu[data-v-34a64d8a] .el-sub-menu.is-opened>.el-sub-menu__title .el-sub-menu__icon-arrow{transform:rotate(180deg)}.platform-layout .platform-aside .platform-menu[data-v-34a64d8a] .el-menu--inline{padding-left:var(--space-2)}.platform-layout .platform-aside .platform-menu[data-v-34a64d8a] .el-menu--inline .el-menu-item{margin:1px var(--space-2);height:40px;line-height:40px;font-size:var(--font-size-sm);padding-left:calc(var(--space-4) + var(--space-8))!important}.platform-layout .platform-aside .platform-menu[data-v-34a64d8a] .el-menu--inline .el-menu-item:before{height:50%;left:8px}.platform-layout .platform-header[data-v-34a64d8a]{background:var(--bg-primary);border-bottom:1px solid var(--border-color);padding:0 var(--padding-page);height:var(--avatar-size-xl);justify-content:space-between;align-items:center;display:flex;box-shadow:0 1px 4px #0000000d}.platform-layout .platform-header .header-left[data-v-34a64d8a]{align-items:center;gap:16px;display:flex}.platform-layout .platform-header .header-left .collapse-btn[data-v-34a64d8a],.platform-layout .platform-header .header-left .mobile-menu-btn[data-v-34a64d8a]{font-size:var(--font-size-xl);cursor:pointer;color:var(--text-secondary);transition:color .15s}.platform-layout .platform-header .header-left .collapse-btn[data-v-34a64d8a]:hover,.platform-layout .platform-header .header-left .mobile-menu-btn[data-v-34a64d8a]:hover{color:var(--text-primary)}.platform-layout .platform-header .header-left .el-breadcrumb[data-v-34a64d8a]{font-size:var(--text-sm)}.platform-layout .platform-header .header-right[data-v-34a64d8a]{align-items:center;gap:var(--spacing-md);display:flex}.platform-layout .platform-header .header-right .user-info[data-v-34a64d8a]{align-items:center;gap:var(--gap-sm);cursor:pointer;padding:6px 12px;transition:background .15s;display:flex}.platform-layout .platform-header .header-right .user-info[data-v-34a64d8a]:hover{background:var(--bg-secondary)}.platform-layout .platform-header .header-right .user-info .username[data-v-34a64d8a]{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary)}.platform-layout .platform-main[data-v-34a64d8a]{background:var(--bg-secondary);padding:var(--padding-page);overflow-y:auto}.mobile-overlay[data-v-34a64d8a]{z-index:1000;background:#00000080;position:fixed;top:0;bottom:0;left:0;right:0}.fade-transform-enter-active[data-v-34a64d8a],.fade-transform-leave-active[data-v-34a64d8a]{transition:all .25s}.fade-transform-enter-from[data-v-34a64d8a]{opacity:0;transform:translate(-30px)}.fade-transform-leave-to[data-v-34a64d8a]{opacity:0;transform:translate(30px)}:root{--color-gray-50:#fafafa;--color-gray-100:#f5f5f5;--color-gray-200:#e5e5e5;--color-gray-300:#d4d4d4;--color-gray-400:#a3a3a3;--color-gray-500:#737373;--color-gray-600:#525252;--color-gray-700:#404040;--color-gray-800:#262626;--color-gray-900:#171717;--bg-primary:#fff;--bg-secondary:#f9fafb;--bg-tertiary:#f3f4f6;--bg-sidebar:#1f2937;--bg-sidebar-hover:#374151;--bg-sidebar-active:#111827;--text-primary:#111827;--text-secondary:#4b5563;--text-tertiary:#9ca3af;--text-inverse:#f9fafb;--text-sidebar:#d1d5db;--text-sidebar-active:#fff;--border-light:#e5e7eb;--border-default:#d1d5db;--border-strong:#9ca3af;--color-primary:#2563eb;--color-primary-hover:#1d4ed8;--color-primary-light:#dbeafe;--color-primary-border:#93c5fd;--color-success:#059669;--color-success-light:#d1fae5;--color-success-border:#6ee7b7;--color-warning:#d97706;--color-warning-light:#fef3c7;--color-warning-border:#fcd34d;--color-error:#dc2626;--color-error-light:#fee2e2;--color-error-border:#fca5a5;--color-info:#0891b2;--color-info-light:#cffafe;--color-info-border:#67e8f9;--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;--font-family:-apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;--font-mono:"SF Mono", Monaco, "Cascadia Code", "Consolas", monospace;--text-xs:12px;--text-sm:13px;--text-base:14px;--text-lg:16px;--text-xl:18px;--text-2xl:20px;--text-3xl:24px;--text-4xl:28px;--font-size-xs:12px;--font-size-sm:13px;--font-size-base:14px;--font-size-md:15px;--font-size-lg:16px;--font-size-xl:18px;--font-size-2xl:20px;--font-size-3xl:24px;--font-size-4xl:28px;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--leading-tight:1.25;--leading-normal:1.5;--leading-relaxed:1.75;--radius-xs:2px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:10px;--radius-2xl:12px;--radius-3xl:14px;--radius-full:9999px;--shadow-sm:0 1px 2px #0000000d;--shadow-md:0 4px 6px -1px #0000001a, 0 2px 4px -1px #0000000f;--shadow-lg:0 10px 15px -3px #0000001a, 0 4px 6px -2px #0000000d;--shadow-focus:0 0 0 3px #2563eb26;--transition-fast:.15s ease;--transition-normal:.25s ease;--transition-slow:.35s ease;--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070;--z-toast:1080;--sidebar-width:260px;--sidebar-collapsed-width:64px;--header-height:60px;--container-max-width:1440px;font-family:var(--font-family);font-size:var(--text-base);line-height:var(--leading-normal);color:var(--text-primary);background-color:var(--bg-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.font-body{font-family:var(--font-family)}.font-mono{font-family:var(--font-mono)}.radius-sm{border-radius:var(--radius-sm)}.radius-md{border-radius:var(--radius-md)}.radius-lg{border-radius:var(--radius-lg)}.radius-xl{border-radius:var(--radius-xl)}.radius-full{border-radius:var(--radius-full)}@media (prefers-reduced-motion:reduce){:root{--transition-fast:0s;--transition-normal:0s;--transition-slow:0s}*,:before,:after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}.layout-container{height:100vh;overflow:hidden}.mobile-overlay{z-index:var(--z-modal-backdrop);background-color:#00000080;position:fixed;top:0;bottom:0;left:0;right:0}.aside{background-color:var(--bg-sidebar);transition:width var(--transition-normal);z-index:var(--z-fixed);flex-direction:column;display:flex;overflow:hidden}.aside.mobile-menu{position:fixed;top:0;bottom:0;left:0}.aside.mobile-menu:not(.show){width:0!important}.aside.mobile-menu.show{box-shadow:var(--shadow-lg)}.aside .logo{height:var(--header-height);padding:0 var(--space-6);border-bottom:1px solid #ffffff1a;flex-shrink:0;align-items:center;display:flex;overflow:hidden}.aside .logo img{width:auto;height:32px;margin-right:var(--space-3);flex-shrink:0}.aside .logo span{color:var(--text-inverse);font-size:var(--text-lg);font-weight:var(--font-semibold);white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.aside .logo .logo-badge{font-size:var(--text-xs);padding:2px var(--space-2);color:var(--text-inverse);margin-left:var(--space-2);font-weight:var(--font-medium);white-space:nowrap;background-color:#ffffff26}.aside .aside-menu{border-right:none;flex:1;overflow:hidden auto}.aside .aside-menu::-webkit-scrollbar{width:4px}.aside .aside-menu::-webkit-scrollbar-track{background:0 0}.aside .aside-menu::-webkit-scrollbar-thumb{background-color:#fff3}.aside .aside-menu::-webkit-scrollbar-thumb:hover{background-color:#ffffff4d}.aside-menu{border:none!important}.aside-menu :deep(.el-menu-item){height:48px;transition:background-color var(--transition-fast), color var(--transition-fast);line-height:48px;color:var(--text-sidebar)!important}.aside-menu :deep(.el-menu-item):hover{background-color:var(--bg-sidebar-hover)!important;color:var(--text-sidebar-active)!important}.aside-menu :deep(.el-menu-item) .el-icon{width:24px;margin-right:var(--space-3);font-size:18px}.aside-menu :deep(.el-sub-menu__title){height:48px;transition:background-color var(--transition-fast), color var(--transition-fast);line-height:48px;color:var(--text-sidebar)!important}.aside-menu :deep(.el-sub-menu__title):hover{background-color:var(--bg-sidebar-hover)!important;color:var(--text-sidebar-active)!important}.aside-menu :deep(.el-sub-menu__title) .el-icon{width:24px;margin-right:var(--space-3);font-size:18px}.aside-menu :deep(.el-menu-item.is-active){font-weight:var(--font-medium);background-color:var(--bg-sidebar-active)!important;color:var(--text-sidebar-active)!important;border-left:3px solid var(--color-primary)!important}.aside-menu :deep(.el-sub-menu__icon-arrow){color:inherit}.aside-menu :deep(.el-menu--inline){background-color:#0003!important}.aside-menu :deep(.el-menu--inline) .el-menu-item{height:44px;line-height:44px;padding-left:52px!important}.header{background-color:var(--bg-primary);box-shadow:var(--shadow-sm);border-bottom:1px solid var(--border-light);padding:0 var(--space-6);height:var(--header-height);z-index:var(--z-sticky);justify-content:space-between;align-items:center;display:flex;position:relative}.header .header-left{align-items:center;gap:var(--space-4);display:flex}.header .header-left .collapse-btn{cursor:pointer;color:var(--text-secondary);padding:var(--space-1);transition:all var(--transition-fast);font-size:18px}.header .header-left .collapse-btn:hover{color:var(--color-primary);background-color:var(--color-primary-light)}.header .header-left .collapse-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.header .header-left .mobile-menu-btn{cursor:pointer;color:var(--text-secondary);padding:var(--space-1);transition:all var(--transition-fast);font-size:18px}.header .header-left .mobile-menu-btn:hover{color:var(--color-primary);background-color:var(--color-primary-light)}.header .header-left .mobile-menu-btn:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}.header .header-right{align-items:center;gap:var(--space-3);display:flex}.header .header-right .user-info{align-items:center;gap:var(--space-2);cursor:pointer;color:var(--text-secondary);padding:var(--space-1) var(--space-3);transition:all var(--transition-fast);display:flex}.header .header-right .user-info:hover{color:var(--color-primary);background-color:var(--color-primary-light)}.header .header-right .user-info .username{font-size:var(--text-sm);font-weight:var(--font-medium)}.header .header-right .user-info .user-avatar{background-color:var(--color-primary-light);width:32px;height:32px;color:var(--color-primary);font-weight:var(--font-semibold);font-size:var(--text-sm);justify-content:center;align-items:center;display:flex}.main{background-color:var(--bg-secondary);padding:var(--space-6);overflow-y:auto}.main>*{max-width:100%}.menu-badge{position:relative}.menu-badge :deep(.el-badge__content){top:8px;right:12px}.status-dot{width:8px;height:8px;display:inline-block}.status-dot.online{background-color:var(--color-success)}.status-dot.offline{background-color:var(--color-gray-400)}.status-dot.busy{background-color:var(--color-warning)}.status-dot.away{background-color:var(--color-error)}@media (max-width:768px){.main{padding:var(--space-4)}.header{padding:0 var(--space-4)}.aside .logo{padding:0 var(--space-4);justify-content:center}}@media (max-width:480px){.main{padding:var(--space-3)}.header{padding:0 var(--space-3);gap:var(--space-2)}}:root{--ease-in-out:cubic-bezier(.4, 0, .2, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-decelerate:cubic-bezier(0, 0, .2, 1);--ease-accelerate:cubic-bezier(.4, 0, 1, 1);--duration-instant:.1s;--duration-fast:.15s;--duration-normal:.25s;--duration-slow:.35s;--duration-slower:.5s;--delay-short:50ms;--delay-normal:.15s;--delay-long:.3s}.transition-all{transition:all var(--duration-normal) var(--ease-in-out)}.transition-colors{transition:color var(--duration-fast) var(--ease-out), background-color var(--duration-fast) var(--ease-out), border-color var(--duration-fast) var(--ease-out)}.transition-opacity{transition:opacity var(--duration-normal) var(--ease-out)}.transition-transform{transition:transform var(--duration-normal) var(--ease-out)}.transition-shadow{transition:box-shadow var(--duration-normal) var(--ease-in-out)}.transition-base{transition:color var(--duration-fast) ease, background-color var(--duration-fast) ease, border-color var(--duration-fast) ease, box-shadow var(--duration-normal) var(--ease-in-out), transform var(--duration-normal) var(--ease-out)}.transition-expand{transition:height var(--duration-slow) var(--ease-in-out), opacity var(--duration-normal) var(--ease-out), padding var(--duration-slow) var(--ease-in-out)}.hover-lift{transition:transform var(--duration-fast) var(--ease-out), box-shadow var(--duration-normal) var(--ease-in-out)}.hover-lift:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}.hover-lift:active{box-shadow:var(--shadow-md);transform:translateY(0)}.hover-scale{transition:transform var(--duration-fast) var(--ease-spring)}.hover-scale:hover{transform:scale(1.05)}.hover-scale:active{transform:scale(.98)}.hover-glow{transition:box-shadow var(--duration-fast) var(--ease-out)}.hover-glow:hover{box-shadow:0 0 0 3px var(--color-primary-light)}.hover-bg{transition:background-color var(--duration-fast) var(--ease-out)}.hover-bg:hover{background-color:var(--bg-tertiary)}.press-feedback{transition:transform var(--duration-instant) var(--ease-out)}.press-feedback:active{transform:scale(.97)}.focus-ring:focus-visible{box-shadow:var(--shadow-focus);outline:none}@keyframes spin{to{transform:rotate(360deg)}}.spinner{border:3px solid var(--color-gray-200);border-top-color:var(--color-primary);border-radius:50%;width:24px;height:24px;animation:.8s linear infinite spin}--sm.spinner{border-width:2px;width:16px;height:16px}--lg.spinner{border-width:4px;width:40px;height:40px}@keyframes pulse-dot{0%,80%,to{opacity:.5;transform:scale(.6)}40%{opacity:1;transform:scale(1)}}.pulse-dots{justify-content:center;align-items:center;gap:6px;display:flex}.pulse-dots .dot{background-color:var(--color-primary);border-radius:50%;width:8px;height:8px;animation:1.4s ease-in-out infinite pulse-dot}.pulse-dots .dot:nth-child(2){animation-delay:.16s}.pulse-dots .dot:nth-child(3){animation-delay:.32s}@keyframes progress-indeterminate{0%{left:-40%}to{left:100%}}.progress-bar{background-color:var(--bg-tertiary);height:4px;position:relative;overflow:hidden}__fill.progress-bar{background-color:var(--color-primary);height:100%;transition:width var(--duration-slow) var(--ease-out)}--indeterminate__fill.progress-bar{width:40%;animation:progress-indeterminate 1.5s var(--ease-in-out) infinite;position:absolute}--sm.progress-bar{height:2px}--lg.progress-bar{height:8px}@keyframes skeleton-shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.skeleton{background:linear-gradient(90deg, var(--bg-tertiary) 25%, var(--bg-secondary) 50%, var(--bg-tertiary) 75%);background-size:200% 100%;animation:1.5s ease-in-out infinite skeleton-shimmer}--text.skeleton{height:16px;margin-bottom:var(--space-2)}--text.skeleton:last-child{margin-bottom:0}--sm--text.skeleton{width:60%;height:12px}--lg--text.skeleton{width:80%;height:24px}--avatar.skeleton{width:48px;height:48px}--image.skeleton{width:100%;height:200px}--button.skeleton{width:120px;height:40px}--circle.skeleton{width:48px;height:48px}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.fade-in{animation:fadeIn var(--duration-normal) var(--ease-out) forwards}--fast.fade-in{animation-duration:var(--duration-fast)}--slow.fade-in{animation-duration:var(--duration-slower)}@keyframes fadeInDown{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}.fade-in-down{animation:fadeInDown var(--duration-normal) var(--ease-decelerate) forwards}.fade-in-up{animation:fadeInUp var(--duration-slow) var(--ease-decelerate) forwards}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.scale-in{animation:scaleIn var(--duration-normal) var(--ease-spring) forwards}@keyframes slideInLeft{0%{opacity:0;transform:translate(-30px)}to{opacity:1;transform:translate(0)}}.slide-in-left{animation:slideInLeft var(--duration-slow) var(--ease-decelerate) forwards}@keyframes slideInRight{0%{opacity:0;transform:translate(30px)}to{opacity:1;transform:translate(0)}}.slide-in-right{animation:slideInRight var(--duration-slow) var(--ease-decelerate) forwards}.list-enter-active,.list-leave-active{transition:all var(--duration-normal) var(--ease-in-out)}.list-enter-from{opacity:0;transform:translate(-15px)}.list-leave-to{opacity:0;transform:translate(15px)}.list-move{transition:transform var(--duration-normal) var(--ease-in-out)}.route-fade-enter-active,.route-fade-leave-active{transition:all var(--duration-slow) var(--ease-in-out)}.route-fade-enter-from{opacity:0;transform:translateY(12px)}.route-fade-leave-to{opacity:0;transform:translateY(-12px)}.route-scale-enter-active,.route-scale-leave-active{transition:all var(--duration-normal) var(--ease-spring)}.route-scale-enter-from{opacity:0;transform:scale(.98)}.route-scale-leave-to{opacity:0;transform:scale(1.01)}.collapse-enter-active,.collapse-leave-active{transition:all var(--duration-slow) var(--ease-in-out);overflow:hidden}.collapse-enter-from,.collapse-leave-to{opacity:0;max-height:0}.collapse-enter-to,.collapse-leave-from{opacity:1;max-height:500px}@keyframes checkmark{0%{stroke-dashoffset:100px}to{stroke-dashoffset:0}}@keyframes shake{0%,to{transform:translate(0)}10%,30%,50%,70%,90%{transform:translate(-4px)}20%,40%,60%,80%{transform:translate(4px)}}.shake{animation:shake .5s var(--ease-in-out)}@keyframes toastPop{0%{opacity:0;transform:translateY(20px)scale(.95)}10%{opacity:1;transform:translateY(0)scale(1.02)}to{transform:translateY(0)scale(1)}}.toast-pop{animation:toastPop var(--duration-normal) var(--ease-spring) forwards}@keyframes countUp{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.count-up{animation:countUp var(--duration-slow) var(--ease-decelerate) forwards}@keyframes ripple{to{opacity:0;transform:scale(4)}}.ripple{position:relative;overflow:hidden}.ripple:after{content:"";pointer-events:none;background:#ffffff4d;border-radius:50%;width:100%;margin-top:-50%;margin-left:-50%;padding-top:100%;position:absolute;top:50%;left:50%;transform:scale(0)}.ripple:active:after{animation:ripple .6s var(--ease-out)}@extend .transition-base, .hover-lift, .press-feedback;@extend .transition-base, .focus-ring, .press-feedback;@extend .hover-scale;@extend .transition-colors;.link-hover:hover{color:var(--color-primary-hover)}@extend .focus-ring;@extend .transition-colors;.table-row-hover:hover{background-color:var(--bg-secondary)}@extend .transition-shadow, .focus-ring;.input-focus:focus{box-shadow:var(--shadow-focus);border-color:var(--color-primary)}@extend .scale-in;.dropdown-enter{transform-origin:100% 0}@extend .fade-in;.modal-backdrop{background-color:#00000080}@extend .fade-in-down;.gpu-accelerated{will-change:transform;-webkit-backface-visibility:hidden;backface-visibility:hidden}.animation-complete{will-change:auto}@media (prefers-reduced-motion:reduce){*,:before,:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}.skeleton{background:var(--bg-tertiary);animation:none}}.card{background:var(--bg-primary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);transition:box-shadow var(--duration-normal) var(--ease-in-out), transform var(--duration-fast) var(--ease-out)}--compact.card{padding:var(--space-3)}--default.card{padding:var(--space-6)}--spacious.card{padding:var(--space-8)}.card:hover{box-shadow:var(--shadow-md)}--interactive.card{cursor:pointer}--interactive.card:hover{box-shadow:var(--shadow-lg);transform:translateY(-2px)}--interactive.card:active{box-shadow:var(--shadow-md);transform:translateY(0)}__header.card{margin-bottom:var(--space-4);padding-bottom:var(--space-4);border-bottom:1px solid var(--border-light);justify-content:space-between;align-items:center;display:flex}__title.card{font-size:var(--text-lg);font-weight:var(--font-semibold);color:var(--text-primary);margin:0}__subtitle.card{font-size:var(--text-sm);color:var(--text-secondary);margin-top:var(--space-1)}__body.card{color:var(--text-secondary);line-height:var(--leading-relaxed)}__footer.card{margin-top:var(--space-6);padding-top:var(--space-4);border-top:1px solid var(--border-light);justify-content:flex-end;gap:var(--space-3);display:flex}--no-padding.card{padding:0}.stat-card{background:var(--bg-primary);border:1px solid var(--border-light);padding:var(--space-6);transition:all var(--duration-normal) var(--ease-in-out)}.stat-card:hover{border-color:var(--color-primary-border);box-shadow:var(--shadow-md)}__icon.stat-card{width:48px;height:48px;margin-bottom:var(--space-4);justify-content:center;align-items:center;font-size:18px;display:flex}--primary__icon.stat-card{background-color:var(--color-primary-light);color:var(--color-primary)}--success__icon.stat-card{background-color:var(--color-success-light);color:var(--color-success)}--warning__icon.stat-card{background-color:var(--color-warning-light);color:var(--color-warning)}--error__icon.stat-card{background-color:var(--color-error-light);color:var(--color-error)}--info__icon.stat-card{background-color:var(--color-info-light);color:var(--color-info)}__value.stat-card{font-size:var(--text-3xl);font-weight:var(--font-bold);color:var(--text-primary);margin-bottom:var(--space-2);line-height:1}__label.stat-card{font-size:var(--text-sm);color:var(--text-secondary);margin-bottom:var(--space-3)}__trend.stat-card{align-items:center;gap:var(--space-1);font-size:var(--text-sm);font-weight:var(--font-medium);display:inline-flex}--up__trend.stat-card{color:var(--color-success)}--down__trend.stat-card{color:var(--color-error)}--neutral__trend.stat-card{color:var(--text-tertiary)}.data-table-wrapper{background:var(--bg-primary);border:1px solid var(--border-light);box-shadow:var(--shadow-sm);overflow:hidden}.data-table{border-collapse:collapse;width:100%}.data-table thead{background-color:var(--bg-secondary);border-bottom:2px solid var(--border-default)}.data-table th{padding:var(--space-3) var(--space-4);text-align:left;font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-secondary);text-transform:uppercase;letter-spacing:.05em;white-space:nowrap}.data-table th.align-right{text-align:right}.data-table th .sort-icon{margin-left:var(--space-1);opacity:.5;transition:opacity var(--duration-fast)}.data-table th .sort-icon:hover{opacity:1;color:var(--color-primary)}.data-table th .sort-icon.active{opacity:1;color:var(--color-primary)}.data-table tbody tr{transition:background-color var(--duration-fast) ease;border-bottom:1px solid var(--border-light)}.data-table tbody tr:last-child{border-bottom:none}.data-table tbody tr:hover{background-color:var(--bg-secondary)}.data-table tbody tr.selected{background-color:var(--color-primary-light)}.data-table td{padding:var(--space-4);font-size:var(--text-sm);color:var(--text-primary);vertical-align:middle}.data-table td.align-right{text-align:right;font-family:var(--font-mono);tabular-nums:true}--striped.data-table tbody tr:nth-child(2n){background-color:#00000003}--compact.data-table th{padding:var(--space-2) var(--space-3)}--compact.data-table td{padding:var(--space-2) var(--space-3)}__empty.data-table{text-align:center;padding:var(--space-16) var(--space-6);color:var(--text-tertiary)}.table-actions{gap:var(--space-2);align-items:center;display:flex}.table-actions button{padding:var(--space-1) var(--space-2);font-size:var(--text-sm);transition:all var(--duration-fast) ease}.table-actions button:hover{background-color:var(--bg-tertiary);color:var(--color-primary)}--danger:is(.table-actions button):hover{background-color:var(--color-error-light);color:var(--color-error)}.table-pagination{padding:var(--space-4) var(--space-6);border-top:1px solid var(--border-light);background-color:var(--bg-secondary);justify-content:space-between;align-items:center;display:flex}__info.table-pagination{font-size:var(--text-sm);color:var(--text-secondary)}__controls.table-pagination{gap:var(--space-2);align-items:center;display:flex}.form-group{margin-bottom:var(--space-6)}__label.form-group{font-size:var(--text-sm);font-weight:var(--font-medium);color:var(--text-primary);margin-bottom:var(--space-2);display:block}__label.form-group .required{color:var(--color-error);margin-left:var(--space-1)}__hint.form-group{font-size:var(--text-xs);color:var(--text-tertiary);margin-top:var(--space-1)}__error.form-group{font-size:var(--text-xs);color:var(--color-error);margin-top:var(--space-1);align-items:center;gap:var(--space-1);display:flex}.form-input,.form-select,.form-textarea{width:100%;height:40px;padding:0 var(--space-3);font-size:var(--text-base);color:var(--text-primary);background-color:var(--bg-primary);border:1px solid var(--border-default);transition:border-color var(--duration-fast) ease, box-shadow var(--duration-fast) ease}:is(.form-input,.form-select,.form-textarea):focus{border-color:var(--color-primary);box-shadow:var(--shadow-focus);outline:none}:is(.form-input,.form-select,.form-textarea)::placeholder{color:var(--text-tertiary)}:is(.form-input,.form-select,.form-textarea):disabled{background-color:var(--bg-secondary);color:var(--text-tertiary);cursor:not-allowed}:is(.form-input,.form-select,.form-textarea).is-error{border-color:var(--color-error)}:is(.form-input,.form-select,.form-textarea).is-error:focus{box-shadow:0 0 0 3px var(--color-error-light)}:is(.form-input,.form-select,.form-textarea).is-success{border-color:var(--color-success)}.form-textarea{height:auto;min-height:120px;padding:var(--space-3);resize:vertical}.form-checkbox,.form-radio{align-items:center;gap:var(--space-2);cursor:pointer;font-size:var(--text-sm);color:var(--text-primary);display:inline-flex}:is(.form-checkbox,.form-radio) input[type=checkbox]{width:18px;height:18px;accent-color:var(--color-primary);cursor:pointer}:is(.form-checkbox,.form-radio) input[type=radio]{width:18px;height:18px;accent-color:var(--color-primary);cursor:pointer}:is(.form-checkbox,.form-radio):hover{color:var(--text-primary)}.form-switch{width:44px;height:24px;display:inline-block;position:relative}.form-switch input{opacity:0;width:0;height:0}__slider.form-switch{background-color:var(--color-gray-300);transition:background-color var(--duration-fast) ease;cursor:pointer;position:absolute;top:0;bottom:0;left:0;right:0}__slider.form-switch:before{content:"";width:18px;height:18px;transition:transform var(--duration-fast) var(--ease-spring);box-shadow:var(--shadow-sm);background-color:#fff;position:absolute;bottom:3px;left:3px}input:checked+.form-switch__slider{background-color:var(--color-primary)}input:checked+.form-switch__slider:before{transform:translate(20px)}input:focus+.form-switch__slider{box-shadow:var(--shadow-focus)}input:disabled+.form-switch__slider{opacity:.5;cursor:not-allowed}.btn{justify-content:center;align-items:center;gap:var(--space-2);height:40px;padding:0 var(--space-4);font-size:var(--text-sm);font-weight:var(--font-medium);cursor:pointer;transition:all var(--duration-fast) var(--ease-out), transform var(--duration-instant) var(--ease-out);white-space:nowrap;-webkit-user-select:none;user-select:none;border:1px solid #0000;line-height:1;display:inline-flex}.btn:focus-visible{box-shadow:var(--shadow-focus);outline:none}.btn:disabled{opacity:.6;cursor:not-allowed;transform:none!important}.btn:active:not(:disabled){transform:scale(.97)}--sm.btn{height:32px;padding:0 var(--space-3);font-size:var(--text-xs)}--lg.btn{height:48px;padding:0 var(--space-6);font-size:var(--text-base)}--primary.btn{background-color:var(--color-primary);color:#fff;border-color:var(--color-primary)}--primary.btn:hover:not(:disabled){background-color:var(--color-primary-hover);border-color:var(--color-primary-hover);box-shadow:0 4px 12px #2563eb40}--secondary.btn{background-color:var(--bg-primary);color:var(--text-primary);border-color:var(--border-default)}--secondary.btn:hover:not(:disabled){background-color:var(--bg-secondary);border-color:var(--color-gray-400)}--ghost.btn{color:var(--text-secondary);background-color:#0000;border-color:#0000}--ghost.btn:hover:not(:disabled){background-color:var(--bg-tertiary);color:var(--text-primary)}--danger.btn{background-color:var(--color-error);color:#fff;border-color:var(--color-error)}--danger.btn:hover:not(:disabled){background-color:#b91c1c;border-color:#b91c1c;box-shadow:0 4px 12px #dc262640}--outline-primary.btn{color:var(--color-primary);border-color:var(--color-primary);background-color:#0000}--outline-primary.btn:hover:not(:disabled){background-color:var(--color-primary-light)}--icon.btn{width:40px;padding:0}--icon.btn.btn--sm{width:32px}--icon.btn.btn--lg{width:48px}--loading.btn{pointer-events:none;position:relative;color:#0000!important}--loading.btn:after{content:"";border:2px solid;border-right-color:#0000;border-radius:50%;width:18px;height:18px;animation:.8s linear infinite spin;position:absolute}--block.btn{width:100%}.btn-group{display:inline-flex}.btn-group .btn{border-radius:0}.btn-group .btn:first-child{border-radius:var(--radius-md) 0 0 var(--radius-md)}.btn-group .btn:last-child{border-radius:0 var(--radius-md) var(--radius-md) 0}.btn-group .btn:not(:last-child){border-right:none}.tag{align-items:center;gap:var(--space-1);height:24px;padding:0 var(--space-2);font-size:var(--text-xs);font-weight:var(--font-medium);transition:all var(--duration-fast) ease;border:1px solid #0000;display:inline-flex}--primary.tag{background-color:var(--color-primary-light);color:var(--color-primary);border-color:var(--color-primary-border)}--success.tag{background-color:var(--color-success-light);color:var(--color-success);border-color:var(--color-success-border)}--warning.tag{background-color:var(--color-warning-light);color:var(--color-warning);border-color:var(--color-warning-border)}--error.tag{background-color:var(--color-error-light);color:var(--color-error);border-color:var(--color-error-border)}--neutral.tag{background-color:var(--bg-tertiary);color:var(--text-secondary);border-color:var(--border-default)}--removable.tag{padding-right:var(--space-1)}--removable.tag .tag__remove{cursor:pointer;opacity:.7;transition:opacity var(--duration-fast)}--removable.tag .tag__remove:hover{opacity:1}.badge{min-width:20px;height:20px;padding:0 var(--space-2);font-size:11px;font-weight:var(--font-semibold);justify-content:center;align-items:center;line-height:1;display:inline-flex}--primary.badge{background-color:var(--color-primary);color:#fff}--secondary.badge{background-color:var(--color-gray-500);color:#fff}--dot.badge{border-radius:50%;width:8px;min-width:auto;height:8px;padding:0}.status-indicator{align-items:center;gap:var(--space-2);font-size:var(--text-sm);font-weight:var(--font-medium);display:inline-flex}__dot.status-indicator{border-radius:50%;flex-shrink:0;width:8px;height:8px}--online.status-indicator{color:var(--color-success)}--online.status-indicator .status-indicator__dot{background-color:var(--color-success)}--offline.status-indicator{color:var(--text-tertiary)}--offline.status-indicator .status-indicator__dot{background-color:var(--color-gray-400)}--busy.status-indicator{color:var(--color-warning)}--busy.status-indicator .status-indicator__dot{background-color:var(--color-warning)}--away.status-indicator{color:var(--color-error)}--away.status-indicator .status-indicator__dot{background-color:var(--color-error)}.progress-ring{justify-content:center;align-items:center;display:inline-flex;position:relative}.progress-ring svg{transform:rotate(-90deg)}__circle.progress-ring{fill:none;stroke-linecap:round;transition:stroke-dashoffset var(--duration-slow) var(--ease-out)}__background.progress-ring{stroke:var(--bg-tertiary)}__progress.progress-ring{stroke:var(--color-primary)}__text.progress-ring{font-size:var(--text-sm);font-weight:var(--font-semibold);color:var(--text-primary);position:absolute}.empty-state{padding:var(--space-16) var(--space-6);text-align:center;flex-direction:column;justify-content:center;align-items:center;display:flex}__icon.empty-state{width:120px;height:120px;margin-bottom:var(--space-6);color:var(--color-gray-300)}__title.empty-state{font-size:var(--text-xl);font-weight:var(--font-semibold);color:var(--text-primary);margin-bottom:var(--space-2)}__description.empty-state{font-size:var(--text-base);color:var(--text-secondary);max-width:420px;margin-bottom:var(--space-6);line-height:var(--leading-relaxed)}@extend .empty-state;__icon.error-state{color:var(--color-error-light)}__title.error-state{color:var(--color-error)}.tooltip{display:inline-block;position:relative}__content.tooltip{padding:var(--space-2) var(--space-3);background-color:var(--color-gray-800);color:#fff;font-size:var(--text-xs);white-space:nowrap;opacity:0;visibility:hidden;transition:opacity var(--duration-fast) ease, visibility var(--duration-fast) ease, transform var(--duration-fast) var(--ease-out);z-index:var(--z-tooltip);pointer-events:none;position:absolute;bottom:calc(100% + 8px);left:50%;transform:translate(-50%)}__content.tooltip:after{content:"";border:5px solid #0000;border-top-color:var(--color-gray-800);position:absolute;top:100%;left:50%;transform:translate(-50%)}.tooltip:hover .tooltip__content{opacity:1;visibility:visible;transform:translate(-50%)translateY(-2px)}.grid{gap:var(--space-6);display:grid}--cols-1.grid{grid-template-columns:repeat(1,1fr)}--cols-2.grid{grid-template-columns:repeat(2,1fr)}--cols-3.grid{grid-template-columns:repeat(3,1fr)}--cols-4.grid{grid-template-columns:repeat(4,1fr)}--auto-fit.grid{grid-template-columns:repeat(auto-fill,minmax(280px,1fr))}@media (max-width:1024px){--cols-3.grid{grid-template-columns:repeat(2,1fr)}--cols-4.grid{grid-template-columns:repeat(2,1fr)}}@media (max-width:768px){--cols-2.grid{grid-template-columns:1fr}--cols-3.grid{grid-template-columns:1fr}--cols-4.grid{grid-template-columns:1fr}.grid{gap:var(--space-4)}}:root{--space-0:0;--space-px:1px;--space-0-5:2px;--space-1:4px;--space-1-5:6px;--space-2:8px;--space-2-5:10px;--space-3:12px;--space-3-5:14px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-9:36px;--space-10:40px;--space-11:44px;--space-12:48px;--space-14:56px;--space-16:64px;--space-20:80px;--space-24:96px;--space-28:112px;--space-32:128px;--spacing-xs:var(--space-1);--spacing-sm:var(--space-2);--spacing-md:var(--space-4);--spacing-lg:var(--space-6);--spacing-xl:var(--space-8);--spacing-2xl:var(--space-12);--gap-xs:var(--space-2);--gap-sm:var(--space-3);--gap-md:var(--space-4);--gap-lg:var(--space-6);--padding-input:var(--space-3) var(--space-4);--padding-btn-sm:var(--space-1-5) var(--space-3);--padding-btn-md:var(--space-2) var(--space-4);--padding-btn-lg:var(--space-3) var(--space-6);--padding-card:var(--space-6);--padding-panel:var(--space-6);--padding-modal:var(--space-8);--radius-none:0;--radius-xs:2px;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:10px;--radius-2xl:12px;--radius-3xl:14px;--radius-full:9999px;--radius-button:var(--radius-lg);--radius-button-sm:var(--radius-md);--radius-card:var(--radius-2xl);--radius-card-lg:var(--radius-3xl);--radius-dialog:var(--radius-xl);--radius-modal:var(--radius-2xl);--radius-avatar:var(--radius-full);--radius-badge:var(--radius-full);--radius-input:var(--radius-sm);--radius-tooltip:var(--radius-md);--radius-dropdown:var(--radius-lg);--radius-table:var(--radius-none);--radius-tag:var(--radius-sm);--radius-progress:var(--radius-full);--radius-sidebar-item:var(--radius-md);--radius-bubble:14px;--radius-bubble-tail:4px;--radius-widget:var(--radius-2xl);--radius-widget-mobile:0;--shadow-none:none;--shadow-xs:0 1px 2px #0000000a, 0 1px 3px #0000000f;--shadow-sm:0 2px 4px #0000000f, 0 4px 6px #00000014;--shadow-md:0 4px 8px #00000014, 0 8px 16px #0000001a;--shadow-lg:0 8px 16px #0000001a, 0 16px 32px #0000001f;--shadow-xl:0 12px 24px #0000001f, 0 24px 48px #00000029;--shadow-2xl:0 20px 40px #00000026, 0 40px 80px #0003;--shadow-primary:0 4px 14px #409eff40, 0 8px 28px #409eff26;--shadow-success:0 4px 14px #67c23a40;--shadow-warning:0 4px 14px #e6a23c40;--shadow-danger:0 4px 14px #f56c6c40;--shadow-inner:inset 0 2px 4px #0000000f;--elevation-flat:var(--shadow-none);--elevation-hover:var(--shadow-sm);--elevation-raised:var(--shadow-md);--elevation-float:var(--shadow-lg);--elevation-modal:var(--shadow-xl);--elevation-popover:var(--shadow-md);--elevation-dropdown:var(--shadow-lg);--elevation-widget:var(--shadow-lg);--elevation-tooltip:var(--shadow-md);--color-primary:#409eff;--color-primary-light:#66b1ff;--color-primary-lighter:#ecf5ff;--color-primary-dark:#337ecc;--color-success:#67c23a;--color-success-light:#95d475;--color-success-lighter:#f0f9eb;--color-warning:#e6a23c;--color-warning-light:#ebb563;--color-warning-lighter:#fdf6ec;--color-danger:#f56c6c;--color-danger-light:#f78989;--color-danger-lighter:#fef0f0;--color-info:#909399;--color-info-light:#a6a9ad;--color-info-lighter:#f4f4f5;--text-primary:#303133;--text-regular:#606266;--text-secondary:#909399;--text-tertiary:#b0b3b8;--text-placeholder:#c0c4cc;--text-disabled:#c0c4cc;--text-muted:#909399;--color-text-secondary:var(--text-secondary);--bg-page:#f5f7fa;--bg-container:#fff;--bg-elevated:#fff;--bg-hover:#f5f7fa;--bg-active:#ecf5ff;--bg-disabled:#f5f7fa;--bg-mask:#00000080;--border-color:#dcdfe6;--border-color-light:#e4e7ed;--border-color-lighter:#ebeef5;--border-color-dark:#c0c4cc;--divider-color:#dcdfe6;--divider-color-light:#ebeef5;--link-color:var(--color-primary);--link-hover:var(--color-primary-dark);--code-bg:#f5f7fa;--quote-bg:#fdf6ec;--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", sans-serif;--font-mono:"JetBrains Mono", "Fira Code", "Consolas", monospace;--font-display:"Inter", sans-serif;--font-size-xs:12px;--font-size-sm:13px;--font-size-base:14px;--font-size-md:15px;--font-size-lg:16px;--font-size-xl:18px;--font-size-2xl:20px;--font-size-3xl:24px;--font-size-4xl:28px;--text-xs:var(--font-size-xs);--text-sm:var(--font-size-sm);--text-base:var(--font-size-base);--text-lg:var(--font-size-lg);--text-xl:var(--font-size-xl);--text-2xl:var(--font-size-2xl);--text-3xl:var(--font-size-3xl);--text-4xl:var(--font-size-4xl);--line-height-tight:1.25;--line-height-snug:1.375;--line-height-normal:1.5;--line-height-relaxed:1.625;--line-height-loose:2;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--height-input-sm:32px;--height-input-md:40px;--height-input-lg:48px;--height-btn-sm:32px;--height-btn-md:40px;--height-btn-lg:48px;--icon-size-xs:14px;--icon-size-sm:16px;--icon-size-md:20px;--icon-size-lg:24px;--icon-size-xl:32px;--avatar-size-xs:24px;--avatar-size-sm:32px;--avatar-size-md:40px;--avatar-size-lg:48px;--avatar-size-xl:64px;--avatar-size-2xl:96px;--widget-width:380px;--widget-height:520px;--widget-mobile-height:100vh;--widget-button-size:60px;--chat-header-height:64px;--chat-footer-height:auto;--message-max-width:75%;--duration-instant:.1s;--duration-fast:.15s;--duration-normal:.25s;--duration-slow:.35s;--duration-slower:.5s;--duration-slowest:.75s;--ease-linear:linear;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--ease-spring:cubic-bezier(.34, 1.56, .64, 1);--ease-bounce:cubic-bezier(.68, -.55, .265, 1.55);--transition-fast:all var(--duration-fast) var(--ease-out);--transition-normal:all var(--duration-normal) var(--ease-out);--transition-slow:all var(--duration-slow) var(--ease-out);--transition-spring:all var(--duration-normal) var(--ease-spring);--transition-colors:color var(--duration-fast) ease, background-color var(--duration-fast) ease, border-color var(--duration-fast) ease;--transition-transform:transform var(--duration-normal) var(--ease-spring);--transition-opacity:opacity var(--duration-fast) ease;--transition-shadow:box-shadow var(--duration-normal) ease;--z-dropdown:1000;--z-sticky:1020;--z-fixed:1030;--z-modal-backdrop:1040;--z-modal:1050;--z-popover:1060;--z-tooltip:1070;--z-toast:1080;--z-widget:9998;--widget-button:9999;--breakpoint-sm:640px;--breakpoint-md:768px;--breakpoint-lg:1024px;--breakpoint-xl:1280px;--breakpoint-2xl:1536px;--touch-target-min:44px;--touch-target-comfortable:48px;--focus-ring:0 0 0 2px var(--color-primary-light);--focus-ring-offset:2px}@media (prefers-reduced-motion:reduce){:root{--duration-instant:0s;--duration-fast:0s;--duration-normal:0s;--duration-slow:0s;--duration-slower:0s;--duration-slowest:0s}:root *,:root :before,:root :after{transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}@media (prefers-color-scheme:dark){:root{--text-primary:#f1f5f9;--text-regular:#cbd5e1;--text-secondary:#94a3b8;--text-placeholder:#64748b;--bg-page:#0f172a;--bg-container:#1e293b;--bg-elevated:#334155;--bg-hover:#334155;--bg-active:#1e3a5f;--bg-disabled:#1e293b;--border-color:#334155;--border-color-light:#475569;--border-color-lighter:#4f46e5;--border-color-dark:#64748b;--divider-color:#334155;--divider-color-light:#1e293b;--shadow-xs:0 1px 2px #0000004d;--shadow-sm:0 2px 4px #00000059;--shadow-md:0 4px 8px #0006;--shadow-lg:0 8px 16px #00000073;--shadow-xl:0 12px 24px #00000080;--shadow-2xl:0 20px 40px #0000008c}}[data-theme=dark]{--text-primary:#f1f5f9;--text-regular:#cbd5e1;--text-secondary:#94a3b8;--text-placeholder:#64748b;--bg-page:#0f172a;--bg-container:#1e293b;--bg-elevated:#334155;--bg-hover:#334155;--bg-active:#1e3a5f;--bg-disabled:#1e293b;--border-color:#334155;--border-color-light:#475569;--border-color-lighter:#4f46e5;--border-color-dark:#64748b;--divider-color:#334155;--divider-color-light:#1e293b}:root{--bg-color:var(--bg-page);--bg-color-secondary:var(--border-color-light);--bg-primary:var(--bg-container);--bg-secondary:var(--bg-page);--bg-sidebar:#1e293b;--bg-sidebar-hover:#334155;--bg-sidebar-active:#409eff;--text-sidebar:#e2e8f0;--sidebar-bg:#1e293b;--sidebar-hover-bg:#ffffff0f;--sidebar-active-bg:#3b82f626;--sidebar-text:#cbd5e1;--border-default:var(--border-color);--text-inverse:#fff;--card-bg:var(--bg-container);--color-gray-100:#f3f4f6;--color-gray-200:#e5e7eb;--color-gray-300:#d1d5db;--color-gray-400:#9ca3af;--color-gray-500:#6b7280;--color-gray-600:#4b5563;--color-gray-700:#374151;--color-gray-800:#1f2937;--color-gray-900:#111827;--color-primary-hover:var(--color-primary-dark);--shadow-focus:0 0 0 3px #409eff4d;--primary-rgb:64, 158, 255;--font-family:var(--font-sans);--radius-xs:2px;--radius-3xl:14px;--radius-none:0;--radius-sm:4px;--radius-md:6px;--radius-lg:8px;--radius-xl:10px;--radius-2xl:12px;--radius-full:9999px;--radius-button:var(--radius-lg);--radius-button-sm:var(--radius-md);--radius-card:var(--radius-2xl);--radius-card-lg:var(--radius-3xl);--radius-dialog:var(--radius-xl);--radius-modal:var(--radius-2xl);--radius-avatar:var(--radius-full);--radius-badge:var(--radius-full);--radius-input:var(--radius-sm);--radius-tooltip:var(--radius-md);--radius-dropdown:var(--radius-lg);--radius-table:var(--radius-none);--radius-tag:var(--radius-sm);--radius-progress:var(--radius-full);--radius-bubble:14px;--radius-bubble-tail:4px;--radius-widget:var(--radius-2xl);--radius-sidebar-item:var(--radius-md);--font-sans:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", sans-serif;--font-mono:"JetBrains Mono", "Fira Code", "Consolas", "Monaco", monospace;--font-display:"Inter", sans-serif;--font-size-xs:12px;--font-size-sm:13px;--font-size-base:14px;--font-size-md:15px;--font-size-lg:16px;--font-size-xl:18px;--font-size-2xl:20px;--font-size-3xl:24px;--font-size-4xl:28px;--line-height-tight:1.25;--line-height-snug:1.375;--line-height-normal:1.5;--line-height-relaxed:1.625;--line-height-loose:2;--font-weight-light:300;--font-weight-normal:400;--font-weight-medium:500;--font-weight-semibold:600;--font-weight-bold:700;--letter-spacing-tight:-.02em;--letter-spacing-normal:0;--letter-spacing-wide:.02em;--space-0:0;--space-px:1px;--space-0-5:2px;--space-1:4px;--space-1-5:6px;--space-2:8px;--space-2-5:10px;--space-3:12px;--space-3-5:14px;--space-4:16px;--space-5:20px;--space-6:24px;--space-7:28px;--space-8:32px;--space-9:36px;--space-10:40px;--space-11:44px;--space-12:48px;--space-14:56px;--space-16:64px;--space-20:80px;--space-24:96px;--space-32:128px;--spacing-xs:var(--space-1);--spacing-sm:var(--space-2);--spacing-md:var(--space-4);--spacing-lg:var(--space-6);--spacing-xl:var(--space-8);--spacing-2xl:var(--space-12);--gap-xs:var(--space-2);--gap-sm:var(--space-3);--gap-md:var(--space-4);--gap-lg:var(--space-6);--padding-input:var(--space-3) var(--space-4);--padding-btn-sm:var(--space-1-5) var(--space-3);--padding-btn-md:var(--space-2) var(--space-4);--padding-btn-lg:var(--space-3) var(--space-6);--padding-card:var(--space-6);--padding-panel:var(--space-6);--padding-modal:var(--space-8);--padding-page:var(--space-6);--shadow-none:none;--shadow-xs:0 1px 2px #0000000a, 0 1px 3px #0000000f;--shadow-sm:0 2px 4px #0000000f, 0 4px 6px #00000014;--shadow-md:0 4px 8px #00000014, 0 8px 16px #0000001a;--shadow-lg:0 8px 16px #0000001a, 0 16px 32px #0000001f;--shadow-xl:0 12px 24px #0000001f, 0 24px 48px #00000029;--shadow-2xl:0 20px 40px #00000026, 0 40px 80px #0003;--shadow-primary:0 4px 14px #409eff40, 0 8px 28px #409eff26;--shadow-success:0 4px 14px #67c23a40;--shadow-warning:0 4px 14px #e6a23c40;--shadow-danger:0 4px 14px #f56c6c40;--shadow-inner:inset 0 2px 4px #0000000f;--elevation-flat:var(--shadow-none);--elevation-hover:var(--shadow-sm);--elevation-raised:var(--shadow-md);--elevation-float:var(--shadow-lg);--elevation-modal:var(--shadow-xl);--elevation-popover:var(--shadow-md);--elevation-dropdown:var(--shadow-lg);--elevation-widget:var(--shadow-lg);--elevation-tooltip:var(--shadow-md);--elevation-card:var(--shadow-sm);--elevation-card-hover:var(--shadow-md);--duration-instant:.1s;--duration-fast:.15s;--duration-normal:.25s;--duration-slow:.35s;--duration-slower:.5s;--duration-slowest:.75s;--ease-linear:linear;--ease-in:cubic-bezier(.4, 0, 1, 1);--ease-out:cubic-bezier(0, 0, .2, 1);--ease-in-out:cubic-bezier(.4, 0, .2, 1);--ease-bounce:cubic-bezier(.34, 1.56, .64, 1);--ease-spring:cubic-bezier(.175, .885, .32, 1.275);--transition-colors:color var(--duration-fast) ease, background-color var(--duration-fast) ease, border-color var(--duration-fast) ease;--transition-transform:transform var(--duration-normal) var(--ease-spring);--transition-all:all var(--duration-normal) var(--ease-in-out);--transition-shadow:box-shadow var(--duration-normal) ease;--transition-opacity:opacity var(--duration-normal) ease;--sidebar-transition:width .3s cubic-bezier(.4, 0, .2, 1);--menu-item-transition:all .25s cubic-bezier(.4, 0, .2, 1);--z-base:0;--z-dropdown:100;--z-sticky:200;--z-fixed:300;--z-overlay:400;--z-modal:500;--z-popover:600;--z-tooltip:700;--z-toast:800;--z-maximum:9999;--sidebar-bg-dark:#0f172a;--sidebar-text-muted:#94a3b8;--sidebar-active-text:#fff;--sidebar-active-icon:#3b82f6;--sidebar-border-color:#ffffff14;--sidebar-width-expanded:260px;--sidebar-width-collapsed:64px;--sidebar-logo-height:64px;--sidebar-menu-padding:8px 12px}body{font-family:var(--font-sans);color:var(--text-primary);background-color:var(--bg-page);min-height:100vh;transition:background-color var(--duration-slow) ease, color var(--duration-slow) ease}html{font-size:16px;line-height:var(--line-height-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizelegibility}body{font-family:var(--font-sans);color:var(--text-primary);background-color:var(--bg-page);min-height:100vh}h1,h2,h3,h4,h5,h6{font-weight:var(--font-weight-semibold);line-height:var(--line-height-tight);color:var(--text-primary);margin:0}h1{font-size:var(--font-size-2xl)}h2{font-size:var(--font-size-xl)}h3{font-size:var(--font-size-lg)}h4{font-size:var(--font-size-base);font-weight:var(--font-weight-medium)}h5{font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}h6{font-size:var(--font-size-xs);font-weight:var(--font-weight-medium)}p{margin:0 0 var(--space-4);line-height:var(--line-height-normal);color:var(--text-regular)}p:last-child{margin-bottom:0}small{font-size:var(--font-size-xs);color:var(--text-secondary)}strong,b{font-weight:var(--font-weight-semibold)}a:hover{color:var(--link-hover);text-decoration:underline}a:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-ring-offset)}button,input,select,textarea,optgroup{font-family:inherit;font-size:inherit;line-height:inherit;color:inherit}input,textarea,select{width:100%;padding:var(--padding-input);border:1px solid var(--border-color);background-color:var(--bg-container);transition:var(--transition-colors), var(--transition-shadow)}input::placeholder,textarea::placeholder,select::placeholder{color:var(--text-placeholder)}input:hover:not(:disabled),textarea:hover:not(:disabled),select:hover:not(:disabled){border-color:var(--border-color-dark)}input:focus,textarea:focus,select:focus{border-color:var(--color-primary);outline:none;box-shadow:0 0 0 3px #409eff1a}input:disabled,textarea:disabled,select:disabled{cursor:not-allowed;opacity:.6;background-color:var(--bg-disabled)}textarea{resize:vertical;min-height:80px}button{justify-content:center;align-items:center;gap:var(--gap-xs);padding:var(--padding-btn-md);height:var(--height-btn-md);background-color:var(--color-primary);color:#fff;font-weight:var(--font-weight-medium);font-size:var(--font-size-sm);cursor:pointer;white-space:nowrap;-webkit-user-select:none;user-select:none;transition:var(--transition-colors), var(--transition-shadow), var(--transition-transform);min-width:var(--touch-target-min);min-height:var(--touch-target-min);border:1px solid #0000;display:inline-flex}button:hover:not(:disabled){filter:brightness(1.05);box-shadow:var(--shadow-primary);transform:translateY(-1px)}button:active:not(:disabled){transform:translateY(0)scale(.98)}button:disabled{opacity:.5;cursor:not-allowed;transform:none!important}button.btn-secondary{background-color:var(--bg-container);color:var(--text-regular);border-color:var(--border-color)}button.btn-secondary:hover{background-color:var(--bg-hover);border-color:var(--border-color-dark);box-shadow:var(--shadow-sm);color:var(--text-primary)}button.btn-outline{color:var(--color-primary);border-color:var(--color-primary);background-color:#0000}button.btn-outline:hover{background-color:var(--color-primary-lighter)}button.btn-ghost{color:var(--text-regular);background-color:#0000;border-color:#0000}button.btn-ghost:hover{background-color:var(--bg-hover);color:var(--text-primary)}button.btn-danger{background-color:var(--color-danger)}button.btn-danger:hover{box-shadow:var(--shadow-danger)}button.btn-sm{padding:var(--padding-btn-sm);height:var(--height-btn-sm);font-size:var(--font-size-xs)}button.btn-lg{padding:var(--padding-btn-lg);height:var(--height-btn-lg);font-size:var(--font-size-base)}.card{background:var(--bg-container);padding:var(--padding-card);box-shadow:var(--shadow-sm);border:1px solid var(--border-color-lighter);transition:var(--transition-shadow), var(--transition-transform)}.card:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.card .card-header{padding-bottom:var(--spacing-md);margin-bottom:var(--spacing-md);border-bottom:1px solid var(--divider-color-light);justify-content:space-between;align-items:center;display:flex}.card .card-header h3,.card .card-header h4{margin:0}.card .card-body{flex:1}.card .card-footer{align-items:center;gap:var(--gap-sm);padding-top:var(--spacing-md);margin-top:var(--spacing-md);border-top:1px solid var(--divider-color-light);display:flex}.chat-widget-base{z-index:var(--z-widget);font-family:var(--font-sans);position:fixed}.chat-widget-base .chat-panel{width:var(--widget-width);height:var(--widget-height);background:var(--bg-container);max-width:90vw;max-height:85vh;box-shadow:var(--elevation-widget);font-size:var(--font-size-sm);flex-direction:column;display:flex;overflow:hidden}@media (max-width:480px){.chat-widget-base .chat-panel{width:100vw;height:var(--widget-mobile-height);border-radius:var(--radius-widget-mobile);max-width:100vw;max-height:100vh;bottom:0!important;left:0!important;right:0!important}}.chat-widget-base .chat-header{height:var(--chat-header-height);padding:var(--spacing-md) var(--spacing-lg);background:linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);color:#fff;flex-shrink:0;justify-content:space-between;align-items:center;display:flex}.chat-widget-base .chat-header .header-left{align-items:center;gap:var(--spacing-md);display:flex}.chat-widget-base .chat-header .header-left .agent-avatar{width:var(--avatar-size-md);height:var(--avatar-size-md);background:#fff3;justify-content:center;align-items:center;display:flex;overflow:hidden}.chat-widget-base .chat-header .header-left .agent-avatar img{object-fit:cover;width:100%;height:100%}.chat-widget-base .chat-header .header-left .agent-info h4{font-size:var(--font-size-sm);font-weight:var(--font-weight-semibold);color:#fff;margin:0}.chat-widget-base .chat-header .header-left .agent-info .status{align-items:center;gap:var(--space-1-5);font-size:var(--font-size-xs);opacity:.9;display:inline-flex}.chat-widget-base .chat-header .header-left .agent-info .status .status-dot{background:currentColor;width:6px;height:6px}.chat-widget-base .chat-header .header-left .agent-info .status .status-dot.online{color:#67c23a}.chat-widget-base .chat-header .header-left .agent-info .status .status-dot.offline{color:#909399}.chat-widget-base .chat-header .header-left .agent-info .status .status-dot.busy{color:#e6a23c}.chat-widget-base .chat-header .header-left .agent-info .status .status-dot.away{color:#f56c6c}.chat-widget-base .chat-header .header-actions{align-items:center;gap:var(--space-1);display:flex}.chat-widget-base .chat-header .header-actions button{color:#ffffffe6;padding:var(--space-1-5);background:0 0;border:none;min-width:auto;min-height:auto}.chat-widget-base .chat-header .header-actions button:hover{color:#fff;box-shadow:none;background:#ffffff26;transform:none}.chat-widget-base .message-container{padding:var(--spacing-md);background:var(--bg-page);flex:1;overflow:hidden auto}.chat-widget-base .message-container::-webkit-scrollbar{width:6px}.chat-widget-base .message-container::-webkit-scrollbar-track{background:0 0}.chat-widget-base .message-container::-webkit-scrollbar-thumb{background:var(--border-color)}.chat-widget-base .message-container::-webkit-scrollbar-thumb:hover{background:var(--text-placeholder)}.chat-widget-base .message-bubble{max-width:var(--message-max-width);padding:var(--spacing-sm) var(--spacing-md);word-break:break-word;line-height:var(--line-height-snug);position:relative}.chat-widget-base .message-bubble.left{background:var(--bg-container);color:var(--text-primary);border-top-left-radius:var(--radius-bubble-tail);box-shadow:var(--shadow-xs)}.chat-widget-base .message-bubble.right{background:var(--color-primary);color:#fff;border-top-right-radius:var(--radius-bubble-tail);margin-left:auto}.chat-widget-base .input-area{border-top:1px solid var(--divider-color-light);padding:var(--spacing-md);background:var(--bg-container);flex-shrink:0}.chat-widget-base .input-area .input-toolbar{align-items:center;gap:var(--space-1);margin-bottom:var(--spacing-sm);display:flex}.chat-widget-base .input-area .input-toolbar button{color:var(--text-secondary);padding:var(--space-1-5);background:0 0;border:none;min-width:auto;min-height:auto}.chat-widget-base .input-area .input-toolbar button:hover{color:var(--color-primary);box-shadow:none;background:0 0;transform:none}.chat-widget-base .input-area .input-wrapper{align-items:flex-end;gap:var(--spacing-sm);display:flex}.chat-widget-base .input-area .input-wrapper textarea{resize:none;font-family:inherit;font-size:var(--font-size-sm);line-height:var(--line-height-normal);padding:var(--space-2) 0;background:0 0;border:none;outline:none;flex:1;max-height:120px}.chat-widget-base .input-area .input-wrapper textarea::placeholder{color:var(--text-placeholder)}.chat-widget-base .input-area .input-wrapper textarea:focus{box-shadow:none}.chat-widget-base .input-area .input-wrapper .send-button{width:var(--height-btn-md);height:var(--height-btn-md);background:var(--color-primary);color:#fff;cursor:pointer;transition:var(--transition-transform), var(--transition-shadow);border:none;flex-shrink:0;justify-content:center;align-items:center;display:flex}.chat-widget-base .input-area .input-wrapper .send-button:hover{box-shadow:var(--shadow-primary);transform:scale(1.05)}.chat-widget-base .input-area .input-wrapper .send-button:active{transform:scale(.95)}.chat-widget-base .widget-button{cursor:pointer;z-index:var(--widget-button);transition:var(--transition-transform);position:fixed}.chat-widget-base .widget-button:hover{transform:scale(1.05)}.chat-widget-base .widget-button:active{transform:scale(.95)}.chat-widget-base .widget-button .button-icon{width:var(--widget-button-size);height:var(--widget-button-size);color:#fff;box-shadow:var(--shadow-lg);transition:var(--transition-normal);background:linear-gradient(135deg, var(--color-primary) 0%, var(--color-primary-dark) 100%);justify-content:center;align-items:center;display:flex}.chat-widget-base .widget-button .button-icon img{width:var(--icon-size-xl);height:var(--icon-size-xl);object-fit:cover}.chat-widget-base .widget-button .widget-tooltip{bottom:calc(var(--widget-button-size) + var(--spacing-sm));color:#fff;padding:var(--spacing-sm) var(--spacing-md);font-size:var(--font-size-sm);white-space:nowrap;animation:tooltipFadeIn var(--duration-normal) var(--ease-out);-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:var(--shadow-md);background:#1a1a2ef2;position:absolute;right:0}.chat-widget-base .widget-button .widget-tooltip .tooltip-arrow{border-top:6px solid #1a1a2ef2;border-left:6px solid #0000;border-right:6px solid #0000;width:0;height:0;position:absolute;bottom:-6px;right:20px}@keyframes tooltipFadeIn{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.flex-center{justify-content:center;align-items:center;display:flex}.flex-between{justify-content:space-between;align-items:center;display:flex}.flex-column{flex-direction:column;display:flex}.gap-xs{gap:var(--gap-xs)}.gap-sm{gap:var(--gap-sm)}.gap-md{gap:var(--gap-md)}.gap-lg{gap:var(--gap-lg)}.text-regular{color:var(--text-regular)}.text-link{color:var(--link-color)}.font-medium{font-weight:var(--font-weight-medium)}.font-semibold{font-weight:var(--font-weight-semibold)}.font-bold{font-weight:var(--font-weight-bold)}.truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.line-clamp-2{-webkit-line-clamp:2;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.line-clamp-3{-webkit-line-clamp:3;-webkit-box-orient:vertical;display:-webkit-box;overflow:hidden}.m-0{margin:0}.mt-xs{margin-top:var(--spacing-xs)}.mt-sm{margin-top:var(--spacing-sm)}.mt-md{margin-top:var(--spacing-md)}.mt-lg{margin-top:var(--spacing-lg)}.mt-xl{margin-top:var(--spacing-xl)}.mb-xs{margin-bottom:var(--spacing-xs)}.mb-sm{margin-bottom:var(--spacing-sm)}.mb-md{margin-bottom:var(--spacing-md)}.mb-lg{margin-bottom:var(--spacing-lg)}.mb-xl{margin-bottom:var(--spacing-xl)}.p-0{padding:0}.p-xs{padding:var(--spacing-xs)}.p-sm{padding:var(--spacing-sm)}.p-md{padding:var(--spacing-md)}.p-lg{padding:var(--spacing-lg)}.p-xl{padding:var(--spacing-xl)}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.visible{visibility:visible}.invisible{visibility:hidden}.hover-lift{transition:var(--transition-transform), var(--transition-shadow)}.hover-lift:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.hover-scale{transition:var(--transition-transform)}.hover-scale:hover{transform:scale(1.02)}.hover-glow{transition:var(--transition-shadow)}.hover-glow:hover{box-shadow:var(--shadow-primary)}.active-scale:active{transform:scale(.98)}.focus-ring:focus-visible{outline:var(--focus-ring);outline-offset:var(--focus-ring-offset)}.loading-spinner{width:var(--icon-size-lg);height:var(--icon-size-lg);border:2px solid var(--border-color-lighter);border-top-color:var(--color-primary);animation:.8s linear infinite spin;display:inline-block}.skeleton{background:linear-gradient(90deg, var(--bg-elevated) 0%, var(--bg-page) 50%, var(--bg-elevated) 100%);background-size:200% 100%;animation:1.5s infinite shimmer}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.empty-state{padding:var(--spacing-2xl);text-align:center;color:var(--text-secondary);flex-direction:column;justify-content:center;align-items:center;display:flex}.empty-state .empty-icon{font-size:var(--font-size-3xl);margin-bottom:var(--spacing-md);opacity:.5}.empty-state .empty-text{font-size:var(--font-size-sm);margin-bottom:var(--spacing-sm)}.empty-state .empty-action{margin-top:var(--spacing-md)}.error-state{padding:var(--spacing-2xl);text-align:center;color:var(--color-danger);flex-direction:column;justify-content:center;align-items:center;display:flex}.error-state .error-icon{font-size:var(--font-size-3xl);margin-bottom:var(--spacing-md)}.error-state .error-text{font-size:var(--font-size-sm);margin-bottom:var(--spacing-md)}.error-state .error-action{margin-top:var(--spacing-md)}.page-header h1,.page-header h2,.page-header h3{font-size:var(--text-2xl);font-weight:var(--font-weight-bold);color:var(--text-primary);margin-bottom:var(--spacing-xs)}.page-header .page-desc{color:var(--text-secondary);font-size:var(--font-size-sm);margin-top:var(--space-1)}.page-header .header-actions{align-items:center;gap:var(--spacing-md);display:flex}.stat-card,.stat-card-modern{background:var(--bg-container);border:1px solid #0000000f;align-items:center;gap:18px;padding:24px;transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s,border-color .2s;display:flex;position:relative;overflow:hidden}.stat-card:before,.stat-card-modern:before{content:"";opacity:0;background:linear-gradient(90deg,#0000,#fff6,#0000);height:4px;transition:opacity .3s;position:absolute;top:0;left:0;right:0}.stat-card:hover,.stat-card-modern:hover{border-color:#0000;transform:translateY(-6px)scale(1.02);box-shadow:0 20px 40px #0000001f,0 8px 12px #0000000f}.stat-card:hover:before,.stat-card-modern:hover:before{opacity:1}.stat-card:hover .stat-icon,.stat-card-modern:hover .stat-icon{box-shadow:0 8px 20px #00000026;transform:rotate(-5deg)scale(1.1)!important}.stat-card .stat-icon,.stat-card-modern .stat-icon{color:#fff;border-radius:14px;flex-shrink:0;justify-content:center;align-items:center;width:54px;height:54px;transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s;display:flex}.stat-card .stat-info,.stat-card-modern .stat-info{flex:1;min-width:0}.stat-card .stat-info .stat-label,.stat-card-modern .stat-info .stat-label{font-size:var(--text-sm);font-weight:var(--font-weight-medium);color:var(--color-text-secondary);letter-spacing:.02em;margin-top:4px}.stat-card .stat-trend,.stat-card-modern .stat-trend{font-size:var(--text-xs);font-weight:var(--font-weight-semibold);padding:4px 10px}.stat-card .stat-trend.up,.stat-card-modern .stat-trend.up{color:#67c23a;background:#67c23a14}.stat-card .stat-trend.down,.stat-card-modern .stat-trend.down{color:#f56c6c;background:#f56c6c14}.modern-stats-grid{grid-template-columns:repeat(auto-fit,minmax(240px,1fr));gap:20px;display:grid}.stats-row{gap:var(--spacing-md);flex-wrap:wrap;display:flex}.stats-row>*{flex:1;min-width:200px}.table-footer .result-count{font-size:var(--font-size-sm);color:var(--text-secondary)}.table-footer .pagination-wrapper{align-items:center;gap:var(--space-2);display:flex}.table-toolbar{margin-bottom:var(--spacing-md);justify-content:space-between;align-items:center;gap:var(--spacing-md);flex-wrap:wrap;display:flex}.table-toolbar .footer-left{align-items:center;gap:var(--spacing-sm);display:flex}.search-bar{align-items:center;gap:var(--spacing-sm);width:100%;max-width:400px;display:flex}.search-bar .el-input{flex:1}.form-tip{align-items:flex-start;gap:var(--space-2);padding:var(--spacing-sm) var(--spacing-md);background:var(--color-primary-lighter);font-size:var(--font-size-xs);color:var(--color-primary-dark);line-height:var(--line-height-normal);display:flex}.form-tip.warning{background:var(--color-warning-lighter);color:var(--color-warning)}.form-tip.success{background:var(--color-success-lighter);color:var(--color-success)}.main-tabs{margin-bottom:var(--spacing-lg)}.main-tabs :deep(.el-tabs__header){margin-bottom:var(--spacing-md)}.main-tabs :deep(.el-tabs__item){font-size:var(--font-size-sm);font-weight:var(--font-weight-medium)}.card-header{font-weight:var(--font-weight-semibold);justify-content:space-between;align-items:center;display:flex}.status-dot{width:8px;height:8px;display:inline-block}.status-dot.online{background:var(--color-success)}.status-dot.offline{background:var(--text-placeholder)}.status-dot.busy{background:var(--color-warning)}.status-dot.error{background:var(--color-danger)}.text-primary{color:var(--text-primary)}.text-secondary{color:var(--text-secondary)}.text-success{color:var(--color-success)}.text-warning{color:var(--color-warning)}.text-danger{color:var(--color-danger)}.text-muted{color:var(--text-muted)}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-between{justify-content:space-between}@supports not ((-webkit-backdrop-filter:blur(1px)) or (backdrop-filter:blur(1px))){.backdrop-blur{background-color:#ffffffeb!important}.backdrop-dark{background-color:#1a1a2ef2!important}}[class*=ellipsis],[class*=truncate]{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}@supports not (gap:1px){.flex-gap>*+*{margin-left:var(--spacing-sm,8px)}}:root{--z-base:1;--z-dropdown:100;--z-sticky:200;--z-fixed:300;--z-modal-backdrop:400;--z-modal:500;--z-popover:600;--z-tooltip:700;--z-notification:800;--z-widget:900;--z-fullscreen:9999;--font-display:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "Fira Code", "Consolas", monospace;--text-xs:12px;--text-sm:13px;--text-base:14px;--text-lg:16px;--text-xl:18px;--text-2xl:20px;--text-3xl:24px;--text-4xl:28px;--font-light:300;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--font-extrabold:800;--font-black:900;--tracking-tight:-.03em;--tracking-normal:0;--tracking-wide:.02em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-none:1;--leading-tight:1.15;--leading-snug:1.3;--leading-normal:1.5;--leading-relaxed:1.625;--leading-loose:1.75}@media (prefers-color-scheme:dark){:root{--bg-primary:#0f172a;--bg-secondary:#1e293b;--bg-tertiary:#334155;--text-primary:#f1f5f9;--text-secondary:#cbd5e1;--text-muted:#94a3b8;--border-color:#334155;--border-light:#475569;--surface-elevated:#1e293b;--surface-overlay:#0f172af2;--shadow-sm:0 2px 8px #0000004d;--shadow-md:0 4px 16px #0006;--shadow-lg:0 8px 32px #00000080;--primary-color:#60a5fa;--success-color:#4ade80;--warning-color:#fbbf24;--danger-color:#f87171}}@keyframes pulse-glow{0%,to{box-shadow:0 0 #409eff66}50%{box-shadow:0 0 20px 10px #409eff00}}.slide-left-leave-to,.slide-right-enter-from{opacity:0;transform:translate(-30px)}[data-theme=dark]{--bg-page:#0f172a;--bg-container:#1e293b;--bg-container-secondary:#263348;--bg-tertiary:#334155;--bg-elevated:#1e293b;--bg-overlay:#0f172ad9;--bg-hover:#ffffff0a;--bg-active:#ffffff14;--bg-selected:#3b82f626;--bg-disabled:#ffffff0f;--text-primary:#f1f5f9;--text-secondary:#94a3b8;--text-tertiary:#64748b;--text-placeholder:#475569;--text-disabled:#334155;--text-inverse:#0f172a;--text-link:#60a5fa;--text-link-hover:#93c5fd;--border-color-light:#94a3b81f;--border-color:#94a3b82e;--border-color-dark:#94a3b83d;--border-color-focus:#60a5fa99;--divider-color:#94a3b81f;--color-primary:#60a5fa;--color-primary-light:#93c5fd;--color-primary-dark:#3b82f6;--color-primary-bg:#3b82f61f;--color-success:#4ade80;--color-success-light:#86efac;--color-success-bg:#4ade801f;--color-warning:#fbbf24;--color-warning-light:#fcd34d;--color-warning-bg:#fbbf241f;--color-danger:#f87171;--color-danger-light:#fca5a5;--color-danger-bg:#f871711f;--color-info:#94a3b8;--color-info-light:#cbd5e1;--color-info-bg:#94a3b81f;--shadow-xs:0 1px 2px #0003, 0 1px 3px #00000047;--shadow-sm:0 2px 4px #00000040, 0 4px 6px #0000004d;--shadow-md:0 4px 8px #0000004d, 0 8px 16px #00000059;--shadow-lg:0 8px 16px #00000059, 0 16px 32px #0006;--shadow-xl:0 12px 24px #0006, 0 24px 48px #00000073;--shadow-2xl:0 20px 40px #00000073, 0 40px 80px #00000080;--shadow-primary:0 4px 14px #60a5fa59, 0 8px 28px #60a5fa33;--shadow-success:0 4px 14px #4ade8059;--shadow-warning:0 4px 14px #fbbf2459;--shadow-danger:0 4px 14px #f8717159;--shadow-inner:inset 0 2px 4px #00000040;--sidebar-bg:#0f172a;--sidebar-bg-dark:#020617;--sidebar-text:#cbd5e1;--sidebar-text-muted:#64748b;--sidebar-active-bg:#3b82f633;--sidebar-hover-bg:#ffffff0a;--sidebar-border-color:#94a3b81a;--table-header-bg:#1e293b;--table-row-hover:#ffffff08;--table-row-stripe:#ffffff05;--input-bg:#1e293b;--input-border-color:#94a3b833;--input-focus-shadow:0 0 0 3px #3b82f626;--card-bg:#1e293b;--card-border-color:#94a3b81f;--card-hover-shadow:var(--shadow-lg);--dialog-bg:#1e293b;--modal-bg:#1e293b;--modal-overlay-bg:#0f172ae0;--dropdown-bg:#1e293b;--dropdown-border-color:#94a3b826;--dropdown-item-hover:#ffffff0d;--tooltip-bg:#1e293b;--tooltip-text:#f1f5f9;--tooltip-border-color:#94a3b833;--tag-bg:#94a3b81f;--tag-border-color:#94a3b833;--progress-track-bg:#94a3b826;--scrollbar-thumb:#94a3b859;--scrollbar-thumb-hover:#94a3b880;--scrollbar-track:transparent;--bubble-sent-bg:#2563eb;--bubble-received-bg:#334155;--bubble-sent-text:#fff;--bubble-received-text:#f1f5f9;--chart-grid-line:#94a3b814;--chart-axis-label:#64748b}.stats-row{gap:var(--space-5);margin-bottom:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.modern-stats-grid{gap:var(--space-5);grid-template-columns:repeat(auto-fit,minmax(240px,1fr));display:grid}.stat-card-modern{background:var(--bg-container,#fff);border-radius:var(--radius-2xl);padding:var(--space-6);align-items:center;gap:var(--space-4);border:1px solid var(--border-color-light,#0000000f);box-shadow:var(--shadow-sm,0 1px 3px #0000000d);min-height:100px;transition:transform .25s cubic-bezier(.175,.885,.32,1.275),box-shadow .25s,border-color .15s;display:flex;position:relative;overflow:hidden}.stat-card-modern:before{content:"";opacity:0;background:linear-gradient(90deg,#0000,#ffffff80,#0000);height:3px;transition:opacity .25s;position:absolute;top:0;left:0;right:0}.stat-card-modern:hover{border-color:#0000;transform:translateY(-4px);box-shadow:0 12px 24px #0000001a,0 4px 8px #0000000f}.stat-card-modern:hover:before{opacity:1}.stat-card-modern .stat-icon{border-radius:var(--radius-xl);color:#fff;flex-shrink:0;justify-content:center;align-items:center;width:52px;height:52px;transition:transform .25s cubic-bezier(.175,.885,.32,1.275),box-shadow .25s;display:flex}.stat-card-modern .stat-icon .el-icon{font-size:22px}.stat-card-modern .stat-info{flex:1;min-width:0}.stat-card-modern .stat-info .count-up-value{font-size:var(--font-size-4xl);font-weight:var(--font-weight-bold,700);color:var(--text-primary,#1f2937);line-height:1.2}.stat-card-modern .stat-info .stat-label{margin-top:var(--space-1);font-size:var(--font-size-sm);font-weight:var(--font-weight-medium);color:var(--text-secondary,#6b7280);letter-spacing:.02em}.stat-card-modern .stat-trend{font-size:var(--font-size-xs);font-weight:var(--font-weight-semibold);white-space:nowrap;padding:var(--space-1) var(--space-2);border-radius:var(--radius-full);background:0 0;transition:all .15s}.stat-card-modern .stat-trend.up .el-icon{color:#67c23a}.stat-card-modern .stat-trend.down .el-icon{color:#f56c6c}.stat-card-modern .stat-badge{color:#fff;font-size:var(--font-size-xs);font-weight:var(--font-weight-bold);background:linear-gradient(135deg,#ef4444,#dc2626);padding:2px 8px;animation:2s infinite pulse;position:absolute;top:10px;right:10px}.stat-card-modern .stat-badge.pulse{animation:2s infinite badgePulse}.card-premium{background:linear-gradient(135deg, var(--bg-container,#fff) 0%, #f8fafcf2 100%);border:1px solid #0000000a}.mini-stats-row{gap:var(--space-3);margin:var(--space-5) 0;grid-template-columns:repeat(auto-fit,minmax(120px,1fr));display:grid}.mini-stat{text-align:center;padding:var(--space-3) var(--space-2);background:var(--bg-container);border-radius:var(--radius-lg);border:1px solid var(--border-color-light,#0000000f);transition:all .15s}.mini-stat:hover{box-shadow:var(--shadow-md);transform:translateY(-2px)}.mini-stat .mini-val{font-size:var(--font-size-xl);font-weight:var(--font-weight-bold);color:var(--text-primary);line-height:1.2;display:block}.mini-stat .mini-lbl{margin-top:var(--space-1);font-size:var(--font-size-xs);color:var(--text-secondary);display:block}@keyframes badgePulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(1.05)}}@keyframes pulse{0%,to{opacity:1}50%{opacity:.5}}*,:before,:after{box-sizing:border-box;margin:0;padding:0}html,body{width:100%;height:100%;font-family:var(--font-family);font-size:var(--text-base);color:var(--text-primary);background-color:var(--bg-secondary);line-height:var(--leading-normal);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}#app{flex-direction:column;width:100%;height:100vh;display:flex}a{color:inherit;transition:color var(--duration-fast) ease;text-decoration:none}a:hover{color:var(--color-primary)}ul,ol{list-style:none}img{max-width:100%;height:auto;display:block}input,button,textarea,select{font-family:inherit;font-size:inherit}button{cursor:pointer;background:0 0;border:none;padding:0}button:focus-visible{outline:2px solid var(--color-primary);outline-offset:2px}button:disabled{cursor:not-allowed;opacity:.6}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--bg-secondary)}::-webkit-scrollbar-thumb{background-color:var(--color-gray-300)}::-webkit-scrollbar-thumb:hover{background-color:var(--color-gray-400)}*{scrollbar-width:thin;scrollbar-color:var(--color-gray-300) var(--bg-secondary)}::selection{background-color:var(--color-primary-light);color:var(--color-primary)}.page-container{padding:var(--space-6);background:var(--bg-primary);min-height:calc(100vh - var(--header-height) - var(--space-16));box-shadow:var(--shadow-sm)}.filter-container{margin-bottom:var(--space-5);padding:var(--space-5) var(--space-6);background:var(--bg-primary);box-shadow:var(--shadow-sm);border:1px solid var(--border-light)}.table-container{background:var(--bg-primary);padding:var(--space-6);box-shadow:var(--shadow-sm);border:1px solid var(--border-light)}.pagination-container{margin-top:var(--space-5);justify-content:flex-end;display:flex}.page-header{margin-bottom:var(--space-5);justify-content:space-between;align-items:center;gap:var(--space-3);flex-wrap:wrap;display:flex}.page-header h1,.page-header h2,.page-header h3{font-size:var(--text-xl);color:var(--text-primary);font-weight:var(--font-semibold);margin:0}.filter-bar{gap:var(--space-3);margin-bottom:var(--space-4);flex-wrap:wrap;align-items:center;display:flex}.table-footer{margin-top:var(--space-4);justify-content:space-between;align-items:center;gap:var(--space-3);padding-top:var(--space-3);border-top:1px solid var(--border-light);flex-wrap:wrap;display:flex}.el-card{border-radius:var(--radius-card)!important;border:1px solid var(--border-light)!important;box-shadow:var(--shadow-sm)!important;transition:box-shadow var(--duration-normal) ease!important}.el-card:hover{box-shadow:var(--shadow-md)!important}.el-card .el-card__header{font-weight:var(--font-semibold);color:var(--text-primary);border-bottom:1px solid var(--border-light);padding:var(--space-4) var(--space-6);background-color:#0000}.el-card .el-card__body{padding:var(--space-6)}.el-table{overflow:hidden;border-radius:var(--radius-card)!important;border:1px solid var(--border-light)!important}.el-table th.el-table__cell{text-transform:uppercase;letter-spacing:.05em;background-color:var(--bg-secondary)!important;color:var(--text-secondary)!important;font-weight:var(--font-semibold)!important;font-size:var(--text-xs)!important;border-bottom:2px solid var(--border-default)!important}.el-table td.el-table__cell{border-bottom:1px solid var(--border-light)!important}.el-table tr:hover>td.el-table__cell{background-color:var(--bg-secondary)!important}.el-button{border-radius:var(--radius-button)!important;font-weight:var(--font-medium)!important;transition:all var(--duration-fast) ease!important}.el-button--primary{--el-button-bg-color:var(--color-primary);--el-button-border-color:var(--color-primary)}.el-button--primary:hover,.el-button--primary:focus{--el-button-hover-bg-color:var(--color-primary-hover);--el-button-hover-border-color:var(--color-primary-hover)}.el-button--default{--el-button-bg-color:var(--bg-primary);--el-button-border-color:var(--border-default)}.el-button--default:hover,.el-button--default:focus{--el-button-hover-bg-color:var(--bg-secondary);--el-button-hover-border-color:var(--color-gray-400)}.el-input .el-input__wrapper{border-radius:var(--radius-input)!important;box-shadow:0 0 0 1px var(--border-default) inset!important;transition:all var(--duration-fast) ease!important}.el-input .el-input__wrapper:hover{box-shadow:0 0 0 1px var(--color-gray-400) inset!important}.el-input .el-input__wrapper.is-focus{box-shadow:var(--shadow-focus), 0 0 0 1px var(--color-primary) inset!important}.el-dialog{overflow:hidden;border-radius:var(--radius-dialog)!important}.el-dialog .el-dialog__header{padding:var(--space-5) var(--space-6);border-bottom:1px solid var(--border-light);margin-right:0}.el-dialog .el-dialog__body{padding:var(--space-6)}.el-dialog .el-dialog__footer{padding:var(--space-4) var(--space-6);border-top:1px solid var(--border-light)}.el-form-item__label{color:var(--text-primary)!important;font-weight:var(--font-medium)!important}.el-tag{border-radius:var(--radius-tag)!important;font-weight:var(--font-medium)!important}.el-pagination .btn-prev,.el-pagination .btn-next,.el-pagination .el-pager li{border-radius:var(--radius-button-sm)!important;transition:all var(--duration-fast) ease!important}.el-pagination .el-pager li.is-active{background-color:var(--color-primary)!important}.empty-state{text-align:center;padding:var(--space-16) var(--space-6);color:var(--text-tertiary)}.empty-state p{margin-top:var(--space-4);font-size:var(--text-base);line-height:var(--leading-relaxed)}[data-theme=dark]{--bg-primary:#1f2937;--bg-secondary:#111827;--bg-tertiary:#374151;--text-primary:#f9fafb;--text-secondary:#d1d5db;--text-tertiary:#9ca3af;--border-light:#374151;--border-default:#4b5563}[data-theme=dark] html,[data-theme=dark] body{background-color:var(--bg-secondary);color:var(--text-primary)}[data-theme=dark] .page-container,[data-theme=dark] .filter-container,[data-theme=dark] .table-container{background-color:var(--bg-primary);border-color:var(--border-light)}[data-theme=dark] ::-webkit-scrollbar-track{background:var(--bg-tertiary)}[data-theme=dark] ::-webkit-scrollbar-thumb{background:var(--text-tertiary)}[data-theme=dark] ::-webkit-scrollbar-thumb:hover{background:var(--text-secondary)}[data-theme=dark] :root{--el-bg-color:var(--bg-primary);--el-bg-color-overlay:var(--bg-tertiary);--el-text-color-primary:var(--text-primary);--el-text-color-regular:var(--text-secondary);--el-text-color-secondary:var(--text-tertiary);--el-border-color:var(--border-default);--el-border-color-light:var(--border-light);--el-fill-color-blank:var(--bg-primary);--el-mask-color:#000000b3;--el-box-shadow:0 12px 32px 4px #0006}@media screen and (max-width:1200px){:root{--sidebar-width:220px}}@media screen and (max-width:992px){:root{--sidebar-width:200px}.page-header{flex-direction:column;align-items:flex-start}.filter-bar{width:100%}.filter-bar>*{flex:auto;min-width:140px}.el-row{margin:0!important}.el-col{margin-bottom:var(--space-5);padding:0!important}}@media screen and (max-width:768px){html{font-size:var(--text-sm)}body{background:var(--bg-primary)}.page-header h1,.page-header h2,.page-header h3{font-size:var(--text-lg)}.el-dialog{width:95%!important;margin:var(--space-3) auto!important}.el-table{font-size:var(--text-xs)}.filter-bar{flex-direction:column}.filter-bar>*{width:100%}.table-footer{flex-direction:column;align-items:stretch}.table-footer .el-pagination{justify-content:center}.page-container,.filter-container,.table-container{padding:var(--space-4)}}@media screen and (max-width:480px){html{font-size:var(--text-xs)}.el-form-item__label{float:none;text-align:left;padding-bottom:var(--space-1)}.el-form-item__content{margin-left:0!important}}:root{--font-display:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-body:"Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", sans-serif;--font-mono:"JetBrains Mono", "Fira Code", "Consolas", monospace;--text-xs:12px;--text-sm:13px;--text-base:14px;--text-lg:16px;--text-xl:18px;--text-2xl:20px;--text-3xl:24px;--text-4xl:28px;--font-light:300;--font-normal:400;--font-medium:500;--font-semibold:600;--font-bold:700;--font-extrabold:800;--font-black:900;--tracking-tight:-.03em;--tracking-normal:0;--tracking-wide:.02em;--tracking-wider:.05em;--tracking-widest:.1em;--leading-none:1;--leading-tight:1.15;--leading-snug:1.3;--leading-normal:1.5;--leading-relaxed:1.625;--leading-loose:1.75}@media (prefers-color-scheme:dark){:root{--bg-primary:#0f172a;--bg-secondary:#1e293b;--bg-tertiary:#334155;--text-primary:#f1f5f9;--text-secondary:#cbd5e1;--text-muted:#94a3b8;--border-color:#334155;--border-light:#475569;--surface-elevated:#1e293b;--surface-overlay:#0f172af2;--shadow-sm:0 2px 8px #0000004d;--shadow-md:0 4px 16px #0006;--shadow-lg:0 8px 32px #00000080;--primary-color:#60a5fa;--success-color:#4ade80;--warning-color:#fbbf24;--danger-color:#f87171}}[data-theme=dark]{--bg-primary:#0f172a;--bg-secondary:#1e293b;--bg-tertiary:#334155;--text-primary:#f1f5f9;--text-secondary:#cbd5e1;--text-muted:#94a3b8;--border-color:#334155;--border-light:#475569;--shadow-sm:0 2px 8px #0000004d;--shadow-md:0 4px 16px #0006;--shadow-lg:0 8px 32px #00000080}.card-premium{background:var(--bg-primary);border-radius:var(--radius-lg,12px);will-change:transform, box-shadow;transition:transform .25s cubic-bezier(.34,1.56,.64,1),box-shadow .25s cubic-bezier(.4,0,.2,1)}.card-premium:hover{transform:translateY(-6px)scale(1.02);box-shadow:0 20px 40px #0000001f,0 0 0 1px #ffffff1a}.card-premium:active{transition-duration:.15s;transform:translateY(-2px)scale(.98)}.stat-card-modern{position:relative;overflow:hidden}.stat-card-modern .stat-icon{color:#fff;border-radius:16px;flex-shrink:0;justify-content:center;align-items:center;width:56px;height:56px;transition:transform .25s cubic-bezier(.34,1.56,.64,1);display:flex}.stat-card-modern .stat-value{font-size:var(--text-3xl);font-weight:var(--font-extrabold,800);letter-spacing:var(--tracking-tight);line-height:var(--leading-tight);color:var(--text-primary);animation:.6s cubic-bezier(.4,0,.2,1) both countUp}.stat-card-modern .stat-label{font-size:var(--text-xs);text-transform:uppercase;letter-spacing:var(--tracking-wider);color:var(--text-muted,#909399);opacity:.7;margin-top:4px}.stat-card-modern .stat-trend{font-size:var(--text-xs);font-weight:var(--font-semibold,600);border-radius:20px;align-items:center;gap:4px;padding:4px 10px;display:inline-flex;position:absolute;top:12px;right:16px}.stat-card-modern .stat-trend.up{color:#10b981;background:#10b9811a}.stat-card-modern .stat-trend.down{color:#ef4444;background:#ef44441a}.stat-card-modern:hover .stat-icon{transform:rotate(-5deg)scale(1.1)}.skeleton{background:linear-gradient(90deg, var(--bg-tertiary) 0%, var(--bg-secondary) 50%, var(--bg-tertiary) 100%);border-radius:var(--radius-base,8px);background-size:200% 100%;animation:1.5s infinite shimmer}.skeleton-text{height:16px;margin-bottom:8px}.skeleton-text:last-child{width:70%}.skeleton-text--lg{height:24px}.skeleton-avatar{border-radius:50%;width:48px;height:48px}.skeleton-card{padding:20px}.skeleton-card .skeleton-header{align-items:center;gap:12px;margin-bottom:16px;display:flex}.skeleton-card .skeleton-header .skeleton-avatar{width:40px;height:40px}.skeleton-card .skeleton-header .skeleton-text{flex:1}.skeleton-card .skeleton-header .skeleton-text:first-of-type{width:120px;height:18px}.skeleton-card .skeleton-header .skeleton-text:last-of-type{width:80px}.skeleton-chart{justify-content:space-around;align-items:flex-end;gap:8px;height:200px;padding:20px;display:flex}.skeleton-chart .bar{border-radius:4px 4px 0 0;flex:1;max-width:40px}.page-transition-enter-active,.page-transition-leave-active{transition:all .4s cubic-bezier(.4,0,.2,1)}.page-transition-enter-from{opacity:0;transform:translateY(20px)}.page-transition-leave-to{opacity:0;transform:translateY(-20px)}.slide-left-enter-active,.slide-left-leave-active,.slide-right-enter-active,.slide-right-leave-active{transition:all .35s cubic-bezier(.34,1.56,.64,1)}.slide-left-enter-from{opacity:0;transform:translate(30px)}.slide-left-leave-to,.slide-right-enter-from{opacity:0;transform:translate(-30px)}.slide-right-leave-to{opacity:0;transform:translate(30px)}.fade-mode-enter-active,.fade-mode-leave-active{transition:opacity .3s}.fade-mode-enter-from,.fade-mode-leave-to{opacity:0}.text-gradient{background:linear-gradient(135deg,#667eea 0%,#764ba2 100%);-webkit-text-fill-color:transparent;-webkit-background-clip:text;background-clip:text}.font-display{font-family:var(--font-display);font-weight:var(--font-bold,700);letter-spacing:var(--tracking-tight)}.animate-fade-in-up{animation:.6s cubic-bezier(.4,0,.2,1) both fadeInUp}.animate-scale-in{animation:.4s cubic-bezier(.34,1.56,.64,1) both scaleIn}.animate-slide-in-left{animation:.5s cubic-bezier(.4,0,.2,1) both slideInLeft}.stagger-children>*{opacity:0;animation:.5s cubic-bezier(.4,0,.2,1) forwards fadeInUp}.stagger-children>:first-child{animation-delay:80ms}.stagger-children>:nth-child(2){animation-delay:.16s}.stagger-children>:nth-child(3){animation-delay:.24s}.stagger-children>:nth-child(4){animation-delay:.32s}.stagger-children>:nth-child(5){animation-delay:.4s}.stagger-children>:nth-child(6){animation-delay:.48s}.stagger-children>:nth-child(7){animation-delay:.56s}.stagger-children>:nth-child(8){animation-delay:.64s}.stagger-children>:nth-child(9){animation-delay:.72s}.stagger-children>:nth-child(10){animation-delay:.8s}.glass-effect{-webkit-backdrop-filter:blur(10px);background:#ffffff1a;border:1px solid #fff3}
