@charset "utf-8";#app{font-family:Avenir,Helvetica,Arial,sans-serif;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-align:center;color:#2c3e50}nav{padding:30px}nav a{font-weight:700;color:#2c3e50}nav a.router-link-exact-active{color:#42b983}.breadcrumb-container .el-breadcrumb{line-height:1}.breadcrumb-container .el-breadcrumb .el-breadcrumb__item .el-breadcrumb__inner{font-size:14px;font-weight:500}.user-avatar-wrapper{float:left;padding:3px 0 3px 20px;margin-left:20px;border-left:1px solid #ddd;cursor:pointer}.user-avatar-wrapper .avatar-box{outline:none;display:flex;align-items:center;justify-content:space-between}.user-avatar-wrapper .username{font-size:14px;color:#333;margin-left:5px}.user-avatar-wrapper .el-avatar--small{display:inline-block;vertical-align:middle;width:32px;height:32px;line-height:32px}.user-avatar-wrapper i{display:inline-block;vertical-align:middle;margin-left:2px}.header-bar{justify-content:space-between;padding:0 24px;height:64px;background:#fff;position:relative}.header-bar,.header-bar .header-left,.header-bar .header-right{display:flex;align-items:center}.header-bar .header-right{gap:16px}.header-bar .header-right .action-btn{height:40px;width:40px;padding:0;display:flex;align-items:center;justify-content:center;border-radius:8px;transition:all .3s}.header-bar .header-right .action-btn i{font-size:20px;color:#606266}.header-bar .header-right .action-btn:hover{background:#f5f7fa}.header-bar .header-right .action-btn:hover i{color:#409eff}.header-bar .header-right .action-btn .el-badge{line-height:1}.header-bar .header-right .user-info .user-wrapper{display:flex;align-items:center;padding:0 8px;height:40px;border-radius:8px;cursor:pointer;transition:all .3s}.header-bar .header-right .user-info .user-wrapper:hover{background:#f5f7fa}.header-bar .header-right .user-info .user-wrapper .username{font-size:14px;color:#303133;margin-right:4px}.header-bar .header-right .user-info .user-wrapper i{font-size:12px;color:#909399}.el-breadcrumb .el-breadcrumb__item .el-breadcrumb__inner{color:#606266;font-weight:500;font-size:14px}.el-breadcrumb .el-breadcrumb__item .el-breadcrumb__inner.is-link{color:#909399}.el-breadcrumb .el-breadcrumb__item .el-breadcrumb__inner.is-link:hover{color:#409eff}.el-breadcrumb .el-breadcrumb__item:last-child .el-breadcrumb__inner{color:#303133;font-weight:600}.el-dropdown-menu{padding:6px 0;border-radius:8px;box-shadow:0 2px 12px 0 rgba(0,0,0,.1)}.el-dropdown-menu .el-dropdown-menu__item{padding:8px 20px;font-size:14px}.el-dropdown-menu .el-dropdown-menu__item:hover{background-color:#f5f7fa;color:#409eff}.notification-popover{padding:0;border-radius:8px}.notification-popover .el-popover__title{margin:0;padding:0}.notification-container .notification-header{padding:16px 20px;border-bottom:1px solid #ebeef5;display:flex;justify-content:space-between;align-items:center}.notification-container .notification-header .header-left{display:flex;align-items:center;gap:8px}.notification-container .notification-header .header-left i{font-size:18px;color:#409eff}.notification-container .notification-header .header-left span{font-size:16px;font-weight:600;color:#303133}.notification-container .notification-header .read-all-btn{font-size:13px;color:#909399}.notification-container .notification-header .read-all-btn:hover{color:#409eff}.notification-container .notification-header .read-all-btn i{margin-right:4px}.notification-container .custom-tabs{padding:0 20px}.notification-container .custom-tabs .el-tabs__header{margin:0}.notification-container .custom-tabs .el-tabs__nav-wrap:after{height:1px}.notification-container .custom-tabs .el-tabs__item{height:48px;line-height:48px;font-size:14px;padding:0 20px}.notification-container .custom-tabs .el-tabs__item.is-active{font-weight:600}.notification-container .custom-tabs .tab-label{display:inline-flex;align-items:center;gap:8px}.notification-container .custom-tabs .tab-badge .el-badge__content{height:16px;line-height:16px;padding:0 4px;border:none;transform:translateY(-8px)}.notification-container .notification-content{height:400px;overflow-y:auto;padding:0 20px}.notification-container .notification-content::-webkit-scrollbar{width:6px}.notification-container .notification-content::-webkit-scrollbar-thumb{background:#e4e7ed;border-radius:3px}.notification-container .notification-content .notification-list{padding:8px 0}.notification-container .notification-content .notification-list .notification-item{padding:12px;border-radius:6px;margin-bottom:8px;cursor:pointer;transition:all .3s;background:#f5f7fa}.notification-container .notification-content .notification-list .notification-item:hover{background:#ecf5ff}.notification-container .notification-content .notification-list .notification-item.is-read{background:#f5f7fa;opacity:.8}.notification-container .notification-content .notification-list .notification-item .item-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.notification-container .notification-content .notification-list .notification-item .item-header .notification-title{display:flex;align-items:center;gap:6px;font-weight:500;color:#303133}.notification-container .notification-content .notification-list .notification-item .item-header .notification-title i{color:#409eff;font-size:16px}.notification-container .notification-content .notification-list .notification-item .item-header .notification-time{font-size:12px;color:#909399}.notification-container .notification-content .notification-list .notification-item .notification-content{height:auto;color:#606266;font-size:13px;line-height:1.6;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden;padding:0}.notification-container .el-empty{padding:32px 0}@font-face{font-family:iconfont;src:url(//at.alicdn.com/t/c/font_4574941_prcq6yopesa.woff2?t=1719651213317) format("woff2"),url(//at.alicdn.com/t/c/font_4574941_prcq6yopesa.woff?t=1719651213317) format("woff"),url(//at.alicdn.com/t/c/font_4574941_prcq6yopesa.ttf?t=1719651213317) format("truetype")}.iconfont{font-family:iconfont!important;font-size:16px;font-style:normal;-webkit-font-smoothing:antialiased;-webkit-text-stroke-width:.2px;-moz-osx-font-smoothing:grayscale}.aside-menu[data-v-c18e3d12]{background-color:#1e1e2d;padding-top:0}.el-menu[data-v-c18e3d12]{background-color:#1e1e2d;text-align:left;border-right:none}.el-menu-item[data-v-c18e3d12]{background-color:#1e1e2d!important;margin-bottom:0;height:45px;line-height:45px;font-size:15px;min-width:95%!important;color:#a2a3b7;border-bottom:1px solid hsla(0,0%,100%,.05)}.el-menu-item[data-v-c18e3d12]:hover{background:#1b1b28!important;color:#fff!important}.el-menu-item.is-active[data-v-c18e3d12]{color:#3699ff!important;background:#1b1b28!important;border-right:4px solid #3699ff;border-bottom:1px solid hsla(0,0%,100%,.05)}.el-submenu[data-v-c18e3d12] .el-submenu__title{font-size:15px!important;line-height:45px!important;background-color:#1e1e2d!important;height:45px!important;color:#a2a3b7!important;border-bottom:1px solid hsla(0,0%,100%,.05)}.el-submenu[data-v-c18e3d12] .el-submenu__title:hover{background:#1b1b28!important;color:#fff!important;height:45px!important;line-height:45px!important}.el-submenu[data-v-c18e3d12] .el-menu--inline{background:#1e1e2d!important}.el-submenu .el-menu--inline .el-menu-item[data-v-c18e3d12]{background-color:#1e1e2d!important;margin:0!important;height:45px!important;line-height:45px!important;color:#a2a3b7;border-bottom:1px solid hsla(0,0%,100%,.05)}.el-submenu .el-menu--inline .el-menu-item[data-v-c18e3d12]:hover{background:#1b1b28!important;color:#fff!important}[data-v-c18e3d12] .el-submenu .el-menu--inline .el-menu-item.is-active{background:#1b1b28!important;margin:0!important;color:#3699ff!important}.icon-hover[data-v-c18e3d12]{transition:transform .1s ease}.el-menu-item:hover .icon-hover[data-v-c18e3d12]{transform:scale(1.1)!important}[data-v-c18e3d12] .el-menu--popup{background-color:#1e1e2d!important;border:none}[data-v-c18e3d12] .el-menu--popup-right-start{margin-left:0}[data-v-c18e3d12] .el-menu--popup .el-menu-item{background-color:#1b1b28!important;color:#a2a3b7}[data-v-c18e3d12] .el-menu--popup .el-menu-item:hover{background-color:#171723!important;color:#fff!important}[data-v-c18e3d12] .el-menu--popup .el-menu-item.is-active{background-color:#171723!important;color:#3699ff!important}[data-v-c18e3d12] .el-submenu__icon-arrow{color:#a2a3b7}[data-v-c18e3d12] .el-menu-item:hover .el-submenu__icon-arrow,[data-v-c18e3d12] .el-submenu__title:hover .el-submenu__icon-arrow{color:#fff}.scroll-bar::-webkit-scrollbar-track-piece{background-color:transparent;border-left:1px solid transparent}.scroll-bar::-webkit-scrollbar{width:5px;height:6px;border-radius:3px}.scroll-bar::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.2);background-clip:padding-box;border-radius:3px;min-height:28px}.scroll-bar::-webkit-scrollbar-thumb:hover{background-color:rgba(0,0,0,.3);border-radius:3px}.app-wrapper{width:100%;height:100%;overflow:hidden}.app-wrapper .side-container{background-color:#1e1e2d;float:left;width:210px;height:100vh;overflow-y:auto;overflow-x:hidden;box-shadow:0 0 10px rgba(0,0,0,.2)}.app-wrapper .side-container::-webkit-scrollbar{width:3px}.app-wrapper .side-container::-webkit-scrollbar-thumb{background:#2b2b40;border-radius:3px}.app-wrapper .side-container .logo{padding:0 16px;background:linear-gradient(137deg,#1b1b28,#2b2b40);height:80px;display:flex;align-items:center;border-bottom:1px solid hsla(0,0%,100%,.1);position:relative;overflow:hidden}.app-wrapper .side-container .logo:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:radial-gradient(circle at top right,rgba(54,153,255,.1),transparent 60%)}.app-wrapper .side-container .logo .logo-icon{position:relative;width:48px;height:48px;background:linear-gradient(45deg,#3699ff,#5ab9fe);border-radius:14px;display:flex;align-items:center;justify-content:center;margin-right:14px;box-shadow:0 4px 12px rgba(54,153,255,.25)}.app-wrapper .side-container .logo .logo-icon:after{content:"";position:absolute;top:0;left:0;right:0;bottom:0;background:linear-gradient(hsla(0,0%,100%,.1),transparent);border-radius:14px}.app-wrapper .side-container .logo .logo-icon i{font-size:26px;color:#fff;position:relative;z-index:1}.app-wrapper .side-container .logo .logo-content{position:relative;display:flex;flex-direction:column;justify-content:center}.app-wrapper .side-container .logo .logo-content .logo-title{color:#fff;font-size:24px;font-weight:700;letter-spacing:1.5px;line-height:1.2;text-shadow:0 2px 4px rgba(0,0,0,.2)}.app-wrapper .side-container .logo .logo-content .logo-subtitle{color:hsla(0,0%,100%,.7);font-size:13px;margin-top:3px;letter-spacing:.5px}.app-wrapper .main-container{float:left;height:100vh;transition:width .5s;padding:10px 0;margin-left:10px;width:calc(100% - 240px)}.app-wrapper .main-container .main-header{margin-bottom:20px;background-color:#fff;border-radius:8px;box-shadow:0 2px 12px 0 rgba(0,0,0,.05)}.app-wrapper .main-container .main-content{box-shadow:0 0 8px rgba(0,0,0,.2)}.app-wrapper .main-container .main-content .el-scrollbar{height:calc(100vh - 104px)}.app-wrapper .main-container .main-content .el-scrollbar::-webkit-scrollbar-track-piece{background-color:transparent;border-left:1px solid transparent}.app-wrapper .main-container .main-content .el-scrollbar::-webkit-scrollbar{width:5px;height:6px;border-radius:3px}.app-wrapper .main-container .main-content .el-scrollbar::-webkit-scrollbar-thumb{background-color:rgba(0,0,0,.2);background-clip:padding-box;border-radius:3px;min-height:28px}.app-wrapper .main-container .main-content .el-scrollbar::-webkit-scrollbar-thumb:hover{background-color:rgba(0,0,0,.3);border-radius:3px}.app-wrapper .main-container .main-content .el-scrollbar .scrollbar{height:100%;overflow-x:hidden}.dashboard-shell[data-v-6af5ba52]{min-height:calc(100vh - 110px);padding:18px;background:radial-gradient(circle at 10% 8%,rgba(20,184,166,.14),transparent 34%),radial-gradient(circle at 90% 4%,rgba(245,158,11,.16),transparent 30%),#f6f8fb;font-family:HarmonyOS Sans SC,PingFang SC,Microsoft YaHei,sans-serif}.kpi-grid[data-v-6af5ba52]{margin-top:0;display:grid;gap:14px;grid-template-columns:repeat(auto-fit,minmax(210px,1fr))}.kpi-card[data-v-6af5ba52]{padding:16px;border-radius:14px;border:1px solid #e6ebf2;background:linear-gradient(145deg,hsla(0,0%,100%,.96),rgba(246,250,253,.95));box-shadow:0 12px 22px rgba(14,30,37,.06);animation:card-in-6af5ba52 .38s ease-out var(--delay) both}.kpi-top[data-v-6af5ba52]{display:flex;align-items:center;justify-content:space-between}.kpi-label[data-v-6af5ba52]{color:#475569;font-size:13px}.kpi-icon[data-v-6af5ba52]{width:30px;height:30px;display:inline-flex;align-items:center;justify-content:center;border-radius:9px;background:rgba(245,158,11,.14);color:#b45309}.kpi-value[data-v-6af5ba52]{margin-top:10px;display:flex;align-items:baseline;gap:6px}.kpi-number[data-v-6af5ba52]{font-size:30px;line-height:1;color:#0f172a;font-weight:700;font-family:DIN Alternate,Bahnschrift,Segoe UI,sans-serif;font-variant-numeric:tabular-nums}.kpi-unit[data-v-6af5ba52]{font-style:normal;color:#6b7280;font-size:13px}.analysis-grid[data-v-6af5ba52]{margin-top:16px;display:grid;grid-template-columns:1.25fr 1fr;gap:14px}.panel-card[data-v-6af5ba52]{border-radius:14px;border:1px solid #e6ebf2;box-shadow:0 10px 22px rgba(14,30,37,.06)}.panel-card[data-v-6af5ba52] .el-card__body{padding:16px}.panel-full[data-v-6af5ba52]{grid-column:1/-1}.panel-head[data-v-6af5ba52]{margin-bottom:10px}.panel-head h3[data-v-6af5ba52]{margin:0;font-size:17px;color:#0f172a}.chart-panel[data-v-6af5ba52]{width:100%;height:320px}.insight-list[data-v-6af5ba52]{display:grid;gap:10px}.insight-item[data-v-6af5ba52]{display:grid;grid-template-columns:52px 1fr auto;gap:12px;align-items:center;padding:10px 12px;border-radius:10px;background:#f8fbff;border:1px solid #e6edf7}.insight-rank[data-v-6af5ba52]{font-size:13px;color:#0284c7;font-weight:700;font-family:DIN Alternate,Bahnschrift,sans-serif}.insight-name[data-v-6af5ba52]{font-size:14px;color:#0f172a;margin-bottom:5px}.insight-progress[data-v-6af5ba52]{height:6px;border-radius:999px;background:#e7edf4;overflow:hidden}.progress-bar[data-v-6af5ba52]{display:block;height:100%;border-radius:999px;background:linear-gradient(90deg,#0ea5e9,#14b8a6)}.insight-value[data-v-6af5ba52]{font-size:13px;color:#334155;font-variant-numeric:tabular-nums}.insight-empty[data-v-6af5ba52]{text-align:center;padding:32px 0;color:#94a3b8}@media (max-width:1200px){.analysis-grid[data-v-6af5ba52]{grid-template-columns:1fr}.panel-full[data-v-6af5ba52]{grid-column:auto}}@media (max-width:768px){.dashboard-shell[data-v-6af5ba52]{padding:12px}.insight-item[data-v-6af5ba52]{grid-template-columns:48px 1fr}.insight-value[data-v-6af5ba52]{grid-column:2}}@media (max-width:520px){.kpi-grid[data-v-6af5ba52]{grid-template-columns:1fr}}@keyframes card-in-6af5ba52{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.ValidCode[data-v-609bfd87]{display:flex;justify-content:center;align-items:center;cursor:pointer}.ValidCode span[data-v-609bfd87]{display:inline-block}.login-box[data-v-4b1d5563]{width:360px;padding:28px;border-radius:10px;background:hsla(0,0%,100%,.95);box-shadow:0 8px 30px rgba(0,0,0,.1);backdrop-filter:blur(10px)}.login-header[data-v-4b1d5563]{text-align:center;margin-bottom:25px}.icon-wrapper[data-v-4b1d5563]{width:55px;height:55px;margin:0 auto 12px;background:linear-gradient(135deg,#1a237e,#0277bd);border-radius:50%;display:flex;align-items:center;justify-content:center}.login-header i[data-v-4b1d5563]{font-size:28px;color:#fff}.login-header h2[data-v-4b1d5563]{margin:0;font-size:20px;color:#1a237e;font-weight:600}.sub-title[data-v-4b1d5563]{margin:6px 0 0;font-size:11px;color:#666;letter-spacing:1px}.custom-input[data-v-4b1d5563] .el-input__inner{height:40px;line-height:40px;border-radius:6px;border:1px solid #e0e0e0;transition:all .3s ease;font-size:14px}.custom-input[data-v-4b1d5563] .el-input__inner:focus{border-color:#1a237e;box-shadow:0 0 0 2px rgba(26,35,126,.1)}.custom-input[data-v-4b1d5563] .el-input__prefix{left:10px}.validate-container[data-v-4b1d5563]{display:flex;gap:12px}.validate-container .el-input[data-v-4b1d5563]{flex:1}.valid-code[data-v-4b1d5563]{border-radius:6px;overflow:hidden}.login-button[data-v-4b1d5563]{width:100%;height:40px;font-size:15px;background:linear-gradient(135deg,#1a237e,#0277bd);border:none;border-radius:6px;transition:background .3s ease,box-shadow .3s ease}.login-button[data-v-4b1d5563]:hover{background:linear-gradient(135deg,#0d47a1,#01579b);box-shadow:0 4px 12px rgba(26,35,126,.3)}.login-button i[data-v-4b1d5563]{margin-right:5px}.login-options[data-v-4b1d5563]{display:flex;justify-content:space-between;align-items:center;margin-top:15px;padding:0 5px}.register-link[data-v-4b1d5563]{color:#666;font-size:13px}.el-link[data-v-4b1d5563]{font-size:13px}.el-link[data-v-4b1d5563]:hover{text-decoration:underline}#login-container[data-v-685f29dd]{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:100vh;background:linear-gradient(135deg,#1a237e,#0277bd);position:relative;overflow:hidden}#login-container[data-v-685f29dd]:before{content:"";position:absolute;top:0;left:0;right:0;bottom:0;opacity:.05;pointer-events:none}.system-title[data-v-685f29dd]{text-align:center;margin-bottom:2rem;color:#fff}.system-title h1[data-v-685f29dd]{font-size:2.5rem;margin:0;text-shadow:2px 2px 4px rgba(0,0,0,.3)}.system-title p[data-v-685f29dd]{font-size:1rem;margin:.5rem 0 0;letter-spacing:2px;opacity:.8}.register-box[data-v-e5759b8a]{width:360px;padding:28px;border-radius:10px;background:hsla(0,0%,100%,.95);box-shadow:0 8px 30px rgba(0,0,0,.1);backdrop-filter:blur(10px)}.register-header[data-v-e5759b8a]{text-align:center;margin-bottom:25px;color:#1a237e}.register-header i[data-v-e5759b8a]{font-size:35px;margin-bottom:8px}.register-header h2[data-v-e5759b8a]{margin:0;font-size:20px;font-weight:600}.verify-container[data-v-e5759b8a]{display:flex;gap:12px}.verify-container .el-input[data-v-e5759b8a]{flex:1}.verify-container .el-button[data-v-e5759b8a]{width:110px;height:40px;font-size:14px}.department-select[data-v-e5759b8a]{width:100%}.register-button[data-v-e5759b8a]{width:100%;height:40px;font-size:15px;background:linear-gradient(135deg,#1a237e,#0277bd);border:none;border-radius:6px;transition:background .3s ease,box-shadow .3s ease}.register-button[data-v-e5759b8a]:hover{background:linear-gradient(135deg,#0d47a1,#01579b);box-shadow:0 4px 12px rgba(26,35,126,.3)}.login-link[data-v-e5759b8a]{text-align:center;margin-top:12px;color:#606266;font-size:13px}.reset-password-box[data-v-9aef3444]{width:360px;padding:28px;border-radius:10px;background:hsla(0,0%,100%,.95);box-shadow:0 8px 30px rgba(0,0,0,.1);backdrop-filter:blur(10px)}.reset-password-header[data-v-9aef3444]{text-align:center;margin-bottom:25px}.icon-wrapper[data-v-9aef3444]{width:55px;height:55px;margin:0 auto 12px;background:linear-gradient(135deg,#1a237e,#0277bd);border-radius:50%;display:flex;align-items:center;justify-content:center}.reset-password-header i[data-v-9aef3444]{font-size:28px;color:#fff}.reset-password-header h2[data-v-9aef3444]{margin:0;font-size:20px;color:#1a237e;font-weight:600}.sub-title[data-v-9aef3444]{margin:6px 0 0;font-size:11px;color:#666;letter-spacing:1px}.custom-input[data-v-9aef3444] .el-input__inner{height:40px;line-height:40px;border-radius:6px;border:1px solid #e0e0e0;transition:all .3s ease;font-size:14px}.custom-input[data-v-9aef3444] .el-input__inner:focus{border-color:#1a237e;box-shadow:0 0 0 2px rgba(26,35,126,.1)}.custom-input[data-v-9aef3444] .el-input__prefix{left:10px}.verify-container[data-v-9aef3444]{display:flex;gap:12px}.verify-container .el-input[data-v-9aef3444]{flex:1}.verify-container .el-button[data-v-9aef3444]{width:110px;height:40px;font-size:14px}.reset-button[data-v-9aef3444]{width:100%;height:40px;font-size:15px;background:linear-gradient(135deg,#1a237e,#0277bd);border:none;border-radius:6px;transition:background .3s ease,box-shadow .3s ease}.reset-button[data-v-9aef3444]:hover{background:linear-gradient(135deg,#0d47a1,#01579b);box-shadow:0 4px 12px rgba(26,35,126,.3)}.reset-button i[data-v-9aef3444]{margin-right:5px}.login-link[data-v-9aef3444]{text-align:center;margin-top:12px;color:#606266;font-size:13px}.el-link[data-v-9aef3444]{font-size:13px}.el-link[data-v-9aef3444]:hover{text-decoration:underline}*{-webkit-tap-highlight-color:rgba(0,0,0,0);font-family:微软雅黑,sans-serif}.el-button{border-radius:1}@font-face{font-family:miSans;src:url(/fonts/MiSans-Normal.086d027d.ttf) format("truetype");font-weight:400;font-style:normal}