.modal-header[data-v-ef879ffe]{background:linear-gradient(135deg,#1e6fff,#3d8aff);padding:.7rem 1rem;display:flex;align-items:center;justify-content:space-between;flex-shrink:0}.modal-title-group[data-v-ef879ffe]{display:flex;align-items:center;gap:.8rem}.modal-title[data-v-ef879ffe]{color:#fff;font-size:.9rem;font-weight:600;letter-spacing:.025rem;white-space:nowrap}.batch-setting[data-v-ef879ffe]{display:flex;align-items:center;gap:.4rem}.btn-batch-set[data-v-ef879ffe]{height:1.4rem;padding:0 .6rem;border-radius:.3rem;border:.05rem solid hsla(0,0%,100%,.4);background:hsla(0,0%,100%,.15);color:#fff;font-size:.6rem;font-weight:500}.btn-batch-set[data-v-ef879ffe]:hover{background:hsla(0,0%,100%,.25);border-color:hsla(0,0%,100%,.55)}.btn-batch-set[data-v-ef879ffe]:active{transform:scale(.97)}.batch-hint[data-v-ef879ffe]{font-size:.55rem;color:hsla(0,0%,100%,.7);white-space:nowrap}.batch-hint strong[data-v-ef879ffe]{color:#fff;font-weight:600}.modal-header-right[data-v-ef879ffe]{display:flex;align-items:center;gap:.8rem}.filter-group[data-v-ef879ffe]{display:flex;align-items:center;gap:.6rem}.filter-group[data-v-ef879ffe] .ant-checkbox-wrapper{color:hsla(0,0%,100%,.85);font-size:.65rem;user-select:none}.filter-group[data-v-ef879ffe] .ant-checkbox-wrapper:hover{color:#fff}.filter-group[data-v-ef879ffe] .ant-checkbox-inner{border-color:hsla(0,0%,100%,.5);background:transparent}.filter-group[data-v-ef879ffe] .ant-checkbox-checked .ant-checkbox-inner{background:#fff;border-color:#fff}.filter-group[data-v-ef879ffe] .ant-checkbox-checked .ant-checkbox-inner:after{border-color:#1e6fff}.modal-close-btn[data-v-ef879ffe]{border-color:hsla(0,0%,100%,.3)!important;background:hsla(0,0%,100%,.15)!important;color:#fff!important}.modal-close-btn[data-v-ef879ffe]:hover{background:hsla(0,0%,100%,.25)!important}.modal-body[data-v-ef879ffe]{flex:1;overflow:auto;-webkit-overflow-scrolling:touch;min-height:10rem;max-height:calc(85vh - 8.5rem)}.schedule-table[data-v-ef879ffe]{width:100%;border-collapse:collapse;table-layout:auto;font-size:.7rem}.schedule-table th[data-v-ef879ffe]{position:sticky;top:0;background:#f7f9fc;z-index:2;font-weight:600;color:#5a6577;text-align:center;padding:.6rem .4rem;border-bottom:.1rem solid #e8ecf1;white-space:nowrap;font-size:.65rem}.schedule-table th.col-time[data-v-ef879ffe]{width:3.4rem}.schedule-table td[data-v-ef879ffe]{padding:.5rem .4rem;border-bottom:.05rem solid #d0d0d0;color:#333;font-size:.7rem}.td-time[data-v-ef879ffe]{text-align:center;color:#666;font-size:.65rem;font-variant-numeric:tabular-nums}.td-station[data-v-ef879ffe]{text-align:center;position:relative;cursor:pointer;transition:background .12s;height:3rem;vertical-align:middle}.td-station[data-v-ef879ffe]:hover{background:#fff3e0}.cell-student[data-v-ef879ffe]{display:flex;flex-direction:column;align-items:center;justify-content:center;padding:.1rem 0;line-height:1.3;min-height:2.4rem}.cell-batch[data-v-ef879ffe]{font-size:.5rem;color:#1e6fff;line-height:1.2;min-height:.6rem;margin-bottom:.05rem}.cell-primary[data-v-ef879ffe]{font-weight:500;color:#333;font-size:.7rem;line-height:1.3;min-height:.9rem}.cell-secondary[data-v-ef879ffe]{font-size:.55rem;color:#666;line-height:1.3;min-height:.7rem;margin-top:.05rem}.cell-empty[data-v-ef879ffe]{color:#ccc;font-size:.65rem;display:flex;align-items:center;justify-content:center;min-height:2.4rem}.td-station.selected-cell[data-v-ef879ffe]{background:#d35400!important}.td-station.selected-cell .cell-batch[data-v-ef879ffe]{color:hsla(0,0%,100%,.75)}.td-station.selected-cell .cell-primary[data-v-ef879ffe]{color:#fff;font-weight:600}.td-station.selected-cell .cell-secondary[data-v-ef879ffe]{color:hsla(0,0%,100%,.8)}.schedule-table tbody tr:nth-child(odd) td[data-v-ef879ffe]:not(.selected-cell){background:#fff}.schedule-table tbody tr:nth-child(2n) td[data-v-ef879ffe]:not(.selected-cell){background:#f5f7fa}.schedule-table tbody tr:hover td[data-v-ef879ffe]:not(.selected-cell){background:#fff3e0}.th-station[data-v-ef879ffe]{writing-mode:horizontal-tb;line-height:1.3}.th-room[data-v-ef879ffe]{font-weight:600;color:#1e6fff;font-size:.65rem}.th-skill[data-v-ef879ffe]{font-weight:400;color:#8c939d;font-size:.55rem;margin-top:.1rem}.empty-data[data-v-ef879ffe]{text-align:center;padding:3rem 0;color:#ccc;font-size:.7rem}.modal-footer[data-v-ef879ffe]{padding:.6rem 1rem;display:flex;align-items:center;justify-content:space-between;border-top:.05rem solid #f0f2f5;flex-shrink:0;background:#fff}.pagination[data-v-ef879ffe]{display:flex;align-items:center;gap:.3rem}.page-info[data-v-ef879ffe]{font-size:.6rem;color:#888;white-space:nowrap}.page-nav[data-v-ef879ffe]{display:flex;align-items:center;gap:.2rem}.page-btn[data-v-ef879ffe]{min-width:1.6rem;height:1.6rem;border-radius:.3rem;border:.05rem solid #e0e4ea;background:#fff;cursor:pointer;display:flex;align-items:center;justify-content:center;font-size:.65rem;color:#5a6577;transition:all .12s;padding:0 .4rem;user-select:none;outline:none}.page-btn[data-v-ef879ffe]:hover:not(:disabled){border-color:#1e6fff;color:#1e6fff;background:#f0f6ff}.page-btn[data-v-ef879ffe]:active:not(:disabled){transform:scale(.95)}.page-btn[data-v-ef879ffe]:disabled{opacity:.3;cursor:not-allowed}.page-current[data-v-ef879ffe]{font-size:.65rem;color:#1e6fff;font-weight:600;min-width:1rem;text-align:center}.page-sep[data-v-ef879ffe]{font-size:.6rem;color:#ccc;margin:0 .05rem}.page-total[data-v-ef879ffe]{font-size:.65rem;color:#5a6577}.page-size[data-v-ef879ffe]{font-size:.6rem;color:#999;margin-left:.4rem;display:flex;align-items:center;gap:.2rem;padding-left:.5rem;border-left:.05rem solid #eee}.footer-actions[data-v-ef879ffe]{display:flex;gap:.5rem}.modal-body[data-v-ef879ffe]::-webkit-scrollbar{width:.3rem;height:.3rem}.modal-body[data-v-ef879ffe]::-webkit-scrollbar-track{background:transparent}.modal-body[data-v-ef879ffe]::-webkit-scrollbar-thumb{background:#d9d9d9;border-radius:.15rem}.modal-body[data-v-ef879ffe]::-webkit-scrollbar-thumb:hover{background:#bbb}.batch-arrange-modal .ant-modal-body{padding:0;display:flex;flex-direction:column;max-height:85vh;overflow:hidden}.batch-arrange-modal .ant-modal-header{display:none}.batch-arrange-modal .ant-modal-content{border-radius:.6rem;overflow:hidden}