@import"https://fonts.googleapis.com/css2?family=DM+Sans:wght@400;500;600;700&family=Noto+Sans+SC:wght@400;500;600;700&display=swap";.managed-audio[data-v-641d6276]{display:grid;grid-template-columns:minmax(0,1fr) 46px;align-items:center;gap:10px;width:100%;padding:12px;border:1px solid #dfe6f1;border-radius:14px;background:#fff;color:#17213b}.managed-audio audio[data-v-641d6276]{display:none}.audio-copy[data-v-641d6276]{display:flex;min-width:0;flex-direction:column;text-align:left}.audio-copy b[data-v-641d6276]{overflow:hidden;font-size:13px;text-overflow:ellipsis;white-space:nowrap}.audio-copy span[data-v-641d6276]{margin-top:2px;color:#7d899d;font-size:10px}.audio-copy span.error[data-v-641d6276]{color:#b42318}.audio-toggle[data-v-641d6276]{display:grid;width:46px;height:46px;place-items:center;border:0;border-radius:50%;background:#3478f6;color:#fff}.audio-toggle svg[data-v-641d6276]{width:22px}.audio-progress[data-v-641d6276]{display:grid;grid-template-columns:1fr auto;grid-column:1/-1;align-items:center;gap:10px}.audio-progress input[data-v-641d6276]{width:100%;min-height:28px;accent-color:#3478f6}.audio-progress small[data-v-641d6276]{min-width:76px;color:#69758a;font-variant-numeric:tabular-nums}.audio-rate[data-v-641d6276]{display:flex;grid-column:1/-1;align-items:center;justify-content:flex-end;gap:7px;color:#69758a;font-size:11px}.audio-rate select[data-v-641d6276]{min-width:76px;min-height:36px;padding:0 8px;border:1px solid #d7dfeb;border-radius:9px;background:#f7f9fd;color:#1f355c}.managed-audio.compact[data-v-641d6276]{grid-template-columns:minmax(0,1fr) 42px;padding:9px}.compact .audio-toggle[data-v-641d6276]{width:42px;height:42px}.managed-audio.hero[data-v-641d6276]{grid-template-columns:116px minmax(0,1fr) 50px;max-width:620px;margin:18px auto;padding:18px;background:#fffffffa}.audio-disc[data-v-641d6276]{display:grid;place-items:center}.hero .audio-disc[data-v-641d6276]{grid-row:1/4;width:92px;height:92px;box-sizing:border-box;border:18px solid #111c34;border-radius:50%;background:conic-gradient(#6d9df3,#b9d2ff,#5f91eb,#9dc0ff,#6d9df3);box-shadow:inset 0 0 0 3px #ffffff80,0 9px 25px #030f2738}.audio-disc span[data-v-641d6276]{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#fff;color:#3478f6}.audio-disc svg[data-v-641d6276]{width:18px}.audio-disc.spinning[data-v-641d6276]{animation:disc-spin-641d6276 5s linear infinite}.hero .audio-progress[data-v-641d6276],.hero .audio-rate[data-v-641d6276]{grid-column:2/-1}.hero .audio-copy b[data-v-641d6276]{font-size:15px}@keyframes disc-spin-641d6276{to{transform:rotate(360deg)}}@media(max-width:560px){.managed-audio.hero[data-v-641d6276]{grid-template-columns:82px minmax(0,1fr) 46px;padding:13px}.hero .audio-disc[data-v-641d6276]{width:72px;height:72px;border-width:14px}.hero .audio-progress[data-v-641d6276],.hero .audio-rate[data-v-641d6276]{grid-column:1/-1}}@media(prefers-reduced-motion:reduce){.audio-disc.spinning[data-v-641d6276]{animation:none}}.video-upload-backdrop[data-v-193fa15f]{position:fixed;top:0;right:0;bottom:0;left:0;z-index:10050;background:#10243db3;display:grid;place-items:center;padding:16px}.video-upload-dialog[data-v-193fa15f]{background:#fff;color:#153653;width:min(100%,440px);max-height:90dvh;overflow-y:auto;border-radius:18px;padding:22px;box-sizing:border-box}.video-upload-dialog h2[data-v-193fa15f]{margin:0 0 12px;font-size:22px}.video-upload-dialog p[data-v-193fa15f]{font-size:14px;line-height:1.6}.video-file-name[data-v-193fa15f]{overflow-wrap:anywhere}.video-upload-dialog label[data-v-193fa15f]{display:block;margin-bottom:8px;font-weight:600}.video-upload-dialog select[data-v-193fa15f],.video-upload-dialog button[data-v-193fa15f]{min-height:44px;width:100%;margin-bottom:10px;padding:10px;border:1px solid #c9d9e9;border-radius:10px;background:#fff;color:#153653;font:inherit}.video-upload-dialog .video-primary[data-v-193fa15f]{background:#1265ba;color:#fff;border-color:#1265ba}.video-upload-dialog progress[data-v-193fa15f]{width:100%;margin:12px 0}.video-upload-dialog video[data-v-193fa15f]{width:100%;max-height:220px;margin-bottom:12px;background:#10243d}.video-upload-dialog .video-upload-error[data-v-193fa15f]{color:#b42318}.feedback-composer[data-v-2323b952]{box-sizing:border-box;width:min(520px,calc(100% - 24px));max-height:85dvh;padding:0;border:0;border-radius:18px;color:#21344e;background:#fff}.feedback-composer[data-v-2323b952]::backdrop{background:#0912268c}header[data-v-2323b952],footer[data-v-2323b952]{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:12px 16px}header[data-v-2323b952]{border-bottom:1px solid #e3eaf4}header>div[data-v-2323b952]{min-width:0;flex:1}header>button[data-v-2323b952]{flex:none;width:auto}h2[data-v-2323b952]{margin:3px 0;font-size:19px}small[data-v-2323b952]{color:#61728b;font-size:12px}button[data-v-2323b952],select[data-v-2323b952]{min-height:44px;border:1px solid #cdd9e9;border-radius:9px;background:#fff;color:#285da9;font:inherit;padding:8px 12px}button[data-v-2323b952]:disabled{opacity:.5}.composer-body[data-v-2323b952]{padding:12px 16px;overflow:auto;max-height:calc(85dvh - 150px);overscroll-behavior:contain}.score-grid[data-v-2323b952]{display:grid;grid-template-columns:1fr 1fr;gap:8px 16px;margin-bottom:12px}.score-grid label[data-v-2323b952]{display:flex;align-items:center;justify-content:space-between;gap:8px;font-size:13px}.score-grid select[data-v-2323b952]{min-width:80px;padding:8px}.preset-category[data-v-2323b952]{display:flex;align-items:center;gap:12px;font-size:14px}.preset-category select[data-v-2323b952]{flex:1;min-width:0}.preset-buttons[data-v-2323b952]{display:flex;flex-wrap:wrap;gap:8px;margin:10px 0}.preset-buttons button[data-v-2323b952]{font-size:13px}.preset-buttons button[aria-pressed=true][data-v-2323b952]{background:#eaf3ff;border-color:#3478f6}.reply-label[data-v-2323b952]{display:block;font-size:14px}.reply-label small[data-v-2323b952]{margin-left:8px}textarea[data-v-2323b952]{box-sizing:border-box;width:100%;min-height:96px;margin-top:8px;padding:10px;border:1px solid #cdd9e9;border-radius:9px;font:inherit;resize:vertical}footer[data-v-2323b952]{position:sticky;bottom:0;border-top:1px solid #e3eaf4;background:#fff;padding-bottom:max(12px,env(safe-area-inset-bottom))}footer span[data-v-2323b952]{font-size:12px;color:#61728b}.primary[data-v-2323b952]{background:#2465ce;color:#fff;border-color:#2465ce}.confirm-content[data-v-2323b952]{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.7}.composer-error[data-v-2323b952]{color:#b42318;font-size:13px}@media(max-width:360px){.score-grid[data-v-2323b952]{gap:8px}.score-grid label[data-v-2323b952]{gap:4px;font-size:12px}.score-grid select[data-v-2323b952]{min-width:70px;padding:6px}}@media(max-width:520px){.feedback-composer[data-v-2323b952]{margin:auto auto 0;width:100%;border-radius:18px 18px 0 0}}.homework-feedback[data-v-17d8b8dd]{margin:8px 0}.feedback-heading[data-v-17d8b8dd]{display:flex;align-items:center;justify-content:space-between;gap:12px}.feedback-heading button[data-v-17d8b8dd]{min-height:44px;padding:8px 12px;border:1px solid #d8e3f1;border-radius:9px;color:#355476;background:#f5f8fc;font-size:13px}.feedback-heading span[data-v-17d8b8dd]{margin-left:6px;font-size:12px}.feedback-heading .add-feedback[data-v-17d8b8dd]{color:#2465ce;background:#fff}.feedback-history[data-v-17d8b8dd]{max-height:240px;overflow:auto;overscroll-behavior:contain;padding:0 10px;background:#f5f8fc;border-radius:9px}.feedback-history article[data-v-17d8b8dd]{padding:10px 0;border-bottom:1px solid #dce6f3}.feedback-history article div[data-v-17d8b8dd]{display:flex;flex-wrap:wrap;justify-content:space-between;gap:8px}.feedback-history time[data-v-17d8b8dd]{color:#61728b;font-size:12px}.feedback-history p[data-v-17d8b8dd]{white-space:pre-wrap;overflow-wrap:anywhere;line-height:1.6;font-size:13px}.activity-center[data-v-6374bc73],.activity-detail[data-v-6374bc73]{max-width:1180px;margin:0 auto}.activity-hero[data-v-6374bc73]{display:flex;align-items:center;justify-content:space-between;min-height:210px;padding:40px 46px;border-radius:32px;color:#fff;background:linear-gradient(125deg,#145dd1,#367cf0 55%,#6fa5ff);box-shadow:0 24px 55px #145dd133;overflow:hidden}.activity-hero p[data-v-6374bc73],.activity-form-title p[data-v-6374bc73]{margin:0 0 8px;font-size:12px;font-weight:800;letter-spacing:.18em}.activity-hero h1[data-v-6374bc73]{margin:0;font-size:34px}.activity-hero span[data-v-6374bc73]{display:block;margin-top:10px;opacity:.82}.activity-hero>svg[data-v-6374bc73]{width:110px;height:110px;opacity:.2}.activity-grid[data-v-6374bc73]{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin-top:28px}.activity-card[data-v-6374bc73]{padding:0;overflow:hidden;border:1px solid #e5eaf3;border-radius:26px;background:#fff;text-align:left;box-shadow:0 12px 35px #1f376414;cursor:pointer;transition:.2s transform,.2s box-shadow}.activity-card[data-v-6374bc73]:hover{transform:translateY(-4px);box-shadow:0 18px 46px #1f376424}.activity-cover[data-v-6374bc73]{position:relative;height:210px;background:linear-gradient(135deg,#eaf2ff,#f7f9ff)}.activity-cover img[data-v-6374bc73]{width:100%;height:100%;object-fit:cover}.activity-cover>span[data-v-6374bc73]{display:grid;width:100%;height:100%;place-items:center;color:#80a9ed}.activity-cover>span svg[data-v-6374bc73]{width:70px;height:70px}.activity-cover em[data-v-6374bc73],.activity-cover i[data-v-6374bc73]{position:absolute;top:16px;padding:7px 12px;border-radius:999px;font-size:12px;font-style:normal;font-weight:800}.activity-cover em[data-v-6374bc73]{left:16px;color:#145dd1;background:#fff}.activity-cover i[data-v-6374bc73]{right:16px;display:flex;gap:4px;align-items:center;color:#087451;background:#e8fff5}.activity-cover i svg[data-v-6374bc73]{width:15px}.activity-copy[data-v-6374bc73]{padding:22px}.activity-copy h2[data-v-6374bc73]{margin:0;color:#14213d;font-size:22px}.activity-copy p[data-v-6374bc73]{min-height:44px;margin:8px 0 18px;color:#667085;line-height:1.6}.activity-meta[data-v-6374bc73]{display:flex;justify-content:space-between;gap:12px;color:#62708a;font-size:12px}.activity-meta span[data-v-6374bc73]{display:flex;gap:5px;align-items:center}.activity-meta svg[data-v-6374bc73]{width:16px}.activity-copy strong[data-v-6374bc73]{display:block;margin-top:12px;color:#145dd1;font-size:22px;font-variant-numeric:tabular-nums}.activity-empty[data-v-6374bc73]{grid-column:1/-1;padding:70px;text-align:center;color:#7a8498;background:#fff;border-radius:24px}.activity-back[data-v-6374bc73]{display:flex;gap:7px;align-items:center;margin-bottom:16px;border:0;background:transparent;color:#145dd1;font-weight:700;cursor:pointer}.activity-back svg[data-v-6374bc73]{width:18px}.activity-detail-cover[data-v-6374bc73]{height:min(380px,38vw);min-height:220px;overflow:hidden;border-radius:30px;background:#eaf2ff}.activity-detail-cover img[data-v-6374bc73]{width:100%;height:100%;object-fit:cover}.activity-detail-cover div[data-v-6374bc73]{display:grid;width:100%;height:100%;place-items:center;color:#7aa7ed}.activity-detail-cover svg[data-v-6374bc73]{width:100px;height:100px}.activity-detail-head[data-v-6374bc73]{position:relative;margin:-54px 34px 0;padding:28px 34px;border:1px solid #e7ebf3;border-radius:24px;background:#fffffff5;box-shadow:0 16px 45px #2037631f}.activity-detail-head>span[data-v-6374bc73]{color:#145dd1;font-size:12px;font-weight:800}.activity-detail-head h1[data-v-6374bc73]{margin:6px 0;font-size:30px;color:#14213d}.activity-detail-head p[data-v-6374bc73]{color:#667085}.detail-countdown[data-v-6374bc73]{display:flex;align-items:end;gap:12px;margin-top:20px}.detail-countdown small[data-v-6374bc73]{color:#667085}.detail-countdown b[data-v-6374bc73]{color:#145dd1;font-size:26px;font-variant-numeric:tabular-nums}.activity-detail-head>em[data-v-6374bc73]{display:block;margin-top:8px;color:#667085;font-style:normal}.activity-form-card[data-v-6374bc73]{max-width:780px;margin:28px auto;padding:32px;border:1px solid #e5eaf3;border-radius:26px;background:#fff;box-shadow:0 12px 38px #1f376412}.activity-form-title h2[data-v-6374bc73]{margin:0;color:#14213d}.activity-form-title p[data-v-6374bc73]{color:#145dd1}.activity-form-title span[data-v-6374bc73]{display:block;margin-top:7px;color:#667085}.activity-field[data-v-6374bc73]{display:block;margin-top:22px}.activity-field>span[data-v-6374bc73]:first-child{display:block;margin-bottom:8px;color:#26324a;font-weight:700}.activity-field i[data-v-6374bc73]{color:#e5484d;font-style:normal}.activity-field input[data-v-6374bc73]:not([type=radio]):not([type=checkbox]),.activity-field textarea[data-v-6374bc73],.activity-field select[data-v-6374bc73]{box-sizing:border-box;width:100%;padding:13px 14px;border:1px solid #d8deea;border-radius:12px;background:#fff;font:inherit}.activity-field textarea[data-v-6374bc73]{min-height:110px;resize:vertical}.activity-choices[data-v-6374bc73]{display:flex!important;flex-wrap:wrap;gap:12px}.activity-choices label[data-v-6374bc73]{display:flex;gap:6px;align-items:center;padding:10px 13px;border:1px solid #d8deea;border-radius:10px;font-weight:500}.activity-upload[data-v-6374bc73]{position:relative;display:flex!important;align-items:center;justify-content:center;min-height:90px;border:1px dashed #9eb8e2;border-radius:14px;color:#145dd1;background:#f7faff}.activity-upload input[data-v-6374bc73]{position:absolute;top:0;right:0;bottom:0;left:0;opacity:0;cursor:pointer}.activity-submit[data-v-6374bc73]{width:100%;margin-top:28px;padding:15px;border:0;border-radius:13px;color:#fff;background:#145dd1;font-weight:800;cursor:pointer}.activity-submit[data-v-6374bc73]:disabled{background:#9ba8bc;cursor:not-allowed}.activity-success[data-v-6374bc73]{padding:50px 20px;text-align:center;color:#087451}.activity-success svg[data-v-6374bc73]{width:50px;height:50px}.activity-success h3[data-v-6374bc73]{margin:10px 0 4px}.activity-success p[data-v-6374bc73]{color:#667085}@media(max-width:700px){.activity-hero[data-v-6374bc73]{min-height:150px;padding:26px 22px;border-radius:22px}.activity-hero h1[data-v-6374bc73]{font-size:26px}.activity-hero>svg[data-v-6374bc73]{width:70px;height:70px}.activity-grid[data-v-6374bc73]{grid-template-columns:1fr;gap:16px}.activity-cover[data-v-6374bc73]{height:180px}.activity-detail-cover[data-v-6374bc73]{height:220px;border-radius:20px}.activity-detail-head[data-v-6374bc73]{margin:-34px 14px 0;padding:22px}.activity-detail-head h1[data-v-6374bc73]{font-size:25px}.activity-form-card[data-v-6374bc73]{padding:22px 18px}.detail-countdown[data-v-6374bc73]{display:block}.detail-countdown b[data-v-6374bc73]{display:block;margin-top:4px;font-size:23px}}.notice-launcher[data-v-d712b5fc]{position:fixed;z-index:90;right:24px;top:22px;display:grid;width:46px;height:46px;padding:0;place-items:center;border:1px solid #e1e7f0;border-radius:15px;color:#145dd1;background:#fff;box-shadow:0 8px 24px #1a356621;cursor:pointer}.notice-launcher svg[data-v-d712b5fc]{width:22px}.notice-launcher span[data-v-d712b5fc]{position:absolute;right:-5px;top:-5px;min-width:18px;padding:2px 4px;border-radius:999px;color:#fff;background:#f04438;font-size:10px;font-weight:800}.notice-layer[data-v-d712b5fc],.notice-popup-layer[data-v-d712b5fc]{position:fixed;z-index:200;top:0;right:0;bottom:0;left:0;background:#0c182f6b;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.notice-drawer[data-v-d712b5fc]{position:absolute;right:0;top:0;box-sizing:border-box;width:min(480px,100%);height:100%;padding:26px;background:#f6f8fc;box-shadow:-20px 0 60px #0f1f3d33;overflow:auto}.notice-drawer header[data-v-d712b5fc]{display:flex;align-items:center;justify-content:space-between}.notice-drawer header p[data-v-d712b5fc],.notice-popup>p[data-v-d712b5fc]{margin:0;color:#145dd1;font-size:11px;font-weight:800;letter-spacing:.16em}.notice-drawer h2[data-v-d712b5fc]{margin:5px 0;font-size:26px}.notice-drawer header button[data-v-d712b5fc],.popup-close[data-v-d712b5fc]{display:grid;width:40px;height:40px;padding:0;place-items:center;border:0;border-radius:12px;background:#e9eef7;cursor:pointer}.notice-list[data-v-d712b5fc]{margin-top:24px}.notice-list>button[data-v-d712b5fc]{display:flex;width:100%;gap:12px;align-items:center;padding:18px 8px;border:0;border-bottom:1px solid #e1e6ef;background:transparent;text-align:left;cursor:pointer}.notice-list>button>span[data-v-d712b5fc]{width:8px;height:8px;border-radius:50%;background:transparent}.notice-list>button>span.unread[data-v-d712b5fc]{background:#145dd1}.notice-list>button>div[data-v-d712b5fc]{min-width:0;flex:1}.notice-list b[data-v-d712b5fc],.notice-list p[data-v-d712b5fc],.notice-list time[data-v-d712b5fc]{display:block}.notice-list p[data-v-d712b5fc]{margin:5px 0;color:#667085;white-space:nowrap;text-overflow:ellipsis;overflow:hidden}.notice-list time[data-v-d712b5fc],.notice-detail time[data-v-d712b5fc]{color:#8a94a7;font-size:12px}.notice-list svg[data-v-d712b5fc]{width:18px;color:#8390a5}.notice-empty[data-v-d712b5fc]{padding:80px 0;text-align:center;color:#7d8798}.notice-detail[data-v-d712b5fc]{margin-top:24px;padding:24px;border-radius:20px;background:#fff}.notice-detail p[data-v-d712b5fc]{margin:20px 0;color:#344054;line-height:1.8;white-space:pre-wrap}.notice-detail button[data-v-d712b5fc]{display:flex;align-items:center;justify-content:center;width:100%;padding:13px;border:0;border-radius:12px;color:#fff;background:#145dd1;font-weight:700;cursor:pointer}.notice-detail svg[data-v-d712b5fc]{width:18px}.notice-popup-layer[data-v-d712b5fc]{display:grid;place-items:center;padding:20px}.notice-popup[data-v-d712b5fc]{position:relative;box-sizing:border-box;width:min(460px,100%);padding:38px 34px 30px;border-radius:28px;background:#fff;box-shadow:0 30px 90px #0d1f434d}.popup-close[data-v-d712b5fc]{position:absolute;right:18px;top:18px}.notice-popup h2[data-v-d712b5fc]{margin:14px 0 10px;color:#14213d;font-size:28px}.notice-popup>span[data-v-d712b5fc]{display:block;color:#4b5870;line-height:1.8;white-space:pre-wrap}.popup-action[data-v-d712b5fc]{width:100%;margin-top:26px;padding:14px;border:0;border-radius:13px;color:#fff;background:#145dd1;font-weight:800;cursor:pointer}@media(max-width:700px){.notice-launcher[data-v-d712b5fc]{right:16px;top:14px;width:42px;height:42px}.notice-drawer[data-v-d712b5fc]{padding:22px 18px}.notice-popup[data-v-d712b5fc]{padding:34px 24px 24px}}.class-student-manager[data-v-585055f8]{display:grid;gap:16px}.class-student-manager>header[data-v-585055f8]{display:flex;align-items:center;justify-content:space-between;gap:14px}.class-student-manager h2[data-v-585055f8]{margin:0}.class-student-manager header p[data-v-585055f8]{margin:4px 0 0;color:#7b8799;font-size:12px}.class-student-manager button[data-v-585055f8]{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:6px;border-radius:10px;font-weight:700}.class-student-manager button svg[data-v-585055f8]{width:17px;height:17px}.add-student[data-v-585055f8]{padding:0 14px;border:0;background:#3478f6;color:#fff;font-size:12px;font-weight:600;white-space:nowrap}.close-add[data-v-585055f8]{padding:0 13px;border:1px solid #dce4ef;background:#fff;color:#647188}.student-search[data-v-585055f8]{display:grid;gap:9px;padding:15px;border:1px solid #dce6f5;border-radius:14px;background:#f7faff}.student-search>label[data-v-585055f8]{color:#42516a;font-size:12px;font-weight:700}.student-search>div[data-v-585055f8]:first-of-type{display:grid;grid-template-columns:20px minmax(0,1fr) 82px;align-items:center;gap:8px;padding-left:12px;border:1px solid #d8e1ee;border-radius:11px;background:#fff}.student-search>div:first-of-type>svg[data-v-585055f8]{width:18px;color:#8592a6}.student-search input[data-v-585055f8]{min-height:44px;border:0;outline:0;background:transparent}.student-search>div:first-of-type>button[data-v-585055f8]{align-self:stretch;border:0;border-radius:0 10px 10px 0;background:#3478f6;color:#fff}.student-search>p[data-v-585055f8]{margin:0;color:#c33e38;font-size:12px}.student-search-results[data-v-585055f8]{display:grid;gap:7px}.student-search-results article[data-v-585055f8]{display:flex;align-items:center;gap:10px;padding:10px;border-radius:11px;background:#fff}.student-search-results article>span[data-v-585055f8]{display:grid;width:38px;height:38px;flex:none;place-items:center;border-radius:11px;background:#e9f2ff;color:#3478f6;font-weight:800}.student-search-results article>div[data-v-585055f8]{display:flex;min-width:0;flex:1;flex-direction:column}.student-search-results small[data-v-585055f8]{margin-top:2px;color:#7b8799}.student-search-results button[data-v-585055f8]{min-width:86px;padding:0 10px;border:1px solid #c7d9f8;background:#f4f8ff;color:#2868d5}.student-search-results button[data-v-585055f8]:disabled{color:#77849a;opacity:.65}.student-search-empty[data-v-585055f8]{padding:18px;color:#7b8799;text-align:center}.teacher-students.managed[data-v-585055f8]{grid-template-columns:1fr}.teacher-students.managed>div[data-v-585055f8]{min-height:58px;padding:10px 12px}.teacher-students.managed>div>div[data-v-585055f8]{display:flex;min-width:0;flex:1;flex-direction:column}.teacher-students.managed button[data-v-585055f8]{min-width:82px;padding:0 10px;border:1px solid #efcbc8;background:#fff8f7;color:#bd3d37}.teacher-students.managed button[data-v-585055f8]:disabled{opacity:.5}@media(max-width:560px){.class-student-manager>header[data-v-585055f8]{align-items:flex-start}.class-student-manager header p[data-v-585055f8]{max-width:190px}.student-search-results article[data-v-585055f8]{align-items:flex-start;flex-wrap:wrap}.student-search-results article>button[data-v-585055f8]{width:100%;margin-left:48px}.teacher-students.managed>div[data-v-585055f8]{flex-wrap:wrap}.teacher-students.managed button[data-v-585055f8]{width:100%;margin-left:38px}}.staff-portal[data-v-9168260f]{max-width:860px;margin:auto;padding:36px 22px 110px;color:#14213d}header[data-v-9168260f]{display:flex;align-items:center;gap:18px;margin-bottom:28px}header>svg[data-v-9168260f]{width:48px;height:48px;color:#145dd1}header small[data-v-9168260f]{color:#68768d}h1[data-v-9168260f]{margin:8px 0;font-size:28px}header p[data-v-9168260f]{margin:0;color:#145dd1}section[data-v-9168260f]{padding:22px;border:1px solid #e1e6ef;border-radius:18px;background:#fff}h2[data-v-9168260f]{margin:0 0 14px;font-size:19px}.staff-hint[data-v-9168260f],section>p[data-v-9168260f]{line-height:1.7;color:#68768d}.staff-logout[data-v-9168260f]{display:flex;align-items:center;gap:8px;border:0;background:transparent;color:#68768d;padding:16px 0;cursor:pointer}.staff-logout svg[data-v-9168260f]{width:20px}nav[data-v-9168260f]{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:center;gap:50px;background:#fff;border-top:1px solid #e1e6ef;padding:14px 20px}nav button[data-v-9168260f]{display:flex;align-items:center;gap:8px;padding:10px;border:0;background:none;color:#68768d;cursor:pointer}nav button.active[data-v-9168260f]{color:#145dd1}nav svg[data-v-9168260f]{width:20px}.notification-account-hint[data-v-8ae30d43]{padding:12px 16px;background:#fff3d6;color:#75521b;font-size:14px;line-height:1.6}:root{font-family:DM Sans,Noto Sans SC,sans-serif;color:#17213b;background:#f5f7fb;font-synthesis:none;--blue:#3478f6;--navy:#17213b;--muted:#7d879c;--line:#e7eaf1;--soft:#edf4ff;--green:#20a676;--red:#ed695f}*{box-sizing:border-box}body{margin:0;min-width:320px;min-height:100vh}button,input,select,textarea{font:inherit}button{cursor:pointer}svg{width:20px;height:20px}.eyebrow{margin:0 0 8px;color:var(--blue);font-size:12px!important;font-weight:700;letter-spacing:.16em}.muted{color:var(--muted)}.login-page{min-height:100vh;display:grid;grid-template-columns:1.08fr .92fr;background:#fff}.login-story{position:relative;display:flex;min-height:100vh;flex-direction:column;justify-content:space-between;padding:48px 7vw;overflow:hidden;color:#fff;background:linear-gradient(145deg,#193f9f,#3478f6 54%,#69a7ff)}.login-story:after{content:"";position:absolute;width:520px;height:520px;right:-160px;bottom:-180px;border:80px solid rgba(255,255,255,.08);border-radius:50%}.brand{display:flex;align-items:center;gap:10px;font-size:19px;font-weight:700;letter-spacing:-.02em}.brand span{display:grid;width:38px;height:38px;place-items:center;border-radius:12px;background:#fff;color:var(--blue)}.story-copy{position:relative;z-index:1;max-width:580px}.story-copy .eyebrow{color:#d7e7ff}.story-copy h1{margin:0 0 24px;font-size:clamp(44px,5.3vw,76px);line-height:1.12;letter-spacing:-.055em}.story-copy>p:last-child{max-width:500px;font-size:17px;line-height:1.8;color:#dce9ff}.story-card{position:relative;z-index:1;display:flex;gap:15px;align-items:center;width:max-content;max-width:100%;padding:18px 22px;border:1px solid rgba(255,255,255,.22);border-radius:18px;background:#ffffff21;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.story-card div{display:flex;flex-direction:column;gap:4px}.story-card span{font-size:13px;color:#dce9ff}.login-panel{display:grid;place-items:center;padding:40px}.login-box{width:min(420px,100%)}.login-box h2{margin:0;font-size:38px;letter-spacing:-.04em}.login-box>.muted{margin:10px 0 35px}.login-box label,.drawer form>label{display:block;margin:18px 0 8px;font-size:14px;font-weight:600}.input-wrap{display:flex;height:54px;align-items:center;gap:11px;padding:0 16px;border:1px solid var(--line);border-radius:13px;background:#fafbfc}.input-wrap:focus-within{border-color:#80aefb;box-shadow:0 0 0 4px #edf4ff}.input-wrap svg{color:#9ba3b4}.input-wrap input{width:100%;border:0;outline:0;background:transparent}.code-row{display:grid;grid-template-columns:1fr 126px;gap:10px}.code-btn,.primary{border:0;border-radius:12px;background:var(--blue);color:#fff;font-weight:600}.code-btn:disabled,.primary:disabled{opacity:.55}.primary{display:inline-flex;min-height:42px;align-items:center;justify-content:center;gap:7px;padding:0 18px}.full{width:100%;height:52px;margin-top:24px}.dev-code{padding:10px 12px;border-radius:10px;background:#effaf6;color:#17835e;font-size:13px}.login-note{text-align:center;color:#a0a7b5;font-size:12px}.mobile-brand{display:none}.session-expired-notice{margin:0 0 20px;padding:12px 14px;border:1px solid #f5d391;border-radius:12px;background:#fff8e8;color:#8a5a00;font-size:13px;line-height:1.5}.portal{display:flex;min-height:100vh}.sidebar{position:fixed;inset:0 auto 0 0;z-index:5;display:flex;width:240px;flex-direction:column;padding:27px 20px;background:#14213d;color:#fff}.sidebar .brand{margin:0 8px 40px}.sidebar nav{display:flex;flex:1;flex-direction:column;gap:7px}.sidebar nav button{display:flex;align-items:center;gap:12px;padding:13px 15px;border:0;border-radius:12px;background:transparent;color:#aeb8cd;text-align:left;font-weight:500}.sidebar nav button:hover,.sidebar nav button.active{background:#263654;color:#fff}.sidebar nav button.active{box-shadow:inset 3px 0 #6ca6ff}.account-card{display:flex;align-items:center;gap:10px;padding:16px 8px 0;border-top:1px solid #2d3b56}.avatar,.mini-avatar{display:grid;place-items:center;border-radius:50%;background:#dbe9ff;color:#2868d8;font-weight:700}.avatar{width:38px;height:38px}.account-card>div:nth-child(2){display:flex;min-width:0;flex:1;flex-direction:column}.account-card strong{font-size:14px}.account-card span{font-size:11px;color:#8f9bb1}.account-card button{padding:5px;border:0;background:transparent;color:#95a2ba}.workspace{width:calc(100% - 240px);margin-left:240px}.workspace>header{display:flex;height:106px;align-items:center;justify-content:space-between;padding:0 clamp(25px,5vw,76px);background:#fff;border-bottom:1px solid var(--line)}.workspace header p{margin:0 0 4px;color:var(--muted);font-size:12px}.workspace header h1{margin:0;font-size:25px;letter-spacing:-.03em}.today{padding:9px 14px;border-radius:10px;background:#f6f8fb;color:#657087;font-size:13px}.content{max-width:1240px;margin:auto;padding:34px clamp(24px,5vw,76px) 80px}.hero{display:flex;min-height:195px;align-items:center;justify-content:space-between;padding:38px 45px;overflow:hidden;border-radius:24px;background:linear-gradient(120deg,#eaf2ff,#f6f9ff);box-shadow:inset 0 0 0 1px #dfeaff}.hero h2{max-width:620px;margin:0 0 10px;font-size:30px;letter-spacing:-.04em}.hero p:last-child{margin:0;color:#71809a}.hero>svg{width:124px;height:124px;color:#7faaf6;transform:rotate(-7deg)}.metric-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:18px 0}.metric-grid article{display:flex;align-items:center;gap:16px;padding:21px;border:1px solid var(--line);border-radius:16px;background:#fff}.metric-grid article>svg{box-sizing:content-box;padding:10px;border-radius:12px;background:var(--soft);color:var(--blue)}.metric-grid article div{display:flex;flex-direction:column}.metric-grid strong{font-size:24px}.metric-grid span{font-size:12px;color:var(--muted)}.panel{padding:25px;border:1px solid var(--line);border-radius:18px;background:#fff}.panel-head,.section-title{display:flex;align-items:center;justify-content:space-between}.panel-head h3,.section-title h2{margin:0}.text-btn{display:flex;align-items:center;border:0;background:transparent;color:var(--blue)}.timeline article{display:grid;grid-template-columns:120px 1fr auto;align-items:center;gap:20px;padding:18px 0;border-bottom:1px solid #edf0f4}.timeline article:last-child{border:0}.timeline time{color:#42506b;font-size:13px}.timeline div{display:flex;flex-direction:column;gap:3px}.timeline span{font-size:12px;color:var(--muted)}.timeline i{padding:5px 9px;border-radius:8px;background:var(--soft);color:var(--blue);font-size:11px;font-style:normal}.section-title{margin-bottom:24px}.section-title h2{font-size:28px;letter-spacing:-.035em}.class-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px}.class-card{overflow:hidden;border:1px solid var(--line);border-radius:18px;background:#fff;transition:.2s ease}.class-card:hover{transform:translateY(-3px);box-shadow:0 14px 34px #2137631a}.class-cover{display:flex;height:112px;align-items:flex-end;justify-content:space-between;padding:20px;background:linear-gradient(135deg,#2c6de3,#7cafff);color:#fff}.class-cover span{font-weight:600}.class-cover svg{width:58px;height:58px;opacity:.35}.class-body{padding:20px}.class-title{display:flex;align-items:start;justify-content:space-between;gap:10px}.class-title h3{margin:0;font-size:17px}.class-body>p{margin:8px 0 18px;color:var(--muted);font-size:12px}.class-meta{display:flex;gap:18px;color:#69768e;font-size:12px}.class-meta span{display:flex;align-items:center;gap:5px}.class-meta svg{width:15px}.tag{display:inline-flex;padding:5px 9px;border-radius:8px;background:#eef3fb;color:#53637f;font-size:11px}.tag.active,.tag.approved{background:#e8f8f2;color:#18815c}.tag.pending,.tag.scheduled{background:#fff3d9;color:#9b6b0a}.tag.ended,.tag.refunded,.tag.rejected{background:#f1f2f5;color:#7b8290}.schedule-list article,.request-list article{display:flex;align-items:center;padding:16px 0;border-bottom:1px solid var(--line)}.schedule-list article:last-of-type,.request-list article:last-of-type{border:0}.date-box{display:flex;width:62px;height:62px;flex-direction:column;align-items:center;justify-content:center;border-radius:14px;background:var(--soft);color:var(--blue)}.date-box strong{font-size:22px;line-height:1}.date-box span{font-size:11px}.schedule-info{flex:1;margin-left:18px}.schedule-info h3{margin:0 0 5px}.schedule-info p{margin:0;color:var(--muted);font-size:13px}.task-grid,.review-list{display:grid;gap:14px}.task-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:18px;padding:22px;border:1px solid var(--line);border-radius:17px;background:#fff}.task-icon{display:grid;width:48px;height:48px;place-items:center;border-radius:14px;background:var(--soft);color:var(--blue)}.task-kind{color:var(--blue);font-size:11px;font-weight:700}.task-card h3{margin:5px 0}.task-card p{margin:0 0 8px;color:var(--muted);font-size:13px}.task-card audio{width:min(420px,100%);height:34px}.done{display:flex;align-items:center;gap:5px;color:var(--green);font-size:13px}.review-list article{padding:24px;border:1px solid var(--line);border-radius:17px;background:#fff}.review-head{display:flex;justify-content:space-between}.review-head div{display:flex;flex-direction:column}.review-head span{margin-top:5px;color:var(--muted);font-size:12px}.review-head b{color:#ef9b25;font-size:13px}.review-list dl{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin:20px 0 0}.review-list dl div{padding:14px;border-radius:11px;background:#f7f9fc}.review-list dt{margin-bottom:7px;color:var(--muted);font-size:11px}.review-list dd{margin:0;font-size:13px;line-height:1.6}.request-list article{justify-content:space-between}.request-list article>div{display:flex;flex-direction:column;gap:4px}.request-list span{font-size:12px;color:var(--muted)}.empty{padding:34px;text-align:center;color:#9aa3b3}.mobile-nav{display:none}.overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:20;background:#0a14286b;-webkit-backdrop-filter:blur(3px);backdrop-filter:blur(3px)}.drawer{position:absolute;inset:0 0 0 auto;width:min(610px,100%);padding:38px 44px 80px;overflow-y:auto;background:#fff;box-shadow:-20px 0 60px #0c1d4029}.drawer .back{display:flex;align-items:center;gap:5px;margin-bottom:38px;padding:0;border:0;background:transparent;color:var(--muted)}.drawer h2{margin:0;font-size:30px}.quick-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin:28px 0}.quick-actions button{display:flex;min-height:92px;flex-direction:column;align-items:center;justify-content:center;gap:8px;border:1px solid #dfe7f5;border-radius:14px;background:#f7faff;color:#2d65c9;font-weight:600}.subheading{margin:28px 0 12px;font-size:14px}.student-list{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.student-list>div{display:flex;align-items:center;gap:9px;padding:10px;border-radius:11px;background:#f7f9fc}.mini-avatar{width:30px;height:30px;font-size:12px}.student-list strong{flex:1;font-size:13px}.student-list i{color:var(--muted);font-size:11px;font-style:normal}.compact-schedules>div{display:flex;justify-content:space-between;padding:12px 0;border-bottom:1px solid var(--line);font-size:13px}.compact-schedules span{color:var(--muted)}.drawer input,.drawer select,.drawer textarea{width:100%;padding:13px 14px;border:1px solid var(--line);border-radius:11px;outline:0;background:#fff}.drawer input:focus,.drawer select:focus,.drawer textarea:focus{border-color:#7eaaf7;box-shadow:0 0 0 3px var(--soft)}.drawer textarea{min-height:105px;resize:vertical}.drawer audio{width:100%;margin-top:14px}.student-checks{display:flex;flex-wrap:wrap;gap:8px}.student-checks label{display:flex!important;align-items:center;gap:6px;margin:0!important;padding:9px 12px;border-radius:9px;background:#f2f5fa;font-size:13px!important}.student-checks input{width:auto}.assignment-quote{margin:22px 0;padding:16px;border-left:3px solid var(--blue);background:var(--soft)}.assignment-quote p{margin-bottom:0;color:var(--muted);line-height:1.6}.toast{position:fixed;z-index:40;right:28px;top:24px;display:flex;align-items:center;gap:8px;padding:13px 17px;border-radius:12px;box-shadow:0 12px 30px #1a2b4c2e;color:#fff}.toast.success{background:#17845f}.toast.error{background:#d85450}@media(max-width:900px){.class-grid{grid-template-columns:repeat(2,1fr)}.sidebar{width:210px}.workspace{width:calc(100% - 210px);margin-left:210px}.review-list dl{grid-template-columns:1fr}.hero>svg{display:none}}@media(max-width:680px){body{background:#f6f8fc}.login-page{display:block}.login-story{display:none}.login-panel{min-height:100vh;padding:30px 22px}.mobile-brand{display:flex;align-items:center;gap:8px;margin-bottom:70px;color:var(--blue);font-size:18px;font-weight:700}.mobile-brand svg{width:30px;height:30px}.login-box h2{font-size:32px}.code-row{grid-template-columns:1fr 112px}.sidebar{display:none}.workspace{width:100%;margin:0}.workspace>header{height:86px;padding:0 19px}.workspace header h1{font-size:21px}.today{display:none}.content{padding:22px 16px 94px}.hero{min-height:170px;padding:27px 24px;border-radius:19px}.hero h2{font-size:23px}.metric-grid{grid-template-columns:repeat(2,1fr)}.metric-grid article{padding:16px}.metric-grid article:nth-child(3){grid-column:1/-1}.timeline article{grid-template-columns:85px 1fr}.timeline i{display:none}.panel{padding:18px}.class-grid{grid-template-columns:1fr}.class-cover{height:92px}.schedule-list article{align-items:flex-start}.task-card{grid-template-columns:auto 1fr}.task-card>button,.task-card>.done{grid-column:2}.section-title h2{font-size:24px}.mobile-nav{position:fixed;inset:auto 0 0;z-index:10;display:flex;justify-content:space-around;padding:8px 5px max(8px,env(safe-area-inset-bottom));border-top:1px solid var(--line);background:#fffffff2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px)}.mobile-nav button{display:flex;min-width:54px;flex-direction:column;align-items:center;gap:3px;border:0;background:transparent;color:#98a1b2;font-size:9px}.mobile-nav button svg{width:20px}.mobile-nav button.active{color:var(--blue)}.drawer{padding:26px 20px 70px}.drawer .back{margin-bottom:25px}.quick-actions{grid-template-columns:repeat(3,1fr)}.quick-actions button{min-height:82px;font-size:12px}.student-list{grid-template-columns:1fr}.toast{right:14px;left:14px;top:14px}.review-head{gap:12px}.review-head b{white-space:nowrap}}.login-divider{display:flex;align-items:center;gap:12px;margin:22px 0 0;color:#a0a7b5;font-size:12px}.login-divider:before,.login-divider:after{content:"";flex:1;height:1px;background:var(--line)}.wechat-btn{display:flex;width:100%;height:52px;align-items:center;justify-content:center;gap:8px;border:0;border-radius:12px;background:#07c160;color:#fff;font-size:15px;font-weight:600}.wechat-btn:disabled{opacity:.55}.wechat-btn svg{width:22px;height:22px}.back-link{display:flex;align-items:center;gap:5px;margin-bottom:26px;padding:0;border:0;background:transparent;color:var(--muted);font-size:13px}.back-link:hover{color:var(--blue)}.account-item{display:flex;width:100%;align-items:center;gap:13px;padding:16px;margin-top:12px;border:1px solid var(--line);border-radius:14px;background:#fff;text-align:left;transition:.15s ease}.account-item:hover{border-color:#80aefb;box-shadow:0 0 0 4px #edf4ff}.account-item>svg{width:34px;height:34px;color:#9ba3b4}.account-info{display:flex;min-width:0;flex:1;flex-direction:column;gap:3px}.account-info b{font-size:15px}.account-info small{color:var(--muted);font-size:12px}.account-default{padding:4px 8px;border-radius:8px;background:var(--soft);color:var(--blue);font-size:11px;font-style:normal}.dev-openid{display:grid;grid-template-columns:1fr 112px;gap:10px;margin-top:14px}.dev-openid .code-btn{height:54px}.bind-more-link{display:flex;width:100%;min-height:46px;align-items:center;justify-content:center;gap:7px;margin-top:14px;border:1px dashed #9dbcf5;border-radius:12px;background:#f4f8ff;color:var(--blue);font-size:13px;font-weight:700}.bind-more-link svg{width:18px;height:18px}.login-bind-candidates{display:grid;gap:8px;margin-top:12px}.login-bind-candidates>p{margin:0;color:var(--muted);font-size:12px}.login-bind-candidates>button{display:flex;align-items:center;justify-content:space-between;padding:12px;border:1px solid var(--line);border-radius:12px;background:#fff;text-align:left}.login-bind-candidates>button span{display:flex;flex-direction:column;gap:2px}.login-bind-candidates>button small{color:var(--muted)}.login-bind-candidates>button em{color:var(--blue);font-size:12px;font-style:normal;font-weight:700}.code-sent{padding:10px 12px;border-radius:10px;background:#effaf6;color:#17835e;font-size:13px}.form-error{margin:10px 0;color:#c74742;font-size:13px}.student-app{min-height:100vh;padding-bottom:90px;background:#f5f7fb;color:#17213b}.student-head{position:sticky;top:0;z-index:10;display:flex;height:64px;align-items:center;justify-content:space-between;padding:0 max(18px,calc((100vw - 1080px)/2));border-bottom:1px solid #e5eaf2;background:#fffffff0;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.student-brand{display:flex;align-items:center;gap:8px;font-weight:700}.student-brand svg{color:#3478f6}.icon-btn{display:grid;width:44px;height:44px;place-items:center;border:0;border-radius:50%;background:transparent;color:#6d7890}.student-main{width:min(1080px,calc(100% - 32px));margin:0 auto}.profile-hero{display:flex;align-items:center;gap:20px;margin-top:24px;padding:30px;border-radius:24px;background:linear-gradient(135deg,#1d54c3,#4d8df8);color:#fff;box-shadow:0 16px 40px #2b63ca33}.profile-avatar{display:grid;width:78px;height:78px;flex:none;place-items:center;overflow:hidden;border:3px solid rgba(255,255,255,.5);border-radius:24px;background:#fff;color:#3478f6;font-size:28px;font-weight:700}.profile-avatar img{width:100%;height:100%;object-fit:cover}.profile-hero p,.page-intro p,.coin-hero p,.audio-player>p{margin:0 0 5px;font-size:11px;font-weight:700;letter-spacing:.16em;opacity:.8}.profile-hero h1,.page-intro h1,.coin-hero h1{margin:0 0 5px;font-size:28px}.profile-hero span,.page-intro span,.coin-hero span{font-size:13px;opacity:.78}.report-strip{display:grid;grid-template-columns:repeat(3,1fr);margin:-3px 14px 0;padding:18px;border:1px solid #e4e9f2;border-radius:0 0 18px 18px;background:#fff}.report-strip article{display:flex;flex-direction:column;align-items:center;border-right:1px solid #e8ebf1}.report-strip article:last-child{border:0}.report-strip b{font-size:24px}.report-strip span{color:#7c879b;font-size:11px}.student-section{margin-top:30px}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:14px}.section-heading p{margin:0 0 4px;color:#3478f6;font-size:10px;font-weight:700;letter-spacing:.13em}.section-heading h2,.student-section>h2{margin:0;font-size:20px}.student-class-list{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.student-class-list>button{display:flex;align-items:center;gap:14px;padding:17px;border:1px solid #e4e8f0;border-radius:18px;background:#fff;text-align:left}.class-art{display:grid;width:64px;height:64px;flex:none;place-items:center;border-radius:17px;background:#edf4ff;color:#3478f6}.class-art svg{width:30px;height:30px}.class-copy{display:flex;min-width:0;flex:1;flex-direction:column}.class-copy i{align-self:flex-start;padding:3px 7px;border-radius:6px;background:#e7f8f1;color:#18815e;font-size:10px;font-style:normal}.class-copy b{margin:5px 0 2px;font-size:16px}.class-copy small{overflow:hidden;color:#7d8799;text-overflow:ellipsis;white-space:nowrap}.ended-list{overflow:hidden;border:1px solid #e4e8f0;border-radius:16px;background:#fff}.ended-list button{display:flex;width:100%;align-items:center;gap:10px;padding:16px 18px;border:0;border-bottom:1px solid #edf0f4;background:#fff;text-align:left}.ended-list button:last-child{border:0}.ended-list button div{display:flex;flex:1;flex-direction:column}.ended-list span{color:#8790a1;font-size:12px}.ended-list em{color:#8490a4;font-size:11px;font-style:normal}.student-empty{grid-column:1/-1;padding:32px;text-align:center;color:#98a1b1}.class-hero,.page-intro,.coin-hero{margin:24px 0 0;padding:28px;border-radius:22px;background:#17274a;color:#fff}.class-hero p{display:inline-block;margin:0 0 12px;padding:4px 8px;border-radius:7px;background:#2e4773;font-size:11px}.class-hero h1{margin:0 0 6px;font-size:28px}.class-hero span{color:#bdc9dd;font-size:13px}.class-tabs{display:flex;margin:18px 0;overflow:auto;border-bottom:1px solid #e1e6ef}.class-tabs button{flex:1;min-width:max-content;padding:13px 12px;border:0;border-bottom:3px solid transparent;background:transparent;color:#7d879b}.class-tabs button.active{border-color:#3478f6;color:#3478f6;font-weight:700}.next-card{display:flex;align-items:center;gap:15px;padding:20px;border-radius:17px;background:#eaf2ff;color:#3478f6}.next-card>svg{box-sizing:content-box;padding:9px;border-radius:11px;background:#fff}.next-card div{display:flex;flex-direction:column}.next-card span{font-size:11px}.next-card b{color:#17213b}.class-stats{display:grid;grid-template-columns:repeat(4,1fr);gap:10px;margin-top:12px}.class-stats article{display:flex;flex-direction:column;align-items:center;padding:18px 8px;border:1px solid #e4e8f0;border-radius:14px;background:#fff}.class-stats b{font-size:21px}.class-stats span{color:#7f899d;font-size:10px}.class-feed{display:grid;gap:11px}.schedule-row,.assignment-row,.review-row{border:1px solid #e3e8f1;border-radius:17px;background:#fff}.schedule-row{display:flex;align-items:center;gap:14px;padding:15px}.schedule-row time{display:flex;width:52px;height:54px;flex-direction:column;align-items:center;justify-content:center;border-radius:12px;background:#edf4ff;color:#3478f6;font-size:10px}.schedule-row time b{font-size:20px}.schedule-row div{display:flex;flex:1;flex-direction:column}.schedule-row div span{color:#7f899d;font-size:12px}.schedule-row em{color:#68758b;font-size:11px;font-style:normal}.assignment-row{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:14px;padding:18px}.assignment-icon{display:grid;width:46px;height:46px;place-items:center;border-radius:13px;background:#edf4ff;color:#3478f6}.assignment-row>div:nth-child(2){display:flex;min-width:0;flex-direction:column}.assignment-row small{color:#8c96a8}.assignment-row p{margin:5px 0;color:#626f86;font-size:13px}.assignment-row audio{width:min(420px,100%);height:32px}.assignment-row>button,.review-row>button{min-height:40px;padding:0 14px;border:0;border-radius:10px;background:#3478f6;color:#fff}.review-row{padding:20px}.review-title{display:flex;justify-content:space-between}.review-title div{display:flex;flex-direction:column}.review-title small{color:#8892a3}.review-title>span{color:#ef9b26;font-size:12px;font-weight:700}.review-row p{display:grid;grid-template-columns:80px 1fr;margin:14px 0;color:#4f5d74;font-size:13px;line-height:1.6}.review-row p i{color:#8993a5;font-size:11px;font-style:normal}.received{display:flex;align-items:center;gap:6px;color:#18815e;font-size:12px}.learning-intro{background:linear-gradient(135deg,#5c3dc8,#8b6df0)}.book-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:14px}.book-grid button{padding:0;border:0;background:transparent;text-align:left}.book-cover{display:grid;aspect-ratio:3/4;place-items:center;overflow:hidden;border-radius:14px;background:linear-gradient(150deg,#dbe7fb,#f4f7fc);color:#6e8fc9;box-shadow:0 8px 20px #1f30541a}.book-cover img{width:100%;height:100%;object-fit:cover}.book-cover svg{width:44px;height:44px}.book-grid b{display:block;margin-top:8px;font-size:13px}.lesson-list{display:grid;gap:10px;margin-top:18px}.lesson-list button{display:flex;align-items:center;gap:13px;padding:15px;border:1px solid #e3e8f0;border-radius:15px;background:#fff;text-align:left}.lesson-list>button>span{display:grid;width:42px;height:42px;place-items:center;border-radius:12px;background:#edf4ff;color:#3478f6}.lesson-list>button>div{display:flex;flex:1;flex-direction:column}.lesson-list small{color:#8b95a7}.audio-player{margin-top:20px;padding:35px;text-align:center;border-radius:24px;background:linear-gradient(150deg,#17274a,#284985);color:#fff}.disc{display:grid;width:104px;height:104px;margin:18px auto;place-items:center;border:22px solid #0e1931;border-radius:50%;background:#78a7fb}.disc svg{width:31px;height:31px}.audio-player h1{font-size:22px}.audio-player audio{width:min(520px,100%)}.track-list{display:grid;gap:8px}.track-list>div{display:grid;grid-template-columns:40px 1fr minmax(190px,300px);align-items:center;gap:10px;padding:12px;border-radius:13px;background:#fff}.track-list>div>span{color:#9aa3b2}.track-list>div>div{display:flex;flex-direction:column}.track-list small{color:#8b95a6}.track-list audio{width:100%;height:32px}.source-text{padding:22px;border-radius:17px;background:#fff}.source-text p{white-space:pre-wrap;color:#56647b;line-height:1.8}.coin-hero{display:flex;align-items:center;justify-content:space-between;background:linear-gradient(135deg,#d68819,#f2b337)}.coin-balance{display:flex;min-width:130px;flex-direction:column;align-items:center;padding:14px;border:1px solid rgba(255,255,255,.3);border-radius:17px;background:#ffffff24}.coin-balance svg{width:30px;height:30px}.coin-balance b{font-size:30px}.coin-balance span{font-size:10px}.gift-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.gift-grid article{padding:12px;border:1px solid #e3e8f0;border-radius:17px;background:#fff}.gift-cover{display:grid;aspect-ratio:1.3;place-items:center;overflow:hidden;border-radius:12px;background:#fff6df;color:#dda02e}.gift-cover img{width:100%;height:100%;object-fit:cover}.gift-cover svg{width:42px;height:42px}.gift-grid h3{margin:12px 0 3px;font-size:15px}.gift-grid p{height:38px;margin:0;color:#7e899b;font-size:11px;overflow:hidden}.gift-grid article>div:last-child{display:flex;align-items:center;justify-content:space-between;margin-top:10px}.gift-grid article>div:last-child b{display:flex;align-items:center;gap:4px;color:#dc9220}.gift-grid article>div:last-child button{min-height:36px;padding:0 13px;border:0;border-radius:9px;background:#3478f6;color:#fff}.gift-grid button:disabled{background:#d5dae3}.coin-history{overflow:hidden;border:1px solid #e3e8f0;border-radius:15px;background:#fff}.coin-history>div{display:flex;justify-content:space-between;padding:14px 17px;border-bottom:1px solid #edf0f4}.coin-history>div:last-child{border:0}.coin-history span{display:flex;flex-direction:column}.coin-history small{color:#929bab}.coin-history em{color:#dd5c57;font-style:normal;font-weight:700}.coin-history em.plus{color:#169568}.student-nav{position:fixed;inset:auto 0 0;z-index:12;display:flex;justify-content:center;gap:min(10vw,100px);padding:9px max(16px,calc((100vw - 760px)/2)) max(9px,env(safe-area-inset-bottom));border-top:1px solid #e2e7ef;background:#fffffff5;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.student-nav button{display:flex;min-width:80px;min-height:48px;flex-direction:column;align-items:center;justify-content:center;gap:2px;border:0;background:transparent;color:#8791a4;font-size:10px}.student-nav button.active{color:#3478f6}.student-overlay,.teacher-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:30;background:#09122680;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.student-sheet,.teacher-drawer{position:absolute;inset:0 0 0 auto;width:min(610px,100%);padding:28px 34px 70px;overflow:auto;background:#fff}.sheet-close,.teacher-back{display:flex;min-height:40px;align-items:center;gap:5px;border:0;background:transparent;color:#69768d}.student-sheet h2{margin:10px 0}.student-sheet>label,.teacher-drawer>label{display:block;margin:18px 0 8px;font-size:13px;font-weight:700}.student-sheet textarea,.teacher-drawer textarea,.teacher-drawer input,.teacher-drawer select{width:100%;min-height:48px;padding:12px;border:1px solid #dfe4ed;border-radius:11px}.student-sheet textarea,.teacher-drawer textarea{min-height:100px}.media-actions{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.media-actions label{display:flex;min-height:68px;align-items:center;justify-content:center;gap:6px;border:1px solid #dce5f4;border-radius:12px;background:#f5f8fe;color:#326acb}.media-actions input{display:none}.upload-list>div{display:flex;justify-content:space-between;padding:10px;border-bottom:1px solid #edf0f3;font-size:12px}.upload-list button{border:0;background:transparent;color:#dc5b54}.student-primary,.teacher-primary{width:100%;min-height:50px;margin-top:20px;border:0;border-radius:12px;background:#3478f6;color:#fff;font-weight:700}.student-primary:disabled{opacity:.5}.submission-history{display:grid;gap:9px}.submission-history>article{padding:13px;border-radius:12px;background:#f7f9fc}.submission-history small{color:#8c96a8}.ai-card{margin-top:8px;padding:10px;border-radius:10px;background:#fff}.ai-card audio,.ai-card video{width:100%;max-height:220px}.ai-card>span{color:#9a741f;font-size:12px}.rating{display:flex;align-items:center;gap:4px}.rating button{display:grid;width:42px;height:42px;place-items:center;border:0;background:transparent;color:#c5cad3}.rating button.active{color:#f2ab2f}.rating button.active svg{fill:currentColor}.student-toast,.teacher-toast{position:fixed;z-index:50;top:18px;right:18px;display:flex;align-items:center;gap:7px;padding:12px 16px;border-radius:11px;background:#16825e;color:#fff;box-shadow:0 10px 30px #14284633}.teacher-app{min-height:100vh;background:#f5f7fb;color:#17213b}.teacher-side{position:fixed;inset:0 auto 0 0;display:flex;width:230px;flex-direction:column;padding:28px 18px;background:#14213d;color:#fff}.teacher-logo{display:flex;align-items:center;gap:8px;font-weight:700}.teacher-logo svg{color:#75a7ff}.teacher-logo span{margin-left:auto;padding:3px 6px;border-radius:5px;background:#2b3c5d;color:#aebbd3;font-size:9px}.teacher-side nav{display:flex;flex:1;flex-direction:column;gap:7px;margin-top:40px}.teacher-side nav button{display:flex;min-height:48px;align-items:center;gap:11px;padding:0 14px;border:0;border-radius:11px;background:transparent;color:#aeb9ce;text-align:left}.teacher-side nav button.active{background:#273755;color:#fff}.teacher-account{display:flex;align-items:center;gap:9px;padding-top:16px;border-top:1px solid #2c3a55}.teacher-account>span{display:grid;width:36px;height:36px;place-items:center;border-radius:50%;background:#d9e7ff;color:#3478f6}.teacher-account>div{display:flex;min-width:0;flex:1;flex-direction:column}.teacher-account small{color:#8e9bb2}.teacher-account>button{border:0;background:transparent;color:#99a7bd}.teacher-main{margin-left:230px}.teacher-main>header{display:flex;height:100px;align-items:center;justify-content:space-between;padding:0 clamp(25px,5vw,70px);border-bottom:1px solid #e4e8ef;background:#fff}.teacher-main header p,.teacher-hero p,.teacher-class-head p,.teacher-drawer>p{margin:0;color:#3478f6;font-size:10px;font-weight:700;letter-spacing:.14em}.teacher-main header h1{margin:4px 0 0;font-size:25px}.teacher-main header>span{color:#7d879a;font-size:12px}.teacher-content{width:min(1160px,calc(100% - 48px));margin:0 auto;padding:32px 0}.teacher-hero{display:flex;align-items:center;justify-content:space-between;padding:38px;border-radius:22px;background:linear-gradient(120deg,#e9f2ff,#f8faff)}.teacher-hero h2{margin:5px 0 8px;font-size:28px}.teacher-hero>svg{width:110px;height:110px;color:#7ba9f8}.teacher-metrics{display:grid;grid-template-columns:repeat(2,1fr);gap:14px;margin:15px 0}.teacher-metrics article{display:flex;flex-direction:column;padding:20px;border:1px solid #e3e8f0;border-radius:15px;background:#fff}.teacher-metrics b{font-size:25px}.teacher-metrics span{color:#808a9c;font-size:11px}.teacher-panel{padding:22px;border:1px solid #e3e8f0;border-radius:17px;background:#fff}.teacher-panel h2{margin:0 0 13px;font-size:17px}.teacher-schedules>div{display:flex;gap:18px;padding:13px 0;border-bottom:1px solid #edf0f4}.teacher-schedules>div:last-child{border:0}.teacher-schedules time{width:130px;color:#4d5b72;font-size:12px}.teacher-schedules span{display:flex;flex-direction:column}.teacher-schedules small{color:#8993a5}.teacher-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px}.teacher-grid>button{display:flex;gap:14px;padding:20px;border:1px solid #e2e7ef;border-radius:17px;background:#fff;text-align:left}.teacher-grid>button>div{display:grid;width:54px;height:54px;place-items:center;border-radius:14px;background:#edf4ff;color:#3478f6}.teacher-grid>button>span{display:flex;min-width:0;flex-direction:column}.teacher-grid small{color:#3478f6}.teacher-grid b{margin:4px 0 10px;font-size:16px}.teacher-grid em{display:flex;align-items:center;gap:4px;color:#818b9d;font-size:11px;font-style:normal}.teacher-grid em svg{width:14px}.teacher-class-head{display:flex;align-items:center;justify-content:space-between;margin:14px 0 20px;padding:25px;border-radius:18px;background:#18284a;color:#fff}.teacher-class-head h2{margin:5px 0;font-size:25px}.teacher-class-head>div:last-child{display:flex;gap:8px}.teacher-class-head button{display:flex;min-height:44px;align-items:center;gap:5px;padding:0 13px;border:1px solid #486087;border-radius:10px;background:#263a61;color:#fff}.teacher-two-col{display:grid;grid-template-columns:1fr 1fr;gap:14px}.teacher-students{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.teacher-students>div{display:flex;align-items:center;gap:8px;padding:9px;border-radius:10px;background:#f7f9fc}.teacher-students span{display:grid;width:30px;height:30px;place-items:center;border-radius:50%;background:#dce9ff;color:#3478f6}.teacher-students b{flex:1;font-size:13px}.teacher-students small{color:#8791a2}.teacher-drawer h2{font-size:28px}.teacher-checks{display:flex;flex-wrap:wrap;gap:7px}.teacher-checks label{display:flex;gap:5px;padding:9px;border-radius:8px;background:#f1f4f9}.teacher-checks input{width:auto;min-height:auto}.teacher-images{display:flex;flex-wrap:wrap;gap:8px}.teacher-images img{width:72px;height:72px;border-radius:8px;object-fit:cover}@media(max-width:760px){.student-main{width:min(100% - 28px,1080px)}.student-class-list{grid-template-columns:1fr}.book-grid{grid-template-columns:repeat(3,1fr)}.gift-grid,.class-stats{grid-template-columns:repeat(2,1fr)}.assignment-row{grid-template-columns:auto 1fr}.assignment-row>button{grid-column:2}.track-list>div{grid-template-columns:30px 1fr}.track-list audio{grid-column:2}.coin-hero{align-items:flex-start}.coin-balance{min-width:105px}.teacher-side{display:none}.teacher-main{margin:0}.teacher-main>header{height:80px;padding:0 18px}.teacher-main header>span{display:none}.teacher-content{width:calc(100% - 28px);padding:20px 0 90px}.teacher-hero{padding:25px}.teacher-hero h2{font-size:21px}.teacher-hero>svg{display:none}.teacher-grid{grid-template-columns:1fr}.teacher-class-head{align-items:flex-start;flex-direction:column;gap:20px}.teacher-class-head>div:last-child{width:100%;overflow:auto}.teacher-two-col{grid-template-columns:1fr}}@media(max-width:460px){.profile-hero{padding:23px}.profile-avatar{width:62px;height:62px;border-radius:18px}.profile-hero h1{font-size:23px}.report-strip{margin-left:8px;margin-right:8px}.book-grid{grid-template-columns:repeat(2,1fr)}.gift-grid{grid-template-columns:1fr}.class-tabs button{font-size:12px}.media-actions{grid-template-columns:1fr}.student-sheet{padding:22px 18px 60px}.review-row p{grid-template-columns:1fr}.student-nav{justify-content:space-around;gap:0}.student-nav button{min-width:70px}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important;transition:none!important;animation:none!important}}button{cursor:pointer;touch-action:manipulation}button:disabled{cursor:not-allowed;opacity:.55}.profile-hero>div:nth-child(2){min-width:0;flex:1}.profile-edit{display:flex;min-height:44px;align-items:center;gap:6px;padding:0 14px;border:1px solid rgba(255,255,255,.45);border-radius:11px;background:#ffffff24;color:#fff}.class-copy em{margin-top:6px;color:#3478f6;font-size:11px;font-style:normal}.park-tabs,.teacher-class-tabs{display:flex;margin-top:18px;overflow-x:auto;border-bottom:1px solid #dfe5ef}.park-tabs button,.teacher-class-tabs button{min-height:48px;padding:0 18px;border:0;border-bottom:3px solid transparent;background:transparent;color:#78849a;white-space:nowrap}.park-tabs button.active,.teacher-class-tabs button.active{border-color:#3478f6;color:#3478f6;font-weight:700}.park-content{margin-top:18px}.exchange-history{display:grid;gap:10px}.exchange-history article{display:flex;align-items:center;gap:13px;padding:13px;border:1px solid #e3e8f0;border-radius:15px;background:#fff}.exchange-thumb{display:grid;width:58px;height:58px;flex:none;place-items:center;overflow:hidden;border-radius:12px;background:#fff6df;color:#dda02e}.exchange-thumb img{width:100%;height:100%;object-fit:cover}.exchange-history article>div:nth-child(2){display:flex;min-width:0;flex:1;flex-direction:column}.exchange-history small{color:#8b95a7}.exchange-history article>span{display:flex;flex-direction:column;align-items:flex-end;color:#657289;font-size:11px}.exchange-history em{color:#d8891e;font-size:13px;font-style:normal;font-weight:700}.park-pagination{display:flex;align-items:center;justify-content:center;gap:14px;margin-top:18px}.park-pagination button{min-width:82px;min-height:42px;border:1px solid #dce3ee;border-radius:10px;background:#fff;color:#3478f6}.park-pagination span{color:#7f8a9d;font-size:12px}.profile-intro{background:linear-gradient(135deg,#1b6171,#36a1a2)}.profile-form{display:grid;max-width:620px;gap:18px;margin:18px auto 0;padding:25px;border:1px solid #e2e7ef;border-radius:20px;background:#fff}.profile-form>label{display:flex;flex-direction:column;gap:7px;font-size:13px;font-weight:700}.profile-form input{min-height:48px;padding:0 13px;border:1px solid #dce3ed;border-radius:11px;font-size:16px}.profile-form input:disabled{background:#f2f4f7;color:#778296}.profile-form small{color:#8b95a7;font-weight:400}.profile-photo-editor{display:flex;align-items:center;gap:18px}.profile-photo-editor>label{display:flex;min-height:44px;align-items:center;gap:6px;padding:0 14px;border-radius:11px;background:#edf4ff;color:#3478f6}.profile-photo-editor input,.teacher-mobile-nav{display:none}.legacy-class-list{display:grid;gap:15px}.legacy-class-card{overflow:hidden;border:1px solid #dfe5ef;border-radius:18px;background:#fff;box-shadow:0 8px 24px #25395e0f}.legacy-class-main{display:flex;width:100%;align-items:center;gap:14px;padding:20px;border:0;background:#fff;text-align:left}.legacy-class-main>span:nth-child(2){display:flex;min-width:0;flex:1;flex-direction:column}.legacy-class-main small{color:#3478f6}.legacy-class-main b{margin:3px 0 7px;font-size:18px}.legacy-class-main em{color:#7e899d;font-size:12px;font-style:normal}.legacy-class-icon{display:grid;width:54px;height:54px;flex:none;place-items:center;border-radius:14px;background:#edf4ff;color:#3478f6}.latest-preview{display:flex;align-items:center;gap:11px;margin:0 20px 14px;padding:12px 14px;border-radius:11px;background:#f2f7ff;color:#3478f6}.latest-preview>span{display:flex;min-width:0;flex-direction:column}.latest-preview small{color:#7d8da7}.latest-preview b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.legacy-class-actions{display:grid;grid-template-columns:repeat(6,1fr);border-top:1px solid #e7ebf2}.legacy-class-actions button{display:flex;min-height:58px;align-items:center;justify-content:center;gap:5px;border:0;border-right:1px solid #e7ebf2;background:#fafbfd;color:#53627a}.legacy-class-actions button:last-child{border:0}.legacy-class-actions button:hover{background:#edf4ff;color:#3478f6}.teacher-class-tabs{margin:0 0 15px}.teacher-class-overview{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}.teacher-class-overview article{display:flex;align-items:center;gap:13px;padding:20px;border:1px solid #e2e7ef;border-radius:15px;background:#fff;color:#3478f6}.teacher-class-overview article div{display:flex;flex-direction:column}.teacher-class-overview small{color:#8791a3}.teacher-class-overview b{color:#17213b;font-size:18px}.teacher-history{display:grid;gap:10px}.teacher-history article{display:flex;align-items:center;gap:16px;padding:17px;border:1px solid #e2e7ef;border-radius:15px;background:#fff}.teacher-history article>div{display:flex;min-width:0;flex:1;flex-direction:column}.teacher-history small{color:#8993a5}.teacher-history b{margin-top:3px}.teacher-history p{margin:5px 0 0;color:#6d788c;font-size:12px}.teacher-history article>span{padding:6px 9px;border-radius:8px;background:#edf4ff;color:#3478f6;font-size:11px}.teacher-history audio{width:min(420px,100%);height:32px;margin-top:7px}.schedule-checkin{display:flex;min-height:40px;align-items:center;gap:5px;padding:0 12px;border:1px solid #d8e3f5;border-radius:9px;background:#f2f7ff;color:#3478f6}.teacher-students img{width:100%;height:100%;border-radius:50%;object-fit:cover}@media(max-width:900px){.legacy-class-actions{grid-template-columns:repeat(3,1fr)}.legacy-class-actions button:nth-child(3){border-right:0}.legacy-class-actions button:nth-child(-n+3){border-bottom:1px solid #e7ebf2}}@media(max-width:760px){.profile-hero{align-items:flex-start;flex-wrap:wrap}.profile-edit{margin-left:80px}.teacher-mobile-nav{position:sticky;top:0;z-index:9;display:flex;overflow-x:auto;border-bottom:1px solid #e3e8f0;background:#fff}.teacher-mobile-nav button{display:flex;min-width:33.333%;min-height:52px;align-items:center;justify-content:center;gap:5px;border:0;border-bottom:3px solid transparent;background:#fff;color:#7c879a}.teacher-mobile-nav button.active{border-color:#3478f6;color:#3478f6}.teacher-class-overview{grid-template-columns:1fr}.teacher-history article{align-items:flex-start;flex-direction:column}.teacher-history article>span{align-self:flex-start}.legacy-class-main{padding:16px}.legacy-class-actions button{font-size:11px}.teacher-class-tabs{margin-left:-14px;margin-right:-14px}.schedule-checkin{margin-left:auto}}@media(max-width:460px){.profile-edit{width:100%;margin-left:0;justify-content:center}.park-tabs button{flex:1;padding:0 8px;font-size:12px}.park-pagination{gap:8px}.park-pagination button{min-width:70px}.park-pagination span{font-size:10px}.profile-form{padding:18px}.legacy-class-main{align-items:flex-start}.legacy-class-icon{width:46px;height:46px}.legacy-class-actions button{flex-direction:column;gap:3px}.teacher-class-head>div:last-child button{min-width:max-content}}.wechat-account-book{max-width:720px;margin:18px auto 0;padding:24px;border:1px solid var(--school-line);border-radius:22px;background:#fff;box-shadow:var(--school-shadow)}.teacher-content>.wechat-account-book{max-width:none;margin-top:16px}.wechat-account-head{display:flex;align-items:center;gap:14px}.wechat-account-mark{display:grid;width:48px;height:48px;flex:none;place-items:center;border-radius:15px;background:linear-gradient(145deg,#19c878,#07a956);color:#fff;box-shadow:0 9px 22px #07a95633}.wechat-account-mark svg{width:25px;height:25px}.wechat-account-head>div{display:flex;min-width:0;flex:1;flex-direction:column;gap:2px}.wechat-account-head p{margin:0;color:#079756;font-size:10px;font-weight:800;letter-spacing:.13em}.wechat-account-head h3{margin:0;color:var(--school-ink);font-size:19px}.wechat-account-head small{color:var(--school-muted);font-size:12px}.wechat-connected{display:inline-flex;align-items:center;gap:4px;padding:6px 9px;border-radius:999px;background:#eafaf2;color:#07894d;font-size:11px;font-weight:700;white-space:nowrap}.wechat-connected svg{width:14px;height:14px}.wechat-head-actions{display:flex;min-width:max-content;flex:none!important;flex-direction:row!important;align-items:center;gap:8px}.wechat-unbind-toggle{display:inline-flex;min-height:40px;align-items:center;gap:5px;padding:0 11px;border:1px solid #efc7c4;border-radius:10px;background:#fff8f7;color:#bd3d37;font-size:12px;font-weight:700}.wechat-unbind-toggle svg{width:15px;height:15px}.wechat-account-list{display:grid;gap:10px;margin-top:20px}.wechat-account-list article{display:flex;min-height:72px;align-items:center;gap:12px;padding:12px 14px;border:1px solid #e3e9f2;border-radius:16px;background:#fbfcff}.wechat-account-list article.current{border-color:#bdd3ff;background:linear-gradient(90deg,#f2f7ff,#fff)}.wechat-account-list article.selectable{cursor:pointer}.wechat-account-list article.selected{border-color:#e88982;background:#fff7f6;box-shadow:0 0 0 2px #c73a3314}.wechat-role-avatar{display:grid;width:42px;height:42px;flex:none;place-items:center;border-radius:13px;background:#eaf2ff;color:var(--school-blue)}.wechat-role-avatar svg{width:22px;height:22px}.wechat-account-list article>div{display:flex;min-width:0;flex:1;flex-direction:column;gap:3px}.wechat-account-list article b{overflow:hidden;color:var(--school-ink);font-size:14px;text-overflow:ellipsis;white-space:nowrap}.wechat-account-list article small{color:var(--school-muted);font-size:11px}.wechat-account-list article em{padding:5px 8px;border-radius:8px;background:#e5efff;color:var(--school-blue);font-size:10px;font-style:normal;font-weight:700;white-space:nowrap}.wechat-account-list article button{display:inline-flex;min-height:36px;align-items:center;gap:3px;padding:0 10px;border:1px solid #cddcf7;border-radius:9px;background:#fff;color:var(--school-blue);font-size:12px;font-weight:700}.wechat-account-list article button svg{width:15px;height:15px}.wechat-unbind-check{display:grid;width:44px;height:44px;place-items:center;cursor:pointer}.wechat-unbind-check input{position:absolute;width:1px;height:1px;overflow:hidden;opacity:0}.wechat-unbind-check span{display:grid;width:24px;height:24px;place-items:center;border:2px solid #cdd6e4;border-radius:8px;background:#fff;color:transparent}.wechat-unbind-check input:checked+span{border-color:#c43f38;background:#c43f38;color:#fff}.wechat-unbind-check svg{width:15px;height:15px}.wechat-unbind-actions{display:flex;min-height:54px;align-items:center;justify-content:space-between;gap:12px;margin-top:12px;padding:10px 12px;border-radius:13px;background:#fff4f2;color:#8c4b47;font-size:12px}.wechat-unbind-actions button{display:inline-flex;min-height:42px;align-items:center;gap:6px;padding:0 14px;border:0;border-radius:10px;background:#c43f38;color:#fff;font-weight:800}.wechat-unbind-actions button:disabled{opacity:.45}.wechat-unbind-actions svg{width:16px;height:16px}.wechat-add-account{display:flex;width:100%;min-height:48px;align-items:center;justify-content:center;gap:7px;margin-top:14px;border:1px dashed #9dbcf5;border-radius:13px;background:#f4f8ff;color:var(--school-blue);font-weight:800}.wechat-add-account svg{width:19px;height:19px}.wechat-account-empty{display:flex;align-items:center;gap:12px;margin-top:18px;padding:16px;border-radius:14px;background:#f5f7fa;color:var(--school-muted);font-size:13px}.wechat-account-empty>svg{width:25px;height:25px;flex:none;color:#8795aa}.wechat-account-empty>div{display:flex;flex-direction:column;gap:3px}.wechat-account-empty b{color:var(--school-ink)}.wechat-bind-form{display:grid;gap:10px;margin-top:16px;padding:18px;border:1px solid #dce7f8;border-radius:17px;background:linear-gradient(145deg,#f8fbff,#fff)}.wechat-bind-title{display:flex;align-items:center;gap:10px;margin-bottom:4px}.wechat-bind-title>span{display:grid;width:36px;height:36px;place-items:center;border-radius:11px;background:#e8f1ff;color:var(--school-blue)}.wechat-bind-title>span svg{width:19px;height:19px}.wechat-bind-title>div{display:flex;flex-direction:column}.wechat-bind-title b{font-size:14px}.wechat-bind-title small{color:var(--school-muted);font-size:11px}.wechat-bind-form>label{color:#4a5870;font-size:12px;font-weight:700}.wechat-field{display:flex;min-height:46px;align-items:center;gap:8px;padding:0 12px;border:1px solid #d9e2ef;border-radius:11px;background:#fff}.wechat-field:focus-within{border-color:var(--school-blue);box-shadow:0 0 0 3px #1268f51a}.wechat-field svg{width:18px;height:18px;flex:none;color:#8b99ae}.wechat-field input{width:100%;height:42px;border:0;outline:0;background:transparent;font-size:15px}.wechat-code-row{display:grid;grid-template-columns:minmax(0,1fr) 112px;gap:9px}.wechat-code-row>button{border:0;border-radius:11px;background:#e8f1ff;color:var(--school-blue);font-weight:700}.wechat-preview-code{color:#986911;font-size:11px}.wechat-candidates{display:grid;gap:8px;margin-top:4px}.wechat-candidates>p{margin:0 0 2px;color:#4d5a70;font-size:12px}.wechat-candidates>button{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:12px;border:1px solid #dce5f2;border-radius:12px;background:#fff;text-align:left}.wechat-candidates>button>span{display:flex;min-width:0;flex-direction:column;gap:2px}.wechat-candidates b{font-size:13px}.wechat-candidates small{color:var(--school-muted);font-size:10px}.wechat-candidates em{color:var(--school-blue);font-size:11px;font-style:normal;font-weight:700}.wechat-bind-error,.wechat-bind-success{margin:2px 0 0;font-size:12px}.wechat-bind-error{color:#c33e38}.wechat-bind-success{display:flex;align-items:center;gap:4px;color:#07894d}.wechat-bind-success svg{width:15px;height:15px}.wechat-bind-actions{display:flex;justify-content:flex-end;gap:9px;margin-top:4px}.wechat-bind-actions button{min-height:42px;padding:0 16px;border:1px solid #dce3ee;border-radius:10px;background:#fff;color:#68758a;font-weight:700}.wechat-bind-actions button.primary{border-color:var(--school-blue);background:var(--school-blue);color:#fff}@media(max-width:620px){.wechat-account-book{padding:18px 15px;border-radius:18px}.wechat-account-head{align-items:flex-start}.wechat-connected{display:none}.wechat-head-actions{flex:none}.wechat-unbind-toggle{min-height:44px}.wechat-account-head small{line-height:1.55}.wechat-account-list article{padding:11px}.wechat-code-row{grid-template-columns:minmax(0,1fr) 96px}.wechat-bind-form{padding:15px 12px}.wechat-bind-actions button{flex:1}.wechat-account-list article>button{padding:0 8px}.wechat-unbind-actions{align-items:stretch;flex-direction:column}.wechat-unbind-actions button{justify-content:center}}.recorder-panel{padding:18px;border:1px solid #dce4f0;border-radius:16px;background:#f7f9fd;text-align:center}.recorder-panel.recording{border-color:#f2aaa6;background:#fff8f7}.record-toggle{display:flex;width:100%;min-height:58px;align-items:center;justify-content:center;gap:10px;border:0;border-radius:14px;background:#3478f6;color:#fff;font-size:16px;font-weight:700}.record-toggle.recording{background:#d94d49}.recording-dot{display:grid;width:34px;height:34px;place-items:center;border-radius:50%;background:#ffffff2e}.record-toggle.recording .recording-dot{animation:recorder-pulse 1.3s ease-out infinite}.recorder-panel>p{margin:10px 0 0;color:#768297;font-size:12px}.record-preview{display:grid;gap:11px;margin-top:16px;padding:14px;border-radius:13px;background:#fff;text-align:left;box-shadow:0 5px 18px #223b6814}.record-preview audio{width:100%}.record-preview-actions{display:grid;grid-template-columns:1fr 1fr;gap:8px}.record-preview-actions button{display:flex;min-height:44px;align-items:center;justify-content:center;gap:7px;border:1px solid #dbe2ed;border-radius:10px;background:#fff;color:#657188}.record-preview-actions button svg{width:17px}.record-preview-actions .accept-recording{border-color:#3478f6;background:#3478f6;color:#fff}.recording-list{display:grid;gap:12px}.recording-entry{display:grid;gap:10px;padding:14px;border:1px solid #dfe6f1;border-radius:16px;background:#fff;box-shadow:0 6px 18px #2037600b}.recording-entry-player{width:100%}.recording-entry-meta{display:flex;min-height:30px;align-items:center;justify-content:space-between;gap:10px;padding:0 2px}.recording-entry-meta span,.recording-entry-meta em,.recording-entry-meta strong{display:flex;align-items:center;gap:5px;color:#758196;font-size:11px;font-style:normal;font-weight:600}.recording-entry-meta svg{width:15px;height:15px}.recording-entry-meta .ai-complete{color:#197356}.recording-entry-meta .ai-pending{color:#936914}.recording-entry-meta .ai-failed{color:#c64e49}.ai-result{display:grid;grid-template-columns:24px 1fr;align-items:start;gap:8px;padding:11px 12px;border-radius:11px;background:#eef9f4;color:#176d52}.ai-result>svg{width:19px;margin-top:2px}.ai-result p{margin:0;font-size:12px;line-height:1.65;overflow-wrap:anywhere}.ai-manual{display:grid;grid-template-columns:minmax(0,180px) 1fr;align-items:center;gap:10px;padding:10px 12px;border-radius:11px;background:#f7f4ff}.ai-manual button{display:flex;min-height:42px;align-items:center;justify-content:center;gap:6px;border:0;border-radius:9px;background:#7152d6;color:#fff;font-weight:700}.ai-manual button svg{width:16px}.ai-manual small{color:#7b7198;line-height:1.5}.existing-audio{display:flex!important;min-height:44px;align-items:center;justify-content:center;gap:7px;border:1px dashed #b9c9e3;border-radius:11px;color:#3478f6!important}.existing-audio input{display:none}.student-primary:disabled{cursor:not-allowed}.schedule-leave{min-width:58px;min-height:40px;border:1px solid #b9cbed;border-radius:10px;background:#f2f7ff;color:#3478f6}.leave-status{padding:6px 9px;border-radius:8px;background:#fff4dc;color:#966812;font-size:11px;white-space:nowrap}@keyframes recorder-pulse{0%{box-shadow:0 0 #ffffff73}70%{box-shadow:0 0 0 13px #fff0}to{box-shadow:0 0 #fff0}}.preview-level{display:flex;align-items:center;justify-content:space-between;gap:16px;margin:20px 0 10px}.preview-level div{display:flex;flex-direction:column}.preview-level span{margin-top:3px;color:#778399;font-size:12px}.preview-level em{padding:5px 10px;border-radius:999px;font-size:11px;font-style:normal;font-weight:700}.preview-level.required em{background:#df4d4d;color:#fff}.preview-level.optional em{background:#e6efff;color:#2465ce}.preview-practice-tabs{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.preview-practice-tabs button{min-height:44px;border:1px solid #dce4f0;border-radius:10px;background:#fff;color:#657188}.preview-practice-tabs button.active{border-color:#3478f6;background:#edf4ff;color:#2465ce}.preview-word-list{display:grid;gap:8px;margin-top:10px}.preview-word-list article{display:grid;grid-template-columns:150px 1fr;align-items:center;gap:12px;padding:10px;border-radius:12px;background:#f7f9fc}.preview-word-list audio{width:150px;height:32px}.preview-word-list div{display:flex;flex-direction:column}.preview-word-list i{color:#7d889b;font-size:12px;font-style:normal;font-weight:400}.preview-word-list span{color:#657188;font-size:12px}.preview-practice-card,.preview-practice-result{display:grid;gap:10px;margin-top:10px;padding:16px;border:1px solid #e0e6ef;border-radius:14px;background:#f8faff}.preview-practice-card>audio{width:100%}.preview-practice-card>input{min-height:46px;padding:0 12px;border:1px solid #dce4f0;border-radius:10px}.preview-practice-card>button,.practice-feedback button,.preview-practice-result button{min-height:44px;border:0;border-radius:10px;background:#3478f6;color:#fff}.preview-practice-card h3{text-align:center}.preview-practice-card .practice-option{border:1px solid #dde4ef;background:#fff;color:#273650}.preview-practice-card .practice-option.correct{border-color:#2c9b69;background:#e9f8f1;color:#18734d}.preview-practice-card .practice-option.wrong{border-color:#d95757;background:#fff0f0;color:#b93636}.practice-feedback{display:grid;gap:6px;padding-top:10px;border-top:1px solid #e3e8f0}.practice-feedback span,.preview-practice-result small{color:#657188;font-size:12px}.preview-practice-result{text-align:center}.preview-practice-result>b{font-size:38px;color:#2465ce}@media(max-width:520px){.record-preview-actions{grid-template-columns:1fr}.recording-entry-meta{align-items:flex-start;flex-direction:column}.ai-manual{grid-template-columns:1fr}.schedule-row{flex-wrap:wrap}.schedule-row>div{min-width:calc(100% - 82px)}.schedule-leave,.leave-status{margin-left:66px}}.assignment-row.completed{border-color:#b9e1d2;background:#fbfffd}.assignment-actions{display:flex;min-width:96px;flex-direction:column;align-items:stretch;gap:7px}.assignment-actions>button{min-height:40px;padding:0 14px;border:0;border-radius:10px;background:#3478f6;color:#fff}.assignment-completed{display:flex;min-height:30px;align-items:center;justify-content:center;gap:4px;border-radius:8px;background:#e7f8f1;color:#17795a;font-size:12px;font-weight:700}.assignment-completed svg{width:16px;height:16px;stroke-width:2.5}@media(max-width:760px){.assignment-actions{grid-column:2;min-width:0;flex-direction:row;align-items:center}.assignment-actions>button{flex:1}.assignment-completed{min-width:82px;padding:0 8px}}.ai-manual{display:flex;min-width:130px;flex-direction:column;align-items:stretch;gap:4px}.ai-manual button{min-height:40px;padding:0 12px;border:0;border-radius:9px;background:#6b55c9;color:#fff;font-size:12px;font-weight:700}.ai-manual button:disabled{opacity:.55}.ai-manual small{max-width:170px;color:#7d8798;font-size:10px;line-height:1.35;white-space:normal}@media(max-width:520px){.recording-list .ai-manual{grid-column:1/-1}.ai-manual small{max-width:none;text-align:center}}.checkin-bar{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:14px;padding:13px 16px;border-radius:12px;background:#f2f7ff;color:#3478f6}.checkin-bar span{color:#7d879a;font-size:12px}.checkin-open{display:flex;min-height:44px;align-items:center;gap:6px;padding:0 16px;border:0;border-radius:10px;background:#3478f6;color:#fff;font-weight:700}.checkin-open:disabled{opacity:.5}.checkin-meta{display:flex;flex-wrap:wrap;gap:8px;margin-top:12px}.checkin-meta span{padding:5px 10px;border-radius:8px;background:#f1f4f9;color:#5a6678;font-size:12px}.checkin-toolbar{display:flex;gap:9px;margin:16px 0 0}.checkin-ghost{display:flex;min-height:42px;align-items:center;gap:6px;padding:0 14px;border:1px solid #d8e3f5;border-radius:10px;background:#fff;color:#3478f6;font-weight:600}.checkin-ghost:disabled{opacity:.5}.trial-panel{margin-top:14px;padding:16px;border:1px dashed #cbdcf5;border-radius:13px;background:#f8fbff}.trial-search,.trial-new{display:grid;grid-template-columns:1fr auto;gap:8px}.trial-search input,.trial-new input{min-height:44px;padding:0 12px;border:1px solid #dfe4ed;border-radius:10px;outline:0}.trial-new{grid-template-columns:1fr 1fr auto;margin-top:8px}.checkin-mini{min-height:44px;padding:0 14px;border:0;border-radius:10px;background:#3478f6;color:#fff;font-weight:600}.checkin-mini:disabled{opacity:.5}.trial-results{display:grid;gap:7px;margin-top:10px}.trial-results button{display:flex;align-items:center;justify-content:space-between;gap:10px;padding:11px 13px;border:1px solid #e0e7f2;border-radius:10px;background:#fff;text-align:left}.trial-results small{color:#8791a2}.trial-or{margin:14px 0 0;color:#8791a2;font-size:12px}.checkin-list{display:grid;gap:10px;margin-top:18px}.checkin-row{position:relative;padding:15px 17px;border:1px solid #e3e8f1;border-radius:14px;background:#fff}.checkin-who b{font-size:15px}.checkin-who small{color:#8791a2}.checkin-who em{margin-left:auto;padding:4px 8px;border-radius:7px;background:#e8f8f2;color:#18815e;font-size:11px;font-style:normal}.checkin-temp{padding:3px 7px;border-radius:6px;background:#fff3d9;color:#9b6b0a;font-size:11px;font-style:normal}.checkin-chips{display:flex;flex-wrap:wrap;gap:7px;margin-top:11px}.chip{min-height:34px;padding:0 13px;border:1px solid #e0e6f0;border-radius:9px;background:#f7f9fc;color:#5a6678;font-weight:600}.chip.active{border-color:#3478f6;background:#3478f6;color:#fff}.chip-leave.active,.chip-absent.active{border-color:#e0655e;background:#e0655e}.chip-late.active{border-color:#e6a23c;background:#e6a23c}.chip-trial.active{border-color:#18a058;background:#18a058}.checkin-hours{position:absolute;top:13px;right:15px;color:#8791a2;font-size:11px}.checkin-skip{display:flex;min-height:34px;margin-top:9px;align-items:center;gap:5px;padding:0 11px;border:0;border-radius:9px;background:#f1f4f9;color:#5a6678;font-size:12px}.checkin-resched{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:10px}.checkin-resched select{min-height:42px;padding:0 10px;border:1px solid #dfe4ed;border-radius:10px}@media(max-width:640px){.checkin-bar{flex-direction:column;align-items:stretch}.checkin-hours{position:static;margin-top:8px}.checkin-row{padding-bottom:13px}}.resched-search{display:grid;grid-template-columns:1fr auto;gap:8px;margin-top:8px}.resched-search input{min-height:44px;padding:0 12px;border:1px solid #dfe4ed;border-radius:10px;outline:0}.resched-class{margin-top:8px}.resched-class-head{display:flex;width:100%;flex-direction:column;align-items:flex-start;gap:3px;padding:11px 13px;border:1px solid #e0e7f2;border-radius:10px;background:#f8fbff;text-align:left}.resched-class-head.active{border-color:#3478f6}.resched-class-head small{color:#8791a2}.ressched-pick{display:flex;flex-wrap:wrap;gap:7px;margin-top:8px}.ressched-pick button{min-height:36px;padding:0 12px;border:1px solid #e0e6f0;border-radius:9px;background:#fff;color:#5a6678}.ressched-pick button.active{border-color:#3478f6;background:#3478f6;color:#fff}.ressched-pick small{align-self:center;color:#98a1b1}.full-btn{width:100%;margin-top:10px}.checkin-who{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.checkin-right{display:flex;align-items:center;gap:8px;margin-left:auto}.checkin-right em{margin:0}.checkin-skip{display:inline-flex;min-height:30px;align-items:center;gap:4px;padding:0 10px;border:1px solid #e2e6ee;border-radius:8px;background:#fbfcfe;color:#98a2b3;font-size:12px}.checkin-skip svg{width:15px;height:15px}.checkin-skip:hover{border-color:#b9c8de;color:#5a6678}.checkin-skip:disabled{opacity:.5}.checkin-hours{position:static;margin-left:auto;padding:0 2px;color:#98a2b3;font-size:12px;white-space:nowrap}.checkin-chips{align-items:center}.resched-view{animation:none}.resched-tip{margin:8px 0 4px}.resched-label{display:block;margin:22px 0 10px;color:#17213b;font-size:13px;font-weight:700}.resched-empty{display:block;margin-top:10px;color:#98a1b1}.ressched-pick{margin-top:0}.clamp2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;min-width:0}.review-row>button.review-body{display:block;width:100%;min-height:0;margin:0;padding:2px 0 0;border:0;border-radius:0;background:transparent;color:inherit;font-weight:400;text-align:left}.review-more{display:block;margin-top:6px;color:#3478f6;font-size:12px;text-align:right}.review-detail-block{margin-top:16px;padding:14px 16px;border-radius:13px;background:#f7f9fc}.review-detail-block i{display:block;margin-bottom:6px;color:#8791a2;font-size:11px;font-style:normal}.review-detail-block p{margin:0;color:#2c3950;font-size:14px;line-height:1.8;white-space:pre-wrap}.review-detail-images{display:grid;grid-template-columns:repeat(3,1fr);gap:8px;margin-top:14px}.review-detail-images img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px}.review-title{padding-bottom:13px;border-bottom:1px solid #f0f3f7}.review-title>span{background:#fff7e8;border-radius:8px;padding:4px 9px}.review-body{display:block;width:100%;padding:2px 0 0;border:0;background:transparent;text-align:left}.review-body p{display:block;margin:14px 0 0}.review-body p i{display:inline-block;margin:0 0 7px;padding:3px 10px;border-radius:7px;background:#eef3fb;color:#7683a0;font-size:11px;font-style:normal;letter-spacing:.06em}.review-body p span.clamp2{font-size:14px;line-height:1.75;color:#2c3950}.review-body:hover p span.clamp2{color:#17213b}.review-more{display:inline-flex;align-items:center;gap:2px;margin-top:13px;color:#3478f6;font-size:12px;font-weight:600}.review-more svg{width:14px;height:14px}:root{--school-navy:#092f82;--school-navy-deep:#062568;--school-blue:#1268f5;--school-blue-soft:#eaf2ff;--school-coral:#ff5b4d;--school-ink:#111c35;--school-muted:#69758d;--school-canvas:#f4f7fc;--school-surface:#fff;--school-line:#e5eaf3;--school-shadow:0 12px 34px rgba(31,61,117,.08)}.student-app,.teacher-app{background:var(--school-canvas);color:var(--school-ink)}.student-app{padding-bottom:0}.student-head{height:78px;padding:0 max(28px,calc((100vw - 1160px)/2));border-bottom:1px solid var(--school-line);background:#fffffff7;box-shadow:0 5px 20px #233c690a}.student-brand{gap:10px;color:var(--school-navy);font-size:18px;font-weight:800;letter-spacing:-.02em}.student-brand svg{width:30px;height:30px;color:var(--school-blue);stroke-width:2.2}.student-head-profile{display:flex;align-items:center;gap:10px}.student-head-profile>span{display:grid;width:38px;height:38px;place-items:center;border-radius:50%;background:var(--school-blue-soft);color:var(--school-blue);font-weight:800}.student-head-profile>div{display:flex;flex-direction:column}.student-head-profile b{font-size:13px}.student-head-profile small{color:var(--school-muted);font-size:10px}.student-main{width:min(1160px,calc(100% - 48px));padding:28px 0 72px}.student-nav{inset:14px auto auto 50%;z-index:13;gap:4px;padding:4px;border:1px solid #dce4f1;border-radius:999px;background:#f8faff;box-shadow:none;-webkit-backdrop-filter:none;backdrop-filter:none;transform:translate(-50%)}.student-nav button{min-width:104px;min-height:42px;flex-direction:row;gap:7px;border-radius:999px;color:#536078;font-size:13px;font-weight:650;transition:background-color .18s ease,color .18s ease,box-shadow .18s ease}.student-nav button svg{width:18px;height:18px}.student-nav button.active{background:var(--school-blue);color:#fff;box-shadow:0 6px 16px #1268f53d}.mobile-back{display:inline-flex;min-height:44px;align-items:center;gap:6px;margin:0 0 14px;padding:0 12px;border:0;border-radius:10px;background:#fff;color:#4d5c76;font-weight:650;box-shadow:0 5px 18px #1f3d750f}.mobile-back svg{width:18px;height:18px}.profile-hero{position:relative;display:block;min-height:258px;margin-top:0;padding:34px 38px;overflow:hidden;border-radius:26px;background-color:var(--school-coral);background-image:url(/assets/student-learning-hero.png);background-position:center;background-size:cover;color:#fff;box-shadow:0 18px 42px #ff5b4d33}.profile-hero-copy{position:relative;z-index:1;max-width:52%}.profile-hero-copy p{opacity:.86}.profile-hero-copy h1{max-width:520px;margin:8px 0 9px;font-size:clamp(27px,3vw,38px);line-height:1.22;letter-spacing:-.035em}.profile-hero-copy>span{font-size:15px;opacity:.9}.profile-identity{position:absolute;z-index:2;bottom:25px;left:38px;display:flex;align-items:center;gap:10px;padding:7px 12px 7px 7px;border:1px solid rgba(255,255,255,.34);border-radius:15px;background:#48181533;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.profile-identity .profile-avatar{width:42px;height:42px;border-width:2px;border-radius:12px;font-size:16px}.profile-identity>div:last-child{display:flex;flex-direction:column}.profile-identity b{font-size:13px}.profile-identity small{max-width:220px;color:#fff;font-size:10px;opacity:.8;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.profile-edit{position:absolute;z-index:2;bottom:27px;left:282px;min-height:42px;border-color:#ffffff7a;background:#ffffff2e;font-weight:650;-webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px)}.profile-edit:hover{background:#fff;color:var(--school-coral)}.report-strip{position:relative;z-index:2;margin:-12px 20px 0;padding:22px;border-color:var(--school-line);border-radius:0 0 22px 22px;box-shadow:var(--school-shadow)}.report-strip b{font-size:29px;color:var(--school-ink)}.report-strip span{margin-top:2px;font-size:12px}.student-section{margin-top:38px}.section-heading{margin-bottom:17px}.section-heading p{color:var(--school-blue);font-size:11px}.section-heading h2,.student-section>h2{font-size:24px;letter-spacing:-.025em}.student-class-list{grid-template-columns:1fr;gap:14px}.student-class-list>button,.ended-list,.schedule-row,.assignment-row,.review-row,.profile-form,.gift-grid article,.coin-history,.exchange-history article{border-color:var(--school-line);box-shadow:var(--school-shadow)}.student-class-list>button{min-height:118px;padding:20px 22px;border-radius:20px;transition:border-color .18s ease,box-shadow .18s ease,transform .18s ease}.student-class-list>button:hover{border-color:#b7cff8;box-shadow:0 16px 36px #1f4d9d21;transform:translateY(-2px)}.class-art{width:72px;height:72px;border-radius:20px;background:var(--school-blue-soft);color:var(--school-blue)}.class-art svg{width:34px;height:34px}.class-copy b{font-size:19px;color:#0786e8}.class-copy small{font-size:13px}.class-copy em{font-size:12px}.ended-list{border-radius:20px}.ended-list button{min-height:70px;padding:18px 22px}.class-hero,.page-intro{border-radius:24px;background:var(--school-navy-deep);box-shadow:0 16px 36px #06256829}.class-tabs,.park-tabs,.teacher-class-tabs{scrollbar-width:none}.class-tabs button,.park-tabs button,.teacher-class-tabs button{min-height:52px}.class-tabs button.active,.park-tabs button.active,.teacher-class-tabs button.active{border-color:var(--school-blue);color:var(--school-blue)}.student-primary,.teacher-primary,.assignment-actions>button,.schedule-leave{border-radius:11px;background:var(--school-blue)}.schedule-leave{min-height:44px;border-color:var(--school-blue);color:#fff;font-weight:700}.schedule-leave:hover{background:#0d57d7}.schedule-leave:focus-visible{outline-color:#fff;box-shadow:0 0 0 4px #1268f53d}.profile-intro{background:var(--school-navy)}.profile-form{padding:28px;border-radius:22px}.profile-form input:focus,.student-sheet textarea:focus,.teacher-drawer textarea:focus,.teacher-drawer input:focus,.teacher-drawer select:focus{border-color:var(--school-blue);outline:3px solid rgba(18,104,245,.12)}.profile-security{display:flex;align-items:center;justify-content:space-between;gap:18px;margin-top:8px;padding-top:22px;border-top:1px solid var(--school-line)}.profile-security>div{display:flex;flex-direction:column;gap:4px}.profile-security b{font-size:14px}.profile-security small{color:var(--school-muted);font-size:11px}.logout-button,.teacher-account-security button{display:inline-flex;min-height:44px;align-items:center;justify-content:center;gap:7px;padding:0 16px;border:1px solid #f1c2bf;border-radius:11px;background:#fff7f6;color:#c8413b;font-weight:700;white-space:nowrap}.teacher-side{width:248px;padding:30px 20px;background:var(--school-navy-deep)}.teacher-logo{font-size:17px}.teacher-logo svg{width:29px;height:29px;color:#fff}.teacher-logo span{background:#ffffff1f;color:#dce8ff}.teacher-side nav{gap:9px}.teacher-side nav button{min-height:52px;padding:0 16px;border-radius:13px;color:#c8d7f4;font-weight:650}.teacher-side nav button:hover{background:#ffffff14;color:#fff}.teacher-side nav button.active{background:var(--school-blue);color:#fff;box-shadow:0 10px 24px #0029845c}.teacher-account{border-color:#ffffff24}.teacher-main{margin-left:248px}.teacher-main>header{height:88px;padding:0 clamp(28px,5vw,68px);box-shadow:0 5px 20px #233c690a}.teacher-content{width:min(1180px,calc(100% - 56px));padding:30px 0 72px}.teacher-hero{min-height:210px;padding:38px 42px;border-radius:24px;background:var(--school-blue);color:#fff;box-shadow:0 16px 36px #1268f52e}.teacher-hero p,.teacher-hero span{color:#fff;opacity:.84}.teacher-hero h2{font-size:31px}.teacher-hero>svg{color:#fff;opacity:.28}.teacher-metrics article,.teacher-panel,.legacy-class-card,.teacher-class-overview article,.teacher-history article{border-color:var(--school-line);box-shadow:var(--school-shadow)}.teacher-metrics{grid-template-columns:repeat(4,1fr)}.teacher-metrics article{min-height:106px;justify-content:center;padding:22px;border-radius:18px}.teacher-metrics b{color:var(--school-blue);font-size:30px}.legacy-class-card{border-radius:20px}.legacy-class-icon,.legacy-class-actions button:hover{background:var(--school-blue-soft);color:var(--school-blue)}.teacher-profile-card,.teacher-account-security{display:flex;align-items:center;gap:20px;padding:28px;border:1px solid var(--school-line);border-radius:22px;background:#fff;box-shadow:var(--school-shadow)}.teacher-profile-avatar{display:grid;width:72px;height:72px;flex:none;place-items:center;border-radius:22px;background:var(--school-blue-soft);color:var(--school-blue);font-size:27px;font-weight:800}.teacher-profile-card p{margin:0;color:var(--school-blue);font-size:10px;font-weight:800;letter-spacing:.14em}.teacher-profile-card h2{margin:6px 0 4px;font-size:26px}.teacher-profile-card span{color:var(--school-muted);font-size:13px}.teacher-account-security{justify-content:space-between;margin-top:16px}.teacher-account-security h3{margin:0 0 6px}.teacher-account-security p{margin:0;color:var(--school-muted);font-size:13px}button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid rgba(18,104,245,.3);outline-offset:2px}@media(max-width:900px)and (min-width:761px){.student-nav button{min-width:82px}.student-head-profile>div{display:none}.profile-hero-copy{max-width:58%}.teacher-metrics{grid-template-columns:repeat(2,1fr)}}@media(min-width:1000px){.profile-hero-copy h1{max-width:none;font-size:34px;white-space:nowrap}}@media(max-width:760px){.student-app{padding-bottom:calc(78px + env(safe-area-inset-bottom))}.student-head,.teacher-main>header{display:none}.student-main{width:min(100% - 28px,680px);padding:14px 0 22px}.mobile-back{margin-top:0;background:transparent;box-shadow:none}.student-nav{inset:auto 0 0;gap:0;padding:7px 4px max(7px,env(safe-area-inset-bottom));border:0;border-top:1px solid var(--school-line);border-radius:0;background:#fffffff7;box-shadow:0 -8px 26px #1f3d7512;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);transform:none}.student-nav button{min-width:0;min-height:52px;flex:1;flex-direction:column;gap:2px;border-radius:10px;font-size:10px}.student-nav button svg{width:21px;height:21px}.student-nav button.active{background:transparent;color:var(--school-blue);box-shadow:none}.profile-hero{min-height:196px;padding:21px 20px;border-radius:21px;background-position:57% center;background-size:auto 100%}.profile-hero-copy{max-width:70%}.profile-hero-copy h1{max-width:225px;margin-top:5px;font-size:22px;line-height:1.26}.profile-hero-copy>span{font-size:12px}.profile-identity,.profile-edit{display:none}.report-strip{margin:-8px 10px 0;padding:18px 8px;border-radius:0 0 18px 18px}.report-strip b{font-size:24px}.report-strip span{font-size:10px}.student-section{margin-top:31px}.section-heading h2,.student-section>h2{font-size:22px}.student-class-list>button{min-height:106px;padding:17px 15px}.class-art{width:58px;height:58px;border-radius:17px}.class-art svg{width:29px;height:29px}.class-copy b{font-size:17px}.class-copy small{font-size:12px}.profile-form{padding:20px 17px}.profile-security{align-items:stretch;flex-direction:column}.logout-button{width:100%}.teacher-main{margin:0;padding-bottom:calc(76px + env(safe-area-inset-bottom))}.teacher-content{width:calc(100% - 28px);padding:14px 0 24px}.teacher-mobile-nav{position:fixed;inset:auto 0 0;z-index:20;display:flex;padding:7px 3px max(7px,env(safe-area-inset-bottom));overflow:visible;border:0;border-top:1px solid var(--school-line);background:#fffffff7;box-shadow:0 -8px 26px #1f3d7512;-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px)}.teacher-mobile-nav button{min-width:0;min-height:52px;flex:1;flex-direction:column;gap:2px;border:0;background:transparent;color:#778399;font-size:10px}.teacher-mobile-nav button.active{border:0;background:transparent;color:var(--school-blue)}.teacher-mobile-nav button svg{width:21px;height:21px}.teacher-hero{min-height:170px;padding:25px 22px}.teacher-hero h2{font-size:23px}.teacher-metrics{grid-template-columns:repeat(2,1fr)}.teacher-profile-card{align-items:flex-start;padding:22px 18px}.teacher-account-security{align-items:stretch;flex-direction:column;padding:20px 18px}.teacher-account-security button{width:100%}}@media(max-width:420px){.profile-hero{min-height:190px;background-position:54% center}.profile-hero-copy{max-width:76%}.profile-hero-copy h1{max-width:205px;font-size:20px}.profile-hero-copy>span{display:none}.report-strip{margin-left:7px;margin-right:7px}.report-strip article{padding:0 4px}.class-copy em{font-size:10px}.teacher-profile-avatar{width:60px;height:60px;border-radius:18px}}.brand-mark{display:grid;place-items:center}.brand-mark img,.mobile-brand img{width:30px;height:30px;object-fit:contain}.teacher-logo{gap:9px}.teacher-logo img{width:32px;height:32px;object-fit:contain}.teacher-logo .logo-text{display:flex;flex-direction:column;font-size:15px;line-height:1.15}.teacher-logo .logo-text em{color:#8e9bb2;font-size:10px;font-style:normal;font-weight:400}.student-brand img{width:28px;height:28px;object-fit:contain}.preview-choice-list{display:grid;gap:10px;margin-top:22px}.preview-choice{display:grid;grid-template-columns:48px minmax(0,1fr) auto 20px;min-height:72px;align-items:center;gap:12px;padding:12px 14px;border:1px solid #dfe6f1;border-radius:15px;background:#fff;color:#26354f;text-align:left;transition:border-color .15s ease,background-color .15s ease,box-shadow .15s ease}.preview-choice:hover,.preview-choice:focus-visible{border-color:#94b7f5;background:#f8fbff;box-shadow:0 7px 20px #234d9717;outline:2px solid transparent}.preview-choice:active{background:#edf4ff}.preview-choice.required{border-color:#f0c2bd;background:snow}.preview-choice-icon{display:grid;width:48px;height:48px;place-items:center;border-radius:13px;background:#edf4ff;color:#3478f6}.preview-choice.required .preview-choice-icon{background:#fff0ee;color:#d9534f}.preview-choice>span:nth-child(2){display:flex;min-width:0;flex-direction:column}.preview-choice b{font-size:15px}.preview-choice small{margin-top:3px;color:#748096;font-size:12px;line-height:1.45}.preview-choice em{padding:4px 8px;border-radius:999px;background:#e8f0ff;color:#2866cc;font-size:10px;font-style:normal;font-weight:700}.preview-choice.required em{background:#df4d4d;color:#fff}.preview-choice>svg{width:18px;color:#9ba7ba}.preview-choice:disabled{cursor:not-allowed;opacity:.48;box-shadow:none}.preview-choice-note{margin:14px 2px 0;color:#8b95a6;font-size:11px;line-height:1.6}.preview-lesson-player{display:grid;grid-template-columns:50px 1fr;align-items:center;gap:12px;padding:18px;border:1px solid #dce5f2;border-radius:16px;background:#f7faff}.preview-lesson-player>span{display:grid;width:50px;height:50px;place-items:center;border-radius:14px;background:#e6f0ff;color:#3478f6}.preview-lesson-player>div{display:flex;min-width:0;flex-direction:column}.preview-lesson-player small{margin-top:3px;color:#748096}.preview-lesson-player audio,.preview-lesson-player p{grid-column:1/-1;width:100%;margin:4px 0 0}.preview-lesson-player p{padding:14px;border-radius:10px;background:#fff4dc;color:#8a641f;text-align:center}.preview-retell-link{display:flex;width:100%;min-height:48px;align-items:center;justify-content:center;gap:7px;margin-top:16px;border:1px solid #b9cdf1;border-radius:11px;background:#f4f8ff;color:#2d69cf;font-weight:700}.preview-choice.plaza{border-color:#cce8df;background:#f8fffc}.preview-choice.plaza .preview-choice-icon{background:#e5f8f1;color:#16815f}.preview-choice.plaza em{background:#def4ec;color:#167356}.plaza-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:20px 0}.plaza-summary article{display:flex;min-height:82px;flex-direction:column;align-items:center;justify-content:center;border:1px solid #e0e7f1;border-radius:14px;background:#f8faff}.plaza-summary b{color:#2465ce;font-size:25px}.plaza-summary span{color:#758196;font-size:11px}.plaza-list{display:grid;gap:11px}.plaza-student{padding:15px;border:1px solid #dfe6f0;border-radius:15px;background:#fff}.plaza-student-head{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:11px}.plaza-avatar{display:grid;width:44px;height:44px;place-items:center;overflow:hidden;border-radius:13px;background:#edf4ff;color:#3478f6}.plaza-avatar img{width:100%;height:100%;object-fit:cover}.plaza-avatar i{font-style:normal;font-weight:700}.plaza-student-head>span:nth-child(2){display:flex;min-width:0;flex-direction:column}.plaza-student-head small{margin-top:2px;color:#818c9f}.plaza-student-head>em{padding:5px 8px;border-radius:999px;background:#f1f3f7;color:#748096;font-size:10px;font-style:normal;white-space:nowrap}.plaza-student-head>em.passed{background:#e3f7ef;color:#167657}.plaza-audios{display:grid;gap:8px;margin-top:12px}.plaza-audios>div{display:grid;grid-template-columns:minmax(180px,1fr) auto;align-items:center;gap:5px 10px;padding:10px;border-radius:11px;background:#f7f9fc}.plaza-audios .managed-audio{grid-row:1/4}.plaza-audios span,.plaza-audios small,.plaza-audios strong,.plaza-audios em{grid-column:2;color:#7b8799;font-size:10px;font-style:normal}.plaza-audios strong{color:#167657}.plaza-audios em{max-width:220px;color:#c0524c;line-height:1.4}.plaza-empty{display:grid;min-height:150px;place-items:center;color:#8590a3;text-align:center}@media(max-width:520px){.preview-choice{grid-template-columns:44px minmax(0,1fr) auto;padding:11px}.preview-choice-icon{width:44px;height:44px}.preview-choice>svg{display:none}.preview-choice em{align-self:start}.preview-word-list article{grid-template-columns:1fr}.preview-word-list audio{width:100%}.plaza-student-head{grid-template-columns:40px minmax(0,1fr)}.plaza-avatar{width:40px;height:40px}.plaza-student-head>em{grid-column:2;justify-self:start}.plaza-audios>div{grid-template-columns:1fr}.plaza-audios .managed-audio{grid-row:auto}.plaza-audios span,.plaza-audios small,.plaza-audios strong,.plaza-audios em{grid-column:1}}.track-list>div>.managed-audio{display:grid}@media(max-width:760px){.track-list .managed-audio{grid-column:2}}@media(max-width:460px){.book-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.book-grid b{font-size:11px}}.wechat-code-sent{color:#17835e;font-size:11px}.teacher-list-tabs{display:inline-flex;margin-bottom:18px;padding:4px;border:1px solid var(--school-line);border-radius:13px;background:#fff;box-shadow:var(--school-shadow)}.teacher-list-tabs button{min-width:116px;min-height:44px;padding:0 18px;border:0;border-radius:9px;background:transparent;color:var(--school-muted);font-weight:700}.teacher-list-tabs button.active{background:var(--school-blue);color:#fff;box-shadow:0 7px 16px #1268f533}.teacher-pagination{display:flex;align-items:center;justify-content:center;gap:18px;margin-top:22px;color:var(--school-muted);font-size:12px}.teacher-pagination button{display:flex;min-height:44px;align-items:center;gap:5px;padding:0 15px;border:1px solid var(--school-line);border-radius:11px;background:#fff;color:var(--school-blue);font-weight:700}.teacher-pagination button svg{width:17px;height:17px}.teacher-calendar{margin-bottom:16px;padding:22px;border:1px solid var(--school-line);border-radius:20px;background:#fff;box-shadow:var(--school-shadow)}.teacher-week-alert{display:flex;min-height:50px;align-items:center;gap:12px;padding:0 16px;border-radius:13px;background:var(--school-blue-soft);color:#35557f;font-size:14px}.teacher-week-alert svg{color:var(--school-blue)}.teacher-week-alert b{color:var(--school-blue);font-size:21px}.teacher-day-nav{display:grid;grid-template-columns:48px 1fr 48px;align-items:center;gap:14px;margin:20px 0 14px;text-align:center}.teacher-day-nav>button{display:grid;width:48px;height:48px;place-items:center;border:1px solid var(--school-line);border-radius:13px;background:#fff;color:var(--school-blue)}.teacher-day-nav>div{display:flex;flex-direction:column;gap:3px}.teacher-day-nav small{color:var(--school-muted);font-size:11px}.teacher-day-nav b{font-size:19px}.teacher-day-strip{display:grid;grid-template-columns:repeat(7,1fr);gap:8px}.teacher-day-strip button{position:relative;display:flex;min-height:70px;align-items:center;justify-content:center;flex-direction:column;gap:4px;border:1px solid #e5eaf3;border-radius:13px;background:#f8faff;color:#6e7a91}.teacher-day-strip button small{font-size:10px}.teacher-day-strip button b{font-size:18px}.teacher-day-strip button.today:not(.active){border-color:#a9c7fa;color:var(--school-blue)}.teacher-day-strip button.active{border-color:var(--school-blue);background:var(--school-blue);color:#fff;box-shadow:0 8px 18px #1268f538}.teacher-day-strip em{position:absolute;right:5px;top:4px;color:inherit;font-size:9px;font-style:normal}.teacher-schedules.all>div:not(.student-empty){align-items:center;min-height:70px}.teacher-schedules.all time{width:78px;color:var(--school-blue);font-size:17px;font-weight:800}@media(max-width:760px){.teacher-list-tabs{display:flex}.teacher-list-tabs button{min-width:0;flex:1}.teacher-pagination{gap:8px}.teacher-pagination span{flex:1;text-align:center}.teacher-pagination button{padding:0 10px}.teacher-pagination button svg{display:none}.teacher-calendar{padding:15px 12px;border-radius:17px}.teacher-day-strip{gap:4px}.teacher-day-strip button{min-height:61px;border-radius:10px}.teacher-day-strip button b{font-size:16px}.teacher-schedules.all time{width:58px}.teacher-metrics{grid-template-columns:repeat(3,1fr)}.teacher-metrics article{min-height:90px;padding:15px}.teacher-metrics b{font-size:25px}}.teacher-history-side{display:flex;flex:none;align-items:flex-end;flex-direction:column;gap:8px}.teacher-history-side>span{padding:6px 9px;border-radius:8px;background:#edf4ff;color:#3478f6;font-size:11px}.teacher-history-side>button{display:flex;min-height:42px;align-items:center;gap:6px;padding:0 12px;border:1px solid #bcd2f8;border-radius:10px;background:#f5f9ff;color:#2165d2;font-weight:700}.teacher-history-side>button svg{width:17px;height:17px}.assignment-plaza{width:min(760px,100%)}.assignment-plaza-summary{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin:18px 0}.assignment-plaza-summary article{display:flex;min-height:82px;align-items:center;justify-content:center;flex-direction:column;border:1px solid var(--school-line);border-radius:14px;background:#f7faff}.assignment-plaza-summary b{color:var(--school-blue);font-size:25px}.assignment-plaza-summary span{color:var(--school-muted);font-size:11px}.assignment-plaza-list{display:grid;gap:12px}.assignment-plaza-list>article{padding:16px;border:1px solid var(--school-line);border-radius:16px;background:#fff}.assignment-plaza-list header{display:grid;grid-template-columns:42px 1fr auto;align-items:center;gap:11px}.assignment-plaza-list header>span{display:grid;width:42px;height:42px;place-items:center;overflow:hidden;border-radius:13px;background:var(--school-blue-soft);color:var(--school-blue);font-weight:800}.assignment-plaza-list header img{width:100%;height:100%;object-fit:cover}.assignment-plaza-list header>div{display:flex;min-width:0;flex-direction:column}.assignment-plaza-list header small{color:var(--school-muted)}.assignment-plaza-list header em{padding:5px 9px;border-radius:999px;background:#f1f3f6;color:#7a8597;font-size:10px;font-style:normal}.assignment-plaza-list header em.done{background:#e5f7ef;color:#177354}.plaza-submission{margin-top:13px;padding:13px;border-radius:12px;background:#f7f9fc}.plaza-submission time{color:#7b8799;font-size:11px}.plaza-submission>p{margin:8px 0;color:#36445b;line-height:1.65;white-space:pre-wrap}.plaza-asset{margin-top:10px}.plaza-asset video,.plaza-asset>img{width:100%;max-height:330px;border-radius:11px;background:#101828;object-fit:contain}.plaza-ai{margin-top:8px;padding:10px 12px;border-radius:10px;background:#eef8f4;color:#176c50}.plaza-ai p{margin:5px 0 0;line-height:1.6;white-space:pre-wrap}.plaza-asset>small{display:block;margin-top:7px;color:#8c6d28}@media(max-width:760px){.teacher-history-side{width:100%;align-items:stretch}.teacher-history-side>button{justify-content:center}.assignment-plaza{padding:22px 16px 70px}.assignment-plaza-list header{grid-template-columns:40px 1fr}.assignment-plaza-list header>em{grid-column:2;justify-self:start}.assignment-plaza-summary article{min-height:72px}.assignment-plaza-summary b{font-size:22px}}.preview-audio-audition{margin:2px 0 10px}.preview-audio-audition>p{margin:0;padding:12px 14px;border:1px solid #f0d49b;border-radius:11px;background:#fff8e8;color:#8a641f;font-size:12px;line-height:1.6}.teacher-history-side>button.history-delete,.history-delete{border-color:#f2c7c7;background:#fff6f5;color:#b42318}.review-history article{display:block;padding:0;overflow:hidden}.teacher-review-main{display:grid;width:100%;min-height:92px;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;padding:17px;border:0;background:#fff;color:inherit;text-align:left}.teacher-review-main>div{display:flex;min-width:0;flex-direction:column}.teacher-review-main b{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.teacher-review-main>span{padding:6px 9px;border-radius:8px;background:#edf4ff;color:#3478f6;font-size:11px}.teacher-review-main>em{display:flex;grid-column:1/-1;align-items:center;justify-content:flex-end;gap:3px;color:#246bea;font-size:12px;font-style:normal}.teacher-review-main>em svg{width:16px;height:16px;transition:transform .18s ease}.review-history article.expanded .teacher-review-main>em svg{transform:rotate(90deg)}.teacher-review-detail{display:grid!important;gap:10px;padding:0 17px 17px;border-top:1px solid #edf0f5}.teacher-review-detail>div:not(.review-detail-images){padding:13px 14px;border-radius:12px;background:#f7f9fc}.teacher-review-detail i{display:block;margin-bottom:5px;color:#8490a3;font-size:11px;font-style:normal}.teacher-review-detail p{margin:0;color:#2c3950;font-size:14px;line-height:1.75;white-space:pre-wrap}.teacher-review-detail footer{display:flex;justify-content:flex-end;gap:9px}.teacher-review-detail footer button{display:flex;min-height:42px;align-items:center;gap:6px;padding:0 13px;border:1px solid #cbd8ee;border-radius:10px;background:#f6f9ff;color:#2465ce;font-weight:700}.teacher-review-detail footer button svg{width:17px;height:17px}.teacher-review-detail footer .history-delete{border-color:#f2c7c7;background:#fff6f5;color:#b42318}.teacher-images>span{position:relative;display:block;width:72px;height:72px}.teacher-images>span img{width:100%;height:100%}.teacher-images>span button{position:absolute;right:3px;bottom:3px;min-height:28px;padding:0 7px;border:0;border-radius:7px;background:#192335d1;color:#fff;font-size:10px}.review-edit-context{display:flex!important;align-items:center;justify-content:space-between;margin:4px 0 14px;padding:13px 15px;border-radius:12px;background:#f2f6fc}.review-edit-context span{color:#7a879a;font-size:12px}.review-edit-note{padding:11px 13px;border-radius:10px;background:#fff7e8;color:#8b5b10;font-size:12px;line-height:1.6}@media(max-width:760px){.teacher-review-main{grid-template-columns:1fr}.teacher-review-main>span{justify-self:start}.teacher-review-detail footer{display:grid;grid-template-columns:1fr 1fr}.teacher-review-detail footer button{justify-content:center}}.field-count{display:block;margin:-5px 2px 0;text-align:right;color:#7a879a;font-size:12px;font-variant-numeric:tabular-nums}.plaza-social-actions{display:flex;grid-column:1/-1;align-items:center;gap:14px;margin-top:8px}.plaza-social-actions button,.plaza-social-actions span{display:flex;min-height:40px;align-items:center;gap:6px;color:#65738a;font-size:12px}.plaza-social-actions button{padding:0 12px;border:1px solid #d9e2ef;border-radius:10px;background:#fff}.plaza-social-actions button.active{border-color:#f1b7b3;background:#fff3f2;color:#c94742}.plaza-social-actions svg{width:17px;height:17px}.plaza-social-actions button.active svg{fill:currentColor}.plaza-comments{display:grid;grid-column:1/-1;gap:6px;padding:10px 12px;border-radius:10px;background:#fff}.plaza-comments p{display:grid;grid-template-columns:auto 1fr;gap:8px;margin:0;font-size:12px;line-height:1.55}.plaza-comments b{color:#2465ce}.plaza-comments span{color:#46546a}.plaza-comment-form{display:grid;grid-column:1/-1;grid-template-columns:1fr auto;gap:8px}.plaza-comment-form input{min-width:0;min-height:42px;padding:0 12px;border:1px solid #dce4ef;border-radius:10px;background:#fff}.plaza-comment-form button{min-width:66px;min-height:44px;border:0;border-radius:10px;background:#2465ce;color:#fff;font-weight:700}.plaza-comment-form button:disabled{opacity:.45}.teacher-audio-rating{display:grid;grid-column:1/-1;gap:5px;padding:10px 12px;border-radius:10px;background:#fff8e8}.teacher-audio-rating b{color:#83570d}.teacher-audio-rating span,.teacher-audio-rating p{margin:0;color:#6e6047;font-size:11px;line-height:1.55}.preview-rating-editor{display:grid;gap:10px;margin-top:12px;padding:14px;border:1px solid #dce5f2;border-radius:13px;background:#fff}.preview-rating-editor>header{display:flex;align-items:center;justify-content:space-between}.preview-rating-editor>header span{color:#7b8799;font-size:11px}.rating-row{display:grid;grid-template-columns:68px 1fr 32px;align-items:center;gap:8px}.rating-row label,.rating-row>b{font-size:12px}.rating-row>div{display:flex}.rating-row button{display:grid;width:44px;height:44px;place-items:center;border:0;background:transparent;color:#c5cedc}.rating-row button.active{color:#efaa27}.rating-row button.active svg{fill:currentColor}.rating-row svg{width:22px}.quick-comment-list{display:flex;flex-wrap:wrap;gap:7px}.quick-comment-list button{min-height:38px;padding:0 11px;border:1px solid #d8e4f5;border-radius:999px;background:#f5f9ff;color:#2866c7;font-size:12px}.preview-rating-editor textarea{box-sizing:border-box;width:100%;min-height:82px;padding:11px;border:1px solid #dce4ef;border-radius:10px;resize:vertical}.save-preview-rating{min-height:44px;border:0;border-radius:10px;background:#2465ce;color:#fff;font-weight:700}.save-preview-rating:disabled{opacity:.5}@media(max-width:520px){.plaza-social-actions{flex-wrap:wrap}.plaza-comment-form{grid-template-columns:1fr}.plaza-comment-form button{min-height:44px}.rating-row{grid-template-columns:64px 1fr 30px}.rating-row button{width:36px;height:44px}.plaza-comments p{grid-template-columns:1fr}.plaza-comments span{grid-column:1}}.plaza-comment-panel{display:grid;grid-column:1/-1;gap:9px;margin-top:2px;padding:11px;border:1px solid #e0e7f1;border-radius:12px;background:#f9fbfe}.plaza-no-comments{margin:0;color:#7b8799;font-size:12px}.plaza-emoji-list{display:flex;flex-wrap:wrap;gap:6px}.plaza-emoji-list button{min-width:44px;min-height:44px;padding:0 10px;border:1px solid #dce5f1;border-radius:10px;background:#fff;color:#344258;font-size:18px}.plaza-emoji-list button:last-child{font-size:12px;font-weight:700}.plaza-social-actions .comment-toggle[aria-expanded=true]{border-color:#a9c5f4;background:#edf4ff;color:#2465ce}.preview-rating-status{display:flex;grid-column:1/-1;align-items:center;justify-content:space-between;gap:14px;margin-top:12px;padding:13px 14px;border:1px solid #cde7da;border-radius:13px;background:#f2fbf7}.preview-rating-status.pending{border-color:#f0d39b;background:#fff9ec}.preview-rating-status>div{display:grid;min-width:0;gap:4px}.preview-rating-status b{color:#176c50;font-size:13px}.preview-rating-status.pending b{color:#95610d}.preview-rating-status span,.preview-rating-status p{margin:0;color:#68758a;font-size:11px;line-height:1.55}.preview-rating-status>button{min-width:88px;min-height:44px;padding:0 14px;border:0;border-radius:10px;background:#2465ce;color:#fff;font-weight:700}.preview-rating-status.pending>button{background:#d78613}.rating-dialog-backdrop{position:fixed;top:0;right:0;bottom:0;left:0;z-index:70;display:grid;place-items:center;padding:20px;background:#09122694;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.rating-dialog{box-sizing:border-box;width:min(620px,100%);max-height:min(760px,calc(100vh - 40px));padding:24px;overflow:auto;border-radius:20px;background:#fff;box-shadow:0 24px 80px #0f234847}.rating-dialog>header{display:flex;align-items:flex-start;justify-content:space-between;gap:18px}.rating-dialog>header small{color:#2465ce;font-size:11px;font-weight:800;letter-spacing:.08em}.rating-dialog h2{margin:5px 0 0;font-size:22px}.rating-dialog>header>button{min-width:58px;min-height:44px;border:1px solid #dce4ef;border-radius:10px;background:#fff;color:#5e6c82}.rating-dialog-help{margin:16px 0;padding:11px 13px;border-radius:10px;background:#edf4ff;color:#426187;font-size:12px;line-height:1.6}.rating-dialog .rating-row{grid-template-columns:78px minmax(220px,1fr) 48px}.rating-dialog .rating-row>b{color:#6a768a;text-align:right}.rating-reply-label{display:block;margin:14px 0 8px;font-size:13px;font-weight:800}.rating-dialog textarea{box-sizing:border-box;width:100%;min-height:92px;margin-top:9px;padding:12px;border:1px solid #dce4ef;border-radius:11px;resize:vertical}.rating-dialog-error{margin:10px 0 0;padding:10px 12px;border-radius:9px;background:#fff0ee;color:#b42318;font-size:12px}.rating-dialog footer{display:grid;grid-template-columns:1fr 1.7fr;gap:9px;margin-top:16px}.rating-dialog footer button{min-height:48px;border-radius:11px;font-weight:800}.rating-cancel{border:1px solid #dce4ef;background:#fff;color:#68758a}.rating-dialog .save-preview-rating{margin:0}@media(max-width:520px){.rating-dialog .rating-row button{width:44px;height:44px}.preview-rating-status{align-items:stretch;flex-direction:column}.preview-rating-status>button{width:100%}.rating-dialog-backdrop{align-items:end;padding:0}.rating-dialog{width:100%;max-height:88vh;padding:20px 16px max(20px,env(safe-area-inset-bottom));border-radius:22px 22px 0 0}.rating-dialog h2{font-size:19px}.rating-dialog .rating-row{grid-template-columns:66px minmax(0,1fr)}.rating-dialog .rating-row>div{justify-content:flex-end}.rating-dialog .rating-row>b{grid-column:1/-1;margin-top:-10px;text-align:right}.rating-dialog footer{grid-template-columns:1fr}.rating-dialog .rating-cancel{order:2}.plaza-comment-panel{padding:9px}.plaza-emoji-list{gap:5px}}.homework-media-composer{margin-top:18px;padding:18px;border:1px solid #dce6f4;border-radius:16px;background:#fff}.homework-media-composer>header{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.homework-media-composer>header>div{display:grid;gap:4px}.homework-media-composer>header b{color:var(--school-ink);font-size:15px}.homework-media-composer>header span{color:var(--school-muted);font-size:12px;line-height:1.55}.homework-media-composer>header em{flex:none;padding:5px 10px;border-radius:999px;background:var(--school-blue-soft);color:var(--school-blue);font-size:11px;font-style:normal;font-weight:800}.homework-media-actions{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:16px}.homework-media-actions>button,.homework-media-actions>label{display:flex;box-sizing:border-box;min-height:64px;align-items:center;justify-content:center;flex-direction:column;gap:6px;margin:0;padding:8px;border:1px solid #dce5f1;border-radius:12px;background:#f7faff;color:#2465ce;font-size:12px;font-weight:700;cursor:pointer}.homework-media-actions>button:hover,.homework-media-actions>label:hover{border-color:#9fc0f6;background:#eef5ff}.homework-media-actions>button:focus-visible,.homework-media-actions>label:focus-within,.homework-record-preview button:focus-visible,.homework-upload-preview button:focus-visible{outline:3px solid rgba(18,104,245,.3);outline-offset:2px}.homework-media-actions>button.recording{border-color:#efb4ae;background:#fff2f0;color:#b93631}.homework-media-actions svg{width:22px;height:22px;stroke-width:1.9}.homework-media-actions input{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap}.homework-record-preview{display:grid;gap:12px;margin-top:14px;padding:14px;border-radius:13px;background:#fff8e9}.homework-record-preview>div{display:flex;align-items:center;justify-content:space-between;gap:12px}.homework-record-preview>div span{color:#95610d;font-variant-numeric:tabular-nums}.homework-record-preview footer{display:flex;justify-content:flex-end;gap:8px}.homework-record-preview footer button{min-height:44px;padding:0 14px;border:1px solid #d8e2ef;border-radius:10px;background:#fff;color:#5b687c;font-weight:700}.homework-record-preview footer button:last-child{border:0;background:var(--school-blue);color:#fff}.homework-upload-preview{display:grid;gap:9px;margin-top:14px}.homework-upload-preview>article{display:grid;grid-template-columns:120px minmax(0,1fr) auto;align-items:center;gap:12px;padding:10px;border-radius:13px;background:#f6f9fd}.homework-upload-media{display:grid;width:120px;min-height:74px;place-items:center;overflow:hidden;border-radius:10px;background:#eaf2ff}.homework-upload-media img,.homework-upload-media video{width:120px;height:78px;object-fit:cover}.homework-upload-media .managed-audio{width:100%;min-width:0}.homework-upload-preview>article>div:nth-child(2){display:grid;min-width:0;gap:4px}.homework-upload-preview>article>div:nth-child(2) b,.homework-upload-preview>article>div:nth-child(2) span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.homework-upload-preview>article>div:nth-child(2) span{color:var(--school-muted);font-size:11px}.homework-upload-preview>article>button{display:flex;min-height:44px;align-items:center;gap:5px;padding:0 11px;border:1px solid #efc8c5;border-radius:10px;background:#fff6f5;color:#b42318;font-weight:700}.homework-upload-preview>article>button svg{width:16px;height:16px}.homework-media-empty{margin:14px 0 0;padding:13px;border:1px dashed #c9d7e9;border-radius:11px;background:#f9fbfe;color:#748096;font-size:12px;line-height:1.6}.assignment-materials{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:14px}.assignment-materials.compact{grid-template-columns:repeat(3,minmax(120px,1fr));max-width:620px}.assignment-material{display:grid;min-height:104px;place-items:center;overflow:hidden;border:1px solid #dfe7f2;border-radius:12px;background:#f7faff}.assignment-material img,.assignment-material video{display:block;width:100%;height:160px;object-fit:cover}.assignment-material video{background:#101828;object-fit:contain}.assignment-material .managed-audio{box-sizing:border-box;width:100%;min-width:0;padding:10px}.assignment-media-summary{display:flex;align-items:center;gap:8px;margin-top:9px;color:#2465ce;font-size:11px}.assignment-media-summary span{padding:4px 8px;border-radius:7px;background:#edf4ff;font-weight:800}.assignment-media-summary em{color:#7a879a;font-style:normal}.student-assignment-materials{margin:12px 0 18px;padding:14px;border:1px solid #dfe7f2;border-radius:14px;background:#f8fbff}.student-assignment-materials>header{display:flex;align-items:center;justify-content:space-between;gap:12px;margin-bottom:4px}.student-assignment-materials>header span{color:var(--school-muted);font-size:11px}.assignment-plaza-content{margin:9px 0 0;color:#4b596e;line-height:1.65;white-space:pre-wrap}.pending-students{display:grid;grid-template-columns:auto 1fr;gap:12px;margin:-4px 0 16px;padding:12px 14px;border:1px solid #efd39e;border-radius:12px;background:#fff9ec}.pending-students b{color:#94600c;font-size:12px}.pending-students span{color:#705f43;font-size:12px;line-height:1.55}@media(max-width:760px){.homework-media-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.assignment-materials,.assignment-materials.compact{grid-template-columns:repeat(2,minmax(0,1fr));max-width:none}.homework-upload-preview>article{grid-template-columns:92px minmax(0,1fr)}.homework-upload-media,.homework-upload-media img,.homework-upload-media video{width:92px}.homework-upload-preview>article>button{grid-column:2;justify-self:end}.pending-students{grid-template-columns:1fr}}@media(max-width:420px){.homework-media-actions{grid-template-columns:1fr 1fr}.homework-record-preview footer{display:grid;grid-template-columns:1fr}.homework-record-preview footer button{width:100%}.assignment-materials,.assignment-materials.compact{grid-template-columns:1fr}.assignment-material img,.assignment-material video{height:190px}}@media(prefers-reduced-motion:reduce){.homework-media-actions>button,.homework-media-actions>label{transition:none}}.review-student-heading{display:flex;align-items:center;gap:10px;margin:18px 0 8px}.review-student-heading>label{margin-right:auto;font-size:13px;font-weight:700}.review-student-heading>button{display:inline-flex;min-height:40px;align-items:center;gap:5px;padding:0 13px;border:1px solid #b9cef2;border-radius:10px;background:#f1f6ff;color:#2766ce;font-weight:700}.review-student-heading>button.active{border-color:#2766ce;background:#2766ce;color:#fff}.review-student-heading>button svg{width:16px;height:16px}.review-student-heading>span{color:#68758b;font-size:12px;white-space:nowrap}.teacher-app .plaza-social-actions{gap:8px;flex-wrap:nowrap}.teacher-app .plaza-social-actions button{min-height:44px;padding:0 10px;white-space:nowrap}.teacher-app .plaza-social-actions .plaza-rate-button{margin-left:auto;color:#2465ce;border-color:#b8cfed}.teacher-app .plaza-comment-form{grid-template-columns:minmax(0,1fr) auto}.teacher-app .teacher-comment-history{max-height:180px;overflow:auto;overscroll-behavior:contain}.teacher-app .plaza-emoji-list{flex-wrap:nowrap;overflow:auto}.teacher-app .plaza-emoji-toggle{justify-self:start;min-height:44px;padding:0 12px;border:1px solid #dce4ef;border-radius:8px;color:#53677f;background:#fff}.plaza-rating-summary{grid-column:1/-1;font-size:12px;color:#62748b}.plaza-rating-summary summary{min-height:44px;display:flex;align-items:center;cursor:pointer}.plaza-rating-summary p{margin:4px 0;white-space:pre-wrap;overflow-wrap:anywhere}.existing-audio{position:relative;overflow:hidden}.existing-audio input{display:block;position:absolute;top:0;right:0;bottom:0;left:0;width:100%;height:100%;opacity:0;cursor:pointer}.existing-audio:focus-within{outline:2px solid #3478f6;outline-offset:2px}.local-audio-help{margin:8px 0 12px;color:#64748b;font-size:12px;line-height:1.6}.class-hero,.teacher-class-head{position:relative;isolation:isolate;overflow:hidden;min-height:150px;border:1px solid #dce8f8;background-color:#f7faff;background-image:linear-gradient(90deg,#f7fafffc,#f7fafff5 47%,#f7faffad 68%,#f7faff14),url(/assets/learning-book-hero.png);background-repeat:no-repeat;background-position:center,right center;background-size:cover,auto 126%;color:#1b2a46;box-shadow:0 14px 32px #3478f61a}.class-hero{padding-right:42%}.class-hero p{background:#e7f0ff;color:#2465ce}.class-hero span,.teacher-class-head span{color:#62728c}.teacher-class-head>div{position:relative;z-index:1}.teacher-class-head>div:first-child{max-width:48%}.teacher-class-head p{color:#2465ce}.teacher-class-head button{border-color:#cbdcf6;background:#ffffffeb;color:#2465ce;box-shadow:0 6px 18px #3478f61a}@media(max-width:760px){.class-hero{padding-right:34%;background-size:cover,auto 92%}.teacher-class-head{background-position:center,right top;background-size:cover,auto 88%}.teacher-class-head>div:first-child{max-width:72%}}
