@charset "UTF-8";#app{height:100%}.admin-layout[data-v-7ab9e4ba]{height:100vh}.sidebar[data-v-7ab9e4ba]{background:linear-gradient(180deg,#0b1220,#0f172a 60%,#16213a);overflow-x:hidden;transition:width .3s}.sidebar .el-menu[data-v-7ab9e4ba]{border-right:none}.sidebar .el-menu .el-menu-item[data-v-7ab9e4ba],.sidebar .el-menu .el-sub-menu__title[data-v-7ab9e4ba]{height:46px;line-height:46px}.sidebar[data-v-7ab9e4ba] .el-sub-menu .el-sub-menu__title{display:flex;align-items:center}.sidebar[data-v-7ab9e4ba] .el-sub-menu .el-sub-menu__title .el-icon{margin-right:5px}.sidebar[data-v-7ab9e4ba] .el-sub-menu .el-menu-item{padding-left:52px!important;height:42px;line-height:42px}.sidebar[data-v-7ab9e4ba] .el-menu-item:hover,.sidebar[data-v-7ab9e4ba] .el-sub-menu__title:hover{background-color:#ffffff14!important}.sidebar[data-v-7ab9e4ba] .el-menu-item.is-active{background-color:#1d4ed8!important;color:#fff!important;border-right:4px solid #60a5fa}.sidebar[data-v-7ab9e4ba] .el-sub-menu.is-active>.el-sub-menu__title{color:#fff!important}.el-header[data-v-7ab9e4ba]{display:flex;justify-content:space-between;align-items:center;background:#fff;border-bottom:1px solid #d9d9d9;padding:0 20px}.el-header .header-left[data-v-7ab9e4ba]{display:flex;align-items:center}.el-header .header-left .collapse-icon[data-v-7ab9e4ba]{font-size:20px;cursor:pointer;margin-right:20px;color:#334155;transition:color .3s}.el-header .header-left .collapse-icon[data-v-7ab9e4ba]:hover{color:#1d4ed8}.el-header .header-right .user-info[data-v-7ab9e4ba]{display:flex;align-items:center;cursor:pointer}.el-header .header-right .user-info .username[data-v-7ab9e4ba]{margin:0 8px;color:#334155;font-weight:500}.el-main[data-v-7ab9e4ba]{background:#f5f7fa;padding:20px;min-height:calc(100vh - 160px)}.page-tabs[data-v-7ab9e4ba]{display:flex;align-items:center;gap:6px;height:40px;padding:6px 16px 0;background:#f5f7fa;border-bottom:1px solid #e5e7eb;overflow-x:auto;overflow-y:hidden}.page-tab[data-v-7ab9e4ba]{display:inline-flex;align-items:center;gap:8px;height:32px;max-width:180px;padding:0 10px;background:#fff;border:1px solid #dcdfe6;border-bottom-color:#cfd3dc;border-radius:6px 6px 0 0;color:#606266;cursor:pointer;flex:0 0 auto;transition:color .2s,border-color .2s,background .2s}.page-tab.active[data-v-7ab9e4ba]{color:#1d4ed8;border-color:#1d4ed8;background:#f5f7fa}.page-tab[data-v-7ab9e4ba]:hover{color:#1d4ed8}.page-tab-title[data-v-7ab9e4ba]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:13px}.page-tab-close[data-v-7ab9e4ba]{width:14px;height:14px;border-radius:50%;color:#909399}.page-tab-close[data-v-7ab9e4ba]:hover{color:#fff;background:#909399}.el-footer[data-v-7ab9e4ba]{text-align:center;line-height:60px;color:#999;font-size:14px;background:#fff;border-top:1px solid #e6e6e6}.fade-enter-active[data-v-7ab9e4ba],.fade-leave-active[data-v-7ab9e4ba]{transition:opacity .2s ease}.fade-enter-from[data-v-7ab9e4ba],.fade-leave-to[data-v-7ab9e4ba]{opacity:0}.dashboard .data-overview .overview-header[data-v-11b2630a]{display:flex;justify-content:space-between;align-items:center;margin-bottom:24px}.dashboard .data-overview .overview-header .header-left[data-v-11b2630a]{display:flex;align-items:center;gap:16px}.dashboard .data-overview .overview-header .header-left .title[data-v-11b2630a]{font-size:16px;font-weight:500;color:#333;margin:0}.dashboard .data-overview .overview-header .header-left .time-tabs[data-v-11b2630a]{display:flex;border:1px solid #dcdfe6;border-radius:4px;overflow:hidden}.dashboard .data-overview .overview-header .header-left .time-tabs .tab-item[data-v-11b2630a]{padding:6px 16px;font-size:14px;color:#606266;cursor:pointer;background:#fff;border-right:1px solid #dcdfe6;transition:all .3s}.dashboard .data-overview .overview-header .header-left .time-tabs .tab-item[data-v-11b2630a]:last-child{border-right:none}.dashboard .data-overview .overview-header .header-left .time-tabs .tab-item[data-v-11b2630a]:hover{color:#047857}.dashboard .data-overview .overview-header .header-left .time-tabs .tab-item.active[data-v-11b2630a]{color:#047857;background:#ecfdf5}.dashboard .data-overview .stats-grid[data-v-11b2630a]{display:grid;grid-template-columns:repeat(5,1fr);gap:32px 24px}.dashboard .data-overview .stats-grid .stat-item .stat-label[data-v-11b2630a]{font-size:14px;color:#909399;margin-bottom:8px;display:flex;align-items:center;gap:4px}.dashboard .data-overview .stats-grid .stat-item .stat-label .info-icon[data-v-11b2630a]{font-size:14px;color:#c0c4cc;cursor:help}.dashboard .data-overview .stats-grid .stat-item .stat-value[data-v-11b2630a]{font-size:32px;font-weight:600;color:#303133;line-height:1}.dashboard .card-header[data-v-11b2630a],.dashboard .operation-guide .guide-header[data-v-11b2630a]{display:flex;justify-content:space-between;align-items:center}.dashboard .operation-guide .guide-header .guide-tabs[data-v-11b2630a]{display:flex;gap:24px}.dashboard .operation-guide .guide-header .guide-tabs .tab-item[data-v-11b2630a]{font-size:14px;color:#606266;cursor:pointer;padding-bottom:8px;border-bottom:2px solid transparent;transition:all .3s}.dashboard .operation-guide .guide-header .guide-tabs .tab-item[data-v-11b2630a]:hover{color:#047857}.dashboard .operation-guide .guide-header .guide-tabs .tab-item.active[data-v-11b2630a]{color:#047857;border-bottom-color:#047857;font-weight:500}.dashboard .operation-guide .guide-grid[data-v-11b2630a]{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.dashboard .operation-guide .guide-grid .guide-item[data-v-11b2630a]{display:flex;align-items:center;padding:16px;background:#fafafa;border-radius:8px;cursor:pointer;transition:all .3s}.dashboard .operation-guide .guide-grid .guide-item[data-v-11b2630a]:hover{background:#f0fdf4;box-shadow:0 2px 8px #04785726}.dashboard .operation-guide .guide-grid .guide-item .guide-icon[data-v-11b2630a]{width:48px;height:48px;border-radius:8px;display:flex;align-items:center;justify-content:center;margin-right:12px;flex-shrink:0}.dashboard .operation-guide .guide-grid .guide-item .guide-icon .el-icon[data-v-11b2630a]{font-size:24px}.dashboard .operation-guide .guide-grid .guide-item .guide-icon.icon-staff[data-v-11b2630a]{background:#ecfdf5;color:#047857}.dashboard .operation-guide .guide-grid .guide-item .guide-icon.icon-course[data-v-11b2630a]{background:#f6ffed;color:#52c41a}.dashboard .operation-guide .guide-grid .guide-item .guide-icon.icon-class[data-v-11b2630a]{background:#fff7e6;color:#fa8c16}.dashboard .operation-guide .guide-grid .guide-item .guide-icon.icon-student[data-v-11b2630a]{background:#fef0ff;color:#eb2f96}.dashboard .operation-guide .assist-grid[data-v-11b2630a]{display:grid;grid-template-columns:repeat(4,1fr);gap:16px}.dashboard .operation-guide .assist-grid .assist-item[data-v-11b2630a]{display:flex;flex-direction:column;align-items:center;padding:20px 16px;background:#fafafa;border-radius:8px;cursor:pointer;transition:all .3s}.dashboard .operation-guide .assist-grid .assist-item[data-v-11b2630a]:hover{background:#f0fdf4;box-shadow:0 2px 8px #04785726}.dashboard .operation-guide .assist-grid .assist-item .assist-icon[data-v-11b2630a]{width:48px;height:48px;border-radius:8px;display:flex;align-items:center;justify-content:center;margin-bottom:12px;flex-shrink:0}.dashboard .operation-guide .assist-grid .assist-item .assist-icon .el-icon[data-v-11b2630a]{font-size:24px}.dashboard .operation-guide .assist-grid .assist-item .assist-icon.icon-quiz[data-v-11b2630a]{background:#ecfdf5;color:#047857}.dashboard .operation-guide .assist-grid .assist-item .assist-icon.icon-checkin[data-v-11b2630a]{background:#f6ffed;color:#52c41a}.dashboard .operation-guide .assist-grid .assist-item .assist-icon.icon-homework[data-v-11b2630a]{background:#fff7e6;color:#fa8c16}.dashboard .operation-guide .assist-grid .assist-item .assist-icon.icon-vote[data-v-11b2630a]{background:#fef0ff;color:#eb2f96}.dashboard .operation-guide .assist-grid .assist-item .assist-name[data-v-11b2630a]{font-size:14px;font-weight:500;color:#303133;margin-bottom:4px}.dashboard .operation-guide .assist-grid .assist-item .assist-desc[data-v-11b2630a]{font-size:12px;color:#909399;text-align:center;line-height:1.4}.course-list .page-header[data-v-c0b92238]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.course-list .page-header h2[data-v-c0b92238]{font-size:18px;font-weight:600}.course-list .search-card[data-v-c0b92238]{margin-bottom:20px}.course-list .table-card .price[data-v-c0b92238]{color:#ff4d4f;font-weight:600}.course-list .table-card .original-price[data-v-c0b92238]{color:#999;text-decoration:line-through;font-size:12px;margin-left:8px}.course-list .pagination[data-v-c0b92238]{display:flex;justify-content:flex-end;margin-top:20px}.category-manage .page-header[data-v-07795bb9]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.category-manage .page-header h2[data-v-07795bb9]{font-size:18px;font-weight:600}.teacher-manage .page-header[data-v-c484e37f]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.teacher-manage .page-header h2[data-v-c484e37f]{font-size:18px;font-weight:600}.class-list[data-v-27a40377]{padding:0 16px 16px}.top-tabs[data-v-27a40377]{margin-bottom:12px}.top-tabs[data-v-27a40377] .el-tabs__header{margin-bottom:0}.top-tabs[data-v-27a40377] .el-tabs__nav-wrap:after{display:none}.top-tabs[data-v-27a40377] .el-tabs__item{font-size:15px;font-weight:500;padding:0 20px;height:44px;line-height:44px}.top-tabs[data-v-27a40377] .el-tabs__item.is-active{color:#047857}.top-tabs[data-v-27a40377] .el-tabs__active-bar{background-color:#047857}.schedule-placeholder[data-v-27a40377]{display:flex;justify-content:center;align-items:center;min-height:400px;background:#fff;border-radius:4px}.search-card[data-v-27a40377]{margin-bottom:12px}.search-card[data-v-27a40377] .el-card__body{padding:16px 16px 4px}.filter-form[data-v-27a40377]{padding:0}.filter-form .el-form-item[data-v-27a40377]{margin-bottom:12px;display:flex;align-items:center}.filter-form .el-form-item[data-v-27a40377] .el-form-item__label{flex-shrink:0;width:80px}.filter-form .el-form-item[data-v-27a40377] .el-form-item__content{flex:1;margin-left:0!important}.filter-form[data-v-27a40377] .el-input,.filter-form[data-v-27a40377] .el-select,.filter-form[data-v-27a40377] .el-date-editor{width:100%!important}.filter-actions[data-v-27a40377]{display:flex;justify-content:flex-end;gap:8px;padding-top:4px}.collapsed-filter[data-v-27a40377]{display:flex;justify-content:flex-end;gap:8px;margin-bottom:12px;align-items:center}.table-card[data-v-27a40377]{min-height:500px}.table-card[data-v-27a40377] .el-card__body{padding:16px}.toolbar[data-v-27a40377]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;flex-wrap:wrap;gap:8px}.toolbar-left[data-v-27a40377]{display:flex;gap:8px;flex-wrap:wrap}.toolbar-right[data-v-27a40377]{display:flex;gap:4px}.class-name[data-v-27a40377]{color:#047857;font-weight:500;cursor:pointer}.class-name.clickable[data-v-27a40377]:hover{color:#ff7875;text-decoration:underline}.op-btn[data-v-27a40377]{color:#666;cursor:pointer;font-size:13px}.op-btn[data-v-27a40377]:hover,.op-btn-primary[data-v-27a40377]{color:#047857}.op-divider[data-v-27a40377]{color:#d9d9d9;margin:0 4px}.op-row[data-v-27a40377]{display:flex;flex-direction:column;gap:4px}.op-row-line[data-v-27a40377]{display:flex;align-items:center}.pagination[data-v-27a40377]{margin-top:16px;display:flex;justify-content:space-between;align-items:center}.total-text[data-v-27a40377]{color:#666;font-size:14px}.expand-content[data-v-27a40377]{padding:16px 24px;background:#f8f9fa}.expand-header[data-v-27a40377]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;font-weight:500}.section-toggle[data-v-27a40377]{display:flex;align-items:center;justify-content:space-between;padding:10px 0;margin-bottom:12px;border-top:1px solid #ebeef5;cursor:pointer;-webkit-user-select:none;user-select:none}.section-toggle[data-v-27a40377]:hover{color:#047857}.section-title[data-v-27a40377]{font-size:14px;font-weight:500;color:#303133}.color-picker[data-v-27a40377]{display:flex;flex-wrap:wrap;gap:8px}.color-dot[data-v-27a40377]{width:24px;height:24px;border-radius:50%;cursor:pointer;border:2px solid transparent;transition:all .2s}.color-dot[data-v-27a40377]:hover{transform:scale(1.15)}.color-dot.active[data-v-27a40377]{border-color:#303133;box-shadow:0 0 0 2px #fff,0 0 0 4px #303133}[data-v-27a40377] .el-table__expand-icon{transition:transform .2s}[data-v-27a40377] .el-table__expand-icon--expanded{transform:rotate(90deg)}[data-v-27a40377] .el-table .el-table__fixed-right{box-shadow:-2px 0 4px #00000014}[data-v-27a40377] .el-table .el-table__fixed{box-shadow:2px 0 4px #00000014}.class-student[data-v-921d0bde]{padding:16px}.header-card[data-v-921d0bde]{margin-bottom:16px}.header[data-v-921d0bde]{display:flex;justify-content:space-between;align-items:center}.class-info .label[data-v-921d0bde]{font-size:16px;font-weight:500}.class-info .value[data-v-921d0bde]{font-size:16px;font-weight:600;color:#047857}.class-info .stats[data-v-921d0bde]{color:#909399;margin-left:10px}.search-card[data-v-921d0bde]{margin-bottom:16px}.table-card[data-v-921d0bde]{min-height:400px}.pagination[data-v-921d0bde]{margin-top:16px;display:flex;justify-content:flex-end}.text-danger[data-v-921d0bde]{color:#f56c6c;font-weight:600}.attendance-dialog-header[data-v-281d0b5e]{margin-bottom:16px}.attendance-toolbar[data-v-281d0b5e]{margin:16px 0;display:flex;gap:8px;align-items:center;flex-wrap:wrap}.primary-btn[data-v-281d0b5e]{background:#ff796a;border-color:#ff796a}.stats-text[data-v-281d0b5e]{color:#606266;font-size:14px}.op-btn[data-v-281d0b5e]{color:#047857;cursor:pointer;font-size:13px}.op-btn[data-v-281d0b5e]:hover{text-decoration:underline}.dialog-footer[data-v-281d0b5e]{display:flex;justify-content:space-between;align-items:center}.schedule-list[data-v-107d7fda]{padding:16px}.search-card[data-v-107d7fda],.view-card[data-v-107d7fda]{margin-bottom:16px}.pagination[data-v-107d7fda]{margin-top:16px;display:flex;justify-content:flex-end}.timetable-header[data-v-107d7fda]{display:flex;align-items:center;gap:16px;margin-bottom:12px}.date-range[data-v-107d7fda]{font-size:16px;font-weight:500;min-width:200px;text-align:center}.timetable-scroll-wrapper[data-v-107d7fda]{overflow-x:auto;border:1px solid #e8e8e8;border-radius:8px;background:#fff}.timetable[data-v-107d7fda]{position:relative;min-width:max-content}.timetable-corner[data-v-107d7fda]{position:absolute;top:0;left:0;width:60px;height:50px;background:#fafafa;border-bottom:1px solid #e8e8e8;z-index:3}.timetable-header-row[data-v-107d7fda]{display:flex;margin-left:60px;position:sticky;top:0;z-index:2}.timetable-header-cell[data-v-107d7fda]{text-align:center;padding:8px 4px;background:#fafafa;border-bottom:1px solid #e8e8e8;border-right:1px solid #e8e8e8;height:50px;display:flex;flex-direction:column;justify-content:center;flex-shrink:0}.timetable-header-cell[data-v-107d7fda]:last-child{border-right:none}.timetable-header-cell.today[data-v-107d7fda]{background:#fff1f0}.header-weekday[data-v-107d7fda]{font-weight:600;font-size:13px;color:#333}.header-date[data-v-107d7fda]{font-size:12px;color:#999;margin-top:2px}.timetable-header-cell.today .header-weekday[data-v-107d7fda]{color:#047857}.timetable-body[data-v-107d7fda]{display:flex;position:relative}.timetable-time-col[data-v-107d7fda]{width:60px;flex-shrink:0;position:relative;z-index:1;background:#fff}.timetable-time-cell[data-v-107d7fda]{height:40px;display:flex;align-items:flex-start;justify-content:center;padding-top:2px;font-size:11px;color:#999;border-right:1px solid #e8e8e8;border-bottom:1px solid #f0f0f0}.timetable-columns[data-v-107d7fda]{display:flex;position:relative}.timetable-column[data-v-107d7fda]{position:relative;flex-shrink:0;border-right:1px solid #e8e8e8}.timetable-column[data-v-107d7fda]:last-child{border-right:none}.timetable-cell[data-v-107d7fda]{height:40px;border-bottom:1px solid #f0f0f0}.timetable-cell.today[data-v-107d7fda]{background:#ff4d4f08}.timetable-column-events[data-v-107d7fda]{position:absolute;top:0;left:0;right:0;pointer-events:none}.timetable-event[data-v-107d7fda]{pointer-events:auto;margin:1px 2px;padding:3px 6px;border-radius:4px;color:#fff;font-size:11px;cursor:pointer;overflow:hidden;box-sizing:border-box;border-left:3px solid;transition:opacity .2s,transform .15s;opacity:.92}.timetable-event[data-v-107d7fda]:hover{opacity:1;transform:scale(1.03);z-index:10;box-shadow:0 2px 8px #00000040}.event-name[data-v-107d7fda]{font-weight:600;font-size:11px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.event-detail[data-v-107d7fda]{font-size:10px;opacity:.85;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.learning-records[data-v-13add5a4]{padding:20px}.tabs-header[data-v-13add5a4],.filter-card[data-v-13add5a4],.table-card[data-v-13add5a4]{margin-bottom:16px}.toolbar[data-v-13add5a4]{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px}.toolbar-title[data-v-13add5a4]{font-size:16px;font-weight:600;color:#303133}.toolbar-right[data-v-13add5a4]{color:#909399;font-size:13px}.pagination[data-v-13add5a4]{margin-top:16px;justify-content:flex-end}.summary-card[data-v-13add5a4]{margin-bottom:14px}.summary-card[data-v-13add5a4] .el-card__body{padding:14px 18px}.summary-row[data-v-13add5a4]{display:flex;gap:24px;align-items:stretch}.sum-total[data-v-13add5a4]{flex-shrink:0;min-width:180px}.sum-label[data-v-13add5a4]{font-size:13px;color:#909399}.sum-value[data-v-13add5a4]{font-size:20px;font-weight:700;color:#059669;margin-top:4px;font-variant-numeric:tabular-nums}.sum-sub[data-v-13add5a4]{font-size:12px;color:#c0c4cc;margin-top:2px}.sum-teachers[data-v-13add5a4]{display:flex;gap:10px;flex-wrap:wrap;flex:1}.sum-teacher[data-v-13add5a4]{border:1px solid #ebeef5;border-radius:8px;padding:8px 14px;cursor:pointer;transition:all .15s}.sum-teacher[data-v-13add5a4]:hover{border-color:#059669}.sum-teacher.active[data-v-13add5a4]{border-color:#059669;background:#ecfdf5}.st-head[data-v-13add5a4]{display:flex;align-items:center;justify-content:space-between;gap:8px}.st-name[data-v-13add5a4]{font-size:13px;font-weight:600;color:#303133}.st-detail[data-v-13add5a4]{font-size:12px;color:#059669;cursor:pointer;flex-shrink:0}.st-detail[data-v-13add5a4]:hover{text-decoration:underline}.td-total[data-v-13add5a4]{font-size:14px;color:#303133;background:#ecfdf5;border-radius:6px;padding:10px 14px;margin-bottom:14px;font-variant-numeric:tabular-nums}.td-class-title[data-v-13add5a4]{display:flex;align-items:center;gap:12px;flex:1}.td-class-meta[data-v-13add5a4]{font-size:12px;color:#909399;font-weight:400;font-variant-numeric:tabular-nums}.st-meta[data-v-13add5a4]{font-size:12px;color:#909399;margin-top:2px;font-variant-numeric:tabular-nums}.ana-toolbar[data-v-13add5a4]{display:flex;align-items:center;gap:12px;margin-bottom:14px}.ana-tip[data-v-13add5a4]{font-size:12px;color:#999}.ana-stats[data-v-13add5a4]{display:flex;gap:40px}.ana-stat[data-v-13add5a4]{display:flex;flex-direction:column;gap:4px}.as-label[data-v-13add5a4]{font-size:12px;color:#909399}.as-value[data-v-13add5a4]{font-size:22px;font-weight:700}.screen-page[data-v-b745bb11]{padding:0}.rules[data-v-b745bb11]{display:flex;gap:28px;background:#fff;border:1px solid #ebeef5;border-radius:8px;padding:14px 18px;margin-bottom:18px;flex-wrap:wrap}.rule[data-v-b745bb11]{display:flex;align-items:center;gap:8px;font-size:14px;color:#606266}.rule-label[data-v-b745bb11]{font-weight:600;color:#303133}.section-head[data-v-b745bb11]{font-size:15px;font-weight:600;margin:20px 0 10px}.section-head.danger[data-v-b745bb11]{color:#ef4444}.section-head.success[data-v-b745bb11]{color:#059669}.never[data-v-b745bb11]{color:#ef4444;font-weight:600}.tip[data-v-b745bb11]{margin-top:16px}.student-manage[data-v-2e23cda3]{padding:0 16px 16px}.top-tabs[data-v-2e23cda3]{margin-bottom:12px}.top-tabs[data-v-2e23cda3] .el-tabs__header{margin-bottom:0}.top-tabs[data-v-2e23cda3] .el-tabs__nav-wrap:after{display:none}.top-tabs[data-v-2e23cda3] .el-tabs__item{font-size:15px;font-weight:500;padding:0 20px;height:44px;line-height:44px}.top-tabs[data-v-2e23cda3] .el-tabs__item.is-active{color:#047857}.top-tabs[data-v-2e23cda3] .el-tabs__active-bar{background-color:#047857}.search-card[data-v-2e23cda3]{margin-bottom:12px}.search-card[data-v-2e23cda3] .el-card__body{padding:16px 16px 4px}.filter-form .el-form-item[data-v-2e23cda3]{margin-bottom:12px;display:flex;align-items:center}.filter-form .el-form-item[data-v-2e23cda3] .el-form-item__label{flex-shrink:0;width:80px}.filter-form .el-form-item[data-v-2e23cda3] .el-form-item__content{flex:1;margin-left:0!important}.filter-form[data-v-2e23cda3] .el-input,.filter-form[data-v-2e23cda3] .el-select{width:100%!important}.table-card[data-v-2e23cda3]{min-height:500px}.table-card[data-v-2e23cda3] .el-card__body{padding:16px}.toolbar[data-v-2e23cda3]{display:flex;justify-content:space-between;align-items:center;margin-bottom:12px;flex-wrap:wrap;gap:8px}.toolbar-left[data-v-2e23cda3]{display:flex;gap:8px;flex-wrap:wrap}.toolbar-right[data-v-2e23cda3]{display:flex;align-items:center;gap:12px}.stat-text[data-v-2e23cda3]{color:#999;font-size:12px}.class-tag-list[data-v-2e23cda3]{display:flex;flex-direction:column;gap:2px}.class-tag[data-v-2e23cda3]{margin:0;width:fit-content}.op-btn[data-v-2e23cda3]{color:#666;cursor:pointer;font-size:13px}.op-btn[data-v-2e23cda3]:hover,.op-btn-primary[data-v-2e23cda3]{color:#047857}.op-btn-danger[data-v-2e23cda3]{color:#ff4d4f}.op-btn-warning[data-v-2e23cda3]{color:#e6a23c}.op-btn-success[data-v-2e23cda3]{color:#67c23a}.op-divider[data-v-2e23cda3]{color:#d9d9d9;margin:0 4px}.pagination[data-v-2e23cda3]{margin-top:16px;display:flex;justify-content:space-between;align-items:center}.total-text[data-v-2e23cda3]{color:#666;font-size:14px}.name-link[data-v-2e23cda3]{color:#047857;cursor:pointer}.name-link[data-v-2e23cda3]:hover{text-decoration:underline}.section-title[data-v-2e23cda3]{margin:8px 0 12px;padding-bottom:8px;border-bottom:1px solid #eee;color:#333;font-size:14px}.import-area[data-v-2e23cda3]{display:flex;justify-content:center}.import-area[data-v-2e23cda3] .el-upload-dragger{padding:30px 40px;border-radius:8px}.student-detail[data-v-2e23cda3]{display:flex;flex-direction:column;gap:16px}.detail-summary[data-v-2e23cda3]{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}.summary-item[data-v-2e23cda3]{border:1px solid #ebeef5;border-radius:6px;padding:12px;background:#fafafa}.summary-label[data-v-2e23cda3]{display:block;color:#909399;font-size:12px;margin-bottom:6px}.summary-item strong[data-v-2e23cda3]{color:#303133;font-size:18px;font-weight:600}.detail-section-title[data-v-2e23cda3]{font-weight:600;color:#303133}.campus-page[data-v-32d429cf]{padding:16px}.toolbar[data-v-32d429cf]{margin-bottom:16px}.toolbar-left[data-v-32d429cf]{display:flex;align-items:center;gap:12px}.quota-tag[data-v-32d429cf]{font-size:13px}.op-btn[data-v-32d429cf]{color:#047857;cursor:pointer;font-size:13px}.op-btn[data-v-32d429cf]:hover{text-decoration:underline}.op-btn-danger[data-v-32d429cf]{color:#ff4d4f}.op-divider[data-v-32d429cf]{color:#d9d9d9;margin:0 4px}.pagination[data-v-32d429cf]{margin-top:16px;display:flex;justify-content:space-between;align-items:center}.total-text[data-v-32d429cf]{color:#666;font-size:14px}.staff-page[data-v-4111dd9c]{padding:16px}.toolbar[data-v-4111dd9c]{margin-bottom:16px;display:flex;align-items:center;gap:10px;flex-wrap:wrap}.op-btn[data-v-4111dd9c]{color:#047857;cursor:pointer;font-size:13px}.op-btn[data-v-4111dd9c]:hover{text-decoration:underline}.op-btn-danger[data-v-4111dd9c]{color:#ff4d4f}.op-divider[data-v-4111dd9c]{color:#d9d9d9;margin:0 4px}.pagination[data-v-4111dd9c]{margin-top:16px;display:flex;justify-content:space-between;align-items:center}.total-text[data-v-4111dd9c]{color:#666;font-size:14px}.section-toggle[data-v-4111dd9c]{display:flex;align-items:center;justify-content:space-between;padding:10px 0;margin-bottom:12px;border-top:1px solid #ebeef5;cursor:pointer}.section-toggle[data-v-4111dd9c]:hover{color:#047857}.section-title[data-v-4111dd9c]{font-size:14px;font-weight:500;color:#303133}.role-tip[data-v-4111dd9c]{font-size:12px;color:#999;line-height:1.6;margin-top:4px;width:100%}.color-picker[data-v-4111dd9c]{display:flex;flex-wrap:wrap;gap:8px}.color-dot[data-v-4111dd9c]{width:24px;height:24px;border-radius:50%;cursor:pointer;border:2px solid transparent;transition:all .2s}.color-dot[data-v-4111dd9c]:hover{transform:scale(1.15)}.color-dot.active[data-v-4111dd9c]{border-color:#303133;box-shadow:0 0 0 2px #fff,0 0 0 4px #303133}.classroom-page[data-v-4a68a675]{padding:16px}.toolbar[data-v-4a68a675]{margin-bottom:16px;display:flex}.op-btn[data-v-4a68a675]{color:#047857;cursor:pointer;font-size:13px}.op-btn[data-v-4a68a675]:hover{text-decoration:underline}.op-btn-danger[data-v-4a68a675]{color:#ff4d4f}.op-divider[data-v-4a68a675]{color:#d9d9d9;margin:0 4px}.pagination[data-v-4a68a675]{margin-top:16px;display:flex;justify-content:space-between;align-items:center}.total-text[data-v-4a68a675]{color:#666;font-size:14px}.muted[data-v-4a68a675]{color:#999;font-size:13px}.form-tip[data-v-4a68a675]{color:#999;font-size:13px;margin-left:6px}.type-add-row[data-v-4a68a675]{display:flex;gap:8px;margin-bottom:12px}.type-tip[data-v-4a68a675]{margin-top:10px;font-size:12px;color:#999;line-height:1.6}.login-page[data-v-74215578]{min-height:100vh;display:flex;align-items:center;justify-content:center;position:relative;overflow:hidden;background:radial-gradient(ellipse 90% 65% at 75% -15%,rgba(16,185,129,.12),transparent 62%),radial-gradient(ellipse 70% 55% at 8% 112%,rgba(34,211,238,.1),transparent 62%),linear-gradient(165deg,#f7f9fc,#f2f5f9 48%,#edf1f6)}.aurora[data-v-74215578]{position:absolute;border-radius:50%;filter:blur(80px)}.aurora-a[data-v-74215578]{width:520px;height:520px;left:-160px;bottom:-200px;background:radial-gradient(circle,rgba(16,185,129,.16),transparent 65%);animation:drift-74215578 15s ease-in-out infinite}.aurora-b[data-v-74215578]{width:460px;height:460px;right:-150px;top:-170px;background:radial-gradient(circle,rgba(34,211,238,.13),transparent 65%);animation:drift-74215578 19s ease-in-out infinite -7s}@keyframes drift-74215578{0%,to{transform:translate(0) scale(1)}50%{transform:translate(28px,-22px) scale(1.08)}}.noise[data-v-74215578]{position:absolute;top:0;right:0;bottom:0;left:0;opacity:.035;mix-blend-mode:multiply;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='160' height='160'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='2'/%3E%3C/filter%3E%3Crect width='160' height='160' filter='url(%23n)' opacity='0.6'/%3E%3C/svg%3E")}.login-card[data-v-74215578]{position:relative;z-index:1;display:flex;width:960px;max-width:calc(100vw - 48px);min-height:600px;border-radius:24px;overflow:hidden;background:#fff;box-shadow:0 30px 70px -25px #0f172a40,0 6px 18px -8px #0f172a14;animation:fade-up-74215578 .7s cubic-bezier(.22,1,.36,1) both}@keyframes fade-up-74215578{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}.intro-pane[data-v-74215578]{position:relative;flex:1 1 46%;display:flex;flex-direction:column;padding:48px 44px 28px;color:#fff;background:radial-gradient(ellipse 100% 70% at 90% 0%,rgba(255,255,255,.14),transparent 60%),linear-gradient(160deg,#056e51,#047857 40%,#0d9f6e);overflow:hidden}.intro-rings[data-v-74215578]{position:absolute;right:-180px;bottom:-220px;width:560px;height:560px;border-radius:50%;background:repeating-radial-gradient(circle at center,rgba(255,255,255,.1) 0 1px,transparent 1px 56px);-webkit-mask-image:radial-gradient(circle,#000 0%,transparent 70%);mask-image:radial-gradient(circle,#000 0%,transparent 70%);animation:rings-drift-74215578 24s ease-in-out infinite alternate}@keyframes rings-drift-74215578{0%{transform:translate(0)}to{transform:translate(-22px,-16px)}}.intro-stars[data-v-74215578]{position:absolute;top:0;right:0;bottom:0;left:0;background-image:radial-gradient(1.6px 1.6px at 18% 22%,rgba(255,255,255,.4),transparent 100%),radial-gradient(1.1px 1.1px at 42% 58%,rgba(255,255,255,.25),transparent 100%),radial-gradient(1.4px 1.4px at 70% 18%,rgba(255,255,255,.32),transparent 100%),radial-gradient(1px 1px at 84% 66%,rgba(255,255,255,.22),transparent 100%),radial-gradient(1.3px 1.3px at 28% 82%,rgba(255,255,255,.26),transparent 100%);animation:twinkle-74215578 7s ease-in-out infinite}@keyframes twinkle-74215578{0%,to{opacity:.7}50%{opacity:1}}.intro-body[data-v-74215578]{position:relative;z-index:1;flex:1}.brand[data-v-74215578]{display:flex;flex-direction:column;gap:6px}.brand-name[data-v-74215578]{font-size:22px;font-weight:600;letter-spacing:2px}.brand-sub[data-v-74215578]{font-size:11px;letter-spacing:3px;opacity:.75}.intro-title[data-v-74215578]{margin:52px 0 22px;font-size:26px;font-weight:600;letter-spacing:2px}.intro-features[data-v-74215578]{list-style:none;margin:0;padding:0;display:flex;flex-direction:column;gap:16px}.intro-features li[data-v-74215578]{display:flex;align-items:flex-start;gap:10px;font-size:14px;line-height:1.7;opacity:.92}.intro-features .dot[data-v-74215578]{width:6px;height:6px;margin-top:9px;border-radius:50%;background:#6ee7b7;box-shadow:0 0 8px #6ee7b7cc;flex:none}.intro-footer[data-v-74215578]{position:relative;z-index:1;font-size:11px;letter-spacing:.15em;opacity:.55}.form-pane[data-v-74215578]{flex:1 1 54%;display:flex;align-items:center;justify-content:center;padding:48px 56px;background:#fff}.form-inner[data-v-74215578]{width:100%;max-width:340px;animation:fade-up-74215578 .8s .1s cubic-bezier(.22,1,.36,1) both}.form-header[data-v-74215578]{margin-bottom:36px}.form-header h2[data-v-74215578]{margin:0;font-size:28px;font-weight:600;color:#17222e}.form-header p[data-v-74215578]{margin:10px 0 0;font-size:14px;color:#94a3b8}.form-options[data-v-74215578]{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.form-options[data-v-74215578] .el-checkbox__label{color:#64748b;font-size:13px}.login-form[data-v-74215578] .el-input__wrapper{background:#fff;border:1px solid #e2e8f0;border-radius:10px;box-shadow:none!important;padding:4px 14px;transition:border-color .25s}.login-form[data-v-74215578] .el-input__wrapper:hover{border-color:#cbd5e1}.login-form[data-v-74215578] .el-input__wrapper.is-focus{border-color:#059669b3}.login-form[data-v-74215578] .el-input__inner{color:#1f2937;height:44px;line-height:44px;caret-color:#059669}.login-form[data-v-74215578] .el-input__inner::placeholder{color:#9aa7b8}.login-form[data-v-74215578] .el-input__inner:-webkit-autofill,.login-form[data-v-74215578] .el-input__inner:-webkit-autofill:hover,.login-form[data-v-74215578] .el-input__inner:-webkit-autofill:focus{-webkit-text-fill-color:#1f2937;caret-color:#059669;border-radius:10px;box-shadow:0 0 0 1000px #fff inset;transition:background-color 99999s ease-in-out 0s}.login-form[data-v-74215578] .el-input__prefix .el-icon,.login-form[data-v-74215578] .el-input__suffix .el-icon{color:#94a3b8}.login-form[data-v-74215578] .el-form-item__error{color:#dc2626}.login-btn[data-v-74215578]{width:100%;height:50px;border:none;border-radius:10px;cursor:pointer;font-size:15px;font-weight:500;letter-spacing:.4em;text-indent:.4em;color:#fff;background:linear-gradient(135deg,#047857,#0d9f6e 60%,#10b981);box-shadow:0 10px 26px -8px #10b98180;transition:transform .2s,box-shadow .2s,filter .2s}.login-btn[data-v-74215578]:hover:not(:disabled){transform:translateY(-1px);filter:brightness(1.06);box-shadow:0 14px 30px -8px #10b9818c}.login-btn[data-v-74215578]:active:not(:disabled){transform:translateY(0)}.login-btn[data-v-74215578]:disabled{cursor:not-allowed;filter:saturate(.6) brightness(.9)}.loading-dot[data-v-74215578]:after{content:"…"}@media (prefers-reduced-motion: reduce){.aurora[data-v-74215578],.intro-rings[data-v-74215578],.intro-stars[data-v-74215578],.login-card[data-v-74215578],.form-inner[data-v-74215578]{animation:none}}@media (max-width: 860px){.intro-pane[data-v-74215578]{display:none}.form-pane[data-v-74215578]{padding:48px 32px}.login-card[data-v-74215578]{width:460px;min-height:auto}}*{margin:0;padding:0;box-sizing:border-box}html,body{height:100%;font-family:-apple-system,BlinkMacSystemFont,Segoe UI,PingFang SC,Hiragino Sans GB,Microsoft YaHei,Helvetica Neue,Helvetica,Arial,sans-serif;font-size:14px;color:#333}:root{--primary-color: #047857;--primary-light: #059669;--primary-dark: #064e3b;--secondary-color: #facc15;--success-color: #047857;--warning-color: #f59e0b;--error-color: #dc2626;--info-color: #047857;--text-primary: #1f2937;--text-secondary: #6b7280;--border-color: #fef3c7;--bg-color: #fffdf3;--surface-color: #ffffff;--accent-color: #facc15}.el-button--primary{--el-button-bg-color: var(--primary-color);--el-button-border-color: var(--primary-color);--el-button-hover-bg-color: var(--primary-light);--el-button-hover-border-color: var(--primary-light);--el-button-active-bg-color: var(--primary-dark);--el-button-active-border-color: var(--primary-dark);background-color:var(--primary-color)!important;border-color:var(--primary-color)!important}.el-button--primary:hover,.el-button--primary:focus{background-color:var(--primary-light)!important;border-color:var(--primary-light)!important}.el-button--primary:active{background-color:var(--primary-dark)!important;border-color:var(--primary-dark)!important}.el-button--danger{--el-button-bg-color: #f59e0b;--el-button-border-color: #f59e0b;--el-button-hover-bg-color: #fbbf24;--el-button-hover-border-color: #fbbf24;background-color:#f59e0b!important;border-color:#f59e0b!important}.el-button.is-link.el-button--danger,.el-button--danger.is-link,.refund-text-btn{background:transparent!important;border:none!important;color:#dc2626!important;padding:0!important;height:auto!important;box-shadow:none!important}.el-button.is-link.el-button--danger:hover,.el-button--danger.is-link:hover,.refund-text-btn:hover{color:#b91c1c!important;background:transparent!important;border:none!important}.el-button--primary.is-plain{--el-button-text-color: var(--primary-color);--el-button-bg-color: #fef3c7;--el-button-border-color: #fef3c7;--el-button-hover-text-color: #fff;--el-button-hover-bg-color: var(--primary-color);--el-button-hover-border-color: var(--primary-color)}.el-tabs__item.is-active,.el-tabs__item:hover{color:var(--primary-color)}.el-tabs__active-bar{background-color:var(--primary-color)}.el-card,.el-dialog,.el-table{--el-border-color-light: #fef3c7}.el-tag--primary,.el-tag--success{--el-tag-text-color: #047857;--el-tag-bg-color: #fffdf3;--el-tag-border-color: #fef3c7}.el-tag--danger,.el-tag--warning{--el-tag-text-color: #92400e;--el-tag-bg-color: #fef9c3;--el-tag-border-color: #fde68a}.el-input__wrapper.is-focus,.el-select__wrapper.is-focused,.el-textarea__inner:focus{box-shadow:0 0 0 1px var(--primary-color) inset!important}.el-table th.el-table__cell{background:#fffdf3!important;color:#064e3b}.op-btn,.op-btn-primary,.name-link,.class-name,.course-name,.course-name-link,.el-button.is-link.el-button--primary,.el-button--primary.is-link,.el-link.el-link--primary{color:var(--primary-color)!important;background:transparent!important;border-color:transparent!important}.el-button.is-link.el-button--primary:hover,.el-button--primary.is-link:hover,.el-link.el-link--primary:hover,.name-link:hover,.class-name:hover,.course-name:hover,.course-name-link:hover{color:var(--primary-dark)!important}.op-btn-danger,.text-danger{color:#f59e0b!important}.section-toggle:hover{color:var(--primary-color)!important}.el-menu--collapse{width:64px}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-thumb{background:#c1c1c1;border-radius:3px}::-webkit-scrollbar-track{background:#f1f1f1}.page-container{background:#fff;border-radius:8px;padding:20px}.page-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:20px}.page-header h2{font-size:18px;font-weight:600}.table-actions{display:flex;gap:8px}
