.schedule-table .view-toggle[data-v-08d04753]{-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;margin-bottom:16px}.schedule-table .view-toggle .week-navigator[data-v-08d04753],.schedule-table .view-toggle[data-v-08d04753]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center}.schedule-table .view-toggle .week-navigator[data-v-08d04753]{gap:16px}.schedule-table .view-toggle .week-navigator .week-label[data-v-08d04753]{font-size:16px;font-weight:600;min-width:80px;text-align:center}.schedule-table .view-toggle .date-range-selector[data-v-08d04753]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:12px}.schedule-table .view-toggle .date-range-selector .date-range-label[data-v-08d04753]{font-size:14px;font-weight:600;color:#333;white-space:nowrap}.schedule-table .course-type-legend[data-v-08d04753]{display:-webkit-box;display:-ms-flexbox;display:flex;-ms-flex-wrap:wrap;flex-wrap:wrap;gap:12px;margin-bottom:16px;padding:12px;background:#f5f5f5;border-radius:4px}.schedule-table .course-type-legend .legend-item[data-v-08d04753]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-align:center;-ms-flex-align:center;align-items:center;gap:6px;white-space:nowrap}.schedule-table .course-type-legend .legend-item .legend-color[data-v-08d04753]{width:16px;height:16px;border-radius:3px;-ms-flex-negative:0;flex-shrink:0}.schedule-table .course-type-legend .legend-item .legend-text[data-v-08d04753]{font-size:12px;color:#666}.schedule-table .timetable-container[data-v-08d04753]{overflow-x:auto}.schedule-table .timetable-container .timetable-wrapper[data-v-08d04753]{position:relative;display:block;overflow-x:auto;min-width:100%}.schedule-table .timetable-container .timetable[data-v-08d04753]{border-collapse:collapse;font-size:13px}.schedule-table .timetable-container .timetable td[data-v-08d04753],.schedule-table .timetable-container .timetable th[data-v-08d04753]{border:1px solid #e8e8e8;padding:8px;text-align:center;vertical-align:top}.schedule-table .timetable-container .timetable th[data-v-08d04753]{background:#fafafa;font-weight:600;color:#333;height:40px;-webkit-box-sizing:border-box;box-sizing:border-box;min-width:140px}.schedule-table .timetable-container .timetable .col-index[data-v-08d04753]{width:40px;min-width:40px;max-width:40px;background:#fafafa;font-weight:600}.schedule-table .timetable-container .timetable .col-timeslot[data-v-08d04753]{width:80px;min-width:80px;max-width:80px;background:#fafafa;font-weight:500;white-space:nowrap}.schedule-table .timetable-container .timetable .col-day[data-v-08d04753]{width:auto;min-width:140px;min-height:100px;height:auto;-webkit-box-sizing:border-box;box-sizing:border-box;padding:4px;vertical-align:top;position:relative;overflow:visible}.schedule-table .timetable-container .timetable .col-day .courses-container[data-v-08d04753]{display:grid;grid-auto-rows:100px;gap:4px;min-height:100px;height:auto;position:relative;overflow:visible;z-index:1;width:100%}.schedule-table .timetable-container .timetable .col-day .courses-container .course-block[data-v-08d04753]{-ms-flex-negative:0;flex-shrink:0;min-width:140px;min-height:80px;border-radius:4px;padding:6px;font-size:11px;overflow:hidden;cursor:pointer;-webkit-transition:-webkit-transform .2s,-webkit-box-shadow .2s;transition:-webkit-transform .2s,-webkit-box-shadow .2s;transition:transform .2s,box-shadow .2s;transition:transform .2s,box-shadow .2s,-webkit-transform .2s,-webkit-box-shadow .2s;color:#333;line-height:1.3;text-align:left;-webkit-box-sizing:border-box;box-sizing:border-box;word-wrap:break-word;word-break:break-word;position:relative}.schedule-table .timetable-container .timetable .col-day .courses-container .course-block.multi-slot[data-v-08d04753]{z-index:20;pointer-events:auto}.schedule-table .timetable-container .timetable .col-day .courses-container .course-block[data-v-08d04753]:hover{-webkit-transform:scale(1.02);transform:scale(1.02);-webkit-box-shadow:0 2px 8px rgba(0,0,0,.15);box-shadow:0 2px 8px rgba(0,0,0,.15);z-index:100}.schedule-table .timetable-container .timetable .col-day .courses-container .course-block.course-placeholder[data-v-08d04753]{visibility:hidden;pointer-events:none;-ms-flex-negative:0;flex-shrink:0}.schedule-table .timetable-container .timetable .col-day .courses-container .course-block .course-header[data-v-08d04753]{display:-webkit-box;display:-ms-flexbox;display:flex;-webkit-box-pack:justify;-ms-flex-pack:justify;justify-content:space-between;-webkit-box-align:center;-ms-flex-align:center;align-items:center;margin-bottom:1px}.schedule-table .timetable-container .timetable .col-day .courses-container .course-block .course-header .course-code[data-v-08d04753]{font-weight:600;font-size:11px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-table .timetable-container .timetable .col-day .courses-container .course-block .course-header .claim-org[data-v-08d04753]{background:rgba(0,0,0,.1);padding:1px 3px;border-radius:2px;font-size:9px;-ms-flex-negative:0;flex-shrink:0;margin-left:2px}.schedule-table .timetable-container .timetable .col-day .courses-container .course-block .course-teacher[data-v-08d04753]{font-size:10px;margin-bottom:1px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-table .timetable-container .timetable .col-day .courses-container .course-block .course-track-label[data-v-08d04753]{font-size:10px;font-weight:600;color:#1890ff;margin-bottom:2px;background:#e6f7ff;padding:1px 6px;border-radius:3px;display:inline-block}.schedule-table .timetable-container .timetable .col-day .courses-container .course-block .course-time[data-v-08d04753],.schedule-table .timetable-container .timetable .col-day .courses-container .course-block .course-weeks[data-v-08d04753]{font-size:10px;opacity:.85;margin-bottom:1px}.schedule-table .timetable-container .timetable .col-day .courses-container .course-block .course-room[data-v-08d04753]{font-size:10px;opacity:.85}.schedule-table .timetable-container .timetable .break-row .break-cell[data-v-08d04753]{background:#f0f0f0;font-weight:500;color:#666;padding:12px;text-align:center;height:100%}.schedule-table .timetable-container .timetable .time-slot-row[data-v-08d04753]{height:auto;min-height:100px;overflow:visible}.schedule-table .timetable-container .timetable .time-slot-row[data-v-08d04753]:hover{background:#fafafa}