.session-status[data-v-7e39f653]{position:fixed;bottom:20px;right:20px;z-index:1000}.session-status .status-indicator[data-v-7e39f653]{display:flex;align-items:center;gap:6px;padding:8px 12px;background:hsla(0,0%,100%,.95);border:1px solid #e4e7ed;border-radius:20px;box-shadow:0 2px 12px rgba(0,0,0,.1);cursor:pointer;transition:all .3s ease}.session-status .status-indicator[data-v-7e39f653]:hover{box-shadow:0 4px 20px rgba(0,0,0,.15);transform:translateY(-2px)}.session-status .status-indicator .clock-icon[data-v-7e39f653]{color:#909399;font-size:14px}.session-status .status-indicator .time-text[data-v-7e39f653]{color:#606266;font-size:12px;font-weight:500;min-width:35px;text-align:center}.session-status.warning .status-indicator[data-v-7e39f653]{background:hsla(0,87%,69%,.1);border-color:#f56c6c}.session-status.warning .status-indicator .clock-icon[data-v-7e39f653]{color:#f56c6c;animation:pulse-7e39f653 2s infinite}.session-status.warning .status-indicator .time-text[data-v-7e39f653]{color:#f56c6c}@keyframes pulse-7e39f653{0%,to{opacity:1}50%{opacity:.5}}@media(max-width:768px){.session-status[data-v-7e39f653]{bottom:15px;right:15px}.session-status .status-indicator[data-v-7e39f653]{padding:6px 10px}.session-status .status-indicator .clock-icon[data-v-7e39f653]{font-size:12px}.session-status .status-indicator .time-text[data-v-7e39f653]{font-size:11px;min-width:30px}}.sidebar[data-v-427e13f4]{transform:translateZ(0);backface-visibility:hidden;perspective:1000px;background:linear-gradient(180deg,#0f1419,#1a2332 50%,#1e2a3a);display:flex;flex-direction:column;box-shadow:4px 0 30px rgba(0,0,0,.25);position:relative;overflow:hidden}.sidebar .logo[data-v-427e13f4]{height:80px;display:flex;align-items:center;padding:0 20px;background:linear-gradient(135deg,#409eff,#337ecc 50%,#2a6db5);gap:14px;position:relative;z-index:1}.sidebar .logo .logo-icon[data-v-427e13f4]{width:46px;height:46px;background:hsla(0,0%,100%,.25);border-radius:14px;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(10px);box-shadow:0 4px 15px rgba(0,0,0,.2);position:relative;z-index:1}.sidebar .logo .logo-icon .logo-img[data-v-427e13f4]{width:32px;height:32px;-o-object-fit:contain;object-fit:contain}.sidebar .logo .logo-text[data-v-427e13f4]{position:relative;z-index:1}.sidebar .logo .logo-text h2[data-v-427e13f4]{color:#fff;font-size:19px;font-weight:700;margin:0;line-height:1.3;text-shadow:0 2px 4px rgba(0,0,0,.2)}.sidebar .logo .logo-text .logo-subtitle[data-v-427e13f4]{font-size:11px;color:hsla(0,0%,100%,.8);letter-spacing:2px;text-transform:uppercase}.sidebar .sidebar-menu[data-v-427e13f4]{flex:1;border-right:none;background:transparent;padding:20px 14px;overflow-y:auto;overflow-x:hidden;position:relative;z-index:1;max-height:calc(100vh - 180px);will-change:scroll-position}.sidebar .sidebar-menu[data-v-427e13f4]::-webkit-scrollbar{width:4px}.sidebar .sidebar-menu[data-v-427e13f4]::-webkit-scrollbar-track{background:transparent}.sidebar .sidebar-menu[data-v-427e13f4]::-webkit-scrollbar-thumb{background:rgba(64,158,255,.3);border-radius:4px}.sidebar .sidebar-menu[data-v-427e13f4] .el-menu-item,.sidebar .sidebar-menu[data-v-427e13f4] .el-menu-item *,.sidebar .sidebar-menu[data-v-427e13f4] .el-menu-item span,.sidebar .sidebar-menu[data-v-427e13f4] .el-sub-menu__title,.sidebar .sidebar-menu[data-v-427e13f4] .el-sub-menu__title *,.sidebar .sidebar-menu[data-v-427e13f4] .el-sub-menu__title span{color:#fff!important}.sidebar .sidebar-menu .menu-item[data-v-427e13f4]{height:50px;line-height:50px;margin-bottom:8px;border-radius:14px;color:#fff!important;transition:all .1s linear;position:relative;overflow:hidden;display:flex;align-items:center;gap:12px;padding-left:20px!important}.sidebar .sidebar-menu .menu-item[data-v-427e13f4]:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:0;background:linear-gradient(180deg,#409eff,#66b1ff);border-radius:0 3px 3px 0;transition:height .1s linear}.sidebar .sidebar-menu .menu-item .el-icon[data-v-427e13f4]{font-size:18px;color:hsla(0,0%,100%,.8)!important;transition:all .1s linear}.sidebar .sidebar-menu .menu-item[data-v-427e13f4] *{color:#fff!important}.sidebar .sidebar-menu .menu-item span[data-v-427e13f4]{font-size:14px;font-weight:500;letter-spacing:.3px;color:#fff!important}.sidebar .sidebar-menu .menu-item[data-v-427e13f4]:hover{background:rgba(64,158,255,.12);color:#fff!important;transform:translateX(4px)}.sidebar .sidebar-menu .menu-item[data-v-427e13f4]:hover:before{height:60%}.sidebar .sidebar-menu .menu-item:hover .el-icon[data-v-427e13f4]{color:#66b1ff!important;transform:scale(1.1)}.sidebar .sidebar-menu .menu-item[data-v-427e13f4]:hover *{color:#fff!important}.sidebar .sidebar-menu .menu-item.is-active[data-v-427e13f4]{background:linear-gradient(135deg,#409eff,#66b1ff);color:#fff!important;box-shadow:0 6px 20px rgba(64,158,255,.35),inset 0 1px 0 hsla(0,0%,100%,.2);transform:translateX(4px)}.sidebar .sidebar-menu .menu-item.is-active[data-v-427e13f4]:before{height:70%;background:#fff}.sidebar .sidebar-menu .menu-item.is-active .el-icon[data-v-427e13f4]{color:#fff!important;transform:scale(1.15)}.sidebar .sidebar-menu .menu-item.is-active[data-v-427e13f4] *{color:#fff!important}.sidebar .sidebar-menu[data-v-427e13f4] .el-sub-menu{margin-bottom:8px}.sidebar .sidebar-menu[data-v-427e13f4] .el-sub-menu .el-sub-menu__title{height:50px;line-height:50px;border-radius:14px;color:#fff!important;background:transparent!important;transition:all .1s linear;display:flex;align-items:center;gap:12px;padding-left:20px!important;position:relative}.sidebar .sidebar-menu[data-v-427e13f4] .el-sub-menu .el-sub-menu__title:before{content:"";position:absolute;left:0;top:50%;transform:translateY(-50%);width:3px;height:0;background:linear-gradient(180deg,#409eff,#66b1ff);border-radius:0 3px 3px 0;transition:height .1s linear}.sidebar .sidebar-menu[data-v-427e13f4] .el-sub-menu .el-sub-menu__title .el-icon:not(.el-sub-menu__icon-arrow){font-size:18px;color:hsla(0,0%,100%,.8)!important;transition:all .1s linear}.sidebar .sidebar-menu[data-v-427e13f4] .el-sub-menu .el-sub-menu__title:hover{background:rgba(64,158,255,.12)!important;color:#fff!important;transform:translateX(4px)}.sidebar .sidebar-menu[data-v-427e13f4] .el-sub-menu .el-sub-menu__title:hover:before{height:60%}.sidebar .sidebar-menu[data-v-427e13f4] .el-sub-menu .el-sub-menu__title:hover .el-icon:not(.el-sub-menu__icon-arrow){color:#66b1ff!important;transform:scale(1.1)}.sidebar .sidebar-menu[data-v-427e13f4] .el-sub-menu .el-sub-menu__title .el-icon.el-sub-menu__icon-arrow{color:hsla(0,0%,100%,.6)!important;font-size:12px!important;width:12px!important;height:12px!important;margin-right:0!important;transition:transform .1s linear!important}.sidebar .sidebar-menu[data-v-427e13f4] .el-sub-menu .el-sub-menu__title span{font-size:14px;font-weight:500;color:#fff!important}.sidebar .sidebar-menu[data-v-427e13f4] .el-sub-menu.is-opened .el-sub-menu__title{color:#fff!important;background:rgba(64,158,255,.08)!important}.sidebar .sidebar-menu[data-v-427e13f4] .el-sub-menu.is-opened .el-sub-menu__title:before{height:50%}.sidebar .sidebar-menu[data-v-427e13f4] .el-sub-menu.is-opened .el-sub-menu__title .el-icon:not(.el-sub-menu__icon-arrow){color:#66b1ff!important}.sidebar .sidebar-menu[data-v-427e13f4] .el-sub-menu.is-opened .el-sub-menu__title .el-icon.el-sub-menu__icon-arrow{transform:rotate(180deg)!important;color:#66b1ff!important}.sidebar .sidebar-menu[data-v-427e13f4] .el-sub-menu__wrap{background:transparent!important;will-change:height;transition:height .1s linear!important;overflow:hidden!important}.sidebar .sidebar-menu[data-v-427e13f4] .el-menu{background:transparent!important}.sidebar .sidebar-menu[data-v-427e13f4] .el-menu--collapse-transition,.sidebar .sidebar-menu[data-v-427e13f4] .el-sub-menu .el-menu{transition:none!important}.sidebar .sidebar-menu[data-v-427e13f4] .el-menu--inline{background:linear-gradient(135deg,rgba(0,0,0,.25),rgba(0,0,0,.15))!important;border-radius:12px!important;margin:6px 0 10px 0!important;padding:6px 0!important;border-left:2px solid rgba(64,158,255,.3)!important;box-shadow:inset 0 2px 8px rgba(0,0,0,.15)!important}.sidebar .sidebar-menu[data-v-427e13f4] .el-menu--inline .el-menu-item{height:42px!important;line-height:42px!important;margin:2px 10px!important;border-radius:10px!important;color:hsla(0,0%,100%,.85)!important;background:transparent!important;padding-left:44px!important;transition:all .1s linear!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;position:relative}.sidebar .sidebar-menu[data-v-427e13f4] .el-menu--inline .el-menu-item:after{content:"";position:absolute;left:24px;top:50%;transform:translateY(-50%);width:6px;height:6px;background:hsla(0,0%,100%,.3);border-radius:50%;transition:all .1s linear}.sidebar .sidebar-menu[data-v-427e13f4] .el-menu--inline .el-menu-item *{color:hsla(0,0%,100%,.85)!important}.sidebar .sidebar-menu[data-v-427e13f4] .el-menu--inline .el-menu-item span{font-size:13px!important;color:hsla(0,0%,100%,.85)!important;font-weight:400!important}.sidebar .sidebar-menu[data-v-427e13f4] .el-menu--inline .el-menu-item:hover{background:rgba(64,158,255,.18)!important;color:#fff!important;transform:translateX(4px);padding-left:48px!important}.sidebar .sidebar-menu[data-v-427e13f4] .el-menu--inline .el-menu-item:hover:after{background:#66b1ff;transform:translateY(-50%) scale(1.3);box-shadow:0 0 8px rgba(102,177,255,.6)}.sidebar .sidebar-menu[data-v-427e13f4] .el-menu--inline .el-menu-item:hover *,.sidebar .sidebar-menu[data-v-427e13f4] .el-menu--inline .el-menu-item:hover span{color:#fff!important}.sidebar .sidebar-menu[data-v-427e13f4] .el-menu--inline .el-menu-item.is-active{background:linear-gradient(135deg,rgba(64,158,255,.35),rgba(64,158,255,.25))!important;color:#fff!important;font-weight:600!important;position:relative;box-shadow:0 2px 8px rgba(64,158,255,.2)!important}.sidebar .sidebar-menu[data-v-427e13f4] .el-menu--inline .el-menu-item.is-active:after{background:#fff;transform:translateY(-50%) scale(1.5);box-shadow:0 0 10px hsla(0,0%,100%,.8)}.sidebar .sidebar-menu[data-v-427e13f4] .el-menu--inline .el-menu-item.is-active *{color:#fff!important}.sidebar .sidebar-menu[data-v-427e13f4] .el-menu--inline .el-menu-item.is-active span{color:#fff!important;font-weight:600!important}.sidebar .sidebar-footer[data-v-427e13f4]{padding:18px;border-top:1px solid hsla(0,0%,100%,.06);background:rgba(0,0,0,.15);position:relative;z-index:2;flex-shrink:0}.sidebar .sidebar-footer .user-card[data-v-427e13f4]{display:flex;align-items:center;gap:14px;padding:14px;background:linear-gradient(135deg,hsla(0,0%,100%,.08),hsla(0,0%,100%,.03));border-radius:14px;cursor:pointer;transition:all .3s ease;border:1px solid hsla(0,0%,100%,.06)}.sidebar .sidebar-footer .user-card[data-v-427e13f4]:hover{background:linear-gradient(135deg,rgba(64,158,255,.15),rgba(64,158,255,.05));border-color:rgba(64,158,255,.3);transform:translateY(-2px);box-shadow:0 8px 25px rgba(0,0,0,.2)}.sidebar .sidebar-footer .user-card:hover .arrow-icon[data-v-427e13f4]{transform:translateX(4px);color:#409eff}.sidebar .sidebar-footer .user-card:hover .user-avatar[data-v-427e13f4]{border-color:#409eff}.sidebar .sidebar-footer .user-card .user-avatar[data-v-427e13f4]{border:2px solid hsla(0,0%,100%,.2);flex-shrink:0;transition:border-color .3s ease}.sidebar .sidebar-footer .user-card .user-info[data-v-427e13f4]{flex:1;min-width:0}.sidebar .sidebar-footer .user-card .user-info .user-name[data-v-427e13f4]{display:block;font-size:14px;font-weight:600;color:#fff;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.sidebar .sidebar-footer .user-card .user-info .user-role[data-v-427e13f4]{display:block;font-size:12px;color:hsla(0,0%,100%,.5);margin-top:3px}.sidebar .sidebar-footer .user-card .arrow-icon[data-v-427e13f4]{color:hsla(0,0%,100%,.4);font-size:14px;transition:all .3s ease}*{margin:0;padding:0;box-sizing:border-box}:root{--el-transition-duration:0.1s;--el-transition-duration-fast:0.05s}.el-collapse-transition-enter-active,.el-collapse-transition-leave-active{transition:height .1s linear!important}.el-menu--collapse-transition,.el-menu--horizontal-collapse-transition{transition:none!important}.el-sub-menu__wrap{transition:height .1s linear!important}#app{font-family:Helvetica Neue,Helvetica,PingFang SC,Hiragino Sans GB,Microsoft YaHei,微软雅黑,Arial,sans-serif;height:100vh}.login-page{width:100%}.layout-container,.login-page{height:100vh}.header{background:linear-gradient(135deg,#fff,#f8fafc);border-bottom:1px solid #e4e7ed;justify-content:space-between;padding:0 24px;box-shadow:0 2px 12px rgba(0,0,0,.04)}.header,.header .header-left{display:flex;align-items:center}.header .header-left .el-breadcrumb{line-height:60px}.header .header-left .el-breadcrumb :deep(.el-breadcrumb__item) .el-breadcrumb__inner{color:#606266;font-weight:500;font-size:14px;transition:all .3s ease}.header .header-left .el-breadcrumb :deep(.el-breadcrumb__item) .el-breadcrumb__inner.is-link:hover{color:#409eff}.header .header-left .el-breadcrumb :deep(.el-breadcrumb__item):last-child .el-breadcrumb__inner{color:#409eff;font-weight:600}.header .header-left .el-breadcrumb :deep(.el-breadcrumb__item) .el-breadcrumb__separator{color:#c0c4cc}.header .header-right .user-info-dropdown{cursor:pointer;display:flex;align-items:center;gap:10px;padding:6px 12px;border-radius:24px;transition:all .3s ease;background:rgba(64,158,255,.06);border:1px solid transparent}.header .header-right .user-info-dropdown:hover{background:rgba(64,158,255,.12);border-color:rgba(64,158,255,.2)}.header .header-right .user-info-dropdown:hover .dropdown-arrow{transform:rotate(180deg)}.header .header-right .user-info-dropdown .user-avatar{border:2px solid #409eff;transition:all .3s ease;box-shadow:0 2px 8px rgba(64,158,255,.25)}.header .header-right .user-info-dropdown .username{color:#303133;font-size:14px;font-weight:500;max-width:100px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.header .header-right .user-info-dropdown .dropdown-arrow{color:#409eff;font-size:12px;transition:transform .3s ease}.header .header-right .el-dropdown-link{cursor:pointer;color:#606266;display:flex;align-items:center}.main-content{background-color:#f0f2f5;padding:20px}.el-dropdown-menu .el-dropdown-menu__item{display:flex;align-items:center;gap:8px;padding:8px 16px}.el-dropdown-menu .el-dropdown-menu__item .el-icon{font-size:16px;color:#606266}.el-dropdown-menu .el-dropdown-menu__item:hover .el-icon{color:#409eff}