.feishu-callback[data-v-be6b6540]{min-height:100vh;display:flex;align-items:center;justify-content:center;background:var(--bg-secondary, #f5f7fa);padding:20px}.feishu-callback__container[data-v-be6b6540]{width:100%;max-width:500px}.feishu-callback__card[data-v-be6b6540]{border-radius:8px;box-shadow:0 2px 12px #0000001a}.feishu-callback__content[data-v-be6b6540]{padding:40px 20px;text-align:center}.feishu-callback__loading[data-v-be6b6540],.feishu-callback__success[data-v-be6b6540],.feishu-callback__error[data-v-be6b6540]{display:flex;flex-direction:column;align-items:center}.feishu-callback__text[data-v-be6b6540]{margin-top:20px;font-size:18px;font-weight:500;color:var(--text-primary, #303133)}.feishu-callback__text--success[data-v-be6b6540]{color:#67c23a}.feishu-callback__text--error[data-v-be6b6540]{color:#f56c6c}.feishu-callback__message[data-v-be6b6540]{margin-top:12px;font-size:14px;color:var(--text-secondary, #909399);line-height:1.6}.user-info-container[data-v-14aef87f]{display:flex;gap:30px;margin-bottom:20px}.user-avatar-section[data-v-14aef87f]{display:flex;flex-direction:column;align-items:center;width:140px}.user-avatar[data-v-14aef87f]{margin-bottom:15px;border:4px solid var(--bg-secondary);box-shadow:0 2px 12px #0000001a}.user-status[data-v-14aef87f]{display:flex;flex-direction:column;align-items:center;gap:4px}.status-tag[data-v-14aef87f]{width:100%;text-align:center}.user-details-section[data-v-14aef87f]{flex:1}.user-details-section[data-v-14aef87f] .el-descriptions__label{width:100px;justify-content:flex-end;font-weight:700}.user-details-section[data-v-14aef87f] .el-descriptions__content{padding:12px 15px}.school-info-section[data-v-14aef87f],.school-history-section[data-v-14aef87f]{margin-top:20px}.section-title[data-v-14aef87f]{font-size:16px;font-weight:600;margin-bottom:12px;color:var(--text-primary)}.dialog-header[data-v-62c52659]{display:flex;align-items:center;gap:12px}.dialog-header__icon[data-v-62c52659]{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;font-size:20px}.dialog-header__content h3[data-v-62c52659]{margin:0 0 4px;font-size:18px;font-weight:600;color:var(--text-primary)}.dialog-header__content p[data-v-62c52659]{margin:0;font-size:13px;color:var(--text-secondary)}.user-roles[data-v-62c52659]{min-height:450px}.panel[data-v-62c52659]{background:var(--bg-color);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.panel--grant[data-v-62c52659]{background:linear-gradient(to bottom,rgba(64,158,255,.03) 0%,var(--bg-color) 100%)}.panel-header[data-v-62c52659]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.panel-title[data-v-62c52659]{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--text-primary)}.panel-body[data-v-62c52659]{padding:20px}.role-name-cell[data-v-62c52659]{font-size:14px}.role-code[data-v-62c52659]{font-family:Consolas,Monaco,Courier New,monospace;font-size:12px;color:#667eea;background:#667eea1a;padding:3px 8px;border-radius:4px;font-weight:500}.role-option[data-v-62c52659]{display:flex;justify-content:space-between;align-items:center;width:100%}.role-option__name[data-v-62c52659]{font-weight:500}.role-option__code[data-v-62c52659]{font-size:12px;color:var(--text-secondary);font-family:Consolas,Monaco,Courier New,monospace}.text-secondary[data-v-62c52659]{color:var(--text-secondary)}.dialog-header[data-v-c197a60d]{display:flex;align-items:center;gap:12px}.dialog-header__icon[data-v-c197a60d]{width:40px;height:40px;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;font-size:20px}.dialog-header__content h3[data-v-c197a60d]{margin:0 0 4px;font-size:18px;font-weight:600;color:var(--text-primary)}.dialog-header__content p[data-v-c197a60d]{margin:0;font-size:13px;color:var(--text-secondary)}.user-permissions[data-v-c197a60d]{min-height:450px}.panel[data-v-c197a60d]{background:var(--bg-color);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.panel-header[data-v-c197a60d]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.panel-title[data-v-c197a60d]{display:flex;align-items:center;gap:8px;font-size:15px;font-weight:600;color:var(--text-primary)}.panel-body[data-v-c197a60d]{padding:20px}.form-item-label-with-action[data-v-c197a60d]{display:inline-flex;align-items:center;gap:12px;white-space:nowrap;flex-wrap:nowrap}[data-v-c197a60d] .el-form-item__label{white-space:nowrap;overflow:visible;display:inline-flex;align-items:center;flex-wrap:nowrap;line-height:1.5}[data-v-c197a60d] .el-form-item.is-required .el-form-item__label:before{flex-shrink:0;margin-right:4px;display:inline-block}.tree-wrapper[data-v-c197a60d]{width:100%;max-height:400px;min-height:300px;overflow-y:auto;border:1px solid var(--border-color);border-radius:6px;padding:12px;background:var(--bg-secondary);box-sizing:border-box}.tree-wrapper[data-v-c197a60d]::-webkit-scrollbar{width:6px}.tree-wrapper[data-v-c197a60d]::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.tree-node[data-v-c197a60d]{display:flex;align-items:center;gap:8px;flex:1;padding-right:12px;min-width:0;width:100%;line-height:1.5}.tree-node--disabled[data-v-c197a60d]{opacity:.6;cursor:not-allowed}.tree-node__label[data-v-c197a60d]{font-weight:500;color:var(--text-primary);font-size:13px;flex-shrink:0;white-space:nowrap;display:inline-block}.tree-node__code[data-v-c197a60d]{font-size:11px;font-family:Consolas,Monaco,Courier New,monospace;color:var(--text-secondary);background:#0000000d;padding:2px 6px;border-radius:3px;flex-shrink:0;white-space:nowrap;display:inline-block;margin-left:4px}.tree-node__tag[data-v-c197a60d]{margin-left:auto;flex-shrink:0}.user-list{padding:24px;background:var(--bg-secondary);min-height:calc(100vh - 60px)}.user-list__header{margin-bottom:20px;border-radius:8px;box-shadow:0 2px 8px #0000000a;transition:box-shadow .3s}.user-list__header:hover{box-shadow:0 4px 16px #00000014}.user-list__top{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--border-color)}.user-list__title{display:flex;align-items:center;gap:16px}.user-list__title-badge{padding:10px 20px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;font-size:15px;font-weight:600;box-shadow:0 4px 12px #667eea4d}.user-list__title-content h2{margin:0 0 4px;font-size:24px;font-weight:600;color:var(--text-primary)}.user-list__title-content p{margin:0;font-size:14px;color:var(--text-secondary)}.user-list__stats{display:flex;gap:20px}.user-list__stat-card{min-width:100px;padding:16px 24px;background:var(--bg-primary);border-radius:8px;border:2px solid var(--border-color);transition:all .3s;text-align:center}.user-list__stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.user-list__stat-card--total{border-color:#409eff}.user-list__stat-card--verified,.user-list__stat-card--enabled{border-color:#67c23a}.user-list__stat-card__value{font-size:28px;font-weight:700;color:var(--text-primary);line-height:1;margin-bottom:8px}.user-list__stat-card__label{font-size:12px;color:var(--text-secondary)}.user-list__filters{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.user-list__filter-select{width:160px}.user-list__filter-input{width:200px}.user-list__content{border-radius:8px;box-shadow:0 2px 8px #0000000a}.user-list__table{border-radius:4px;overflow:hidden}.user-list__text-secondary{color:var(--text-secondary);font-size:13px}.user-list__pagination{display:flex;justify-content:flex-end;margin-top:20px}.user-list__batch{position:fixed;bottom:24px;left:50%;transform:translate(-50%);z-index:1000;box-shadow:0 2px 8px #0000000a;border-radius:8px}@media (max-width: 1200px){.user-list__top{flex-direction:column;align-items:flex-start;gap:20px}.user-list__stats{width:100%;justify-content:flex-start}}@media (max-width: 768px){.user-list{padding:16px}.user-list__filters{flex-direction:column;align-items:stretch}.user-list__filter-select,.user-list__filter-input{width:100%}.user-list__stats{flex-direction:column}.user-list__stat-card{width:100%}.user-list__stat-card__value{font-size:24px}.user-list__title-badge{padding:8px 16px;font-size:14px}}.feishu-auth{padding:24px;background:var(--bg-secondary, #f5f7fa);min-height:calc(100vh - 60px)}.feishu-auth__card{border-radius:8px;box-shadow:0 2px 8px #0000000a;transition:box-shadow .3s}.feishu-auth__card:hover{box-shadow:0 4px 16px #00000014}.feishu-auth__header{display:flex;justify-content:space-between;align-items:center;padding-bottom:16px;border-bottom:1px solid var(--border-color, #e4e7ed)}.feishu-auth__title{font-size:18px;font-weight:600;color:var(--text-primary, #303133)}.feishu-auth__status{margin-bottom:30px}.feishu-auth__alert-content{padding:12px 0}.feishu-auth__alert-title{display:flex;align-items:center;font-size:16px;font-weight:500;margin-bottom:12px}.feishu-auth__alert-title i{margin-right:8px}.feishu-auth__info{margin-top:16px}.feishu-auth__info-item{margin-bottom:10px;display:flex;align-items:center}.feishu-auth__info-label{font-weight:500;margin-right:8px;min-width:100px;color:var(--text-secondary, #606266)}.feishu-auth__info-value{color:var(--text-primary, #303133)}.feishu-auth__tip{margin-top:10px;color:var(--text-secondary, #909399);line-height:1.6}.feishu-auth__user-card{margin-bottom:30px;padding:20px;background:var(--bg-primary, #ffffff);border-radius:8px;border:1px solid var(--border-color, #e4e7ed)}.feishu-auth__user-header{display:flex;align-items:center;margin-bottom:20px;padding-bottom:16px;border-bottom:1px solid var(--border-color, #e4e7ed)}.feishu-auth__user-avatar{width:60px;height:60px;border-radius:50%;margin-right:16px;border:2px solid var(--border-color, #e4e7ed)}.feishu-auth__user-basic{flex:1}.feishu-auth__user-name{font-size:18px;font-weight:600;color:var(--text-primary, #303133);margin-bottom:4px}.feishu-auth__user-en-name{font-size:14px;color:var(--text-secondary, #909399)}.feishu-auth__user-detail{display:grid;grid-template-columns:repeat(auto-fit,minmax(200px,1fr));gap:16px}.feishu-auth__user-detail-item{display:flex;flex-direction:column}.feishu-auth__user-detail-label{font-size:12px;color:var(--text-secondary, #909399);margin-bottom:4px}.feishu-auth__user-detail-value{font-size:14px;color:var(--text-primary, #303133);word-break:break-all}.feishu-auth__actions{margin-bottom:40px;display:flex;justify-content:center;gap:12px;flex-wrap:wrap}.feishu-auth__description{margin-top:40px;background-color:var(--bg-primary, #ffffff);padding:24px;border-radius:8px;border:1px solid var(--border-color, #e4e7ed)}.feishu-auth__description h3{font-size:16px;font-weight:600;color:var(--text-primary, #303133);margin:0 0 16px}.feishu-auth__description-content{color:var(--text-secondary, #606266);line-height:1.8}.feishu-auth__description-content p{margin:12px 0}.feishu-auth__description-content ul{padding-left:24px;margin:12px 0}.feishu-auth__description-content li{margin-bottom:8px}.feishu-auth__confirm-content{padding:10px 0}.feishu-auth__confirm-content :deep(.el-alert__content){display:block}.feishu-auth__confirm-content ul{padding-left:20px;margin:10px 0}.feishu-auth__dialog-footer{display:flex;justify-content:flex-end;margin-top:20px}@media (max-width: 768px){.feishu-auth{padding:16px}.feishu-auth__actions{flex-direction:column}.feishu-auth__actions .el-button{width:100%}.feishu-auth__user-detail{grid-template-columns:1fr}.feishu-auth__header{flex-direction:column;align-items:flex-start;gap:12px}}.page-header[data-v-17081777]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.page-header__content[data-v-17081777]{display:flex;align-items:center;gap:12px}.page-header__title[data-v-17081777]{font-size:18px;font-weight:600;color:var(--text-primary)}.page-header__subtitle[data-v-17081777]{font-size:13px}.page-header__extra[data-v-17081777]{display:flex;align-items:center;gap:12px}.home-config{padding:24px;background:var(--bg-secondary);min-height:calc(100vh - 60px)}.home-config__config-tabs{margin-top:20px}.home-config__card-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.home-config__footer-section{display:flex;align-items:center;margin-bottom:10px}@media (max-width: 768px){.home-config{padding:16px}}.competition-manage{padding:24px;background:var(--bg-secondary);min-height:calc(100vh - 60px)}.competition-manage__header{margin-bottom:20px;border-radius:8px;box-shadow:0 2px 8px #0000000a}.competition-manage__card-header{display:flex;justify-content:space-between;align-items:center}.competition-manage__header-left{display:flex;align-items:center;gap:12px}.competition-manage__header-right{display:flex;gap:8px}.competition-manage__title{font-size:18px;font-weight:600;color:var(--el-text-color-primary)}.competition-manage__count{font-size:12px}.competition-manage__search-area{margin-bottom:20px;padding:16px;background-color:var(--el-fill-color-light);border-radius:4px}.competition-manage__search-area :deep(.el-form-item){margin-bottom:0}.competition-manage__comp-name-cell{display:flex;align-items:center}.competition-manage__pagination{margin-top:20px;display:flex;justify-content:flex-end}.competition-manage__statistics-content{padding:20px 0}.competition-manage__statistics-content h4{margin:20px 0 16px;font-size:16px;font-weight:600}.competition-manage :deep(.el-button .el-icon){margin-right:4px}@media (max-width: 768px){.competition-manage{padding:16px}.competition-manage__card-header{flex-direction:column;align-items:flex-start;gap:16px}.competition-manage__header-right{width:100%;flex-direction:column}}.debate-topic-manage{padding:24px;background:var(--bg-secondary);min-height:calc(100vh - 60px)}.debate-topic-manage__header{margin-bottom:20px;border-radius:8px;box-shadow:0 2px 8px #0000000a}.debate-topic-manage__card-header{display:flex;justify-content:space-between;align-items:center}.debate-topic-manage__header-left{display:flex;align-items:center;gap:12px}.debate-topic-manage__title{font-size:18px;font-weight:600;color:var(--el-text-color-primary)}.debate-topic-manage__count{font-size:12px}.debate-topic-manage__search-area{margin-bottom:20px;padding:16px;background-color:var(--el-fill-color-light);border-radius:4px}.debate-topic-manage__search-area :deep(.el-form-item){margin-bottom:0}.debate-topic-manage__pagination{margin-top:20px;display:flex;justify-content:flex-end}.debate-topic-manage__topic-detail{padding:20px 0}.debate-topic-manage__form-tip{margin-left:8px;font-size:12px;color:var(--el-text-color-secondary)}.debate-topic-manage :deep(.el-button .el-icon){margin-right:4px}.debate-topic-manage__action-buttons{display:flex;align-items:center;gap:4px}.debate-topic-manage__action-buttons :deep(.el-button){padding:4px 8px}.debate-topic-manage__action-buttons :deep(.el-dropdown){margin-left:4px}.debate-topic-manage__time-text{color:var(--el-text-color-regular);cursor:help;font-size:14px}.debate-topic-manage__time-text:hover{color:var(--el-color-primary)}.debate-topic-manage__statistics-section{padding:20px 0}.debate-topic-manage__stat-card{text-align:center;transition:transform .2s;height:100%}.debate-topic-manage__stat-card:hover{transform:translateY(-2px)}.debate-topic-manage__stat-card :deep(.el-card__body){display:flex;align-items:center;justify-content:center;height:100%;box-sizing:border-box;padding:30px 20px}.debate-topic-manage__stat-item{display:flex;flex-direction:column;align-items:center;gap:12px}.debate-topic-manage__stat-label{font-size:14px;color:var(--el-text-color-secondary);font-weight:500}.debate-topic-manage__stat-value{font-size:32px;font-weight:700;color:var(--el-color-primary)}.debate-topic-manage__stat-value--positive{color:#67c23a}.debate-topic-manage__stat-value--negative{color:#e6a23c}.debate-topic-manage__balance-score{margin-top:8px;font-size:16px;font-weight:400;color:var(--el-text-color-regular);display:flex;align-items:center;justify-content:center}.debate-topic-manage__stat-item-simple{display:flex;align-items:center;gap:8px;padding:16px;background-color:var(--el-fill-color-light);border-radius:8px;font-size:16px}.debate-topic-manage__stat-icon{font-size:24px}.debate-topic-manage__stat-text{font-weight:500;color:var(--el-text-color-primary)}@media (max-width: 768px){.debate-topic-manage{padding:16px}.debate-topic-manage__card-header{flex-direction:column;align-items:flex-start;gap:16px}}.dialog-footer[data-v-4c8e08de]{display:flex;justify-content:flex-end;gap:var(--spacing-sm)}.approval-content[data-v-5b61f20c]{display:flex;flex-direction:column;gap:var(--spacing-lg)}.school-info h4[data-v-5b61f20c]{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-md);font-weight:600;color:var(--color-text-primary)}.approval-form[data-v-5b61f20c]{margin-top:var(--spacing-md)}.dialog-footer[data-v-5b61f20c]{display:flex;justify-content:flex-end;gap:var(--spacing-sm)}.merge-content[data-v-d2bf74a8]{display:flex;flex-direction:column;gap:var(--spacing-lg)}.selected-schools h4[data-v-d2bf74a8]{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-md);font-weight:600;color:var(--color-text-primary)}.merge-table-wrapper[data-v-d2bf74a8]{width:100%;overflow-x:auto}.merge-table-wrapper[data-v-d2bf74a8] .el-table{width:100%}.merge-table-wrapper[data-v-d2bf74a8] .el-table__inner-wrapper{min-width:100%}.merge-table-wrapper[data-v-d2bf74a8] .el-table__body-wrapper{overflow-x:visible}.merge-tip[data-v-d2bf74a8],.merge-form[data-v-d2bf74a8]{margin-top:var(--spacing-md)}.dialog-footer[data-v-d2bf74a8]{display:flex;justify-content:flex-end;gap:var(--spacing-sm)}.school-list{padding:24px;background:var(--bg-secondary);min-height:calc(100vh - 60px)}.school-list__header{margin-bottom:20px;border-radius:8px;box-shadow:0 2px 8px #0000000a;transition:box-shadow .3s}.school-list__header:hover{box-shadow:0 4px 16px #00000014}.school-list__top{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--border-color)}.school-list__title{display:flex;align-items:center;gap:16px}.school-list__title-badge{padding:10px 20px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:8px;color:#fff;font-size:15px;font-weight:600;box-shadow:0 4px 12px #667eea4d}.school-list__title-content h2{margin:0 0 4px;font-size:24px;font-weight:600;color:var(--text-primary)}.school-list__title-content p{margin:0;font-size:14px;color:var(--text-secondary)}.school-list__stats{display:flex;gap:20px}.school-list__stat-card{min-width:100px;padding:16px 24px;background:var(--bg-color);border-radius:8px;border:2px solid var(--border-color);transition:all .3s;text-align:center}.school-list__stat-card:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.school-list__stat-card--total{border-color:#409eff}.school-list__stat-card--pending{border-color:#e6a23c}.school-list__stat-card--approved{border-color:#67c23a}.school-list__stat-card__value{font-size:28px;font-weight:700;color:var(--text-primary);line-height:1;margin-bottom:8px}.school-list__stat-card__label{font-size:12px;color:var(--text-secondary)}.school-list__filters{display:flex;gap:12px;align-items:center;flex-wrap:wrap}.school-list__filter-select{width:160px}.school-list__filter-input{width:200px}.school-list__content{border-radius:8px;box-shadow:0 2px 8px #0000000a}.school-list__table{border-radius:4px;overflow:hidden}.school-list__school-name{font-weight:500;color:var(--text-primary)}.school-list__text-secondary{color:var(--text-secondary);font-size:13px}.school-list__pagination{display:flex;justify-content:flex-end;margin-top:20px}.school-list__batch{position:fixed;bottom:var(--spacing-lg);left:50%;transform:translate(-50%);z-index:1000;box-shadow:var(--shadow-base);border-radius:var(--border-radius-base)}@media (max-width: 1200px){.school-list__top{flex-direction:column;align-items:flex-start;gap:20px}.school-list__stats{width:100%;justify-content:flex-start}}@media (max-width: 768px){.school-list{padding:16px}.school-list__filters{flex-direction:column;align-items:stretch}.school-list__filter-select,.school-list__filter-input{width:100%}.school-list__stats{flex-direction:column}.school-list__stat-card{width:100%}.school-list__stat-card__value{font-size:24px}.school-list__title-badge{padding:8px 16px;font-size:14px}}.school-detail{padding:24px;background:var(--bg-secondary);min-height:calc(100vh - 60px)}.school-detail__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.school-detail__title{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary)}.school-detail__actions{display:flex;gap:var(--spacing-sm)}.school-detail__content{min-height:400px}.school-detail__card{margin-bottom:20px}.school-detail__card:last-child{margin-bottom:0}.school-detail__card-header{display:flex;justify-content:space-between;align-items:center}.school-detail__card-header h3{margin:0;font-size:var(--font-size-md);font-weight:600;color:var(--text-primary)}.school-detail__approval-log{display:flex;flex-direction:column;gap:var(--spacing-xs)}.school-detail__approval-log__status{font-weight:600}.school-detail__approval-log__operator{color:var(--text-secondary);font-size:var(--font-size-sm)}.school-detail__approval-log__remark{color:var(--text-regular);font-size:var(--font-size-sm)}.school-detail__school-stats{display:grid;grid-template-columns:1fr 1fr;gap:var(--spacing-lg)}.school-detail__school-stats__item{text-align:center;padding:var(--spacing-md);background:var(--bg-secondary);border-radius:var(--border-radius-base)}.school-detail__school-stats__label{font-size:var(--font-size-sm);color:var(--text-secondary);margin-bottom:var(--spacing-xs)}.school-detail__school-stats__value{font-size:var(--font-size-xl);font-weight:600;color:var(--color-primary)}.school-detail__quick-actions{display:flex;flex-direction:column;gap:var(--spacing-sm)}.school-detail__quick-actions__button{width:100%}.school-detail__text-secondary{color:var(--text-secondary)}.search-results[data-v-a1ef0070]{margin-top:var(--spacing-lg)}.search-results h4[data-v-a1ef0070]{margin:0 0 var(--spacing-md) 0;font-size:var(--font-size-md);font-weight:600;color:var(--color-text-primary)}.dialog-footer[data-v-a1ef0070]{display:flex;justify-content:flex-end;gap:var(--spacing-sm)}.member-info[data-v-c2ee53f7]{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-lg);background:var(--color-bg-secondary);border-radius:var(--border-radius-base);margin-bottom:var(--spacing-lg)}.member-details h4[data-v-c2ee53f7]{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-md);font-weight:600;color:var(--color-text-primary)}.member-details p[data-v-c2ee53f7]{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.member-details p[data-v-c2ee53f7]:last-child{margin-bottom:0}.dialog-footer[data-v-c2ee53f7]{display:flex;justify-content:flex-end;gap:var(--spacing-sm)}.user-profile[data-v-8e5fe3c4]{min-height:400px}.user-header[data-v-8e5fe3c4]{display:flex;align-items:center;gap:var(--spacing-lg);padding:var(--spacing-lg);background:var(--color-bg-secondary);border-radius:var(--border-radius-base);margin-bottom:var(--spacing-lg)}.user-info h3[data-v-8e5fe3c4]{margin:0 0 var(--spacing-xs) 0;font-size:var(--font-size-lg);font-weight:600;color:var(--color-text-primary)}.username[data-v-8e5fe3c4]{margin:0 0 var(--spacing-sm) 0;font-size:var(--font-size-sm);color:var(--color-text-secondary)}.user-tags[data-v-8e5fe3c4]{display:flex;gap:var(--spacing-xs)}.activity-item[data-v-8e5fe3c4]{display:flex;flex-direction:column;gap:var(--spacing-xs)}.activity-type[data-v-8e5fe3c4]{font-weight:600}.activity-content[data-v-8e5fe3c4]{color:var(--color-text-regular)}.activity-ip[data-v-8e5fe3c4]{font-size:var(--font-size-sm);color:var(--color-text-secondary)}.dialog-footer[data-v-8e5fe3c4]{display:flex;justify-content:flex-end;gap:var(--spacing-sm)}.school-members{padding:24px;background:var(--bg-secondary);min-height:calc(100vh - 60px)}.school-members__header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.school-members__title{font-size:var(--font-size-lg);font-weight:600;color:var(--text-primary)}.school-members__filters{background:var(--bg-color);padding:var(--spacing-lg);border-radius:var(--border-radius-base);margin-bottom:var(--spacing-lg)}.school-members__table{margin-bottom:var(--spacing-lg)}.school-members__pagination{display:flex;justify-content:flex-end;margin-bottom:var(--spacing-lg)}.school-members__batch{position:fixed;bottom:var(--spacing-lg);left:50%;transform:translate(-50%);z-index:1000;box-shadow:var(--shadow-base);border-radius:var(--border-radius-base)}.summary-manage[data-v-b280296f]{padding:var(--spacing-lg)}.summary-manage__year-selector[data-v-b280296f]{margin-bottom:var(--spacing-lg)}.summary-manage__year-selector[data-v-b280296f] .el-select{width:200px}.summary-manage__year-selector[data-v-b280296f] .el-select__wrapper{min-width:200px}.summary-manage__overview[data-v-b280296f]{margin-top:var(--spacing-lg)}.summary-manage__card-header[data-v-b280296f]{font-weight:600;font-size:16px}.summary-manage__stat-card[data-v-b280296f]{text-align:center}.summary-manage__stat-title[data-v-b280296f]{font-size:14px;color:#909399;margin-bottom:10px}.summary-manage__stat-value[data-v-b280296f]{font-size:24px;font-weight:600;color:#303133}.session-summary-manage__header[data-v-b317fc57]{display:flex;justify-content:space-between;align-items:center}.session-summary-manage__filter[data-v-b317fc57]{margin-bottom:20px}.session-summary-manage__summary-content[data-v-b317fc57]{max-height:500px;overflow-y:auto}.personal-summary-manage__header[data-v-6aa8a5f2]{display:flex;justify-content:space-between;align-items:center}.personal-summary-manage__filter[data-v-6aa8a5f2]{margin-bottom:20px}.personal-summary-manage__summary-content[data-v-6aa8a5f2]{max-height:500px;overflow-y:auto}.batch-generate-manage__header[data-v-26f9fb0a]{display:flex;justify-content:space-between;align-items:center}.batch-generate-manage__task-detail[data-v-26f9fb0a]{max-height:500px;overflow-y:auto}.publish-manage__actions[data-v-bf7078f3]{display:flex;gap:10px}.general-summary-manage__header[data-v-bdd392d1]{display:flex;justify-content:space-between;align-items:center}.general-summary-manage__filter[data-v-bdd392d1]{margin-bottom:20px}.general-summary-manage__summary-content[data-v-bdd392d1]{max-height:500px;overflow-y:auto}.page-content-manage__header[data-v-eea7fe69]{display:flex;justify-content:space-between;align-items:center}.page-content-manage__filter[data-v-eea7fe69]{margin-bottom:20px}.page-content-manage__content-detail[data-v-eea7fe69]{max-height:500px;overflow-y:auto}.summary-stats[data-v-1edf5004]{padding:0}.summary-stats__header[data-v-1edf5004],.review-manage__header[data-v-a3e8184d]{display:flex;justify-content:space-between;align-items:center}.review-manage__filter[data-v-a3e8184d]{margin-bottom:20px}.review-manage__status-content[data-v-a3e8184d]{max-height:500px;overflow-y:auto}.page-data-manage__header[data-v-baaeacaf]{display:flex;justify-content:space-between;align-items:center}.page-data-manage__filter[data-v-baaeacaf]{margin-bottom:20px}.page-data-manage__card-header[data-v-baaeacaf]{display:flex;justify-content:space-between;align-items:center}.page-data-manage__json-content[data-v-baaeacaf]{background:#f5f5f5;padding:15px;border-radius:4px;font-size:12px;line-height:1.6;overflow-x:auto;max-height:400px;overflow-y:auto}.feishu-check-manage__header[data-v-13550a0e]{display:flex;justify-content:space-between;align-items:center}.feishu-check-manage__task-content[data-v-13550a0e]{max-height:600px;overflow-y:auto}.year-overview[data-v-e0cbc15e]{padding:var(--spacing-lg)}.year-overview__tabs[data-v-e0cbc15e]{margin-top:var(--spacing-lg)}.permission-list[data-v-ada0e744]{padding:24px;background:var(--bg-secondary);min-height:calc(100vh - 60px)}.permission-list__header[data-v-ada0e744]{margin-bottom:20px;border-radius:8px;box-shadow:0 2px 8px #0000000a;transition:box-shadow .3s}.permission-list__header[data-v-ada0e744]:hover{box-shadow:0 4px 16px #00000014}.permission-list__top[data-v-ada0e744]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--border-color)}.permission-list__title[data-v-ada0e744]{display:flex;align-items:center;gap:16px}.permission-list__title-badge[data-v-ada0e744]{padding:10px 20px;background:linear-gradient(135deg,#f093fb,#f5576c);border-radius:8px;color:#fff;font-size:15px;font-weight:600;box-shadow:0 4px 12px #f5576c4d}.permission-list__title-content h2[data-v-ada0e744]{margin:0 0 4px;font-size:24px;font-weight:600;color:var(--text-primary)}.permission-list__title-content p[data-v-ada0e744]{margin:0;font-size:14px;color:var(--text-secondary)}.permission-list__stats[data-v-ada0e744]{display:flex;gap:20px}.permission-list__stat-card[data-v-ada0e744]{min-width:100px;padding:16px 24px;background:var(--bg-color);border-radius:8px;border:2px solid var(--border-color);transition:all .3s;text-align:center}.permission-list__stat-card[data-v-ada0e744]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.permission-list__stat-card--total[data-v-ada0e744]{border-color:#409eff}.permission-list__stat-card--active[data-v-ada0e744]{border-color:#67c23a}.permission-list__stat-card--category[data-v-ada0e744]{border-color:#e6a23c}.permission-list__stat-card__value[data-v-ada0e744]{font-size:28px;font-weight:700;color:var(--text-primary);line-height:1;margin-bottom:8px}.permission-list__stat-card__label[data-v-ada0e744]{font-size:12px;color:var(--text-secondary)}.permission-list__filters[data-v-ada0e744]{display:flex;gap:12px;align-items:center}.permission-list__filter-select[data-v-ada0e744]{width:200px}.permission-list__filter-input[data-v-ada0e744]{width:320px}.permission-list__content[data-v-ada0e744]{border-radius:8px;box-shadow:0 2px 8px #0000000a}.permission-category[data-v-ada0e744]{margin-bottom:32px}.permission-category[data-v-ada0e744]:last-child{margin-bottom:0}.permission-category__header[data-v-ada0e744]{margin-bottom:12px;padding:14px 20px;background:linear-gradient(to right,var(--bg-secondary),transparent);border-left:4px solid #409eff;border-radius:4px}.category-title[data-v-ada0e744]{display:flex;align-items:center;gap:16px}.category-badge[data-v-ada0e744]{font-size:16px;font-weight:600;color:var(--text-primary)}.category-count[data-v-ada0e744]{font-size:13px;color:var(--text-secondary);padding:2px 12px;background:var(--bg-color);border-radius:12px}.permission-table[data-v-ada0e744]{border-radius:4px;overflow:hidden}.code-text[data-v-ada0e744]{font-family:Consolas,Monaco,Courier New,monospace;font-size:13px;color:#e83e8c;background:#e83e8c14;padding:3px 10px;border-radius:4px;font-weight:500}.permission-name[data-v-ada0e744]{font-weight:500;color:var(--text-primary)}.text-secondary[data-v-ada0e744]{color:var(--text-secondary);font-size:13px}@media (max-width: 1200px){.permission-list__top[data-v-ada0e744]{flex-direction:column;align-items:flex-start;gap:20px}.permission-list__stats[data-v-ada0e744]{width:100%;justify-content:flex-start}}@media (max-width: 768px){.permission-list[data-v-ada0e744]{padding:16px}.permission-list__filters[data-v-ada0e744]{flex-direction:column;align-items:stretch}.permission-list__filter-select[data-v-ada0e744],.permission-list__filter-input[data-v-ada0e744]{width:100%}.permission-list__stats[data-v-ada0e744]{flex-direction:column}.permission-list__stat-card[data-v-ada0e744]{width:100%}.permission-list__stat-card__value[data-v-ada0e744]{font-size:24px}.permission-list__title-badge[data-v-ada0e744]{padding:8px 16px;font-size:14px}}.role-list[data-v-af041fea]{padding:24px;background:var(--bg-secondary);min-height:calc(100vh - 60px)}.role-list__header[data-v-af041fea]{margin-bottom:20px;border-radius:8px;box-shadow:0 2px 8px #0000000a;transition:box-shadow .3s}.role-list__header[data-v-af041fea]:hover{box-shadow:0 4px 16px #00000014}.role-list__top[data-v-af041fea]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px;padding-bottom:20px;border-bottom:1px solid var(--border-color)}.role-list__title[data-v-af041fea]{display:flex;align-items:center;gap:16px}.title-badge[data-v-af041fea]{padding:10px 20px;background:linear-gradient(135deg,#4facfe,#00f2fe);border-radius:8px;color:#fff;font-size:15px;font-weight:600;box-shadow:0 4px 12px #4facfe4d}.title-content h2[data-v-af041fea]{margin:0 0 4px;font-size:24px;font-weight:600;color:var(--text-primary)}.title-content p[data-v-af041fea]{margin:0;font-size:14px;color:var(--text-secondary)}.role-list__stats[data-v-af041fea]{display:flex;gap:20px}.stat-card[data-v-af041fea]{min-width:100px;padding:16px 24px;background:var(--bg-color);border-radius:8px;border:2px solid var(--border-color);transition:all .3s;text-align:center}.stat-card[data-v-af041fea]:hover{transform:translateY(-2px);box-shadow:0 4px 12px #00000014}.stat-card--total[data-v-af041fea]{border-color:#409eff}.stat-card--system[data-v-af041fea]{border-color:#e6a23c}.stat-card--custom[data-v-af041fea]{border-color:#67c23a}.stat-card__value[data-v-af041fea]{font-size:28px;font-weight:700;color:var(--text-primary);line-height:1;margin-bottom:8px}.stat-card__label[data-v-af041fea]{font-size:12px;color:var(--text-secondary)}.role-list__filters[data-v-af041fea]{display:flex;gap:12px;align-items:center}.filter-select[data-v-af041fea]{width:200px}.filter-input[data-v-af041fea]{width:320px}.role-list__content[data-v-af041fea]{border-radius:8px;box-shadow:0 2px 8px #0000000a}.role-table[data-v-af041fea]{border-radius:4px;overflow:hidden}.code-text[data-v-af041fea]{font-family:Consolas,Monaco,Courier New,monospace;font-size:13px;color:#4facfe;background:#4facfe1a;padding:3px 10px;border-radius:4px;font-weight:500}.role-name[data-v-af041fea]{font-weight:500;color:var(--text-primary)}.level-badge[data-v-af041fea]{display:inline-block;padding:2px 10px;background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;font-size:12px;font-weight:600;border-radius:12px}.text-secondary[data-v-af041fea]{color:var(--text-secondary);font-size:13px}.dialog-header[data-v-af041fea]{display:flex;align-items:center;gap:16px}.dialog-header__badge[data-v-af041fea]{padding:8px 16px;background:linear-gradient(135deg,#4facfe,#00f2fe);border-radius:6px;color:#fff;font-size:14px;font-weight:600}.dialog-header__content h3[data-v-af041fea]{margin:0 0 4px;font-size:18px;font-weight:600;color:var(--text-primary)}.dialog-header__content p[data-v-af041fea]{margin:0;font-size:13px;color:var(--text-secondary)}.role-permissions[data-v-af041fea]{min-height:500px}.panel[data-v-af041fea]{background:var(--bg-color);border:1px solid var(--border-color);border-radius:8px;overflow:hidden}.panel-header[data-v-af041fea]{display:flex;align-items:center;justify-content:space-between;padding:16px 20px;background:var(--bg-secondary);border-bottom:1px solid var(--border-color)}.panel-title[data-v-af041fea]{font-size:15px;font-weight:600;color:var(--text-primary)}.panel-body[data-v-af041fea]{padding:16px}.tree-wrapper[data-v-af041fea]{max-height:450px;overflow-y:auto;border:1px solid var(--border-color);border-radius:6px;padding:12px;background:var(--bg-secondary)}.tree-wrapper[data-v-af041fea]::-webkit-scrollbar{width:6px}.tree-wrapper[data-v-af041fea]::-webkit-scrollbar-thumb{background:var(--border-color);border-radius:3px}.tree-node[data-v-af041fea]{display:flex;align-items:center;gap:12px;flex:1;padding-right:12px}.tree-node__label[data-v-af041fea]{font-weight:500;color:var(--text-primary);font-size:13px}.tree-node__code[data-v-af041fea]{font-size:11px;font-family:Consolas,Monaco,Courier New,monospace;color:var(--text-secondary);background:#0000000d;padding:2px 6px;border-radius:3px}.permissions-list[data-v-af041fea]{border:1px solid var(--border-color);border-radius:4px;overflow:hidden}.permission-code[data-v-af041fea]{font-family:Consolas,Monaco,Courier New,monospace;font-size:12px;color:#e83e8c;background:#e83e8c14;padding:2px 8px;border-radius:3px}.dialog-footer[data-v-af041fea]{display:flex;justify-content:space-between;align-items:center}.footer-info[data-v-af041fea]{flex:1}.footer-actions[data-v-af041fea]{display:flex;gap:12px}@media (max-width: 1200px){.role-list__top[data-v-af041fea]{flex-direction:column;align-items:flex-start;gap:20px}.role-list__stats[data-v-af041fea]{width:100%;justify-content:flex-start}}@media (max-width: 768px){.role-list[data-v-af041fea]{padding:16px}.role-list__filters[data-v-af041fea]{flex-direction:column;align-items:stretch}.filter-select[data-v-af041fea],.filter-input[data-v-af041fea]{width:100%}.role-list__stats[data-v-af041fea]{flex-direction:column}.stat-card[data-v-af041fea]{width:100%}.stat-card__value[data-v-af041fea]{font-size:24px}.title-badge[data-v-af041fea]{padding:8px 16px;font-size:14px}.dialog-footer[data-v-af041fea]{flex-direction:column;gap:12px}.footer-info[data-v-af041fea]{width:100%}.footer-actions[data-v-af041fea]{width:100%;justify-content:flex-end}}.request-logs[data-v-45681a0e]{padding:20px;background:#f5f7fa;min-height:100vh}.request-logs__header[data-v-45681a0e]{margin-bottom:20px}.request-logs__top[data-v-45681a0e]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.request-logs__title[data-v-45681a0e]{display:flex;gap:16px;align-items:center}.request-logs__title-badge[data-v-45681a0e]{width:60px;height:60px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;display:flex;align-items:center;justify-content:center;color:#fff;font-weight:700;font-size:16px;flex-shrink:0}.request-logs__title-content h2[data-v-45681a0e]{margin:0 0 4px;font-size:24px;color:#303133}.request-logs__title-content p[data-v-45681a0e]{margin:0;font-size:14px;color:#909399}.request-logs__stats[data-v-45681a0e]{display:flex;gap:16px}.request-logs__stat-card[data-v-45681a0e]{padding:16px 24px;border-radius:8px;text-align:center;min-width:120px;background:#fff;border:1px solid #ebeef5}.request-logs__stat-card--total[data-v-45681a0e]{border-left:4px solid #409eff}.request-logs__stat-card--success[data-v-45681a0e]{border-left:4px solid #67c23a}.request-logs__stat-card--failed[data-v-45681a0e]{border-left:4px solid #f56c6c}.request-logs__stat-card--latency[data-v-45681a0e]{border-left:4px solid #e6a23c}.request-logs__stat-card--high-risk[data-v-45681a0e]{border-left:4px solid #f56c6c}.request-logs__stat-card__value[data-v-45681a0e]{font-size:28px;font-weight:700;color:#303133;margin-bottom:4px}.request-logs__stat-card__label[data-v-45681a0e]{font-size:13px;color:#909399}.request-logs__filters[data-v-45681a0e]{display:flex;gap:12px;flex-wrap:wrap}.request-logs__filter-date[data-v-45681a0e]{width:360px}.request-logs__filter-input[data-v-45681a0e]{width:160px}.request-logs__filter-select[data-v-45681a0e]{width:140px}.request-logs__advanced-filters[data-v-45681a0e]{margin-top:16px;padding:20px;background:#fafbfc;border-radius:8px;border:1px solid #e4e7ed}.filter-row[data-v-45681a0e]{display:flex;gap:16px;flex-wrap:wrap;margin-bottom:16px;align-items:flex-end}.filter-row[data-v-45681a0e]:last-child{margin-bottom:0}.filter-item[data-v-45681a0e]{display:flex;flex-direction:column;gap:6px;min-width:0;flex:1;min-width:160px;max-width:220px}.filter-item__label[data-v-45681a0e]{font-size:13px;color:#606266;font-weight:500;white-space:nowrap;line-height:1.4}.filter-item__control[data-v-45681a0e]{width:100%}.filter-item--range[data-v-45681a0e]{min-width:280px;max-width:320px}.filter-item__range-group[data-v-45681a0e]{display:flex;align-items:center;gap:10px;width:100%}.filter-item__range-input[data-v-45681a0e]{flex:1;min-width:100px}.filter-item__range-separator[data-v-45681a0e]{font-size:13px;color:#909399;font-weight:500;white-space:nowrap;flex-shrink:0;padding:0 2px}.request-logs__content[data-v-45681a0e]{min-height:600px}.logs-table[data-v-45681a0e]{margin-bottom:20px}.route-text[data-v-45681a0e]{font-family:Courier New,monospace;font-size:13px;padding:2px 6px;background:#f5f7fa;border-radius:4px;color:#606266}.latency-fast[data-v-45681a0e]{color:#67c23a;font-weight:700}.latency-normal[data-v-45681a0e]{color:#e6a23c;font-weight:700}.latency-slow[data-v-45681a0e]{color:#f56c6c;font-weight:700}.pagination-container[data-v-45681a0e]{display:flex;justify-content:center;padding:20px 0}.log-detail[data-v-45681a0e]{max-height:70vh;overflow-y:auto}.detail-section[data-v-45681a0e]{margin-bottom:24px}.detail-section[data-v-45681a0e]:last-child{margin-bottom:0}.section-title[data-v-45681a0e]{margin:0 0 16px;font-size:16px;font-weight:600;color:#303133;padding-bottom:8px;border-bottom:2px solid #409eff}.info-block[data-v-45681a0e]{margin-bottom:16px}.info-block[data-v-45681a0e]:last-child{margin-bottom:0}.info-block h4[data-v-45681a0e]{margin:0 0 8px;font-size:14px;font-weight:600;color:#606266}.json-content[data-v-45681a0e]{margin:0;padding:12px;background:#f5f7fa;border-radius:4px;font-family:Courier New,monospace;font-size:12px;color:#303133;line-height:1.6;overflow-x:auto}.user-agent[data-v-45681a0e]{font-size:12px;color:#606266;word-break:break-all}code[data-v-45681a0e]{font-family:Courier New,monospace;font-size:13px;padding:2px 6px;background:#f5f7fa;border-radius:4px;color:#606266}.ip-info[data-v-45681a0e]{display:flex;flex-direction:column;gap:2px}.ip-text[data-v-45681a0e]{font-family:Courier New,monospace;font-size:13px;color:#606266;font-weight:500}.ip-location[data-v-45681a0e]{font-size:11px;color:#909399;line-height:1}.risk-tags[data-v-45681a0e]{display:flex;flex-wrap:wrap;gap:4px;align-items:center}.risk-tag[data-v-45681a0e]{margin:0}.more-tags[data-v-45681a0e]{font-size:11px;color:#909399;margin-left:2px}.qps-value[data-v-45681a0e]{font-family:Courier New,monospace;font-size:12px;color:#606266;font-weight:500}.risk-tags-detail[data-v-45681a0e]{display:flex;flex-wrap:wrap;gap:4px}.critical-risk[data-v-45681a0e]{background:linear-gradient(45deg,#ff4757,#ff3742)!important;color:#fff!important;border-color:#ff4757!important;font-weight:700;animation:pulse-45681a0e 2s infinite}@keyframes pulse-45681a0e{0%{box-shadow:0 0 #ff4757b3}70%{box-shadow:0 0 0 10px #ff475700}to{box-shadow:0 0 #ff475700}}.audit-statistics[data-v-0cdec15f]{padding:20px;background:#f5f7fa;min-height:100vh}.audit-statistics__header[data-v-0cdec15f]{margin-bottom:20px}.audit-statistics__top[data-v-0cdec15f]{display:flex;justify-content:space-between;align-items:center}.audit-statistics__title[data-v-0cdec15f]{display:flex;gap:16px;align-items:center}.title-badge[data-v-0cdec15f]{width:60px;height:60px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:28px;flex-shrink:0}.title-content h2[data-v-0cdec15f]{margin:0 0 4px;font-size:24px;color:#303133}.title-content p[data-v-0cdec15f]{margin:0;font-size:14px;color:#909399}.stats-overview[data-v-0cdec15f]{margin-top:24px;margin-bottom:24px}.stat-card[data-v-0cdec15f]{padding:24px;display:flex;align-items:center;gap:16px;cursor:pointer;transition:all .3s;height:120px;box-sizing:border-box}.stat-card[data-v-0cdec15f]:hover{transform:translateY(-4px);box-shadow:0 4px 12px #00000026}.stat-card__icon[data-v-0cdec15f]{font-size:48px;line-height:1}.stat-card__content[data-v-0cdec15f]{flex:1;display:flex;flex-direction:column;justify-content:center}.stat-card__value[data-v-0cdec15f]{font-size:32px;font-weight:700;color:#303133;margin-bottom:4px;line-height:1.2}.stat-card__label[data-v-0cdec15f]{font-size:14px;color:#909399;line-height:1.5}.stat-card__percent-inline[data-v-0cdec15f]{font-size:13px;color:#606266;font-weight:600;margin-left:4px}.stat-card--primary[data-v-0cdec15f]{border-left:4px solid #409eff}.stat-card--success[data-v-0cdec15f]{border-left:4px solid #67c23a}.stat-card--danger[data-v-0cdec15f]{border-left:4px solid #f56c6c}.stat-card--warning[data-v-0cdec15f]{border-left:4px solid #e6a23c}.stat-card--info[data-v-0cdec15f]{border-left:4px solid #909399}.stat-card--purple[data-v-0cdec15f]{border-left:4px solid #9c27b0}.chart-row[data-v-0cdec15f]{display:flex;align-items:stretch}.chart-row .el-col[data-v-0cdec15f]{display:flex;flex-direction:column}.chart-card[data-v-0cdec15f]{height:100%;display:flex;flex-direction:column}.chart-card[data-v-0cdec15f] .el-card__body{flex:1;display:flex;flex-direction:column;overflow:auto}.card-header[data-v-0cdec15f]{display:flex;justify-content:space-between;align-items:center}.card-title[data-v-0cdec15f]{font-size:16px;font-weight:600;color:#303133}.method-stats[data-v-0cdec15f]{padding:12px 0;flex:1;overflow:auto}.method-item[data-v-0cdec15f]{margin-bottom:24px}.method-item[data-v-0cdec15f]:last-child{margin-bottom:0}.method-info[data-v-0cdec15f]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.method-count[data-v-0cdec15f]{font-size:16px;font-weight:700;color:#303133}.status-stats[data-v-0cdec15f]{padding:12px 0;flex:1;overflow:auto}.status-item[data-v-0cdec15f]{margin-bottom:24px}.status-item[data-v-0cdec15f]:last-child{margin-bottom:0}.status-info[data-v-0cdec15f]{display:flex;justify-content:space-between;align-items:center;margin-bottom:8px}.status-count[data-v-0cdec15f]{font-size:16px;font-weight:700;color:#303133}.route-text[data-v-0cdec15f]{font-family:Courier New,monospace;font-size:13px;padding:2px 6px;background:#f5f7fa;border-radius:4px;color:#606266}.count-text[data-v-0cdec15f]{font-size:16px;font-weight:700;color:#409eff}.latency-fast[data-v-0cdec15f]{color:#67c23a;font-weight:700}.latency-normal[data-v-0cdec15f]{color:#e6a23c;font-weight:700}.latency-slow[data-v-0cdec15f]{color:#f56c6c;font-weight:700}.hourly-chart[data-v-0cdec15f]{display:flex;align-items:flex-end;justify-content:space-between;height:200px;padding:20px 10px 0;gap:4px}.hour-bar[data-v-0cdec15f]{flex:1;background:linear-gradient(180deg,#409eff,#66b1ff);border-radius:4px 4px 0 0;min-height:5%;position:relative;cursor:pointer;transition:all .3s}.hour-bar[data-v-0cdec15f]:hover{background:linear-gradient(180deg,#66b1ff,#409eff);transform:scaleY(1.05)}.bar-value[data-v-0cdec15f]{position:absolute;top:-20px;left:50%;transform:translate(-50%);font-size:11px;color:#606266;white-space:nowrap;display:none}.hour-bar:hover .bar-value[data-v-0cdec15f]{display:block}.hour-labels[data-v-0cdec15f]{display:flex;justify-content:space-between;padding:8px 10px 0;gap:4px}.hour-labels span[data-v-0cdec15f]{flex:1;text-align:center;font-size:11px;color:#909399}.permission-logs[data-v-1db3f6e1]{padding:20px;background:#f5f7fa;min-height:100vh}.permission-logs__header[data-v-1db3f6e1]{margin-bottom:20px}.permission-logs__top[data-v-1db3f6e1]{display:flex;justify-content:space-between;align-items:flex-start;margin-bottom:24px}.permission-logs__title[data-v-1db3f6e1]{display:flex;gap:16px;align-items:center}.title-badge[data-v-1db3f6e1]{width:60px;height:60px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;display:flex;align-items:center;justify-content:center;font-size:28px;flex-shrink:0}.title-content h2[data-v-1db3f6e1]{margin:0 0 4px;font-size:24px;color:#303133}.title-content p[data-v-1db3f6e1]{margin:0;font-size:14px;color:#909399}.permission-logs__stats[data-v-1db3f6e1]{display:flex;gap:16px}.stat-card[data-v-1db3f6e1]{padding:16px 24px;border-radius:8px;text-align:center;min-width:120px;background:#fff;border:1px solid #ebeef5}.stat-card--total[data-v-1db3f6e1]{border-left:4px solid #409eff}.stat-card--grant[data-v-1db3f6e1]{border-left:4px solid #67c23a}.stat-card--revoke[data-v-1db3f6e1]{border-left:4px solid #f56c6c}.stat-card__value[data-v-1db3f6e1]{font-size:28px;font-weight:700;color:#303133;margin-bottom:4px}.stat-card__label[data-v-1db3f6e1]{font-size:13px;color:#909399}.permission-logs__filters[data-v-1db3f6e1]{display:flex;gap:12px;flex-wrap:wrap}.filter-input[data-v-1db3f6e1],.filter-select[data-v-1db3f6e1]{width:140px}.permission-logs__content[data-v-1db3f6e1]{min-height:600px}.logs-table[data-v-1db3f6e1]{margin-bottom:20px}.user-text[data-v-1db3f6e1]{font-weight:500;color:#303133}.user-id[data-v-1db3f6e1]{font-size:12px;color:#909399;margin-left:4px}.resource-info[data-v-1db3f6e1]{display:flex;align-items:center;gap:8px}.resource-id[data-v-1db3f6e1]{font-size:12px;color:#606266;font-family:Courier New,monospace}.reason-text[data-v-1db3f6e1]{color:#606266;font-size:13px}.text-nowrap[data-v-1db3f6e1]{white-space:nowrap}.user-info[data-v-1db3f6e1]{display:inline-flex;align-items:center;white-space:nowrap}.pagination-container[data-v-1db3f6e1]{display:flex;justify-content:center;padding:20px 0}.log-detail[data-v-1db3f6e1]{padding:10px 0}.reason-detail[data-v-1db3f6e1]{padding:8px;background:#f5f7fa;border-radius:4px;color:#606266;line-height:1.6}.websocket-connections[data-v-8d5a570e]{padding:20px}.websocket-connections__header[data-v-8d5a570e]{margin-bottom:20px}.websocket-connections__top[data-v-8d5a570e]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.websocket-connections__title[data-v-8d5a570e]{display:flex;align-items:center;gap:16px}.title-badge[data-v-8d5a570e]{display:flex;align-items:center;justify-content:center;width:60px;height:60px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;color:#fff;font-weight:700;font-size:14px;box-shadow:0 4px 12px #667eea4d}.title-content h2[data-v-8d5a570e]{margin:0 0 4px;font-size:24px;color:#303133}.title-content p[data-v-8d5a570e]{margin:0;font-size:14px;color:#909399}.websocket-connections__stats[data-v-8d5a570e]{display:flex;gap:16px}.stat-card[data-v-8d5a570e]{padding:16px 24px;border-radius:8px;text-align:center;min-width:120px}.stat-card--total[data-v-8d5a570e]{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff}.stat-card--disconnect[data-v-8d5a570e]{background:linear-gradient(135deg,#f093fb,#f5576c);color:#fff}.stat-card--duration[data-v-8d5a570e]{background:linear-gradient(135deg,#4facfe,#00f2fe);color:#fff}.stat-card--latency[data-v-8d5a570e]{background:linear-gradient(135deg,#43e97b,#38f9d7);color:#fff}.stat-card__value[data-v-8d5a570e]{font-size:24px;font-weight:700;margin-bottom:4px}.stat-card__label[data-v-8d5a570e]{font-size:12px;opacity:.9}.websocket-connections__filters[data-v-8d5a570e]{display:flex;gap:12px;flex-wrap:wrap}.filter-date[data-v-8d5a570e]{width:360px}.filter-input[data-v-8d5a570e]{width:180px}.filter-select[data-v-8d5a570e]{width:140px}.websocket-connections__content[data-v-8d5a570e]{margin-top:20px}.websocket-connections__pagination[data-v-8d5a570e]{margin-top:20px;display:flex;justify-content:flex-end}.message-stats[data-v-8d5a570e]{display:flex;gap:12px;align-items:center}.stat-item[data-v-8d5a570e]{display:flex;align-items:center;gap:4px;font-size:13px}.text-muted[data-v-8d5a570e]{color:#909399}.duration-short[data-v-8d5a570e]{color:#e6a23c}.duration-normal[data-v-8d5a570e]{color:#409eff}.duration-long[data-v-8d5a570e],.latency-fast[data-v-8d5a570e]{color:#67c23a}.latency-normal[data-v-8d5a570e]{color:#409eff}.latency-slow[data-v-8d5a570e]{color:#f56c6c}.connection-detail[data-v-8d5a570e]{padding:20px 0}.user-agent[data-v-8d5a570e]{word-break:break-all;font-size:13px;color:#606266}.websocket-statistics[data-v-16e8aa2a]{padding:20px}.websocket-statistics__header[data-v-16e8aa2a]{margin-bottom:20px}.websocket-statistics__top[data-v-16e8aa2a]{display:flex;justify-content:space-between;align-items:center}.websocket-statistics__title[data-v-16e8aa2a]{display:flex;align-items:center;gap:16px}.title-badge[data-v-16e8aa2a]{display:flex;align-items:center;justify-content:center;width:60px;height:60px;background:linear-gradient(135deg,#667eea,#764ba2);border-radius:12px;font-size:28px;box-shadow:0 4px 12px #667eea4d}.title-content h2[data-v-16e8aa2a]{margin:0 0 4px;font-size:24px;color:#303133}.title-content p[data-v-16e8aa2a]{margin:0;font-size:14px;color:#909399}.stat-card[data-v-16e8aa2a]{display:flex;align-items:center;padding:24px;border-radius:8px;color:#fff;transition:transform .3s}.stat-card[data-v-16e8aa2a]:hover{transform:translateY(-4px)}.stat-card--primary[data-v-16e8aa2a]{background:linear-gradient(135deg,#667eea,#764ba2)}.stat-card--success[data-v-16e8aa2a]{background:linear-gradient(135deg,#84fab0,#8fd3f4)}.stat-card--warning[data-v-16e8aa2a]{background:linear-gradient(135deg,#ffecd2,#fcb69f);color:#333}.stat-card--info[data-v-16e8aa2a]{background:linear-gradient(135deg,#a8edea,#fed6e3);color:#333}.stat-card__icon[data-v-16e8aa2a]{font-size:48px;margin-right:20px}.stat-card__content[data-v-16e8aa2a]{flex:1}.stat-card__value[data-v-16e8aa2a]{font-size:32px;font-weight:700;margin-bottom:4px}.stat-card__label[data-v-16e8aa2a]{font-size:14px;opacity:.9}.info-card[data-v-16e8aa2a]{display:flex;align-items:center;padding:20px;transition:transform .3s}.info-card[data-v-16e8aa2a]:hover{transform:translateY(-4px)}.info-card__icon[data-v-16e8aa2a]{font-size:36px;margin-right:16px}.info-card__value[data-v-16e8aa2a]{font-size:24px;font-weight:700;color:#303133;margin-bottom:4px}.info-card__label[data-v-16e8aa2a]{font-size:13px;color:#909399}.chart-card[data-v-16e8aa2a]{margin-top:0}.card-header[data-v-16e8aa2a]{display:flex;justify-content:space-between;align-items:center}.card-title[data-v-16e8aa2a]{font-size:16px;font-weight:600;color:#303133}.hourly-chart[data-v-16e8aa2a]{display:flex;align-items:flex-end;justify-content:space-between;height:200px;padding:20px 0;gap:4px}.hour-bar[data-v-16e8aa2a]{flex:1;display:flex;flex-direction:column;align-items:center;justify-content:flex-end;height:100%;cursor:pointer;position:relative}.hour-bar__fill[data-v-16e8aa2a]{width:100%;background:linear-gradient(180deg,#667eea,#764ba2);border-radius:4px 4px 0 0;transition:all .3s;min-height:2px}.hour-bar:hover .hour-bar__fill[data-v-16e8aa2a]{background:linear-gradient(180deg,#764ba2,#667eea);opacity:.8}.hour-bar__label[data-v-16e8aa2a]{margin-top:8px;font-size:12px;color:#909399}.quality-card[data-v-16e8aa2a]{margin-top:0}.quality-content[data-v-16e8aa2a]{display:flex;justify-content:space-around;padding:20px}.quality-item[data-v-16e8aa2a]{text-align:center;padding:20px;border-radius:8px;background:#f5f7fa;min-width:200px}.quality-label[data-v-16e8aa2a]{font-size:14px;color:#909399;margin-bottom:12px}.quality-value[data-v-16e8aa2a]{font-size:32px;font-weight:700;margin-bottom:8px}.quality-desc[data-v-16e8aa2a]{font-size:13px;color:#606266}.quality-excellent[data-v-16e8aa2a]{color:#67c23a}.quality-good[data-v-16e8aa2a]{color:#409eff}.quality-normal[data-v-16e8aa2a]{color:#e6a23c}.quality-poor[data-v-16e8aa2a]{color:#f56c6c}.websocket-current[data-v-a31f1100]{padding:20px}.websocket-current__header[data-v-a31f1100]{margin-bottom:20px}.websocket-current__top[data-v-a31f1100]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.websocket-current__title[data-v-a31f1100]{display:flex;align-items:center;gap:16px}.title-badge[data-v-a31f1100]{display:flex;align-items:center;justify-content:center;width:60px;height:60px;background:linear-gradient(135deg,#f093fb,#f5576c);border-radius:12px;font-size:28px;box-shadow:0 4px 12px #f093fb4d;animation:pulse-a31f1100 2s ease-in-out infinite}@keyframes pulse-a31f1100{0%,to{transform:scale(1)}50%{transform:scale(1.05)}}.title-content h2[data-v-a31f1100]{margin:0 0 4px;font-size:24px;color:#303133}.title-content p[data-v-a31f1100]{margin:0;font-size:14px;color:#909399}.websocket-current__stats[data-v-a31f1100]{display:flex;gap:16px}.stat-card[data-v-a31f1100]{flex:1;display:flex;align-items:center;padding:20px;border-radius:8px;color:#fff;transition:transform .3s}.stat-card[data-v-a31f1100]:hover{transform:translateY(-4px)}.stat-card--online[data-v-a31f1100]{background:linear-gradient(135deg,#f093fb,#f5576c)}.stat-card--total[data-v-a31f1100]{background:linear-gradient(135deg,#667eea,#764ba2)}.stat-card--rooms[data-v-a31f1100]{background:linear-gradient(135deg,#4facfe,#00f2fe)}.stat-card--uptime[data-v-a31f1100]{background:linear-gradient(135deg,#43e97b,#38f9d7)}.stat-card__icon[data-v-a31f1100]{font-size:40px;margin-right:16px}.stat-card__content[data-v-a31f1100]{flex:1}.stat-card__value[data-v-a31f1100]{font-size:28px;font-weight:700;margin-bottom:4px}.stat-card__label[data-v-a31f1100]{font-size:13px;opacity:.9}.websocket-current__rooms[data-v-a31f1100]{margin-bottom:20px}.card-header[data-v-a31f1100]{display:flex;justify-content:space-between;align-items:center}.card-title[data-v-a31f1100]{font-size:16px;font-weight:600;color:#303133}.rooms-grid[data-v-a31f1100]{display:grid;grid-template-columns:repeat(auto-fill,minmax(250px,1fr));gap:16px;padding:10px 0}.room-card[data-v-a31f1100]{padding:16px;border:1px solid #e4e7ed;border-radius:8px;background:linear-gradient(135deg,#f5f7fa,#fff);transition:all .3s}.room-card[data-v-a31f1100]:hover{border-color:#409eff;box-shadow:0 2px 12px #409eff33;transform:translateY(-2px)}.room-card__id[data-v-a31f1100]{font-size:14px;font-weight:500;color:#303133;margin-bottom:8px;word-break:break-all}.room-card__count[data-v-a31f1100]{display:flex;align-items:center;gap:4px;font-size:13px;color:#606266}.websocket-current__content[data-v-a31f1100]{margin-top:20px}.message-stats[data-v-a31f1100]{display:flex;gap:12px;align-items:center}.stat-item[data-v-a31f1100]{display:flex;align-items:center;gap:4px;font-size:13px}.duration-short[data-v-a31f1100]{color:#e6a23c}.duration-normal[data-v-a31f1100]{color:#409eff}.duration-long[data-v-a31f1100],.latency-fast[data-v-a31f1100]{color:#67c23a}.latency-normal[data-v-a31f1100]{color:#409eff}.latency-slow[data-v-a31f1100]{color:#f56c6c}.client-detail[data-v-a31f1100]{padding:20px 0}.user-agent[data-v-a31f1100]{word-break:break-all;font-size:13px;color:#606266}
