.app-layout[data-v-a152338f]{min-height:100vh;background:var(--bg-light)}.app-header[data-v-a152338f]{display:flex;align-items:center;justify-content:space-between;background:#fff;padding:0 24px;height:80px;border-bottom:1px solid #f0f0f0;position:sticky;top:0;z-index:100;box-shadow:0 2px 8px #0000000f}.header-left[data-v-a152338f]{display:flex;align-items:flex-start;gap:12px;min-width:220px;max-height:80px;overflow:hidden;margin-top:20px}.logo-icon[data-v-a152338f]{flex-shrink:0}.logo-img[data-v-a152338f]{display:block;width:36px;height:36px;object-fit:contain}.logo-title[data-v-a152338f]{font-size:16px;font-weight:700;color:var(--text-primary);white-space:nowrap;margin:0;line-height:1.2;text-overflow:ellipsis;max-width:200px}.logo-subtitle[data-v-a152338f]{font-size:12px;color:var(--text-muted);white-space:nowrap;line-height:1.5;margin-top:6px}.header-nav[data-v-a152338f]{display:flex;gap:4px;align-items:center}.nav-item[data-v-a152338f]{display:flex;align-items:center;gap:6px;padding:8px 20px;border-radius:8px;font-size:14px;color:var(--text-secondary);text-decoration:none;transition:all .2s;font-weight:500}.nav-item[data-v-a152338f]:hover{color:var(--primary);background:var(--primary-light)}.nav-item.active[data-v-a152338f]{color:#fff;background:var(--primary)}.nav-icon[data-v-a152338f]{font-size:14px}.header-right[data-v-a152338f]{display:flex;align-items:center;min-width:410px;justify-content:flex-end}.account-divider[data-v-a152338f]{width:1px;height:28px;margin:0 14px;background:#eceff1}.header-divider[data-v-a152338f]{width:1px;height:20px;margin:0 8px;background:#eceff1}.settings-link[data-v-a152338f]{display:inline-flex;align-items:center;gap:5px;padding:6px 10px;border-radius:8px;color:var(--text-secondary);font-size:13px;font-weight:500;text-decoration:none;transition:all .2s}.settings-link[data-v-a152338f]:hover,.settings-link.active[data-v-a152338f]{color:var(--primary);background:var(--primary-light)}.back-workbench[data-v-a152338f]{display:inline-flex;align-items:center;gap:6px;padding:7px 12px;border:none;border-radius:8px;background:#f1f5f4;color:#55606b;font-size:13px;font-weight:600;text-decoration:none;cursor:pointer;transition:background .2s ease,color .2s ease,box-shadow .2s ease}.back-workbench .bw-arrow[data-v-a152338f]{font-size:13px;transition:transform .2s ease}.back-workbench[data-v-a152338f]:hover,.back-workbench[data-v-a152338f]:focus-visible{background:var(--primary-light);color:var(--primary-dark);outline:none}.back-workbench:hover .bw-arrow[data-v-a152338f]{transform:translate(-3px)}.back-workbench[data-v-a152338f]:active{background:var(--primary);color:#fff;box-shadow:0 2px 8px #00b09647}.back-workbench:active .bw-arrow[data-v-a152338f]{transform:translate(-3px)}.account-trigger[data-v-a152338f]{display:flex;align-items:center;gap:9px;min-width:132px;padding:5px 8px;border:0;border-radius:9px;background:transparent;color:var(--text-primary);cursor:pointer;text-align:left;transition:background .2s ease}.account-trigger[data-v-a152338f]:hover,.account-trigger[data-v-a152338f]:focus-visible{background:#f2faf8;outline:none}.user-avatar[data-v-a152338f]{display:flex;align-items:center;justify-content:center;width:34px;height:34px;flex:0 0 34px;border-radius:50%;overflow:hidden;background:var(--primary-light);color:#009a82;font-size:14px;font-weight:700;line-height:1}.user-avatar img[data-v-a152338f]{width:100%;height:100%;object-fit:cover;display:block}.user-copy[data-v-a152338f]{display:flex;min-width:54px;flex-direction:column;line-height:1.25}.user-copy strong[data-v-a152338f]{max-width:88px;overflow:hidden;color:#30303f;font-size:13px;font-weight:600;text-overflow:ellipsis;white-space:nowrap}.user-copy small[data-v-a152338f]{margin-top:3px;color:var(--text-muted);font-size:11px}.account-chevron[data-v-a152338f]{color:#a1aaa8;font-size:10px}.login-entry[data-v-a152338f]{height:36px;padding:0 16px;border-radius:8px;box-shadow:none;font-size:13px;font-weight:600}.account-menu{min-width:150px}.mode-switcher[data-v-a152338f]{display:flex;background:#f5f5f5;border-radius:8px;padding:3px;gap:2px}.mode-btn[data-v-a152338f]{padding:5px 14px;border:none;background:transparent;border-radius:6px;font-size:13px;color:var(--text-secondary);cursor:pointer;transition:all .2s;font-weight:500}.mode-btn[data-v-a152338f]:hover{color:#333}.mode-btn.active[data-v-a152338f],.mode-btn.primary.active[data-v-a152338f]{background:#fff;color:#333;box-shadow:0 1px 4px #0000001a}.mode-btn.primary[data-v-a152338f]{background:var(--primary);color:#fff;box-shadow:0 1px 4px #00b09666}.sub-header[data-v-a152338f]{display:flex;align-items:center;justify-content:space-between;padding:8px 24px;background:#fff;border-bottom:1px solid #f0f0f0;gap:8px}.sub-header-left[data-v-a152338f]{font-size:14px;font-weight:700;color:var(--text-primary)}.sub-header-right[data-v-a152338f]{display:flex;gap:8px}.resource-sub-header[data-v-a152338f]{padding-top:0;padding-bottom:0;min-height:44px}.resource-tabs[data-v-a152338f]{align-self:stretch;display:flex;gap:24px}.resource-tab[data-v-a152338f]{position:relative;display:flex;align-items:center;color:#667085;font-size:14px;font-weight:500;transition:color .2s ease}.resource-tab[data-v-a152338f]:hover,.resource-tab.active[data-v-a152338f]{color:var(--primary)}.resource-tab.active[data-v-a152338f]:after{position:absolute;right:0;bottom:-1px;left:0;height:2px;background:var(--primary);border-radius:2px 2px 0 0;content:""}.app-content[data-v-a152338f]{padding:20px 24px;min-height:calc(100vh - 60px)}@media(max-width:1180px){.app-header[data-v-a152338f]{padding:0 16px}.header-left[data-v-a152338f]{min-width:auto}.logo-subtitle[data-v-a152338f]{display:none}.nav-item[data-v-a152338f]{padding:8px 12px}.header-right[data-v-a152338f]{min-width:auto}.mode-switcher[data-v-a152338f]{display:none}.account-divider[data-v-a152338f]{margin-left:8px}}@media(max-width:760px){.app-header[data-v-a152338f]{height:64px}.header-left[data-v-a152338f]{margin-top:0;align-items:center}.logo-text[data-v-a152338f]{display:none}.header-nav[data-v-a152338f]{flex:1;justify-content:center}.nav-item[data-v-a152338f]{padding:8px;font-size:0}.nav-item .nav-icon[data-v-a152338f]{font-size:17px}.account-divider[data-v-a152338f],.header-divider[data-v-a152338f],.user-copy[data-v-a152338f],.account-chevron[data-v-a152338f]{display:none}.account-trigger[data-v-a152338f]{min-width:auto;padding:4px}.login-entry[data-v-a152338f]{padding:0 11px}.app-content[data-v-a152338f]{padding:14px}}.course-area-tag[data-v-29b35761]{border-radius:10px;font-size:11px;line-height:18px;padding:0 6px}.resource-page[data-v-31594a98]{display:flex;flex-direction:column;height:calc(100vh - 80px);overflow:hidden;gap:12px}.fc-course-flash[data-v-31594a98]{animation:fcCourseFlash-31594a98 .9s ease-out 2}@keyframes fcCourseFlash-31594a98{0%,to{box-shadow:none}50%{box-shadow:0 0 0 3px #00b096b3}}.resource-layout[data-v-31594a98]{position:relative;display:grid;grid-template-columns:260px 1fr;gap:16px;flex:1;min-height:0;overflow:hidden}.left-panel[data-v-31594a98]{gap:4px}.waiting-students[data-v-31594a98]{background:#fff;border-radius:12px;padding:14px}.ws-title[data-v-31594a98]{font-size:14px;font-weight:700;color:var(--text-primary);margin-bottom:12px;display:flex;align-items:center}.ws-title .drag-hint[data-v-31594a98]{font-size:11px;color:var(--text-muted);font-weight:400;margin-left:8px}.student-item[data-v-31594a98]{display:flex;align-items:center;gap:8px;padding:8px 0;border-bottom:1px solid #f0f0f0;cursor:grab;user-select:none}.student-item[data-v-31594a98]:active{cursor:grabbing}.student-item[data-v-31594a98]:last-child{border-bottom:none}.si-info[data-v-31594a98]{flex:1;min-width:0}.si-top[data-v-31594a98]{display:flex;align-items:center;gap:2px;flex-wrap:wrap}.si-name[data-v-31594a98]{font-size:13px;font-weight:600;color:var(--text-primary);min-width:0;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.si-class[data-v-31594a98]{font-size:11px;color:var(--text-muted);margin-left:4px;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.si-top .ant-tag[data-v-31594a98]{max-width:100%;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.si-bottom[data-v-31594a98]{display:flex;flex-wrap:wrap;align-items:center;gap:1px 6px;margin-top:2px;min-width:0}.si-rest[data-v-31594a98],.si-suggest[data-v-31594a98]{font-size:11px;color:var(--text-muted)}.si-rest[data-v-31594a98]{flex:0 0 100%}.si-suggest[data-v-31594a98]{flex:1 1 auto;min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.si-suggest-icon[data-v-31594a98]{flex-shrink:0;font-size:12px;color:var(--text-muted);cursor:pointer}.si-suggest-icon[data-v-31594a98]:hover{color:var(--primary)}.si-suggest-icon.disabled[data-v-31594a98]{cursor:default;opacity:.45}.suggest-pop[data-v-31594a98]{font-size:12px}.sp-title[data-v-31594a98]{font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:2px}.sp-meta[data-v-31594a98]{font-size:11px;color:var(--text-muted);margin-bottom:8px}.sp-hint[data-v-31594a98]{color:var(--primary)}.sp-slots[data-v-31594a98]{display:flex;flex-direction:column;gap:8px;max-height:260px;overflow-y:auto}.sp-slot[data-v-31594a98]{display:flex;gap:8px;padding:4px 6px;border-radius:6px;cursor:pointer;transition:background .15s}.sp-slot[data-v-31594a98]:hover{background:var(--primary-light, #e6fffb)}.sp-slot.applying[data-v-31594a98]{opacity:.55;cursor:wait}.sp-rank[data-v-31594a98]{flex-shrink:0;width:18px;height:18px;border-radius:50%;background:var(--primary-light);color:var(--primary);font-size:11px;display:flex;align-items:center;justify-content:center}.sp-slot-body[data-v-31594a98]{min-width:0}.sp-slot-time[data-v-31594a98]{font-size:12px;font-weight:600;color:var(--text-primary)}.sp-room[data-v-31594a98]{font-weight:400;font-size:11px;color:var(--text-muted);margin-left:6px}.sp-slot-reason[data-v-31594a98]{font-size:11px;color:var(--text-secondary);line-height:1.5;margin-top:2px}.sp-empty[data-v-31594a98],.sp-ai-empty[data-v-31594a98]{font-size:11px;color:var(--text-muted)}.sp-ai[data-v-31594a98]{margin-top:10px;padding-top:8px;border-top:1px dashed #f0f0f0;display:flex;gap:6px;align-items:center}.sp-ai-title[data-v-31594a98]{font-size:11px;font-weight:600;color:var(--primary)}.sp-ai-loading[data-v-31594a98]{font-size:11px;color:var(--text-muted)}.sp-ai-error[data-v-31594a98]{font-size:11px;color:#ff4d4f}.sp-tabs[data-v-31594a98]{display:flex;gap:4px;margin-bottom:8px;border-bottom:1px solid #f0f0f0;padding-bottom:6px}.sp-tab[data-v-31594a98]{border:none;background:transparent;padding:3px 10px;border-radius:12px;font-size:12px;color:#595959;cursor:pointer}.sp-tab.active[data-v-31594a98]{background:#00b0961a;color:var(--primary);font-weight:500}.rp-list[data-v-31594a98]{display:flex;flex-direction:column;gap:6px}.rp-summary[data-v-31594a98]{display:flex;align-items:center;gap:6px;font-size:12px;color:var(--text-main, #1a1a2e);flex-wrap:wrap}.rp-spark[data-v-31594a98]{display:inline-flex;align-items:flex-end;gap:2px;height:24px}.rp-spark i[data-v-31594a98]{display:inline-block;width:5px;border-radius:2px 2px 0 0}.rp-pct[data-v-31594a98]{font-weight:600}.rp-eval-denom[data-v-31594a98]{color:#8c8c8c;font-size:11px;font-weight:400}.rp-trend.up[data-v-31594a98]{color:var(--primary)}.rp-trend.down[data-v-31594a98]{color:#fa8c16}.rp-row[data-v-31594a98]{display:flex;align-items:center;gap:8px;font-size:12px;color:#595959}.rp-date[data-v-31594a98]{color:var(--text-muted, #8c8c8c);min-width:44px}.rp-suggestion[data-v-31594a98]{font-size:12px;color:#595959;background:#fafafa;border-radius:6px;padding:6px 8px;line-height:1.5}.rp-suggestion b[data-v-31594a98]{color:var(--text-main, #1a1a2e);margin-right:6px}.today-reminders[data-v-31594a98]{background:#fff;border-radius:12px;padding:14px;margin-top:8px}.tr-title[data-v-31594a98]{font-size:14px;font-weight:700;color:var(--text-primary);margin-bottom:10px;display:flex;align-items:center;gap:6px}.tr-count[data-v-31594a98]{font-size:12px;font-weight:400;color:var(--text-muted)}.reminder-item[data-v-31594a98]{display:flex;align-items:center;gap:8px;padding:6px 0;font-size:13px;color:#333}.ri-dot[data-v-31594a98]{width:8px;height:8px;border-radius:50%;flex-shrink:0}.ri-dot.red[data-v-31594a98]{background:#ff4d4f}.ri-dot.orange[data-v-31594a98]{background:#ff7a45}.ri-dot.yellow[data-v-31594a98]{background:#faad14}.ri-dot.blue[data-v-31594a98]{background:#1890ff}.reminder-item.clickable[data-v-31594a98]{cursor:pointer}.ri-click-hint[data-v-31594a98]{font-size:11px;color:var(--text-muted);margin-left:6px}.ri-text[data-v-31594a98]{flex:1}.ri-lines[data-v-31594a98]{display:inline-flex;flex-direction:column;vertical-align:middle;line-height:1.45}.ri-sub[data-v-31594a98]{font-size:11px;color:var(--text-muted)}.ri-sub.solo[data-v-31594a98]{font-size:13px;color:#ff7a45}.ri-sub.clickable[data-v-31594a98]{cursor:pointer;text-decoration:underline;text-underline-offset:2px}.ri-sub.clickable[data-v-31594a98]:hover{color:var(--primary)}.ri-num[data-v-31594a98]{width:22px;height:22px;border-radius:50%;display:flex;align-items:center;justify-content:center;font-size:12px;font-weight:700;color:#fff}.ri-num.red[data-v-31594a98]{background:#ff4d4f}.ri-num.orange[data-v-31594a98]{background:#ff7a45}.ri-num.yellow[data-v-31594a98]{background:#faad14}.ri-num.blue[data-v-31594a98]{background:#1890ff}.overdue-block[data-v-31594a98]{margin-top:10px;padding-top:10px;border-top:1px dashed #f0f0f0}.overdue-head[data-v-31594a98]{display:flex;align-items:center;flex-wrap:wrap;gap:6px;font-size:12px;color:#8c8c8c;cursor:pointer}.overdue-head[data-v-31594a98]:hover{color:var(--primary)}.overdue-dot[data-v-31594a98]{width:6px;height:6px;border-radius:50%;background:#bfbfbf;flex-shrink:0}.overdue-title[data-v-31594a98]{font-weight:600;white-space:nowrap}.overdue-sub[data-v-31594a98]{font-size:11px;color:#bfbfbf;white-space:nowrap}.overdue-toggle[data-v-31594a98]{margin-left:auto;font-size:11px;flex-shrink:0}.overdue-body[data-v-31594a98]{margin-top:8px;max-height:260px;overflow-y:auto}.overdue-body .tip-group+.tip-group[data-v-31594a98]{margin-top:6px}.overdue-note[data-v-31594a98]{margin-top:8px;font-size:11px;color:#bfbfbf;line-height:1.5}.overdue-action[data-v-31594a98]{margin-top:8px;width:100%;padding:6px 0;border:1px solid #e8e8e8;border-radius:8px;background:#fff;color:var(--primary);font-size:12px;font-weight:600;cursor:pointer}.overdue-action[data-v-31594a98]:hover{border-color:var(--primary);background:var(--primary-light)}.insufficient-tip[data-v-31594a98]{font-size:12px;line-height:1.9}.insufficient-tip .tip-row[data-v-31594a98]{white-space:nowrap}.insufficient-tip .tip-name[data-v-31594a98]{font-weight:600;margin-right:8px}.insufficient-tip .tip-item[data-v-31594a98]{margin-right:8px}.insufficient-tip .tip-item b[data-v-31594a98]{color:#faad14}.pending-tip .tip-group+.tip-group[data-v-31594a98]{margin-top:6px}.pending-tip .tip-group-head[data-v-31594a98]{font-size:11px;font-weight:600;color:var(--text-muted);margin-bottom:2px}.pending-tip .tip-group-head.today[data-v-31594a98]{color:#ff7a45}.pending-tip .tip-group-head.past[data-v-31594a98]{color:#bfbfbf}.pending-tip .tip-past-mark[data-v-31594a98]{margin-left:4px;padding:0 4px;font-size:10px;font-weight:400;line-height:15px;color:#bfbfbf;border:1px solid #d9d9d9;border-radius:3px}.pending-tip .tip-time[data-v-31594a98]{display:inline-block;min-width:76px;color:var(--text-muted);font-variant-numeric:tabular-nums}.pending-tip .tip-subject[data-v-31594a98]{display:inline-block;max-width:140px;overflow:hidden;text-overflow:ellipsis;vertical-align:bottom}.pending-tip .tip-status[data-v-31594a98]{display:inline-block;margin-left:2px;padding:0 4px;font-size:11px;line-height:16px;border:1px solid currentColor;border-radius:3px;vertical-align:bottom}.pending-tip .tip-status.st-prep[data-v-31594a98]{color:#00b096}.pending-tip .tip-status.st-teach[data-v-31594a98]{color:#1890ff}.pending-tip .tip-status.st-feedback[data-v-31594a98]{color:#fa8c16}.pending-tip .tip-status.st-supervision[data-v-31594a98]{color:#ff4d4f}.pending-tip .tip-more[data-v-31594a98]{margin-top:4px;font-size:11px;color:var(--text-muted)}.main-content[data-v-31594a98]{overflow-y:auto;display:flex;flex-direction:column;gap:16px}.schedule-header[data-v-31594a98]{background:#fff;border-radius:12px;padding:16px 20px}.schedule-title[data-v-31594a98]{font-size:15px;font-weight:700;color:var(--text-primary);margin-bottom:16px}.stat-cards[data-v-31594a98]{display:grid;grid-template-columns:repeat(4,1fr);gap:12px;margin-bottom:16px}.stat-card[data-v-31594a98]{display:flex;align-items:center;gap:12px;padding:12px 16px;background:#fafafa;border-radius:10px}.stat-card.warning[data-v-31594a98]{background:#fff1f0}.stat-label[data-v-31594a98]{font-size:12px;color:var(--text-muted)}.stat-value[data-v-31594a98]{font-size:22px;font-weight:700;color:var(--text-primary)}.stat-value.primary[data-v-31594a98]{color:var(--primary)}.stat-value.blue[data-v-31594a98]{color:#1890ff}.stat-value.red[data-v-31594a98]{color:#ff4d4f}.stat-value.green[data-v-31594a98]{color:#52c41a}.stat-unit[data-v-31594a98]{font-size:13px;color:var(--text-muted)}.view-tabs[data-v-31594a98]{display:flex;align-items:center;justify-content:space-between}.view-tab-group[data-v-31594a98]{display:flex;background:#f5f5f5;border-radius:8px;padding:3px;gap:2px}.view-tab[data-v-31594a98]{padding:5px 16px;border:none;background:transparent;border-radius:6px;font-size:13px;color:var(--text-secondary);cursor:pointer;transition:all .2s;font-weight:500}.view-tab.active[data-v-31594a98]{background:#fff;color:var(--text-primary);box-shadow:0 1px 4px #0000001a}.week-nav[data-v-31594a98]{display:flex;align-items:center;gap:4px;font-size:13px;color:var(--text-secondary)}.week-label[data-v-31594a98]{padding:0 4px}.schedule-table[data-v-31594a98]{background:#fff;border-radius:12px;padding:16px;flex:1}.schedule-table[data-v-31594a98] .fc{font-size:13px}.schedule-table[data-v-31594a98] .fc .fc-toolbar-title,.schedule-table[data-v-31594a98] .fc .fc-header-toolbar{display:none}.schedule-table[data-v-31594a98] .fc .fc-timegrid-slot{height:50px}.schedule-table[data-v-31594a98] .fc .fc-timegrid-slot-label{font-size:12px;color:var(--text-muted)}.schedule-table[data-v-31594a98] .fc .fc-col-header-cell{background:#f5f5f5;padding:10px 8px;font-size:13px;font-weight:600;color:var(--text-secondary);border:none}.schedule-table[data-v-31594a98] .fc .fc-col-header-cell-cushion{color:var(--text-secondary);text-decoration:none}.schedule-table[data-v-31594a98] .fc .fc-timegrid-axis{font-size:12px;color:var(--text-muted)}.schedule-table[data-v-31594a98] .fc .fc-timegrid-slot-lane{border-color:#f0f0f0}.schedule-table[data-v-31594a98] .fc .fc-timegrid-now-indicator-line{border-color:#ff4d4f}.schedule-table[data-v-31594a98] .fc .fc-timegrid-now-indicator-arrow{color:#ff4d4f}.schedule-table[data-v-31594a98] .fc .fc-event{border-radius:8px;border-left:3px solid;padding:2px 0;cursor:pointer;transition:all .2s;border-right:none;border-top:none;border-bottom:none;font-size:11px;overflow:visible}.schedule-table[data-v-31594a98] .fc .fc-event:hover{transform:translateY(-1px);box-shadow:0 4px 12px #0000001a}.schedule-table[data-v-31594a98] .fc .fc-event-main,.schedule-table[data-v-31594a98] .fc .fc-event-main-frame{min-width:0;overflow:hidden}.schedule-table[data-v-31594a98] .fc .fc-edit-subject{min-width:0}.schedule-table[data-v-31594a98] .fc-subject-text{display:-webkit-box;-webkit-line-clamp:1;-webkit-box-orient:vertical;overflow:hidden;overflow-wrap:break-word;white-space:normal}.schedule-table[data-v-31594a98] .fc .fc-edit-time,.schedule-table[data-v-31594a98] .fc .fc-edit-room{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-table[data-v-31594a98] .fc-course-remark{display:flex;align-items:center;gap:3px;min-width:0;margin:1px 0 3px;color:#667085;font-size:10px;line-height:14px}.schedule-table[data-v-31594a98] .fc-course-remark svg{flex:0 0 auto}.schedule-table[data-v-31594a98] .fc-course-remark span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.schedule-table[data-v-31594a98] .fc-course-remark-icon{position:absolute;right:5px;bottom:5px;display:flex;align-items:center;justify-content:center;width:17px;height:17px;border:1px solid rgba(102,112,133,.18);border-radius:5px;background:#ffffffd1;color:#667085;cursor:help}.schedule-table[data-v-31594a98] .fc-course-remark-icon:hover{border-color:#00b09659;background:#fff;color:#008f7a}.schedule-table[data-v-31594a98] .fc .fc-event:hover .fc-delete-btn{opacity:1}.schedule-table[data-v-31594a98] .fc .fc-delete-btn{opacity:.4;transition:opacity .15s,background .15s}.schedule-table[data-v-31594a98] .fc .fc-delete-btn:hover{opacity:1;background:#ff4d4fd9!important}.schedule-table[data-v-31594a98] .fc .fc-event:hover .fc-edit-btn{opacity:1}.schedule-table[data-v-31594a98] .fc .fc-edit-btn{opacity:.4;transition:opacity .15s,background .15s}.schedule-table[data-v-31594a98] .fc .fc-edit-btn:hover{opacity:1;background:#00b096d9!important}.schedule-table[data-v-31594a98] .fc .fc-scrollgrid{border-color:#f0f0f0;border-radius:8px;overflow:hidden}.schedule-table[data-v-31594a98] .fc .fc-scrollgrid-section-header td,.schedule-table[data-v-31594a98] .fc .fc-scrollgrid-section-body td{border:none}.schedule-table[data-v-31594a98] .fc .fc-day-today{background:#f0fffe!important}.schedule-table[data-v-31594a98] .fc .fc-highlight{background:var(--primary-light);border:2px dashed var(--primary)}.schedule-table[data-v-31594a98] .fc .fc-event-dragging{opacity:.8;z-index:999!important}.schedule-table[data-v-31594a98] .fc .fc-timegrid-slot-label-cushion{font-size:12px;color:var(--text-muted)}.schedule-table[data-v-31594a98] .fc .fc-daygrid-day-frame{min-height:80px}.schedule-table[data-v-31594a98] .fc-edit-subject-input{width:100%;height:20px;padding:0 4px;font-size:10px;font-family:inherit;color:#333;background:#fff;border:1px solid #d9d9d9;border-radius:5px;outline:none;box-sizing:border-box;transition:border-color .2s,box-shadow .2s,background .2s}.schedule-table[data-v-31594a98] .fc-edit-subject-input:hover{border-color:#80c8b0;background:#fff}.schedule-table[data-v-31594a98] .fc-edit-subject-input:focus{border-color:var(--primary);background:#fff;box-shadow:0 0 0 2px #00b09626}.schedule-table[data-v-31594a98] .fc-edit-time-input{width:58px;height:20px;padding:0 4px;font-size:10px;font-family:inherit;color:#333;background:#f8fdfb;border:1px solid #b8dfd0;border-radius:5px;outline:none;box-sizing:border-box;transition:border-color .2s,box-shadow .2s,background .2s;-webkit-appearance:none}.schedule-table[data-v-31594a98] .fc-edit-time-input:hover{border-color:#80c8b0;background:#fff}.schedule-table[data-v-31594a98] .fc-edit-time-input:focus{border-color:var(--primary);background:#fff;box-shadow:0 0 0 2px #00b09626}.schedule-table[data-v-31594a98] .fc-edit-time-input::-webkit-calendar-picker-indicator{opacity:.6;cursor:pointer;padding:0;margin:0 0 0 2px;width:12px;height:12px}.schedule-table[data-v-31594a98] .fc-edit-time-input::-webkit-inner-spin-button,.schedule-table[data-v-31594a98] .fc-edit-time-input::-webkit-clear-button{display:none}.schedule-table[data-v-31594a98] .fc-edit-room-input{width:100%;height:20px;padding:0 5px;font-size:10px;font-family:inherit;color:#333;background:#f8fdfb;border:1px solid #b8dfd0;border-radius:5px;outline:none;box-sizing:border-box;transition:border-color .2s,box-shadow .2s,background .2s}.schedule-table[data-v-31594a98] .fc-edit-room-input:hover,.schedule-table[data-v-31594a98] .fc-edit-room-select:hover{border-color:#80c8b0;background:#fff}.schedule-table[data-v-31594a98] .fc-edit-room-input:focus,.schedule-table[data-v-31594a98] .fc-edit-room-select:focus{border-color:var(--primary);background:#fff;box-shadow:0 0 0 2px #00b09626}.schedule-table[data-v-31594a98] .fc-edit-room-select{width:100%;height:20px;padding:0 4px;font-size:10px;font-family:inherit;color:#333;background:#fff;border:1px solid #d9d9d9;border-radius:5px;outline:none;box-sizing:border-box;cursor:pointer;transition:border-color .2s,box-shadow .2s,background .2s}.student-item .wl-check[data-v-31594a98]{margin-right:2px;flex-shrink:0}.waiting-float-bar[data-v-31594a98]{position:sticky;bottom:8px;margin-top:10px;display:flex;align-items:center;gap:10px;background:#262626;color:#fff;border-radius:8px;padding:8px 12px;font-size:12px}.waiting-float-bar .wfb-text[data-v-31594a98]{flex:1;overflow:hidden;white-space:nowrap;text-overflow:ellipsis}.cancel-reason-input{width:100%;max-width:300px;display:block;margin:0 auto;border:1px solid #d9d9d9;border-radius:6px;padding:8px 12px;font-size:13px;line-height:1.5;background:#fff;box-sizing:border-box;outline:none;font-family:inherit;transition:border-color .2s,box-shadow .2s}.cancel-reason-input:hover{border-color:var(--primary)}.cancel-reason-input:focus{border-color:var(--primary);box-shadow:0 0 0 2px #00b0961f}.cancel-reason-input::placeholder{color:#bfbfbf}.fc-cancel-tooltip{position:fixed;z-index:9999;background:#141821eb;color:#fff;border-radius:8px;padding:8px 12px;max-width:260px;font-size:12px;line-height:1.6;box-shadow:0 4px 16px #00000040;pointer-events:none;backdrop-filter:blur(4px);word-break:break-word}.fc-cancel-tooltip-title{font-size:11px;color:#fff9;margin-bottom:3px;letter-spacing:.5px}.fc-cancel-tooltip-content{color:#fff}.fc-cancel-tooltip:after{content:"";position:absolute;left:50%;margin-left:-5px;border:5px solid transparent}.fc-cancel-tooltip.tip-above:after{top:100%;border-top-color:#141821eb}.fc-cancel-tooltip.tip-below:after{bottom:100%;border-bottom-color:#141821eb}.create-course-drawer-root .ant-drawer-mask{background:#17203375}.create-course-drawer-root .ant-drawer-content{box-shadow:-10px 0 32px #10182829}.create-course-drawer-root .ant-drawer-content-wrapper{max-width:100vw}.create-course-drawer-root .ant-drawer-header{min-height:72px;padding:14px 24px 10px;border-bottom:0}.create-course-drawer-root .ant-drawer-body{padding:0 24px 12px}.create-course-drawer-root .ant-drawer-footer{padding:10px 24px;border-top-color:#eaecf0}.create-course-drawer-root .ant-select-selection-item{font-size:13px}.create-course-drawer-root .ant-select-multiple .ant-select-selection-item{border-color:#a9e5dc;border-radius:12px;background:#e9f8f6;color:#008c77}.copy-phone-btn{display:inline-block;padding:6px 28px;border:none;border-radius:6px;background:var(--primary);color:#fff;font-size:14px;line-height:1.6;cursor:pointer;transition:background .2s}.copy-phone-btn:hover{background:#009d86}.copy-phone-btn:active{background:#008c77}*{box-sizing:border-box;margin:0;padding:0}body{font-family:-apple-system,BlinkMacSystemFont,PingFang SC,Microsoft YaHei,sans-serif;background-color:#f5f6fa;color:#333}:root{--primary: #00b096;--primary-light: #e6f7f4;--primary-dark: #009a82;--orange: #ff7a45;--blue: #1890ff;--purple: #722ed1;--green: #52c41a;--red: #ff4d4f;--text-primary: #1a1a2e;--text-secondary: #666;--text-muted: #999;--border: #e8e8e8;--bg-card: #fff;--bg-light: #f5f6fa}.ant-layout{min-height:100vh}::-webkit-scrollbar{width:6px;height:6px}::-webkit-scrollbar-track{background:#f1f1f1}::-webkit-scrollbar-thumb{background:#ccc;border-radius:3px}::-webkit-scrollbar-thumb:hover{background:#aaa}.workflow-nav-bar{display:flex;align-items:center;justify-content:space-between;background:#fff;border-radius:12px;padding:14px 20px;flex-shrink:0}.wnb-steps{display:flex;align-items:center;flex:1;gap:0}.wnb-step{display:flex;align-items:center;gap:6px;cursor:pointer;position:relative;padding:4px 8px;border-radius:8px;transition:all .2s}.wnb-step:hover{background:#f5f6fa}.wnb-step.active{background:var(--primary-light)}.wnbs-dot{width:26px;height:26px;border-radius:50%;background:#f0f0f0;color:var(--text-muted);display:flex;align-items:center;justify-content:center;font-size:11px;font-weight:700;flex-shrink:0;transition:all .2s}.wnbs-dot.active{background:var(--primary);color:#fff}.wnbs-dot.passed{background:var(--green);color:#fff}.wnbs-info{min-width:0}.wnbs-title{font-size:12px;font-weight:600;color:var(--text-primary);white-space:nowrap}.wnbs-desc{font-size:10px;color:var(--text-muted);white-space:nowrap;display:none}.wnb-step.active .wnbs-desc{display:block}.wnbs-line{width:32px;height:2px;background:#f0f0f0;margin:0 4px;flex-shrink:0}.wnbs-line.passed{background:var(--green)}.wnb-actions{display:flex;gap:6px;flex-shrink:0;margin-left:16px}.panel-title{font-size:14px;font-weight:700;color:var(--text-primary);padding:0 4px 8px;display:flex;align-items:center}.left-panel{display:flex;flex-direction:column;gap:8px;overflow-y:auto}.lesson-list-section{background:#fff;border-radius:12px;padding:14px;flex:1;overflow-y:auto}.lls-header{display:flex;align-items:center;justify-content:space-between;margin-bottom:10px}.lls-title{font-size:13px;font-weight:700;color:var(--text-primary)}.lesson-item{padding:10px 8px;border-radius:10px;cursor:pointer;transition:all .2s;border:1px solid transparent;margin-bottom:4px}.lesson-item:hover{background:#f5f6fa}.lesson-item.active{background:var(--primary-light);border-color:var(--primary)}.li-top{display:flex;align-items:center;gap:8px;margin-bottom:6px}.li-info{flex:1;min-width:0}.li-name{font-size:13px;font-weight:600;color:var(--text-primary);margin-bottom:2px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.li-meta{display:flex;align-items:center;gap:4px;flex-wrap:nowrap;min-width:0;overflow:hidden}.li-meta .ant-tag,.li-meta .subject-chip{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.li-meta .record-tag{flex-shrink:0}.li-status{flex-shrink:0;display:inline-flex;align-items:center}.status-pill{display:inline-flex;align-items:center;gap:3px;padding:2px 6px;border-radius:10px;font-size:10px;line-height:16px;white-space:nowrap}.status-pill.ready{color:#389e0d;background:#f6ffed}.status-pill.draft{color:#1677ff;background:#e6f4ff}.status-pill.pending{color:#8c8c8c;background:#f5f5f5}.li-bottom{display:flex;justify-content:space-between;font-size:11px;color:var(--text-muted);padding-left:40px}.list-more{margin-top:6px;padding:8px 0;border:1px dashed var(--border);border-radius:10px;text-align:center;font-size:12px;color:var(--primary);cursor:pointer;transition:all .2s}.list-more:hover{border-color:var(--primary);background:var(--primary-light)}
