.report-page--review .report-page__header{background:0 0;padding:4px 0 0}.report-header-actions{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.report-header-actions button{color:#344054;cursor:pointer;background:#fff;border:1px solid #d5ddeb;border-radius:8px;align-items:center;gap:8px;padding:10px 14px;font-weight:600;display:inline-flex}.report-header-actions button:disabled{opacity:.6;cursor:wait}.report-page--review .report-overview-grid{background:#fff;border:1px solid #e1e7ef;border-radius:12px;grid-template-columns:minmax(220px,.8fr) minmax(300px,1fr) minmax(300px,1.15fr);align-items:start;gap:0;overflow:hidden}.report-page--review .report-overview-grid>section{box-shadow:none;background:0 0;border:0;border-radius:0;padding:24px}.report-page--review .report-overview-grid>section+section{border-left:1px solid #edf0f5}.report-page--review .report-section-heading h2{font-size:15px;line-height:1.5}.report-page--review .report-score-card__body{flex-direction:column;align-items:center;gap:20px;margin-top:22px;display:flex}.report-page--review .report-score-card__number{background:conic-gradient(#428f68 var(--score-sweep), #e3eee8 0);isolation:isolate;border-radius:50%;flex-direction:column;flex-shrink:0;justify-content:center;align-items:center;gap:2px;width:150px;height:150px;display:flex;position:relative}.report-page--review .report-score-card__number:before{content:"";z-index:-1;background:#fff;border-radius:50%;position:absolute;inset:10px}.report-page--review .report-score-card__number strong{letter-spacing:-1px;font-size:42px;line-height:1.1}.report-page--review .report-score-card__number span{color:#778397;font-size:14px}.report-page--review .report-score-card__summary{box-sizing:border-box;background:#f5f9f7;border-radius:8px;width:100%;padding:14px}.report-page--review .report-score-card__summary p{color:#526375;margin:0;font-size:13px;line-height:1.9}.report-dimension-tiles{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:22px;display:grid}.report-dimension-tiles a{color:#344054;background:#f8faff;border:1px solid #e5eaf2;border-left:4px solid #4e7bec;border-radius:8px;flex-direction:column;gap:9px;padding:15px 12px;text-decoration:none;display:flex}.report-dimension-tiles a[data-tone="1"]{background:#f5faf7;border-left-color:#459b7b}.report-dimension-tiles a[data-tone="2"]{background:#fffbf5;border-left-color:#d9a05e}.report-dimension-tiles a[data-tone="3"]{background:#faf8fe;border-left-color:#9980d0}.report-dimension-tiles a:hover{box-shadow:0 3px 12px #1a3f6812}.report-dimension-tiles a:focus-visible{outline-offset:3px;outline:2px solid #1677ff}.report-dimension-tiles span{font-size:13px;font-weight:600}.report-dimension-tiles strong{font-size:28px;line-height:1.3}.report-dimension-tiles small{color:#7a8698;font-size:11px;font-weight:400}.report-overview-note{color:#7a8698;margin:18px 0 0;font-size:12px;line-height:1.8}.report-page--review .report-overview-insights{flex-direction:column;gap:20px;display:flex}.report-page--review .report-narrative-card{background:0 0;border:0;padding:0}.report-page--review .report-narrative-card__title h2{font-size:14px}.report-page--review .report-narrative-section h3{display:none}.report-page--review .report-narrative-section>ul{gap:10px;margin-top:12px;display:grid}.report-page--review .report-narrative-section>ul>li{background:#f5f9f7;border-radius:8px;padding:12px}.report-page--review .report-narrative-card--attention li{background:#fff8ef}.report-page--review .report-narrative-section p{color:#526375;overflow-wrap:anywhere;margin:0;font-size:13px;line-height:1.8}.report-detail-layout{grid-template-columns:minmax(0,1.35fr) minmax(280px,1fr);align-items:start;gap:20px;display:grid}.report-detail-layout:not(:has(.recommendation-panel)){grid-template-columns:minmax(0,1fr)}.report-page--review .report-dimensions{background:#fff;border:1px solid #e1e7ef;border-radius:12px;padding:24px}.report-page--review .report-dimensions>ul>li{padding:18px;scroll-margin-top:90px}.report-page--review .report-dimensions li>p{min-height:0;font-size:13px;line-height:1.85}.report-page--review .report-dimension-expansion{margin:14px 0;font-size:13px}.report-page--review summary{cursor:pointer;color:#4267a6;font-size:13px;line-height:1.8}.report-page--review .report-ali-dimension-details{padding:12px}.report-page--review .report-ali-dimension-details p{font-size:13px;line-height:1.85}.report-page--review .report-guidance{padding:24px}.report-page--review .report-guidance__items{display:block}.report-page--review .report-guidance__items>svg{display:none}.report-page--review .report-guidance .report-narrative-section>ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px}.report-page--review .report-guidance .report-narrative-section>ul>li{border-top:3px solid #5d9a7b;padding:18px}.report-page--review .report-guidance .report-narrative-section>ul>li:nth-child(3n+2){background:#fff8ef;border-color:#d6a66c}.report-page--review .report-guidance .report-narrative-section>ul>li:nth-child(3n){background:#f3f7ff;border-color:#7294d9}.report-page--review .report-ali-details{padding:20px 24px}.report-page--review .report-ali-details>details{margin-top:12px}.report-page--review .report-ali-details p{font-size:13px;line-height:1.8}@media (width<=1200px){.report-page--review .report-overview-grid{grid-template-columns:minmax(220px,.8fr) minmax(280px,1fr)}.report-page--review .report-overview-grid>.report-overview-insights{border-top:1px solid #edf0f5;border-left:0;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.report-detail-layout{grid-template-columns:minmax(0,1fr)}}@media (width<=700px){.report-page--review .report-overview-grid,.report-page--review .report-overview-grid>.report-overview-insights{grid-template-columns:minmax(0,1fr)}.report-page--review .report-overview-grid>section+section{border-top:1px solid #edf0f5;border-left:0}.report-page--review .report-overview-grid>section,.report-page--review .report-dimensions,.report-page--review .report-guidance{padding:18px}.report-page--review .report-dimensions>ul,.report-page--review .report-guidance .report-narrative-section>ul{grid-template-columns:minmax(0,1fr)}.report-page--review .report-page__header{flex-direction:column;align-items:start;gap:12px}.report-header-actions{justify-content:space-between;width:100%}}.report-page--review .report-page__header{box-shadow:none;border:0}.report-page--review .report-long-analysis summary{color:#526375}.report-page--review .report-long-analysis summary em{color:#4267a6;margin-top:6px;font-size:12px;font-style:normal;display:block}.report-page--review .report-long-analysis[open]>summary{margin-bottom:12px}.report-page--review .report-narrative-card--attention .report-narrative-section>ul>li{background:#fff8ef}.post-class-page:has(.report-page--review){gap:14px}.report-page--review{gap:14px}.report-page--review .report-eyebrow{display:none}.report-page--review .report-overview-grid{grid-template-columns:repeat(3,minmax(0,1fr));align-items:stretch}.report-page--review .report-overview-grid>section{padding:20px}.report-page--review .report-score-card__body{flex-direction:row;align-items:center;gap:18px;margin-top:32px}.report-page--review .report-score-card__number{width:116px;height:116px}.report-page--review .report-score-card__number strong{font-size:32px}.report-page--review .report-score-card__summary{flex:1}.report-dimension-tiles{gap:10px;margin-top:16px}.report-dimension-tiles a{background:#fbfcff;gap:5px;padding:12px}.report-dimension-tiles strong{font-size:24px}.report-overview-note{margin-top:12px;font-size:11px}.report-page--review .report-narrative-card--positive .report-narrative-section>ul>li{background:0 0;padding:0 0 0 18px;position:relative}.report-page--review .report-narrative-card--positive .report-narrative-section>ul>li:before{content:"✓";color:#219d72;position:absolute;left:0}.report-page--review .report-narrative-card--positive h2{color:#219d72}.report-page--review .report-narrative-card--attention{border-top:1px solid #edf0f5;padding-top:14px}.report-page--review .report-narrative-card--attention h2{color:#c57a28}.report-page--review .report-narrative-card--attention .report-narrative-section>ul{counter-reset:issue}.report-page--review .report-narrative-card--attention .report-narrative-section>ul>li{counter-increment:issue;background:#fff;border:1px solid #edf0f5;padding:10px 10px 10px 42px;position:relative}.report-page--review .report-narrative-card--attention .report-narrative-section>ul>li:before{content:counter(issue, decimal-leading-zero);color:#1677ff;background:#f0f5ff;border-radius:50%;padding:4px;font-size:10px;position:absolute;top:12px;left:10px}.report-detail-layout{grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:stretch;gap:14px}.report-page--review .report-dimensions,.report-page--review .recommendation-panel,.report-page--review .report-guidance{box-shadow:none;border:1px solid #e1e7ef;border-radius:10px;padding:18px}.report-page--review .report-dimensions>ul{gap:10px;margin-top:14px}.report-page--review .report-dimensions>ul>li{background:#f8faff;padding:14px}.report-page--review .report-guidance__items{background:0 0;border:0;padding:0}.report-page--review .report-guidance .report-narrative-section>ul>li{border:1px solid #cce4d8;border-radius:7px;min-height:100px}.report-page--review .recommendation-list{gap:10px;display:grid}.report-page--review .recommendation-list>li{padding:14px}.class-summary-page--embedded{background:#fff;border:1px solid #e1e7ef;border-radius:10px;gap:14px;padding:18px}.class-summary-page--embedded .class-summary-transcript ol{max-height:300px}.class-summary-event-details,.class-summary-identifiers{color:#667085;font-size:11px}.class-summary-event-details summary,.class-summary-identifiers summary{cursor:pointer}.class-summary-page--embedded .class-summary-recordings li{background:#f7fbf9;border-color:#cce4d8}.class-summary-page--embedded .class-summary-recordings progress{accent-color:#219d72;width:100%;height:5px}@media (width<=1100px){.report-page--review .report-overview-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.report-page--review .report-overview-grid>.report-overview-insights{border-top:1px solid #edf0f5;border-left:0;grid-column:1/-1;grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.report-page--review .report-narrative-card--attention{border-top:0;padding-top:0}.report-detail-layout{grid-template-columns:minmax(0,1fr)}}@media (width>=1101px){.report-page--review .report-overview-grid>.report-overview-insights{border-top:0;border-left:1px solid #edf0f5;grid-column:auto;display:flex}}@media (width<=700px){.report-page--review .report-overview-grid,.report-page--review .report-overview-grid>.report-overview-insights{grid-template-columns:minmax(0,1fr)}.class-summary-page--embedded{padding:12px}.report-page--review .report-overview-grid>section{padding:16px}.report-page--review .report-score-card__body{margin-top:18px}}.report-page--review .recommendation-panel{background:#fff}.class-summary-page--embedded .class-summary-transcript li{grid-template-columns:140px minmax(0,1fr);gap:6px 12px}.class-summary-page--embedded .class-summary-event-details{grid-column:1/-1}@media (width<=700px){.class-summary-page--embedded .class-summary-transcript li{grid-template-columns:minmax(0,1fr)}}.simple-preparation-hero{isolation:isolate;background:#edf4ff;border-radius:16px;align-items:center;min-height:170px;padding:26px 30px;display:flex;position:relative;overflow:hidden}.simple-preparation-hero>img{z-index:-1;object-fit:cover;object-position:right center;opacity:.6;width:min(70%,772px);height:100%;position:absolute;top:0;right:0}.simple-preparation-hero>div{max-width:650px}.simple-preparation-hero h1,.simple-preparation-hero h2{color:#172033;margin:0 0 12px;font-size:32px;line-height:1.35}.simple-preparation-hero p{color:#526482;margin:0;line-height:1.8}.home-materials-hero{margin-bottom:24px}.home-materials-hero>div>p:first-child{margin-bottom:8px}.home-material-upload-grid{grid-template-columns:1fr 1fr;gap:20px;display:grid}.home-material-upload{color:#25324a;text-align:left;cursor:pointer;background:#fff;border:1px solid #dce6f5;border-radius:15px;padding:20px}.home-material-upload:hover{border-color:#386afa}.home-material-upload:disabled{opacity:.6;cursor:wait}.home-material-upload__heading{align-items:center;gap:12px;font-size:19px;display:flex}.home-material-upload__heading img{object-fit:contain;width:56px;height:56px}.home-material-upload__drop{background:#f8fbff;border:1px dashed #92afd6;border-radius:10px;flex-direction:column;justify-content:center;align-items:center;gap:10px;min-height:135px;margin-top:14px;display:flex}.home-material-upload__drop svg{color:#376dff}.home-material-upload__drop small{color:#62718a;text-align:center;line-height:1.5}.simple-text-button{color:#285fd8;cursor:pointer;background:0 0;border:0;align-items:center;gap:8px;padding:14px 0;display:inline-flex}.preparation-page--simple{max-width:1280px;margin-inline:auto}.preparation-page--simple .preparation-stepper{margin-bottom:18px}.preparation-page--simple .preparation-stepper>span{color:#3065e8;align-items:center;gap:10px;font-weight:600;display:inline-flex}.preparation-page--simple .preparation-stepper>span>span{background:#eaf1ff;border-radius:50%;place-items:center;width:30px;height:30px;display:grid}.preparation-page--simple .preparation-materials{margin-top:20px}.preparation-page--simple .preparation-materials__grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px}.preparation-page--simple .material-card{background:#fff;border:1px solid #dce6f5;border-radius:15px;padding:20px}.preparation-page--simple .material-card__empty{color:#68758a;margin-block:20px}.preparation-page--simple .material-card__actions{flex-wrap:wrap}.preparation-page--simple .material-card__actions>button:first-child{color:#255fda;background:#eef4ff}.simple-course-summary{background:#fff;border:1px solid #dce6f5;border-radius:14px;justify-content:space-between;align-items:center;gap:20px;margin-top:20px;padding:22px 26px;display:flex}.simple-course-summary h2{margin:0 0 10px;font-size:18px}.simple-course-summary p{color:#45556f;margin:0 0 8px;line-height:1.8}.simple-course-summary small{color:#69778d}.simple-course-summary button{flex-shrink:0}.simple-preparation-initializing{background:#fff;border:1px solid #e0e8f6;border-radius:14px;padding:35px}#preparation-settings:not([hidden]){margin-top:16px}.preparation-page--simple .preparation-actions{z-index:5;margin-top:24px;bottom:0}.device-check-page--simple .device-check-layout{margin-top:20px;display:block}.device-check-page--simple .device-check-panel>.device-check-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:16px;display:grid}.device-check-page--simple .device-check-panel>.device-check-list>li{background:#fff;border:1px solid #dfe7f3;border-radius:12px;flex-wrap:wrap;align-content:flex-start;gap:12px;min-height:150px;padding:20px;display:flex}.device-check-page--simple .device-check-panel>.device-check-list .device-check-item__copy{flex:1;min-width:130px}.device-check-page--simple .device-check-item__copy>section{margin-top:12px}.device-background-checks{border-top:1px solid #e6ecf5;margin-top:18px;padding-top:16px}.device-background-checks summary,.device-check-privacy>summary{cursor:pointer;color:#455975;padding:8px;font-weight:600}.device-check-page--simple .device-check-aside{grid-template-columns:1fr 1fr;align-items:start;gap:18px;margin-top:20px;display:grid}.device-check-page--simple .device-check-preview{grid-row:span 2}.device-check-page--simple .device-check-recording-directory{grid-column:2}.device-check-page--simple .device-check-actions{z-index:5;background:#fff;position:sticky;bottom:0}.home-material-upload:focus-visible,.simple-text-button:focus-visible{outline-offset:3px;outline:3px solid #326bdf}@media (width<=800px){.simple-preparation-hero{padding:22px}.simple-preparation-hero>img{opacity:.25}.home-material-upload-grid,.preparation-page--simple .preparation-materials__grid,.device-check-page--simple .device-check-panel>.device-check-list,.device-check-page--simple .device-check-aside{grid-template-columns:1fr}.device-check-page--simple .device-check-recording-directory{grid-column:1}.simple-course-summary{flex-direction:column;align-items:flex-start;gap:5px}.preparation-page--simple .preparation-actions{flex-wrap:wrap}}.preparation-page--simple{gap:12px}.preparation-page--simple .preparation-stepper{margin:0;padding:10px 16px}.preparation-page--simple .simple-preparation-hero{min-height:100px;padding:16px 22px}.preparation-page--simple .simple-preparation-hero h2{margin-bottom:6px;font-size:26px}.preparation-page--simple .preparation-materials{background:0 0;margin:0;padding:0}.preparation-page--simple .preparation-materials__header{border:0;padding-top:0}.preparation-page--simple .preparation-materials__header .practice-eyebrow{display:none}.preparation-page--simple .material-card{padding:14px 18px}.preparation-page--simple .material-card__empty{margin:10px 0}.preparation-page--simple .simple-course-summary{margin-top:0;padding:14px 20px}.preparation-page--simple .simple-course-summary h2,.preparation-page--simple .simple-course-summary p{margin-bottom:4px}.preparation-page--simple .preparation-actions{margin-top:0}.material-card .material-card__icon{background:0 0}.material-card .material-card__icon img{object-fit:contain;width:42px;height:42px}@media (width<=800px){.preparation-page--simple .preparation-actions,.device-check-page--simple .device-check-actions{grid-template-columns:1fr}}.preparation-page--simple .preparation-stepper{grid-template-columns:1fr minmax(40px,.6fr) 1fr;min-height:48px}.preparation-page--simple .preparation-stepper>span{justify-content:center}@media (width<=760px){.teacher-shell:has(.simple-preparation-hero){grid-template-columns:minmax(0,1fr)}:is(.teacher-shell:has(.simple-preparation-hero) .teacher-sidebar,.teacher-shell:has(.simple-preparation-hero) .teacher-workspace){min-width:0}}.simple-device-icon{object-fit:contain;width:34px;height:34px}.courseware-player{color:#e9f1fc;background:#142233;border:1px solid #496078;border-radius:12px;outline:none;padding:6px;box-shadow:0 8px 24px #0005}.courseware-player.is-embedded{z-index:2;box-sizing:border-box;pointer-events:auto;flex-direction:column;width:100%;height:100%;display:flex;position:absolute;inset:0}.courseware-player.is-embedded:not(.is-expanded){box-shadow:none;pointer-events:none;background:0 0;border:0;border-radius:0;padding:0}.is-embedded:not(.is-expanded) .courseware-page{transform-origin:0 0;pointer-events:auto;background:#11161c;border-radius:5px 5px 10px 10px;width:63.2%;height:80.3%;min-height:0;position:absolute;top:5.1%;left:11.8%}.is-embedded:not(.is-expanded) .courseware-controls{pointer-events:auto;gap:3px;width:63.2%;padding:0;position:absolute;bottom:1%;left:11.8%}.is-embedded:not(.is-expanded) .courseware-controls button{min-height:22px;padding:2px 6px;font-size:clamp(10px,1vw,14px)}.is-embedded:not(.is-expanded) .courseware-jump{pointer-events:auto;bottom:15%;left:11.8%;right:25%}.is-embedded:not(.is-expanded) .courseware-open{pointer-events:auto;bottom:0;left:78%}.is-embedded:not(.is-expanded)>p:not(.courseware-window-hint){background:#11161c;width:55%;margin:0;position:absolute;top:20%;left:15%}.is-embedded:not(.is-expanded)>button:not(.courseware-open){pointer-events:auto;position:absolute;bottom:20%;left:30%}.is-embedded:not(.is-expanded).is-focused{outline:none}.is-embedded:not(.is-expanded).is-focused .courseware-page{outline:2px solid #68b7ff}.immersive-classroom-stage__lesson-frame:has(.is-expanded){z-index:18}.immersive-classroom-stage__lesson-frame:has(.is-expanded) .immersive-classroom-stage__lesson-hardware{visibility:hidden}.is-embedded .courseware-page canvas{height:100%;max-height:100%}.courseware-player.is-focused{outline-offset:2px;outline:2px solid #68b7ff}.courseware-page{background:#fff;justify-content:center;align-items:center;min-height:80px;display:flex;position:relative}.courseware-page canvas{object-fit:contain;width:100%;max-height:38vh;display:block}.courseware-controls{justify-content:center;align-items:center;gap:4px;padding-top:6px;display:flex}.courseware-player button,.display-settings button{cursor:pointer;color:#fff;min-height:36px;font:inherit;background:#21364d;border:1px solid #657f9b;border-radius:6px;padding:5px 10px}.courseware-player button:disabled{opacity:.4;cursor:default}.courseware-player button:focus-visible{outline:2px solid #78bfff}.courseware-player input{color:#152333;background:#fff;width:5em;padding:6px}.courseware-player.is-expanded{z-index:18;flex-direction:column;width:auto;height:auto;display:flex;position:fixed;inset:5vh 8vw 10vh}.courseware-player.is-expanded .courseware-page{flex:1;min-height:0}.courseware-player.is-expanded canvas{height:100%;max-height:70vh}.courseware-player.is-preview:not(.is-expanded){max-width:700px;margin:10px 0;position:relative}.courseware-player.is-preview:not(.is-expanded) canvas{max-height:45vh}.courseware-jump{z-index:2;background:#142233;border:1px solid #657f9b;border-radius:10px;max-height:60vh;padding:12px;position:absolute;bottom:45px;left:0;right:0;overflow:auto}.courseware-thumbnails{grid-template-columns:repeat(3,1fr);gap:6px;margin:10px 0;display:grid}.courseware-thumbnails canvas{object-fit:contain;width:100%;height:65px}.courseware-key-hint{background:#142233d9;border-radius:4px;padding:4px 8px;font-size:12px;position:absolute;top:6px;right:6px}.courseware-window-hint{z-index:19;background:#142233;border-radius:8px;max-width:320px;padding:8px 12px;font-size:13px;position:fixed;top:70px;right:20px}.courseware-open{white-space:nowrap;position:absolute;bottom:0;left:calc(100% + 8px)}.courseware-companion{background:#142233;margin:0;font-family:system-ui,sans-serif}.courseware-player.is-companion{box-sizing:border-box;flex-direction:column;height:100vh;display:flex;position:relative}.is-companion .courseware-page{flex:1;min-height:0}.is-companion .courseware-page canvas{height:100%;max-height:calc(100vh - 60px)}.display-settings{border:1px solid #9daab6;border-radius:8px;margin:12px 0;padding:12px}.display-settings label{margin:6px 0;display:block}.display-settings strong{margin-right:12px}@media (width<=800px){.courseware-controls button{padding:4px 6px}}.courseware-page [role=alert]{color:#fff;background:#142233;padding:8px;position:absolute}.immersive-classroom-projection{display:none!important}.immersive-classroom-shell{z-index:1000;color:#f6f7f9;background:#07090c;min-width:960px;min-height:600px;position:fixed;inset:0;overflow:hidden}.immersive-classroom-shell__topbar{z-index:20;background:#0a0b0d;border-bottom:1px solid #ffffff17;align-items:center;gap:18px;height:66px;padding:0 28px;display:flex;position:absolute;inset:0 0 auto;box-shadow:0 8px 22px #0000002e}.immersive-device-status{align-items:center;gap:24px;min-width:0;display:flex}.immersive-device-status__primary{align-items:center;gap:24px;display:flex}.immersive-device-status__primary>span,.immersive-device-status__recording,.immersive-device-status__network{color:#d7d9df;white-space:nowrap;align-items:center;gap:9px;font-size:13px;display:inline-flex}.immersive-device-status__primary img{object-fit:contain;width:19px;height:22px}.immersive-device-status__primary span:nth-child(2) img{width:24px;height:18px}.immersive-device-status__primary [data-state=ready]:first-child{color:#75e2ad}.immersive-device-status__primary [data-state=failed],.immersive-device-status__primary [data-state=off]{color:#ffb4ad}.immersive-device-status__recording{color:#ffcfcb;background:#32191b;border:1px solid #713435;border-radius:7px;min-height:34px;padding:0 12px}.immersive-device-status__recording[data-state=recording] svg{color:#ff5f62}.immersive-device-status__network{color:#aeb3bd}.immersive-device-status__network[data-state=offline],.immersive-device-status__network[data-state=degraded]{color:#ffcf7b}.immersive-device-status__guidance{z-index:22;color:#3e2d10;background:#fff3d7;border:1px solid #e5b75e;border-radius:8px;width:680px;max-width:88vw;padding:12px 16px;position:fixed;top:78px;left:50%;transform:translate(-50%);box-shadow:0 12px 30px #00000038}.immersive-device-status__guidance p{margin:0}.immersive-classroom-shell__timer{color:#aeb2ba;align-items:center;gap:8px;font-size:14px;display:flex;position:absolute;left:50%;transform:translate(-50%)}.immersive-classroom-shell__timer img{object-fit:contain;width:21px;height:24px}.immersive-classroom-shell__timer output{color:#f0f1f3;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:17px;font-weight:650;line-height:1}.immersive-classroom-shell__end{color:#fff;cursor:pointer;background:#be3e41;border:1px solid #d64b4d;border-radius:7px;min-width:102px;height:42px;margin-left:auto;padding:0 18px;font-size:14px}.immersive-classroom-shell__end:hover:not(:disabled){background:#cf494c}.immersive-classroom-shell__body{background:#090b0f;position:absolute;inset:66px 0 0;overflow:hidden}.immersive-classroom-shell__body>.immersive-classroom-stage{position:absolute;inset:0}.immersive-classroom-shell__safety{z-index:17;position:absolute;bottom:16px;right:18px}.immersive-classroom-shell__safety button{color:#e2e5eb;cursor:pointer;background:#0a0b0db8;border:1px solid #ffffff38;border-radius:6px;min-height:34px;padding:0 12px;font-size:12px}.immersive-classroom-shell__notices{z-index:21;width:720px;max-width:88vw;position:absolute;top:80px;left:50%;transform:translate(-50%)}.immersive-classroom-shell__notices p{color:#16202a;background:#f3f7fa;border:1px solid #c7d2dc;border-radius:7px;margin:0 0 8px;padding:11px 15px;box-shadow:0 10px 30px #0003}.immersive-classroom-stage{background:#17191d;width:100%;height:100%;position:relative;overflow:hidden}.immersive-classroom-stage__background{z-index:1;object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.immersive-classroom-stage__students{z-index:3;position:absolute;inset:0}.immersive-classroom-stage__foreground{z-index:4;pointer-events:none;width:100%;height:100%;position:absolute;inset:0}.student-actor-2d{top:25%;left:var(--student-left);width:15.2%;height:47%;color:inherit;cursor:pointer;background:0 0;border:0;padding:0;transition:transform .28s,filter .18s;position:absolute;overflow:visible}.student-actor-2d:hover,.student-actor-2d[aria-pressed=true]{filter:drop-shadow(0 0 12px #5995ff8a)}.student-actor-2d:focus-visible{outline-offset:5px;border-radius:12px;outline:3px solid #78a8ff}.student-actor-2d--seated{transform:translateY(4%)}.student-actor-2d--raised{transform:translateY(8%)}.student-actor-2d--standing{transform:translateY(var(--standing-shift))}.student-actor-2d__seated-legs{z-index:0;clip-path:inset(86% -10% -10%);pointer-events:none;display:block;position:absolute;inset:0;container-type:size}.student-actor-2d--raised .student-actor-2d__seated-legs{transform:translateY(-4%)}.student-actor-2d__standing-legs{z-index:0;clip-path:inset(86% -10% -50%);pointer-events:none;display:block;position:absolute;inset:0;container-type:size}.student-actor-2d__standing-legs>img{transform-origin:50% 85%;width:min(70cqw,46.6667cqh);height:auto;animation:student-presence var(--presence-duration) ease-in-out var(--presence-delay) infinite;display:block;position:absolute;top:48%;left:50%;transform:translate(-50%)}.student-actor-2d__seated-legs>img{width:min(65cqw,43.3333cqh);height:auto;clip-path:var(--seated-leg-silhouette);display:block;position:absolute;top:64%;left:50%;transform:translate(-50%)}.student-actor-2d[data-student-id=student-01]{--seated-leg-silhouette:polygon(18% 30%, 82% 30%, 79% 48%, 78% 63%, 79% 68%, 77% 73%, 77% 76%, 80% 81%, 81% 84%, 80% 86%, 77% 86.6%, 66% 86.5%, 60% 85%, 59% 82%, 59% 78%, 61% 74%, 61% 70%, 60% 64%, 61% 55%, 62% 48%, 62% 43%, 60% 40%, 50% 36%, 40% 40%, 38% 43%, 39% 53%, 39% 62%, 40% 68%, 38% 74%, 40% 78%, 41% 82%, 40% 85%, 36% 86.5%, 23% 86.5%, 19% 85%, 19% 82%, 21% 78%, 24% 73%, 23% 70%, 22% 63%, 22% 55%)}.student-actor-2d[data-student-id=student-02]{--seated-leg-silhouette:polygon(23% 25%, 76% 25%, 77% 43%, 77% 59%, 76% 72%, 77% 77%, 75% 78%, 76% 81%, 79% 88%, 79% 92%, 76% 94%, 64% 94%, 60% 93%, 60% 89%, 61% 85%, 63% 81%, 64% 78%, 56% 78%, 55% 75%, 56% 68%, 58% 59%, 59% 52%, 59% 47%, 56% 43%, 55% 38%, 50% 28%, 47% 38%, 46% 43%, 44% 50%, 43% 61%, 41% 70%, 42% 76%, 41% 78%, 39% 79%, 39% 83%, 41% 89%, 40% 93%, 36% 94%, 25% 94%, 21% 93%, 21% 88%, 23% 84%, 25% 81%, 26% 78%, 22% 78%, 22% 73%, 23% 66%, 23% 56%)}.student-actor-2d[data-student-id=student-03]{--seated-leg-silhouette:polygon(16% 28%, 85% 28%, 85% 42%, 84% 55%, 85% 64%, 82% 70%, 82% 73%, 84% 77%, 88% 82%, 90% 86%, 89% 88%, 75% 88%, 69% 87%, 63% 83%, 60% 80%, 61% 76%, 63% 73%, 62% 68%, 64% 59%, 66% 50%, 66% 45%, 62% 41%, 60% 36%, 57% 32%, 50% 29%, 43% 32%, 39% 37%, 37% 41%, 34% 46%, 34% 52%, 36% 61%, 36% 70%, 36% 74%, 39% 77%, 40% 81%, 37% 84%, 30% 87%, 26% 88%, 12% 88%, 10% 87%, 11% 83%, 14% 80%, 17% 77%, 20% 72%, 19% 68%, 18% 59%, 17% 49%)}.student-actor-2d[data-student-id=student-04]{--seated-leg-silhouette:polygon(27% 25%, 73% 25%, 74% 40%, 75% 53%, 76% 64%, 79% 68%, 80% 72%, 78% 75%, 77% 79%, 79% 84%, 79% 87%, 76% 88%, 66% 88%, 62% 87%, 61% 85%, 61% 81%, 62% 76%, 59% 74%, 57% 69%, 55% 61%, 57% 53%, 57% 46%, 54% 39%, 51% 33%, 50% 33%, 47% 39%, 43% 45%, 42% 52%, 44% 59%, 43% 65%, 42% 73%, 40% 77%, 39% 82%, 39% 87%, 36% 88%, 26% 88%, 22% 87%, 22% 84%, 24% 78%, 24% 74%, 22% 74%, 23% 69%, 25% 65%, 25% 56%, 26% 46%)}.student-actor-2d[data-student-id=student-05]{--seated-leg-silhouette:polygon(21% 35%, 81% 35%, 80% 49%, 80% 58%, 77% 68%, 74% 74%, 75% 79%, 80% 84%, 82% 86%, 81% 88.5%, 76% 89%, 65% 88%, 59% 86%, 58% 84%, 59% 80%, 60% 76%, 60% 71%, 58% 68%, 60% 63%, 63% 56%, 64% 49%, 63% 45%, 57% 42%, 49% 40%, 44% 42%, 41% 45%, 42% 53%, 40% 61%, 39% 67%, 42% 70%, 41% 74%, 42% 78%, 43% 81%, 42% 85%, 38% 87%, 31% 89%, 21% 89%, 18% 88%, 18% 85%, 21% 82%, 24% 78%, 26% 74%, 25% 70%, 23% 67%, 23% 58%)}.immersive-classroom-stage__students .student-actor-2d--standing .student-actor-2d__portrait{clip-path:inset(0 0 25% round 8px);transform:translateY(-8%)}.student-actor-2d__portrait{z-index:1;clip-path:inset(0 0 28% round 8px);display:block;position:absolute;inset:0;overflow:hidden;container-type:size}.student-actor-2d--seated .student-actor-2d__portrait,.student-actor-2d--raised .student-actor-2d__portrait{clip-path:none;border-radius:8px}.student-actor-2d__sprite{aspect-ratio:2/3;transform-origin:50% 85%;width:min(100cqw,66.6667cqh);animation:student-presence var(--presence-duration) ease-in-out var(--presence-delay) infinite;position:absolute;bottom:0;left:50%;transform:translate(-50%)}.student-actor-2d--seated .student-actor-2d__sprite,.student-actor-2d--raised .student-actor-2d__sprite{width:min(65cqw,43.3333cqh);bottom:24%}@media (aspect-ratio>=3){.immersive-classroom-stage__students .student-actor-2d__seated-legs,.immersive-classroom-stage__students .student-actor-2d__standing-legs{clip-path:inset(100%)}.immersive-classroom-stage__students :is(.student-actor-2d--seated,.student-actor-2d--raised) .student-actor-2d__sprite{bottom:12%}}.student-actor-2d__sprite>img:first-child,.student-actor-2d__answer-atlas{width:100%;height:100%;display:block}.student-actor-2d__sprite>img:first-child{object-fit:fill}.student-actor-2d--seated[data-student-id=student-02][data-idle-gesture=none] .student-actor-2d__sprite>img:first-child{clip-path:polygon(0 0,100% 0,100% 100%,8% 100%,8% 68%,0 68%)}.student-actor-2d--seated[data-student-id=student-04][data-idle-gesture=none] .student-actor-2d__sprite>img:first-child{clip-path:polygon(0 0,100% 0,100% 100%,6% 100%,6% 79%,0 79%)}.student-actor-2d__answer-atlas{background-image:var(--answer-atlas-image);pointer-events:none;animation-duration:var(--gesture-duration);animation-timing-function:step-end;animation-delay:var(--gesture-delay);background-position:0 0;background-repeat:no-repeat;background-size:600% 100%;animation-iteration-count:infinite}.student-actor-2d__answer-atlas--closed{background-position:0 0;animation-name:student-answer-atlas-closed}.student-actor-2d__answer-atlas--half{background-position:40% 0;animation-name:student-answer-atlas-half}.student-actor-2d__answer-atlas--open{background-position:80% 0;animation-name:student-answer-atlas-open}.student-actor-2d__sprite--answering,.student-actor-2d__sprite--stand_speak{width:min(100cqw,59cqh);bottom:13%}.student-actor-2d__asset-preload{opacity:0;pointer-events:none;width:1px;height:1px;position:absolute}.student-actor-2d__face-motion{z-index:2;pointer-events:none;position:absolute;inset:0}.student-actor-2d__face-motion:after{top:calc(var(--smile-top) - 2%);left:calc(var(--smile-left) - 15%);content:"";opacity:0;width:30%;height:8%;animation:student-smile-cheeks var(--smile-duration) ease-in-out var(--smile-delay) infinite;background:radial-gradient(circle at 20%,#e7757042 0 8%,#0000 24%),radial-gradient(circle at 80%,#e7757042 0 8%,#0000 24%);border-radius:45%;position:absolute}.student-actor-2d__blink-sheet{z-index:4;top:var(--blink-sheet-top);left:var(--blink-sheet-left);background-image:var(--blink-sheet-image);pointer-events:none;width:46.875%;height:13.0208%;animation:student-blink-sheet var(--blink-duration) steps(1, end) var(--blink-delay) infinite;background-position:0 0;background-repeat:no-repeat;background-size:200% 100%;position:absolute;-webkit-mask-image:radial-gradient(at 50% 54%,#000 0 54%,#000000e0 65%,#0000 88%);mask-image:radial-gradient(at 50% 54%,#000 0 54%,#000000e0 65%,#0000 88%)}.student-actor-2d__blink-sheet--closed{background-position:100% 0;animation:none}@keyframes student-presence{0%,to{transform:translate(-50%)translateY(0)rotate(0)}48%{transform:translate(-50%)translateY(-.68%)rotate(-.18deg)}72%{transform:translate(-50%)translateY(-.22%)rotate(.16deg)}}@keyframes student-answer-atlas-closed{0%,42%,69%,to{background-position:0 0}43%,68%{background-position:20% 0}}@keyframes student-answer-atlas-half{0%,42%,69%,to{background-position:40% 0}43%,68%{background-position:60% 0}}@keyframes student-answer-atlas-open{0%,42%,69%,to{background-position:80% 0}43%,68%{background-position:100% 0}}@keyframes student-blink-sheet{0%,43%,47%,to{background-position:0 0}44%,46%{background-position:100% 0}}@keyframes student-smile-cheeks{0%,45%,to{opacity:0}58%,80%{opacity:1}}@media (prefers-reduced-motion:reduce){.student-actor-2d__sprite,.student-actor-2d__answer-atlas,.student-actor-2d__blink-sheet,.student-actor-2d__face-motion:after{animation:none}.student-actor-2d__face-motion:after{opacity:0}}.student-actor-2d__name{z-index:4;color:#f8f9fb;pointer-events:none;background:#13181dd6;border:1px solid #ffffff57;border-radius:5px;gap:1px;min-width:78px;padding:5px 10px;display:grid;position:absolute;bottom:12%;left:50%;transform:translate(-50%);box-shadow:0 6px 18px #0003}.student-actor-2d__name strong{font-size:13px;line-height:1.1}.student-actor-2d__name small{color:#b9c8df;font-size:10px}.immersive-classroom-stage__lesson-frame{z-index:7;aspect-ratio:1010/390;pointer-events:none;width:39%;position:absolute;bottom:0;left:30.5%}.immersive-classroom-stage__lesson-hardware{z-index:1;object-fit:fill;width:100%;height:100%;display:block;position:absolute;inset:0}.immersive-classroom-stage__lesson-video{z-index:2;object-fit:contain;object-position:center;transform-origin:0 0;background:#11161c;border-radius:5px 5px 10px 10px;width:63.2%;height:80.3%;display:block;position:absolute;top:5.1%;left:11.8%}.immersive-classroom-stage__lesson{z-index:7;aspect-ratio:1010/390;object-fit:fill;object-position:center bottom;pointer-events:none;background:0 0;width:39%;height:auto;position:absolute;bottom:0;left:30.5%}.immersive-classroom-stage__teacher{z-index:9;aspect-ratio:1.07;object-fit:cover;pointer-events:none;background:#11161c;border:2px solid #ffffffb8;border-radius:13px;width:13.2%;position:absolute;bottom:3.5%;right:2.6%;box-shadow:0 12px 28px #0000003d}.immersive-classroom-stage__issue{z-index:12;color:#4a3514;background:#fff1d1;border:1px solid #dfb15f;border-radius:7px;margin:0;padding:10px 14px;position:absolute;top:18px;left:50%;transform:translate(-50%)}.immersive-classroom-stage__interaction-toast{z-index:13;color:#f8fafc;pointer-events:none;background:#111827db;border:1px solid #ffffff3d;border-radius:999px;margin:0;padding:9px 14px;font-size:13px;font-weight:600;position:absolute;top:18px;right:24px;box-shadow:0 10px 24px #0000003d}.classroom-live-panel{z-index:16;color:#e9ebef;background:#080a0dd1;border:1px solid #fff3;border-radius:9px;width:360px;max-width:70vw;position:absolute;bottom:16px;left:18px;box-shadow:0 14px 34px #0000003d}.classroom-live-panel summary{color:#d8dce4;cursor:pointer;padding:10px 13px;font-size:12px}.classroom-live-panel__content{gap:10px;max-height:430px;padding:0 13px 13px;font-size:12px;display:grid;overflow:auto}.classroom-live-panel__content p,.classroom-live-panel__content form,.classroom-live-panel__content section{margin:0}.classroom-live-panel textarea{color:#f4f5f7;background:#181b20;border:1px solid #ffffff3d;border-radius:6px;width:100%;min-height:76px}.classroom-live-panel button{color:#f1f2f4;background:#242a32;border:1px solid #ffffff42;border-radius:6px;min-height:32px}.student-answer-gallery{z-index:17;color:#eef2f7;background:#080a0deb;border:1px solid #ffffff3d;border-radius:10px;position:absolute;bottom:16px;right:18px;box-shadow:0 18px 48px #00000057}.student-answer-gallery[open]{width:min(760px,100vw - 36px);left:18px;right:auto}.student-answer-gallery>summary{color:#e2e8f0;cursor:pointer;padding:10px 13px;font-size:12px}.student-answer-gallery__grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:6px;padding:0 8px 10px;display:grid}.student-answer-gallery figure{min-width:0;margin:0}.student-answer-gallery__viewport{background:#d7e0e5;border:1px solid #ffffff2e;border-radius:8px;height:230px;position:relative;overflow:hidden}.student-answer-gallery__viewport .student-actor-2d{cursor:default;filter:none;pointer-events:none;width:460px;height:690px;transition:none;position:absolute;top:-20px;left:50%;transform:translate(-50%)}.student-answer-gallery__viewport .student-actor-2d__portrait{clip-path:none}.student-answer-gallery__viewport .student-actor-2d__name{display:none}.student-idle-gesture-gallery .student-answer-gallery__viewport .student-actor-2d{width:100%;height:100%;top:0}.student-idle-gesture-gallery .student-actor-2d--seated .student-actor-2d__sprite{width:min(100cqw,66.6667cqh);bottom:0}.student-answer-gallery figcaption{color:#f6f8fb;text-align:center;padding:8px 4px 1px;font-size:11px}.immersive-classroom-shell [role=dialog]{z-index:40;color:#20252c;background:#fff;border:1px solid #d7dce2;border-radius:14px;width:460px;max-width:90vw;padding:26px;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%);box-shadow:0 24px 80px #00000075}.immersive-classroom-shell [role=dialog] h2{margin:0 0 12px;font-size:22px}.immersive-classroom-shell [role=dialog] p{color:#5e6670;margin:0 0 20px;line-height:1.7}.immersive-classroom-shell [role=dialog] button{background:#f4f6f8;border:1px solid #c6ccd3;border-radius:7px;min-height:40px;margin-right:10px;padding:0 16px}.immersive-classroom-shell [role=dialog] button:last-child{color:#fff;background:#b53b3f;border-color:#b53b3f}@media (aspect-ratio<=4/3){.immersive-device-status__network{display:none}.immersive-classroom-shell__topbar{padding-inline:18px}}@media (prefers-reduced-motion:reduce){.student-actor-2d{transition:none}}.pilot-console{color:#344054;background:#f5f7fb;grid-template-columns:220px minmax(0,1fr);min-height:100vh;font-family:inherit;display:grid}.pilot-console a{color:#1677ff;text-decoration:none}.pilot-sidebar{box-sizing:border-box;background:#fff;border-right:1px solid #e5eaf2;flex-direction:column;height:100vh;padding:24px 16px 16px;display:flex;position:sticky;top:0}.pilot-brand{align-items:center;gap:12px;padding-bottom:28px;display:flex}.pilot-brand>span{color:#fff;background:#1677ff;border-radius:10px;place-items:center;width:40px;height:40px;font-weight:700;display:grid}.pilot-brand strong,.pilot-brand small{display:block}.pilot-brand strong{color:#344054;font-size:17px}.pilot-brand small{color:#98a2b3;margin-top:5px}.pilot-nav{background:#eaf3ff;border-left:3px solid #1677ff;border-radius:8px;gap:12px;padding:14px;display:flex}.pilot-sidebar-note{color:#667085;background:#fafbfc;border:1px solid #e5eaf2;border-radius:8px;margin-top:auto;padding:14px;font-size:12px;line-height:1.8}.pilot-return{border:1px solid #e5eaf2;border-radius:6px;justify-content:space-between;padding:12px;font-size:13px;display:flex}.pilot-topbar{background:#fff;border-bottom:1px solid #e5eaf2;justify-content:space-between;align-items:center;gap:12px;padding:20px 24px;display:flex}.pilot-topbar h1{margin:0;font-size:22px}.pilot-console button{font:inherit;color:#344054;cursor:pointer;background:#fff;border:1px solid #dae3ef;border-radius:6px;justify-content:center;align-items:center;gap:7px;padding:10px 14px;font-size:13px;display:inline-flex}.pilot-console button:disabled{opacity:.55;cursor:wait}.pilot-console a:focus-visible,.pilot-console button:focus-visible{outline-offset:3px;outline:2px solid #1677ff}.pilot-content{gap:16px;padding:20px 24px;display:grid}.pilot-query{flex-wrap:wrap;align-items:end;gap:12px;display:flex}.pilot-query label{gap:6px;font-size:12px;display:grid}.pilot-query input{color:#344054;background:#fff;border:1px solid #dae3ef;border-radius:6px;padding:10px 12px}.pilot-query button{color:#fff;background:#1677ff;border-color:#1677ff}.pilot-query a{padding:10px 0;font-size:13px}.pilot-card{background:#fff;border:1px solid #e1e7ef;border-radius:9px;min-width:0;padding:20px;box-shadow:0 2px 6px #20324a03}.pilot-section-head{justify-content:space-between;align-items:center;gap:12px;margin-bottom:16px;display:flex}.pilot-card h2{margin:0;font-size:16px}.pilot-section-head p,.pilot-section-head small,.pilot-hint{color:#98a2b3;margin:6px 0 0;font-size:12px;line-height:1.7}.pilot-section-head a{font-size:13px}.pilot-kpis{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin:0;display:grid}.pilot-kpis div{background:#f8faff;border:1px solid #edf1f7;border-radius:6px;padding:14px}.pilot-kpis dt{color:#98a2b3;font-size:11px}.pilot-kpis dd{overflow-wrap:anywhere;margin:8px 0 0;font-size:14px;font-weight:600}.pilot-columns{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;display:grid}.pilot-services{margin:0;padding:0;list-style:none}.pilot-services li{border-bottom:1px solid #edf1f7;justify-content:space-between;align-items:center;padding:12px 0;font-size:13px;display:flex}.pilot-badge{color:#1677ff;white-space:nowrap;background:#f0f5ff;border-radius:4px;padding:4px 7px;font-size:11px;font-weight:500;display:inline-block}.pilot-badge.error,.pilot-error{color:#b42318;background:#fff1f0}.pilot-error{border-radius:7px;padding:16px}.pilot-instructions{gap:14px;margin:0;padding-left:22px;display:grid}.pilot-instructions li{color:#667085;background:#f5f8ff;border-radius:6px;padding:14px;font-size:13px;line-height:1.8}.pilot-table-scroll{overflow-x:auto}.pilot-console table{border-collapse:collapse;width:100%;min-width:820px;font-size:12px}.pilot-console th{text-align:left;color:#667085;background:#f8faff;padding:14px 12px;font-weight:500}.pilot-console td{overflow-wrap:anywhere;border-bottom:1px solid #edf1f7;max-width:230px;padding:18px 12px}.pilot-console td small{color:#98a2b3;margin-top:7px;font-size:11px;display:block}@media (width<=1150px){.pilot-kpis{grid-template-columns:repeat(3,minmax(0,1fr))}}@media (width<=760px){.pilot-console{grid-template-columns:minmax(0,1fr)}.pilot-sidebar{flex-direction:row;align-items:center;gap:12px;height:auto;padding:12px;position:static}.pilot-brand{margin-right:auto;padding:0}.pilot-sidebar-note,.pilot-nav{display:none}.pilot-topbar{padding:16px}.pilot-topbar h1{font-size:18px}.pilot-content{padding:12px}.pilot-columns{grid-template-columns:minmax(0,1fr)}.pilot-card{padding:14px}.pilot-kpis{grid-template-columns:repeat(2,minmax(0,1fr))}.pilot-section-head{flex-wrap:wrap;align-items:start}}:root{color:#172033;background:#eef2f6;font-family:Inter,PingFang SC,Microsoft YaHei,system-ui,sans-serif}*{box-sizing:border-box}html,body,#root{width:100%;min-width:320px;height:100%;min-height:100%;margin:0}button,input,textarea,select{font:inherit}.practice-page{gap:24px;width:100%;max-width:1120px;margin:0 auto;display:grid}.practice-page__hero,.practice-panel__heading,.practice-summary__link,.practice-summary__body,.practice-dialog__actions,.practice-pagination{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:16px;display:flex}.practice-page__hero,.practice-panel{background:#fff;border:1px solid #dce2ea;border-radius:16px;padding:28px;box-shadow:0 12px 36px #19233412}.practice-page__hero h1,.practice-panel h2,.practice-summary h3,.practice-dialog h2{margin:0}.practice-page__hero p:last-child,.practice-dialog p{color:#536078;line-height:1.6}.practice-eyebrow{color:#2e63c4;letter-spacing:.04em;margin:0 0 8px;font-size:13px;font-weight:700}.practice-primary-action,.practice-summary__actions button,.practice-filters button,.practice-feedback button,.practice-dialog__actions button,.practice-pagination button,.practice-text-action{color:#35425a;cursor:pointer;background:#fff;border:1px solid #aeb9c9;border-radius:8px;min-height:40px;padding:9px 14px}.practice-primary-action,.practice-summary__actions button:first-of-type{color:#fff;background:#2e63c4;border-color:#2e63c4}.practice-danger-action,.practice-summary__actions .practice-summary__delete{color:#842626;background:#fff4f4;border-color:#cb8a8a}.practice-primary-action:disabled,.practice-summary__actions button:disabled,.practice-dialog__actions button:disabled,.practice-pagination button:disabled{cursor:not-allowed;opacity:.55}.practice-summary-list{gap:12px;margin:20px 0 0;padding:0;list-style:none;display:grid}.practice-summary{background:#fbfcfe;border:1px solid #dce2ea;border-radius:12px}.practice-summary__link,.practice-summary__body{padding:18px}.practice-summary__link{cursor:pointer}.practice-summary__link:hover,.practice-summary__link:focus-visible{background:#f1f5fb;border-radius:12px}.practice-summary__copy{min-width:0}.practice-summary__meta,.practice-summary__actions,.practice-filters,.practice-filters__actions{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.practice-summary__meta{color:#65728a;margin-top:9px;font-size:14px}.practice-stage{font-weight:700}.practice-summary__refresh-note{color:#842626;font-weight:700}.practice-empty,.practice-panel--permission{color:#536078}.practice-feedback{background:#f6f8fb;border:1px solid #d1d9e5;border-radius:9px;margin-top:16px;padding:14px}.practice-feedback p{margin:0 0 8px}.practice-feedback--error{color:#842626;background:#fff4f4;border-color:#e0abab}.practice-feedback__request{overflow-wrap:anywhere;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.practice-filters{align-items:end}.practice-field{color:#35425a;gap:7px;min-width:150px;font-size:14px;font-weight:700;display:grid}.practice-field--search{flex:240px}.practice-field input,.practice-field select{color:#172033;background:#fff;border:1px solid #bfc9d8;border-radius:8px;width:100%;min-height:42px;padding:9px 11px}.practice-pagination{justify-content:center;margin-top:20px}.practice-dialog-backdrop{z-index:30;background:#0f18288c;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.practice-dialog{background:#fff;border-radius:16px;width:100%;max-width:560px;max-height:calc(100vh - 40px);padding:28px;overflow-y:auto;box-shadow:0 24px 70px #0a122047}.practice-dialog form{gap:18px;margin-top:20px;display:grid}.practice-dialog__practice-title{color:#172033;font-size:18px;font-weight:700}.practice-dialog__actions{justify-content:flex-end;margin-top:22px}.preparation-page{gap:14px;width:100%;max-width:1460px;margin:0 auto;padding-bottom:76px;display:grid}.preparation-page__status,.preparation-page__refresh{justify-self:start;margin:0}.preparation-stepper{background:#fff;border:1px solid #dfe4eb;border-radius:8px;grid-template-columns:minmax(190px,1fr) minmax(50px,.6fr) minmax(150px,1fr) minmax(50px,.6fr) minmax(130px,1fr);align-items:center;min-height:58px;padding:10px 22px;display:grid}.preparation-stepper button{color:#667085;cursor:pointer;background:0 0;border:0;justify-content:center;align-items:center;gap:9px;min-height:36px;padding:0 8px;font-size:13px;font-weight:600;display:inline-flex}.preparation-stepper button:disabled{cursor:not-allowed;opacity:.58}.preparation-stepper button>span{background:#fff;border:1px solid #cfd6df;border-radius:50%;flex:none;place-items:center;width:23px;height:23px;font-size:11px;display:grid}.preparation-stepper button.is-current{color:#1677ff}.preparation-stepper button.is-current>span{color:#fff;background:#1677ff;border-color:#1677ff}.preparation-stepper button.is-complete{color:#1677ff}.preparation-stepper button.is-complete>span{color:#1677ff;border-color:#1677ff}.preparation-stepper i{background:#e2e7ee;height:1px}.preparation-workflow{grid-template-columns:minmax(0,1.42fr) minmax(320px,.86fr);align-items:start;gap:14px;display:grid}.preparation-workflow__main{background:#fff;border:1px solid #dfe4eb;border-radius:9px;min-width:0;box-shadow:0 5px 16px #1d29390d}.preparation-config{min-width:0}.preparation-config__section[hidden],.preparation-workflow__materials[hidden],.recording-directory[hidden]{display:none}.recording-directory{background:#f5f9ff;border:1px solid #cfe0f7;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;margin:0 20px 20px;padding:16px;display:grid}.recording-directory__icon{color:#1677ff;background:#e6f4ff;border-radius:10px;place-items:center;width:46px;height:46px;display:grid}.recording-directory__content h2,.recording-directory__content p{margin:0}.recording-directory__content h2{color:#1d2939;font-size:15px}.recording-directory__content>p:not(.practice-eyebrow){color:#667085;margin-top:5px;font-size:12px}.recording-directory__content strong,.recording-directory__content small{margin-top:7px;display:block}.recording-directory__content strong{color:#b54708;font-size:12px}.recording-directory__content strong[data-selected=true]{color:#027a48}.recording-directory__content small{color:#98a2b3;font-size:10px}.recording-directory>button{color:#1677ff;cursor:pointer;background:#fff;border:1px solid #91caff;border-radius:6px;align-items:center;gap:6px;min-height:38px;padding:8px 13px;display:inline-flex}.preparation-config__section{padding:18px 20px 20px}.preparation-config__section h2,.preparation-config__section h3{margin:0}.preparation-config__section>h3{color:#344054;margin:18px 0 10px;font-size:13px;font-weight:600}.preparation-config__section-heading,.preparation-suggestion,.preparation-students__title,.preparation-materials__header,.material-card__header,.material-card__actions,.material-history__item{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:12px;display:flex}.preparation-config__section-heading h2{color:#1d2939;font-size:16px}.preparation-config__section-heading p:last-child{color:#98a2b3;margin:5px 0 0;font-size:12px}.preparation-required,.preparation-student-count{color:#d92d20;background:#fff1f0;border-radius:4px;padding:3px 8px;font-size:11px;font-weight:600}.preparation-student-count{color:#1677ff;background:#eaf3ff}.preparation-fields{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.preparation-fields .practice-field,.preparation-class-settings .practice-field{color:#475467;gap:6px;min-width:0;font-size:12px;font-weight:500}.preparation-fields select,.preparation-class-settings select{border-color:#d0d5dd;border-radius:5px;min-height:38px;padding:7px 10px;font-size:13px}.preparation-suggestion{background:#f5f9ff;border:1px solid #cfe0f7;border-radius:6px;margin-top:16px;padding:12px 14px}.preparation-suggestion h3,.preparation-suggestion p{margin:0}.preparation-suggestion p{color:#667085;margin-top:4px;font-size:12px}.preparation-suggestion button{color:#1677ff;cursor:pointer;background:#fff;border:1px solid #91caff;border-radius:5px;min-height:34px;padding:6px 12px}.preparation-class-settings{border:1px solid #eaecf0;border-radius:7px;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;margin:16px 0 12px;display:grid;overflow:hidden}.preparation-class-settings>div,.preparation-class-settings>label{border-bottom:1px solid #eaecf0;border-right:1px solid #eaecf0;align-content:center;gap:3px;min-height:60px;padding:8px 14px;display:grid}.preparation-class-settings>:nth-child(3n){border-right:0}.preparation-class-settings>:nth-last-child(-n+3){border-bottom:0}.preparation-class-settings span,.preparation-class-settings small{color:#98a2b3;font-size:11px}.preparation-class-settings strong{color:#1d2939;font-size:13px}.preparation-students{gap:7px;margin:0;padding:0;list-style:none;display:grid}.preparation-students li{background:#fff;border:1px solid #e4e7ec;border-radius:7px;align-items:center;gap:11px;min-height:62px;padding:5px 12px;display:flex}.preparation-students li>img{object-fit:contain;object-position:center top;flex:none;width:46px;height:46px}.preparation-students__copy{flex:1;gap:3px;min-width:0;line-height:1.2;display:grid}.preparation-students__copy p,.preparation-students__copy small{color:#667085;margin:0;font-size:11px;line-height:1.25}.preparation-students__title{justify-content:flex-start;gap:8px}.preparation-students__title strong{color:#1d2939;font-size:14px;line-height:1.2}.preparation-students__title span{color:#1677ff;background:#eaf3ff;border-radius:4px;padding:2px 6px;font-size:10px;font-weight:600}.preparation-materials{box-shadow:none;background:#fff;border:0;border-radius:0;padding:0 20px 20px}.preparation-materials__header h2,.material-card__header h3{margin:0}.preparation-materials__header{border-top:1px solid #eaecf0;padding-top:16px}.preparation-materials__header h2{font-size:14px}.preparation-materials__header button,.material-card__actions button,.material-history button,.material-upload-dialog button{color:#344054;cursor:pointer;background:#fff;border:1px solid #d0d5dd;border-radius:5px;justify-content:center;align-items:center;gap:5px;min-height:34px;padding:6px 11px;font-size:12px;font-weight:600;display:inline-flex}.preparation-materials__grid{gap:8px;margin-top:12px;display:grid}.preparation-resource-actions{background:#fbfcfe;border:1px solid #dfe4eb;border-radius:8px;gap:11px;margin-top:12px;padding:13px;display:grid}.preparation-resource-actions>header{align-items:center;gap:9px;display:flex}.preparation-resource-actions>header>span{color:#0b5bd3;background:#eaf3ff;border-radius:7px;flex:none;place-items:center;width:34px;height:34px;display:grid}.preparation-resource-actions>header div,.preparation-resource-actions>header strong,.preparation-resource-actions>header small{display:block}.preparation-resource-actions>header strong{color:#344054;font-size:12px}.preparation-resource-actions>header small{color:#7c8aa0;margin-top:2px;font-size:10px}.preparation-resource-actions>div{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.preparation-resource-actions>div>button{color:#344054;text-align:left;cursor:pointer;background:#fff;border:1px solid #d7e6fb;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-width:0;min-height:58px;padding:10px 12px;transition:border-color .18s,background .18s,box-shadow .18s;display:grid}.preparation-resource-actions>div>button:hover,.preparation-resource-actions>div>button:focus-visible{color:#0b5bd3;background:#f5f9ff;border-color:#84adff;outline:0;box-shadow:0 4px 12px #1f2a440f}.preparation-resource-actions__icon{color:#0b5bd3;background:#eaf3ff;border-radius:7px;place-items:center;width:34px;height:34px;display:grid}.preparation-resource-actions button>span:nth-child(2){gap:3px;min-width:0;display:grid}.preparation-resource-actions button strong{color:inherit;font-size:12px}.preparation-resource-actions button small{color:#7c8aa0;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.resource-picker-backdrop{z-index:45}.preparation-materials__guidance{color:#475467;background:#f5f9ff;border:1px solid #b8d5ff;border-radius:7px;gap:4px;margin-top:12px;padding:13px 14px;display:grid}.preparation-materials__guidance strong{color:#175cd3;font-size:13px}.preparation-materials__guidance p{margin:0;font-size:12px;line-height:1.5}.material-card{background:#fff;border:1px solid #e4e7ec;border-radius:6px;min-width:0;padding:11px 13px}.material-card__identity{align-items:center;gap:11px;min-width:0;display:flex}.material-card__identity>div{min-width:0}.material-card__icon{color:#c47b2a;background:#fff7ed;border-radius:6px;flex:none;place-items:center;width:39px;height:39px;display:grid}.material-card--courseware .material-card__icon{color:#b54708;background:#fff4e8}.material-card__header h3{color:#98a2b3;font-size:10px;font-weight:500}.material-card__filename{color:#1d2939;text-overflow:ellipsis;white-space:nowrap;max-width:360px;margin-top:2px;font-size:13px;font-weight:600;display:block;overflow:hidden}.material-status{color:#027a48;background:#ecfdf3;border-radius:4px;padding:3px 7px;font-size:11px;font-weight:600}.material-status--muted{color:#667085;background:#f2f4f7}.material-card__summary{flex-wrap:wrap;gap:5px 16px;margin:9px 0 7px 50px;display:flex}.material-card__summary>div{gap:4px;min-width:0;display:inline-flex}.material-card__summary dt{color:#98a2b3;font-size:11px}.material-card__summary dd{color:#667085;overflow-wrap:anywhere;min-width:0;margin:0;font-size:11px}.material-card__empty{color:#98a2b3;margin:8px 0 7px 50px;font-size:11px}.material-card__actions{justify-content:flex-end;margin-top:8px}.material-history{border-top:1px solid #eaecf0;margin-top:9px;padding-top:8px}.material-history summary{cursor:pointer;color:#475467;font-size:11px;font-weight:600}.material-history__list{gap:10px;margin:14px 0 0;padding:0;list-style:none;display:grid}.material-history__item{background:#fff;border-radius:8px;align-items:flex-start;padding:12px}.material-history__item div{gap:5px;display:grid}.material-history__item time{color:#98a2b3;font-size:11px}.preparation-summary{background:#fff;border:1px solid #dfe4eb;border-radius:9px;position:sticky;top:82px;overflow:hidden;box-shadow:0 5px 16px #1d29390d}.preparation-summary__header,.preparation-summary__course,.preparation-summary__materials,.preparation-summary__next,.preparation-summary__footer{padding:16px 18px}.preparation-summary__header{background:#f8faff;border-bottom:1px solid #eaecf0;justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.preparation-summary__header p,.preparation-summary__header h2{margin:0}.preparation-summary__header p{color:#1677ff;letter-spacing:.06em;font-size:10px;font-weight:700}.preparation-summary__header h2{color:#1d2939;margin-top:5px;font-size:16px}.preparation-summary__header>span{color:#027a48;background:#ecfdf3;border-radius:4px;padding:3px 7px;font-size:11px;font-weight:600}.preparation-summary__header>span[data-state=dirty]{color:#b54708;background:#fffaeb}.preparation-summary__course{align-items:center;gap:12px;display:flex}.preparation-summary__course>span{color:#fff;background:#3478ef;border-radius:9px;flex:none;place-items:center;width:52px;height:52px;font-size:14px;font-weight:700;display:grid}.preparation-summary__course div{gap:5px;display:grid}.preparation-summary__course strong{color:#1d2939;font-size:15px}.preparation-summary__course small{color:#98a2b3;font-size:11px}.preparation-summary__facts{grid-template-columns:1fr 1fr;gap:7px;margin:0;padding:0 18px 14px;display:grid}.preparation-summary__facts>div{background:#fcfcfd;border:1px solid #eaecf0;border-radius:6px;align-content:center;gap:5px;min-height:58px;padding:10px 12px;display:grid}.preparation-summary__facts dt{color:#98a2b3;font-size:10px}.preparation-summary__facts dd{color:#344054;margin:0;font-size:12px;font-weight:600}.preparation-summary__materials{border-top:1px solid #eaecf0;gap:8px;display:grid}.preparation-summary__materials h3{color:#475467;margin:0 0 3px;font-size:11px;font-weight:600}.preparation-summary__materials>div{color:#b54708;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;display:grid}.preparation-summary__materials span{gap:2px;min-width:0;display:grid}.preparation-summary__materials strong{color:#344054;font-size:11px}.preparation-summary__materials small{color:#98a2b3;font-size:10px}.preparation-summary__materials em{color:#027a48;background:#ecfdf3;border-radius:4px;padding:2px 6px;font-size:10px;font-style:normal}.preparation-summary__next{color:#1677ff;background:#f5f9ff;border:1px solid #bdd7ff;border-radius:6px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;margin:0 18px 14px;padding:11px 12px;display:grid}.preparation-summary__next>span{color:#fff;background:#1677ff;border-radius:50%;place-items:center;width:24px;height:24px;font-size:11px;font-weight:700;display:grid}.preparation-summary__next div{gap:3px;display:grid}.preparation-summary__next strong{color:#344054;font-size:12px}.preparation-summary__next p{color:#98a2b3;margin:0;font-size:10px;line-height:1.45}.preparation-summary__footer{color:#98a2b3;gap:8px;padding-top:0;font-size:10px;display:flex}.preparation-summary__footer code{color:#667085}.preparation-actions{z-index:12;background:#fffffff7;border:1px solid #dfe4eb;border-radius:8px;grid-template-columns:minmax(130px,.75fr) minmax(170px,.85fr) minmax(220px,1.1fr);gap:8px;margin-top:2px;padding:10px;display:grid;position:sticky;bottom:0;box-shadow:0 -7px 20px #1d293914}.preparation-actions button{cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:7px;min-height:40px;padding:8px 15px;font-size:13px;font-weight:600;display:inline-flex}.preparation-actions__secondary,.preparation-actions__save{color:#344054;background:#fff;border:1px solid #d0d5dd}.preparation-actions__primary{color:#fff;background:#1677ff;border:1px solid #1677ff;box-shadow:0 5px 12px #1677ff2e}.preparation-actions button:disabled{cursor:not-allowed;opacity:.55}.lesson-parse{color:#536078;background:#f6f8fb;border:1px solid #dce2ea;border-radius:12px;gap:14px;margin-top:20px;padding:18px;display:grid}.lesson-parse--embedded{overflow-wrap:anywhere;background:0 0;border:0;border-top:1px solid #eaecf0;border-radius:0;gap:10px;margin-top:14px;padding:14px 0 0;font-size:12px}.lesson-parse--embedded .lesson-parse__header h2{color:#344054;font-size:13px}.lesson-parse--embedded .lesson-parse__live{background:#f5f8ff;border-radius:6px;padding:9px 12px}.lesson-parse--embedded .lesson-parse__live--succeeded{color:#15804a;background:#ecfdf3}.lesson-parse--embedded .lesson-parse__live--unknown{color:#99620d;background:#fffaeb}.lesson-parse--embedded .lesson-parse__live--failed{color:#b42318;background:#fff3f3}.lesson-parse--embedded .lesson-parse__target{color:#667085;font-weight:400}.lesson-parse--embedded .lesson-parse__target strong{color:#344054}.lesson-parse--embedded summary{cursor:pointer;color:#475467;font-weight:600}.lesson-parse--embedded details[open]>summary{margin-bottom:10px}.lesson-parse--embedded .lesson-parse__history{padding-top:10px}.lesson-parse--embedded .lesson-parse__history ol{max-height:240px;overflow-y:auto}.lesson-parse__header,.lesson-parse__current,.lesson-parse__issue,.lesson-parse__empty,.lesson-parse__result{gap:10px;display:grid}.lesson-parse__header h2,.lesson-parse__result h3,.lesson-parse__history h3,.lesson-parse p{margin:0}.lesson-parse__live{color:#243c67;font-weight:700}.lesson-parse__current button,.lesson-parse__empty button,.lesson-parse__issue button{color:#2456ad;cursor:pointer;background:#fff;border:1px solid #7394c9;border-radius:8px;width:fit-content;min-height:40px;padding:9px 14px}.lesson-parse__time{flex-wrap:wrap;gap:6px;display:flex}.lesson-parse__automatic{color:#53627a;font-size:14px;line-height:1.6}.lesson-parse__current .lesson-parse__refresh{text-underline-offset:3px;background:0 0;border-color:#0000;padding-inline:0;font-size:14px;text-decoration:underline}.lesson-parse__issue,.lesson-parse__current--failed{color:#812a2a;background:#fff3f3;border:1px solid #e2aaaa;border-radius:9px;padding:12px 14px}.lesson-parse__badge{color:#23653e;background:#e8f6ed;border-radius:999px;width:fit-content;padding:4px 9px;font-size:13px;font-weight:700}.lesson-parse__result dl{gap:8px;margin:0;display:grid}.lesson-parse__result dl>div{grid-template-columns:92px minmax(0,1fr);gap:10px;display:grid}.lesson-parse__result dd{overflow-wrap:anywhere;min-width:0;margin:0}.lesson-parse__history{border-top:1px solid #dce2ea;padding-top:14px}.lesson-parse__history ol{gap:8px;margin:12px 0 0;padding:0;list-style:none;display:grid}.lesson-parse__history li{background:#fff;border-radius:8px;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:10px;padding:10px 12px;display:grid}.lesson-parse__history time{color:#65728a;text-align:right;overflow-wrap:anywhere}.device-check-page{gap:14px;width:100%;max-width:1460px;margin:0 auto;padding-bottom:76px;display:grid}.device-check-stepper{background:#fff;border:1px solid #dfe4eb;border-radius:8px;grid-template-columns:minmax(190px,1fr) minmax(50px,.6fr) minmax(150px,1fr) minmax(50px,.6fr) minmax(130px,1fr);align-items:center;min-height:58px;padding:10px 22px;display:grid}.device-check-stepper>a,.device-check-stepper>span{color:#667085;justify-content:center;align-items:center;gap:9px;min-height:36px;padding:0 8px;font-size:13px;font-weight:600;text-decoration:none;display:inline-flex}.device-check-stepper>a>span,.device-check-stepper>span>span{background:#fff;border:1px solid #cfd6df;border-radius:50%;flex:none;place-items:center;width:23px;height:23px;font-size:11px;display:grid}.device-check-stepper>.is-complete,.device-check-stepper>.is-current{color:#1677ff}.device-check-stepper>.is-complete>span{border-color:#1677ff}.device-check-stepper>.is-current>span{color:#fff;background:#1677ff;border-color:#1677ff}.device-check-stepper>i{background:#e2e7ee;height:1px}.device-check-layout{grid-template-columns:minmax(0,1.3fr) minmax(360px,.9fr);align-items:start;gap:14px;display:grid}.device-check-panel,.device-check-preview,.device-check-privacy{background:#fff;border:1px solid #dfe4eb;border-radius:9px;min-width:0;overflow:hidden;box-shadow:0 5px 16px #1d29390d}.device-check-panel{padding:18px 20px 8px}.device-check-panel__header,.device-check-preview>header,.device-check-privacy>header{justify-content:space-between;align-items:flex-start;gap:14px;display:flex}.device-check-panel__header h1,.device-check-preview h2,.device-check-privacy h2,.device-check-panel__header p,.device-check-preview header p,.device-check-privacy header p{margin:0}.device-check-panel__header h1,.device-check-preview h2,.device-check-privacy h2{color:#1d2939;font-size:16px}.device-check-panel__header p,.device-check-preview header p,.device-check-privacy header p{color:#98a2b3;margin-top:5px;font-size:11px;line-height:1.45}.device-check-secondary,.device-check-actions a,.device-check-actions button{cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:6px;min-height:38px;padding:7px 13px;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex}.device-check-secondary,.device-check-actions__secondary{color:#344054;background:#fff;border:1px solid #d0d5dd}.device-check-page__status{color:#175cd3;background:#eff8ff;border-radius:4px;width:fit-content;margin:12px 0 2px;padding:4px 8px;font-size:11px;font-weight:600}.device-check-waiting{color:#1e40af;background:#eff6ff;border:1px solid #bfdbfe;border-radius:8px;margin:0 0 16px;padding:14px 16px;font-size:14px;line-height:1.65}.device-check-alert,.device-check-start-issue{color:#b42318;background:#fef3f2;border:1px solid #fecdca;border-radius:6px;margin:12px 0 0;padding:11px 13px;font-size:12px;line-height:1.55}.device-check-alert p,.device-check-alert ul,.device-check-start-issue,.device-check-start-issue p{margin-top:0;margin-bottom:0}.device-check-start-issue p+p{margin-top:3px}.device-check-alert ul{padding-left:20px}.device-check-list{margin:8px 0 0;padding:0;list-style:none}.device-check-item{border-top:1px solid #eaecf0;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;min-height:58px;padding:8px 0;display:grid}.device-check-item__icon{color:#98a2b3;background:#f2f4f7;border-radius:9px;place-items:center;width:34px;height:34px;display:grid}.device-check-item__icon[data-tone=success]{color:#12b76a;background:#ecfdf3}.device-check-item__icon[data-tone=danger]{color:#d92d20;background:#fef3f2}.device-check-item__icon[data-tone=progress]{color:#1677ff;background:#eff8ff}.device-check-item__copy{gap:4px;min-width:0;display:grid}.device-check-item__copy>strong{color:#344054;font-size:13px}.device-check-item__copy>p{color:#98a2b3;margin:0;font-size:11px;line-height:1.45}.device-check-item__state{color:#667085;white-space:nowrap;background:#f2f4f7;border-radius:4px;align-items:center;gap:3px;padding:3px 7px;font-size:10px;font-weight:600;display:inline-flex}.device-check-item__state[data-tone=success]{color:#027a48;background:#ecfdf3}.device-check-item__state[data-tone=danger]{color:#b42318;background:#fef3f2}.device-check-item__state[data-tone=progress]{color:#175cd3;background:#eff8ff}.device-check-students{align-items:flex-end;min-height:30px;margin-top:3px;display:flex}.device-check-students img{object-fit:contain;object-position:center top;background:#f2f4f7;border:2px solid #fff;border-radius:50%;width:30px;height:30px;margin-left:-4px}.device-check-students img:first-child{margin-left:0}.device-check-aside{gap:14px;display:grid}.device-check-preview{padding:16px}.device-check-preview__surface{background:#101828;border:1px solid #e4e7ec;border-radius:7px;min-height:250px;margin-top:13px;position:relative;overflow:hidden}.device-check-preview__surface video{object-fit:contain;background:#101828;width:100%;height:100%;position:absolute;inset:0}.device-check-preview__empty{color:#98a2b3;text-align:center;background:radial-gradient(circle at 50% 42%,#355c964d,#0000 42%),#101828;place-content:center;justify-items:center;gap:8px;padding:24px;display:grid;position:absolute;inset:0}.device-check-preview__empty strong{color:#f2f4f7;font-size:13px}.device-check-preview__empty span{max-width:260px;font-size:11px;line-height:1.5}.device-check-preview__footer{color:#667085;flex-wrap:wrap;justify-content:space-between;gap:8px;padding:11px 2px 0;font-size:10px;display:flex}.device-check-preview__footer>span{color:#344054;font-weight:600}.device-check-preview__footer>span>span{color:#1677ff}.device-check-privacy{padding:16px}.device-check-privacy>header{color:#1677ff;justify-content:flex-start}.device-check-privacy ul{color:#667085;background:#f8faff;border-radius:6px;gap:8px;margin:13px 0 0;padding:12px 14px 12px 30px;font-size:11px;line-height:1.55;display:grid}.device-check-recording-directory{color:#1570ef;background:#f5fbff;border:1px solid #b2ddff;border-radius:9px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:10px;padding:13px;display:grid}.device-check-recording-directory h2,.device-check-recording-directory p,.device-check-recording-directory small{margin:0}.device-check-recording-directory h2{color:#344054;font-size:12px}.device-check-recording-directory p,.device-check-recording-directory small{color:#667085;margin-top:4px;font-size:10px;line-height:1.5;display:block}.device-check-recording-directory small{color:#b42318}.device-check-recording-directory button{color:#175cd3;cursor:pointer;background:#fff;border:1px solid #84caff;border-radius:6px;padding:7px 10px;font-size:10px;font-weight:700}.device-check-recording-directory button:disabled{cursor:wait;opacity:.6}.device-check-start-note{color:#667085;margin:0;font-size:12px}.device-check-actions{z-index:12;background:#fffffff7;border:1px solid #dfe4eb;border-radius:8px;grid-template-columns:minmax(150px,.7fr) minmax(150px,.7fr) minmax(260px,1.25fr);gap:8px;margin-top:2px;padding:10px;display:grid;position:sticky;bottom:0;box-shadow:0 -7px 20px #1d293914}.device-check-actions__primary{color:#fff;background:#1677ff;border:1px solid #1677ff;box-shadow:0 5px 12px #1677ff2e}.device-check-actions button:disabled{cursor:not-allowed;opacity:.55}@media (width<=1180px){.device-check-layout{grid-template-columns:1fr}.device-check-page{padding-bottom:0}.device-check-actions{position:static}}@media (width<=720px){.device-check-stepper{justify-content:flex-start;gap:6px;padding:8px;display:flex;overflow-x:auto}.device-check-stepper>a,.device-check-stepper>span{white-space:nowrap;flex:none}.device-check-stepper>i{flex:none;width:28px}.device-check-panel{padding-left:14px;padding-right:14px}.device-check-panel__header,.device-check-preview>header{flex-wrap:wrap}.device-check-item{grid-template-columns:auto minmax(0,1fr)}.device-check-item__state{grid-column:2;justify-self:start}.device-check-actions{grid-template-columns:1fr;position:static}.device-check-preview__surface{min-height:210px}}.material-upload-dialog__chooser{color:#1677ff;text-align:center;cursor:pointer;background:#f8faff;border:1px dashed #b6ccef;border-radius:12px;justify-items:center;gap:12px;margin:24px 0 12px;padding:28px 16px;display:grid;position:relative}.material-upload-dialog__chooser:hover{background:#edf5ff;border-color:#1677ff}.material-upload-dialog__chooser:focus-within{outline-offset:3px;outline:2px solid #1677ff}.material-upload-dialog__chooser:has(input:disabled){opacity:.6;cursor:wait}.material-upload-dialog__chooser input{opacity:0;width:100%;height:100%;cursor:inherit;position:absolute;inset:0}.material-upload-dialog__header{align-items:center;gap:12px;display:flex}.material-upload-dialog__icon{color:#1677ff;background:#edf5ff;border-radius:12px;flex:0 0 48px;place-items:center;height:48px;display:grid}.material-upload-dialog .material-upload-dialog__header h2{margin:0;font-size:20px;line-height:1.5}.material-upload-dialog .material-upload-dialog__header p{color:#667085;margin:4px 0 0;font-size:13px}.material-upload-dialog__chooser strong{color:#1e2736;font-size:15px}.material-upload-dialog__formats,.material-upload-dialog .material-upload-dialog__hint{color:#667085;font-size:13px;font-weight:400;line-height:1.6}.material-upload-dialog__select{color:#fff;background:#1677ff;border-radius:6px;padding:8px 20px;font-size:14px}.material-upload-dialog .practice-dialog__actions{border-top:1px solid #e5eaf1;padding-top:18px}.material-upload-dialog progress{width:100%}button,input,select,textarea,a,summary{outline-offset:3px}button:focus-visible,input:focus-visible,select:focus-visible,textarea:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #73a7ff}.login-page{background:radial-gradient(circle at 0 0,#2e63c424,#0000 40%),#eef2f6;place-items:center;min-height:100%;padding:clamp(24px,6vw,72px) 20px;display:grid}.login-card{background:#fff;border:1px solid #dce2ea;border-radius:20px;width:100%;max-width:460px;padding:48px;box-shadow:0 24px 70px #1923341f}.login-card__eyebrow{color:#2e63c4;letter-spacing:.03em;margin:0;font-size:13px;font-weight:700}.login-card h1{margin:10px 0 8px;font-size:36px}.login-card__description{color:#65728a;margin:0 0 28px;line-height:1.7}.login-card form,.login-field{gap:10px;display:grid}.login-card form{gap:20px}.login-field span{color:#35425a;font-size:14px;font-weight:700}.login-field input{color:#172033;background:#fff;border:1px solid #bfc9d8;border-radius:8px;width:100%;min-height:46px;padding:10px 12px}.captcha-row{grid-template-columns:minmax(0,1fr) 136px;align-items:end;gap:12px;display:grid}.captcha-refresh{color:#2456ad;cursor:pointer;background:#f6f8fb;border:1px solid #bfc9d8;border-radius:8px;gap:5px;min-height:46px;padding:4px 8px;display:grid}.captcha-refresh img{object-fit:contain;width:100%;height:34px}.captcha-refresh span{font-size:12px}.login-feedback{color:#35425a;background:#f6f8fb;border:1px solid #ccd5e2;border-radius:8px;margin:0;padding:11px 13px;line-height:1.5}.login-feedback--error{color:#812a2a;background:#fff3f3;border-color:#e2aaaa}.login-feedback--error p{margin:0 0 10px}.login-feedback button{color:#812a2a;cursor:pointer;background:#fff;border:1px solid;border-radius:6px;padding:7px 10px}.login-submit{color:#fff;cursor:pointer;background:#2e63c4;border:0;border-radius:9px;min-height:48px;padding:11px 18px;font-weight:700}.login-submit:disabled,.captcha-refresh:disabled{cursor:not-allowed;opacity:.58}.session-status,.session-issue{background:#fff;border:1px solid #dce2ea;border-radius:18px;width:min(100% - 40px,680px);margin:clamp(32px,10vw,120px) auto;padding:clamp(28px,5vw,48px);box-shadow:0 18px 50px #19233414}.session-status{color:#42506a;text-align:center}.session-issue__eyebrow{color:#2e63c4;margin:0;font-size:13px;font-weight:700}.session-issue h1{margin:10px 0 16px}.session-issue p{color:#42506a;line-height:1.7}.session-issue__request{overflow-wrap:anywhere;background:#f1f4f8;border-radius:8px;padding:10px 12px;font-family:ui-monospace,SFMono-Regular,Consolas,monospace}.session-issue__actions{flex-wrap:wrap;gap:10px;margin-top:24px;display:flex}.session-issue__actions button,.teacher-logout{color:#fff;cursor:pointer;background:#2e63c4;border:1px solid #2e63c4;border-radius:8px;padding:9px 14px}.session-issue__actions .session-issue__logout{color:#35425a;background:#fff;border-color:#aeb9c9}.teacher-shell{background:#eef2f6;grid-template-rows:72px minmax(0,1fr);grid-template-columns:220px minmax(0,1fr);min-height:100%;display:grid}.teacher-header{color:#fff;background:#192334;grid-column:1/-1;align-items:center;gap:20px;padding:0 28px;display:flex}.teacher-brand{color:inherit;margin-right:auto;font-size:19px;font-weight:700;text-decoration:none}.teacher-phase{color:#dce9ff;border:1px solid #ffffff3d;border-radius:999px;padding:5px 10px;font-size:13px}.teacher-identity{color:#f5f8ff;text-overflow:ellipsis;white-space:nowrap;max-width:240px;overflow:hidden}.teacher-identity-menu summary{cursor:pointer;text-overflow:ellipsis;white-space:nowrap;max-width:240px;overflow:hidden}.teacher-identity-menu__panel{z-index:10;color:#172033;background:#fff;border:1px solid #dce2ea;border-radius:12px;width:min(320px,100vw - 32px);padding:18px;position:absolute;top:calc(100% + 14px);right:0;box-shadow:0 16px 45px #1923342e}.teacher-identity-menu dl,.teacher-identity-menu ul{margin:0;padding:0}.teacher-identity-menu dl>div{grid-template-columns:88px minmax(0,1fr);gap:12px;padding:7px 0;display:grid}.teacher-identity-menu dt{color:#65728a}.teacher-identity-menu dd{overflow-wrap:anywhere;margin:0}.teacher-identity-menu li{list-style-position:inside}.teacher-identity-menu .teacher-logout{color:#fff;background:#2e63c4;width:100%;margin-top:12px}.permission-denied{background:#fff;border:1px solid #dce2ea;border-radius:18px;max-width:720px;padding:clamp(28px,5vw,52px)}.permission-denied__eyebrow{color:#2e63c4;font-size:13px;font-weight:700}.teacher-logout{color:#f5f8ff;background:0 0;border-color:#ffffff5c}.teacher-logout:hover{background:#ffffff1a}.teacher-navigation{background:#fff;border-right:1px solid #dce2ea;flex-direction:column;gap:6px;padding:24px 16px;display:flex}.teacher-navigation a{color:#42506a;border-radius:8px;padding:11px 14px;text-decoration:none}.teacher-navigation a:hover{color:#2456ad;background:#f1f5fb}.teacher-navigation a.active{color:#fff;background:#2e63c4}.feature-unavailable,.route-error{background:#fff;border:1px solid #dce2ea;border-radius:18px;max-width:720px;padding:clamp(28px,5vw,52px);box-shadow:0 18px 50px #19233414}.feature-unavailable h1,.route-error h1{color:#172033;margin:10px 0 16px;font-size:clamp(28px,4vw,42px)}.feature-unavailable__milestone,.route-error__eyebrow{color:#2e63c4;letter-spacing:.04em;margin:0;font-size:13px;font-weight:700}.feature-unavailable__description,.route-error p{color:#42506a;font-size:17px;line-height:1.7}.feature-unavailable__detail{color:#65728a;border-top:1px solid #e4e9f0;margin-bottom:0;padding-top:18px;font-size:14px}.route-error{margin:clamp(24px,6vw,80px) auto}.route-error a{color:#fff;background:#2e63c4;border-radius:8px;margin-top:12px;padding:10px 16px;text-decoration:none;display:inline-flex}@media (width<=1180px){.preparation-workflow{grid-template-columns:1fr}.preparation-summary{position:static}}@media (width<=720px){.login-card{padding:28px}.teacher-shell{grid-template-rows:auto auto minmax(0,1fr);grid-template-columns:1fr}.teacher-header{flex-wrap:wrap;padding:18px 20px}.teacher-phase{display:none}.teacher-navigation{border-bottom:1px solid #dce2ea;border-right:0;flex-direction:row;padding:10px 16px;overflow-x:auto}.teacher-navigation a{white-space:nowrap}.teacher-content{padding:20px 16px}.preparation-page{padding-bottom:0}.preparation-stepper{justify-content:flex-start;gap:6px;padding:8px;display:flex;overflow-x:auto}.preparation-stepper button{white-space:nowrap;flex:none}.preparation-stepper i{flex:none;width:28px}.preparation-config__section,.preparation-materials{padding-left:14px;padding-right:14px}.preparation-fields,.preparation-class-settings,.preparation-summary__facts{grid-template-columns:1fr}.preparation-class-settings>div,.preparation-class-settings>label,.preparation-class-settings>:nth-child(3n),.preparation-class-settings>:nth-last-child(-n+3){border-bottom:1px solid #eaecf0;border-right:0}.preparation-class-settings>:last-child{border-bottom:0}.material-card__header{align-items:flex-start}.material-card__summary{margin-left:0}.preparation-actions{grid-template-columns:1fr;position:static}.teacher-identity{margin-left:auto}.captcha-row,.lesson-parse__result dl>div,.lesson-parse__history li{grid-template-columns:1fr}.lesson-parse__history time{text-align:left}}.post-class-page,.class-summary-page,.report-page,.recording-management-page{gap:14px;min-width:0;display:grid}.post-class-page{width:100%;max-width:1460px;margin:0 auto}.post-class-course-card,.post-class-view-switcher,.class-summary-page,.report-page>section,.report-page__header,.report-overview-grid>section,.report-authority,.recording-management-page{background:#fff;border:1px solid #dfe4eb;border-radius:9px;box-shadow:0 5px 16px #1d29390d}.post-class-course-card{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;min-height:88px;padding:16px 18px;display:grid}.post-class-course-card__icon,.post-class-view-switcher__icon{color:#1677ff;background:#eaf3ff;border-radius:7px;flex:none;place-items:center;width:38px;height:38px;display:grid}.post-class-course-card__copy,.post-class-course-card__copy h1,.post-class-course-card__copy p{min-width:0;margin:0}.post-class-course-card__title-row,.post-class-course-card__actions,.report-page__header,.report-section-heading,.class-summary-page__header,.recording-management-page__header,.recording-assets__heading,.recording-assets__heading>div,.class-summary-section-heading{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.post-class-course-card__title-row{justify-content:flex-start}.post-class-course-card__copy h1{color:#1d2939;font-size:17px}.post-class-course-card__copy p{color:#7c8aa0;overflow-wrap:anywhere;margin-top:6px;font-size:12px}.post-class-course-card__history,.post-class-stage,.report-page__status,.recording-management-page__header>span{border-radius:4px;align-items:center;gap:5px;padding:4px 8px;font-size:11px;font-weight:600;display:inline-flex}.post-class-course-card__history{color:#1677ff;background:#eaf3ff}.post-class-stage,.report-page__status,.recording-management-page__header>span[data-ready=true]{color:#027a48;background:#ecfdf3}.post-class-course-card__actions{justify-content:flex-end}.post-class-download-error{color:#b42318;background:snow;border:1px solid #fecdca;border-radius:6px;margin:-4px 0 0;padding:8px 12px;font-size:12px}.post-class-primary-action,.post-class-secondary-action,.report-page__actions button,.recommendation-panel>button,.recording-gate button,.class-summary-page__back{color:#344054;cursor:pointer;background:#fff;border:1px solid #d0d5dd;border-radius:6px;justify-content:center;align-items:center;gap:7px;min-height:38px;padding:8px 13px;font-size:12px;font-weight:600;display:inline-flex}.post-class-primary-action,.report-page__actions button,.recording-gate button{color:#fff;background:#0b5bd3;border-color:#0b5bd3;box-shadow:0 4px 10px #0b5bd32e}.post-class-view-switcher{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;padding:10px;display:grid}.post-class-view-switcher button{color:#667085;text-align:left;cursor:pointer;background:#fff;border:1px solid #eaecf0;border-radius:7px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;min-width:0;min-height:64px;padding:10px 12px;display:grid}.post-class-view-switcher button[aria-current=page]{color:#1677ff;background:#f5f9ff;border-color:#91caff}.post-class-view-switcher button:disabled{cursor:not-allowed;opacity:.58}.post-class-view-switcher button>span:nth-child(2){gap:5px;min-width:0;display:grid}.post-class-view-switcher strong{color:#344054;font-size:13px}.post-class-view-switcher button[aria-current=page] strong{color:#1677ff}.post-class-view-switcher small,.post-class-view-switcher em{color:#98a2b3;font-size:10px;font-style:normal}.post-class-view-switcher em{color:#1677ff;white-space:nowrap;font-weight:600}.report-page,.class-summary-page,.recording-management-page{padding:16px}.report-state-card{color:#1677ff;background:#fff;border:1px solid #dfe4eb;border-radius:9px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:14px;min-height:180px;padding:24px;display:grid;box-shadow:0 5px 16px #1d29390d}.report-state-card--error{color:#d92d20;background:snow;border-color:#fecdca}.report-state-card--processing svg{animation:1.2s linear infinite report-state-spin}.report-state-card h1,.report-state-card p,.report-state-card dl{margin:0}.report-state-card h1{color:#1d2939;font-size:17px}.report-state-card p{color:#667085;margin-top:6px;font-size:12px}.report-state-card dl{color:#667085;grid-template-columns:max-content minmax(0,1fr);gap:4px 10px;margin-top:10px;font-size:10px;display:grid}.report-state-card dd{overflow-wrap:anywhere;margin:0}.report-state-card button{color:#fff;cursor:pointer;background:#0b5bd3;border:1px solid #0b5bd3;border-radius:6px;min-height:38px;padding:8px 13px;font-size:12px;font-weight:600}@keyframes report-state-spin{to{transform:rotate(360deg)}}@media (prefers-reduced-motion:reduce){.report-state-card--processing svg{animation:none}}.report-page__header,.class-summary-page__header,.recording-management-page__header{box-shadow:none;border:0;border-bottom:1px solid #eaecf0;border-radius:0;padding:4px 2px 13px}.report-page__header h1,.class-summary-page__header h1,.recording-management-page__header h1,.report-section-heading h2,.class-summary-section-heading h2,.recording-assets h2,.recording-gate h2{color:#1d2939;margin:0}.report-page__header h1,.class-summary-page__header h1,.recording-management-page__header h1{margin-top:4px;font-size:18px}.report-page__header p:last-child,.class-summary-page__header p:last-child,.recording-management-page__header p:last-child,.report-section-heading p,.recording-assets__heading p,.class-summary-section-heading p{color:#98a2b3;margin:5px 0 0;font-size:11px;line-height:1.5}.report-eyebrow{color:#1677ff;letter-spacing:.08em;margin:0;font-size:9px;font-weight:700}.report-overview-grid{grid-template-columns:minmax(250px,.72fr) minmax(0,1.45fr);gap:14px;display:grid}.report-score-card,.report-dimensions,.report-strengths,.report-guidance,.report-evidence,.report-ali-details,.recommendation-panel{min-width:0;padding:15px}.report-ali-dimension-details{background:#f5f8ff;border-radius:5px;margin:8px 0;padding:8px;display:block!important}.report-ali-dimension-details ul{color:#475467;flex-wrap:wrap;gap:5px 10px;margin:0 0 6px;padding:0;font-size:10px;list-style:none;display:flex}.report-ali-dimension-details p{color:#667085!important;min-height:0!important;margin:3px 0!important}.report-ali-details>p,.report-evidence__scope{color:#667085;margin:9px 0 0;font-size:11px;line-height:1.6}.report-ali-details details{color:#344054;margin-top:10px;font-size:11px}.report-ali-details summary{cursor:pointer;font-weight:600}.report-ali-details pre{color:#475467;max-height:320px;font:inherit;white-space:pre-wrap;background:#f8fafc;border-radius:5px;padding:10px;overflow:auto}.report-section-heading{align-items:flex-start}.report-section-heading h2,.class-summary-section-heading h2,.recording-assets h2,.recording-gate h2{margin-top:3px;font-size:14px}.report-section-heading>span,.class-summary-section-heading>span,.recording-assets__heading>span{color:#1677ff;background:#eaf3ff;border-radius:4px;align-items:center;gap:4px;padding:3px 7px;font-size:10px;font-weight:600;display:inline-flex}.report-score-card__body{gap:16px;margin-top:20px;display:grid}.report-score-card__number{color:#667085;align-items:baseline;gap:4px;display:flex}.report-score-card__number strong{color:#1d2939;font-size:clamp(48px,6vw,74px);line-height:.9}.report-score-card__summary{background:#f3faf6;border-radius:7px;padding:13px}.report-score-card__summary p{color:#667085;overflow-wrap:anywhere;margin:0;font-size:12px;line-height:1.65}.report-score-card__spoken-score{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;padding:0;position:absolute;overflow:hidden}.report-dimensions>ul,.report-narrative-section>ul,.report-evidence-timeline,.recommendation-list,.class-summary-metrics,.class-summary-transcript ol,.class-summary-recordings ul,.recording-assets ul{margin:0;padding:0;list-style:none}.report-dimensions>ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.report-dimensions>ul>li{background:#fcfcfd;border:1px solid #eaecf0;border-radius:7px;min-width:0;padding:11px}.report-dimensions>ul>li>div{flex-wrap:wrap;justify-content:space-between;align-items:baseline;gap:5px;display:flex}.report-dimensions strong{color:#344054;font-size:12px}.report-dimensions li>div>span,.report-dimensions li>p{color:#98a2b3;font-size:10px}.report-dimensions progress,.recording-upload-progress progress{accent-color:#1677ff;border:0;border-radius:999px;width:100%;height:6px;margin:9px 0 4px;overflow:hidden}.report-dimensions progress::-webkit-progress-bar{background:#eaecf0;border-radius:999px}.recording-upload-progress progress::-webkit-progress-bar{background:#eaecf0;border-radius:999px}.report-dimensions progress::-webkit-progress-value{background:#1677ff;border-radius:999px}.recording-upload-progress progress::-webkit-progress-value{background:#1677ff;border-radius:999px}.report-dimensions li>p{min-height:28px;margin:6px 0;line-height:1.45}.report-narrative-section [role=group]{flex-wrap:wrap;gap:5px;margin:0;padding:0;list-style:none;display:flex}.report-narrative-section a,.report-evidence a{color:#1677ff;font-size:10px;text-decoration:none}.report-narrative-section [role=group] span{color:#98a2b3;font-size:10px}.report-strengths{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid;box-shadow:none!important;background:0 0!important;border:0!important;padding:0!important}.report-narrative-card{background:#fff;border:1px solid #dfe4eb;border-radius:9px;min-width:0;padding:15px}.report-narrative-card--positive{border-color:#abefc6}.report-narrative-card--attention{border-color:#fedf89}.report-narrative-card__title{color:#039855;align-items:center;gap:7px;display:flex}.report-narrative-card--attention .report-narrative-card__title{color:#dc6803}.report-narrative-card__title h2,.report-narrative-section h3{color:#344054;margin:0;font-size:13px}.report-narrative-section h3{color:#98a2b3;margin-top:13px;font-size:10px}.report-narrative-section>ul>li{margin-top:8px}.report-narrative-section p{color:#475467;margin:0 0 6px;font-size:12px;line-height:1.6}.report-guidance__items{color:#1677ff;background:#f5faff;border:1px solid #b2ddff;border-radius:7px;grid-template-columns:auto minmax(0,1fr);gap:12px;margin-top:13px;padding:13px;display:grid}.report-guidance__items .report-narrative-section h3{color:#344054;margin-top:0}.report-evidence-timeline{gap:7px;margin-top:12px;display:grid}.report-evidence-timeline li{color:#667085;background:#f8faff;border-left:3px solid #b2ddff;border-radius:0 5px 5px 0;padding:9px 11px;font-size:11px}.recommendation-panel__loading-title{color:#1d2939;margin:0;font-size:14px;font-weight:700}.recommendation-panel>h2{color:#1d2939;margin:0;font-size:14px}.recommendation-panel>[role=alert],.recommendation-panel>[role=status]{color:#667085;margin:9px 0;font-size:11px;line-height:1.6}.recommendation-list{gap:8px;margin-top:12px;display:grid}.recommendation-list>li{background:#fcfcfd;border:1px solid #eaecf0;border-radius:7px;grid-template-columns:auto minmax(0,1fr);gap:11px;padding:12px;display:grid}.recommendation-list__icon{color:#1677ff;background:#eaf3ff;border-radius:7px;place-items:center;width:40px;height:40px;display:grid}.recommendation-list__copy,.recommendation-list__copy p,.recommendation-list__title h3{min-width:0;margin:0}.recommendation-list__title{flex-wrap:wrap;align-items:center;gap:8px;display:flex}.recommendation-list__title h3{color:#344054;font-size:13px}.recommendation-list__title span{color:#1677ff;background:#eaf3ff;border-radius:4px;padding:2px 6px;font-size:9px}.recommendation-list__copy>p{color:#98a2b3;margin-top:4px;font-size:10px;line-height:1.5}.recommendation-list__reason{color:#475467!important;font-size:11px!important}.recommendation-list__gate{align-items:center;gap:5px;display:inline-flex;color:#667085!important}.recommendation-list__save{flex-wrap:wrap;align-items:center;gap:8px;margin-top:9px;display:flex}.recommendation-list__save button{color:#175cd3;cursor:pointer;background:#eff8ff;border:1px solid #b2ccff;border-radius:6px;min-height:30px;padding:6px 11px;font-size:10px;font-weight:600}.recommendation-list__save button:disabled{color:#667085;cursor:default;background:#f2f4f7;border-color:#eaecf0}.recommendation-list__save [role=alert]{color:#b42318;margin:0;font-size:10px}.report-page__actions{justify-content:flex-end;display:flex}.report-authority{box-shadow:none;padding:11px 13px}.report-authority summary{color:#667085;cursor:pointer;align-items:center;gap:7px;font-size:11px;font-weight:600;display:flex}.report-authority dl{color:#667085;grid-template-columns:max-content minmax(0,1fr);gap:7px 14px;margin:12px 0 0;font-size:10px;display:grid}.report-authority dd{overflow-wrap:anywhere;margin:0}.class-summary-page{box-shadow:none}.class-summary-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;display:grid}.class-summary-metrics article{color:#1677ff;background:#f8faff;border:1px solid #eaecf0;border-radius:7px;gap:4px;min-width:0;padding:13px;display:grid}.class-summary-metrics article>span,.class-summary-metrics article>small{color:#98a2b3;font-size:10px}.class-summary-metrics article>strong{color:#344054;font-size:17px}.class-summary-warning,.recording-gate{color:#dc6803;background:#fffaeb;border:1px solid #fedf89;border-radius:7px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;padding:12px 14px;display:grid}.class-summary-warning h2,.class-summary-warning ul,.recording-gate h2,.recording-gate p{margin:0}.class-summary-warning h2{color:#93370d;font-size:12px}.class-summary-warning ul{color:#b54708;margin-top:4px;padding-left:16px;font-size:10px}.class-summary-layout{grid-template-columns:minmax(260px,.82fr) minmax(0,1.45fr);gap:10px;display:grid}.class-summary-settings,.class-summary-transcript,.class-summary-recordings,.recording-assets{background:#fff;border:1px solid #eaecf0;border-radius:7px;min-width:0;padding:14px}.class-summary-section-heading{color:#1677ff;justify-content:flex-start}.class-summary-settings dl{margin:12px 0 0}.class-summary-settings dl>div{border-bottom:1px solid #eaecf0;grid-template-columns:minmax(92px,.62fr) minmax(0,1fr);gap:10px;padding:8px 0;font-size:10px;display:grid}.class-summary-settings dt{color:#344054;font-weight:600}.class-summary-settings dd{color:#667085;overflow-wrap:anywhere;margin:0}.class-summary-subsection,.class-summary-students{border-top:1px solid #eaecf0;margin-top:14px;padding-top:12px}.class-summary-subsection h3,.class-summary-students summary{color:#475467;margin:0;font-size:11px;font-weight:600}.class-summary-subsection ul,.class-summary-students ul{color:#667085;gap:6px;margin:9px 0 0;padding:0;font-size:10px;list-style:none;display:grid}.class-summary-students summary{cursor:pointer}.class-summary-students li{background:#f8faff;border-radius:5px;gap:3px;padding:8px;display:grid}.class-summary-students li strong{color:#344054}.class-summary-transcript .class-summary-section-heading{align-items:flex-start}.class-summary-transcript ol{overscroll-behavior-y:contain;scrollbar-color:#98a2b3 #f2f4f7;scrollbar-gutter:stable;scrollbar-width:thin;border:1px solid #eaecf0;border-radius:6px;gap:0;max-height:min(56vh,520px);margin-top:12px;display:grid;overflow:hidden auto}.class-summary-transcript ol::-webkit-scrollbar{width:10px}.class-summary-transcript ol::-webkit-scrollbar-track{background:#f2f4f7}.class-summary-transcript ol::-webkit-scrollbar-thumb{background:#98a2b3;border:2px solid #f2f4f7;border-radius:999px}.class-summary-transcript ol::-webkit-scrollbar-thumb:hover{background:#667085}.class-summary-transcript ol:focus-visible{outline-offset:2px;outline:2px solid #1677ff}.class-summary-transcript li{background:#fff;border-bottom:1px solid #eaecf0;grid-template-columns:minmax(110px,.4fr) minmax(0,1.6fr);gap:8px 12px;padding:10px;display:grid}.class-summary-transcript li:nth-child(odd){background:#f8faff}.class-summary-transcript li:last-child{border-bottom:0}.class-summary-transcript li>div{align-content:start;gap:3px;display:grid}.class-summary-transcript time,.class-summary-transcript small{color:#98a2b3;overflow-wrap:anywhere;font-size:9px}.class-summary-transcript strong{color:#0b5bd3;font-size:11px}.class-summary-transcript li>p{color:#667085;margin:0;font-size:11px;line-height:1.55}.class-summary-transcript li>small{grid-column:1/-1}.class-summary-transcript__incomplete{color:#b54708;font-size:10px}.class-summary-recordings ul{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.recording-assets ul{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:12px;display:grid}.class-summary-recordings li,.recording-assets li{background:#fcfcfd;border:1px solid #eaecf0;border-radius:6px;gap:5px;min-width:0;padding:11px;display:grid}.class-summary-recordings li span,.class-summary-recordings li small,.recording-assets li small{color:#98a2b3;overflow-wrap:anywhere;font-size:9px}.class-summary-recordings li strong,.recording-assets li strong{color:#344054;font-size:11px}.class-summary-recordings__upload{color:#fff;cursor:pointer;background:#1677ff;border:1px solid #1677ff;border-radius:6px;align-items:center;gap:6px;margin-left:auto;padding:8px 12px;font-size:11px;font-weight:600;display:inline-flex}.class-summary-recordings__upload:hover{background:#0b5bd3;border-color:#0b5bd3}.class-summary-recordings__upload:focus-visible{outline-offset:2px;outline:3px solid #1677ff38}.class-summary-page__availability{color:#98a2b3;margin:0;font-size:10px}.recording-management-page{box-shadow:none}.recording-management-page__header>span{color:#b54708;background:#fffaeb}.recording-assets__heading>div{color:#1677ff;justify-content:flex-start}.recording-assets li{grid-template-columns:auto minmax(0,1fr) auto;align-items:center}.recording-assets__type{color:#1677ff;gap:4px;font-size:9px;display:grid}.recording-assets li>div{gap:4px;display:grid}.recording-assets li em{color:#b54708;background:#fffaeb;border-radius:4px;padding:3px 7px;font-size:9px;font-style:normal}.recording-assets li em[data-complete=true]{color:#027a48;background:#ecfdf3}.recording-gate--ready{color:#039855;background:#ecfdf3;border-color:#abefc6}.recording-gate h2{color:#344054}.recording-gate p{color:#667085;margin-top:4px;font-size:11px}.recording-gate>[role=alert]{color:#b42318}.recording-upload-progress{border-top:1px solid var(--ecnu-border);gap:9px;width:100%;min-width:0;padding-top:10px;display:grid}.recording-upload-progress__summary{grid-template-columns:28px minmax(0,1fr) auto;align-items:center;gap:8px;min-height:28px;display:grid}.recording-upload-progress__icon{width:28px;height:28px;color:var(--ecnu-accent);background:var(--ecnu-accent-soft);border-radius:6px;place-items:center;display:inline-grid}.recording-upload-progress__summary p{color:var(--ecnu-fg-2);margin:0;font-size:11px;line-height:1.55}.recording-upload-progress__summary strong{color:var(--ecnu-accent);white-space:nowrap;font-size:11px;font-weight:700}.recording-upload-progress--waiting .recording-upload-progress__icon{color:var(--ecnu-muted);background:#f1f3f6}.recording-upload-progress--waiting .recording-upload-progress__summary strong{color:var(--ecnu-fg-2)}.recording-upload-progress progress{width:100%;margin:0}.recording-upload-progress__idle-track{background:var(--ecnu-border);border-radius:999px;width:100%;height:6px}.recording-upload-progress__actions{justify-content:flex-end;display:flex}.recording-upload-control{min-height:36px;color:var(--ecnu-fg);border:1px solid var(--ecnu-border-strong);background:var(--ecnu-surface);box-shadow:none;border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:0 13px;font-size:12px;font-weight:600;display:inline-flex}.recording-upload-control:hover:not(:disabled){color:var(--ecnu-accent);background:var(--ecnu-accent-soft);border-color:#b2ccff}.recording-upload-control:focus-visible{outline-offset:2px;outline:3px solid #1677ff38}.recording-upload-control:disabled{color:var(--ecnu-muted);border-color:var(--ecnu-border);cursor:not-allowed;background:#f1f3f6}.recording-upload-feedback{color:#027a48;background:#ecfdf3;border:1px solid #abefc6;border-radius:5px;grid-column:1/-1;margin:4px 0 0;padding:8px 10px;font-size:10px;font-weight:600}.recording-upload-feedback[role=alert]{color:#b42318;background:#fef3f2;border-color:#fecdca}.recording-missing-recoveries{color:#475467;margin:10px 0 0;font-size:10px}.recording-assets li.recording-recovery-option{background:#f5f8ff;border-color:#b2ccff}.recording-recovery-option>div:not(.recording-recovery-option__action){gap:4px;min-width:0;display:grid}.recording-recovery-option strong{color:#344054;font-size:11px}.recording-recovery-option code{color:#175cd3;overflow-wrap:anywhere;font-size:9px}.recording-assets li>.recording-recovery-option__action{grid-column:1/-1;align-items:end;min-width:0;min-height:104px;padding-top:4px;display:grid}.recording-recovery-option__action>label,.recording-recovery-option__action>.recording-upload-progress{width:100%}.recording-recovery-notice{grid-column:1/-1}.recording-recovery-notice>button{justify-self:start}.recording-assets li>.recording-upload-progress{grid-column:1/-1}.recording-upload-actions{flex-wrap:wrap;grid-column:1/-1;gap:7px;padding-top:4px;display:flex!important}.recording-directory-guidance{color:#344054;flex-direction:column;align-items:flex-start}.recording-directory-guidance p,.recording-directory-guidance small{margin:0}.recording-directory-guidance strong{color:#175cd3}.recording-directory-guidance small{color:#667085;font-size:10px}.recording-upload-actions label,.recording-upload-actions button,.recording-recovery-option label,.recording-recovery-option button{cursor:pointer;border-radius:6px;justify-content:center;align-items:center;gap:5px;min-height:36px;padding:0 13px;font-size:12px;font-style:normal;font-weight:600;display:inline-flex}.recording-upload-actions__primary{color:#fff;background:#1677ff;border:1px solid #1677ff}.recording-upload-actions__secondary{color:#475467;background:#fff;border:1px solid #d0d5dd}@media (width<=980px){.post-class-course-card,.report-overview-grid,.class-summary-layout{grid-template-columns:1fr}.post-class-course-card__icon{display:none}.post-class-course-card__actions{justify-content:flex-start}.class-summary-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.post-class-page,.class-summary-page,.report-page,.recording-management-page{gap:10px}.post-class-course-card,.report-page,.class-summary-page,.recording-management-page{padding:12px}.post-class-view-switcher,.report-dimensions>ul,.report-strengths,.class-summary-metrics,.class-summary-recordings ul,.recording-assets ul{grid-template-columns:1fr}.post-class-view-switcher button{grid-template-columns:auto minmax(0,1fr)}.post-class-view-switcher em{grid-column:2}.report-section-heading>span{overflow-wrap:anywhere;max-width:100%}.class-summary-transcript li,.class-summary-warning,.recording-gate,.recording-assets li,.report-state-card{grid-template-columns:1fr}.recording-gate button,.recording-upload-progress,.recording-upload-progress button,.recording-upload-actions,.recording-upload-actions label,.recording-upload-actions button{justify-self:stretch;width:100%}.recording-directory{grid-template-columns:auto minmax(0,1fr)}.recording-directory>button{grid-column:1/-1;justify-content:center}.report-authority dl{grid-template-columns:1fr}}.post-class-page small,.post-class-page time,.post-class-page .report-section-heading p,.post-class-page .class-summary-section-heading p,.post-class-page .recording-assets__heading p,.post-class-page .report-dimensions li>p,.post-class-page .recommendation-list__copy>p,.post-class-page .class-summary-settings dl>div,.post-class-page .class-summary-subsection ul,.post-class-page .class-summary-students ul,.post-class-page .class-summary-recordings li span,.post-class-page .recording-assets__type,.post-class-page .report-dimensions [role=group] span,.post-class-page .report-narrative-section [role=group] span{color:#667085;font-size:11px}.post-class-page .report-eyebrow,.post-class-page a{color:#0b5bd3}.post-class-page .report-eyebrow{font-size:10px}.post-class-page a,.post-class-page .post-class-view-switcher em,.post-class-page .report-authority,.post-class-page .recommendation-list__title span{font-size:11px}.post-class-page .post-class-course-card__history,.post-class-page .post-class-view-switcher button[aria-current=page],.post-class-page .post-class-view-switcher button[aria-current=page] strong,.post-class-page .post-class-view-switcher em,.post-class-page .report-section-heading>span,.post-class-page .class-summary-section-heading>span,.post-class-page .recording-assets__heading>span,.post-class-page .recommendation-list__title span{color:#0b5bd3}@media (width<=720px){.preparation-resource-actions>div{grid-template-columns:1fr}.preparation-resource-actions>header small{line-height:1.45}}:root{--ecnu-bg:#f5f7fb;--ecnu-surface:#fff;--ecnu-surface-soft:#f8faff;--ecnu-border:#e5eaf1;--ecnu-border-strong:#d7dee8;--ecnu-fg:#1e2736;--ecnu-fg-2:#667085;--ecnu-muted:#98a2b3;--ecnu-accent:#1677ff;--ecnu-accent-soft:#edf5ff;--ecnu-success:#39a875;--ecnu-success-soft:#edf8f2;--ecnu-warning:#c68a2b;--ecnu-warning-soft:#fff7e8;--ecnu-danger:#d94b57;--ecnu-danger-soft:#fff0f1;--ecnu-shadow:0 8px 24px #1f2a440d}.sr-only{clip:rect(0, 0, 0, 0)!important;white-space:nowrap!important;border:0!important;width:1px!important;height:1px!important;margin:-1px!important;padding:0!important;position:absolute!important;overflow:hidden!important}.teacher-shell{min-height:100%;color:var(--ecnu-fg);background:var(--ecnu-bg);grid-template-columns:220px minmax(0,1fr);display:grid}.teacher-sidebar{z-index:20;border-right:1px solid var(--ecnu-border);background:var(--ecnu-surface);flex-direction:column;height:100vh;padding:18px 14px 16px;display:flex;position:sticky;top:0}.teacher-brand{min-height:54px;color:var(--ecnu-fg);border-bottom:1px solid var(--ecnu-border);align-items:center;gap:10px;padding:0 4px 15px;text-decoration:none;display:flex}.teacher-brand img{object-fit:contain;width:44px;height:44px}.teacher-brand span{gap:3px;display:grid}.teacher-brand strong{font-size:17px;line-height:1.2}.teacher-brand small{color:var(--ecnu-muted);font-size:12px}.teacher-navigation{background:0 0;border:0;gap:7px;margin-top:16px;padding:0;display:grid}.teacher-navigation a,.teacher-navigation a.active,.teacher-navigation a.teacher-navigation__launch{color:#475467;background:0 0;border:0;border-left:3px solid #0000;border-radius:8px;align-items:center;gap:11px;min-height:48px;padding:0 14px;font-size:14px;font-weight:600;text-decoration:none;display:flex}.teacher-navigation a:hover,.teacher-navigation a.teacher-navigation__launch:hover{color:var(--ecnu-accent);background:#f4f8ff}.teacher-navigation a.active:not(.teacher-navigation__launch),.teacher-navigation a.teacher-navigation__launch.active{color:var(--ecnu-accent);border-left-color:var(--ecnu-accent);background:#eaf3ff}.teacher-sidebar__note{color:var(--ecnu-fg-2);border:1px solid var(--ecnu-border);background:#fafbfc;border-radius:8px;gap:7px;margin-top:auto;padding:14px 13px;font-size:12px;line-height:1.65;display:grid}.teacher-sidebar__note strong{color:var(--ecnu-fg);font-size:13px}.teacher-workspace{min-width:0}.teacher-topbar{z-index:15;border-bottom:1px solid var(--ecnu-border);background:var(--ecnu-surface);justify-content:space-between;align-items:center;min-height:68px;padding:0 22px;display:flex;position:sticky;top:0}.teacher-topbar__title{letter-spacing:-.02em;align-items:center;gap:9px;margin:0;font-size:21px;font-weight:800;display:flex}.teacher-topbar__title a{width:30px;height:30px;color:var(--ecnu-fg);border-radius:6px;place-items:center;text-decoration:none;display:grid}.teacher-topbar__title a:hover,.teacher-topbar__title a:focus-visible{color:var(--ecnu-accent);background:var(--ecnu-accent-soft)}.teacher-topbar__actions{align-items:center;gap:12px;display:flex}.teacher-topbar-page-actions:empty{display:none}.teacher-topbar-page-actions .ecnu-button{min-height:38px}.teacher-utility{width:34px;height:34px;color:var(--ecnu-muted);border:1px solid var(--ecnu-border);background:var(--ecnu-surface);pointer-events:none;border-radius:7px;place-items:center;padding:0;display:grid}.teacher-content{min-width:0;padding:18px 22px 44px}.teacher-identity-menu{color:var(--ecnu-fg);position:relative}.teacher-identity-menu summary{cursor:pointer;border-radius:7px;align-items:center;gap:7px;max-width:220px;padding:4px 5px;list-style:none;display:flex}.teacher-identity-menu summary::-webkit-details-marker{display:none}.teacher-identity-menu summary:hover{background:var(--ecnu-surface-soft)}.teacher-identity-menu summary img{object-fit:cover;border-radius:50%;width:34px;height:34px}.teacher-identity-menu summary span{text-overflow:ellipsis;white-space:nowrap;max-width:120px;font-size:13px;font-weight:600;overflow:hidden}.teacher-identity-menu__panel{z-index:30;width:300px;color:var(--ecnu-fg);border:1px solid var(--ecnu-border);background:var(--ecnu-surface);border-radius:10px;padding:16px;position:absolute;top:calc(100% + 12px);right:0;box-shadow:0 18px 50px #1f2a4424}.teacher-identity-menu__panel header{border-bottom:1px solid var(--ecnu-border);align-items:center;gap:10px;padding-bottom:13px;display:flex}.teacher-identity-menu__panel header img{object-fit:cover;border-radius:50%;width:44px;height:44px}.teacher-identity-menu__panel header div{gap:3px;display:grid}.teacher-identity-menu__panel header span{color:var(--ecnu-fg-2);font-size:12px}.teacher-identity-menu__panel dl{margin:10px 0}.teacher-identity-menu__panel dl>div{grid-template-columns:72px minmax(0,1fr);gap:8px;padding:5px 0;font-size:12px}.teacher-identity-menu__panel dt{color:var(--ecnu-muted)}.teacher-identity-menu__panel dd{color:var(--ecnu-fg-2)}.teacher-identity-menu__panel footer{border-top:1px solid var(--ecnu-border);grid-template-columns:1fr 1fr;gap:8px;padding-top:12px;display:grid}.teacher-identity-menu__panel footer a,.teacher-identity-menu__panel footer button,.teacher-identity-menu__panel .teacher-logout{min-height:34px;color:var(--ecnu-fg-2);border:1px solid var(--ecnu-border);background:var(--ecnu-surface);border-radius:6px;justify-content:center;align-items:center;gap:6px;margin:0;padding:0 8px;font-size:12px;font-weight:600;text-decoration:none;display:flex}.teacher-identity-menu__panel .teacher-logout{color:var(--ecnu-danger);border-color:#f2c7cb}.ecnu-card{border:1px solid var(--ecnu-border);background:var(--ecnu-surface);box-shadow:var(--ecnu-shadow);border-radius:10px}.ecnu-button,.practice-table-primary,.practice-table-delete{min-height:36px;color:var(--ecnu-fg);border:1px solid var(--ecnu-border-strong);background:var(--ecnu-surface);border-radius:6px;justify-content:center;align-items:center;gap:6px;padding:0 13px;font-size:13px;font-weight:600;display:inline-flex}.ecnu-button--primary,.practice-table-primary{color:#fff;border-color:var(--ecnu-accent);background:var(--ecnu-accent);box-shadow:0 5px 12px #1677ff2e}.ecnu-button--primary:hover,.practice-table-primary:hover{background:#0f6ee8}.ecnu-section-heading{justify-content:space-between;align-items:center;gap:12px;display:flex}.ecnu-section-heading h2{margin:0;font-size:16px}.ecnu-text-action{min-height:auto;color:var(--ecnu-accent);background:0 0;border:0;align-items:center;gap:4px;padding:3px;font-size:12px;font-weight:700;display:inline-flex}.practice-status{white-space:nowrap;border-radius:5px;justify-content:center;align-items:center;min-height:22px;padding:2px 7px;font-size:11px;font-weight:700;display:inline-flex}.practice-status--success{color:var(--ecnu-success);background:var(--ecnu-success-soft)}.practice-status--warning{color:var(--ecnu-warning);background:var(--ecnu-warning-soft)}.practice-status--error{color:var(--ecnu-danger);background:var(--ecnu-danger-soft)}.practice-status--info{color:var(--ecnu-accent);background:var(--ecnu-accent-soft)}.practice-status--neutral{color:var(--ecnu-fg-2);background:#f1f3f6}.practice-home-page{gap:14px;display:grid}.home-greeting{justify-content:space-between;align-items:flex-end;margin-bottom:2px;display:flex}.home-greeting h2{align-items:center;gap:5px;margin:0;font-size:19px;display:flex}.home-greeting p{color:var(--ecnu-fg-2);margin:5px 0 0;font-size:13px}.ecnu-section-label{margin:0 0 10px;font-size:13px;font-weight:700}.practice-launch-card{width:100%;min-height:120px;color:var(--ecnu-fg);text-align:left;background:#f0f6ff;border:1px solid #dbe8f8;border-radius:10px;align-items:center;gap:17px;padding:18px 22px 18px 90px;transition:transform .16s,box-shadow .16s;display:flex}.practice-launch-card:hover{transform:translateY(-2px);box-shadow:0 10px 28px #1f2a4414}.practice-launch-card>span{gap:6px;display:grid}.practice-launch-card strong{font-size:17px}.practice-launch-card small{color:var(--ecnu-fg-2);line-height:1.55}.practice-launch-card>svg{box-sizing:border-box;width:30px;height:30px;color:var(--ecnu-accent);background:#fff;border-radius:50%;margin-left:auto;padding:7px}.teacher-sidebar__note--records{align-content:start;min-height:88px}.teacher-sidebar__note--resources{align-content:start;min-height:108px}.resource-page{gap:14px;width:100%;min-width:0;max-width:1460px;margin:0 auto;display:grid}.resource-page__hero{flex-wrap:wrap;justify-content:space-between;align-items:flex-end;gap:18px;min-height:96px;padding:6px 0 2px;display:flex}.resource-page__hero p,.resource-page__hero h1,.resource-page__hero span{margin:0}.resource-page__hero .resource-page__sync-note{color:#027a48;letter-spacing:0;background:#ecfdf3;border:1px solid #abefc6;border-radius:6px;align-items:center;gap:7px;margin:0;padding:9px 12px;font-size:12px;font-weight:600;display:inline-flex}.resource-page__hero-actions{flex-wrap:wrap;justify-content:flex-end;align-items:center;gap:10px;display:flex}.resource-page__hero p,.resource-dialog header p{color:#0b5bd3;letter-spacing:.08em;font-size:10px;font-weight:800}.resource-page__hero h1{color:var(--ecnu-fg);margin-top:9px;font-size:23px;line-height:1.2}.resource-page__hero span{color:#7c8aa0;margin-top:8px;font-size:13px;display:block}.resource-primary-action,.resource-dialog button,.resource-state button,.resource-card button,.resource-pagination button,.resource-picker button{color:#344054;cursor:pointer;background:#fff;border:1px solid #d0d5dd;border-radius:6px;justify-content:center;align-items:center;gap:6px;min-height:38px;padding:8px 13px;font-size:12px;font-weight:600;display:inline-flex}.resource-primary-action,.resource-dialog .resource-primary-action{color:#fff;background:#0b5bd3;border-color:#0b5bd3;box-shadow:0 4px 10px #0b5bd32e}.resource-primary-action:disabled,.resource-dialog button:disabled{cursor:not-allowed;opacity:.58}.resource-stats{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.resource-stats article{background:#fff;border:1px solid #dfe4eb;border-radius:9px;align-content:center;min-width:0;min-height:112px;padding:15px 16px;display:grid;box-shadow:0 5px 16px #1d29390a}.resource-stats span,.resource-stats small{color:#7c8aa0;font-size:11px}.resource-stats strong{color:#1d2939;margin:7px 0 5px;font-size:24px;line-height:1}.resource-catalog{background:#fff;border:1px solid #dfe4eb;border-radius:9px;min-width:0;min-height:520px;padding:15px;box-shadow:0 5px 16px #1d29390a}.resource-filters{grid-template-columns:minmax(230px,300px) minmax(150px,180px) minmax(90px,1fr);align-items:end;gap:12px;display:grid}.resource-filters label,.resource-form-grid label{color:#667085;gap:6px;min-width:0;font-size:11px;display:grid}.resource-filters input,.resource-filters select,.resource-form-grid input,.resource-form-grid textarea{color:#344054;background:#fff;border:1px solid #d0d5dd;border-radius:5px;outline:0;width:100%;min-height:38px;padding:8px 10px;font-size:12px}.resource-filters input:focus,.resource-filters select:focus,.resource-form-grid input:focus,.resource-form-grid textarea:focus{border-color:#1677ff;box-shadow:0 0 0 3px #1677ff1f}.resource-search-control{display:block;position:relative}.resource-search-control input{padding-right:38px}.resource-search-control button{color:#667085;background:0 0;border:0;width:34px;min-height:34px;padding:0;position:absolute;top:2px;right:2px}.resource-search-control button:hover,.resource-search-control button:focus-visible{color:#0b5bd3;background:#edf5ff}.resource-result-count{color:#0b5bd3;background:#eaf3ff;border-radius:4px;place-self:end;margin-bottom:7px;padding:3px 8px;font-size:11px;font-weight:600}.resource-inline-alert{color:#b42318;background:#fff6f5;border:1px solid #fecdca;border-radius:6px;margin:12px 0 0;padding:10px 12px;font-size:12px}.resource-inline-alert--success{color:#027a48;background:#ecfdf3;border-color:#abefc6}.resource-list{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;margin:15px 0 0;padding:0;list-style:none;display:grid}.resource-card{background:#fff;border:1px solid #dfe4eb;border-radius:8px;min-width:0;transition:border-color .18s,box-shadow .18s,transform .18s;position:relative;overflow:hidden}.resource-card:hover{border-color:#b2d3ff;transform:translateY(-1px);box-shadow:0 8px 22px #1f2a4414}.resource-card__type{z-index:1;color:#475467;background:#ffffffe0;border:1px solid #eaecf0;border-radius:5px;padding:3px 7px;font-size:10px;font-weight:600;position:absolute;top:11px;left:11px}.resource-card__art{background:#f1f7ff;place-items:center;min-height:130px;display:grid}.resource-card__art[data-resource-type=COURSEWARE]{background:#f2faf6}.resource-card__art[data-resource-type=DOCUMENT]{background:#fffaf6}.resource-card__art[data-resource-type=VIDEO]{background:#fff7f7}.resource-card__art img{object-fit:contain;width:88px;height:82px}.resource-card__body{align-content:start;min-height:164px;padding:14px;display:grid}.resource-card__body h2,.resource-card__body p{overflow-wrap:anywhere;min-width:0;margin:0}.resource-card__body h2{color:#1d2939;min-height:38px;font-size:13px;line-height:1.45}.resource-card__body p{color:#7c8aa0;flex-wrap:wrap;gap:7px;margin-top:7px;font-size:11px;line-height:1.45;display:flex}.resource-card__body .resource-card__gate{color:#b54708}.resource-card__body footer{border-top:1px solid #eaecf0;justify-content:space-between;align-items:center;gap:8px;margin-top:auto;padding-top:10px;display:flex}.resource-card__body footer>span{color:#7c8aa0;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:11px;overflow:hidden}.resource-card__body footer button{color:#0b5bd3;background:0 0;border:0;flex:none;min-height:28px;padding:3px 0 3px 6px}.resource-state{color:#667085;text-align:center;align-content:center;place-items:center;gap:10px;min-height:340px;font-size:12px;display:grid}.resource-state h2,.resource-state p{margin:0}.resource-state h2{color:#344054;font-size:14px}.resource-state--error{color:#b42318;text-align:left;background:snow;border:1px solid #fecdca;border-radius:7px;grid-template-columns:auto minmax(0,1fr) auto;min-height:150px;margin-top:14px;padding:18px}.resource-state--error h2{color:#912018}.resource-state--error p{margin-top:4px}.resource-pagination{color:#667085;justify-content:center;align-items:center;gap:12px;margin-top:16px;font-size:12px;display:flex}.resource-pagination button:disabled{cursor:not-allowed;opacity:.5}.resource-picker{min-height:0;display:grid}.resource-picker h2,.resource-picker p,.resource-picker ul{margin:0}.resource-picker-dialog{border:1px solid #dfe4eb;border-radius:14px;width:min(780px,100%);max-width:780px;padding:0;overflow:hidden}.resource-picker__header{background:#fbfcfe;border-bottom:1px solid #eaecf0;grid-template-columns:auto minmax(0,1fr) auto;align-items:start;gap:13px;padding:21px 22px 18px;display:grid}.resource-picker__header-icon,.resource-picker__file-icon{color:#0b5bd3;background:#eaf3ff;border-radius:8px;flex:none;place-items:center;display:grid}.resource-picker__header-icon{width:42px;height:42px}.resource-picker__header .practice-eyebrow{color:#0b5bd3;letter-spacing:.08em;margin-bottom:4px;font-size:10px}.resource-picker__header h2{color:#1d2939;font-size:19px;line-height:1.35}.resource-picker__header div>p:last-child{color:#7c8aa0;margin-top:5px;font-size:11px;line-height:1.5}.resource-picker .resource-picker__close{color:#667085;background:0 0;border:0;border-radius:50%;width:34px;min-height:34px;padding:0}.resource-picker .resource-picker__close:hover,.resource-picker .resource-picker__close:focus-visible{color:#0b5bd3;background:#eaf3ff}.resource-picker__search{gap:6px;padding:16px 22px 14px;display:grid}.resource-picker__search label{color:#475467;font-size:11px;font-weight:600}.resource-picker__search-control{grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid;position:relative}.resource-picker__search-control>svg{color:#98a2b3;pointer-events:none;position:absolute;left:12px}.resource-picker__search input{color:#344054;border:1px solid #d0d5dd;border-radius:7px 0 0 7px;outline:0;min-width:0;min-height:42px;padding:9px 12px 9px 38px}.resource-picker__search input:focus{z-index:1;border-color:#1677ff;position:relative;box-shadow:0 0 0 3px #1677ff1f}.resource-picker .resource-picker__search-control button{color:#fff;background:#0b5bd3;border-color:#0b5bd3;border-radius:0 7px 7px 0;min-height:42px}.resource-picker__alert{color:#b42318;background:#fff6f5;border:1px solid #fecdca;border-radius:7px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:9px;margin:0 22px 12px;padding:9px 11px;font-size:11px;display:grid}.resource-picker__alert button{min-height:30px;padding:4px 9px}.resource-picker__results-heading{justify-content:space-between;align-items:end;gap:12px;padding:0 22px 10px;display:flex}.resource-picker__results-heading div{gap:3px;display:grid}.resource-picker__results-heading strong{color:#344054;font-size:12px}.resource-picker__results-heading span{color:#7c8aa0;font-size:10px}.resource-picker__results-heading>span{color:#0b5bd3;background:#eaf3ff;border-radius:4px;padding:3px 7px;font-weight:600}.resource-picker__results{overscroll-behavior:contain;min-height:180px;max-height:min(390px,100vh - 360px);padding:0 22px;overflow-y:auto}.resource-picker__list{gap:8px;padding:0 0 4px;list-style:none;display:grid}.resource-picker__list li{background:#fff;border:1px solid #e4e7ec;border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;gap:11px;min-width:0;padding:11px 12px;transition:border-color .18s,background .18s,box-shadow .18s;display:grid}.resource-picker__list li:hover,.resource-picker__list li:focus-within,.resource-picker__list li.is-selecting{background:#f8fbff;border-color:#84adff;box-shadow:0 4px 12px #1f2a440d}.resource-picker__file-icon{width:38px;height:38px}.resource-picker__file-copy{gap:3px;min-width:0;display:grid}.resource-picker__file-copy strong{color:#1d2939;overflow-wrap:anywhere;font-size:12px;line-height:1.45}.resource-picker__file-copy>span,.resource-picker__file-copy small{color:#667085;text-overflow:ellipsis;white-space:nowrap;font-size:10px;overflow:hidden}.resource-picker__file-copy small{color:#98a2b3}.resource-picker__type{color:#475467;background:#f2f4f7;border-radius:4px;padding:3px 7px;font-size:10px;font-weight:600}.resource-picker .resource-picker__select{color:#0b5bd3;background:#f5f9ff;border-color:#b8d5ff;min-height:34px;padding:6px 10px}.resource-picker .resource-picker__select:hover,.resource-picker .resource-picker__select:focus-visible{color:#fff;background:#0b5bd3;border-color:#0b5bd3}.resource-picker__state{color:#7c8aa0;text-align:center;align-content:center;justify-items:center;gap:6px;min-height:180px;display:grid}.resource-picker__state svg{color:#84adff}.resource-picker__state strong{color:#344054;font-size:13px}.resource-picker__state span{font-size:11px}.resource-picker__spinner{animation:.85s linear infinite resource-picker-spin}@keyframes resource-picker-spin{to{transform:rotate(360deg)}}.resource-picker__footer{color:#7c8aa0;background:#fbfcfe;border-top:1px solid #eaecf0;justify-content:space-between;align-items:center;gap:12px;margin-top:14px;padding:13px 22px;font-size:10px;display:flex}.resource-picker__footer .resource-pagination{margin:0}.resource-picker__footer>button{margin-left:auto}@media (width<=680px){.resource-picker__header{padding:17px}.resource-picker__search{padding:14px 17px}.resource-picker__results-heading,.resource-picker__results{padding-inline:17px}.resource-picker__list li{grid-template-columns:auto minmax(0,1fr)}.resource-picker__type{grid-column:2;justify-self:start}.resource-picker .resource-picker__select{grid-column:1/-1;width:100%}.resource-picker__footer{flex-direction:column;align-items:stretch;padding-inline:17px}.resource-picker__footer .resource-pagination{justify-content:space-between}.resource-picker__footer>button{width:100%;margin-left:0}}.resource-dialog-backdrop{z-index:100;-webkit-backdrop-filter:blur(1px);backdrop-filter:blur(1px);background:#1f293766;place-items:center;padding:28px;display:grid;position:fixed;inset:0;overflow-y:auto}.resource-dialog{background:#fff;border:1px solid #eaecf0;border-radius:12px;width:min(620px,100%);max-height:calc(100vh - 56px);padding:22px 24px;overflow-y:auto;box-shadow:0 24px 70px #1d29393d}.resource-dialog>header,.resource-dialog>footer,.resource-dialog>footer>div{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:10px;display:flex}.resource-dialog header h2,.resource-dialog header p{margin:0}.resource-dialog header h2{color:#1d2939;margin-top:7px;font-size:19px}.resource-dialog header>button{color:#667085;border-radius:50%;width:34px;min-height:34px;padding:0}.resource-dialog__hint,.resource-dialog [role=alert]{color:#667085;margin:14px 0 0;font-size:11px;line-height:1.55}.resource-dialog [role=alert]{color:#b42318;background:#fff6f5;border:1px solid #fecdca;border-radius:6px;padding:9px 11px}.resource-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;margin-top:16px;display:grid}.resource-form-grid textarea{resize:vertical;min-height:86px}.resource-form-grid__wide{grid-column:1/-1}.resource-upload-chooser,.resource-upload-title,.resource-target-dialog__type,.resource-target-dialog__practice{color:#475467;gap:7px;margin-top:16px;font-size:12px;font-weight:600;display:grid}.resource-upload-chooser{background:#f5f8ff;border:1px dashed #84adff;border-radius:8px;padding:16px}.resource-upload-chooser input,.resource-upload-title input,.resource-target-dialog select{color:#344054;background:#fff;border:1px solid #d0d5dd;border-radius:6px;width:100%;min-height:40px;padding:8px 10px}.resource-target-dialog{width:min(680px,100%)}.resource-dialog>footer{border-top:1px solid #eaecf0;margin-top:18px;padding-top:15px}.resource-danger-action{color:#d92d20!important;background:snow!important;border-color:#fecdca!important}.resource-detail-dialog__preview{background:#f8faff;border:1px solid #dfe4eb;border-radius:7px;grid-template-columns:78px minmax(0,1fr);align-items:center;gap:14px;margin-top:18px;padding:11px 14px;display:grid}.resource-detail-dialog__preview .resource-card__art{border-radius:6px;min-height:66px}.resource-detail-dialog__preview .resource-card__art img{width:58px;height:54px}.resource-detail-dialog__preview>div:last-child{gap:5px;min-width:0;display:grid}.resource-detail-dialog__preview strong{color:#1d2939;overflow-wrap:anywhere;font-size:13px}.resource-detail-dialog__preview span{color:#7c8aa0;font-size:11px}.resource-detail-dialog dl{margin:14px 0 0}.resource-detail-dialog dl>div{border-bottom:1px solid #eaecf0;grid-template-columns:1fr 1.45fr;gap:12px;padding:10px 0;font-size:12px;display:grid}.resource-detail-dialog dt{color:#344054;font-weight:600}.resource-detail-dialog dd{color:#667085;overflow-wrap:anywhere;margin:0}.resource-detail-dialog__description,.resource-detail-dialog__unavailable{color:#667085;margin:13px 0 0;font-size:12px;line-height:1.6}.resource-detail-dialog__unavailable{color:#b54708;background:#fffaeb;border-radius:6px;padding:9px 11px}.resource-preview-link{gap:5px;margin:13px 0 0;display:grid}.resource-preview-link a{color:#0b5bd3;align-items:center;gap:5px;font-size:12px;font-weight:600;text-decoration:none;display:inline-flex}.resource-preview-link span{color:#667085;font-size:10px}.resource-delete-confirm{background:snow;border:1px solid #fecdca;border-radius:6px;flex-wrap:wrap;align-items:center;gap:8px;margin-top:13px;padding:11px;display:flex}.resource-delete-confirm p{color:#912018;width:100%;margin:0;font-size:11px}.resource-delete-confirm button:last-child{color:#fff;background:#b42318;border-color:#b42318}.home-dashboard{grid-template-columns:minmax(0,1.35fr) minmax(390px,.95fr);gap:14px;display:grid}.recent-practice-card,.current-practice-card{min-width:0;padding:18px}.home-practice-list{margin:12px 0 0;padding:0;list-style:none}.home-practice-sort-hint{color:var(--ecnu-fg-2);margin:8px 0 0;font-size:12px}.home-practice-list li{border-top:1px solid var(--ecnu-border)}.home-practice-list li:first-child{border-top:0}.home-practice-row{width:100%;min-height:72px;color:var(--ecnu-fg);text-align:left;background:0 0;border:0;align-items:center;gap:11px;padding:12px 8px;display:flex}.home-practice-row:hover,.home-practice-row[data-current]{background:var(--ecnu-surface-soft)}.home-practice-row__copy{flex:1;gap:4px;min-width:0;display:grid}.home-practice-row__heading{align-items:center;gap:8px;min-width:0;display:flex}.home-practice-row__copy strong{text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:13px;overflow:hidden}.home-practice-row__copy small{color:var(--ecnu-fg-2);gap:2px;font-size:12px;display:grid}.home-practice-row__current{color:var(--ecnu-accent);flex-shrink:0;font-size:11px;font-weight:600}.home-practice-row>.practice-status,.home-practice-row__action{flex-shrink:0}@media (width<=760px){.home-practice-row{flex-wrap:wrap}.home-practice-row__copy{flex-basis:100%}}.home-practice-row__action{color:var(--ecnu-fg);border:1px solid var(--ecnu-border);background:#fff;border-radius:5px;padding:6px 9px;font-size:11px;font-weight:600}.current-practice-card__title{border:1px solid var(--ecnu-border);background:var(--ecnu-surface-soft);border-radius:8px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;margin-top:14px;padding:12px;display:grid}.course-emblem{color:#fff;background:var(--ecnu-accent);border-radius:8px;place-items:center;width:52px;height:52px;font-size:12px;font-weight:800;display:grid}.current-practice-card__title>div{gap:4px;display:grid}.current-practice-card__title>div>span{color:var(--ecnu-fg-2);font-size:11px}.practice-stepper{grid-template-columns:repeat(4,1fr);margin:20px 4px 16px;display:grid}.practice-stepper__item{color:var(--ecnu-muted);justify-items:center;gap:7px;font-size:10px;display:grid;position:relative}.practice-stepper__item:before{z-index:0;background:var(--ecnu-border);content:"";width:100%;height:2px;position:absolute;top:11px;left:-50%}.practice-stepper__item:first-child:before{display:none}.practice-stepper__item i{z-index:1;width:23px;height:23px;color:var(--ecnu-muted);border:1px solid var(--ecnu-border-strong);background:#fff;border-radius:50%;place-items:center;margin:0;font-size:10px;font-style:normal;display:grid;position:relative}.practice-stepper__item--done,.practice-stepper__item--active{color:var(--ecnu-accent)}.practice-stepper__item--done:before,.practice-stepper__item--active:before{background:var(--ecnu-accent)}.practice-stepper__item--done i{color:var(--ecnu-accent);border-color:#0000}.practice-stepper__item--active i{color:#fff;border-color:var(--ecnu-accent);background:var(--ecnu-accent)}.practice-mini-stats{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.practice-mini-stats>div{border:1px solid var(--ecnu-border);border-radius:7px;justify-items:center;gap:4px;padding:12px 6px;display:grid}.practice-mini-stats strong{font-size:18px}.practice-mini-stats span{color:var(--ecnu-muted);font-size:10px}.practice-notice{color:#315f9c;background:#f2f7ff;border:1px solid #d6e6fa;border-radius:7px;align-items:center;gap:8px;margin-top:12px;padding:10px 12px;font-size:11px;display:flex}.home-ready-strip{min-height:66px;color:var(--ecnu-success);background:#f5f9ff;border:1px solid #d9e8f8;border-radius:10px;align-items:center;gap:10px;padding:13px 18px;display:flex}.home-ready-strip div{align-items:baseline;gap:10px;display:flex}.home-ready-strip span{color:var(--ecnu-fg-2);font-size:11px}.practice-records-page{gap:14px;display:grid}.records-intro{justify-content:space-between;align-items:center;gap:16px;display:flex}.records-intro h2{margin:0;font-size:22px}.records-intro p{color:var(--ecnu-fg-2);margin:4px 0 0;font-size:13px}.records-intro__actions{align-items:center;gap:10px;display:flex}.records-card{padding:0;overflow:hidden}.record-tabs{padding:14px 16px 0;display:flex}.record-tabs button{min-height:38px;color:var(--ecnu-fg-2);border:1px solid var(--ecnu-border);background:#fff;border-left:0;padding:0 18px;font-size:12px}.record-tabs button:first-child{border-left:1px solid var(--ecnu-border);border-radius:6px 0 0 6px}.record-tabs button:last-child{border-radius:0 6px 6px 0}.record-tabs button.active{z-index:1;color:var(--ecnu-accent);border-color:var(--ecnu-accent);background:var(--ecnu-accent-soft);font-weight:700;position:relative}.records-card .practice-filters{align-items:end;gap:10px;margin:0 16px;padding:12px 0;display:flex}.records-card .practice-field{min-width:128px;color:var(--ecnu-fg-2);font-size:11px}.records-card .practice-field--search{flex:0 260px}.records-card .practice-field input,.records-card .practice-field select{border-color:var(--ecnu-border-strong);border-radius:6px;min-height:38px;font-size:12px}.records-card .practice-filters__actions{margin-left:auto}.practice-batch-actions{min-height:48px;color:var(--ecnu-fg-2);border-top:1px solid var(--ecnu-border);background:#fbfcff;justify-content:flex-end;align-items:center;gap:8px;padding:8px 16px;font-size:12px;display:flex}.practice-batch-actions span{margin-right:auto}.practice-batch-actions .practice-batch-delete:not(:disabled){color:var(--ecnu-danger);background:#fff;border-color:#f2c7cb}.practice-table-wrap{border-top:1px solid var(--ecnu-border);overflow-x:auto}.practice-data-table{border-collapse:collapse;width:100%;min-width:1120px}.practice-data-table th,.practice-data-table td{border-bottom:1px solid var(--ecnu-border);text-align:left;vertical-align:middle;padding:13px 10px}.practice-data-table thead th{color:var(--ecnu-muted);background:#f8f9fc;font-size:11px;font-weight:600}.practice-data-table tbody th{color:inherit;background:inherit;font-size:inherit;font-weight:400}.practice-data-table .practice-table-selection{text-align:center;width:48px;min-width:48px;padding-left:16px;padding-right:4px}.practice-table-selection input{width:16px;height:16px;accent-color:var(--ecnu-accent);cursor:pointer;margin:0}.practice-data-table tbody tr:has(.practice-table-selection input:checked){background:var(--ecnu-accent-soft)}.practice-data-table tbody tr{height:86px}.practice-data-table tbody tr:hover{background:#fbfcff}.practice-data-table time{color:var(--ecnu-fg-2);font-size:11px}.practice-table-title{align-items:center;gap:10px;min-width:230px;display:flex}.practice-table-title img{object-fit:contain;width:42px;height:42px}.practice-table-title div{gap:4px;display:grid}.practice-table-title strong{font-size:13px}.practice-table-title span{color:var(--ecnu-muted);font-size:11px}.practice-record-title{color:var(--ecnu-fg);font:inherit;text-align:left;cursor:pointer;background:0 0;border:0;padding:0;font-size:13px;font-weight:650}.practice-record-title:hover{color:var(--ecnu-accent);text-decoration:underline}.practice-table-title .practice-record-title span{color:inherit;font-size:inherit}.practice-record-row{cursor:pointer}.practice-record-row td>small{color:var(--ecnu-fg-2);margin-top:5px;font-size:11px;display:block}.practice-record-score{color:var(--ecnu-accent);margin-top:5px;font-size:16px;display:block}.practice-record-score small{font-size:11px;font-weight:400}.practice-record-times>span,.practice-record-times>small{white-space:nowrap;color:var(--ecnu-fg-2);margin:3px 0;font-size:11px;display:block}.practice-record-unavailable{color:var(--ecnu-muted);font-size:11px}.practice-table-title .practice-status{width:fit-content;color:inherit}.practice-status--danger{color:#b43243;background:#fff0f2}.practice-record-backdrop{z-index:28;background:#1220384d;justify-content:flex-end;display:flex;position:fixed;inset:0}.practice-record-drawer{background:#fff;flex-direction:column;width:min(600px,100vw);height:100dvh;display:flex;box-shadow:-12px 0 48px #12203826}.practice-record-drawer__header{border-bottom:1px solid var(--ecnu-border);justify-content:space-between;align-items:center;padding:20px 28px;display:flex}.practice-record-drawer__header span{color:var(--ecnu-muted);font-size:11px}.practice-record-drawer__header h2{margin:3px 0 0;font-size:20px}.practice-record-close{width:34px;height:34px;color:var(--ecnu-fg-2);cursor:pointer;background:#f5f7fb;border:0;border-radius:8px;place-items:center;display:grid}.practice-record-drawer__body{overscroll-behavior:contain;flex:1;min-height:0;padding:24px 28px;overflow-y:auto}.practice-record-heading h3{overflow-wrap:anywhere;margin:0;font-size:21px;line-height:1.4}.practice-record-heading p{color:var(--ecnu-fg-2);margin:8px 0 20px;font-size:12px}.practice-record-metrics{background:#f5f8ff;border:1px solid #e8eefb;border-radius:10px;grid-template-columns:1fr 1.35fr 1fr;gap:10px;padding:18px 14px;display:grid}.practice-record-metrics>div{text-align:center;gap:10px;display:grid}.practice-record-metrics span{color:var(--ecnu-fg-2);font-size:11px}.practice-record-metrics strong{color:var(--ecnu-accent);font-size:19px}.practice-record-metrics small{font-size:11px;font-weight:400}.practice-record-section{margin-top:24px}.practice-record-section h3{margin:0 0 14px;font-size:14px}.practice-record-facts{grid-template-columns:90px minmax(0,1fr);gap:12px 16px;margin:0;font-size:12px;display:grid}.practice-record-facts dt{color:var(--ecnu-muted)}.practice-record-facts dd{color:var(--ecnu-fg-2);overflow-wrap:anywhere;margin:0}.practice-record-id{font-family:ui-monospace,monospace}.practice-record-note{color:var(--ecnu-muted);margin:12px 0 0;font-size:11px;line-height:1.7}.practice-record-lifecycle{grid-template-columns:repeat(4,1fr);gap:8px;display:grid}.practice-record-lifecycle>div{border:1px solid var(--ecnu-border);border-radius:8px;align-content:start;justify-items:center;gap:10px;padding:12px 4px;display:grid}.practice-record-lifecycle>div>span{color:var(--ecnu-fg-2);font-size:11px}.practice-record-links{grid-template-columns:1fr 1fr;gap:10px;display:grid}.practice-record-links button{border:1px solid var(--ecnu-border);color:var(--ecnu-fg-2);cursor:pointer;background:#fff;border-radius:8px;justify-content:space-between;gap:8px;padding:13px;font-size:12px;display:flex}.practice-record-links button:hover{color:var(--ecnu-accent);border-color:var(--ecnu-accent)}.practice-record-drawer__footer{border-top:1px solid var(--ecnu-border);background:#fff;justify-content:space-between;align-items:center;gap:12px;padding:16px 28px;display:flex}.practice-record-remove{color:#b43243;cursor:pointer;background:0 0;border:0;align-items:center;gap:6px;min-height:40px;font-size:12px;display:flex}@media (width<=520px){.practice-record-drawer__header,.practice-record-drawer__body{padding:18px}.practice-record-drawer__footer{padding:14px 18px}.practice-record-metrics{gap:6px;padding:16px 8px}.practice-record-metrics strong{font-size:16px}.practice-record-lifecycle{grid-template-columns:1fr 1fr}.practice-record-links{grid-template-columns:1fr}.practice-record-close{width:44px;height:44px}}.practice-table-actions{align-items:center;gap:6px;display:flex}.practice-table-primary{min-height:31px;padding:0 10px;font-size:11px}.practice-table-delete{width:31px;min-height:31px;color:var(--ecnu-danger);border-color:#f2c7cb;padding:0}.practice-batch-delete__titles{color:var(--ecnu-fg-2);gap:6px;margin:16px 0;padding-left:22px;font-size:13px;display:grid}.practice-pagination{padding:14px 16px 18px}.login-page{isolation:isolate;background:#f3f7fd;min-height:100%;position:relative;overflow:hidden}.login-showcase{position:absolute;inset:0;overflow:hidden}.login-brand{z-index:3;color:var(--ecnu-fg);align-items:center;gap:12px;display:flex;position:absolute;top:clamp(28px,4.2vh,44px);left:clamp(36px,5vw,78px)}.login-brand img{width:48px;height:48px;display:block}.login-brand strong,.login-brand small{display:block}.login-brand strong{letter-spacing:-.02em;font-size:19px}.login-brand small{color:var(--ecnu-muted);margin-top:2px;font-size:12px}.login-campus-visual{z-index:0;pointer-events:none;width:74%;height:82%;margin:0;position:absolute;bottom:0;left:0;overflow:hidden}.login-campus-visual>img{object-fit:cover;object-position:center 56%;filter:saturate(.76)brightness(1.07)contrast(.94);opacity:.84;width:100%;height:100%;display:block}.login-campus-visual:before,.login-campus-visual:after{z-index:1;content:"";pointer-events:none;background:#f3f7fd;position:absolute}.login-campus-visual:before{filter:blur(30px);height:22%;top:-7%;left:-4%;right:-4%}.login-campus-visual:after{filter:blur(34px);width:31%;top:-4%;bottom:-4%;right:-7%}.login-support-links{z-index:3;color:var(--ecnu-muted);align-items:center;gap:24px;font-size:12px;display:flex;position:absolute;bottom:clamp(18px,3.4vh,34px);left:clamp(36px,7vw,110px)}.login-support-links span+span{position:relative}.login-support-links span+span:before{background:var(--ecnu-border);content:"";width:1px;height:12px;position:absolute;top:50%;left:-13px;transform:translateY(-50%)}.login-access{z-index:4;place-items:stretch stretch;gap:18px;width:clamp(420px,36vw,510px);display:grid;position:absolute;top:50%;right:clamp(38px,6vw,96px);transform:translateY(-50%)}.login-card{border:1px solid var(--ecnu-border);background:#fff;border-radius:18px;width:100%;max-width:none;padding:0;overflow:hidden;box-shadow:0 24px 70px #1f2a4417}.login-mode-tabs{border-bottom:1px solid var(--ecnu-border);grid-template-columns:1fr 1fr;min-height:68px;padding:0 28px;display:grid}.login-mode-tabs button{color:var(--ecnu-muted);background:0 0;border:0;font-size:16px;font-weight:700;position:relative}.login-mode-tabs button[aria-selected=true]{color:var(--ecnu-accent)}.login-mode-tabs button[aria-selected=true]:after{background:var(--ecnu-accent);content:"";height:3px;position:absolute;bottom:0;left:8px;right:8px}.login-mode-tabs button:disabled{cursor:not-allowed;opacity:1}.login-card__heading{text-align:center;justify-items:center;gap:8px;padding:30px 38px 20px;display:grid}.login-card__heading h2{margin:0;font-size:20px;line-height:1.45}.login-card__heading p{color:var(--ecnu-muted);margin:0;font-size:12px}.login-card form{gap:14px;padding:0 38px 34px}.login-field{gap:7px}.login-field>span{color:var(--ecnu-fg-2);align-items:center;gap:6px;font-size:12px;display:flex}.login-field input{border-color:var(--ecnu-border-strong);border-radius:7px;min-height:46px}.login-submit{background:var(--ecnu-accent);border-radius:8px;min-height:50px;margin-top:4px;font-size:15px;box-shadow:0 6px 14px #1677ff38}.login-card__session-note{color:var(--ecnu-fg-2);justify-content:space-between;align-items:center;font-size:11px;display:flex}.login-card__session-note button{color:var(--ecnu-accent);background:0 0;border:0}.login-card__session-note button:disabled{opacity:1}.login-page__browser-note{color:var(--ecnu-muted);text-align:center;margin:0;font-size:12px}@media (width<=1100px){.teacher-shell{grid-template-columns:196px minmax(0,1fr)}.home-dashboard{grid-template-columns:1fr}.login-brand{left:34px}.login-campus-visual{width:78%;height:80%;transform:translate(-5%)}.login-access{width:min(430px,100vw - 68px);right:34px}.login-support-links{left:34px}}@media (height<=760px){.login-brand{top:20px}.login-brand img{width:42px;height:42px}.login-campus-visual{width:72%;height:78%}.login-access{gap:10px}.login-mode-tabs{min-height:58px}.login-card__heading{padding:22px 34px 14px}.login-card form{gap:10px;padding:0 34px 24px}.login-field input{min-height:42px}.login-submit{min-height:46px}.login-support-links{bottom:18px}.login-page__browser-note{font-size:11px}}@media (width<=760px){.teacher-shell{grid-template-rows:auto minmax(0,1fr);grid-template-columns:1fr}.teacher-sidebar{border-right:0;border-bottom:1px solid var(--ecnu-border);height:auto;padding-bottom:10px;position:static}.teacher-brand{border-bottom:0}.teacher-navigation{flex-direction:row;flex:none;min-height:40px;margin-top:6px;display:flex;overflow-x:auto}.teacher-navigation a,.teacher-navigation a.active,.teacher-navigation a.teacher-navigation__launch{border-left:0;min-width:max-content;min-height:40px}.teacher-sidebar__note{display:none}.teacher-topbar{flex-wrap:wrap;gap:8px;padding:12px 16px;position:static}.teacher-topbar__title{font-size:17px}.teacher-topbar__actions{flex-shrink:0;gap:8px;margin-left:auto}.teacher-topbar-page-actions .ecnu-button{white-space:nowrap}.teacher-content{padding:16px}.home-greeting{align-items:flex-start}.practice-launch-card small{display:none}.practice-launch-card{padding-left:22px}.current-practice-card__title{grid-template-columns:auto 1fr}.current-practice-card__title .ecnu-button{grid-column:1/-1}.practice-mini-stats{grid-template-columns:repeat(2,1fr)}.records-intro{align-items:flex-start}.records-intro__actions{flex-direction:column;align-items:flex-end}.record-tabs{overflow-x:auto}.record-tabs button{white-space:nowrap;flex:none;min-height:44px}.records-card .practice-filters{flex-direction:column;align-items:stretch}.records-card .practice-field--search{flex:none}.records-card .practice-filters__actions{margin-left:0}.login-page{min-height:100svh;padding:96px 20px 74px;overflow:hidden}.login-brand{top:22px;left:20px}.login-brand img{width:42px;height:42px}.login-campus-visual{opacity:.52;width:120%;height:48%;left:50%;transform:translate(-58%)}.login-access{width:100%;max-width:460px;margin:0 auto;position:relative;inset:auto;transform:none}.login-card{border-radius:14px}.login-mode-tabs{padding-inline:12px}.login-card__heading,.login-card form{padding-inline:24px}.login-support-links{width:max-content;bottom:24px;left:50%;transform:translate(-50%)}}@media (width<=1040px){.resource-stats,.resource-list{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=760px){.resource-page__hero{align-items:flex-start}.resource-page__hero .resource-primary-action{width:100%}.resource-filters{grid-template-columns:1fr}.resource-result-count{justify-self:start;margin-bottom:0}.resource-list{grid-template-columns:1fr}.resource-card__body h2{min-height:0}.resource-state--error{text-align:center;grid-template-columns:1fr}.resource-state--error button{width:100%}.resource-dialog-backdrop{padding:12px}.resource-dialog{max-height:calc(100vh - 24px);padding:18px}.resource-form-grid{grid-template-columns:1fr}.resource-detail-dialog dl>div{grid-template-columns:1fr;gap:4px}.resource-dialog>footer,.resource-dialog>footer>div{flex-direction:column;align-items:stretch}.resource-dialog>footer button{width:100%}}.teacher-sidebar__admin-entry{color:#667085;background:#fff;border:1px solid #e1e7ef;border-radius:7px;justify-content:space-between;align-items:center;gap:12px;margin-top:10px;padding:12px 14px;font-size:13px;text-decoration:none;display:flex}.teacher-sidebar__admin-entry:hover{color:#1677ff;background:#f5f9ff}.teacher-sidebar__admin-entry:focus-visible{outline-offset:3px;outline:2px solid #1677ff}.login-school{text-align:center;gap:18px;padding:30px 38px 26px;display:grid}.login-school__seal{width:86px;height:86px;margin:0 auto 10px}.login-school h2{color:#253246;margin:0;font-size:clamp(20px,2vw,28px)}.login-school>p{color:#7b8aa2;margin:0}.login-school .login-submit{margin-top:14px}.login-school__notice{font-size:13px;line-height:1.7}.login-school__divider{color:#7b8aa2;align-items:center;gap:18px;font-size:14px;display:flex}.login-school__divider:before,.login-school__divider:after{content:"";background:#e5ebf3;flex:1;height:1px}.login-school__fallback{color:#52647e;font:inherit;cursor:pointer;background:#fff;border:1px solid #dce4ef;border-radius:12px;padding:15px}
