.clickable-table[data-v-82d998d9] .el-table__row,.clickable-table[data-v-82d998d9] .el-button{cursor:pointer}.row-actions[data-v-82d998d9]{display:flex;align-items:center;gap:4px;white-space:nowrap}.row-actions[data-v-82d998d9] .el-button{margin:0}.clickable-table[data-v-a94379bd] .el-table__row,.clickable-table[data-v-a94379bd] .el-button{cursor:pointer}.row-actions[data-v-a94379bd]{display:flex;align-items:center;gap:4px;white-space:nowrap}.row-actions[data-v-a94379bd] .el-button{margin:0}.schedule-view-switch[data-v-a46c54c5]{display:flex;flex:0 0 auto}.schedule-view-switch[data-v-a46c54c5] .el-button{margin-left:0;border-radius:0}.schedule-view-switch[data-v-a46c54c5] .el-button:first-child{border-radius:4px 0 0 4px}.schedule-view-switch[data-v-a46c54c5] .el-button:last-child{border-radius:0 4px 4px 0}.week-schedule[data-v-a46c54c5]{display:grid;grid-template-columns:74px repeat(7,minmax(120px,1fr));overflow-x:auto;border:1px solid var(--el-border-color-lighter);border-radius:6px}.week-schedule__corner[data-v-a46c54c5],.week-schedule__day[data-v-a46c54c5],.week-schedule__time[data-v-a46c54c5],.week-schedule__cell[data-v-a46c54c5]{min-height:76px;padding:10px;border-right:1px solid var(--el-border-color-lighter);border-bottom:1px solid var(--el-border-color-lighter);box-sizing:border-box}.week-schedule__corner[data-v-a46c54c5],.week-schedule__day[data-v-a46c54c5]{min-height:42px;background:var(--el-fill-color-light);font-weight:600;color:var(--el-text-color-regular);text-align:center}.week-schedule__time[data-v-a46c54c5]{display:flex;align-items:flex-start;justify-content:center;color:var(--el-text-color-secondary);font-size:12px}.week-schedule__cell[data-v-a46c54c5]{display:flex;flex-direction:column;gap:6px;background:#fff}.week-schedule__lesson[data-v-a46c54c5]{display:flex;flex-direction:column;gap:3px;width:100%;padding:8px;border:0;border-left:3px solid var(--el-color-primary);border-radius:4px;background:var(--el-color-primary-light-9);color:var(--el-text-color-primary);text-align:left;cursor:pointer}.week-schedule__lesson[data-v-a46c54c5]:hover{background:var(--el-color-primary-light-8)}.week-schedule__lesson strong[data-v-a46c54c5]{font-size:12px;color:var(--el-color-primary)}.week-schedule__lesson span[data-v-a46c54c5],.week-schedule__lesson small[data-v-a46c54c5]{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.week-schedule__lesson span[data-v-a46c54c5]{font-size:13px}.week-schedule__lesson small[data-v-a46c54c5]{color:var(--el-text-color-secondary)}.week-schedule__empty[data-v-a46c54c5]{color:var(--el-text-color-placeholder);text-align:center}@media(max-width:1100px){.week-schedule[data-v-a46c54c5]{grid-template-columns:64px repeat(7,145px)}}.date-shortcuts[data-v-350e7a0f]{display:flex;align-items:center;gap:4px}.date-shortcuts[data-v-350e7a0f] .el-button{margin-left:0}@media(max-width:900px){.date-shortcuts[data-v-350e7a0f]{width:100%}}.lesson-operation-cell[data-v-350e7a0f]{display:flex;align-items:center;height:100%;gap:0;white-space:nowrap}.lesson-operation-cell__detail[data-v-350e7a0f],.lesson-operation-cell__reschedule[data-v-350e7a0f],.lesson-operation-cell__more[data-v-350e7a0f],.lesson-operation-cell__reschedule-placeholder[data-v-350e7a0f],.lesson-operation-cell__more-placeholder[data-v-350e7a0f]{display:inline-flex;align-items:center;justify-content:flex-start;flex:0 0 auto}.lesson-operation-cell__detail[data-v-350e7a0f]{width:92px}.lesson-operation-cell__reschedule[data-v-350e7a0f],.lesson-operation-cell__reschedule-placeholder[data-v-350e7a0f],.lesson-operation-cell__more[data-v-350e7a0f],.lesson-operation-cell__more-placeholder[data-v-350e7a0f]{width:48px}.lesson-operation-cell[data-v-350e7a0f] .el-button{margin:0;padding:2px 0;line-height:22px;height:26px}.clickable-table[data-v-99817fc9] .el-table__row,.clickable-table[data-v-99817fc9] .el-button,.clickable-table[data-v-99817fc9] .el-dropdown{cursor:pointer}.row-actions[data-v-99817fc9]{display:flex;align-items:center;gap:4px;white-space:nowrap}.row-actions[data-v-99817fc9] .el-button{margin:0}.learning-report-page[data-v-a589361f]{display:flex;flex-direction:column;gap:0}.learning-report-page .summary-grid strong[data-v-a589361f]{font-size:18px;line-height:1.35;word-break:break-word}.report-spotlight[data-v-a589361f]{margin-bottom:20px}.report-spotlight__head[data-v-a589361f]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.report-spotlight__eyebrow[data-v-a589361f]{color:#0f766e;font-size:13px;font-weight:600}.report-spotlight__title[data-v-a589361f]{margin-top:6px;font-size:22px;font-weight:700}.report-spotlight__meta[data-v-a589361f]{margin-top:6px}.report-spotlight__tags[data-v-a589361f]{display:flex;flex-wrap:wrap;gap:8px}.report-spotlight__content[data-v-a589361f]{margin:16px 0 0;color:#374151;line-height:1.8;white-space:pre-wrap}.report-drawer[data-v-a589361f] .el-drawer__body{background:#f5f7fb}.report-reader[data-v-a589361f]{display:flex;flex-direction:column;gap:16px}.report-reader__head[data-v-a589361f]{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;padding:20px;border-radius:12px;background:#fff}.report-reader__eyebrow[data-v-a589361f]{color:#0f766e;font-size:13px;font-weight:600}.report-reader__head h2[data-v-a589361f]{margin:6px 0 0;font-size:22px}.report-reader__head p[data-v-a589361f]{margin:6px 0 0;color:#6b7280}.report-reader__tags[data-v-a589361f]{display:flex;flex-wrap:wrap;gap:8px}.report-reader__meta[data-v-a589361f]{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.report-reader__meta div[data-v-a589361f],.report-reader__section[data-v-a589361f]{padding:16px 18px;border-radius:12px;background:#fff}.report-reader__meta span[data-v-a589361f]{display:block;color:#6b7280;font-size:12px}.report-reader__meta strong[data-v-a589361f]{display:block;margin-top:8px;color:#111827;font-size:14px;font-weight:600}.report-body[data-v-a589361f]{margin:0;color:#374151;line-height:1.85;white-space:pre-wrap}.report-list[data-v-a589361f]{margin:0;padding-left:18px;color:#374151;line-height:1.8}.report-list li+li[data-v-a589361f]{margin-top:6px}@media(max-width:960px){.summary-grid[data-v-a589361f],.report-reader__meta[data-v-a589361f]{grid-template-columns:1fr 1fr}}@media(max-width:640px){.summary-grid[data-v-a589361f],.report-reader__meta[data-v-a589361f]{grid-template-columns:1fr}.report-spotlight__head[data-v-a589361f],.report-reader__head[data-v-a589361f]{flex-direction:column}}h3[data-v-5757ee3f]{margin:28px 0 18px;font-size:16px}h3[data-v-5757ee3f]:first-child{margin-top:0}.settings-grid[data-v-5757ee3f]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 16px}.settings-grid[data-v-5757ee3f] .el-input-number,.settings-grid[data-v-5757ee3f] .el-date-editor{width:100%}.setting-row[data-v-5757ee3f]{padding:16px 0;border-top:1px solid var(--el-border-color-lighter)}.row-heading[data-v-5757ee3f]{display:flex;justify-content:space-between;margin-bottom:14px}.settings-note[data-v-5757ee3f]{color:var(--el-text-color-secondary);font-size:12px;line-height:1.8;margin-top:24px}@media(max-width:600px){.settings-grid[data-v-5757ee3f]{grid-template-columns:1fr}}.content-page[data-v-dcb29ddd] .el-drawer__body{padding-top:8px}.article-title-cell[data-v-dcb29ddd],.phone-title-row[data-v-dcb29ddd],.link-row[data-v-dcb29ddd]{display:flex;align-items:center;gap:10px}.article-icon[data-v-dcb29ddd],.content-page[data-v-dcb29ddd] .content-inline-icon{display:inline-flex;align-items:center;justify-content:center;width:28px;height:28px;border-radius:6px;background:#0f766e;color:#fff;font-size:14px;font-weight:700;flex:0 0 auto}.editor-layout[data-v-dcb29ddd]{display:grid;grid-template-columns:minmax(0,1fr) 360px;gap:24px;align-items:start}.editor-main[data-v-dcb29ddd]{min-width:0}.rich-editor[data-v-dcb29ddd]{border:1px solid #dcdfe6;border-radius:8px;overflow:hidden;background:#fff}.rich-toolbar[data-v-dcb29ddd]{display:flex;flex-wrap:wrap;gap:8px;align-items:center;padding:10px;border-bottom:1px solid #ebeef5;background:#f8fafc}.format-button[data-v-dcb29ddd]{width:32px;padding:0}.format-button--bold[data-v-dcb29ddd]{font-weight:700}.format-button--italic[data-v-dcb29ddd]{font-style:italic}.rich-body[data-v-dcb29ddd]{min-height:420px;padding:18px 20px;outline:none;color:#1f2937;line-height:1.75}.rich-body[data-v-dcb29ddd] img,.phone-content[data-v-dcb29ddd] img{max-width:100%;border-radius:8px}.content-page[data-v-dcb29ddd] .content-fee-block,.content-page[data-v-dcb29ddd] .content-admission-block{margin:16px 0;padding:14px 16px;border-left:4px solid #0f766e;border-radius:6px;background:#ecfdf5}.phone-preview[data-v-dcb29ddd]{position:sticky;top:0}.phone-shell[data-v-dcb29ddd]{width:340px;min-height:640px;padding:18px;border:1px solid #dfe5ea;border-radius:28px;background:#f7f8fa;box-shadow:0 20px 50px #0f172a1f}.phone-header[data-v-dcb29ddd]{padding:10px 0 16px;color:#6b7280;text-align:center;font-size:13px}.phone-cover[data-v-dcb29ddd]{width:100%;max-height:170px;object-fit:cover;border-radius:12px}.phone-title-row[data-v-dcb29ddd]{align-items:flex-start;margin-top:18px}.phone-title-row h2[data-v-dcb29ddd]{margin:0;color:#111827;font-size:21px;line-height:1.35}.phone-summary[data-v-dcb29ddd]{color:#6b7280;font-size:13px;line-height:1.6}.phone-content[data-v-dcb29ddd]{margin-top:16px;color:#1f2937;font-size:14px;line-height:1.75}@media(max-width:1180px){.editor-layout[data-v-dcb29ddd]{grid-template-columns:1fr}.phone-preview[data-v-dcb29ddd]{position:static}}.article-composer .el-drawer__body{padding:0;background:#f5f6f8}.composer-header[data-v-dcb29ddd]{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:18px 28px;background:#fff;border-bottom:1px solid #e5e7eb;position:sticky;top:0;z-index:5}.composer-heading[data-v-dcb29ddd],.composer-actions[data-v-dcb29ddd]{display:flex;align-items:center;gap:12px}.composer-heading strong[data-v-dcb29ddd]{font-size:19px}.save-status[data-v-dcb29ddd],.writing-meta[data-v-dcb29ddd],.preview-caption[data-v-dcb29ddd]{color:#7b8490;font-size:12px}.editor-layout[data-v-dcb29ddd]{grid-template-columns:minmax(420px,820px) minmax(340px,420px);justify-content:center;gap:24px;padding:28px}.editor-layout.with-preview[data-v-dcb29ddd]{grid-template-columns:minmax(420px,820px) minmax(320px,380px) 340px}.writing-sheet[data-v-dcb29ddd]{background:#fff;border:1px solid #e5e7eb;min-height:780px;padding:34px 40px}.article-title-input[data-v-dcb29ddd] .el-input__wrapper{box-shadow:none;padding:0}.article-title-input[data-v-dcb29ddd] .el-input__inner{font-size:28px;font-weight:600;height:50px}.article-title-input[data-v-dcb29ddd] .el-input__count{position:static;font-size:12px}.writing-meta[data-v-dcb29ddd]{display:flex;justify-content:space-between;padding-bottom:24px}.rich-editor[data-v-dcb29ddd]{width:100%;border:0;border-radius:0}.rich-toolbar[data-v-dcb29ddd]{gap:6px;padding:12px 0;background:#fff;border-top:1px solid #ebeef5}.rich-toolbar[data-v-dcb29ddd] .el-button{padding:8px;margin-left:0}.rich-body[data-v-dcb29ddd]{min-height:560px;padding:24px 0;font-size:16px;line-height:1.9;width:100%;overflow-wrap:anywhere}.rich-body[data-v-dcb29ddd]:empty:before{content:attr(data-placeholder);color:#a4abb4;pointer-events:none}.rich-body[data-v-dcb29ddd] blockquote,.phone-content[data-v-dcb29ddd] blockquote{margin:16px 0;padding-left:18px;border-left:3px solid #ccd3dc;color:#677180}.settings-panel[data-v-dcb29ddd]{background:#fff;border:1px solid #e5e7eb;padding:8px 24px 24px}.settings-panel[data-v-dcb29ddd] .el-tabs__header{margin-bottom:24px}.cover-editor[data-v-dcb29ddd]{width:100%}.cover-editor img[data-v-dcb29ddd]{width:100%;height:150px;object-fit:cover;border-radius:6px}.cover-placeholder[data-v-dcb29ddd]{padding:35px 20px;background:#f7f8fa;text-align:center;color:#8c939d;font-size:12px;border:1px dashed #d9dee5}.cover-actions[data-v-dcb29ddd]{display:flex;gap:10px;margin-top:12px}.phone-preview[data-v-dcb29ddd]{top:96px}.preview-caption[data-v-dcb29ddd]{text-align:center;margin-bottom:16px}.phone-shell[data-v-dcb29ddd]{box-sizing:border-box;background:#fff;box-shadow:none;max-width:100%}@media(max-width:1450px){.editor-layout.with-preview[data-v-dcb29ddd]{grid-template-columns:minmax(400px,1fr) 360px}.with-preview .phone-preview[data-v-dcb29ddd]{grid-column:1 / -1;justify-self:center;position:static}}@media(max-width:900px){.editor-layout[data-v-dcb29ddd],.editor-layout.with-preview[data-v-dcb29ddd]{grid-template-columns:1fr;padding:16px}.composer-header[data-v-dcb29ddd]{flex-wrap:wrap;padding:12px 16px}.composer-actions[data-v-dcb29ddd]{flex-wrap:wrap}.save-status[data-v-dcb29ddd]{display:none}.writing-sheet[data-v-dcb29ddd]{padding:24px;min-height:600px}}html,body,#app{width:100%;height:100%;margin:0}body{font-family:Inter,Microsoft YaHei,Arial,sans-serif;color:#1f2937;background:#f5f7fb}.login-layout{display:grid;min-height:100%;place-items:center;padding:24px}.login-card{width:min(420px,100%);padding:32px;border:1px solid #e5e7eb;border-radius:8px;background:#fff}.login-card h1{margin:0;font-size:28px}.login-card p{margin:8px 0 24px;color:#6b7280}.login-card__button{width:100%}.login-card__error{margin-bottom:16px}.main-layout{min-height:100%}.main-layout__aside{border-right:1px solid #e5e7eb;background:#fff;transition:width .18s ease;overflow-x:hidden}.main-layout__aside .el-menu{border-right:0}.main-layout__brand{height:56px;padding:0 20px;font-weight:700;line-height:56px;white-space:nowrap}.main-layout__aside.is-collapsed .main-layout__brand{padding:0;text-align:center}.main-layout__header{display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid #e5e7eb;background:#fff}.main-layout__header-left{display:flex;align-items:center;gap:8px}.main-layout__content{padding:24px}.page-title{display:flex;align-items:end;gap:12px;margin-bottom:20px}.page-title h1{margin:0;font-size:24px}.page-title span{color:#6b7280}.card-header{display:flex;align-items:center;justify-content:space-between}.dashboard-alert{margin-bottom:16px}.dashboard-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.dashboard-metric{min-height:126px}.dashboard-metric__label{color:#6b7280;font-size:13px}.dashboard-metric strong{display:block;margin-top:10px;color:#0f766e;font-size:30px;font-weight:700}.dashboard-metric span{display:block;margin-top:8px;color:#6b7280;font-size:13px}.dashboard-grid{display:grid;grid-template-columns:minmax(0,1.4fr) minmax(0,1fr);gap:16px}.dashboard-attendance{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-bottom:16px}.dashboard-attendance div{padding:16px;border-radius:8px;background:#f3f7f7}.dashboard-attendance strong{display:block;color:#0f766e;font-size:26px}.dashboard-attendance span{display:block;margin-top:6px;color:#6b7280;font-size:13px}.page-shell{max-width:1280px}.page-title{justify-content:space-between}.page-title p{margin:8px 0 0;color:#6b7280}.toolbar{display:flex;gap:12px;margin-bottom:20px}.status-tabs,.audit-tabs{margin-bottom:12px}.permission-tree-node{display:flex;align-items:center;justify-content:space-between;gap:12px;width:100%}.toolbar .el-input{width:min(320px,100%)}.toolbar .el-select{width:140px}.table-footer{display:flex;align-items:center;justify-content:space-between;gap:16px;margin-top:20px}.detail-section__title{display:flex;align-items:center;justify-content:space-between;margin-bottom:12px;font-weight:600}.detail-actions{display:flex;align-items:center;gap:12px}.detail-add-teacher{margin-top:12px}.schedule-detail__notice,.schedule-form__notice{margin-top:20px}.drawer-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:16px}.summary-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:16px;margin-bottom:20px}.summary-label{color:#6b7280;font-size:13px}.summary-grid strong{display:block;margin-top:8px;font-size:26px;font-weight:650}.attendance-drawer__header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:24px}.attendance-drawer__header h2{margin:0;font-size:20px}.attendance-drawer__header p{margin:8px 0 0}.muted-text{color:#6b7280}.form-help{margin-left:12px;color:#6b7280;font-size:13px}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:16px}.course-account-balance{color:#0f766e;font-weight:700}.course-account-adjust-alert{margin-bottom:16px}.section-heading{display:flex;align-items:center;justify-content:space-between;margin:24px 0 12px;font-weight:600}.platform-alert{margin-bottom:16px}.organization-form{margin-top:4px}.organization-subscription,.import-center__alert,.import-center__result{margin-top:16px}.import-type-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;margin-bottom:20px}.import-type-card{min-height:112px;padding:16px;border:1px solid #e5e7eb;border-radius:8px;background:#fff;color:inherit;cursor:pointer;text-align:left}.import-type-card span,.import-type-card small{display:block}.import-type-card strong{display:block;margin:8px 0;color:#0f766e;font-size:18px}.import-type-card small{color:#6b7280;line-height:1.5}.import-type-card.is-active{border-color:#0f766e;box-shadow:0 0 0 1px #0f766e inset}.import-type-card.is-disabled strong{color:#b45309}.import-center__workspace{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(320px,.8fr);gap:20px;align-items:start}.import-center__actions{display:flex;flex-wrap:wrap;gap:12px;margin-top:16px}@media(max-width:720px){.main-layout__aside{display:none}.main-layout__content{padding:16px}.page-title,.toolbar,.table-footer{align-items:stretch;flex-direction:column}.toolbar .el-input,.toolbar .el-select{width:100%}.form-grid{grid-template-columns:1fr;gap:0}.summary-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.dashboard-summary,.dashboard-grid,.dashboard-attendance,.import-type-grid,.import-center__workspace{grid-template-columns:1fr}}
