@charset "UTF-8";:root{--el-color-white:#fff;--el-color-black:#000;--el-color-primary-rgb:64, 158, 255;--el-color-success-rgb:103, 194, 58;--el-color-warning-rgb:230, 162, 60;--el-color-danger-rgb:245, 108, 108;--el-color-error-rgb:245, 108, 108;--el-color-info-rgb:144, 147, 153;--el-font-size-extra-large:20px;--el-font-size-large:18px;--el-font-size-medium:16px;--el-font-size-base:14px;--el-font-size-small:13px;--el-font-size-extra-small:12px;--el-font-family:"Helvetica Neue", Helvetica, "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "微软雅黑", Arial, sans-serif;--el-font-weight-primary:500;--el-font-line-height-primary:24px;--el-index-normal:1;--el-index-top:1000;--el-index-popper:2000;--el-border-radius-base:4px;--el-border-radius-small:2px;--el-border-radius-round:20px;--el-border-radius-circle:100%;--el-transition-duration:.3s;--el-transition-duration-fast:.2s;--el-transition-function-ease-in-out-bezier:cubic-bezier(.645, .045, .355, 1);--el-transition-function-fast-bezier:cubic-bezier(.23, 1, .32, 1);--el-transition-all:all var(--el-transition-duration) var(--el-transition-function-ease-in-out-bezier);--el-transition-fade:opacity var(--el-transition-duration) var(--el-transition-function-fast-bezier);--el-transition-md-fade:transform var(--el-transition-duration) var(--el-transition-function-fast-bezier), opacity var(--el-transition-duration) var(--el-transition-function-fast-bezier);--el-transition-fade-linear:opacity var(--el-transition-duration-fast) linear;--el-transition-border:border-color var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-transition-box-shadow:box-shadow var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-transition-color:color var(--el-transition-duration-fast) var(--el-transition-function-ease-in-out-bezier);--el-component-size-large:40px;--el-component-size:32px;--el-component-size-small:24px;--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--el-color-primary:#409eff;--el-color-primary-light-3:#79bbff;--el-color-primary-light-5:#a0cfff;--el-color-primary-light-7:#c6e2ff;--el-color-primary-light-8:#d9ecff;--el-color-primary-light-9:#ecf5ff;--el-color-primary-dark-2:#337ecc;--el-color-success:#67c23a;--el-color-success-light-3:#95d475;--el-color-success-light-5:#b3e19d;--el-color-success-light-7:#d1edc4;--el-color-success-light-8:#e1f3d8;--el-color-success-light-9:#f0f9eb;--el-color-success-dark-2:#529b2e;--el-color-warning:#e6a23c;--el-color-warning-light-3:#eebe77;--el-color-warning-light-5:#f3d19e;--el-color-warning-light-7:#f8e3c5;--el-color-warning-light-8:#faecd8;--el-color-warning-light-9:#fdf6ec;--el-color-warning-dark-2:#b88230;--el-color-danger:#f56c6c;--el-color-danger-light-3:#f89898;--el-color-danger-light-5:#fab6b6;--el-color-danger-light-7:#fcd3d3;--el-color-danger-light-8:#fde2e2;--el-color-danger-light-9:#fef0f0;--el-color-danger-dark-2:#c45656;--el-color-error:#f56c6c;--el-color-error-light-3:#f89898;--el-color-error-light-5:#fab6b6;--el-color-error-light-7:#fcd3d3;--el-color-error-light-8:#fde2e2;--el-color-error-light-9:#fef0f0;--el-color-error-dark-2:#c45656;--el-color-info:#909399;--el-color-info-light-3:#b1b3b8;--el-color-info-light-5:#c8c9cc;--el-color-info-light-7:#dedfe0;--el-color-info-light-8:#e9e9eb;--el-color-info-light-9:#f4f4f5;--el-color-info-dark-2:#73767a;--el-bg-color:#fff;--el-bg-color-page:#f2f3f5;--el-bg-color-overlay:#fff;--el-text-color-primary:#303133;--el-text-color-regular:#606266;--el-text-color-secondary:#909399;--el-text-color-placeholder:#a8abb2;--el-text-color-disabled:#c0c4cc;--el-border-color:#dcdfe6;--el-border-color-light:#e4e7ed;--el-border-color-lighter:#ebeef5;--el-border-color-extra-light:#f2f6fc;--el-border-color-dark:#d4d7de;--el-border-color-darker:#cdd0d6;--el-fill-color:#f0f2f5;--el-fill-color-light:#f5f7fa;--el-fill-color-lighter:#fafafa;--el-fill-color-extra-light:#fafcff;--el-fill-color-dark:#ebedf0;--el-fill-color-darker:#e6e8eb;--el-fill-color-blank:#fff;--el-box-shadow:0px 12px 32px 4px #0000000a, 0px 8px 20px #00000014;--el-box-shadow-light:0px 0px 12px #0000001f;--el-box-shadow-lighter:0px 0px 6px #0000001f;--el-box-shadow-dark:0px 16px 48px 16px #00000014, 0px 12px 32px #0000001f, 0px 8px 16px -8px #00000029;--el-disabled-bg-color:var(--el-fill-color-light);--el-disabled-text-color:var(--el-text-color-placeholder);--el-disabled-border-color:var(--el-border-color-light);--el-overlay-color:#000c;--el-overlay-color-light:#000000b3;--el-overlay-color-lighter:#00000080;--el-mask-color:#ffffffe6;--el-mask-color-extra-light:#ffffff4d;--el-border-width:1px;--el-border-style:solid;--el-border-color-hover:var(--el-text-color-disabled);--el-border:var(--el-border-width) var(--el-border-style) var(--el-border-color);--el-svg-monochrome-grey:var(--el-border-color)}.fade-in-linear-enter-active,.fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.fade-in-linear-enter-from,.fade-in-linear-leave-to{opacity:0}.el-fade-in-linear-enter-active,.el-fade-in-linear-leave-active{transition:var(--el-transition-fade-linear)}.el-fade-in-linear-enter-from,.el-fade-in-linear-leave-to{opacity:0}.el-fade-in-enter-active,.el-fade-in-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-fade-in-enter-from,.el-fade-in-leave-active{opacity:0}.el-zoom-in-center-enter-active,.el-zoom-in-center-leave-active{transition:all var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-zoom-in-center-enter-from,.el-zoom-in-center-leave-active{opacity:0;transform:scaleX(0)}.el-zoom-in-top-enter-active,.el-zoom-in-top-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:top;transform:scaleY(1)}.el-zoom-in-top-enter-active[data-popper-placement^=top],.el-zoom-in-top-leave-active[data-popper-placement^=top]{transform-origin:bottom}.el-zoom-in-top-enter-from,.el-zoom-in-top-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-bottom-enter-active,.el-zoom-in-bottom-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:bottom;transform:scaleY(1)}.el-zoom-in-bottom-enter-from,.el-zoom-in-bottom-leave-active{opacity:0;transform:scaleY(0)}.el-zoom-in-left-enter-active,.el-zoom-in-left-leave-active{opacity:1;transition:var(--el-transition-md-fade);transform-origin:0 0;transform:scale(1)}.el-zoom-in-left-enter-from,.el-zoom-in-left-leave-active{opacity:0;transform:scale(.45)}.collapse-transition{transition:var(--el-transition-duration) height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.el-collapse-transition-leave-active,.el-collapse-transition-enter-active{transition:var(--el-transition-duration) max-height ease-in-out,var(--el-transition-duration) padding-top ease-in-out,var(--el-transition-duration) padding-bottom ease-in-out}.horizontal-collapse-transition{transition:var(--el-transition-duration) width ease-in-out,var(--el-transition-duration) padding-left ease-in-out,var(--el-transition-duration) padding-right ease-in-out}.el-list-enter-active,.el-list-leave-active{transition:all 1s}.el-list-enter-from,.el-list-leave-to{opacity:0;transform:translateY(-30px)}.el-list-leave-active{position:absolute!important}.el-opacity-transition{transition:opacity var(--el-transition-duration) cubic-bezier(.55,0,.1,1)}.el-icon--right{margin-left:5px}.el-icon--left{margin-right:5px}@keyframes rotating{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.el-icon{--color:inherit;fill:currentColor;width:1em;height:1em;color:var(--color);line-height:1em;font-size:inherit;justify-content:center;align-items:center;display:inline-flex;position:relative}.el-icon.is-loading{animation:2s linear infinite rotating}.el-icon svg{width:1em;height:1em}:root{font-family:Inter,PingFang SC,Microsoft YaHei,sans-serif;color:#20242c;background:#f4f6f8;font-synthesis:none;--brand-red: #c51f2a;--brand-red-dark: #790b13;--brand-gold: #ffd45c;--el-color-primary: #c51f2a;--el-color-primary-light-3: #d95660;--el-color-primary-light-5: #e58f95;--el-color-primary-light-7: #efbfc3;--el-color-primary-light-8: #f5d9db;--el-color-primary-light-9: #faeeee;--el-color-primary-dark-2: #9e1922}:root *{box-sizing:border-box}:root button,:root a,:root [role=button]{-webkit-tap-highlight-color:transparent}:root button:focus-visible,:root a:focus-visible,:root [role=button]:focus-visible{outline:3px solid rgba(197,31,42,.22);outline-offset:2px}:root body{margin:0;min-width:760px;background:#f6f3f3}html,:root body,:root #app{height:100%}:root .admin-shell{height:100vh;height:100dvh;overflow:hidden}:root .admin-shell>.el-container{min-height:0;flex-direction:column;overflow:hidden}:root .sidebar{display:flex;flex-direction:column;position:relative;overflow:hidden;background:radial-gradient(circle at -30% 7%,rgba(255,198,128,.19),transparent 35%),radial-gradient(circle at 125% 85%,rgba(255,126,111,.14),transparent 43%),linear-gradient(165deg,#670912,#981523 48%,#600811);color:#fff;box-shadow:8px 0 28px #59060c1f;transition:width .2s ease}:root .sidebar:before{position:absolute;top:0;right:0;bottom:0;left:0;background:repeating-linear-gradient(145deg,transparent 0,transparent 34px,rgba(255,221,181,.05) 35px,transparent 36px);content:"";pointer-events:none}:root .sidebar.is-collapsed .brand{justify-content:center;padding:0}:root .sidebar.is-collapsed .el-menu{width:72px;padding-right:10px;padding-left:10px}:root .sidebar.is-collapsed .el-menu-item{justify-content:center;padding:0!important}:root .brand{height:64px;display:flex;align-items:center;flex-shrink:0;gap:12px;padding:0 18px;font-weight:700;font-size:18px;border-bottom:1px solid rgba(255,255,255,.1)}:root .brand-mark{display:grid;place-items:center;width:36px;height:36px;padding:3px;overflow:hidden;border-radius:9px;background:#fff}:root .brand-mark img{width:100%;height:100%;object-fit:contain}:root .brand>span:last-child{display:flex;flex-direction:column}:root .brand strong{line-height:1.25}:root .brand small{margin-top:2px;color:#e8b9bd;font-size:9px;font-weight:600;letter-spacing:.08em}:root .sidebar .el-menu{flex:1;min-height:0;overflow-y:auto;padding:10px 9px;border:0;background:transparent;--el-menu-text-color: #e9c7ca;--el-menu-hover-bg-color: rgb(255 255 255 / 8%);--el-menu-active-color: #fff}:root .sidebar .el-menu::-webkit-scrollbar{width:4px}:root .sidebar .el-menu::-webkit-scrollbar-thumb{border-radius:2px;background:#ffffff29}:root .sidebar .el-menu::-webkit-scrollbar-track{background:transparent}:root .sidebar .el-menu-item{height:40px;margin:2px 0;border-radius:8px;transition:background-color .18s ease,transform .18s ease}:root .sidebar .el-menu-item:not(.is-active):hover{transform:translate(3px)}:root .sidebar .el-menu-item.is-active{background:linear-gradient(90deg,#d5323c,#b71e29);box-shadow:0 7px 18px #3700043d}:root .sidebar-campaign{position:relative;overflow:hidden;display:flex;flex-direction:column;flex-shrink:0;margin:12px;padding:16px;border:1px solid rgba(255,255,255,.15);border-radius:12px;background:radial-gradient(circle at 100% 0,rgba(255,216,138,.18),transparent 42%),linear-gradient(135deg,#720d18db,#c52a399e);box-shadow:inset 0 1px #ffffff1a;transition:transform .22s ease,border-color .22s ease,box-shadow .22s ease;animation:sidebar-card-enter .5s cubic-bezier(.22,1,.36,1) backwards}:root .sidebar-campaign:after{position:absolute;top:0;bottom:0;left:-60%;width:34%;background:linear-gradient(100deg,transparent,rgba(255,233,199,.12),transparent);content:"";pointer-events:none;animation:sidebar-card-sheen 9s ease-in-out infinite}:root .sidebar-campaign:hover{transform:translateY(-2px);border-color:#ffffff4d;box-shadow:inset 0 1px #ffffff1a,0 10px 22px #28000442}@keyframes sidebar-card-enter{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}@keyframes sidebar-card-sheen{0%,32%{transform:translate(0)}72%,to{transform:translate(470%)}}:root .sidebar-campaign span{color:var(--brand-gold);font-size:11px;letter-spacing:.18em}:root .sidebar-campaign strong{margin:8px 0 0;font-size:15px;line-height:1.55}:root .sidebar-copyright{flex-shrink:0;margin-top:auto;padding:14px 18px 18px;color:#ffffff85;font-size:10px;line-height:1.7;text-align:center}:root .topbar{display:flex;align-items:center;justify-content:space-between;height:64px;padding:0 24px;background:#fffffff5;border-bottom:2px solid #f2d5d8;box-shadow:0 4px 18px #4610140d}:root .topbar-leading{display:flex;align-items:center;gap:10px}:root .sidebar-toggle{color:#8f111a}:root .topbar-title{display:flex;flex-direction:column}:root .page-title{font-size:17px;font-weight:650}:root .topbar-title small{margin-top:3px;color:#a18386;font-size:10px;letter-spacing:.08em}:root .account{display:flex;align-items:center;gap:8px;cursor:pointer;color:#515861;transition:color .18s ease}:root .account:hover{color:var(--brand-red)}:root .account i{display:grid;place-items:center;width:30px;height:30px;border-radius:50%;background:#f6dadd;color:#ad1822;font-size:13px;font-style:normal;font-weight:700}:root .el-main{display:flex;flex-direction:column;flex:1;min-height:0;overflow-y:auto;padding:20px;background:radial-gradient(circle at 95% 0,rgba(197,31,42,.07),transparent 24%),#f6f3f3}:root .page-body{display:flex;flex-direction:column;flex:1;min-height:0}:root :where(.page-body)>:where(div,section){display:flex;flex-direction:column;gap:16px}:root .page-body>:only-child{flex:1;min-height:0}:root .page-body :where(.el-card){flex:1;min-height:0}:root .page-body :where(.el-card):has(~.el-card){flex:0 0 auto}:root .page-body :where(.toolbar,.el-alert,.pagination,.stat-grid){flex:0 0 auto}:root .page-body :where(.el-card){display:flex;flex-direction:column;overflow:hidden}:root .page-body :where(.el-card)>:where(.el-card__body){display:flex;flex-direction:column;flex:1;min-height:0;overflow:hidden}:root .page-body :where(.el-tabs){display:flex;flex-direction:column;flex:1;min-height:0}:root .page-body :where(.el-tabs__content){flex:1;min-height:0}:root .page-body :where(.el-tab-pane){display:flex;flex-direction:column;height:100%;min-height:0}:root .page-body :where(.el-table){flex:1;height:100%!important;min-height:0;overflow:hidden}:root .page-body :where(.el-table__body-wrapper){min-height:0}:root .el-table .cell{padding:0 8px}:root .el-table .el-table-fixed-column--right.is-first-column{box-shadow:inset 12px 0 10px -12px #0f338242}:root .stat-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:16px}:root .el-card.stat-card{border-top:3px solid var(--brand-red)}:root .stat-card>.el-card__body{display:flex;flex-direction:column;gap:6px;min-height:104px;padding:18px 20px}:root .stat-card .stat-label{display:flex;align-items:center;gap:8px;color:#846d6f;font-size:12px}:root .stat-card .stat-value{color:#8f111a;font-size:26px;font-weight:700;line-height:1.2}:root .stat-card .stat-hint{margin-top:auto;color:#a49a9c;font-size:12px}:root .stat-note{margin:0;color:#8a7b7d;font-size:12px;line-height:1.7}:root .stat-dot{width:9px;height:9px;border-radius:50%;box-shadow:0 0 0 5px #d72c2d17}:root .stat-dot.red{background:#d72c2d}:root .stat-dot.orange{background:#f07822}:root .stat-dot.gold{background:#e7ad1a}:root .stat-dot.green{background:#3c9964}:root .route-banner{position:relative;isolation:isolate;display:flex;align-items:center;justify-content:space-between;flex-shrink:0;min-height:108px;padding:20px 26px;margin-bottom:16px;overflow:hidden;border-radius:14px;color:#fff;background:radial-gradient(circle at 86% 26%,rgba(255,218,142,.26),transparent 24%),linear-gradient(105deg,#7f0b17,#b92030 55%,#dc4b4c);box-shadow:0 12px 30px #75081024;animation:panel-enter .42s ease-out both}:root .route-banner:before{position:absolute;z-index:-1;top:-135px;right:2%;width:390px;height:390px;border:1px solid rgba(255,224,173,.18);border-radius:50%;box-shadow:0 0 0 38px #ffe0ad0a,0 0 0 92px #ffe0ad08;content:"";pointer-events:none}:root .route-banner:after{position:absolute;z-index:-1;top:0;bottom:0;left:-55%;width:36%;background:linear-gradient(110deg,transparent,rgba(255,233,199,.1),transparent);content:"";pointer-events:none;animation:banner-sheen 6s ease-in-out infinite}@keyframes banner-sheen{0%,18%{transform:translate(0)}58%,to{transform:translate(430%)}}@keyframes panel-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}:root .route-banner span{color:var(--brand-gold);font-size:11px;font-weight:700;letter-spacing:.08em}:root .route-banner h1{margin:5px 0 4px;font-size:25px}:root .route-banner p{margin:0;color:#f9dfe1;font-size:13px}:root .route-banner b{padding:8px 14px;border:1px solid rgba(255,255,255,.22);border-radius:18px;background:#ffffff1a;color:#ffe7a1;font-size:12px;font-weight:500}:root .el-card{position:relative;border-color:#eee4e5;border-radius:12px;box-shadow:0 5px 18px #4e181c0a;transition:box-shadow .22s ease,border-color .22s ease}:root .el-card:hover{border-color:#e8d6d8;box-shadow:0 9px 24px #4e181c12}:root .el-card__header{border-bottom-color:#f1e5e6}:root .el-table th.el-table__cell{background:#fcf7f7;color:#6e5557}:root .el-tabs__item.is-active{font-weight:650}:root .toolbar{display:flex;align-items:center;flex-wrap:wrap;gap:12px;margin-bottom:16px}:root .spacer{flex:1}:root .pagination{justify-content:flex-end;margin-top:16px}:root .login-page{min-height:100vh;display:grid;grid-template-columns:1.15fr .85fr;align-items:center;padding:8vw;background:linear-gradient(100deg,#4d0508eb,#a61219c2 46%,#3c0407b8),url(/assets/login-brand-bg-BKjni195.jpg) center/cover no-repeat;color:#fff}:root .login-logo{display:block;width:min(260px,48vw);max-height:82px;margin-bottom:36px;object-fit:contain;object-position:left center;filter:drop-shadow(0 8px 22px rgba(48,0,0,.24))}:root .login-intro h1{font-size:clamp(38px,4vw,64px);line-height:1.2;margin:22px 0}:root .login-intro p{color:#ffe5df}:root .eyebrow{color:#ffd83d;letter-spacing:.08em;font-size:14px}:root .el-card.login-card{width:390px;justify-self:end;padding:18px;border:0;border-radius:16px}:root .login-card h2{margin-bottom:6px;color:#20242c}:root .login-card p{color:#8a9099;margin:0 0 28px}:root .submit-button{width:100%;background:#d72c2d;border-color:#d72c2d}@media (max-width: 1100px){:root .el-main{padding:14px}:root .route-banner{min-height:94px;padding:16px 20px}:root .route-banner b,:root .topbar-title small{display:none}}@media (prefers-reduced-motion: reduce){:root *,:root *:before,:root *:after{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}
