.time-page[data-v-21b5fcac]{display:flex;flex-direction:column;gap:0}.toolbar-card[data-v-21b5fcac],.schedule-card[data-v-21b5fcac]{border:1px solid #e5ebf3;border-radius:16px;background:#fff;box-shadow:0 10px 24px #0f172a0a}.toolbar-card[data-v-21b5fcac]{padding:14px 18px;border-bottom:none;border-bottom-left-radius:0;border-bottom-right-radius:0}.toolbar-main[data-v-21b5fcac]{display:flex;align-items:center;justify-content:space-between;gap:16px}.toolbar-group[data-v-21b5fcac]{display:flex;align-items:center;gap:12px}.toolbar-date[data-v-21b5fcac]{display:flex;align-items:center;justify-content:center;flex:1;min-width:0}.toolbar-date-range[data-v-21b5fcac]{display:inline-block;min-width:240px;text-align:center}.schedule-card[data-v-21b5fcac]{position:relative;min-height:420px;overflow:visible;border-top:none;border-top-left-radius:0;border-top-right-radius:0}.toolbar-today-week-btn[data-v-21b5fcac]{padding:0 10px;border-radius:8px;transition:color .18s ease,border-color .18s ease,background-color .18s ease,box-shadow .18s ease}.toolbar-today-week-btn--active[data-v-21b5fcac]{color:#1677ff;border-color:#91caff;background:#f5f9ff;box-shadow:inset 0 0 0 1px #ffffffb8}.toolbar-today-week-btn--inactive[data-v-21b5fcac]{color:#222}.schedule-area-content[data-v-21b5fcac]{display:block;width:100%}.schedule-loading-mask[data-v-21b5fcac]{position:absolute;top:0;right:0;bottom:0;left:0;z-index:50;min-height:420px;background:#ffffff47}.schedule-loading-float[data-v-21b5fcac]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:1200;display:flex;align-items:center;justify-content:center;pointer-events:none}.schedule-loading-card[data-v-21b5fcac]{display:inline-flex;flex-direction:column;align-items:center;gap:12px;padding:20px 24px;border-radius:14px;background:#fffffffa;border:1px solid rgba(22,119,255,.08);box-shadow:0 18px 40px #0f172a24}.schedule-loading-text[data-v-21b5fcac]{color:#1f2937;font-size:14px;font-weight:600}.schedule-sticky-shell[data-v-21b5fcac]{position:sticky;top:8px;z-index:40;background:#fff;box-shadow:0 10px 22px #0f172a0f}.schedule-summary[data-v-21b5fcac]{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:12px 16px 10px;border-bottom:1px solid #edf2f7;background:#fffffffa;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px)}.schedule-summary__left[data-v-21b5fcac],.schedule-summary__right[data-v-21b5fcac]{display:flex;flex-wrap:wrap;align-items:center;gap:12px}.schedule-summary__left[data-v-21b5fcac]{color:#1f2937;font-size:13px;font-weight:600}.summary-accent[data-v-21b5fcac]{width:4px;height:16px;border-radius:999px;background:#1677ff}.legend-item[data-v-21b5fcac]{display:inline-flex;align-items:center;gap:6px;color:#4b5563;font-size:12px}.legend-item__bar[data-v-21b5fcac]{display:inline-block;width:18px;height:4px;border-radius:999px}.legend-item__icon[data-v-21b5fcac]{position:relative;display:inline-block;width:12px;height:12px;border-radius:3px;background:#fff;border:1px solid #cbd5e1}.legend-item__icon--trial[data-v-21b5fcac]:after{position:absolute;left:2px;top:2px;width:6px;height:6px;background:#b5bfcf;border-radius:1px;content:""}.legend-item__icon--danger[data-v-21b5fcac]{border-color:#ff7875}.legend-item__icon--danger[data-v-21b5fcac]:after{position:absolute;left:1px;right:1px;top:50%;height:2px;background:#ff4d4f;transform:translateY(-50%);content:""}.schedule-header-scroll[data-v-21b5fcac]{overflow-x:auto;overflow-y:hidden;background:#fff}.schedule-header-track[data-v-21b5fcac]{position:relative;width:max-content;min-width:100%}.schedule-floating-date-layer[data-v-21b5fcac]{position:absolute;top:0;left:0;z-index:4;width:100%;height:48px;min-height:48px;pointer-events:none}.schedule-floating-chip[data-v-21b5fcac]{position:absolute;top:50%;left:0;box-sizing:border-box;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;min-height:44px;padding:6px 12px 7px;border:1px solid #cdd9ea;border-radius:8px;background:#fff;box-shadow:0 1px 2px #0f172a0f,0 0 0 1px #fffc inset;text-align:center;isolation:isolate;transform:translateY(-50%)}.schedule-floating-chip__line[data-v-21b5fcac]{display:flex;flex-wrap:wrap;align-items:baseline;justify-content:center;gap:6px;line-height:1.15}.schedule-floating-chip__date[data-v-21b5fcac]{color:#0f172a;font-size:13px;font-weight:700;letter-spacing:-.02em}.schedule-floating-chip__week[data-v-21b5fcac]{color:#64748b;font-size:12px;font-weight:600}.schedule-floating-chip__meta[data-v-21b5fcac]{margin:0;color:#94a3b8;font-size:11px;font-weight:500;line-height:1.2;letter-spacing:.02em}.schedule-floating-chip__meta strong[data-v-21b5fcac]{color:#64748b;font-weight:700}.schedule-floating-chip--today[data-v-21b5fcac]{border-color:#91caff;background:#f5f9ff;box-shadow:0 1px 3px #1677ff1f,inset 0 0 0 1px #ffffffe6}.schedule-floating-chip--today[data-v-21b5fcac]:before{content:"";position:absolute;top:0;left:50%;width:34px;height:3px;border-radius:0 0 4px 4px;background:#1677ff;transform:translate(-50%)}.schedule-floating-chip--today .schedule-floating-chip__date[data-v-21b5fcac]{color:#0958d9}.schedule-floating-chip--today .schedule-floating-chip__week[data-v-21b5fcac],.schedule-floating-chip--today .schedule-floating-chip__meta[data-v-21b5fcac],.schedule-floating-chip--today .schedule-floating-chip__meta strong[data-v-21b5fcac]{color:#1677ff}.schedule-floating-chip--today .schedule-floating-chip__meta[data-v-21b5fcac]{opacity:.9}.schedule-column-header__title--ghost[data-v-21b5fcac],.schedule-column-header__count--ghost[data-v-21b5fcac]{visibility:hidden}.schedule-header-grid[data-v-21b5fcac]{display:grid;width:max-content;min-width:100%}.schedule-board[data-v-21b5fcac]{overflow-x:auto;overflow-y:visible;background:#fff}.schedule-header-scroll[data-v-21b5fcac],.schedule-board[data-v-21b5fcac]{scrollbar-width:thin;scrollbar-color:#b8c9de #eef2f8}.schedule-header-scroll[data-v-21b5fcac]::-webkit-scrollbar,.schedule-board[data-v-21b5fcac]::-webkit-scrollbar{height:8px}.schedule-header-scroll[data-v-21b5fcac]::-webkit-scrollbar-track,.schedule-board[data-v-21b5fcac]::-webkit-scrollbar-track{margin:0 4px;border-radius:999px;background:#eef2f8}.schedule-header-scroll[data-v-21b5fcac]::-webkit-scrollbar-thumb,.schedule-board[data-v-21b5fcac]::-webkit-scrollbar-thumb{border-radius:999px;background:linear-gradient(180deg,#c5d4ea,#a8bad4);box-shadow:inset 0 1px #ffffff73}.schedule-header-scroll[data-v-21b5fcac]::-webkit-scrollbar-thumb:hover,.schedule-board[data-v-21b5fcac]::-webkit-scrollbar-thumb:hover{background:linear-gradient(180deg,#a8bad4,#8fa3bd)}.schedule-grid[data-v-21b5fcac]{display:grid;width:max-content;min-width:100%;position:relative}.schedule-time-header[data-v-21b5fcac],.schedule-column-header[data-v-21b5fcac]{height:48px;border-right:1px solid #dde5f0;border-bottom:1px solid #dde5f0;background:#eff4fb}.schedule-time-header[data-v-21b5fcac]{position:sticky;left:0;z-index:20;background:#fff;box-shadow:4px 0 14px -6px #0f172a1f}.schedule-column-header[data-v-21b5fcac]{display:flex;align-items:center;justify-content:center;gap:8px;color:#374151;font-size:14px;font-weight:700}.schedule-column-header--active[data-v-21b5fcac]{color:#1677ff;box-shadow:inset 0 3px #1677ff}.schedule-column-header--day-divider[data-v-21b5fcac]{border-right-width:2px;border-right-color:#a8b8cc}.schedule-column-header__date[data-v-21b5fcac]{color:#6b7280;font-weight:600}.schedule-column-header__count[data-v-21b5fcac]{color:#6b7280;font-size:13px;font-weight:600}.schedule-time-axis[data-v-21b5fcac]{position:sticky;left:0;z-index:20;border-right:1px solid #dde5f0;background:#fff;box-shadow:4px 0 14px -6px #0f172a1f}.schedule-time-axis__label[data-v-21b5fcac]{position:absolute;left:0;right:0;transform:translateY(-50%);color:#1f2937;font-size:14px;text-align:center;z-index:6}.schedule-time-axis__label[data-v-21b5fcac]:before{position:absolute;left:0;right:0;top:50%;border-top:1px solid #dde5f0;content:"";z-index:0}.schedule-time-axis__label--first[data-v-21b5fcac]{transform:translateY(-50%)}.schedule-time-axis__label--muted .schedule-time-axis__text[data-v-21b5fcac]{color:#1f293738}.schedule-time-axis__text[data-v-21b5fcac]{position:relative;z-index:1;display:inline-block;padding:0 10px;background:#fff}.schedule-column[data-v-21b5fcac]{position:relative;border-right:1px solid #dde5f0;background:#fff}.schedule-column--active[data-v-21b5fcac]{background:#f3f9ff}.schedule-column--day-divider[data-v-21b5fcac]{border-right-width:2px;border-right-color:#a8b8cc}.schedule-column__body[data-v-21b5fcac]{position:relative}.schedule-column__line[data-v-21b5fcac]{position:absolute;left:0;right:0;border-top:1px solid #dde5f0}.schedule-now-axis[data-v-21b5fcac]{position:absolute;z-index:8;pointer-events:none;left:0;right:0}.schedule-now-axis__text[data-v-21b5fcac]{position:absolute;top:-7px;left:-3px;right:-4px;color:#ff4d4f;font-size:12px;font-weight:600;line-height:1.2;text-align:center}.schedule-now-axis__dot[data-v-21b5fcac]{position:absolute;top:-3px;left:81px;width:6px;height:6px;border-radius:999px;background:#ff4d4f}.schedule-now-line[data-v-21b5fcac]{position:absolute;top:0;left:0;right:0;border-top:1px solid #ffb3b3;z-index:1;pointer-events:none}.schedule-create-slot[data-v-21b5fcac]{position:absolute;z-index:1;pointer-events:none}.schedule-create-slot__trigger[data-v-21b5fcac]{width:calc(100% - 12px);height:calc(100% - 12px);margin:6px;border:1px dashed transparent;border-radius:8px;background:transparent;color:transparent;font:inherit;font-size:14px;font-weight:600;cursor:pointer;pointer-events:auto;transition:color .18s ease,border-color .18s ease,background-color .18s ease}.schedule-create-slot__trigger[data-v-21b5fcac]:hover{border-color:#cfe0ff;background:#1877ff0a;color:#1677ff}.schedule-event[data-v-21b5fcac]{position:absolute;z-index:2;display:flex;flex-direction:column;border:none;border-radius:4px;background:#fff;overflow:hidden;box-shadow:0 6px 16px #1677ff1a}.schedule-event--unsigned[data-v-21b5fcac]{background:#fff}.schedule-event--signed[data-v-21b5fcac]{background:#f5f7fa}.schedule-event--partial[data-v-21b5fcac]{background:#fff4e5}.schedule-event--conflict[data-v-21b5fcac]{box-shadow:0 0 0 2px #ff4d4f66}.schedule-event--focused[data-v-21b5fcac]{box-shadow:0 0 0 3px #1677ff73,0 14px 28px #1677ff33}.schedule-event__top[data-v-21b5fcac]{position:relative;display:flex;align-items:center;min-height:24px;padding:3px 56px 3px 10px;background:#1677ff}.schedule-event--signed .schedule-event__top[data-v-21b5fcac]{background:#98a2b3}.schedule-event--partial .schedule-event__top[data-v-21b5fcac]{background:#f59e0b}.schedule-event__time[data-v-21b5fcac]{flex:1;min-width:0;color:#fff;font-size:13px;font-weight:600;line-height:1.2;white-space:nowrap;letter-spacing:.01em}.schedule-event__badges[data-v-21b5fcac]{position:absolute;top:0;right:0;display:flex;flex-direction:row-reverse;align-items:flex-start;gap:4px;flex-shrink:0}.schedule-event__badge[data-v-21b5fcac]{display:inline-flex;align-items:center;justify-content:center;height:16px;padding:0 7px;border-radius:10px;background:#093d953d;color:#fff;font-size:10px;font-weight:700;line-height:1;border:none}.schedule-event__badge--one-to-one[data-v-21b5fcac]{padding:0 8px 0 9px;border-radius:0 4px 0 8px;background:#00000080;color:#fff}.schedule-event__badge--group-class[data-v-21b5fcac]{padding:0 8px 0 9px;border-radius:0 4px 0 8px;background:#d46b08;color:#fff}.schedule-event__badge--conflict[data-v-21b5fcac]{padding:0 8px 0 9px;border-radius:0 4px 0 8px;background:#ff4d4f;color:#fff;cursor:pointer}.schedule-event__body[data-v-21b5fcac]{display:flex;flex-direction:column;padding:4px 0 0 10px}.schedule-event__title[data-v-21b5fcac]{color:#0f172a;font-size:13px;font-weight:700;line-height:1;letter-spacing:.01em;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden;-webkit-line-clamp:2}.schedule-event__meta[data-v-21b5fcac]{color:#64748b;font-size:12px;line-height:1;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.schedule-event__meta__course[data-v-21b5fcac]{margin:4px 0}.schedule-event__meta--muted[data-v-21b5fcac]{color:#334155;font-weight:600}.time-selector[data-v-21b5fcac]{font-family:DINAlternate-Bold,DINAlternate}.toolbar-card[data-v-21b5fcac] .ant-radio-button-wrapper{padding:0 16px}@media (max-width: 1200px){.toolbar-main[data-v-21b5fcac]{flex-wrap:wrap;justify-content:flex-start}}@media (max-width: 768px){.schedule-summary[data-v-21b5fcac]{align-items:flex-start;flex-direction:column}}
