.app[data-v-171b00a4]{background-color:var(--bg-color);min-height:100vh;transition:all .3s}.logo[data-v-171b00a4]{text-align:center;border-bottom:1px solid var(--border-color);background-color:var(--sidebar-bg);padding:24px;transition:all .3s}.logo h1[data-v-171b00a4]{color:var(--primary-color);margin:0;font-size:20px;font-weight:600;transition:all .3s}.el-menu-vertical-demo[data-v-171b00a4]{border-right:1px solid var(--border-color);background-color:var(--sidebar-bg);height:calc(100vh - 110px);padding:12px 0;transition:all .3s;animation:.5s ease-out slideInLeft-171b00a4}.el-menu-vertical-demo[data-v-171b00a4]:not(.el-menu--collapse){width:200px}.el-menu-item[data-v-171b00a4]{border-radius:8px;height:48px;margin:6px 12px;font-size:14px;line-height:48px;transition:all .3s cubic-bezier(.25,.8,.25,1);animation:.3s ease-out both fadeIn-171b00a4;position:relative;overflow:hidden}.el-menu-item[data-v-171b00a4]:first-child{animation-delay:50ms}.el-menu-item[data-v-171b00a4]:nth-child(2){animation-delay:.1s}.el-menu-item[data-v-171b00a4]:nth-child(3){animation-delay:.15s}.el-menu-item[data-v-171b00a4]:nth-child(4){animation-delay:.2s}.el-menu-item[data-v-171b00a4]:nth-child(5){animation-delay:.25s}.el-menu-item[data-v-171b00a4]:nth-child(6){animation-delay:.3s}.el-menu-item[data-v-171b00a4]:nth-child(7){animation-delay:.35s}.el-menu-item[data-v-171b00a4]:nth-child(8){animation-delay:.4s}.el-menu-item[data-v-171b00a4]:nth-child(9){animation-delay:.45s}.el-menu-item[data-v-171b00a4]:nth-child(10){animation-delay:.5s}.el-menu-item[data-v-171b00a4]:nth-child(11){animation-delay:.55s}.el-menu-item[data-v-171b00a4]:hover{background-color:var(--menu-active-bg);color:var(--menu-active-color);transform:translate(4px);box-shadow:0 2px 8px #0000001a}.el-menu-item.is-active[data-v-171b00a4]{background-color:var(--menu-active-bg);color:var(--menu-active-color);font-weight:500;transform:translate(4px);box-shadow:0 2px 8px #0000001a}.el-menu-item.is-active[data-v-171b00a4]:before{content:"";background-color:var(--primary-color);border-radius:0 2px 2px 0;width:4px;height:100%;position:absolute;top:0;left:0}[data-v-171b00a4] .el-menu-item__icon{margin-right:12px;font-size:18px;transition:all .3s}.el-menu-item[data-v-171b00a4]:hover .el-menu-item__icon,.el-menu-item.is-active[data-v-171b00a4] .el-menu-item__icon{color:var(--primary-color);transform:scale(1.1)}@keyframes slideInLeft-171b00a4{0%{opacity:0;transform:translate(-20px)}to{opacity:1;transform:translate(0)}}@keyframes fadeIn-171b00a4{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.header-content[data-v-171b00a4]{justify-content:space-between;align-items:center;height:100%;padding:0 24px;display:flex}.el-header[data-v-171b00a4]{background-color:var(--header-bg);border-bottom:1px solid var(--border-color);height:64px;transition:all .3s;box-shadow:0 2px 8px #00000014}.header-left[data-v-171b00a4]{align-items:center;display:flex}.header-right[data-v-171b00a4]{align-items:center;gap:20px;display:flex}.header-actions[data-v-171b00a4]{align-items:center;gap:10px;display:flex}.username[data-v-171b00a4]{color:var(--text-color);font-size:14px;font-weight:500}[data-v-171b00a4] .el-breadcrumb{font-size:14px}[data-v-171b00a4] .el-breadcrumb__inner{align-items:center;gap:5px;display:flex}[data-v-171b00a4] .el-breadcrumb__item:last-child .el-breadcrumb__inner{color:var(--primary-color);font-weight:600}.el-main[data-v-171b00a4]{background-color:var(--bg-color);padding:24px;transition:all .3s}@media (width<=768px){.el-menu-vertical-demo[data-v-171b00a4]{height:100vh}.el-main[data-v-171b00a4]{padding:16px}.header-actions[data-v-171b00a4]{flex-direction:column;align-items:flex-end;gap:5px}}*{box-sizing:border-box;margin:0;padding:0}:root{--primary-color:#409eff;--success-color:#67c23a;--warning-color:#e6a23c;--danger-color:#f56c6c;--info-color:#909399;--bg-color:#f0f2f5;--card-bg:#fff;--text-color:#303133;--text-color-secondary:#606266;--border-color:#e4e7ed;--border-color-light:#ebeef5;--border-color-lighter:#f2f6fc;--header-bg:#fff;--sidebar-bg:#fff;--menu-active-bg:#ecf5ff;--menu-active-color:#409eff}body.dark{--primary-color:#409eff;--success-color:#67c23a;--warning-color:#e6a23c;--danger-color:#f56c6c;--info-color:#909399;--bg-color:#1f2329;--card-bg:#2c313a;--text-color:#e4e7ed;--text-color-secondary:#c0c4cc;--border-color:#4e5969;--border-color-light:#3e4757;--border-color-lighter:#303846;--header-bg:#2c313a;--sidebar-bg:#2c313a;--menu-active-bg:#3a4049;--menu-active-color:#409eff}body{color:var(--text-color);background-color:var(--bg-color);font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica Neue,Arial,sans-serif;font-size:14px;line-height:1.5;transition:all .3s}@media (width<=768px){.el-aside{z-index:1000;transition:left .3s;position:fixed;top:0;left:-100%;width:100%!important;height:auto!important}.el-aside.open{left:0}.el-container{margin-left:0!important}.header-content{padding:0 10px}.stats,.chart-container{grid-template-columns:1fr!important}.filter{flex-direction:column;align-items:flex-start}.filter>*{margin-bottom:10px}.el-input,.el-select,.el-date-picker{width:100%!important}}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:#f1f1f1;border-radius:4px}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:4px}::-webkit-scrollbar-thumb:hover{background:#a8a8a8}.el-card{background-color:var(--card-bg);border:1px solid var(--border-color);border-radius:12px;margin-bottom:20px;transition:all .3s;overflow:hidden;box-shadow:0 2px 12px #00000014}.el-card:hover{transform:translateY(-2px);box-shadow:0 4px 16px #0000001f}.el-card__header{background-color:var(--card-bg);border-bottom:1px solid var(--border-color);color:var(--text-color);padding:16px 20px;font-size:16px;font-weight:500}.el-card__body{color:var(--text-color);padding:20px}.el-button{border-radius:6px;padding:8px 16px;transition:all .3s}.el-button:hover{transform:translateY(-1px);box-shadow:0 2px 8px #00000026}.el-button--primary{background-color:#409eff;border-color:#409eff}.el-button--primary:hover{background-color:#66b1ff;border-color:#66b1ff}.el-button--success{background-color:#67c23a;border-color:#67c23a}.el-button--success:hover{background-color:#85ce61;border-color:#85ce61}.el-button--warning{background-color:#e6a23c;border-color:#e6a23c}.el-button--warning:hover{background-color:#ebb563;border-color:#ebb563}.el-button--danger{background-color:#f56c6c;border-color:#f56c6c}.el-button--danger:hover{background-color:#f78989;border-color:#f78989}.el-form-item{margin-bottom:20px}.el-input,.el-select,.el-date-picker,.el-cascader{border-radius:6px;transition:all .3s}.el-input__wrapper,.el-select__wrapper{box-shadow:none;border-radius:6px;transition:all .3s}.el-input__wrapper.is-focus,.el-select__wrapper.is-focus{border-color:#409eff;box-shadow:0 0 0 2px #409eff33}.el-form-item__label{color:#606266;font-weight:500}.el-form-item.is-error .el-input__wrapper{border-color:#f56c6c;box-shadow:0 0 0 2px #f56c6c33}.el-table{border-radius:12px;transition:all .3s;overflow:hidden;box-shadow:0 2px 12px #00000014}.el-table:hover{box-shadow:0 4px 16px #0000001f}.el-table th{color:#606266;background-color:#fafafa;padding:12px 0;font-weight:500}.el-table td{padding:12px 0;transition:all .3s}.el-table__row:hover,.el-table--enable-row-hover .el-table__body tr:hover>td{background-color:#f5f7fa}.el-table__header-wrapper{border-bottom:1px solid #f0f0f0}.el-table__body-wrapper{border-radius:0 0 12px 12px}.el-dialog{border-radius:12px;overflow:hidden;box-shadow:0 4px 20px #00000026}.el-dialog__header{background-color:#fff;border-bottom:1px solid #f0f0f0;padding:20px 24px;font-size:16px;font-weight:500}.el-dialog__body{background-color:#fff;padding:24px}.el-dialog__footer{background-color:#fafafa;border-top:1px solid #f0f0f0;justify-content:flex-end;gap:12px;padding:16px 24px;display:flex}.el-dialog__title{color:#303133;font-size:16px;font-weight:500}.loading{justify-content:center;align-items:center;height:200px;display:flex}.empty-state{color:#909399;flex-direction:column;justify-content:center;align-items:center;height:300px;display:flex}.empty-state .el-icon{margin-bottom:20px;font-size:48px}.error-message{color:#f56c6c;margin-top:5px;font-size:12px}.success-message{color:#67c23a;margin-top:5px;font-size:12px}.warning-message{color:#e6a23c;margin-top:5px;font-size:12px}.info-message{color:#409eff;margin-top:5px;font-size:12px}
