.student-grammar-library{flex-direction:column;width:100%;min-height:0;padding:clamp(18px,2vw,30px);display:flex}.student-grammar-hero{border-bottom:1px solid #dce7f3;grid-template-columns:minmax(220px,.72fr) minmax(560px,1.45fr);align-items:center;gap:clamp(18px,2.4vw,36px);padding-bottom:22px;display:grid}.student-grammar-hero h1{color:#0b1935;letter-spacing:-.045em;margin:3px 0 7px;font-size:clamp(2rem,3.3vw,3rem);line-height:.98}.student-grammar-hero>div:first-child>p:last-child{color:#60738f;max-width:390px;margin:0;font-size:.9rem;line-height:1.45}.student-grammar-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.student-grammar-metrics article{background:#ffffffdb;border:1px solid #d8e4f1;border-radius:14px;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:7px;min-height:84px;padding:10px 8px;display:grid}.student-grammar-metrics article>div{min-width:0;display:grid}.student-grammar-metrics strong{color:#0b1935;font-size:1.08rem;line-height:1}.student-grammar-metrics article>div>span{color:#48627f;white-space:nowrap;margin-top:5px;font-size:.62rem;font-weight:820;line-height:1.15}.student-grammar-metrics small{color:#8a9ab0;text-overflow:ellipsis;white-space:nowrap;margin-top:3px;font-size:.61rem;font-weight:700;overflow:hidden}.student-grammar-metric-icon,.student-grammar-category-icon{border-radius:50%;place-items:center;display:grid}.student-grammar-metric-icon{width:30px;height:30px}.student-grammar-metric-icon svg{fill:currentColor;width:16px;height:16px}.student-grammar-metric-icon.topics{color:#1670f8;background:#e7f0ff}.student-grammar-metric-icon.progress{color:#7c43ea;background:#f0e9ff}.student-grammar-metric-icon.average{color:#12a15c;background:#e4f7ed}.student-grammar-metric-icon.best{color:#ed970d;background:#fff1d8}.student-grammar-metric-icon .grammar-icon-cutout{fill:#fff}.student-grammar-section-heading{justify-content:space-between;align-items:center;min-height:48px;padding:16px 2px 10px;display:flex}.student-grammar-section-heading h2{color:#0b1935;letter-spacing:-.015em;margin:0;font-size:1.02rem}.student-grammar-section-heading span{color:#71839b;font-size:.72rem;font-weight:800}.student-grammar-category-grid{flex:1;grid-template-rows:repeat(4,minmax(88px,1fr));grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;min-height:0;display:grid}.student-grammar-category-card{background:#ffffffe6;border:1px solid #d6e2ef;border-radius:15px;grid-template-columns:48px minmax(0,1fr) auto;align-items:center;gap:13px;min-height:88px;padding:12px 16px;display:grid;box-shadow:0 10px 26px #2048780b}.student-grammar-category-icon{color:#12a05d;background:#e5f7ee;width:48px;height:48px}.student-grammar-category-icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:24px;height:24px}.student-grammar-category-card.tone-1 .student-grammar-category-icon{color:#1771f6;background:#e7f0ff}.student-grammar-category-card.tone-2 .student-grammar-category-icon{color:#7f47e7;background:#f0e9ff}.student-grammar-category-card.tone-3 .student-grammar-category-icon{color:#e9900b;background:#fff1dc}.student-grammar-category-copy{min-width:0}.student-grammar-category-copy h3{color:#0b1935;text-overflow:ellipsis;white-space:nowrap;margin:0 0 7px;font-size:1rem;line-height:1.1;overflow:hidden}.student-grammar-category-facts,.student-grammar-category-results{color:#71839b;flex-wrap:wrap;gap:5px 14px;font-size:.7rem;font-weight:720;display:flex}.student-grammar-category-results{margin-top:7px}.student-grammar-category-results b{color:#1474ca}.student-grammar-category-card>a{color:#0862df;border:1px solid #2879ef;border-radius:9px;place-items:center;min-width:82px;min-height:38px;padding:7px 13px;font-size:.75rem;font-weight:850;text-decoration:none;display:grid}.student-grammar-category-card>a:hover,.student-grammar-category-card>a:focus-visible{color:#fff;background:#0b66ee;box-shadow:0 8px 18px #0b66ee33}.student-grammar-pagination{justify-content:center;align-items:center;gap:10px;min-height:46px;padding-top:10px;display:flex}.student-grammar-pagination button{color:#155fcf;background:#fff;border:1px solid #cbd9e9;border-radius:9px;width:34px;height:34px;font:900 1rem/1 inherit}.student-grammar-pagination button:disabled{color:#aebbc9;opacity:.55}.student-grammar-pagination span{color:#647894;text-align:center;min-width:42px;font-size:.72rem;font-weight:850}.grammar-library-empty{text-align:center;background:#ffffffb3;border:1px dashed #cbd9e9;border-radius:15px;place-items:center;min-height:230px;padding:26px;display:grid}.grammar-library-empty svg{fill:none;stroke:#4182d9;stroke-width:1.6px;width:30px;height:30px}.grammar-library-empty h2{color:#0b1935;margin:9px 0 3px;font-size:1.1rem}.grammar-library-empty p{color:#71839b;margin:0;font-size:.82rem}.student-grammar-detail{gap:0}.student-grammar-detail-hero{border-bottom:1px solid #dce7f3;grid-template-columns:minmax(300px,1fr) minmax(480px,.9fr);align-items:end;gap:24px;padding-bottom:20px;display:grid}.student-grammar-back{color:#1768d9;margin-bottom:15px;font-size:.76rem;font-weight:850;text-decoration:none;display:inline-flex}.student-grammar-back:hover,.student-grammar-back:focus-visible{text-decoration:underline}.student-grammar-detail-hero h1{color:#0b1935;letter-spacing:-.045em;margin:4px 0 7px;font-size:clamp(2.2rem,4vw,3.4rem);line-height:.98}.student-grammar-detail-hero>div:first-child>p:last-child{color:#60738f;margin:0;font-size:.9rem}.student-grammar-detail-metrics{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.student-grammar-detail-metrics article{background:#ffffffe0;border:1px solid #d8e4f1;border-radius:13px;place-content:center start;gap:5px;min-height:72px;padding:11px 13px;display:grid}.student-grammar-detail-metrics strong{color:#0b1935;font-size:1.08rem}.student-grammar-detail-metrics span{color:#647894;white-space:nowrap;font-size:.65rem;font-weight:820}.student-grammar-detail-heading{justify-content:space-between;align-items:center;min-height:50px;padding:16px 2px 10px;display:flex}.student-grammar-detail-heading h2{color:#0b1935;margin:0;font-size:1.02rem}.student-grammar-detail-heading span{color:#71839b;font-size:.72rem;font-weight:800}.student-grammar-detail-list{gap:10px;min-height:0;display:grid}.student-grammar-detail-topic{background:#ffffffeb;border:1px solid #d6e2ef;border-radius:15px;grid-template-columns:42px minmax(240px,1fr) auto;align-items:center;gap:15px;min-height:122px;padding:15px 17px;display:grid;box-shadow:0 10px 26px #2048780b}.student-grammar-topic-number{color:#11945a;background:#eaf8f1;border:1px solid #bde6d2;border-radius:50%;place-items:center;width:38px;height:38px;font-size:.84rem;font-weight:900;display:grid}.student-grammar-detail-copy{min-width:0}.student-grammar-detail-copy h3{color:#0b1935;margin:0 0 5px;font-size:1rem;line-height:1.15}.student-grammar-detail-copy p{color:#61758f;-webkit-line-clamp:2;-webkit-box-orient:vertical;max-width:650px;margin:0;font-size:.76rem;line-height:1.4;display:-webkit-box;overflow:hidden}.student-grammar-detail-copy>div{color:#71839b;flex-wrap:wrap;gap:6px 15px;margin-top:8px;font-size:.67rem;font-weight:760;display:flex}.student-grammar-detail-levels{flex-wrap:wrap;justify-content:flex-end;gap:9px;display:flex}.student-grammar-detail-levels>a,.student-grammar-detail-levels>button{box-sizing:border-box;color:#163b70;min-width:112px;min-height:82px;font:inherit;text-align:center;background:#fbfdff;border:1px solid #ccd9e9;border-radius:13px;place-content:center;padding:10px 13px;text-decoration:none;display:grid}.student-grammar-detail-levels a:hover,.student-grammar-detail-levels a:focus-visible{border-color:#2879ef;box-shadow:0 0 0 3px #2879ef1f}.student-grammar-detail-levels a.in-progress{color:#125bbd;background:#edf5ff;border-color:#6c9fe6}.student-grammar-detail-levels a.passed{color:#06714a;background:#e7f8f0;border-color:#74caa9}.student-grammar-detail-levels a.review{color:#805506;background:#fff5d9;border-color:#e7ba50}.student-grammar-detail-levels a.not-started{color:#28496f;background:#fbfdff;border-color:#cbd8e9}.student-grammar-detail-levels>button.locked{color:#68758a;cursor:pointer;opacity:.9;background:repeating-linear-gradient(135deg,#f4f6f9 0 8px,#edf0f5 8px 16px);border-color:#cfd6e2}.student-grammar-detail-levels>button.locked:hover,.student-grammar-detail-levels>button.locked:focus-visible{border-color:#9aa9bd;box-shadow:0 0 0 3px #5e708b1f}.student-grammar-lock-message{color:#724a00;background:#fff8e8;border:1px solid #f0c46b;border-radius:14px;justify-content:space-between;align-items:center;gap:18px;margin-top:14px;padding:14px 16px;display:flex}.student-grammar-lock-message p{margin:3px 0 0}.student-grammar-detail-levels strong{font-size:.92rem}.student-grammar-detail-levels span{margin-top:3px;font-size:.62rem;font-weight:820}.student-grammar-detail-levels small{color:currentColor;opacity:.8;margin-top:4px;font-size:.58rem;font-weight:760}@media (width>=961px){.student-grammar-route-page{height:100dvh;min-height:0;overflow:hidden}.student-grammar-portal{height:calc(100dvh - 42px);padding-top:0}.student-grammar-main{background:#fafdffe0;border:1px solid #d2e0efe6;border-radius:18px;min-height:0;overflow:hidden;box-shadow:0 20px 55px #2048780f}.student-grammar-library{height:100%;overflow-y:auto}}.mobile-nav-toggle{display:none}.grammar-tour-launcher{color:inherit;font:inherit;cursor:pointer;background:0 0;border:0;padding:0;font-weight:800}.use-english-gap-picker{vertical-align:middle;display:inline-block;position:relative}.use-english-gap-picker .use-english-gap{color:#083b87;cursor:pointer;font:inherit;background:#eef5ff;border:0;border-bottom:2px solid #5c83de;justify-content:space-between;align-items:center;gap:8px;min-height:32px;padding:3px 10px;font-weight:800;display:inline-flex}.use-english-gap-picker .use-english-gap>span{font-size:.8em}.use-english-gap-menu{z-index:30;background:#fff;border:1px solid #bed3fb;border-radius:12px;gap:3px;min-width:max-content;padding:6px;display:grid;position:absolute;top:calc(100% + 6px);left:0;box-shadow:0 16px 36px #143a772e}.use-english-gap-menu button{color:#10264c;cursor:pointer;font:inherit;text-align:left;white-space:nowrap;background:0 0;border:0;border-radius:8px;padding:8px 10px}.use-english-gap-menu button:hover,.use-english-gap-menu button[aria-selected=true]{color:#115edb;background:#e7f0ff}@media (width<=760px){.mobile-nav-toggle{color:#fff;font:800 14px/1 var(--font-lexend), Arial, sans-serif;z-index:160;background:#1165ed;border:1px solid #0b56d6;border-radius:999px;align-items:center;gap:7px;padding:10px 14px;display:inline-flex;position:fixed;top:14px;right:14px;box-shadow:0 8px 22px #1165ed47}.mobile-nav-toggle span{font-size:18px;line-height:12px}.portal-layout{width:100%!important;display:block!important}.portal-sidebar{display:none!important}.mobile-nav-checkbox:checked~.portal-sidebar{z-index:150;background:#f8fbff;border:1px solid #d8e6f7;border-radius:22px;min-height:0;padding:70px 16px 16px;inset:10px;overflow-y:auto;box-shadow:0 20px 50px #1136693d;width:auto!important;display:flex!important;position:fixed!important}.portal-sidebar .sidebar-nav{overflow:visible}.portal-main{width:100%;min-width:0;padding-top:58px}.grammar-prototype-heading{padding-top:56px}.grammar-level-picker{gap:6px}.grammar-level-picker button,.grammar-level-picker .unavailable{min-width:48px;padding:8px 9px}.grammar-level-picker button small,.grammar-level-picker .unavailable small{display:none}.grammar-level-picker button strong,.grammar-level-picker .unavailable strong{font-size:15px}.grammar-guidance-language{margin-left:auto}.grammar-transform-header>div{align-items:center;display:flex}.grammar-tour-coach{max-height:188px;overflow:auto;width:calc(100vw - 24px)!important}.grammar-tour-coach h2{margin:3px 0;font-size:19px}.grammar-tour-coach p:not(.eyebrow){margin:6px 0;font-size:14px}.grammar-tour-coach footer{margin-top:10px}.placement-module-tabs{gap:8px}.placement-module-tabs button{min-height:78px;padding:10px}}.grammar-discover-editor{grid-template-columns:minmax(0,1.18fr) minmax(340px,.82fr);align-items:start;gap:22px;width:min(1480px,100%);margin:0 auto;display:grid}.grammar-discover-editor.has-visual-editor{grid-template-columns:minmax(280px,.72fr) minmax(340px,.82fr) minmax(440px,1.12fr);width:min(1920px,100%)}.grammar-discover-editor-visual-panel{background:#fffffff5;border:1px solid #d5e2f4;border-radius:20px;align-self:start;min-width:0;max-height:calc(100vh - 32px);padding:20px;position:sticky;top:16px;overflow:auto;box-shadow:0 18px 44px #214a811c}.grammar-discover-editor-visual-panel .discover-visual-editor{gap:14px}.grammar-discover-editor-visual-panel .discover-visual-pages{display:block}.grammar-discover-editor-visual-panel .discover-visual-page{display:none}.grammar-discover-editor-visual-panel .discover-visual-page.is-active{display:block}.discover-page-navigator{background:#f6f9fe;border:1px solid #dbe7f6;border-radius:14px;grid-template-columns:42px 1fr 42px;align-items:center;gap:10px;padding:8px;display:grid}.discover-page-navigator button{aspect-ratio:1;color:#1260e8;border:1px solid #b8d0f7;border-radius:10px;justify-content:center;align-items:center;padding:0;font-size:18px;font-weight:800;display:inline-flex}.discover-page-navigator button:disabled{opacity:.42}.discover-page-navigator div{text-align:center}.discover-page-navigator span{color:#607795;font-size:12px;font-weight:700;display:block}.discover-page-navigator strong{color:#10254a;margin-top:2px;font-size:15px;display:block}.grammar-discover-editor-panel{background:#fff;border:1px solid #d6e3f4;border-radius:22px;min-width:0;padding:clamp(22px,2.6vw,34px);box-shadow:0 18px 45px #24519314}.grammar-discover-editor-heading h1{color:#0b1f46;margin:4px 0 7px;font-size:clamp(2rem,3.1vw,3rem);line-height:1.05}.grammar-discover-editor-heading p{color:#58709a;max-width:64ch;margin:0;line-height:1.5}.grammar-discover-editor-toolbar{flex-wrap:wrap;justify-content:flex-end;gap:8px;max-width:360px;display:flex}.grammar-discover-editor-toolbar .secondary-action{white-space:nowrap;font-size:.82rem}.discover-editor-tip{color:#36577f;background:#f2f8ff;border:1px solid #cde3ff;border-radius:12px;margin:0 0 22px;padding:12px 14px;font-size:.9rem;line-height:1.5}.discover-editor-tip code{color:#1357bd;font-size:.82em}.discover-editor-section{background:#fbfdff;border:1px solid #d9e6f5;border-radius:17px;margin-top:18px;padding:20px}.discover-editor-section-heading{align-items:flex-start;gap:11px;display:flex}.discover-editor-section-heading>span{color:#1761d8;background:#eaf1ff;border-radius:50%;flex:none;place-items:center;width:28px;height:28px;font-size:.8rem;font-weight:850;display:grid}.discover-editor-section-heading h2{color:#112d59;margin:0;font-size:1.15rem}.discover-editor-section-heading p{color:#647b9e;margin:3px 0 0;font-size:.86rem;line-height:1.4}.grammar-discover-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;margin-top:18px;display:grid}.grammar-discover-form-grid label,.grammar-discover-slide-fields label{color:#294b79;gap:7px;font-size:.82rem;font-weight:800;display:grid}.grammar-discover-form-grid label.full,.grammar-discover-slide-fields label.full{grid-column:1/-1}.grammar-discover-form-grid input,.grammar-discover-form-grid textarea,.grammar-discover-slide-fields input,.grammar-discover-slide-fields textarea{box-sizing:border-box;color:#11294f;width:100%;font:inherit;background:#fff;border:1px solid #c8daf2;border-radius:10px;padding:10px 12px;font-weight:500}.grammar-discover-form-grid textarea,.grammar-discover-slide-fields textarea{resize:vertical;min-height:82px;line-height:1.45}.grammar-discover-form-grid input:focus,.grammar-discover-form-grid textarea:focus,.grammar-discover-slide-fields input:focus,.grammar-discover-slide-fields textarea:focus{border-color:#2d73df;outline:3px solid #1f63de29}.grammar-discover-slide-editor .panel-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:16px;display:flex}.discover-editor-slides{gap:12px;display:grid}.grammar-discover-slide-fields{background:#fff;border:1px solid #d6e5f5;border-radius:14px;grid-template-columns:minmax(155px,.55fr) minmax(0,1fr);gap:12px;padding:15px;display:grid}.grammar-discover-slide-fields>header{grid-column:1/-1;justify-content:space-between;align-items:center;gap:12px;display:flex}.grammar-discover-slide-fields>header>div:first-child{color:#183b70;align-items:center;gap:9px;display:flex}.discover-slide-number{color:#008b86;background:#eaf8f6;border-radius:9px;place-items:center;width:30px;height:30px;font-size:.76rem;font-weight:850;display:grid}.grammar-discover-slide-editor-actions button{color:#165bc6;font:inherit;background:#fff;border:1px solid #c6d8ef;border-radius:8px;padding:6px 9px;font-size:.78rem;font-weight:750}.grammar-discover-slide-editor-actions button:disabled{opacity:.45;cursor:not-allowed}.grammar-discover-json-details{color:#4f6b92;background:#f8fbff;border:1px dashed #bccfe9;border-radius:13px;margin-top:18px;padding:14px 16px}.grammar-discover-json-details summary{cursor:pointer;color:#173e79;font-weight:800}.grammar-discover-json-details p{margin:9px 0 0;font-size:.87rem;line-height:1.45}.grammar-discover-json-details textarea{box-sizing:border-box;color:#e8f0ff;background:#0a244e;border:1px solid #cbd9f1;border-radius:12px;width:100%;min-height:330px;margin-top:12px;padding:14px;font:13px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}.grammar-discover-editor-side{gap:16px;min-width:0;display:grid;position:sticky;top:18px}.discover-live-preview{background:#fff;border:1px solid #cfe0f4;border-radius:21px;overflow:hidden;box-shadow:0 18px 45px #23519517}.discover-live-preview-heading{border-bottom:1px solid #e0eaf6;justify-content:space-between;align-items:center;gap:12px;padding:19px 20px 15px;display:flex}.discover-live-preview-heading h2{color:#0e2853;margin:3px 0 0;font-size:1.22rem}.discover-preview-level{color:#2765d1;background:#edf3ff;border-radius:9px;padding:7px 10px;font-weight:850}.discover-preview-screen{background:linear-gradient(145deg,#fbfdff 0%,#f5f9ff 100%);padding:22px 20px}.discover-preview-kicker{color:#008c87;letter-spacing:.13em;text-transform:uppercase;margin:0;font-size:.73rem;font-weight:850}.discover-preview-screen h3{color:#0b224b;margin:7px 0;font-size:clamp(1.45rem,2.7vw,2rem);line-height:1.08}.discover-preview-summary{color:#58719a;margin:0;line-height:1.5}.discover-preview-stepper{flex-wrap:wrap;gap:6px;margin:19px 0 12px;display:flex}.discover-preview-stepper button{color:#4c6b98;width:28px;height:28px;font:inherit;background:#fff;border:1px solid #c7d8ef;border-radius:50%;padding:0;font-size:.78rem;font-weight:850}.discover-preview-stepper button.active{color:#fff;background:#1768e7;border-color:#1469e7;box-shadow:0 5px 12px #1768e73d}.discover-preview-slide{background:#fff;border:1px solid #cfe0f5;border-left:4px solid #15aaa0;border-radius:15px;min-height:170px;padding:19px}.discover-preview-slide>p{color:#008c87;letter-spacing:.08em;text-transform:uppercase;margin:0 0 10px;font-size:.72rem;font-weight:850}.discover-preview-slide h4{color:#102852;margin:0 0 10px;font-size:1.2rem}.discover-preview-slide div{color:#49678f;line-height:1.55}.discover-preview-actions{justify-content:space-between;gap:10px;margin-top:15px;display:flex}.discover-preview-actions button{color:#1b559e;min-width:96px;font:inherit;background:#fff;border:1px solid #c7d8ef;border-radius:9px;padding:9px 12px;font-weight:750}.discover-preview-actions .primary-action{color:#fff;background:#1768e7;border:1px solid #0d62dc;box-shadow:0 7px 15px #1768e733}.discover-preview-actions button:disabled{color:#9bacc3;cursor:not-allowed}.discover-preview-note{color:#507280;background:#f5fbfb;border-top:1px solid #deebf7;margin:0;padding:13px 17px;font-size:.83rem;line-height:1.45}.grammar-discover-validation{color:#a6323a;background:#fff5f5;border:1px solid #f0d0d0;border-radius:18px;margin:0;padding:19px}.grammar-discover-validation.valid{color:#087b59;background:#f2fcf8;border-color:#bfe6d6}.grammar-discover-validation h2{color:inherit;margin:4px 0 7px;font-size:1.35rem}.grammar-discover-validation>p:not(.eyebrow):not(.grammar-editor-version-note){margin:0;line-height:1.48}.grammar-discover-validation ol{gap:8px;margin:12px 0 0;padding-left:20px;display:grid}.grammar-discover-validation li{line-height:1.4}.grammar-editor-save-status{align-items:center;min-height:24px;margin-top:16px;display:flex}.grammar-editor-actions button{min-height:42px}.discover-visual-editor{gap:18px;display:grid}.discover-visual-settings{margin-top:-2px}.discover-visual-pages{gap:16px;display:grid}.discover-visual-page{background:linear-gradient(145deg,#fff,#f8fbff);border:1px solid #cfe0f3;border-radius:16px;padding:18px}.discover-visual-page-header,.discover-visual-page-header>div:first-child,.discover-visual-pattern>header,.discover-token-editor>header{justify-content:space-between;align-items:flex-start;gap:12px;display:flex}.discover-visual-page-header>div:first-child{justify-content:flex-start;align-items:center}.discover-visual-page-header small,.discover-visual-pattern>header span,.discover-token-editor>header span,.discover-field-label small{color:#6680a4;margin-top:3px;font-size:.77rem;font-weight:600;line-height:1.4;display:block}.discover-field-label{color:#294b79;gap:7px;margin-top:14px;font-size:.82rem;font-weight:800;display:grid}.discover-field-label input,.discover-token-row input,.discover-token-row select{box-sizing:border-box;color:#11294f;width:100%;min-width:0;font:inherit;background:#fff;border:1px solid #c8daf2;border-radius:10px;padding:9px 10px}.discover-visual-patterns{gap:13px;margin-top:16px;display:grid}.discover-visual-pattern{background:#fff;border:1px solid #d9e6f5;border-radius:14px;padding:16px}.discover-visual-pattern>header>div:first-child{color:#173e79;gap:3px;display:grid}.discover-token-editor{background:#fbfdff;border:1px solid #e0eaf6;border-radius:12px;margin-top:14px;padding:13px}.discover-token-editor>header{color:#234675;margin-bottom:10px;font-size:.86rem}.discover-token-editor>header span{text-align:right;max-width:38ch}.discover-token-list{gap:7px;display:grid}.discover-token-row{grid-template-columns:minmax(0,1fr) 100px 110px auto;align-items:center;gap:8px;display:grid}.discover-token-row button{color:#b64552;font:inherit;background:#fff7f8;border:1px solid #f1c4cb;border-radius:9px;padding:8px 10px;font-size:.78rem;font-weight:800}.discover-token-row button:disabled{opacity:.42;cursor:not-allowed}.discover-add-token{margin-top:10px;font-size:.8rem}.discover-explanation-fields{margin-top:4px}.discover-add-pattern,.discover-add-page{width:fit-content;margin-top:14px}.discover-add-page{justify-self:start}.discover-visual-preview{background:linear-gradient(145deg,#fbfdff,#f5f9ff);padding:18px}.discover-preview-page-control{color:#527097;justify-content:space-between;gap:10px;font-size:.78rem;font-weight:800;display:flex}.discover-preview-page-control strong{color:#14376d}.discover-visual-preview-tabs{flex-wrap:wrap;justify-content:center;gap:8px;margin:14px 0;display:flex}.discover-visual-preview-tabs button{color:#365275;font:inherit;background:0 0;border:0;border-bottom:2px solid #0000;padding:7px 9px;font-size:.79rem;font-weight:800}.discover-visual-preview-tabs button.active{color:#008b86;border-bottom-color:#00a7a1}.discover-visual-preview-label{text-align:center;color:#008b86;margin:15px 0;font-size:.88rem;font-weight:850}.discover-visual-preview-row{border-top:1px solid #dce7f3;padding:11px 0}.discover-visual-preview-row small{color:#5a7194;margin-bottom:7px;font-size:.71rem;font-weight:800;display:block}.discover-visual-preview-tokens{flex-wrap:wrap;gap:6px;display:flex}.discover-visual-preview-tokens span{background:#fff;border:1px solid #cdddf0;border-radius:9px;padding:8px 10px;font-size:.92rem;font-weight:850}.discover-visual-preview-tokens .tone-blue{color:#1968ea}.discover-visual-preview-tokens .tone-teal{color:#009d98}.discover-visual-preview-tokens .tone-violet{color:#7041e8}.discover-visual-preview-tokens .tone-ink{color:#18365f}.discover-visual-preview-action{grid-template-columns:1fr auto 1fr;align-items:center;gap:8px;margin:4px 0;display:grid}.discover-visual-preview-action span{border-top:1px dashed #c4d7ee;height:1px}.discover-visual-preview-action button{color:#1760c9;font:inherit;background:#fff;border:1px solid #bcd3f4;border-radius:999px;padding:7px 10px;font-size:.76rem;font-weight:850}.discover-visual-preview-rule{background:#f6fbfb;border-left:2px solid #1eb8ae;margin-top:16px;padding:12px}.discover-visual-preview-rule>div{gap:4px;margin-bottom:8px;display:flex}.discover-visual-preview-rule button{color:#4d6f75;font:inherit;background:#e3eeee;border:0;border-radius:99px;padding:4px 7px;font-size:.67rem;font-weight:850}.discover-visual-preview-rule button.active{color:#fff;background:#0ca9a3}.discover-visual-preview-rule p{color:#264466;margin:0;font-size:.86rem;font-weight:700;line-height:1.45}@media (width<=1450px){.grammar-discover-editor.has-visual-editor{grid-template-columns:minmax(0,1fr) minmax(330px,.84fr)}.grammar-discover-editor-visual-panel{grid-column:1/-1;max-height:none;position:static;overflow:visible}}@media (width<=1060px){.grammar-discover-editor.has-visual-editor{grid-template-columns:1fr}.grammar-discover-editor-visual-panel{max-height:none;position:static;overflow:visible}.grammar-discover-editor{grid-template-columns:1fr}.grammar-discover-editor-side{grid-template-columns:minmax(0,1.15fr) minmax(280px,.85fr);align-items:start;position:static}}@media (width<=720px){.grammar-discover-editor-panel{border-radius:17px;padding:19px 15px}.grammar-discover-editor-heading,.grammar-discover-slide-editor .panel-heading{flex-direction:column;align-items:stretch}.grammar-discover-editor-toolbar{justify-content:stretch;max-width:none}.grammar-discover-editor-toolbar .secondary-action{flex:145px}.grammar-discover-form-grid,.grammar-discover-slide-fields,.grammar-discover-editor-side{grid-template-columns:1fr}.grammar-discover-slide-fields>header{flex-direction:column;align-items:flex-start}.grammar-discover-slide-editor-actions{width:100%}.grammar-discover-slide-editor-actions button{flex:1}.grammar-editor-actions{grid-template-columns:1fr}.discover-visual-page-header,.discover-visual-pattern>header,.discover-token-editor>header{flex-direction:column}.discover-token-editor>header span{text-align:left}.discover-token-row{grid-template-columns:1fr 1fr}.discover-token-row input{grid-column:1/-1}.discover-token-row button{min-height:38px}}@media (width>=761px) and (width<=1180px){.student-grammar-hero{grid-template-columns:1fr}.student-grammar-metrics{grid-template-columns:repeat(4,minmax(0,1fr))}.student-grammar-detail-hero{grid-template-columns:1fr}}.student-grammar-runtime-route{width:min(100% - 24px,1480px);margin:0 auto;padding:8px 0 18px;overflow-x:clip}.student-grammar-runtime-toolbar{flex-wrap:wrap;align-items:center;gap:10px 14px;margin-bottom:12px;font-size:.76rem;font-weight:820;display:flex}.student-grammar-runtime-toolbar a{color:#405b83;align-items:center;gap:7px;text-decoration:none;display:inline-flex}.student-grammar-runtime-toolbar a:first-child{color:#5639d6}.student-grammar-runtime-toolbar svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:18px;height:18px}.grammar-save-state{color:#24705f;width:fit-content;margin:5px 0 0 auto;font-size:.74rem;font-weight:820}.grammar-save-state.saving{color:#5d6f89}.grammar-save-state.error{color:#a22a3a;text-align:right;max-width:520px}.grammar-discover-slide{background:linear-gradient(145deg,#f8fbff,#f8f6ff);border:1px solid #d8e5f2;border-radius:16px;margin-top:16px;padding:18px}.grammar-discover-slide h4{color:#0b1935;margin:0 0 7px;font-size:1.1rem}.grammar-discover-slide>p{color:#526987;max-width:78ch;margin:0 0 12px}.grammar-discover-slide ul{gap:9px;margin:12px 0 0;padding:0;list-style:none;display:grid}.grammar-discover-slide li{background:#ffffffeb;border:1px solid #dce7f4;border-left:4px solid #4f91e8;border-radius:4px 12px 12px 4px;gap:5px;padding:12px 14px;display:grid}.grammar-infographic-viewer{margin:14px 0}.grammar-infographic-dialog{background:#07152d;border:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0}.grammar-infographic-fullscreen{color:#fff;grid-template-rows:auto 1fr auto;height:100dvh;display:grid}.grammar-infographic-fullscreen header{justify-content:space-between;align-items:center;gap:12px;padding:12px 18px;display:flex}.grammar-infographic-fullscreen>div{place-items:center;min-height:0;padding:8px 18px 18px;display:grid;overflow:hidden}.grammar-infographic-fullscreen img{width:auto;max-width:calc(100vw - 36px);height:auto;max-height:calc(100dvh - 118px);display:block}.grammar-infographic-fullscreen>p{text-align:center;margin:0;padding:8px 18px}.grammar-discover-controls{justify-content:space-between;align-items:center;gap:10px;margin-top:14px;display:flex}.grammar-discover-controls button,.grammar-reopen-discover{color:#274a75;background:#fff;border:1px solid #c6d5e6;border-radius:9px;min-height:38px;padding:7px 12px;font:800 .78rem/1.2 inherit}.grammar-discover-controls button:disabled{opacity:.45}.grammar-reopen-discover{float:right;margin:0 0 8px 12px}.grammar-complete-card{text-align:left}@media (width<=760px){.student-grammar-library{padding:16px 12px 28px}.student-grammar-hero{grid-template-columns:1fr}.student-grammar-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.student-grammar-category-grid{flex:none;grid-template-rows:none;grid-template-columns:1fr}.student-grammar-category-card{grid-template-columns:44px minmax(0,1fr)}.student-grammar-category-card>a{grid-column:1/-1}.student-grammar-detail-hero{grid-template-columns:1fr;align-items:start}.student-grammar-detail-metrics{grid-template-columns:repeat(2,minmax(0,1fr))}.student-grammar-detail-topic{grid-template-columns:38px minmax(0,1fr)}.student-grammar-detail-levels{grid-column:1/-1;justify-content:stretch}.student-grammar-detail-levels>:is(a,button){flex:96px}.student-grammar-runtime-route{width:min(100% - 16px,1480px);padding-top:8px}.student-grammar-runtime-toolbar{flex-direction:column;align-items:flex-start}.grammar-save-state{text-align:left;margin-left:0}.grammar-reopen-discover{float:none;width:100%;margin:0 0 12px}.grammar-discover-controls{grid-template-columns:1fr auto 1fr;display:grid}.grammar-discover-controls button{min-width:0}}.nav-role-link{align-items:center;gap:6px;display:inline-flex}.nav-role-icon{border-radius:6px;place-items:center;width:18px;height:18px;display:inline-grid}.nav-role-icon svg{fill:currentColor;width:13px;height:13px}.nav-role-icon-student{color:#087f86;background:#e8f8f7}.nav-role-icon-teacher{color:#1456b8;background:#eaf2ff}.student-dashboard-grid,.teacher-dashboard-grid{align-items:stretch;gap:8px;display:grid}.student-dashboard-grid{grid-template-columns:repeat(12,minmax(0,1fr))}.weekly-activity-panel{grid-column:span 7;min-height:0;display:grid}.progress-panel{grid-column:span 5;min-height:0}.streak-panel{background:radial-gradient(circle at 12% 82%,#22c55e24,#0000 32%),linear-gradient(135deg,#f8fffb,#effaf4 58%,#e8f8f1);grid-column:span 5;gap:12px;min-height:0;display:grid;position:relative;overflow:hidden}.streak-panel:after{content:"";aspect-ratio:1;pointer-events:none;border:1px solid #22c55e26;border-radius:999px;width:190px;position:absolute;bottom:-72px;right:-58px;box-shadow:0 0 0 22px #22c55e0a,0 0 0 46px #22c55e06}.streak-ready{background:linear-gradient(135deg,#fbfdff,#f0f7ff 58%,#ecf9f7)}.streak-ready:after{border-color:#2775b21f;box-shadow:0 0 0 22px #2775b209,0 0 0 46px #2775b205}.streak-champion{background:radial-gradient(circle at 12% 82%,#facc1533,#0000 34%),linear-gradient(135deg,#fffdf2,#f3fbe8 56%,#e8f8e8)}.streak-showcase{z-index:1;grid-template-columns:164px minmax(0,1fr);align-items:center;gap:20px;min-height:202px;display:grid;position:relative}.streak-art{filter:drop-shadow(0 16px 18px #12975529);width:158px;height:158px;margin-inline:auto;position:relative}.streak-art:before,.streak-art:after{content:"";transform-origin:bottom;border-radius:68% 32% 64% 36%/68% 40% 60% 32%;display:none;position:absolute;bottom:17px}.streak-starting .streak-art{filter:drop-shadow(0 12px 15px #12975521)}.streak-starting .streak-flame-outer{width:58px;height:84px;bottom:22px}.streak-starting .streak-flame-inner{width:39px;height:58px;bottom:23px}.streak-starting .streak-flame-core{width:22px;height:35px;bottom:28px}.streak-starting .streak-day-number{bottom:36px}.streak-starting .streak-spark-one{top:48px;right:30px}.streak-starting .streak-spark-two{top:75px;left:23px}.streak-growing .streak-flame-outer{background:linear-gradient(150deg,#10b981 4%,#22c55e 48%,#a3e635 100%)}.streak-week .streak-art:before,.streak-champion .streak-art:before{z-index:0;background:linear-gradient(150deg,#34d399,#16a34a 70%);width:58px;height:98px;display:block;left:10px;transform:rotate(28deg)}.streak-week .streak-art:after,.streak-champion .streak-art:after{z-index:0;background:linear-gradient(150deg,#bef264,#22c55e 74%);width:45px;height:79px;display:block;right:8px;transform:rotate(50deg)}.streak-week .streak-flame-outer,.streak-champion .streak-flame-outer{width:90px;height:128px}.streak-week .streak-flame-inner,.streak-champion .streak-flame-inner{width:63px;height:92px}.streak-week .streak-flame-core,.streak-champion .streak-flame-core{width:36px;height:58px}.streak-week .streak-spark-one,.streak-champion .streak-spark-one{top:17px;right:8px}.streak-week .streak-spark-two,.streak-champion .streak-spark-two{top:43px;left:3px}.streak-aura{background:radial-gradient(circle,#4ade8052,#22c55e0a 62%,#0000 72%);border-radius:52% 48% 56% 44%;position:absolute;inset:20px 12px 2px;transform:rotate(-18deg)}.streak-flame{z-index:1;transform-origin:bottom;position:absolute;bottom:12px;left:50%}.streak-flame-outer{background:linear-gradient(150deg,#10b981 4%,#22c55e 48%,#a3e635 100%);border-radius:68% 32% 64% 36%/68% 40% 60% 32%;width:82px;height:116px;transform:translate(-68%)rotate(42deg)}.streak-flame-inner{background:linear-gradient(150deg,#bbf7d0 5%,#4ade80 48%,#16a34a 100%);border-radius:66% 34% 62% 38%/68% 42% 58% 32%;width:57px;height:83px;transform:translate(-59%)rotate(42deg)translateY(-6px)}.streak-flame-core{background:linear-gradient(150deg,#fef08a,#bef264 62%,#22c55e);border-radius:62% 38% 60% 40%/68% 42% 58% 32%;width:32px;height:50px;transform:translate(-48%)rotate(42deg)translateY(-16px)}.streak-day-number{z-index:2;color:#087443;background:#fff;border:4px solid #ffffffeb;border-radius:999px;place-items:center;width:54px;height:54px;font-size:1.4rem;font-weight:900;display:grid;position:absolute;bottom:28px;left:50%;transform:translate(-50%);box-shadow:0 10px 26px #16a34a33}.streak-spark{z-index:2;aspect-ratio:1;background:#bef264;border-radius:3px;width:9px;position:absolute;transform:rotate(45deg);box-shadow:0 0 0 4px #bef26424}.streak-spark-one{top:29px;right:19px}.streak-spark-two{width:6px;top:62px;left:13px}.streak-ready .streak-flame-outer{background:linear-gradient(150deg,#93c5fd,#60a5fa 50%,#38bdf8)}.streak-ready .streak-flame-inner{background:linear-gradient(150deg,#e0f2fe,#7dd3fc 55%,#2563eb)}.streak-ready .streak-flame-core{background:linear-gradient(150deg,#f8fafc,#bae6fd 62%,#60a5fa)}.streak-ready .streak-day-number{color:#1d4ed8;box-shadow:0 10px 26px #2563eb29}.streak-ready .streak-spark{background:#93c5fd;box-shadow:0 0 0 4px #93c5fd2e}.streak-champion .streak-flame-outer{background:linear-gradient(150deg,#f59e0b,#84cc16 54%,#16a34a)}.streak-champion .streak-flame-inner{background:linear-gradient(150deg,#fef08a,#bef264 55%,#22c55e)}.streak-champion .streak-flame-core{background:linear-gradient(150deg,#fff,#fde047 60%,#84cc16)}.streak-champion .streak-art:before{background:linear-gradient(150deg,#facc15,#65a30d 72%)}.streak-champion .streak-art:after{background:linear-gradient(150deg,#fef08a,#22c55e 74%)}.streak-champion .streak-spark{background:#facc15;box-shadow:0 0 0 4px #facc1529}.streak-art:before,.streak-art:after{display:none!important}.streak-progress-image{z-index:1;background:url(/streak-progress-1-day.png) 50%/cover no-repeat;transition:filter .18s,transform .18s;position:absolute;inset:0}.teacher-sidebar .sidebar-nav a{gap:8px}.teacher-sidebar .sidebar-nav a:not(.active){border:1px solid #0000}.teacher-sidebar .sidebar-nav a:hover{border-color:#ffffff1f}.compact-hero{min-height:112px}.access-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.metric-card-positive{background:linear-gradient(145deg,#fcfffd,#ecf9f0)!important;border-color:#bee7d0!important}.metric-card-blue{background:linear-gradient(145deg,#fff,#edf5ff)!important;border-color:#c7dcff!important}.metric-card-warning{background:linear-gradient(145deg,#fffdf7,#fff5d9)!important;border-color:#f0d291!important}.metric-card-danger{background:linear-gradient(145deg,#fffefe,#fff1f2)!important;border-color:#f6c8cf!important}.teacher-command-grid{grid-template-columns:minmax(0,1.25fr) minmax(300px,.75fr);gap:12px;display:grid}.command-attention-panel,.command-actions-panel,.command-activity-preview,.student-access-workspace,.teacher-activity-workspace{padding:18px}.command-attention-list{gap:9px;display:grid}.command-attention-list article{border:1px solid var(--line);background:#fbfdff;border-radius:14px;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:12px;padding:12px;display:grid}.command-attention-list article>strong{color:#965a00;background:#fff0c2;border-radius:12px;place-items:center;width:38px;height:38px;font-size:1.05rem;display:grid}.command-attention-list b{color:var(--navy)}.command-attention-list p{color:var(--muted);margin-top:3px;font-size:.86rem;line-height:1.35}.command-attention-list a,.command-activity-preview .panel-heading>a{color:#075dd4;white-space:nowrap;font-weight:800}.command-action-grid{grid-template-columns:1fr 1fr;gap:9px;display:grid}.command-action-grid a{text-align:center;justify-content:center}.command-activity-preview{margin-top:12px}.activity-filters{grid-template-columns:minmax(180px,1fr) repeat(3,minmax(118px,.4fr)) auto;gap:8px;margin-bottom:12px;display:grid}.activity-filters input,.activity-filters select{border:1px solid var(--line);min-width:0;min-height:40px;color:var(--navy);background:#fff;border-radius:10px;padding:8px 10px}.teacher-activity-table{gap:5px;display:grid}.teacher-activity-table-head,.teacher-activity-table article{background:#fff;border:1px solid #e0e9f6;border-radius:12px;grid-template-columns:minmax(150px,1.15fr) minmax(150px,1fr) minmax(110px,.7fr) minmax(72px,.45fr) minmax(108px,.7fr) auto;align-items:center;gap:10px;padding:11px 12px;display:grid}.teacher-activity-table-head{color:var(--muted);text-transform:uppercase;background:0 0;border:0;padding:0 12px 5px;font-size:.7rem;font-weight:820}.teacher-activity-table article>a:first-child{color:var(--navy);text-overflow:ellipsis;white-space:nowrap;font-weight:800;overflow:hidden}.teacher-activity-table article>span{color:#405169;min-width:0;font-size:.88rem}.student-homework-art{object-fit:contain;opacity:.92;pointer-events:none;width:76px;height:76px;position:absolute;bottom:3px;right:8px}.student-metric-mascot{object-fit:contain;opacity:1;border-radius:28px;width:152px;height:152px;bottom:-28px;right:-12px}.student-metric-mascot.mascot-due{object-position:69% 55%;mix-blend-mode:multiply}.student-metric-mascot.mascot-overdue,.student-metric-mascot.mascot-done{mix-blend-mode:normal}.student-metric-mascot.mascot-overdue{width:122px;height:122px;bottom:-14px;right:-2px}.student-metric{position:relative;overflow:hidden}.student-metric:has(.student-metric-mascot){padding-right:128px}.student-metric:has(.student-metric-mascot.mascot-overdue){padding-right:104px}.streak-progress-image{object-fit:contain;width:100%;height:100%;display:block;background:0 0!important}.streak-ready .streak-progress-image{opacity:.78}@media (width>=921px){.student-reading-main{grid-template-rows:auto minmax(0,1fr);min-height:calc(100vh - 42px)}.student-reading-main .practice-library-shell,.student-reading-main .level-browser,.student-reading-main .level-browser-body,.student-reading-main .level-browser-list{min-height:0}.student-reading-main .practice-library-shell{display:grid}.student-reading-main .level-browser{grid-template-rows:auto auto minmax(0,1fr)}.student-reading-main .level-browser-body{grid-template-rows:auto minmax(0,1fr)}.student-reading-main .level-browser-list{max-height:none}}.grammar-prototype-heading{background:#f8faff;border-bottom:1px solid #e0e9f4;justify-content:space-between;align-items:center;gap:24px;padding:clamp(16px,2vw,24px) clamp(18px,2.2vw,30px);display:flex}.grammar-prototype-heading-tools{flex:none;justify-items:end;gap:9px;display:grid}.grammar-guidance-language{background:#fff;border:1px solid #cfe0eb;border-radius:999px;align-items:center;gap:3px;padding:3px;display:inline-flex}.grammar-guidance-language>span{color:#5b6f8f;letter-spacing:.04em;text-transform:uppercase;padding:0 6px 0 8px;font-size:.66rem;font-weight:830}.grammar-guidance-language button{color:#4d6680;cursor:pointer;background:0 0;border:0;border-radius:999px;min-width:34px;min-height:27px;padding:3px 8px;font-size:.68rem;font-weight:850}.grammar-guidance-language button[aria-pressed=true]{color:#fff;background:#07a9aa;box-shadow:0 4px 10px #07a9aa33}.grammar-guidance-language button:focus-visible{outline-offset:2px;outline:3px solid #1261f43d}.grammar-prototype-heading h2,.grammar-intro-card h3,.grammar-practice-card h3,.grammar-review-card h3{color:#09183a;letter-spacing:-.035em;margin:2px 0 6px}.grammar-prototype-heading h2{font-size:clamp(2rem,2.7vw,3rem);line-height:.98}.grammar-prototype-heading p,.grammar-intro-card p,.grammar-review-card>p{color:#58709a;margin:0}.grammar-level-picker{flex:none;gap:8px;display:flex}.grammar-level-picker button,.grammar-level-picker span,.grammar-level-picker a{color:#17284a;text-align:left;background:#fff;border:1px solid #d6e1f1;border-radius:12px;min-width:82px;padding:9px 12px;text-decoration:none;display:grid}.grammar-level-picker button{cursor:pointer}.grammar-level-picker button.active{color:#5b39df;background:#f1edff;border-color:#7657ff}.grammar-level-picker :is(button.locked,a.complete,a.available){cursor:pointer}.grammar-level-picker button.locked{color:#77530b;background:#fff8e5;border-color:#e2c982}.grammar-level-picker a.complete{color:#087448;background:#eaf8f1;border-color:#86cdb0}.grammar-level-notice{z-index:8;color:#55400c;background:#fffaf0;border:1px solid #e4c573;border-radius:14px;width:min(380px,100vw - 32px);padding:14px;position:absolute;top:calc(100% + 8px);right:0;box-shadow:0 16px 40px #1125462e}.grammar-prototype-heading-tools{position:relative}.grammar-level-notice p{color:#665523;margin:4px 0 12px}.grammar-level-notice>div{justify-content:flex-end;gap:8px;display:flex}.grammar-version-update{color:#653d00;background:linear-gradient(135deg,#fff3cc,#fff9e9);border:2px solid #f0a514;border-radius:14px;grid-template-columns:auto 1fr;gap:2px 9px;margin-top:10px;padding:13px 15px;text-decoration:none;display:grid;box-shadow:0 10px 25px #80530033}.grammar-version-update b{color:#fff;letter-spacing:.06em;background:#d96d00;border-radius:7px;grid-row:1/span 2;align-self:center;padding:5px 7px;font-size:.62rem}.grammar-version-update strong{font-size:.88rem}.grammar-version-update span{font-size:.72rem;font-weight:720}.grammar-version-update:hover,.grammar-version-update:focus-visible{border-color:#d96d00;box-shadow:0 0 0 4px #f0a51438,0 12px 28px #80530033}.grammar-stage-track[data-preview-navigation=unrestricted] button{cursor:pointer;opacity:1}.grammar-stage-track[data-preview-navigation=unrestricted] button.preview-jump:hover,.grammar-stage-track[data-preview-navigation=unrestricted] button.preview-jump:focus-visible{color:#155ed4;background:#edf4ff}.grammar-preview-navigation-note{color:#315f99;text-align:center;background:#eef6ff;border-bottom:1px solid #dfe7f3;margin:0;padding:8px 14px;font-size:.72rem;font-weight:780}.grammar-next-level-message{border-radius:14px;margin:14px 0;padding:14px 16px}.grammar-next-level-message.unlocked{color:#08683f;background:#ecfbf3;border:1px solid #8bd3b1}.grammar-next-level-message.locked{color:#704c09;background:#fff8e9;border:1px solid #efcb78}.grammar-next-level-message p{color:inherit;margin:4px 0 0}.grammar-complete-review{background:#fbfdff;border:1px solid #d8e2ef;border-radius:14px;margin:16px 0}.grammar-complete-review>summary{color:#123a72;cursor:pointer;padding:14px 16px;font-weight:850}.grammar-complete-review>section{padding:0 16px 14px}.grammar-complete-review>section>header{justify-content:space-between;margin:6px 0 8px;display:flex}.grammar-complete-review article{background:#fff;border-left:4px solid #36b978;border-radius:8px;margin-top:7px;padding:10px 12px}.grammar-complete-review article.incorrect{border-left-color:#f0a83a}.grammar-complete-review article p{margin:4px 0}.grammar-level-picker small{color:#7282a2;margin-top:2px;font-size:.72rem}.grammar-level-picker .unavailable{opacity:.56}.grammar-stage-track{background:#faf9ff;border-bottom:1px solid #e5e4f4;margin:0;padding:12px clamp(16px,2vw,28px);display:grid}.grammar-stage-track>:is(div,button){color:#9aa7bc;min-width:0;font:inherit;text-align:inherit;background:0 0;border:0;justify-content:center;align-items:center;gap:8px;padding:0;display:flex;position:relative}.grammar-stage-track>:is(div,button):not(:last-child):after{content:"";background:#dfe5ef;width:42%;height:2px;position:absolute;right:0;transform:translate(50%)}.grammar-stage-track>:is(div,button).complete,.grammar-stage-track>:is(div,button).current{color:#5b3ee0}.grammar-stage-track>:is(div,button).complete span{color:#fff;background:#48b52d;border-radius:50%;place-items:center;width:25px;height:25px;display:grid}.grammar-stage-track>button:not(:disabled){cursor:pointer}.grammar-stage-track>button:not(:disabled):hover strong,.grammar-stage-track>button:not(:disabled):focus-visible strong{text-underline-offset:3px;text-decoration:underline}.grammar-preview-restart{color:#1454d8;cursor:pointer;font:inherit;background:#fff;border:1px solid #bdd2fb;border-radius:10px;margin-left:auto;padding:8px 12px;font-weight:750}.grammar-practice-tip{color:#163d76;background:#f1f7ff;border:1px solid #b8d7ff;border-radius:12px;align-items:center;gap:10px;margin:0 0 14px;padding:11px 14px;display:flex}.grammar-practice-tip strong{color:#0c397d}.grammar-practice-tip span{flex:1}.grammar-practice-tip button{color:#315b9d;cursor:pointer;background:0 0;border:0;font-size:1.3rem;line-height:1}.grammar-tour-layer{z-index:90;pointer-events:none;position:fixed;inset:0}.grammar-tour-dim{background:#0613371a;position:absolute;inset:0}.grammar-tour-spotlight{z-index:1;pointer-events:none;border:2px solid #16b6b6;border-radius:13px;position:fixed;box-shadow:0 0 0 5px #ffffffe0,0 12px 34px #0b598f47}.grammar-tour-card,.grammar-tour-coach{z-index:2;pointer-events:auto;background:#fff;border:1px solid #d2e0ff;border-radius:22px;width:min(100%,480px);padding:clamp(24px,4vw,34px);position:fixed;box-shadow:0 28px 72px #0f2c5f47}.grammar-tour-welcome{top:50%;left:50%;transform:translate(-50%,-50%)}.grammar-tour-card h2,.grammar-tour-coach h2{color:#0b214e;margin:5px 0 12px;font-size:1.25rem}.grammar-tour-card>p,.grammar-tour-coach>p{color:#56709f;margin:10px 0 0;line-height:1.6}.grammar-tour-card footer,.grammar-tour-coach footer{justify-content:space-between;gap:12px;margin-top:24px;display:flex}.grammar-tour-arrow{color:#16b6b6;text-shadow:0 2px #fff;font-size:2.4rem;font-weight:800;line-height:1;position:absolute;top:-37px;left:50%;transform:translate(-50%)}.grammar-tour-coach-above .grammar-tour-arrow{top:auto;bottom:-37px;transform:translate(-50%)rotate(180deg)}.grammar-tour-language{gap:8px;margin-top:18px;display:flex}.grammar-tour-language button{color:#355482;cursor:pointer;font:inherit;background:#fff;border:1px solid #cbdaf5;border-radius:999px;padding:8px 13px;font-weight:750}.grammar-tour-language button[aria-pressed=true]{color:#007f87;background:#e9fbfa;border-color:#13a5ad}@media (width<=680px){.grammar-tour-card,.grammar-tour-coach{width:calc(100vw - 32px);max-width:none}.grammar-tour-coach{bottom:18px;top:auto!important;left:16px!important}.grammar-tour-arrow{display:none}}.grammar-discover-route{box-sizing:border-box;width:100%;max-width:none}.grammar-discover-route .grammar-discover-editor.has-visual-editor{grid-template-columns:minmax(360px,.78fr) minmax(390px,.9fr) minmax(560px,1.32fr);width:100%;max-width:none;margin:0}.grammar-discover-editor.has-visual-editor .grammar-discover-editor-heading{display:block}.grammar-discover-editor.has-visual-editor .grammar-discover-editor-toolbar{grid-template-columns:1fr;justify-content:stretch;width:100%;max-width:none;margin-top:18px;display:grid}.grammar-discover-editor.has-visual-editor .grammar-discover-editor-toolbar .secondary-action{box-sizing:border-box;text-align:center;white-space:normal;width:100%;min-height:42px}.grammar-editor-toolbar,.grammar-discover-level-tabs{color:#42618d;background:#fff;border:1px solid #d7e2f5;border-radius:14px;align-items:center;gap:12px;margin-bottom:14px;padding:14px 18px;display:flex}.grammar-editor-toolbar strong{color:#0c315f}.grammar-editor-toolbar span{flex:1}.grammar-editor-toolbar a,.grammar-discover-level-tabs a{color:#1357d2;font-weight:750}.grammar-discover-level-tabs .active{color:#00898b;border-bottom:2px solid #0ca8a7}.grammar-discover-editor-panel{background:#fff;border:1px solid #d7e2f5;border-radius:20px;padding:clamp(20px,3vw,34px);box-shadow:0 16px 40px #1b498c12}.grammar-discover-editor-heading{justify-content:space-between;align-items:flex-start;gap:20px;margin-bottom:24px;display:flex}.grammar-discover-editor-heading h1{color:#0c214c;margin:4px 0 7px;font-size:clamp(1.7rem,3vw,2.5rem)}.grammar-discover-editor-heading p{color:#55719d;max-width:680px;margin:0}.grammar-discover-editor-toolbar{flex-wrap:wrap;justify-content:flex-end;gap:9px;display:flex}.grammar-discover-form-grid{grid-template-columns:minmax(0,1fr) minmax(260px,.34fr);gap:22px;display:grid}.grammar-discover-editor-fields{gap:15px;display:grid}.grammar-discover-editor-fields label{color:#254674;gap:7px;font-size:.86rem;font-weight:750;display:grid}.grammar-discover-editor-fields input,.grammar-discover-editor-fields textarea{box-sizing:border-box;color:#102850;width:100%;font:inherit;border:1px solid #cad9f0;border-radius:10px;padding:10px 12px}.grammar-discover-editor-fields textarea{resize:vertical;min-height:84px}.grammar-discover-slides{gap:13px;display:grid}.grammar-discover-slide-editor{background:#fbfdff;border:1px solid #d6e4f5;border-radius:14px;padding:16px}.grammar-discover-slide-editor header{justify-content:space-between;align-items:center;gap:12px;margin-bottom:12px;display:flex}.grammar-discover-slide-editor header strong{color:#103b75}.grammar-discover-slide-editor-actions{flex-wrap:wrap;gap:7px;display:flex}.grammar-discover-slide-editor button,.grammar-discover-editor-actions button{color:#1458c9;cursor:pointer;font:inherit;background:#fff;border:1px solid #c4d6f4;border-radius:9px;padding:7px 10px;font-weight:700}.grammar-discover-editor-aside{background:#f4fcfb;border:1px solid #cae8e7;border-radius:14px;align-self:start;padding:18px}.grammar-discover-editor-aside h2{color:#087d81;margin:0 0 8px;font-size:1.1rem}.grammar-discover-editor-aside p{color:#44707b;margin:0;line-height:1.55}.grammar-discover-editor-actions{justify-content:flex-end;gap:10px;margin-top:22px;display:flex}.grammar-discover-editor-actions .primary-action{border:0}.grammar-discover-json{margin-top:20px}.grammar-discover-json textarea{box-sizing:border-box;color:#e8f0ff;background:#0b234a;border:1px solid #cbd9f1;border-radius:12px;width:100%;min-height:300px;margin-top:12px;padding:14px;font:13px/1.5 ui-monospace,SFMono-Regular,Consolas,monospace}.grammar-discover-validation{color:#aa3434;background:#fff3f3;border-radius:12px;margin-top:18px;padding:14px}@media (width<=760px){.grammar-preview-restart{margin-left:0}.grammar-practice-tip{flex-wrap:wrap;align-items:flex-start}.grammar-tour-overlay{align-items:end;padding:12px}.grammar-tour-card{border-radius:18px}.grammar-tour-card footer{flex-direction:column-reverse}.grammar-tour-card footer button{width:100%}.grammar-editor-toolbar,.grammar-discover-level-tabs,.grammar-discover-editor-heading{flex-direction:column;align-items:stretch}.grammar-editor-toolbar span{flex:initial}.grammar-discover-editor-toolbar{justify-content:stretch}.grammar-discover-editor-toolbar button{flex:1}.grammar-discover-form-grid{grid-template-columns:1fr}.grammar-discover-editor-actions{justify-content:stretch}.grammar-discover-editor-actions button{flex:1}}.grammar-intro-card{grid-template-columns:minmax(0,1fr);gap:18px 32px;padding:clamp(22px,3vw,40px);display:grid}.grammar-intro-card h3,.grammar-review-card h3{font-size:clamp(1.7rem,2.6vw,2.75rem)}.grammar-intro-card ul{color:#2f466d;gap:8px;margin:20px 0 0;padding-left:20px;display:grid}.grammar-topic-number{color:#6443e9;background:#eee9ff;border-radius:15px;place-items:center;width:48px;height:48px;margin-bottom:18px;font-weight:900;display:inline-grid}.grammar-progress-card>span{color:#6b4ae8;letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:900}.grammar-intro-card .primary-action{justify-self:start}.grammar-intro-card-visual{gap:20px;padding:clamp(18px,2.4vw,34px) clamp(18px,3vw,46px) clamp(24px,3vw,42px)}.grammar-transform-discover{--transform-blue:#1261f4;--transform-teal:#07a9aa;--transform-violet:#7143ef;--transform-ink:#243957;color:#071736;width:min(100%,1120px);margin-inline:auto}.grammar-transform-header{color:#60728e;letter-spacing:.09em;text-transform:uppercase;border-bottom:1px solid #e4ebf5;justify-content:space-between;align-items:center;gap:18px;padding-bottom:7px;font-size:.72rem;font-weight:800;display:flex}.grammar-transform-header>div{align-items:center;gap:14px;display:flex}.grammar-transform-header strong{color:#3f5371;white-space:nowrap}.grammar-transform-motion{background:#f7faff;border:1px solid #dbe5f1;border-radius:999px;align-items:center;gap:2px;padding:2px;display:inline-flex}.grammar-transform-motion>span{color:#647894;margin:0 5px 0 7px;font-size:.61rem}.grammar-transform-motion button{color:#526b89;cursor:pointer;min-height:25px;font:inherit;letter-spacing:.04em;text-transform:uppercase;background:0 0;border:0;border-radius:999px;padding:3px 7px;font-size:.61rem;font-weight:850}.grammar-transform-motion button[aria-pressed=true]{color:#fff;background:#1261f4}.grammar-transform-motion button:focus-visible{outline-offset:2px;outline:3px solid #1261f43d}.grammar-transform-tabs{flex-wrap:wrap;justify-content:center;gap:30px;margin:18px 0 24px;display:flex}.grammar-transform-tabs>span,.grammar-transform-single-label{color:#2a3e5d;background:0 0;border:0;border-bottom:2px solid #0000;min-height:42px;padding:8px 4px;font-size:.92rem;font-weight:780}.grammar-transform-tabs>span.active{border-bottom-color:var(--transform-teal);color:#008b90}.grammar-transform-action-lane button:focus-visible,.grammar-transform-pagination button:focus-visible{outline-offset:3px;outline:3px solid #1261f43d}.grammar-transform-single-label{border-bottom-color:var(--transform-teal);color:#008b90;width:fit-content;margin:18px auto 24px}.grammar-transform-stage{grid-template-columns:minmax(0,1fr) minmax(240px,300px);align-items:center;gap:clamp(32px,5vw,70px);display:grid}.grammar-transform-comparison{min-width:0}.grammar-transform-line{border-block:2px solid #e8eef6;gap:12px;min-height:116px;padding:13px 28px 16px;display:grid}.grammar-transform-line-label{color:#50627f;font-size:.72rem;font-weight:790}.grammar-transform-line.is-incorrect .grammar-transform-line-label{color:#b42334}.grammar-transform-line.is-incorrect .grammar-transform-token{color:#b42334;background:#fff3f4;border-color:#f1a7b0}.grammar-transform-line.is-incorrect .grammar-transform-punctuation{color:#b42334}.grammar-transform-tokens{flex-wrap:wrap;align-items:center;gap:12px;min-height:62px;display:flex}.grammar-transform-token-group{white-space:nowrap;flex:none;align-items:center;gap:5px;display:inline-flex}.grammar-transform-token{background:#fff;border:1px solid #d2dfef;border-radius:12px;place-items:center;min-width:88px;min-height:60px;padding:9px 18px;font-size:clamp(1.45rem,2.4vw,2rem);font-weight:790;line-height:1;display:inline-grid;box-shadow:0 8px 20px #22487b0f}.grammar-transform-token.tone-blue{color:var(--transform-blue)}.grammar-transform-token.tone-teal{color:var(--transform-teal)}.grammar-transform-token.tone-violet{color:var(--transform-violet)}.grammar-transform-token.tone-ink{color:var(--transform-ink)}.grammar-transform-punctuation{color:var(--transform-ink);font-size:clamp(1.45rem,2.4vw,2rem);font-weight:790;line-height:1}.grammar-transform-result:not(.is-visible) .grammar-transform-punctuation{opacity:0}.grammar-transform-result.is-visible .grammar-transform-punctuation{opacity:1;transition:opacity .22s .16s}.grammar-transform-action-lane{place-items:center;min-height:76px;display:grid;position:relative}.grammar-transform-action-lane>span{background:repeating-linear-gradient(90deg,#ced9e8 0 6px,#0000 6px 12px);height:1px;position:absolute;left:5%;right:5%}.grammar-transform-action-lane>span:after{content:"";border-bottom:2px solid #9cb0ce;border-right:2px solid #9cb0ce;width:10px;height:10px;position:absolute;top:50%;left:50%;transform:translate(-50%,-15%)rotate(45deg)}.grammar-transform-action-lane button{z-index:1;color:#0b58dc;cursor:pointer;background:#fff;border:1px solid #b9d1f5;border-radius:999px;min-height:40px;padding:9px 17px;font-size:.78rem;font-weight:820;box-shadow:0 8px 22px #1261f41a}.grammar-transform-action-lane button:hover{background:#f7faff;border-color:#7aa8ed;transform:translateY(-1px)}.grammar-transform-result .grammar-transform-token{opacity:0;transform:translateY(-18px)scale(.94)}.grammar-transform-result.is-visible .grammar-transform-token{opacity:1;transition:opacity .33s ease var(--token-delay), transform .6s cubic-bezier(.16, 1, .3, 1) var(--token-delay);transform:translate(0,0)scale(1)}.grammar-transform-result:not(.is-visible) .motion-from-right{transform:translate(96px,-76px)scale(.94)}.grammar-transform-result:not(.is-visible) .motion-from-left{transform:translate(-72px,-76px)scale(.94)}.grammar-transform-result:not(.is-visible) .motion-insert{transform:translateY(-48px)scale(.72)}.grammar-transform-result:not(.is-visible) .motion-replace{transform:translateY(-22px)scale(.82)}.grammar-transform-rule{opacity:.24;border-left:1px solid #b9dede;align-items:center;gap:20px;min-height:108px;padding-left:22px;transition:opacity .32s,transform .52s cubic-bezier(.16,1,.3,1);display:flex;transform:translate(18px)}.grammar-transform-rule.is-visible{opacity:1;transform:translate(0)}.grammar-transform-rule>span{background:var(--transform-teal);color:#fff;border-radius:50%;flex:0 0 42px;place-items:center;width:42px;height:42px;font-size:1.25rem;font-weight:900;display:grid}.grammar-transform-rule>div{flex:1;min-width:0}.grammar-transform-rule p{color:#0a1731;margin:0;font-size:1rem;font-weight:760;line-height:1.48}.grammar-transform-language{background:#f4fafb;border:1px solid #cfe0eb;border-radius:999px;gap:3px;margin-bottom:9px;padding:3px;display:inline-flex}.grammar-transform-language button{color:#4d6680;cursor:pointer;background:0 0;border:0;border-radius:999px;min-width:34px;min-height:27px;padding:3px 8px;font-size:.68rem;font-weight:850}.grammar-transform-language button[aria-pressed=true]{background:var(--transform-teal);color:#fff;box-shadow:0 4px 10px #07a9aa33}.grammar-transform-language button:focus-visible{outline-offset:2px;outline:3px solid #1261f43d}.grammar-transform-pagination{border-top:1px solid #e5ecf5;grid-template-columns:1fr auto 1fr;align-items:center;gap:18px;margin-top:24px;padding-top:16px;display:grid}.grammar-transform-pagination>button{color:#294c77;cursor:pointer;background:#fff;border:1px solid #c8d7e9;border-radius:9px;width:fit-content;min-height:38px;padding:7px 13px;font-size:.76rem;font-weight:780}.grammar-transform-pagination>button:last-child{justify-self:end}.grammar-transform-pagination>button:disabled{opacity:.35;cursor:default}.grammar-transform-pagination>div{gap:8px;display:flex}.grammar-transform-pagination>div span{background:#cbd7e7;border-radius:50%;width:9px;height:9px}.grammar-transform-pagination>div span[aria-current=page]{background:var(--transform-blue);border-radius:99px;width:24px}.grammar-intro-card-visual>.primary-action{margin-top:0}@media (width>=761px) and (width<=900px){.grammar-transform-stage{grid-template-columns:1fr;gap:24px}.grammar-transform-rule{border-top:1px solid #b9dede;border-left:0;min-height:74px;padding:16px 0 0}}@media (width<=600px){.grammar-intro-card-visual{padding:16px 14px 24px}.grammar-transform-header{align-items:flex-start;margin-inline:2px}.grammar-transform-header>div{flex-direction:column-reverse;align-items:flex-end;gap:6px}.grammar-transform-motion>span{display:none}.grammar-transform-tabs{gap:18px;margin:14px 0 18px}.grammar-transform-tabs>span,.grammar-transform-single-label{font-size:.82rem}.grammar-transform-stage{grid-template-columns:minmax(0,1fr);gap:20px}.grammar-transform-comparison{width:100%}.grammar-transform-line{text-align:center;min-height:98px;padding:11px 4px 13px}.grammar-transform-line-label{text-align:left}.grammar-transform-tokens{justify-content:center;gap:7px;min-height:54px}.grammar-transform-token{border-radius:10px;min-width:62px;min-height:50px;padding:8px 11px;font-size:clamp(1.1rem,6.2vw,1.45rem)}.grammar-transform-punctuation{font-size:clamp(1.1rem,6.2vw,1.45rem)}.grammar-transform-action-lane{min-height:68px}.grammar-transform-result:not(.is-visible) .motion-from-right{transform:translate(54px,-68px)scale(.94)}.grammar-transform-result:not(.is-visible) .motion-from-left{transform:translate(-42px,-68px)scale(.94)}.grammar-transform-rule{border-top:1px solid #b9dede;border-left:0;justify-content:center;gap:12px;min-height:74px;padding:16px 4px 0;transform:translateY(10px)}.grammar-transform-rule.is-visible{transform:translateY(0)}.grammar-transform-rule>span{flex-basis:36px;width:36px;height:36px}.grammar-transform-rule p{font-size:.88rem}.grammar-transform-pagination{margin-top:18px}}@media (prefers-reduced-motion:reduce){.grammar-transform-discover:not(.motion-on) .grammar-transform-result .grammar-transform-token,.grammar-transform-discover:not(.motion-on) .grammar-transform-result.is-visible .grammar-transform-token,.grammar-transform-discover:not(.motion-on) .grammar-transform-rule,.grammar-transform-discover:not(.motion-on) .grammar-transform-rule.is-visible{transition:none;transform:none}}.grammar-transform-discover.motion-off .grammar-transform-result .grammar-transform-token,.grammar-transform-discover.motion-off .grammar-transform-result.is-visible .grammar-transform-token,.grammar-transform-discover.motion-off .grammar-transform-rule,.grammar-transform-discover.motion-off .grammar-transform-rule.is-visible{transition:none;transform:none}.grammar-practice-card{padding:clamp(14px,1.8vw,22px) clamp(18px,2.2vw,30px) clamp(18px,2.2vw,28px)}.grammar-question-meta{justify-content:space-between;align-items:center;gap:16px;display:flex}.grammar-question-meta>div:first-child{align-items:center;gap:12px;display:flex}.grammar-question-meta span{color:#6a7d9d;font-size:.78rem;font-weight:800}.grammar-question-meta>div:first-child>span{color:#6848e8;background:#eee9ff;border-radius:999px;padding:7px 10px}.grammar-progress-summary{align-items:baseline;gap:8px;display:flex}.grammar-progress-summary strong{color:#5c3de0}.grammar-question-progress{background:#e6eaf2;border-radius:999px;height:5px;margin:9px 0 15px;overflow:hidden}.grammar-question-progress span{border-radius:inherit;background:linear-gradient(90deg,#7656ff,#36b9e9);height:100%;transition:width .22s;display:block}.grammar-practice-grid{grid-template-columns:minmax(0,1fr) 184px;gap:16px;display:grid}.grammar-question-column{background:#fbfdff;border-left:3px solid #d9ddff;border-radius:0 16px 16px 0;min-width:0;padding:clamp(16px,2vw,24px)}.grammar-question-column h3{font-size:clamp(1.2rem,1.65vw,1.58rem);line-height:1.16}.grammar-homework-attempt-history{flex-wrap:wrap;gap:10px;margin:16px 0;display:flex}.grammar-homework-attempt-history article{background:#f8fbff;border:1px solid #d8e5f2;border-radius:12px;grid-template-columns:auto auto;gap:2px 12px;min-width:150px;padding:10px 12px;display:grid}.grammar-homework-attempt-history strong{color:#5b3fd8;text-align:right}.grammar-homework-attempt-history small{color:#64748b;grid-column:1/-1}.grammar-dialogue{gap:16px;margin:19px 0;display:grid}.grammar-dialogue-turn{grid-template-columns:38px minmax(0,auto);align-items:center;gap:10px;width:fit-content;max-width:88%;display:grid}.grammar-dialogue-turn.is-right{grid-template-columns:minmax(0,auto) 38px;justify-self:end}.grammar-dialogue-turn.is-right .grammar-speaker-avatar{grid-column:2}.grammar-dialogue-turn.is-right .grammar-dialogue-content{grid-area:1/1;justify-items:end}.grammar-dialogue-content{gap:4px;min-width:0;display:grid}.grammar-dialogue-bubble-wrap{width:fit-content;max-width:100%;position:relative}.grammar-speaker-avatar{color:#3159bd;background:#edf2ff;border-radius:50%;place-items:center;width:38px;height:38px;font-weight:900;display:grid}.grammar-dialogue-turn:nth-child(2n) .grammar-speaker-avatar{color:#087a66;background:#e8f8f2}.grammar-dialogue-turn strong{color:#7383a0;white-space:nowrap;align-items:center;gap:8px;margin:0;font-size:.72rem;display:flex}.grammar-dialogue-turn p{color:#152849;background:#fbfcff;border:1px solid #e1e6f1;border-radius:14px;width:fit-content;max-width:100%;margin:0;padding:14px 18px}.grammar-dialogue-turn.is-left p{background:#f7faff}.grammar-dialogue-turn.is-right p{background:#f7f4ff}.grammar-dialogue-judgment .grammar-dialogue-turn:first-child p{background:#fbfcff}.grammar-dialogue-judgment .grammar-judgment-target p{background:#f5f1ff;border-color:#9b83ff;box-shadow:0 0 0 3px #7657ff1a}.grammar-dialogue-judgment .grammar-judgment-target{margin-top:26px}.grammar-dialogue-judgment .grammar-judgment-target .grammar-dialogue-bubble-wrap{min-width:min(180px,100%)}.grammar-judgment-target-label{color:#5a37dd;letter-spacing:.01em;box-sizing:border-box;white-space:nowrap;background:#ebe5ff;border-radius:999px;align-items:center;max-width:100%;min-height:20px;padding:2px 8px;font-size:.66rem;font-weight:900;display:inline-flex;position:absolute;top:-25px;left:0}.grammar-dialogue-turn.is-right .grammar-judgment-target-label{left:auto;right:0}.grammar-dialogue-blank{color:#6846e7;min-width:70px;min-height:28px;font:inherit;cursor:pointer;vertical-align:middle;background:#fff;border:2px solid #8f75ff;border-radius:8px;place-items:center;margin-inline:4px;padding:2px 8px;font-weight:900;display:inline-grid}.grammar-dialogue-blank.active{background:#f0ebff;box-shadow:0 0 0 3px #7657ff26}.grammar-dialogue-blank.answered:not(.active){color:#147658;border-color:#8bcfb3}.grammar-reconstruction{gap:12px;margin:20px 0;display:grid}.grammar-reconstruction-answer{color:#7b86a0;background:#faf8ff;border:2px dashed #cfc5fb;border-radius:14px;flex-wrap:wrap;align-items:center;gap:8px;min-height:56px;padding:10px 12px;display:flex}.grammar-reconstruction-answer.has-words{background:#f5f1ff;border-style:solid;border-color:#8c73f7}.grammar-reconstruction-answer button,.grammar-word-bank button{color:#172d54;min-height:40px;font:inherit;cursor:pointer;background:#fff;border:1px solid #d7dff0;border-radius:10px;padding:8px 13px;font-weight:900}.grammar-reconstruction-answer button{color:#5b3dd7;border-color:#9d88f6}.grammar-reconstruction-punctuation{color:#253b5d;align-self:center;font-size:1.2rem;font-weight:950}.grammar-word-bank{background:#f4f7fc;border-radius:14px;flex-wrap:wrap;align-content:center;gap:9px;min-height:64px;padding:12px;display:flex}.grammar-word-bank button:hover,.grammar-word-bank button:focus-visible{color:#5b3dd7;border-color:#7657ff}.grammar-reconstruction-tools{justify-content:flex-end;gap:8px;display:flex}.grammar-reconstruction-tools button{color:#536786;cursor:pointer;background:#fff;border:1px solid #d5deed;border-radius:9px;min-height:38px;padding:7px 12px;font-weight:800}.grammar-reconstruction-tools button:disabled{cursor:not-allowed;opacity:.45}.grammar-active-blank{color:#6a4be3;text-align:center;margin:-6px 0 10px;font-size:.78rem;font-weight:900}.grammar-answer-options{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.grammar-answer-options.judgment-options{justify-content:center;gap:10px;display:flex}.grammar-answer-options button{color:#21375e;cursor:pointer;background:#fff;border:1px solid #d9e1ee;border-radius:12px;justify-content:center;align-items:center;gap:10px;min-height:44px;font-weight:900;display:flex}.grammar-answer-options.judgment-options button{width:min(190px,50% - 5px);min-height:52px;padding-inline:18px}.grammar-answer-options button.selected{color:#5b3edc;background:#f1edff;border-color:#7456ff;box-shadow:inset 0 0 0 1px #7456ff}.grammar-answer-options button span{color:#fff;background:#7052ef;border-radius:50%;place-items:center;width:22px;height:22px;display:inline-grid}.grammar-answer-options.function-options button{text-align:left;justify-content:space-between;padding-inline:16px}.grammar-hint-toggle{color:#6847e7;cursor:pointer;background:0 0;border:0;margin-top:12px;font-weight:800}.grammar-hint{color:#326127;background:#eff9ea;border-radius:10px;margin:8px 0 0;padding:10px 12px}.grammar-question-actions,.grammar-review-actions{justify-content:space-between;gap:12px;margin-top:15px;display:flex}.grammar-question-actions button,.grammar-review-actions button{color:#182d53;cursor:pointer;background:#fff;border:1px solid #d5dfef;border-radius:11px;min-height:40px;padding:8px 14px;font-weight:900}.grammar-question-actions button:disabled{cursor:not-allowed;opacity:.45}.grammar-question-actions .primary-action,.grammar-review-actions .primary-action{color:#fff;background:linear-gradient(135deg,#7958ff,#5c3fe0);border-color:#6e50ec}.grammar-progress-card{text-align:center;background:#f6f4ff;border-radius:15px;align-content:start;justify-items:center;gap:12px;padding:18px 14px;display:grid}.grammar-progress-ring{background:conic-gradient(#7455f2 var(--grammar-progress), #e5e8f1 0);border-radius:50%;place-items:center;width:86px;height:86px;display:grid}.grammar-progress-ring:before{content:"";background:#fff;border-radius:50%;grid-area:1/1;width:64px;height:64px}.grammar-progress-ring strong{z-index:1;color:#15294e;grid-area:1/1;font-size:1.05rem}.grammar-progress-card p{color:#617391;margin:0;font-size:.85rem}.grammar-question-dots{grid-template-columns:repeat(3,1fr);gap:5px;display:grid}.grammar-question-dots button{color:#627291;cursor:pointer;background:#fff;border:1px solid #d4deed;border-radius:8px;place-items:center;width:30px;height:30px;display:grid}.grammar-question-dots button.answered{color:#188058;background:#eaf8f1;border-color:#9fdbbc}.grammar-question-dots button.current{color:#5d3ce2;border-color:#7657ff;box-shadow:inset 0 0 0 1px #7657ff}.grammar-review-card{padding:clamp(20px,3vw,38px)}.grammar-review-card>header{justify-content:space-between;align-items:center;gap:18px;display:flex}.grammar-review-card>header>span{color:#6141e1;background:#eee9ff;border-radius:50%;place-items:center;width:82px;height:82px;font-size:1.35rem;font-weight:950;display:grid}.grammar-review-list{gap:10px;margin-top:22px;display:grid}.grammar-review-list article{background:#fff;border:1px solid #e0e6f0;border-left-width:4px;border-radius:13px;grid-template-columns:34px minmax(0,1fr);gap:12px;padding:15px;display:grid}.grammar-review-list article.correct{background:#f8fefa;border-left-color:#20b77d}.grammar-review-list article.incorrect{background:#fff8f8;border-left-color:#f06c73}.grammar-review-list article>span{background:#eef2f8;border-radius:50%;place-items:center;width:30px;height:30px;font-weight:950;display:grid}.grammar-review-list article.correct>span{color:#14805a;background:#dff7ec}.grammar-review-list article.incorrect>span{color:#b62f3b;background:#ffe8e9}.grammar-review-list p,.grammar-review-list small{color:#5e7090;margin:5px 0 0;display:block}.grammar-review-list .grammar-review-answer{border:1px solid #0000;border-radius:9px;align-items:baseline;gap:9px;margin-top:9px;padding:9px 11px;display:flex}.grammar-review-answer.correct-version{color:#116245;background:#eaf9f2;border-color:#bfe8d5}.grammar-review-answer.student-version{color:#962b35;background:#fff0f1;border-color:#f4c7ca}.grammar-review-answer.student-version.original-sentence{color:#385473;background:#f7fbff;border-color:#d7e3f0}.grammar-review-answer span{letter-spacing:.04em;text-transform:uppercase;flex:none;font-size:.68rem;font-weight:900}.grammar-review-answer.correct-version span,.grammar-review-answer.correct-version b{color:#116245}.grammar-review-answer.student-version span,.grammar-review-answer.student-version b{color:#962b35}.grammar-review-answer.student-version.original-sentence span,.grammar-review-answer.student-version.original-sentence b{color:#385473}@media (width<=600px){.grammar-review-list .grammar-review-answer{flex-direction:column;align-items:flex-start;gap:3px}}.grammar-learning-support{background:#f7fbff;border:1px solid #d8e5f2;border-left:4px solid #4f91e8;border-radius:13px;justify-content:space-between;align-items:center;gap:18px;margin-top:18px;padding:15px 16px;display:flex}.grammar-learning-support.strong{background:#f1fbf6;border-left-color:#20b77d}.grammar-learning-support.steady{border-left-color:#4f91e8}.grammar-learning-support.review{background:#fffaf0;border-left-color:#f0ad3d}.grammar-learning-support.restart{background:#f7f4ff;border-left-color:#7657ff}.grammar-learning-support div{gap:3px;display:grid}.grammar-learning-support span{color:#078275;letter-spacing:.08em;text-transform:uppercase;font-size:.7rem;font-weight:900}.grammar-learning-support strong{color:#11254a}.grammar-learning-support p{color:#5e7090;margin:0;font-size:.86rem}.grammar-learning-support button{color:#274a75;cursor:pointer;background:#fff;border:1px solid #c6d5e6;border-radius:9px;flex:none;min-height:38px;padding:8px 12px;font:800 .78rem/1.2 inherit}.grammar-review-infographic{margin-top:12px}.grammar-editor-media-preview{background:#f8fbff;border:1px solid #d8e5f2;border-radius:12px;gap:7px;margin:14px 0 0;padding:10px;display:grid}.grammar-editor-media-preview>span{color:#078275;letter-spacing:.08em;text-transform:uppercase;font-size:.68rem;font-weight:900}.grammar-editor-media-preview img{object-fit:contain;background:#fff;border-radius:8px;width:100%;max-height:150px;display:block}.grammar-editor-media-preview figcaption,.grammar-editor-media-empty{color:#617391;font-size:.76rem;line-height:1.45}.grammar-editor-media-empty{margin:12px 0 0}.grammar-image-manager{background:#f8fbff;border:1px solid #cdddef;border-radius:14px;margin-top:14px;overflow:hidden}.grammar-image-manager>summary{cursor:pointer;color:#0b1935;justify-content:space-between;align-items:center;gap:16px;padding:13px 15px;list-style-position:inside;display:flex}.grammar-image-toggle-close,.grammar-image-manager[open] .grammar-image-toggle-open{display:none}.grammar-image-manager[open] .grammar-image-toggle-close{display:inline}.grammar-image-manager-body{background:#fff;border-top:1px solid #dce7f3;gap:12px;padding:14px;display:grid}.grammar-image-upload-row{align-items:center;gap:10px;display:flex}.grammar-image-upload-row p{color:#617391;flex:1;margin:0;font-size:.78rem}.grammar-image-upload{cursor:pointer;white-space:nowrap;position:relative;overflow:hidden}.grammar-image-upload input{opacity:0;width:1px;height:1px;position:absolute}.grammar-image-search{align-items:end;gap:12px;display:flex}.grammar-image-search label{flex:1}.grammar-image-search input,.grammar-image-attach input,.grammar-image-attach select{border:1px solid #c8d8ea;border-radius:9px;width:100%;min-height:40px}.grammar-image-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;display:grid}.grammar-image-card{background:#f3f7fc;border:2px solid #0000;border-radius:11px;min-width:0;padding:8px}.grammar-image-card.selected{background:#eefaf6;border-color:#0b7f75}.grammar-image-card>button{cursor:pointer;background:#fff;border:0;border-radius:8px;width:100%;height:104px;padding:0;display:block;overflow:hidden}.grammar-image-card img{object-fit:contain;width:100%;height:100%}.grammar-image-card>strong{text-overflow:ellipsis;white-space:nowrap;display:block;overflow:hidden}.grammar-image-card>div{flex-wrap:wrap;gap:5px;margin-top:6px;display:flex}.grammar-image-card>div button,.grammar-image-pagination button{background:#fff;border:1px solid #c5d6e9;border-radius:7px}.grammar-image-preview-dialog{border:0;width:min(980px,100vw - 32px);max-width:none;padding:0}.grammar-image-preview-dialog::backdrop{background:#05132cb8}.grammar-image-preview-panel{padding:16px}.grammar-image-preview-heading,.grammar-image-preview-footer{justify-content:space-between;gap:12px;display:flex}.grammar-image-preview-canvas{max-height:70vh;margin:12px 0;overflow:auto}.grammar-image-preview-canvas img{max-width:100%;margin:auto;display:block}.grammar-image-attach{background:#f2fbf8;border:1px solid #b8ddd3;border-radius:11px;padding:13px}.grammar-image-attach>strong{color:#09695f}.grammar-image-attach>div{grid-template-columns:1.25fr 1fr 1fr auto;align-items:end;gap:8px;margin-top:9px;display:grid}.grammar-image-attach label{color:#365170;gap:4px;font-size:.68rem;font-weight:850;display:grid}.grammar-image-attach .primary-action{white-space:nowrap}@media (width<=1050px){.grammar-image-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.grammar-image-attach>div{grid-template-columns:1fr 1fr}}@media (width<=700px){.grammar-image-upload-row{flex-direction:column;align-items:stretch}.grammar-image-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.grammar-image-attach>div{grid-template-columns:1fr}.grammar-image-manager>summary{align-items:flex-start}}.grammar-schema-note{color:#617392;border:1px dashed #cfdbea;border-radius:12px;margin-top:14px;padding:12px 14px;font-size:.8rem;line-height:1.55}.grammar-schema-note strong{color:#17325d}@media (width<=920px){.grammar-prototype-heading,.grammar-review-card>header{align-items:flex-start}.grammar-prototype-heading,.grammar-intro-card,.grammar-practice-grid{grid-template-columns:1fr}.grammar-prototype-heading{display:grid}.grammar-progress-card{text-align:left;grid-template-columns:auto auto minmax(0,1fr);place-items:center start}.grammar-progress-ring{width:72px;height:72px}.grammar-progress-ring:before{width:54px;height:54px}}@media (width<=600px){.grammar-prototype-shell{padding:0}.grammar-prototype-heading{gap:12px;padding:15px}.grammar-prototype-heading h2{font-size:2.1rem}.grammar-level-picker{grid-template-columns:repeat(3,1fr);width:100%;display:grid}.grammar-level-picker button,.grammar-level-picker span{min-width:0;padding:8px 10px}.grammar-stage-track{padding:10px 8px 25px}.grammar-reconstruction-answer,.grammar-word-bank{gap:7px;padding:9px}.grammar-reconstruction-answer button,.grammar-word-bank button{min-height:38px;padding:7px 10px}.grammar-stage-track>:is(div,button){justify-items:center;gap:4px;font-size:.76rem;display:grid}.grammar-stage-track>:is(div,button) strong{display:none}.grammar-stage-track>:is(div,button).current strong{white-space:nowrap;font-size:.65rem;display:block;position:absolute;top:31px}.grammar-stage-track>:is(div,button):not(:last-child):after{width:28%}.grammar-intro-card{grid-template-columns:1fr;padding:18px}.grammar-intro-card aside{padding:15px}.grammar-question-meta{align-items:flex-start}.grammar-question-meta>div:first-child,.grammar-progress-summary{gap:3px;display:grid}.grammar-practice-card,.grammar-question-column{padding:14px}.grammar-answer-options.judgment-options{justify-content:stretch}.grammar-answer-options.judgment-options button{flex:1 1 0;width:auto;min-width:0}.grammar-practice-grid{gap:12px}.grammar-progress-card{grid-template-columns:72px minmax(0,1fr)}.grammar-progress-card>span,.grammar-question-dots{grid-column:1/-1}.grammar-question-dots,.grammar-question-dots button{width:100%}.grammar-review-card{padding:17px}.grammar-learning-support{gap:12px;display:grid}.grammar-learning-support button{width:100%}.grammar-review-card>header>span{width:64px;height:64px}.grammar-question-actions,.grammar-review-actions{align-items:stretch}.grammar-question-actions button,.grammar-review-actions button{flex:1 1 0}}.streak-ready .streak-progress-image{filter:saturate(.62);opacity:.8}.streak-growing .streak-progress-image,.streak-rolling .streak-progress-image{background-image:url(/streak-progress-3-days.png)}.streak-week .streak-progress-image{background-image:url(/streak-progress-7-days.png)}.streak-champion .streak-progress-image{background-image:url(/streak-progress-14-days.png)}.streak-copy{z-index:3;align-content:center;gap:6px;display:grid;position:relative}.streak-copy h3{color:var(--navy);font-size:clamp(1.24rem,1.7vw,1.55rem);line-height:1.06}.streak-copy>p:not(.eyebrow){color:#405169;max-width:360px;line-height:1.42}.streak-milestones{gap:8px;margin-top:8px;display:flex}.streak-milestones span{color:#657693;background:#ffffffc7;border:1px solid #6f86b433;border-radius:999px;place-items:center;width:29px;height:29px;font-size:.74rem;font-weight:850;display:grid}.streak-milestones span.achieved{color:#fff;background:#16a34a;border-color:#16a34a47;box-shadow:0 7px 14px #16a34a2e}.level-progress-panel{gap:14px;display:grid}.level-progress-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.level-progress-grid article{background:linear-gradient(145deg,#fff,#f7fbff);border:1px solid #6f86b429;border-radius:16px;gap:12px;min-width:0;padding:15px;display:grid}.level-progress-card-heading{justify-content:space-between;align-items:baseline;gap:8px;display:flex}.level-progress-card-heading strong{color:var(--navy);font-size:1.32rem}.level-progress-card-heading span{color:#087f86;text-align:right;font-size:.76rem;font-weight:820}.level-progress-grid meter{width:100%;height:10px}.level-progress-grid meter::-webkit-meter-bar{background:#e8edf5;border:0;border-radius:999px}.level-progress-grid meter::-webkit-meter-optimum-value{background:linear-gradient(90deg,#16a34a,#4ade80);border-radius:999px}.level-progress-grid meter::-moz-meter-bar{background:linear-gradient(90deg,#16a34a,#4ade80);border-radius:999px}.level-progress-card-stats{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.level-progress-card-stats span{min-width:0;color:var(--navy);gap:3px;font-size:.92rem;font-weight:800;display:grid}.level-progress-card-stats b{color:var(--muted);letter-spacing:.04em;text-transform:uppercase;font-size:.68rem;font-weight:820}.student-history-page{min-height:min(680px,100vh - 260px)}.student-history-main{grid-template-columns:repeat(12,minmax(0,1fr))}.student-history-hero{grid-column:1/-1;width:100%;min-width:0;max-width:none;display:block}.student-history-hero>div{max-width:760px}.student-history-page .attempt-history-list article{width:100%}.student-history-page .attempt-history-list{max-height:min(600px,100vh - 340px)}.student-history-card{grid-column:span 12}.student-history-wide{min-height:0}.compact-focus-panel{grid-column:span 5}.progress-panel{align-content:start;gap:12px;display:grid}.progress-overview{grid-template-columns:minmax(132px,.35fr) minmax(0,1fr);align-items:center;gap:18px;display:grid}.score-ring{--score:0%;aspect-ratio:1;background:radial-gradient(circle at center, #fff 0 58%, transparent 59%), conic-gradient(var(--brand-blue) var(--score), #e8edf5 0);text-align:center;border-radius:999px;justify-self:center;place-items:center;width:138px;display:grid;box-shadow:inset 0 0 0 1px #6f86b41f}.score-ring strong,.score-ring span{grid-area:1/1}.score-ring strong{color:var(--navy);align-self:center;font-size:2rem}.score-ring span{max-width:88px;color:var(--muted);align-self:end;margin-bottom:32px;font-size:.78rem;font-weight:760;line-height:1.2;display:none}.progress-bars{gap:11px;display:grid}.progress-bars div{grid-template-columns:minmax(90px,.22fr) minmax(120px,1fr) auto;align-items:center;gap:14px;display:grid}.progress-bars span{color:var(--navy);font-weight:780}.progress-bars strong{color:var(--navy);font-size:.9rem}.progress-bars meter{width:100%;height:9px}.progress-bars meter::-webkit-meter-bar{background:#e8edf5;border:0;border-radius:999px}.progress-bars meter::-webkit-meter-optimum-value{background:linear-gradient(90deg, var(--brand-blue), #39d6d0);border-radius:999px}.progress-bars meter::-moz-meter-bar{background:linear-gradient(90deg, var(--brand-blue), #39d6d0);border-radius:999px}.score-breakdown-panel{gap:12px;display:grid}.score-breakdown-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;display:grid}.score-breakdown-grid article{border:1px solid var(--line);background:linear-gradient(#4f8df40d,#fffffffa),#fbfdff;border-radius:16px;min-width:0;padding:12px}.score-breakdown-grid span{color:var(--muted);text-transform:uppercase;font-size:.76rem;font-weight:820}.score-breakdown-grid strong{color:var(--navy);margin-top:6px;font-size:1.26rem;display:block}.score-breakdown-grid p{color:#405169;margin-top:6px;font-size:.9rem;line-height:1.42}.attempt-history-panel{align-content:start;gap:12px;min-width:0;display:grid}.attempt-history-list{scrollbar-width:thin;gap:8px;max-height:540px;padding-right:4px;display:grid;overflow-y:auto}.student-dashboard-grid .attempt-history-list,.teacher-dashboard-grid .attempt-history-list{max-height:300px}.student-history-wide .attempt-history-list{max-height:230px}.attempt-history-list article{border:1px solid var(--line);background:linear-gradient(#fffffffa,#f8fbfffa),#fff;border-radius:16px;grid-template-columns:minmax(0,1fr) minmax(80px,auto) minmax(96px,auto) minmax(82px,auto) minmax(96px,auto);align-items:center;gap:10px;padding:10px 12px;display:grid}.weekly-chart{border-bottom:1px solid #6f86b429;grid-template-columns:repeat(7,minmax(0,1fr));gap:10px;min-height:190px;padding:6px 10px;display:grid}.weekly-chart div{grid-template-rows:auto minmax(148px,1fr) auto;justify-items:center;gap:5px;min-width:0;display:grid}.weekly-chart div>strong{color:var(--navy);font-size:.82rem}.weekly-chart>div>span{--activity-height:8%;width:min(34px,72%);height:var(--activity-height);background:linear-gradient(#0b5cff,#39d6d0);border-radius:999px 999px 8px 8px;align-self:end;min-height:10px;box-shadow:0 10px 24px #0b5cff2e}.weekly-chart small{width:100%;color:var(--muted);text-align:center;white-space:nowrap;font-size:.78rem;font-weight:760;line-height:1.12;display:block}.weekly-chart-day{grid-template-rows:repeat(2,auto);justify-items:center;gap:2px;display:grid!important}.weekly-chart-day span{min-width:0;display:block}.monthly-chart{grid-template-columns:repeat(12,minmax(0,1fr));overflow-x:visible}.weekly-summary-strip{background:#f8fbff;border:1px solid #6f86b424;border-radius:14px;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;display:grid;overflow:hidden}.weekly-summary-strip article{border-right:1px solid #6f86b424;padding:7px 10px}.weekly-summary-strip article:last-child{border-right:0}.weekly-summary-strip span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:820}.weekly-summary-strip strong{color:var(--navy);margin-top:3px;font-size:1rem;display:block}.period-toggle{background:#f8fbff;border:1px solid #6f86b429;border-radius:999px;gap:4px;padding:4px;display:inline-flex}.period-toggle a{color:var(--muted);text-transform:uppercase;border-radius:999px;padding:5px 9px;font-size:.76rem;font-weight:820}.period-toggle a.active{color:#fff;background:#0b5cff}.teacher-history-list article{grid-template-columns:minmax(180px,1fr) auto auto auto auto;align-items:center;gap:7px 10px;min-height:54px;padding-block:8px;overflow:hidden}.teacher-history-list strong,.teacher-history-list span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.teacher-history-list article>div{grid-area:1/1}.teacher-history-list article>span:first-of-type{grid-area:1/2;justify-self:end}.teacher-history-list article>span:nth-of-type(2){grid-area:1/3;justify-self:end}.teacher-history-list .review-status-badge{grid-area:1/4;justify-self:end}.teacher-history-list .submission-link{grid-area:1/5;align-self:center}.teacher-history-list .answer-detail{text-overflow:ellipsis;white-space:nowrap;grid-area:2/1/auto/-1;align-self:end;line-height:1.35;overflow:hidden}.attempt-history-list div{gap:3px;min-width:0;display:grid}.attempt-history-list strong,.attempt-history-list span{overflow-wrap:anywhere;min-width:0}.attempt-history-list strong{color:var(--navy)}.attempt-history-list span{color:var(--muted);font-size:.9rem}.attempt-history-list .history-good{color:#17663d;font-weight:800}.attempt-history-list .history-review{color:#8a5a00;font-weight:800}.review-status-badge{text-transform:uppercase;background:#fff9ef;border:1px solid #ffbf3c85;border-radius:999px;justify-self:start;padding:5px 8px;font-weight:850;color:#8a5a00!important;font-size:.76rem!important}.review-status-badge.reviewed{background:#f5f8fb;border-color:#7896d238;color:#5a6a80!important}.attempt-history-list .answer-detail{color:#405169;overflow-wrap:anywhere;grid-column:1/-1;min-width:0;font-size:.84rem;line-height:1.42}.submission-link{color:#1f4ea5;justify-self:end;font-size:.88rem;font-weight:850;text-decoration:none}.submission-link:hover{text-decoration:underline}.student-name-link{color:var(--navy);font-weight:850;text-decoration:none}.student-name-link:hover{color:#0b5cff;text-decoration:underline}.detail-page-shell{width:min(1120px,100% - 32px);margin:44px auto 72px}.student-history-shell{width:min(100% - 28px,1540px)}.submission-detail-panel{gap:18px;display:grid}.submission-detail-panel .panel-heading h1{color:var(--navy);font-size:clamp(2.1rem,5vw,3.9rem);line-height:.98}.submission-summary-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.submission-summary-grid article{border:1px solid var(--line);background:linear-gradient(#4f8df40d,#fffffffa),#fbfdff;border-radius:8px;padding:15px}.submission-summary-grid span{color:var(--muted);text-transform:uppercase;margin-bottom:8px;font-size:.78rem;font-weight:850;display:block}.submission-summary-grid strong{color:var(--navy);overflow-wrap:anywhere;font-size:1.08rem}.student-history-panel{gap:18px;display:grid}.student-history-panel .panel-heading{align-items:start}.student-history-panel .panel-heading h1{max-width:980px;font-size:clamp(3rem,5.2vw,5.4rem);line-height:.92}.student-history-panel .panel-heading p{color:var(--muted);overflow-wrap:anywhere;margin:6px 0 0;font-size:1rem}.student-history-summary{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.student-history-summary article{background:linear-gradient(#25d5cd14,#fffffffa),#fbfdff;border:1px solid #6f86b42e;border-radius:14px;min-width:0;padding:15px}.student-history-summary span{color:var(--muted);text-transform:uppercase;font-size:.76rem;font-weight:850;display:block}.student-history-summary strong{color:var(--navy);margin-top:10px;font-size:2rem;display:block}.student-history-summary p{color:#405169;margin:6px 0 0;line-height:1.35}.student-review-list{gap:12px;display:grid}.student-homework-library{gap:16px;display:grid}.teacher-homework-summary{margin-top:0}.homework-filter-bar{background:#f8fbffdb;border:1px solid #145bff1f;border-radius:16px;justify-content:space-between;align-items:center;gap:12px;padding:10px 12px;display:flex}.homework-filter-buttons{flex-wrap:wrap;gap:8px;display:flex}.homework-filter{color:#405169;cursor:pointer;background:#fff;border:1px solid #6f86b438;border-radius:999px;align-items:center;gap:8px;min-height:36px;padding:0 12px;font-weight:850;display:inline-flex}.homework-filter small{color:#24446f;background:#eef4ff;border-radius:999px;place-items:center;min-width:22px;min-height:22px;font-size:.72rem;font-weight:900;display:inline-grid}.homework-filter.active{color:var(--teal-dark);background:linear-gradient(135deg,#25d5cd33,#0b5cff1f);border-color:#007b7a6b}.homework-filter-bar p{color:var(--muted);white-space:nowrap;margin:0;font-size:.82rem;font-weight:800}.teacher-homework-grid{grid-template-columns:1fr}.teacher-homework-card{grid-template-columns:minmax(260px,1fr) minmax(86px,auto) minmax(152px,auto) minmax(96px,auto) minmax(146px,auto);gap:14px;min-height:60px;padding:10px 14px}.teacher-homework-card.homework-row-pass{background:#bbf7d0;border-color:#16a34a}.teacher-homework-card.homework-row-review{background:#fde68a;border-color:#f59e0b}.teacher-homework-card.homework-row-neutral{background:#fff}.teacher-homework-card.homework-row-pass .level-browser-metric,.teacher-homework-card.homework-row-pass .level-browser-status,.teacher-homework-card.homework-row-review .level-browser-metric,.teacher-homework-card.homework-row-review .level-browser-status{border-left-color:#0f172a29}.teacher-homework-card .level-browser-main,.teacher-homework-card .level-browser-metric,.teacher-homework-card .level-browser-status{min-width:0}.teacher-homework-card .level-browser-title-row strong{white-space:nowrap;text-overflow:ellipsis;overflow-wrap:normal;overflow:hidden}.teacher-homework-card .level-browser-metric span,.teacher-homework-card .level-browser-metric strong,.teacher-homework-card .level-browser-status span,.teacher-homework-card .level-browser-status a,.teacher-homework-card .disabled-open{white-space:nowrap}.teacher-homework-card .level-browser-status{min-width:108px}.teacher-homework-empty{grid-column:1/-1}.disabled-open{background:#f5f8fb;border-radius:14px;place-items:center;min-height:40px;padding:0 14px;font-weight:850;display:inline-grid;color:#7a8798!important}.compact-heading h2{color:var(--navy);font-size:clamp(1.8rem,4vw,2.6rem);line-height:1}.student-history-review-list{max-height:620px}.student-history-review-list article{grid-template-columns:minmax(220px,1fr) auto auto auto auto}.detail-result-list{gap:10px;display:grid}.review-exercise-layout{grid-template-columns:minmax(0,1fr);align-items:stretch;gap:16px;display:grid}.review-dialogue-panel,.review-question-panel{border:1px solid var(--line);background:#fbfdff;border-radius:8px;grid-template-rows:auto minmax(0,1fr);gap:14px;min-width:0;padding:16px;display:grid}.review-dialogue-transcript{scrollbar-width:thin;min-height:0;max-height:520px;padding-right:4px;overflow-y:auto}.detail-result-row{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:minmax(0,1fr) minmax(86px,auto);align-items:center;gap:12px;padding:14px;display:grid}.detail-result-row div{gap:4px;min-width:0;display:grid}.detail-result-row strong{color:var(--navy)}.detail-result-row p{color:var(--navy);margin:0;font-weight:760;line-height:1.42}.detail-result-row span{color:#405169;overflow-wrap:anywhere}.detail-result-row>span{font-weight:850}.detail-result-row.detail-good{background:#f1fbf6;border-color:#a8d7c0}.detail-result-row.detail-good>span{color:#17663d}.detail-result-row.detail-review{background:#fff8e8;border-color:#ffd58a}.detail-result-row.detail-review>span{color:#8a5a00}.panel{padding:22px}.access-panel{align-content:start;gap:16px;min-height:260px;display:grid}.access-panel p{color:#405169;line-height:1.58}.access-panel .primary-action{justify-self:start}.access-control-panel{gap:18px;display:grid}.access-summary-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;display:grid}.access-summary-grid article,.allowlist-table article,.access-callout{border:1px solid var(--line);background:#fff;border-radius:8px}.access-summary-grid article{min-height:108px;padding:18px}.access-summary-grid strong{margin-top:10px;font-size:1.55rem;display:block}.allowlist-table{gap:10px;display:grid}.allowlist-table article{grid-template-columns:minmax(220px,1.2fr) minmax(100px,.4fr) minmax(0,1fr);align-items:center;gap:10px;padding:14px;display:grid}.allowlist-table span{color:var(--muted)}.allowlist-table strong{color:var(--navy)}.access-callout{padding:16px 18px}.access-callout strong{color:var(--navy)}.access-callout p{color:#405169;margin-top:8px;line-height:1.55}.teacher-ops-panel{align-content:start;gap:12px;display:grid}.review-workspace-panel{align-content:start;gap:12px;min-width:0;display:grid}.teacher-dashboard-grid{grid-template-columns:minmax(320px,.8fr) minmax(420px,1.2fr);grid-auto-rows:minmax(0,auto)}.teacher-grid-wide{grid-column:span 2}.teacher-grid-full{grid-column:1/-1}.teacher-grid-card,.compact-access-panel{min-width:0;height:100%;min-height:0}.teacher-overview-operations{grid-template-columns:minmax(0,1fr)}.teacher-overview-operations .teacher-grid-card{min-height:420px}.teacher-overview-operations .access-roster-list,.teacher-overview-operations .attempt-history-list{max-height:560px}.teacher-exercise-content-main{min-height:calc(100vh - 160px)}.exercise-content-workspace{min-height:min(760px,100vh - 230px)}.access-roster-list{scrollbar-width:thin;gap:8px;max-height:222px;padding-right:4px;display:grid;overflow:hidden auto}.access-roster-workspace{gap:10px;min-width:0;display:grid}.access-search-form{gap:6px;display:grid}.access-search-form label{color:var(--muted);text-transform:uppercase;font-size:.76rem;font-weight:820}.access-search-form input{border:1px solid var(--line);width:100%;min-height:34px;color:var(--navy);font:inherit;background:#fff;border-radius:12px;padding:7px 10px}.access-roster-row{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:minmax(160px,1fr) minmax(208px,auto);grid-template-areas:"person actions""badges actions";align-items:center;gap:4px 10px;padding:8px 10px;display:grid}.access-row-approved{background:#bbf7d0;border-color:#22c55e}.access-row-pending{background:#fde68a;border-color:#f59e0b}.access-row-blocked{background:#fecaca;border-color:#ef4444}.access-filter-row{flex-wrap:wrap;gap:8px;display:flex}.access-filter-row button{color:#405169;min-height:34px;font:inherit;cursor:pointer;background:#fff;border:1px solid #6f86b433;border-radius:999px;padding:7px 11px;font-size:.82rem;font-weight:820}.access-filter-row button.active{color:#fff;background:#0b5cff;border-color:#0b5cff52}.access-person,.access-badges,.access-actions{gap:4px;min-width:0;display:grid}.access-person{grid-area:person}.access-person strong,.access-person .student-name-link,.access-person span,.access-badges small{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.access-badges{flex-wrap:wrap;grid-area:badges;place-items:center start;gap:4px 8px;display:flex}.access-actions{flex-wrap:wrap;grid-area:actions;justify-content:flex-end;align-items:center;gap:6px;display:flex}.access-password-reset{align-items:center;gap:6px;display:flex}.access-password-reset input{width:128px;min-height:36px;color:var(--navy);font:inherit;background:#ffffffe0;border:1px solid #6f86b442;border-radius:10px;padding:7px 9px;font-size:.82rem}.access-password-reset .secondary-action{min-height:36px;padding:7px 10px;font-size:.82rem}.danger-action{color:#991b1b;background:#fffffff0;border-color:#ef444447;min-height:36px;padding:7px 10px;font-size:.82rem}.access-badges span,.access-badges small{line-height:1.2}.practice-section-hero{margin-top:0}.practice-section-hero h1{font-size:clamp(1.8rem,2.6vw,2.55rem)}.practice-quick-stats{grid-template-columns:repeat(3,minmax(88px,1fr));gap:10px;min-width:min(360px,100%);display:grid}.practice-quick-stats article{background:#ffffffdb;border:1px solid #6f86b429;border-radius:12px;gap:4px;min-height:72px;padding:12px 14px;display:grid}.practice-quick-stats span{color:var(--muted);text-transform:uppercase;font-size:.72rem;font-weight:820}.practice-quick-stats strong{color:var(--navy);font-size:1.18rem}.practice-library-shell{margin-top:0;scroll-margin-top:24px}.exercise-admin-panel{scroll-margin-top:24px}.exercise-admin-grid{grid-template-columns:minmax(260px,.9fr) minmax(320px,1.1fr);align-items:stretch;gap:14px;display:grid}.exercise-performance-strip{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:0 0 14px;display:grid}.exercise-performance-strip article{background:linear-gradient(145deg,#faffff,#effafa);border:1px solid #cfe8e8;border-radius:12px;gap:2px;min-width:0;padding:10px 12px;display:grid}.exercise-performance-strip strong{color:var(--teal-dark);font-size:.8rem}.exercise-performance-strip span{color:var(--navy);font-size:1.25rem;font-weight:880}.exercise-performance-strip small{color:#405169;font-size:.76rem;line-height:1.3}.exercise-import-form,.owner-exercise-list article{border:1px solid var(--line);background:#ffffffd6;border-radius:12px}.exercise-import-form{align-content:start;gap:12px;padding:16px;display:grid}.exercise-import-form p{color:var(--muted);margin-top:6px;line-height:1.45}.exercise-import-form input{width:100%;min-width:0}.exercise-import-form input[type=file]{color:var(--navy);border:1px solid var(--line);cursor:pointer;background:#ffffffd9;border-radius:10px;padding:10px 12px;transition:border-color .16s,box-shadow .16s,background-color .16s,transform .12s}.exercise-import-form input[type=file]::file-selector-button{appearance:none;color:#fff;cursor:pointer;background:linear-gradient(135deg,#0b5cff,#126bff);border:1px solid #0b5cff24;border-radius:8px;margin-inline-end:12px;padding:10px 14px;font-weight:760;transition:transform .12s,box-shadow .16s,background-color .16s}.exercise-import-form input[type=file]:hover{border-color:#0b5cff47;box-shadow:0 10px 28px #0b5cff14}.exercise-import-form input[type=file]:hover::file-selector-button{box-shadow:0 10px 24px #0b5cff33}.exercise-import-form input[type=file]:active::file-selector-button{transform:translateY(1px)}.exercise-import-dropzone{min-height:112px;color:var(--navy);text-align:center;cursor:pointer;background:#f7fbff;border:2px dashed #b9cfee;border-radius:14px;place-items:center;gap:4px;padding:18px;transition:border-color .16s,background-color .16s,box-shadow .16s;display:grid;position:relative}.exercise-import-dropzone:hover,.exercise-import-dropzone.dragging{background:#eef5ff;border-color:#0b5cff;box-shadow:0 10px 28px #0b5cff1a}.exercise-import-dropzone>span{font-weight:850}.exercise-import-dropzone>small{color:var(--muted)}.exercise-import-dropzone input[type=file]{opacity:0;cursor:pointer;width:100%;height:100%;margin:0;position:absolute;inset:0}.exercise-import-selection{min-width:0;color:var(--muted);background:#f4f7fb;border-radius:10px;gap:6px;padding:10px 12px;font-size:.78rem;display:grid}.exercise-import-selection strong{color:var(--navy)}.exercise-import-selection ul{gap:3px;max-height:112px;margin:0;padding-left:18px;display:grid;overflow:auto}.exercise-import-selection li{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.exercise-import-level{gap:6px;display:grid}.exercise-import-level span,.owner-exercise-search span,.owner-exercise-level-filter span{color:var(--muted);letter-spacing:.08em;text-transform:uppercase;font-size:.76rem;font-weight:760}.exercise-import-level select,.owner-exercise-search input,.owner-exercise-level-filter select{border:1px solid var(--line);width:100%;min-width:0;min-height:44px;color:var(--navy);font:inherit;background:#ffffffd9;border-radius:10px;padding:10px 12px}.owner-exercise-browser{gap:10px;display:grid}.owner-exercise-filter-row{grid-template-columns:minmax(0,1fr) minmax(130px,170px);align-items:end;gap:10px;display:grid}.owner-exercise-browser-meta{color:var(--muted);align-items:baseline;gap:8px;font-size:.84rem;display:flex}.owner-exercise-browser-meta strong{color:var(--navy);font-size:.95rem}.owner-exercise-search,.owner-exercise-level-filter{gap:6px;display:grid}.owner-exercise-list{scrollbar-width:thin;gap:8px;height:100%;max-height:396px;padding-right:4px;display:grid;overflow-y:auto}.owner-exercise-list article{grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;min-height:70px;padding:11px 12px;display:grid}.owner-exercise-summary{min-width:0}.owner-exercise-actions{gap:10px;min-width:0;display:flex}.owner-exercise-actions>*,.owner-exercise-actions form,.owner-exercise-actions button{min-width:0}.owner-exercise-actions .secondary-action,.owner-exercise-actions .icon-action{min-height:42px;padding:8px 14px}.owner-exercise-actions .icon-action{min-width:42px;padding-inline:10px}.exercise-import-report{background:#f8fbff;border:1px solid #c9d9ef;border-radius:14px;gap:10px;margin-bottom:14px;padding:14px;display:grid}.exercise-import-report>div{grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:12px;display:grid}.exercise-import-report>div span{color:var(--muted);font-size:.82rem;font-weight:760}.exercise-import-report-dismiss{color:#345579;cursor:pointer;background:#fff;border:1px solid #bcd0ea;border-radius:9px;place-items:center;width:30px;height:30px;padding:0;font-weight:900;display:grid}.exercise-import-report ul{gap:7px;max-height:220px;margin:0;padding:0;list-style:none;display:grid;overflow:auto}.exercise-import-report li{border-radius:10px;grid-template-columns:minmax(160px,.45fr) minmax(0,1fr);gap:10px;padding:9px 10px;font-size:.8rem;display:grid}.exercise-import-report li.success{color:#087448;background:#eaf8f1}.exercise-import-report li.failed{color:#9f1f2d;background:#fff1f1}.exercise-import-report li strong,.exercise-import-report li span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.owner-exercise-list strong,.owner-exercise-list span{text-overflow:ellipsis;white-space:nowrap;min-width:0;display:block;overflow:hidden}.owner-exercise-list span{color:var(--muted);margin-top:2px;font-size:.82rem}.owner-exercise-note{color:var(--muted);margin-top:8px;font-size:.82rem;display:block}.exercise-editor-panel{gap:16px;display:grid}.exercise-editor-panel .panel-heading{align-items:start}.exercise-editor-panel .panel-heading p{color:var(--muted);margin-top:8px;line-height:1.45}.exercise-json-editor{gap:12px;display:grid}.json-editor-toolbar{background:linear-gradient(135deg,#25d5cd14,#0b5cff0f),#fff;border:1px solid #145bff1f;border-radius:14px;grid-template-columns:minmax(150px,auto) minmax(240px,1fr) minmax(220px,auto);align-items:center;gap:12px;padding:12px;display:grid}.json-editor-toolbar span,.json-editor-toolbar p{color:var(--muted);font-size:.76rem;font-weight:850}.json-editor-toolbar strong{color:var(--navy);margin-top:3px;font-size:1.12rem;display:block}.json-editor-toolbar p{margin:0;line-height:1.35}.speaker-voice-panel{background:linear-gradient(135deg,#eef5ffe6,#f1fdfce6);border:1px solid #0b5cff2e;border-radius:14px;grid-template-columns:minmax(220px,.62fr) minmax(0,1.38fr);align-items:center;gap:16px;padding:15px 16px;display:grid}.speaker-voice-panel>div>span{color:var(--teal-dark);letter-spacing:.08em;text-transform:uppercase;font-size:.73rem;font-weight:900}.speaker-voice-panel h2{color:var(--navy);margin:3px 0 4px;font-size:1.25rem}.speaker-voice-panel p{color:var(--muted);margin:0;font-size:.84rem;line-height:1.45}.speaker-voice-list{flex-wrap:wrap;gap:9px;display:flex}.speaker-voice-list label{background:#ffffffd1;border:1px solid #0b5cff24;border-radius:10px;grid-template-columns:auto auto;align-items:center;column-gap:8px;min-width:172px;padding:9px 10px;display:grid}.speaker-voice-list strong{color:var(--navy);font-size:.86rem}.speaker-voice-list select{min-height:30px;color:var(--navy);font:inherit;background:#fff;border:1px solid #0b5cff3d;border-radius:7px;padding:3px 7px;font-size:.78rem}.speaker-voice-list span{color:var(--brand-blue-dark);grid-column:1/-1;margin-top:5px;font-size:.72rem;font-weight:800}.exercise-audio-setup{background:linear-gradient(135deg,#eef5ffe0,#f1fdfce6);border:1px solid #0b5cff29;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;margin-bottom:14px;padding:13px 14px;display:flex}.exercise-audio-setup strong{color:var(--navy)}.exercise-audio-setup p{max-width:640px;color:var(--muted);margin:4px 0 0;font-size:.84rem;line-height:1.4}.json-level-picker{flex-wrap:wrap;gap:8px;display:flex}.level-pill{color:#405169;cursor:pointer;background:#fff;border:1px solid #6f86b438;border-radius:999px;min-width:52px;min-height:38px;font-weight:900}.level-pill.active{color:var(--teal-dark);background:linear-gradient(135deg,#25d5cd40,#0b5cff24);border-color:#007b7a6b}.level-pill:disabled{cursor:not-allowed;opacity:.55}.json-editor-grid{grid-template-columns:minmax(0,1.35fr) minmax(280px,.65fr);align-items:stretch;gap:14px;display:grid}.json-editor-input{gap:10px;min-width:0;display:grid}.exercise-json-editor label{color:var(--navy);font-weight:850}.exercise-json-editor textarea{resize:vertical;border:1px solid var(--line);color:#eaf2ff;tab-size:2;background:#061936;border-radius:12px;width:100%;min-height:min(56vh,640px);padding:16px;font-family:SFMono-Regular,Consolas,Liberation Mono,monospace;font-size:.9rem;line-height:1.55}.json-preview-panel{border:1px solid var(--line);background:linear-gradient(#fffffffa,#f4fafff5),#fff;border-radius:12px;align-content:start;gap:12px;min-width:0;padding:16px;display:grid}.json-quality-panel{background:linear-gradient(135deg,#138e8e14,#fffffff5),#fff;border:1px solid #138e8e38;border-radius:14px;gap:14px;padding:18px;display:grid}.json-quality-panel .panel-heading p{color:var(--muted);margin-top:5px;line-height:1.4}.json-quality-grid{grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;display:grid}.json-quality-grid article{background:#ffffffdb;border:1px solid #6f86b42e;border-radius:12px;gap:4px;min-width:0;padding:12px;display:grid}.json-quality-grid span{color:var(--muted);text-transform:uppercase;font-size:.74rem;font-weight:820}.json-quality-grid strong{color:var(--navy);text-overflow:ellipsis;white-space:nowrap;font-size:.92rem;overflow:hidden}.json-guidance-row{justify-content:space-between;align-items:center;gap:14px;display:flex}.json-guidance-row p{max-width:820px;color:var(--muted);margin:0;line-height:1.45}.json-preview-summary{gap:10px;display:grid}.json-preview-summary article{background:#fff;border:1px solid #6f86b424;border-radius:10px;gap:3px;padding:10px 12px;display:grid}.json-preview-summary span,.json-validation-list strong{color:var(--muted);text-transform:uppercase;font-size:.74rem;font-weight:850}.json-preview-summary strong{color:var(--navy);overflow-wrap:anywhere}.json-preview-question-list{scrollbar-width:thin;gap:8px;max-height:260px;padding-right:4px;display:grid;overflow-y:auto}.json-preview-question-list p,.json-validation-list p{color:#405169;margin:0;line-height:1.45}.json-preview-question-list strong{color:var(--teal-dark);margin-right:6px}.json-validation-list{background:#fff9ef;border:1px solid #ffbf3c75;border-radius:10px;gap:9px;padding:12px;display:grid}.editor-action-row{flex-wrap:wrap;align-items:center;gap:10px;display:flex}.secondary-editor-row{margin-top:-8px}.student-preview-panel{background:linear-gradient(#fffffffa,#f4f9fff5),#fff;border:1px solid #0b5cff2e;border-radius:14px;gap:14px;margin-top:4px;padding:16px;display:grid}.student-preview-panel .panel-heading p{color:var(--muted);margin-top:5px;line-height:1.4}.student-preview-grid{grid-template-columns:minmax(0,1.1fr) minmax(280px,.9fr);align-items:start;gap:14px;display:grid}.student-preview-dialogue,.student-preview-questions{border:1px solid var(--line);background:#fff;border-radius:12px;min-width:0;padding:14px}.student-preview-dialogue .dialogue-transcript{max-height:460px}.student-preview-question{background:#fbfdff;border:1px solid #6f86b429;border-radius:10px;gap:8px;padding:12px;display:grid}.student-preview-question+.student-preview-question{margin-top:10px}.student-preview-question>strong{color:var(--teal-dark);text-transform:uppercase;font-size:.78rem}.student-preview-question p{color:var(--navy);margin:0;font-weight:800;line-height:1.35}.student-preview-choice-list{gap:7px;display:grid}.student-preview-choice-list span{border:1px solid var(--line);color:#405169;background:#fff;border-radius:8px;padding:9px 10px;line-height:1.35}.access-person span,.access-badges span{color:var(--muted);font-size:.86rem}.access-badges small{color:var(--muted);font-size:.74rem}.access-actions{grid-auto-columns:max-content;grid-auto-flow:column;align-items:center;gap:8px}.icon-action{border:1px solid var(--line);width:36px;height:36px;color:var(--navy);background:#fff;border-radius:8px;justify-content:center;align-items:center;font-size:.95rem;font-weight:800;transition:background-color .16s,border-color .16s,box-shadow .16s,color .16s,transform .12s;display:inline-flex}.icon-action.allow{color:var(--teal-dark)}.icon-action.allow:hover:not(:disabled),.icon-action.allow:focus-visible{background:#eef6f7;border-color:#1f8a8a52;box-shadow:0 8px 22px #1f8a8a1f}.icon-action.block{color:#9a1f37}.icon-action.block:hover:not(:disabled),.icon-action.block:focus-visible{background:#fff1f3;border-color:#9a1f3747;box-shadow:0 8px 22px #9a1f371a}.icon-action.confirmed{color:#17663d;opacity:1;background:#edf9f2;border-color:#1f8a5b42}.icon-action:disabled{cursor:not-allowed;opacity:.6}.icon-action.confirmed:disabled{opacity:1}.preview-callout{background:#f8fbfd}.review-result-banner{border:1px solid var(--line);color:var(--navy);background:#f8fbfd;border-radius:8px;padding:12px 14px;font-weight:700}.review-result-banner.success{color:var(--teal-dark);background:#eef6f7;border-color:#006c802e}.ops-action-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;display:grid}.ops-action-grid article,.request-summary-strip div{border:1px solid var(--line);background:#fff;border-radius:8px}.ops-action-grid article{min-height:0;padding:12px}.ops-action-grid strong{color:var(--navy)}.ops-action-grid p{color:#405169;margin-top:6px;font-size:.9rem;line-height:1.4}.request-summary-strip{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.request-summary-strip div{min-height:102px;padding:18px}.request-summary-strip strong{color:var(--navy);margin-top:10px;font-size:1.4rem;display:block}.panel-heading{justify-content:space-between;align-items:flex-start;gap:16px;margin-bottom:12px;display:flex}.panel-heading h2{font-size:clamp(1.35rem,2.1vw,2rem)}.student-list,.management-table{scrollbar-width:thin;gap:8px;max-height:300px;padding-right:4px;display:grid;overflow:hidden auto}.student-list article,.management-table article{border:1px solid var(--line);background:#fff;border-radius:8px;align-items:center;gap:8px;min-width:0;padding:10px 12px;display:grid}.student-list article{grid-template-columns:minmax(0,1fr) auto auto}.student-list p{color:var(--muted);margin-top:4px}.student-list span{color:var(--teal-dark);font-weight:820}.student-list a{color:var(--teal-dark);background:#eef6f7;border-radius:8px;padding:8px 10px;font-weight:760}.level-browser{gap:16px;display:grid}.level-browser-heading{margin-bottom:0}.level-browser-heading p{color:#405169;margin-top:8px;line-height:1.5}.level-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;display:grid}.reading-library-search{width:min(100%,460px);display:block}.reading-library-search input{border:1px solid var(--line);width:100%;min-height:44px;color:var(--navy);font:inherit;background:#fff;border-radius:12px;padding:10px 14px}.reading-library-search input:focus{border-color:var(--brand-blue);outline:3px solid #0b5cff1f}.level-tab{border:1px solid var(--line);min-height:54px;color:var(--navy);cursor:pointer;background:linear-gradient(#fffffff5,#f8fbfffa),#fff;border-radius:8px;justify-content:space-between;align-items:center;gap:10px;padding:12px 14px;transition:background-color .16s,border-color .16s,box-shadow .16s,transform .12s;display:flex}.level-tab span{font-weight:820}.level-tab small{color:var(--muted);white-space:nowrap;font-size:.78rem;font-weight:760}.level-tab:hover{background:linear-gradient(#effbfbd1,#fffffffa),#f8fbfd;border-color:#1f8a8a47}.level-tab:active{transform:translateY(1px)}.level-tab.active{background:linear-gradient(135deg, #1f8a8afa, #49b6adeb), var(--teal);color:#fff;border-color:#1f8a8ab8;box-shadow:0 14px 28px #1f8a8a2e,inset 0 0 0 1px #ffffff3d}.level-tab.active small{color:#ffffffeb}.level-browser-body{gap:14px;display:grid}.level-browser-overview{background:linear-gradient(135deg,#eafcfaeb,#f4f8fffa),#f4fbfb;border:1px solid #1f8a8a33;border-radius:18px;grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;padding:12px;display:grid}.level-browser-overview-card{background:linear-gradient(#fffffff5,#ebf9f8c2),#fff;border:1px solid #1f8a8a2e;border-radius:14px;gap:4px;min-width:0;padding:12px 14px;display:grid;box-shadow:0 10px 24px #1f375b0f}.level-browser-overview-card span{color:var(--teal-dark);text-transform:uppercase;font-size:.74rem;font-weight:820}.level-browser-overview-card strong{color:var(--navy);font-size:1.12rem}.level-browser-overview-card small{color:#405169;font-size:.8rem;line-height:1.35}.level-browser-list{scrollbar-width:thin;gap:10px;max-height:430px;padding-right:4px;display:grid;overflow-y:auto}.level-browser-empty{border:1px solid var(--line);background:#fff;border-radius:8px}.level-browser-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;display:grid}.level-browser .level-browser-card{background:#fff;border:1px solid #7896d247;border-left-width:8px;border-radius:14px;grid-template-columns:106px minmax(0,1fr);align-items:stretch;gap:18px;width:100%;min-width:0;min-height:132px;padding:18px;transition:border-color .16s,box-shadow .16s,transform .12s;display:grid;overflow:hidden;box-shadow:0 12px 28px #1f375b14}.level-browser .level-browser-card.level-card-pass{background:linear-gradient(90deg,#ecfdf3 0%,#f8fffb 100%);border-color:#22c55e}.level-browser .level-browser-card.level-card-review{background:linear-gradient(90deg,#fffbeb 0%,#fffdf5 100%);border-color:#f59e0b}.level-browser .level-browser-card.level-card-neutral{background:linear-gradient(90deg,#f4f8ff 0%,#fff 100%);border-color:#2f80ed}.level-browser .level-browser-card:hover{transform:translateY(-1px);box-shadow:0 16px 34px #1f375b21}.level-browser-state-rail{align-content:space-between;justify-items:start;min-width:0;display:grid}.level-browser-icon{letter-spacing:.04em;border-radius:12px;place-items:center;width:54px;height:54px;font-size:.9rem;font-weight:900;display:inline-grid}.level-card-pass .level-browser-icon{color:#087035;background:#bbf7d0}.level-card-review .level-browser-icon{color:#92400e;background:#fde68a}.level-card-neutral .level-browser-icon{color:#1d4ed8;background:#eaf2ff}.level-browser-content{grid-template-rows:auto 1fr auto;grid-template-columns:minmax(0,1fr) 96px;gap:12px 18px;width:100%;min-width:0;display:grid}.level-browser-main{grid-area:1/1/auto/-1;gap:4px;min-width:0;display:grid}.level-browser-title-row{min-width:0}.level-browser-title-row strong{color:var(--navy);overflow-wrap:normal;white-space:normal;font-size:1.06rem;line-height:1.2;display:block}.level-browser-level{color:#365887;letter-spacing:.04em;background:#edf4ff;border:1px solid #d3e0f7;border-radius:999px;align-self:center;padding:.2rem .48rem;font-size:.72rem;font-weight:800}.level-browser-metrics{grid-area:2/1/auto/-1;grid-template-columns:repeat(3,minmax(0,1fr));align-self:center;min-width:0;display:grid}.level-browser-metric{white-space:nowrap;border-left:1px solid #7896d229;gap:4px;min-width:0;padding-left:18px;display:grid}.level-browser-attempts{border-left:0;padding-left:0}.level-browser-metric span,.level-browser-status span{color:var(--muted);text-transform:uppercase;font-size:.76rem;font-weight:820}.level-browser-metric strong{color:var(--navy);font-size:.98rem}.level-browser-status{white-space:nowrap;border-left:0;grid-area:3/2;justify-content:flex-end;align-items:center;min-width:0;padding-left:0;display:flex}.level-browser-badge{min-height:28px;color:var(--muted);text-transform:uppercase;white-space:nowrap;background:#fff;border:1px solid #7896d23d;border-radius:999px;place-self:end start;align-items:center;gap:6px;padding:5px 8px;font-size:.66rem;font-weight:860;line-height:1;display:inline-flex}.level-browser-badge small{font-size:.68rem;font-weight:900}.level-browser-status a{color:#0b5cff;text-align:center;background:#fff;border:1px solid #0b5cff47;border-radius:8px;min-width:92px;padding:8px 14px;font-weight:760}.level-browser-badge.pass{color:#087035;background:#dcfce7;border-color:#16a34a59}.level-browser-status.pass a{color:#087035;background:#f0fdf4;border-color:#16a34a61}.level-browser-badge.review{color:#92400e;background:#fef3c7;border-color:#f59e0b75}.level-browser-status.review a{color:#92400e;background:#fffbeb;border-color:#f59e0b80}.level-browser-status.reviewed a{color:#5a6a80;background:#f5f8fb}.level-browser-badge.neutral{color:#1d4ed8;background:#eff6ff;border-color:#2f80ed38}.level-browser-status.neutral a{color:#1d4ed8;background:#fff;border-color:#2f80ed61}.level-browser-empty{padding:18px 16px}.level-browser-empty strong{color:var(--navy)}.level-browser-empty p{color:#405169;margin-top:8px;line-height:1.55}.exercise-workspace{gap:18px;max-width:1540px;margin:0 auto;padding-top:clamp(24px,5vw,46px);display:grid}.exercise-page-heading{border:1px solid var(--line);background:radial-gradient(circle at 92% 18%,#0b5cff1a,#0000 26%),#ffffffe6;border-radius:18px;justify-content:space-between;align-items:flex-start;gap:18px;padding:22px;display:flex;box-shadow:0 22px 60px #14213d14}.exercise-page-heading h1{margin-top:8px;font-size:clamp(2.2rem,5vw,4.4rem)}.exercise-page-heading p:not(.eyebrow){color:#405169;max-width:620px;margin-top:10px;line-height:1.5}.owner-test-heading{border-color:#0b5cff2e}.exercise-heading-actions{gap:10px;min-width:min(280px,100%);display:grid}.exercise-progress-strip{background:linear-gradient(135deg,#eafcfaf5,#eff6fff5),#eef6f7;border:1px solid #c8e2e4;border-radius:12px;gap:4px;padding:14px 16px;display:grid}.exercise-progress-strip span{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:820}.exercise-progress-strip strong{color:var(--teal-dark)}.exercise-header-result{background:linear-gradient(135deg,#eff6ff,#f8fbff);border:1px solid #0b5cff38;border-radius:12px;gap:2px;padding:14px 16px;display:grid}.exercise-header-result strong{color:var(--brand-blue-dark);font-variant-numeric:tabular-nums;font-size:clamp(1.9rem,4vw,2.8rem);line-height:1}.exercise-header-result span{color:#405169;font-size:.84rem;font-weight:760}.dialogue-exercise-grid{grid-template-columns:1fr;align-items:start;gap:18px;display:grid}.reading-panel,.exercise-question{gap:16px;display:grid}.dialogue-panel{min-height:560px}.dialogue-transcript{scrollbar-width:thin;flex-direction:column;gap:12px;max-height:min(640px,68vh);padding:8px 6px 8px 2px;display:flex;overflow-y:auto}.dialogue-line{justify-content:flex-start;align-items:end;gap:8px;width:100%;display:flex;position:relative}.dialogue-line.right{flex-direction:row-reverse;justify-content:flex-start}.dialogue-line.right .dialogue-bubble{background:linear-gradient(#eff6fffa,#e5f0fffa),#edf5ff;border-color:#0b5cff33}.dialogue-avatar{width:34px;height:34px;color:var(--teal-dark);background:linear-gradient(135deg,#dff8f7,#eefcff);border-radius:999px;place-items:center;font-size:.86rem;font-weight:850;display:grid;box-shadow:inset 0 0 0 1px #1f8a8a24}.dialogue-line.right .dialogue-avatar{color:var(--brand-blue-dark);background:linear-gradient(135deg,#dfeaff,#eef5ff);box-shadow:inset 0 0 0 1px #0b5cff24}.dialogue-bubble{background:linear-gradient(#f1fdfcfa,#e8f8f7fa),#eefafa;border:1px solid #1f8a8a2e;border-radius:16px 16px 16px 6px;width:fit-content;min-width:0;max-width:min(560px,100% - 90px);padding:10px 13px;box-shadow:0 10px 24px #14213d0f}.dialogue-translation-trigger{appearance:none;color:inherit;cursor:default;font:inherit;text-align:left}.dialogue-translation-trigger:disabled{cursor:default}.dialogue-translation-trigger.translation-enabled{cursor:pointer}.dialogue-translation-trigger.translation-enabled:hover,.dialogue-translation-trigger.translation-enabled:focus-visible,.dialogue-line.translation-active .dialogue-translation-trigger{border-color:var(--brand-blue);outline:none;box-shadow:0 10px 24px #0b5cff24}.dialogue-translation-popover{z-index:12;background:#fff;border:1px solid #2d42692e;border-radius:12px;width:min(366px,100vw - 94px);padding:16px 18px;position:absolute;top:calc(100% + 10px);left:46px;box-shadow:0 18px 42px #11224033}.dialogue-line.right .dialogue-translation-popover{left:auto;right:46px}.translation-sheet-handle{display:none}.translation-popover-heading{color:var(--navy);align-items:center;gap:10px;display:flex}.translation-icon{background:var(--brand-blue);color:#fff;border-radius:6px;place-items:center;width:28px;height:28px;font-size:.85rem;font-weight:900;display:grid}.translation-close{width:32px;height:32px;color:var(--navy);cursor:pointer;background:0 0;border:0;border-radius:6px;margin-left:auto;font-size:1.7rem;line-height:1}.translation-close:hover,.translation-close:focus-visible{background:#f1f5fb;outline:none}.translation-copy{margin-top:18px}.translation-copy+.translation-copy{border-top:1px solid #dfe5ed;padding-top:16px}.translation-copy span{color:var(--muted);font-size:.77rem;font-weight:750;display:block}.translation-copy p{color:#26364f;font-family:var(--font-reading), var(--font-manrope), Arial, Helvetica, sans-serif;margin:6px 0 0;font-size:1rem;line-height:1.45}.translation-result p{color:var(--navy);font-size:1.12rem;font-weight:720}.translation-launcher{color:var(--brand-blue-dark);cursor:pointer;background:#fff;border:1px solid #0b5cff52;border-radius:8px;justify-self:center;padding:8px 12px;font-size:.86rem;font-weight:800}.translation-launcher:hover,.translation-launcher:focus-visible{background:#eef5ff;outline:none}.dialogue-line.right .dialogue-bubble{border-radius:16px 16px 6px}.dialogue-bubble p{color:#26364f;font-family:var(--font-reading), var(--font-manrope), Arial, Helvetica, sans-serif;margin:0;font-size:clamp(.98rem,1.15vw,1.08rem);font-weight:430;line-height:1.5}.dialogue-line.evidence-highlight{box-shadow:none;background:0 0;border-color:#0000}.dialogue-line.evidence-highlight .dialogue-bubble{box-shadow:inset 4px 0 0 var(--gold), 0 12px 26px #f2b84b24;background:linear-gradient(#fff9ebfa,#fff2ccfa),#fff8e8;border-color:#f2b84bd1}.exercise-question{width:100%;min-width:0;position:static;overflow:clip}.question-text{color:var(--navy);overflow-wrap:anywhere;font-size:1.12rem;font-weight:760}.choice-list{gap:14px;width:100%;min-width:0;max-width:100%;display:grid}.choice-list .primary-action{white-space:normal;justify-self:stretch;width:100%;max-width:100%}.question-group{border:1px solid var(--line);background:#fbfdff;border-radius:8px;gap:10px;min-width:0;margin:0;padding:14px;display:grid}.question-group legend{width:100%;color:var(--navy);gap:4px;margin-bottom:2px;padding:0;font-weight:800;line-height:1.35;display:grid}.question-group legend span{color:var(--teal-dark);text-transform:uppercase;font-size:.76rem;font-weight:850}.choice-card{border:1px solid var(--line);color:#26364f;background:#fff;border-radius:8px;grid-template-columns:auto minmax(0,1fr);justify-self:stretch;align-items:start;gap:10px;width:100%;min-width:0;max-width:100%;padding:14px 16px;line-height:1.45;transition:background-color .16s,border-color .16s,box-shadow .16s,transform .12s;display:grid}.choice-card:hover{background:#f8fbfd;border-color:#1f8a8a47;box-shadow:0 8px 24px #14213d0f}.choice-card:has(input:focus-visible){outline-offset:2px;outline:3px solid #0b5cff38}.choice-card:active{transform:translateY(1px)}.choice-card input{min-width:0;accent-color:var(--teal);margin-top:4px}.choice-card span{overflow-wrap:anywhere;word-break:normal;min-width:0}.choice-card.selected{color:var(--teal-dark);box-shadow:inset 4px 0 0 var(--teal);background:#eef6f7;border-color:#1f8a8a5c;font-weight:760}.choice-card.correct{color:#17663d;background:#eaf8ef;border-color:#17663d73;font-weight:820}.choice-card.incorrect{color:#9a1f37;background:#fff1f3;border-color:#9a1f376b;font-weight:820}.choice-card.correct input{accent-color:#17663d}.choice-card.incorrect input{accent-color:#9a1f37}.choice-card:has(input:disabled){cursor:default}.choice-card:has(input:disabled):active{transform:none}.feedback-card{border:1px solid var(--line);background:#f8fbfd;border-radius:8px;width:100%;min-width:0;max-width:100%;padding:14px 16px}.feedback-card strong{color:var(--navy)}.feedback-card p{color:#405169;overflow-wrap:anywhere;margin-top:6px;line-height:1.55}.feedback-card small{color:var(--muted);margin-top:10px;font-weight:760;display:block}.evidence-button-row{flex-wrap:wrap;gap:8px;margin-top:12px;display:flex}.question-evidence-button{margin-top:2px}.evidence-button{width:fit-content;max-width:100%;min-height:34px;color:var(--teal-dark);overflow-wrap:anywhere;background:#fff;border:1px solid #1f8a8a3d;border-radius:8px;justify-self:start;padding:7px 10px;font-size:.86rem;font-weight:820;line-height:1.2;transition:background-color .16s,border-color .16s,box-shadow .16s,transform .12s}.evidence-button:hover{background:#eef6f7;border-color:#1f8a8a61}.evidence-button:active{transform:translateY(1px)}.evidence-button[aria-pressed=true]{color:#8a5a00;background:#fff8e8;border-color:#f2b84bd1;box-shadow:0 8px 20px #f2b84b1f}.feedback-card.success{background:#edf9f2;border-color:#1f8a5b3d}.feedback-card.success strong{color:#17663d}.feedback-card.review{background:#fff8e8;border-color:#f2b84b6b}.feedback-card.warning{background:#fff7ed;border-color:#f59e0b6b}.inline-feedback{background:#ffedd5;border-color:#f59e0b;order:-1;box-shadow:0 12px 28px #f59e0b1f}.exercise-submit-action:disabled{color:#1d4ed8;background:#dbeafe}.owner-test-grid .choice-list{gap:12px}.owner-test-question{align-content:start}.test-mode-banner{background:#eef4ff;border:1px solid #0b5cff2e;border-radius:10px;gap:4px;padding:12px 14px;display:grid}.test-mode-banner strong{color:var(--brand-blue-dark)}.test-mode-banner p{color:#405169;margin:0;line-height:1.35}.management-table article{grid-template-columns:minmax(0,1.15fr) minmax(0,1fr) auto auto}.management-table span{color:var(--muted);overflow-wrap:anywhere;min-width:0}.management-table strong{overflow-wrap:anywhere;min-width:0}.sign-in-page{background:linear-gradient(135deg, #1f8a8a1a, #fff0 48%), var(--background)}.signin-layout{grid-template-columns:minmax(0,.86fr) minmax(360px,.58fr);align-items:center;gap:clamp(28px,6vw,76px);max-width:1080px;min-height:calc(100vh - 118px);margin:0 auto;padding-top:clamp(40px,8vw,78px);display:grid}.signin-copy p:not(.eyebrow){color:#405169;max-width:600px;margin-top:18px;line-height:1.58}.signin-note{border-left:3px solid var(--teal);max-width:560px;color:var(--teal-dark);padding-left:14px}.signin-card{border:1px solid var(--line);background:var(--panel);border-radius:8px;padding:clamp(22px,4vw,30px);box-shadow:0 22px 60px #14213d1a}.signin-card-header span,.teacher-access span{color:var(--muted);text-transform:uppercase;font-size:.78rem;font-weight:820}.signin-card-header h2{margin-top:10px;font-size:clamp(2rem,4vw,3.4rem)}.signin-form{gap:14px;margin-top:24px;display:grid}.compact-form{gap:12px;margin-top:14px}.signin-form label{color:var(--navy);gap:7px;font-weight:740;display:grid}.signin-form input{border:1px solid var(--line);width:100%;min-height:46px;color:var(--navy);font:inherit;background:#fff;border-radius:8px;padding:12px 13px}.password-field{border:1px solid var(--line);background:#fff;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:stretch;display:grid;overflow:hidden}.signin-form .password-field input{border:0;border-radius:0;min-height:44px}.password-field button{border:0;border-left:1px solid var(--line);color:#0b5cff;min-width:64px;font:inherit;cursor:pointer;background:#eef6ff;padding:0 12px;font-size:.86rem;font-weight:820}.password-field button:hover{background:#dbeafe}.signin-form input::placeholder{color:#94a3b8}.google-action{border:1px solid var(--line);min-height:46px;color:var(--navy);background:#fff;border-radius:8px;justify-content:center;align-items:center;padding:12px 18px;font-weight:760;display:inline-flex}.signin-links{color:var(--teal-dark);flex-wrap:wrap;justify-content:space-between;gap:10px;margin-top:16px;font-weight:720;display:flex}.signup-divider{color:var(--muted);text-transform:uppercase;align-items:center;gap:12px;margin-top:20px;font-size:.78rem;font-weight:820;display:flex}.signup-divider:before,.signup-divider:after{content:"";background:var(--line);flex:1;height:1px}.request-status{border:1px solid var(--line);color:var(--navy);background:#f8fbfd;border-radius:8px;margin-top:16px;padding:11px 12px;font-weight:700;line-height:1.4}.request-status.success{color:var(--teal-dark);background:#eef6f7;border-color:#1f8a8a33}.request-status.error{color:#9f1239;background:#fff1f2;border-color:#ef444447}.request-status .recovery-reference{letter-spacing:.02em;overflow-wrap:anywhere;margin-top:8px;font-size:.82rem;display:block}.field-help{color:var(--muted);font-size:.88rem;line-height:1.45}.teacher-access{border-top:1px solid var(--line);justify-content:space-between;align-items:center;gap:12px;margin-top:24px;padding-top:18px;display:flex}.teacher-access a{color:var(--navy);font-weight:820}.signin-divider-row{justify-items:center;gap:10px;margin-top:18px;display:grid}.inline-switch{text-align:center;justify-content:center;min-width:min(100%,320px)}.signin-mode-note{color:var(--muted);margin:0;font-size:.86rem;font-weight:800}@media (width>=1280px){.dialogue-exercise-grid{grid-template-columns:minmax(0,1fr) minmax(480px,.48fr);align-items:stretch}.dialogue-panel{grid-template-rows:auto minmax(0,1fr);height:100%;min-height:0}.dialogue-panel .dialogue-transcript{height:100%;min-height:0;max-height:none}.review-exercise-layout{grid-template-columns:minmax(0,1fr) minmax(420px,.48fr)}.review-dialogue-panel,.review-question-panel{height:100%}.review-dialogue-transcript,.detail-result-list{height:100%;min-height:0;max-height:none}.exercise-question{position:sticky;top:24px}}@media (width<=920px){.dashboard-loading-shell{grid-template-columns:1fr;width:min(100% - 28px,760px)}.loading-sidebar{min-height:86px}.loading-metric-grid,.loading-dashboard-grid,.loading-dashboard-grid.teacher,.hero-grid,.summary-band,.shell-grid,.step-grid,.exercise-layout,.insight-grid,.route-hero,.signin-layout,.portal-layout,.exercise-workspace,.role-choice-grid,.student-dashboard-grid,.teacher-dashboard-grid,.metric-grid,.json-quality-grid,.teacher-metrics{grid-template-columns:1fr}.json-guidance-row{flex-direction:column;align-items:stretch}.weekly-activity-panel,.progress-panel,.streak-panel,.student-history-card,.compact-focus-panel,.teacher-grid-wide{grid-column:auto}.score-breakdown-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.hero-grid{min-height:auto}.nav-links{display:none}.app-version{margin-left:0}.summary-band article{border-bottom:1px solid #ffffff24;border-right:0}.teacher-table>div{grid-template-columns:1fr}.portal-sidebar{min-height:auto;position:static}.exercise-page-heading{flex-direction:column}.dashboard-hero,.progress-overview,.practice-quick-stats{grid-template-columns:1fr}.dashboard-hero{display:grid}.level-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.management-table article,.student-list article,.attempt-history-list article,.teacher-history-list article,.student-history-review-list article,.teacher-homework-card,.submission-summary-grid,.student-history-summary,.detail-result-row,.allowlist-table article,.access-roster-row,.access-summary-grid,.ops-action-grid,.request-summary-strip{grid-template-columns:1fr}.access-actions{grid-area:auto;grid-auto-columns:auto;grid-auto-flow:row;justify-self:start}.access-roster-row{grid-template-areas:"person""badges""actions"}.access-person{grid-area:person}.access-badges{grid-area:badges}.submission-link{justify-self:start}.portal-layout,.teacher-portal,.level-browser-grid{grid-template-columns:1fr}.level-browser-overview{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-command-grid,.access-summary-grid,.activity-filters,.command-action-grid{grid-template-columns:1fr}.teacher-activity-table-head{display:none}.teacher-activity-table article{grid-template-columns:1fr 1fr;gap:7px 12px}.teacher-activity-table article>a:first-child{grid-column:1/-1}.teacher-activity-table article>.submission-link{justify-self:start}.command-attention-list article{grid-template-columns:auto minmax(0,1fr)}.command-attention-list article>a{grid-column:2;justify-self:start}}@media (width<=560px){.student-homework-art{width:62px;height:62px;right:4px}.student-metric:has(.student-homework-art){padding-right:64px}.streak-showcase{grid-template-columns:104px minmax(0,1fr);gap:10px;min-height:150px}.streak-art{width:100px;height:100px}.teacher-activity-table article{grid-template-columns:1fr}.teacher-activity-table article>a:first-child{grid-column:auto}}@media (width<=920px){.teacher-exercise-content-main,.exercise-content-workspace,.exercise-admin-grid,.exercise-admin-grid>*,.owner-exercise-browser,.owner-exercise-search,.owner-exercise-list{box-sizing:border-box;width:100%;min-width:0;max-width:100%}.exercise-admin-grid{grid-template-columns:minmax(0,1fr)}.exercise-audio-setup{flex-direction:column;align-items:stretch}.exercise-audio-setup .secondary-action{width:100%}.exercise-import-form input[type=file]{max-width:100%;overflow:hidden}.owner-exercise-list{max-height:420px;overflow-x:hidden}.owner-exercise-list article{grid-template-columns:minmax(0,1fr);align-items:stretch}.owner-exercise-filter-row{grid-template-columns:minmax(0,1fr) minmax(120px,160px)}.owner-exercise-actions{grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.owner-exercise-actions .secondary-action,.owner-exercise-actions .icon-action,.owner-exercise-actions form{justify-content:center;width:100%}}@media (width<=560px){.exercise-performance-strip{grid-template-columns:repeat(2,minmax(0,1fr))}.exercise-admin-panel{padding-inline:12px}.owner-exercise-filter-row,.exercise-import-report li{grid-template-columns:minmax(0,1fr)}}@media (width<=720px){.level-browser-overview{grid-template-columns:1fr}}@media (width<=560px){.hero{padding-top:18px}.streak-showcase{grid-template-columns:112px minmax(0,1fr);gap:12px;min-height:176px}.streak-art{width:110px;height:110px;transform:none}.streak-starting .streak-art{transform:none}.streak-copy h3{font-size:1.14rem}.streak-copy>p:not(.eyebrow){font-size:.86rem}.streak-milestones{gap:5px}.level-progress-grid,.score-breakdown-grid{grid-template-columns:1fr}.topbar{align-items:flex-start;gap:14px}h1{font-size:2.85rem}.brand-mark{width:42px;height:42px;font-size:.82rem}.brand strong{font-size:.94rem}.brand small{font-size:.76rem}.level-browser .level-browser-card{border-left-width:6px;grid-template-columns:82px minmax(0,1fr);gap:12px;min-height:124px;padding:14px}.level-browser-content{grid-template-columns:minmax(0,1fr) 82px;gap:8px 10px}.level-browser-icon{border-radius:10px;width:46px;height:46px}.level-browser-title-row strong{font-size:.98rem}.level-browser-metrics{gap:0}.level-browser-metric{padding-left:9px}.level-browser-metric span,.level-browser-status span{font-size:.64rem}.level-browser-metric strong{font-size:.88rem}.level-browser-badge{padding:4px 6px;font-size:.58rem}.level-browser-status a{min-width:76px;padding:7px 10px}.score-strip{grid-template-columns:1fr}.dialogue-bubble{max-width:calc(100% - 48px)}.dialogue-translation-popover{z-index:100;width:100%;max-height:min(62dvh,520px);padding:12px 22px calc(22px + env(safe-area-inset-bottom));color-scheme:light only;background:#fff;border:0;border-radius:22px 22px 0 0;position:fixed;inset:auto 0 0;overflow-y:auto;box-shadow:0 -18px 44px #1122403d}.dialogue-line.right .dialogue-translation-popover{left:0;right:0}.translation-sheet-handle{background:#b5bfcd;border-radius:999px;width:42px;height:4px;margin:0 auto 12px;display:block}.translation-result p{font-size:1.18rem}.teacher-access{flex-direction:column;align-items:flex-start}.level-tabs{grid-template-columns:repeat(2,minmax(0,1fr))}.account-footer{margin-top:28px}}@media (width<=720px){.speaker-voice-panel{grid-template-columns:1fr}.speaker-voice-list label{flex:100%}.level-tabs{grid-template-columns:1fr}}@media (width<=767px){body>.dialogue-translation-popover{width:100%;max-height:min(62dvh,520px);padding:12px 22px calc(22px + env(safe-area-inset-bottom));color-scheme:light only;background:#fff;border:0;border-radius:22px 22px 0 0;position:fixed;inset:auto 0 0;overflow-y:auto;box-shadow:0 -18px 44px #1122403d}.translation-sheet-handle{display:block}}.sidebar-count{min-width:22px;color:var(--brand-blue-dark);text-align:center;background:#fff;border-radius:999px;margin-left:auto;padding:2px 7px;font-size:.7rem;font-weight:850}.sidebar-count-review{color:#9a5700;background:#fff0d0;box-shadow:0 0 0 1px #e291102e}.sidebar-count-attention{color:#a21c32;background:#ffe1e5;box-shadow:0 0 0 1px #bf233d2e}.homework-main{gap:18px}.homework-manager-panel,.student-homework-manager-panel{padding:clamp(18px,3vw,28px)}.homework-manager-heading{border-bottom:1px solid #dbe7f8;justify-content:space-between;align-items:center;gap:24px;padding-bottom:18px;display:flex}.homework-manager-heading h1{margin-top:7px;font-size:clamp(2rem,3.2vw,2.85rem);line-height:1.03}.homework-manager-heading p:not(.eyebrow){color:var(--muted);margin-top:7px;font-size:.93rem}.homework-manager-heading .primary-action{min-width:148px}.homework-heading-actions{flex-wrap:wrap;flex:none;justify-content:flex-end;align-items:center;gap:10px;display:flex}.homework-today{color:var(--teal-dark);white-space:nowrap;font-size:.88rem;font-weight:800}.student-homework-attention{min-width:74px;color:var(--brand-blue-dark);background:#f4f8ff;border:1px solid #cce0ff;border-radius:12px;justify-items:end;padding:10px 12px;display:grid}.student-homework-attention strong{color:var(--brand-blue);font-size:1.55rem;line-height:1}.student-homework-attention span{color:var(--muted);font-size:.72rem;font-weight:750}.homework-manager-controls{grid-template-columns:minmax(180px,260px) auto auto minmax(300px,380px);justify-content:start;align-items:end;gap:11px;padding:18px 0;display:grid}.homework-student-picker-filter{grid-template-columns:minmax(180px,1fr) minmax(180px,1fr);gap:8px;min-width:min(100%,420px);display:grid}.homework-search,.homework-student-select{color:var(--muted);gap:6px;font-size:.72rem;font-weight:780;display:grid}.homework-search input,.homework-student-select select{width:100%;min-height:42px;color:var(--navy);outline-color:var(--brand-blue);background:#fff;border:1px solid #c9dcff;border-radius:9px;padding:10px 12px}.homework-search span,.homework-student-select span{clip:rect(0 0 0 0);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.homework-manager-controls .homework-filter-tabs{flex-wrap:nowrap;align-self:end;gap:6px}.homework-manager-controls .homework-filter-tabs a{white-space:nowrap;min-height:42px;padding:9px 11px}.homework-filter-apply{min-height:42px;color:var(--brand-blue-dark);background:#f1f6ff;border:1px solid #b9d0fa;border-radius:9px;padding:9px 13px;font-size:.82rem;font-weight:800}.student-homework-controls{grid-template-columns:minmax(180px,1fr) auto auto;align-items:end;gap:11px;padding:18px 0;display:grid}.student-homework-controls .homework-filter-tabs{flex-wrap:nowrap;align-self:end;gap:6px}.student-homework-controls .homework-filter-tabs a{white-space:nowrap;min-height:42px;padding:9px 11px}.homework-manager-panel .homework-list{padding-top:2px}.homework-hero{align-items:center;min-height:0}.homework-hero h1{font-size:clamp(2.7rem,5vw,4.6rem)}.homework-hero-count{text-align:right;background:#f7fbff;border:1px solid #bdd3ff;border-radius:16px;min-width:176px;padding:18px;display:grid}.homework-hero-count strong{color:var(--brand-blue);font-size:2.4rem;line-height:1}.homework-hero-count span{color:var(--muted);font-size:.82rem;font-weight:760}.homework-toolbar{justify-content:space-between;align-items:center;gap:18px;padding:18px;display:flex}.homework-student-picker{flex-wrap:wrap;align-items:end;gap:8px;display:flex}.homework-student-picker label,.homework-form-grid label,.writing-workspace-label{color:var(--navy);gap:7px;font-size:.8rem;font-weight:820;display:grid}.homework-student-picker select,.homework-form-grid input,.homework-form-grid select,.homework-form-grid textarea,.writing-workspace-label textarea{outline-color:var(--brand-blue);width:100%;color:var(--navy);background:#fff;border:1px solid #c9dcff;border-radius:10px;padding:11px 12px}.homework-summary{flex-wrap:wrap;gap:14px;display:flex}.homework-summary span{color:var(--muted);gap:1px;font-size:.74rem;font-weight:760;display:grid}.homework-summary b{color:var(--navy);font-size:1.25rem}.homework-filter-tabs{flex-wrap:wrap;gap:9px;display:flex}.homework-filter-tabs a{min-height:42px;color:var(--navy);background:#fffc;border:1px solid #d9e5f8;border-radius:10px;align-items:center;gap:8px;padding:9px 14px;font-size:.86rem;font-weight:790;display:inline-flex}.homework-filter-tabs a.active{border-color:var(--brand-blue);color:var(--brand-blue-dark);background:#eef5ff}.homework-filter-tabs small{background:#eaf1ff;border-radius:999px;place-items:center;min-width:20px;min-height:20px;font-size:.7rem;display:grid}.homework-list{gap:12px;display:grid}.homework-card{border:1px solid #d8e5f8;border-left:5px solid var(--brand-blue);background:#ffffffeb;border-radius:18px;grid-template-columns:166px minmax(0,1fr) 142px 156px;align-items:stretch;display:grid;overflow:hidden;box-shadow:0 12px 30px #29539114}.homework-card-overdue{background:linear-gradient(90deg,#fff8f1,#ffffffeb 42%);border-left-color:#ff7a31}.homework-card-submitted{border-left-color:#42a5f5}.homework-card-done{background:linear-gradient(90deg,#f2fcf7,#ffffffeb 42%);border-left-color:#36b784}.homework-type-art{width:140px;height:140px;min-height:0;color:var(--brand-blue);font-size:2rem;font-family:var(--font-space-grotesk), sans-serif;background:linear-gradient(145deg,#eff6ff,#fcfeff);align-self:center;place-items:center;margin:16px auto;font-weight:850;display:grid;overflow:hidden}.homework-type-writing{color:#8b5cf6;background:linear-gradient(145deg,#f6f1ff,#fdfbff)}.homework-type-listening{color:#168c89;background:linear-gradient(145deg,#eafafa,#fdffff)}.homework-card-copy{min-width:0;padding:17px 18px}.homework-card-meta{color:var(--muted);flex-wrap:wrap;align-items:center;gap:7px;font-size:.8rem;font-weight:780;display:flex}.homework-card-meta>span:not(.homework-status){background:#eff5ff;border-radius:999px;padding:3px 7px}.homework-status{text-transform:uppercase;letter-spacing:.05em;border-radius:999px;padding:4px 9px;font-size:.73rem;font-weight:850}.homework-status-due-soon{color:#1665ce;background:#eaf3ff}.homework-status-overdue{color:#cf4e12;background:#fff0e5}.homework-status-submitted{color:#1575b8;background:#e5f5ff}.homework-status-done{color:#187b59;background:#e8f8ef}.homework-card h2{margin-top:10px;font-size:1.18rem;line-height:1.12}.homework-card p{color:var(--muted);margin-top:7px;font-size:.89rem;line-height:1.45}.homework-card .homework-student-name{color:var(--teal-dark);font-weight:760}.homework-card-due{min-height:0;color:var(--muted);text-align:center;border-left:1px solid #e4ecf8;align-content:center;justify-items:center;gap:5px;margin:0;padding:14px 16px;font-size:.84rem;display:grid}.homework-card-due strong{color:var(--navy);font-size:1rem}.homework-card-due small{color:var(--teal-dark);font-size:.82rem;font-weight:800}.homework-card-actions{align-content:center;justify-items:center;gap:8px;padding:14px;display:grid}.homework-card-actions form{display:grid}.homework-card-actions .primary-action,.homework-card-actions .secondary-action{width:min(100%,116px);min-height:40px;padding:8px 12px;font-size:.84rem}.homework-card-message{color:var(--muted);text-align:center;font-size:.8rem;font-weight:760}.homework-card-message.success{color:var(--teal-dark)}.homework-summary-row{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.homework-summary-row article{background:#ffffffd9;border:1px solid #d9e5f8;border-radius:14px;padding:16px}.homework-summary-row span{color:var(--muted);font-size:.78rem;font-weight:760}.homework-summary-row strong{color:var(--navy);margin-top:4px;font-size:1.65rem;display:block}.homework-editor-details{max-width:920px;margin:0 auto;padding:26px}.homework-form-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:15px;margin-top:24px;display:grid}.homework-form-wide{grid-column:1/-1}.homework-form-grid small{color:var(--muted);font-size:.72rem;font-weight:650}.homework-editor-note{color:var(--teal-dark);background:#f0fcfa;border:1px solid #cceeea;border-radius:12px;gap:4px;margin-top:18px;padding:15px;display:grid}.homework-editor-note span{color:var(--muted);font-size:.86rem}.homework-progress-legend,.homework-progress-empty{color:var(--muted);background:#f8fbff;border:1px solid #d8e5f8;border-radius:11px;flex-wrap:wrap;align-items:center;gap:10px 16px;margin-top:16px;padding:11px 13px;font-size:.78rem;display:flex}.homework-progress-legend span,.homework-progress-pills{align-items:center;gap:6px;display:flex}.homework-progress-legend i{background:#dfe6f1;border-radius:50%;width:10px;height:10px}.homework-progress-legend i.done,.homework-progress-pill.done,.homework-progress-select.done{color:#087a47;background:#daf7e8}.homework-progress-legend i.in_progress,.homework-progress-pill.in_progress,.homework-progress-select.in_progress{color:#8a5a00;background:#fff0bf}.homework-progress-legend small{color:#a14520;flex-basis:100%}.homework-progress-pills{flex-wrap:wrap;margin-top:5px}.homework-progress-pill,.homework-progress-select.not_started{color:#5f6f86;background:#edf2f8}.homework-progress-pill{border-radius:999px;padding:3px 7px;font-size:.66rem;font-weight:800}.taskboard-page,.taskboard-cards,.student-360-page{align-content:start;gap:14px;display:grid}.student-360-header,.student-360-header-actions,.taskboard-card-heading,.taskboard-card-meta,.taskboard-card-actions,.student-360-list>header{justify-content:space-between;align-items:center;gap:8px;display:flex}.taskboard-create{grid-template-columns:minmax(220px,.65fr) minmax(0,1.6fr);gap:22px;padding:20px;display:grid}.taskboard-create form{grid-template-columns:minmax(220px,1.4fr) repeat(3,minmax(130px,.65fr));gap:10px;display:grid}.taskboard-create input,.taskboard-create select,.taskboard-create textarea,.taskboard-card-actions select{background:#fff;border:1px solid #c9dcff;border-radius:9px;min-width:0;padding:9px}.taskboard-create textarea{grid-column:1/-2}.taskboard-error{grid-column:1/-1;color:#a72828!important}.taskboard-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:14px;display:grid}.taskboard-column{background:#f6faff;min-height:380px;padding:14px}.taskboard-column>header{justify-content:space-between;padding-bottom:12px;display:flex}.taskboard-column>header h2{margin:0}.taskboard-column>header span,.taskboard-card-heading>span,.student-360-status{background:#e7effc;border-radius:999px;padding:4px 8px;font-size:.68rem;font-weight:850}.taskboard-card{background:#fff;border:1px solid #d8e4f5;border-left:4px solid #8ea8cc;border-radius:12px;gap:10px;padding:13px;display:grid}.taskboard-card.dragging{opacity:.55}.taskboard-card.priority-high{border-left-color:#ef7e66}.taskboard-card.priority-low{border-left-color:#75c9a1}.taskboard-card-meta{color:var(--muted);flex-wrap:wrap;font-size:.7rem}.task-delete{color:#a72828;background:0 0;border:0;font-weight:780}.taskboard-empty{text-align:center;color:var(--muted)}.student-360-header{gap:18px;padding:20px}.student-360-header-actions{flex-wrap:wrap}.student-360-tabs{background:#fff;border:1px solid #d4e1f4;border-radius:12px;gap:5px;padding:5px;display:flex;overflow-x:auto}.student-360-tabs a{color:#45587e;border-radius:8px;flex:none;padding:9px 12px;font-size:.78rem;font-weight:820;text-decoration:none}.student-360-tabs a.active{background:var(--brand-blue);color:#fff}.student-360-summary-grid{grid-template-columns:repeat(3,1fr);gap:12px;display:grid}.student-360-summary-grid article{min-height:120px;padding:18px;display:grid}.student-360-list{padding:18px}.student-360-list>header{border-bottom:1px solid #dce6f4;padding-bottom:12px}.student-360-list>article{border-bottom:1px solid #e2eaf6;grid-template-columns:minmax(0,1fr) auto 130px;align-items:center;gap:12px;padding:12px 5px;display:grid}.student-360-list small,.student-360-list time{color:var(--muted);font-size:.72rem}.student-360-status.done,.student-360-status.completed{color:#087a47;background:#daf7e8}.student-360-status.in_progress,.student-360-status.assigned,.student-360-status.awaiting{color:#8a5a00;background:#fff0bf}@media (width<=1050px){.taskboard-create{grid-template-columns:1fr}.taskboard-create form{grid-template-columns:repeat(2,minmax(0,1fr))}.taskboard-create textarea{grid-column:1/-1}.taskboard-grid{grid-template-columns:1fr}.taskboard-column{min-height:0}}@media (width<=760px){.homework-email-options,.student-360-summary-grid{grid-template-columns:1fr}.student-360-header{flex-direction:column;align-items:flex-start}.student-360-list>article{grid-template-columns:minmax(0,1fr) auto}.student-360-list time{grid-column:1/-1}}@media (width<=620px){.taskboard-create form{grid-template-columns:1fr}.taskboard-create textarea{grid-column:auto}}.grammar-homework-note{color:#5a37dd;background:#f7f4ff;border-color:#d8ceff}.homework-editor-actions{justify-content:space-between;gap:12px;margin-top:24px;display:flex}.homework-delete-form{justify-content:center;margin-top:14px;display:flex}.danger-action{color:#c23543;background:#fffafb;border:1px solid #ffc4c9;border-radius:9px;min-height:40px;padding:9px 14px;font-weight:760}.writing-dialog-backdrop{z-index:40;background:#061a3f57;place-items:center;padding:24px;display:grid;position:fixed;inset:0}.writing-dialog{background:#fbfdff;border:1px solid #d3e1f8;border-radius:20px;width:min(760px,100%);max-height:min(86dvh,800px);padding:24px;overflow:auto;box-shadow:0 28px 80px #061a3f4d}.writing-dialog .panel-heading{align-items:start}.writing-dialog h2{font-size:1.65rem}.dialog-close{min-width:36px;min-height:36px;color:var(--navy);background:#edf4ff;border-radius:9px;place-items:center;font-size:1.7rem;line-height:1;display:grid}.writing-workspace-label{margin-top:20px}.writing-workspace-label textarea{resize:vertical;min-height:320px;font-size:1rem;line-height:1.6}.writing-dialog-footer{color:var(--muted);justify-content:space-between;align-items:center;gap:16px;margin-top:16px;font-size:.82rem;display:flex}.writing-dialog-footer>div{flex-wrap:wrap;gap:9px;display:flex}.grammar-homework-result-route,.grammar-homework-teacher-shell{width:min(1120px,100% - 32px);margin-inline:auto}.grammar-homework-student-result,.grammar-homework-teacher-result{gap:22px;padding:clamp(20px,3vw,34px);display:grid}.grammar-homework-student-result>header,.grammar-homework-teacher-result>header{justify-content:space-between;align-items:center;gap:18px;display:flex}.grammar-homework-student-result>header>strong,.grammar-homework-teacher-result>header>strong{color:#5b3ddd;background:#ece7ff;border-radius:50%;flex:none;place-items:center;width:92px;height:92px;font-size:1.45rem;font-weight:950;display:grid}.grammar-homework-advice{background:#f2fbf7;border:1px solid #bfe8d7;border-left:5px solid #27a876;border-radius:14px;gap:5px;padding:18px 20px;display:grid}.grammar-homework-advice span{color:#147355;letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:900}.grammar-homework-advice strong{color:var(--navy);font-size:1.05rem}.grammar-homework-advice p{color:var(--muted);margin:0;line-height:1.55}.grammar-homework-activity-results{grid-template-columns:repeat(auto-fit,minmax(190px,1fr));gap:10px;display:grid}.grammar-homework-activity-results article{background:#fbfdff;border:1px solid #dce6f4;border-radius:13px;justify-content:space-between;align-items:center;gap:12px;padding:15px;display:flex}.grammar-homework-activity-results article div{gap:3px;display:grid}.grammar-homework-activity-results article span{color:var(--muted);font-size:.78rem}.grammar-homework-activity-results article b{color:#5a37dd;font-size:1.1rem}.grammar-homework-answer-review{gap:18px;display:grid}.grammar-homework-answer-review>section{background:#fbfdff;border:1px solid #dce6f4;border-radius:15px;gap:9px;padding:17px;display:grid}.grammar-homework-answer-review article{background:#fff;border:1px solid #e1e7f1;border-left-width:4px;border-radius:12px;grid-template-columns:30px minmax(0,1fr);gap:11px;padding:13px;display:grid}.grammar-homework-answer-review article.correct{border-left-color:#20b77d}.grammar-homework-answer-review article.incorrect{border-left-color:#f06c73}.grammar-homework-answer-review article>span{background:#eef2f8;border-radius:50%;place-items:center;width:28px;height:28px;font-weight:950;display:grid}.grammar-homework-answer-review article.correct>span{color:#14805a;background:#dff7ec}.grammar-homework-answer-review article.incorrect>span{color:#b62f3b;background:#ffe8e9}.grammar-homework-answer-review article p,.grammar-homework-answer-review article small{color:#5e7090;margin:5px 0 0;display:block}@media (width<=860px){.homework-manager-controls{grid-template-columns:minmax(180px,1fr) minmax(150px,.7fr) auto}.homework-manager-controls .homework-filter-tabs{order:3;grid-column:1/-1}.student-homework-controls{grid-template-columns:minmax(180px,1fr) auto}.student-homework-controls .homework-filter-tabs{order:3;grid-column:1/-1}.homework-card{grid-template-columns:80px minmax(0,1fr) 130px}.homework-type-art{min-height:132px;font-size:1.55rem}.homework-card-actions{grid-area:2/2/auto/-1;padding-top:0;display:flex}.homework-card-actions form{display:block}.homework-toolbar{flex-direction:column;align-items:stretch}}@media (width<=620px){.homework-manager-heading{flex-direction:column;align-items:stretch;gap:14px}.homework-manager-heading .primary-action{width:100%}.overview-header-actions,.homework-heading-actions{justify-items:stretch}.embedded-version{width:max-content}.homework-manager-controls,.student-homework-controls{grid-template-columns:1fr auto}.homework-search{grid-column:1/-1}.homework-student-select{grid-column:1}.homework-manager-controls .homework-filter-tabs,.student-homework-controls .homework-filter-tabs{padding-bottom:2px;overflow-x:auto}.homework-hero{gap:18px;display:grid}.homework-hero-count{text-align:left;min-width:0}.homework-summary-row{gap:8px}.homework-summary-row article{padding:12px}.homework-card{grid-template-columns:66px minmax(0,1fr)}.homework-type-art{min-height:108px;font-size:1.35rem}.homework-card-copy{padding:14px}.homework-card-due{border:0;grid-area:2/2;padding:0 14px 13px;display:block}.homework-card-due strong{margin-left:7px}.homework-card-actions{grid-area:3/1/auto/-1;grid-template-columns:1fr 1fr;padding:0 12px 12px;display:grid}.homework-card h2{font-size:1.04rem}.homework-form-grid{grid-template-columns:1fr}.homework-form-wide{grid-column:auto}.homework-editor-details{padding:18px}.homework-editor-actions,.writing-dialog-footer{flex-direction:column;align-items:stretch}.writing-dialog-footer>div{grid-template-columns:1fr 1fr;display:grid}.writing-dialog-backdrop{align-items:end;padding:0}.writing-dialog{border-radius:20px 20px 0 0;max-height:88dvh;padding:19px}.writing-workspace-label textarea{min-height:280px}.grammar-homework-result-route,.grammar-homework-teacher-shell{width:min(100% - 20px,1120px)}.grammar-homework-student-result>header,.grammar-homework-teacher-result>header{align-items:flex-start}.grammar-homework-student-result>header>strong,.grammar-homework-teacher-result>header>strong{width:68px;height:68px;font-size:1.1rem}.grammar-homework-activity-results{grid-template-columns:1fr}}.homework-type-art{border-radius:15px;padding:7px;overflow:hidden}.homework-type-art img{object-fit:contain;object-position:center;border-radius:10px;width:100%;height:100%;min-height:0;display:block}@media (width>=621px){.homework-card{grid-template-columns:166px minmax(0,1fr) 142px 156px;min-height:150px}.homework-type-art{min-height:0}}main .homework-card-due-soon{background:linear-gradient(90deg,#fff9e8,#fffef9 44%,#ffffffeb);border-color:#f0d48a #f0d48a #f0d48a #e4a018}main .homework-card-overdue{background:linear-gradient(90deg,#fff3eb,#fffdfb 44%,#ffffffeb);border-color:#ffc59d #ffc59d #ffc59d #e87521}main .homework-card-submitted{background:linear-gradient(90deg,#edf6ff,#fbfdff 44%,#ffffffeb);border-color:#b9dafe #b9dafe #b9dafe #3187dd}main .homework-card-done{background:linear-gradient(90deg,#effbf4,#fbfffc 44%,#ffffffeb);border-color:#bde5d1 #bde5d1 #bde5d1 #28a76f}main .homework-card-due-soon .homework-type-art{color:#a96a00;background:linear-gradient(145deg,#fff4ca,#fffdf4)}main .homework-card-overdue .homework-type-art{color:#bc5516;background:linear-gradient(145deg,#ffe5d5,#fffaf7)}main .homework-card-submitted .homework-type-art{color:#196bb6;background:linear-gradient(145deg,#ddecff,#f6fbff)}main .homework-card-done .homework-type-art{color:#1d8158;background:linear-gradient(145deg,#dcf5e6,#f7fffa)}main .homework-status-due-soon{color:#825200;background:#ffe7a7}main .homework-status-overdue{color:#a94410;background:#ffd6bf}main .homework-status-submitted{color:#125b9b;background:#d9ecff}main .homework-status-done{color:#146d49;background:#d6f3e1}main .homework-card-due-soon .homework-card-due{background:#ffe9ae59}main .homework-card-overdue .homework-card-due{background:#ffd8c061}main .homework-card-submitted .homework-card-due{background:#d6ebff73}main .homework-card-done .homework-card-due{background:#d6f3e173}.access-roster-row{grid-template-columns:minmax(0,1fr) auto minmax(208px,auto);grid-template-areas:"person badges actions";gap:8px 12px;padding:7px 10px}.access-person{align-items:baseline;gap:9px;display:flex}.access-person .access-email{color:var(--muted);font-size:.78rem}.access-badges{justify-self:end}.access-badges small:empty{display:none}.weekly-chart>div>.activity-bar,.monthly-chart>div>.activity-bar{background:linear-gradient(#0b5cff,#39d6d0);border-radius:999px 999px 7px 7px;place-self:end center;width:min(34px,72%);min-height:10px;box-shadow:0 10px 24px #0b5cff2e}.monthly-chart>div>.activity-bar{width:min(26px,72%)}.streak-current-badge{color:#087443;background:#ffffffd1;border:1px solid #16a34a33;border-radius:999px;align-items:center;width:max-content;min-height:35px;padding:5px 11px 5px 7px;display:inline-flex;box-shadow:0 8px 18px #1480541a}.streak-current-badge strong{color:#fff;background:#16a34a;border-radius:999px;place-items:center;min-width:28px;min-height:28px;margin-right:7px;font-size:1rem;display:grid}.streak-current-badge span{text-transform:uppercase;letter-spacing:.04em;font-size:.78rem;font-weight:850}@media (width<=860px){.homework-student-picker-filter{grid-column:1/-1}.homework-card{grid-template-columns:130px minmax(0,1fr) 130px}.homework-type-art{width:112px;height:112px}.homework-card-due{min-height:0;margin-top:0}}@media (width<=620px){.homework-student-picker-filter{grid-template-columns:1fr}.homework-card{grid-template-columns:104px minmax(0,1fr)}.homework-type-art{width:88px;height:88px;margin:13px auto}.homework-card-due{min-height:0;margin-top:0;font-size:.8rem}.access-roster-row{grid-template-columns:1fr;grid-template-areas:"person""badges""actions"}.access-person{flex-direction:column;align-items:start;gap:2px}}.teacher-student-access-main .student-access-workspace{gap:14px;min-height:min(720px,100vh - 176px);padding:clamp(18px,2vw,24px);display:grid}.access-directory-heading{align-items:start}.access-directory-heading>div{gap:3px;display:grid}.access-directory-heading p{color:var(--muted);font-size:.9rem}.teacher-student-access-main .access-summary-grid{gap:14px}.teacher-student-access-main .access-summary-grid article{border-radius:13px;align-items:center;gap:14px;min-height:74px;padding:12px 14px;display:flex}.teacher-student-access-main .access-summary-grid strong{color:var(--navy);margin:0;font-size:1.25rem;line-height:1}.teacher-student-access-main .access-summary-grid p{color:var(--muted);margin-top:5px;font-size:.78rem}.access-summary-icon{color:#17a965;background:#e3f8ec;border-radius:50%;flex:none;place-items:center;width:42px;height:42px;display:grid}.metric-card-warning .access-summary-icon{color:#f0a214;background:#fff4d9}.metric-card-danger .access-summary-icon{color:#f05255;background:#ffe7e8}.access-summary-icon svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.8px;width:23px;height:23px}.access-roster-workspace{gap:12px}.access-search-toolbar{grid-template-columns:minmax(0,1fr) auto;gap:12px;display:grid}.access-search-form{display:block;position:relative}.access-search-form>svg{z-index:1;fill:none;stroke:#71819a;stroke-linecap:round;stroke-width:1.7px;width:19px;height:19px;position:absolute;top:50%;left:14px;transform:translateY(-50%)}.access-search-form input{border-color:#d7e1ef;border-radius:12px;min-height:44px;padding:10px 14px 10px 43px}.access-filter-toggle,.access-manage-button,.access-more-button,.access-pagination button{color:var(--navy);font:inherit;cursor:pointer;background:#fff;border:1px solid #c8d9f2;font-weight:780}.access-filter-toggle{border-radius:12px;justify-content:center;align-items:center;gap:8px;min-height:44px;padding:9px 16px;display:inline-flex}.access-filter-toggle svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:1.7px;width:19px;height:19px}.access-filter-row{gap:10px}.access-filter-row button{color:#405169;border-color:#d8e2f0;align-items:center;gap:7px;min-height:34px;padding:6px 12px;display:inline-flex}.access-filter-row button small{color:#3e5a7b;background:#eaf1fb;border-radius:999px;place-items:center;min-width:21px;height:21px;padding:0 5px;font-size:.7rem;display:grid}.access-filter-row button.active small{color:#0b5cff;background:#fff}.access-table{background:#fbfdff;border:1px solid #dce5f1;border-radius:14px;overflow:hidden}.access-table-header,.access-roster-row{grid-template-columns:minmax(260px,1.45fr) minmax(130px,.55fr) minmax(190px,.55fr);grid-template-areas:"person badges actions";align-items:center;gap:16px;display:grid}.access-table-header{color:#536988;letter-spacing:.035em;text-transform:uppercase;min-height:36px;padding:7px 16px;font-size:.7rem;font-weight:850}.access-table-header span:last-child{text-align:right}.access-roster-list{gap:0;max-height:none;padding:0 10px 10px;overflow:visible}.access-roster-row,.access-row-approved,.access-row-pending,.access-row-blocked{background:#fff;border:1px solid #dde6f2;border-radius:11px;min-height:56px;padding:7px 6px;box-shadow:0 2px 8px #2d4a7409}.access-roster-row+.access-roster-row{margin-top:4px}.access-person{grid-area:person;grid-template-columns:38px minmax(0,1fr);align-items:center;gap:11px;display:grid}.access-person>div:last-child{min-width:0;display:grid}.access-avatar{color:#149154;background:#e4f8ec;border-radius:50%;place-items:center;width:38px;height:38px;font-size:.8rem;font-weight:850;display:grid}.access-avatar.avatar-pending{color:#a9640b;background:#fff1d9}.access-avatar.avatar-blocked{color:#c73e72;background:#ffe5ee}.access-avatar.avatar-variant-1{color:#7047c9;background:#eee9ff}.access-avatar.avatar-variant-2{color:#2470b9;background:#e4f2ff}.access-avatar.avatar-variant-3{color:#c74273;background:#ffe8ef}.access-avatar.avatar-variant-4{color:#aa6515;background:#fff0dc}.access-avatar.avatar-variant-5{color:#188676;background:#e2f5f2}.access-person strong,.access-person .student-name-link{color:var(--navy);font-size:.84rem;font-weight:820;line-height:1.25}.access-person .access-email{color:#6a7c97;margin-top:2px;font-size:.7rem;line-height:1.2}.access-badges{grid-area:badges;justify-self:start;display:block}.access-status{white-space:nowrap;border-radius:999px;align-items:center;gap:6px;min-height:25px;padding:4px 10px;font-size:.72rem;font-weight:760;display:inline-flex}.access-status i{border:2px solid;border-radius:50%;width:7px;height:7px}.access-status.status-approved{color:#1a9a60;background:#e2f8ec}.access-status.status-pending{color:#b87512;background:#fff4dc}.access-status.status-blocked{color:#d44044;background:#ffe7e9}.access-actions{grid-area:actions;justify-content:flex-end;gap:8px;display:flex}.access-manage-button{color:#0b5cff;border-color:#aac8fa;border-radius:9px;min-height:36px;padding:7px 13px;font-size:.78rem}.access-more-button{border-radius:9px;place-items:center;width:36px;height:36px;font-size:1.2rem;display:grid}.access-filter-toggle:hover,.access-manage-button:hover,.access-more-button:hover,.access-pagination button:hover:not(:disabled){background:#f5f9ff;border-color:#7aa8f3}.access-pagination{color:#657995;grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);align-items:center;gap:14px;min-height:43px;font-size:.74rem;display:grid}.access-pagination>span{justify-self:end}.access-pagination>span strong{min-width:42px;min-height:32px;color:var(--navy);background:#fff;border:1px solid #d7e1ee;border-radius:8px;place-items:center;margin-left:7px;display:inline-grid}.access-pagination-buttons{gap:6px;display:flex}.access-pagination button{border-radius:8px;place-items:center;min-width:34px;height:34px;font-size:.76rem;display:grid}.access-pagination button.active{color:#fff;background:#0b5cff;border-color:#0b5cff}.access-pagination button:disabled{cursor:not-allowed;opacity:.38}.access-pagination svg{fill:none;stroke:currentColor;stroke-linecap:round;stroke-linejoin:round;stroke-width:2px;width:17px;height:17px}.rotate-chevron{transform:rotate(180deg)}.access-manage-backdrop{z-index:100;backdrop-filter:blur(5px);background:#05163261;place-items:center;padding:20px;display:grid;position:fixed;inset:0}.access-manage-dialog{background:#fff;border:1px solid #cfdef2;border-radius:18px;gap:18px;width:min(520px,100%);max-height:calc(100vh - 40px);padding:22px;display:grid;overflow-y:auto;box-shadow:0 28px 70px #081f4840}.access-manage-heading{grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;display:grid}.access-manage-heading h2{color:var(--navy);margin-top:2px;font-size:1.45rem}.access-manage-heading p:last-child{color:var(--muted);overflow-wrap:anywhere;margin-top:3px;font-size:.8rem}.access-dialog-close{width:34px;height:34px;color:var(--navy);font:inherit;cursor:pointer;background:#eef4fc;border:0;border-radius:9px;place-items:center;font-size:1.35rem;display:grid}.access-manage-status{color:var(--muted);background:#f9fbfe;border:1px solid #dce6f3;border-radius:12px;justify-content:space-between;align-items:center;gap:14px;padding:13px 14px;font-size:.8rem;font-weight:760;display:flex}.access-manage-actions{gap:10px;display:grid}.access-manage-actions form{display:grid}.access-manage-actions .primary-action,.access-manage-actions .secondary-action{justify-content:center;min-height:42px}.access-password-reset{grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:9px;display:grid}.access-password-reset label{min-width:0;color:var(--muted);gap:5px;font-size:.74rem;font-weight:760;display:grid}.access-password-reset input{background:#fff;width:100%;min-height:42px;padding:9px 11px}.warning-action{color:#8a5800;background:#fffaf0;border-color:#edc66a}.sr-only{clip:rect(0, 0, 0, 0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}@media (width<=780px){.teacher-student-access-main .student-access-workspace{min-height:0}.access-table-header{display:none}.access-roster-list{padding:9px}.access-roster-row,.access-table-header{grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"person badges""actions actions"}.access-actions{padding-top:5px}.access-pagination{grid-template-columns:1fr auto}.access-pagination>span{display:none}}@media (width<=560px){.access-search-toolbar,.teacher-student-access-main .access-summary-grid{grid-template-columns:1fr}.teacher-student-access-main .access-summary-grid{display:grid}.access-filter-toggle{width:100%}.access-roster-row{grid-template-columns:1fr;grid-template-areas:"person""badges""actions";gap:9px;padding:11px}.access-actions,.access-manage-button{width:100%}.access-more-button{flex:0 0 38px}.access-pagination{text-align:center;grid-template-columns:1fr;justify-items:center}.access-pagination p{order:2}.access-password-reset{grid-template-columns:1fr}}@media (width<=720px){.vocabulary-library-pilot{padding:16px}.vocabulary-library-title{flex-direction:column;align-items:flex-start;gap:14px;min-height:0;padding:20px}.vocabulary-library-title h1{font-size:2rem}.vocabulary-library-content{padding:20px 16px}.vocabulary-section-heading{flex-direction:column;align-items:flex-start;gap:8px}.vocabulary-category-grid{grid-template-columns:1fr}.vocabulary-category-card{min-height:128px}.vocabulary-topic-row{grid-template-columns:40px minmax(0,1fr);gap:10px}.vocabulary-topic-row>span:last-child{grid-column:2}.vocabulary-study-pack{flex-direction:column;align-items:flex-start;gap:18px}.vocabulary-study-pack>div:last-child{align-items:flex-start}.vocabulary-focus-topbar{flex-direction:column;align-items:flex-start;gap:7px}.vocabulary-focus-card{padding:16px}.vocabulary-focus-card:before{left:22px;right:22px}.vocabulary-focus-card-top{flex-direction:column;align-items:flex-start;gap:5px}.vocabulary-focus-actions{flex-direction:column}.vocabulary-focus-actions .vocabulary-good,.vocabulary-focus-actions .vocabulary-missed{width:100%;min-width:0}}.vocabulary-game-page .vocabulary-focus-shell{gap:0}.vocabulary-game-page .vocabulary-focus-topbar{background:#fff;border:1px solid #d7e4f2;border-bottom:0;border-radius:22px 22px 0 0;flex-direction:row;align-items:center;gap:12px;padding:12px 18px 6px}.vocabulary-game-page .vocabulary-focus-card{border-radius:0 0 24px 24px}.vocabulary-focus-image{aspect-ratio:16/9}.vocabulary-focus-image img{object-fit:cover;width:100%;height:100%;animation:.18s ease-out vocabulary-image-enter}.vocabulary-audio-actions{flex-wrap:wrap;justify-content:center;gap:10px;margin-top:10px;display:flex}.vocabulary-audio-actions .vocabulary-audio-button{min-width:160px;margin-top:0}@keyframes vocabulary-image-enter{0%{opacity:.3;transform:scale(.995)}to{opacity:1;transform:scale(1)}}@media (width<=760px){.vocabulary-game-page{padding-block:8px}.vocabulary-game-page .vocabulary-focus-topbar{flex-direction:row;align-items:center;padding:9px 12px 4px}.vocabulary-game-page .vocabulary-focus-topbar span{text-align:right;max-width:56%}.vocabulary-audio-actions{width:100%}.vocabulary-audio-actions .vocabulary-audio-button{flex:140px;width:auto}}@media (width>=1101px){.vocabulary-route-page{height:100dvh;min-height:0;overflow:hidden}.vocabulary-route-page .student-portal{max-width:none;height:100%;min-height:0}.vocabulary-route-page .portal-sidebar,.vocabulary-main{height:100%;min-height:0}.vocabulary-main{display:block;overflow:hidden}.vocabulary-main>.vocabulary-library-pilot{width:100%;max-width:none;height:100%;min-height:0;padding:0}.vocabulary-main .vocabulary-library-shell{border-radius:20px;grid-template-rows:auto auto minmax(0,1fr);height:100%;min-height:0;display:grid}.vocabulary-main .vocabulary-library-title{min-height:108px;padding:20px clamp(24px,3vw,42px)}.vocabulary-main .vocabulary-library-title h1{font-size:clamp(2.35rem,3.4vw,3.25rem)}.vocabulary-main .vocabulary-breadcrumbs{min-height:50px;padding:12px clamp(24px,3vw,42px)}.vocabulary-main .vocabulary-library-content{grid-template-rows:auto minmax(0,1fr);gap:16px;min-height:0;padding:clamp(20px,2.4vh,28px) clamp(24px,3vw,42px);display:grid;overflow:hidden}.vocabulary-main .vocabulary-section-heading{margin:0}.vocabulary-main .vocabulary-category-grid,.vocabulary-main .vocabulary-pack-list{grid-auto-rows:minmax(0,1fr);min-height:0}.vocabulary-main .vocabulary-category-card{min-height:0;padding:clamp(16px,2vh,22px)}.vocabulary-main .vocabulary-topic-list,.vocabulary-main .vocabulary-pack-list{overscroll-behavior:contain;scrollbar-color:#a8c7ef transparent;scrollbar-width:thin;min-height:0;padding:2px 8px 4px 2px;overflow-y:auto}.vocabulary-main .vocabulary-topic-row{min-height:70px}.vocabulary-main .vocabulary-study-pack{min-height:0;padding:22px 26px}.vocabulary-main .vocabulary-instructions-shell{grid-template-rows:auto minmax(0,1fr);align-content:center;max-width:none;margin:0;padding:clamp(26px,4vh,42px) clamp(32px,4vw,60px)}.vocabulary-main .vocabulary-inline-back{margin-bottom:12px}.vocabulary-main .vocabulary-instructions-grid{grid-template-columns:minmax(0,1.25fr) minmax(260px,.75fr);align-self:center;gap:clamp(42px,7vw,100px);width:100%}.vocabulary-main .vocabulary-instructions-grid h1{max-width:720px;font-size:clamp(2.7rem,4vw,4.25rem)}.vocabulary-main .vocabulary-instruction-example{place-content:center;min-height:290px}.vocabulary-main .vocabulary-complete-shell{align-content:center;max-width:none;margin:0}.vocabulary-main .vocabulary-game-page{align-items:stretch;padding:0;display:block}.vocabulary-main .vocabulary-game-page .vocabulary-focus-shell{grid-template-rows:auto minmax(0,1fr);width:100%;max-width:none;height:100%;min-height:0}.vocabulary-main .vocabulary-game-page .vocabulary-focus-topbar{border-radius:20px 20px 0 0;min-height:48px;padding:11px 20px 8px}.vocabulary-main .vocabulary-game-page .vocabulary-focus-card{grid-template:"meta meta""progress progress"7px"image answer"minmax(0,1fr)/minmax(0,1.16fr) minmax(360px,.84fr);height:100%;min-height:0;padding:clamp(16px,2vh,24px);overflow:hidden}.vocabulary-main .vocabulary-game-page .vocabulary-focus-card.vocabulary-no-image{grid-template-columns:minmax(0,1fr);grid-template-areas:"meta""progress""answer"}.vocabulary-main .vocabulary-game-page .vocabulary-no-image .vocabulary-focus-answer{justify-self:center;width:100%;max-width:920px}.vocabulary-main .vocabulary-focus-card-top{grid-area:meta}.vocabulary-main .vocabulary-card-progress{grid-area:progress}.vocabulary-main .vocabulary-focus-image{aspect-ratio:16/9;grid-area:image;align-self:center;width:100%;max-height:100%}.vocabulary-main .vocabulary-focus-answer{grid-area:answer;align-content:center;align-self:stretch;min-height:0;padding:8px clamp(8px,2vw,28px)}.vocabulary-main .vocabulary-prompt-side,.vocabulary-main .vocabulary-answer-side{flex-direction:column;justify-content:center;display:flex}.vocabulary-main .vocabulary-prompt-side h1,.vocabulary-main .vocabulary-answer-side h1{font-size:clamp(2.7rem,4.4vw,4.8rem)}.vocabulary-main .vocabulary-bilingual-example{margin:10px auto;padding:12px 16px}.vocabulary-main .vocabulary-audio-actions,.vocabulary-main .vocabulary-focus-actions{flex-wrap:nowrap;width:100%}.vocabulary-main .vocabulary-audio-actions{margin-top:8px}.vocabulary-main .vocabulary-audio-actions .vocabulary-audio-button,.vocabulary-main .vocabulary-focus-actions .vocabulary-good,.vocabulary-main .vocabulary-focus-actions .vocabulary-missed{flex:1 1 0;min-width:0}.vocabulary-main .vocabulary-focus-actions{margin-top:12px}.vocabulary-main .vocabulary-focus-actions .vocabulary-good,.vocabulary-main .vocabulary-focus-actions .vocabulary-missed{min-height:52px;padding-inline:14px}}.teacher-vocabulary-preview-hero{min-height:94px;padding-block:16px}.teacher-vocabulary-preview-hero h1{font-size:clamp(1.8rem,2.4vw,2.7rem)}.teacher-vocabulary-preview-hero .status-pill{color:#8a5600;background:#fff4d8}.vocabulary-main .vocabulary-pack-list{grid-auto-rows:auto;align-content:start}.vocabulary-main .vocabulary-study-pack{min-height:104px;padding:17px 20px}.vocabulary-main .vocabulary-study-pack strong{margin-block:7px 4px;font-size:1.2rem}.vocabulary-main .vocabulary-study-pack small{line-height:1.45}.vocabulary-main .vocabulary-study-pack>div:last-child b{color:#fff;align-items:center;min-height:42px;padding-inline:18px;display:inline-flex;box-shadow:0 8px 18px #1266d72e}.vocabulary-instruction-steps{grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin:22px 0 26px;display:grid}.vocabulary-instruction-steps>span{background:#f7faff;border:1px solid #dce8f7;border-radius:15px;gap:4px;padding:14px;display:grid}.vocabulary-instruction-steps b{color:#1266d7;background:#e9f2ff;border-radius:50%;justify-content:center;align-items:center;width:28px;height:28px;font-size:.78rem;display:inline-flex}.vocabulary-instruction-steps strong{color:#071c45}.vocabulary-instruction-steps small{color:#627895;line-height:1.35}.vocabulary-start-pack{gap:12px;min-width:190px;box-shadow:0 12px 24px #1266d733}.vocabulary-flip-card{perspective:1500px;width:min(100%,680px);max-width:680px;height:min(490px,100dvh - 245px);min-height:390px;margin:4px auto 0}.vocabulary-main .vocabulary-game-page .vocabulary-focus-shell{grid-template-rows:auto auto 7px minmax(0,1fr);grid-template-columns:minmax(0,1fr)}.vocabulary-main .vocabulary-game-page .vocabulary-focus-topbar,.vocabulary-main .vocabulary-game-page .vocabulary-focus-card-top,.vocabulary-main .vocabulary-game-page .vocabulary-card-progress,.vocabulary-main .vocabulary-game-page .vocabulary-flip-card{grid-area:auto/1}.vocabulary-main .vocabulary-instructions-shell{align-content:center;padding:clamp(22px,3vh,34px) clamp(28px,4vw,54px)}.vocabulary-main .vocabulary-instructions-grid{grid-template-columns:minmax(0,1.35fr) minmax(240px,.65fr);gap:clamp(28px,5vw,70px)}.vocabulary-main .vocabulary-instructions-grid h1{font-size:clamp(2.2rem,3.5vw,3.35rem)}.vocabulary-main .vocabulary-instruction-example{min-height:230px}.vocabulary-flashcard-side-prompt{cursor:pointer}.vocabulary-flip-card-inner{height:100%;transform-style:preserve-3d;width:100%;transition:transform .65s cubic-bezier(.2,.75,.2,1);position:relative}.vocabulary-flashcard-side-answer .vocabulary-flip-card-inner{transform:rotateY(180deg)}.vocabulary-flip-face{backface-visibility:hidden;background:radial-gradient(circle at 88% 8%,#7d64ff1a,#0000 30%),linear-gradient(145deg,#fff,#f8fbff);border:1px solid #cfdff3;border-radius:26px;padding:20px;display:grid;position:absolute;inset:0;overflow:hidden;box-shadow:0 24px 55px #1a437729}.vocabulary-flip-back{background:radial-gradient(circle at 10% 10%,#23beb021,#0000 30%),linear-gradient(145deg,#fff,#f3fffc);transform:rotateY(180deg)}.vocabulary-flip-face:has(.vocabulary-focus-image){grid-template-columns:minmax(0,.85fr) minmax(280px,1.15fr);gap:14px}.vocabulary-flip-face .vocabulary-focus-image{border-radius:18px;grid-area:auto;align-self:stretch;height:100%;min-height:0}.vocabulary-flip-face .vocabulary-focus-image img{object-fit:cover;height:100%}.vocabulary-flip-face .vocabulary-focus-answer{grid-area:auto;align-content:center;justify-items:center;min-height:0;padding:8px 10px;display:grid}.vocabulary-flip-face .vocabulary-focus-answer h1{margin-block:4px 8px;font-size:clamp(2.4rem,5vw,4.4rem)}.vocabulary-flip-face .vocabulary-audio-button,.vocabulary-flip-face .vocabulary-reveal-button{width:min(100%,300px);min-height:44px}.vocabulary-flip-face .vocabulary-reveal-button span{margin-left:8px}.vocabulary-flip-hint{color:#7588a3;margin-top:9px;font-size:.72rem}.vocabulary-flip-face .vocabulary-bilingual-example{margin-block:5px;padding:9px 12px;font-size:.85rem}.vocabulary-flip-face .vocabulary-audio-actions,.vocabulary-flip-face .vocabulary-focus-actions{flex-wrap:nowrap;width:100%;margin-top:7px}.vocabulary-flip-face .vocabulary-audio-actions button,.vocabulary-flip-face .vocabulary-focus-actions button{flex:1 1 0;min-width:0;min-height:44px}.teacher-vocabulary-main:has(.vocabulary-game-page) .teacher-vocabulary-preview-hero,.teacher-vocabulary-main:has(.vocabulary-instructions-shell) .teacher-vocabulary-preview-hero,.teacher-vocabulary-main:has(.vocabulary-complete-shell) .teacher-vocabulary-preview-hero{display:none}.teacher-mfa-shell{max-width:980px}.teacher-mfa-card{grid-template-columns:minmax(280px,.86fr) minmax(340px,1.14fr);padding:0;display:grid;overflow:hidden}.teacher-mfa-visual{color:#fff;text-align:center;background:radial-gradient(circle at 22% 10%,#4c6cff47,#0000 34%),linear-gradient(145deg,#071c45,#0b356c);align-content:center;justify-items:center;min-height:480px;padding:46px 38px;display:grid}.teacher-mfa-shield{color:#67e0d7;background:#ffffff1a;border:1px solid #ffffff29;border-radius:30px;justify-content:center;align-items:center;width:142px;height:142px;margin-bottom:25px;display:flex;transform:rotate(-3deg)}.teacher-mfa-shield svg{width:76px;height:86px}.teacher-mfa-visual p{color:#d8e7fb;max-width:290px;margin:0;line-height:1.55}.teacher-mfa-trust-row{flex-wrap:wrap;justify-content:center;gap:9px;margin-top:24px;display:flex}.teacher-mfa-trust-row span{background:#ffffff1a;border-radius:999px;padding:7px 10px;font-size:.7rem;font-weight:800}.teacher-mfa-form-panel{align-content:center;min-width:0;min-height:480px;padding:clamp(32px,4vw,56px);display:grid}.teacher-mfa-form-panel h1{margin:8px 0 15px;font-size:clamp(2.35rem,3.8vw,3.35rem);line-height:.98}.teacher-mfa-message{color:#536b8c;margin:0 0 24px;line-height:1.5}.teacher-mfa-error{color:#9e2836;background:#fff0f2;border:1px solid #ffc3ca;border-radius:12px;padding:11px 13px}.teacher-mfa-form-panel form{gap:12px;display:grid}.teacher-mfa-form-panel label{gap:8px;display:grid}.teacher-mfa-form-panel label span{color:#263c5f;font-size:.82rem;font-weight:850}.teacher-mfa-form-panel input:not([type=hidden]){box-sizing:border-box;letter-spacing:.2em;border:1px solid #bfcfe4;border-radius:14px;width:100%;min-height:58px;padding:0 17px;font-size:1.3rem;font-weight:800}.teacher-mfa-form-panel input:focus{border-color:#176cff;outline:0;box-shadow:0 0 0 4px #176cff21}.teacher-mfa-form-panel small{color:#71839d}.teacher-mfa-form-panel .primary-action{box-sizing:border-box;border:0;justify-content:space-between;width:100%;min-height:54px;margin-top:8px}.teacher-mfa-cancel{color:#5b7190;width:max-content;margin-top:19px;font-size:.82rem;font-weight:800;text-decoration:none}@media (width>=1101px){.teacher-vocabulary-route-page{height:100dvh;min-height:0;overflow:hidden}.teacher-vocabulary-portal-layout{height:calc(100dvh - 32px);min-height:0}.teacher-vocabulary-portal-layout>.portal-sidebar,.teacher-vocabulary-main{height:100%;min-height:0}.teacher-vocabulary-main{grid-template-rows:auto minmax(0,1fr);gap:8px;overflow:hidden}.teacher-vocabulary-main>.vocabulary-library-pilot{height:100%;min-height:0}}@media (width<=1100px){.teacher-vocabulary-main>.vocabulary-library-pilot{max-width:none;padding-inline:0}}@media (width<=760px){.vocabulary-instruction-steps{grid-template-columns:1fr}.vocabulary-flip-card{height:min(560px,100dvh - 185px);min-height:450px}.vocabulary-flip-face{padding:14px}.vocabulary-flip-face:has(.vocabulary-focus-image){grid-template-rows:minmax(130px,.55fr) minmax(0,1.45fr);grid-template-columns:1fr}.vocabulary-flip-face .vocabulary-focus-answer h1{font-size:clamp(2.15rem,11vw,3.25rem)}.teacher-mfa-card{grid-template-columns:1fr}.teacher-mfa-visual{min-height:190px;padding:26px 22px}.teacher-mfa-shield{width:82px;height:82px;margin-bottom:12px}.teacher-mfa-shield svg{width:48px;height:55px}.teacher-mfa-visual p{font-size:.82rem}.teacher-mfa-trust-row{margin-top:12px}.teacher-mfa-form-panel{min-height:0;padding:28px 22px 32px}}@media (prefers-reduced-motion:reduce){.vocabulary-flip-card-inner{transition-duration:.01ms}}.sidebar-nav .placement-sidebar-link,.sidebar-nav .student-feature-link{color:#eff5ffd6;border-radius:12px;justify-content:space-between;align-items:center;min-height:38px;padding:8px 11px;font-weight:760;display:flex}.sidebar-nav .placement-sidebar-link.locked,.sidebar-nav .student-feature-link.locked{color:#dee8ff6b;cursor:not-allowed;background:#ffffff0b;border:1px solid #ffffff14}.sidebar-nav .placement-sidebar-link.locked small,.sidebar-nav .student-feature-link.locked small{letter-spacing:.06em;text-transform:uppercase;border:1px solid #ffffff1f;border-radius:999px;padding:3px 7px;font-size:.62rem}.placement-main{min-width:0}.placement-test-workspace{background:radial-gradient(circle at 88% 0,#70c1ff2e,#0000 30%),linear-gradient(145deg,#f8fbff,#eef5ff);border:1px solid #d9e5f4;border-radius:20px;gap:14px;min-height:100%;padding:clamp(18px,2.2vw,30px);display:grid;position:relative;box-shadow:0 18px 45px #173f711a}.placement-titlebar{justify-content:space-between;align-items:center;gap:22px;display:flex}.placement-titlebar .eyebrow{color:#6e43e5;margin:0 0 3px}.placement-titlebar h1{color:#071637;margin:0;font-size:clamp(1.65rem,2.4vw,2.45rem);line-height:1}.placement-titlebar p:last-child{color:#566b8a;margin:7px 0 0}.placement-save-actions{align-items:center;gap:12px;display:flex}.placement-save-state{color:#54708f;white-space:nowrap;font-size:.78rem;font-weight:800}.placement-save-state.save-saving{color:#7045df}.placement-save-state.save-problem{color:#ae4b2d}.placement-security-badge,.placement-lock-badge{color:#6744d9;white-space:nowrap;background:#eee9ff;border:1px solid #cfc1ff;border-radius:999px;padding:9px 13px;font-size:.75rem;font-weight:900}.placement-lock-badge{color:#187248;background:#e7f8ef;border-color:#b7e8cc}.placement-module-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.placement-module-tabs button{color:#263b5e;font:inherit;text-align:left;background:#ffffffd1;border:1px solid #d8e2f0;border-radius:14px;align-items:center;gap:10px;min-height:64px;padding:10px 13px;display:flex}.placement-module-tabs button:not(:disabled){cursor:pointer}.placement-module-tabs button:disabled{color:#8491a7;opacity:.58}.placement-module-tabs button.active{color:#5f36d3;background:linear-gradient(135deg,#f2edff,#fff);border-color:#8a65fa;box-shadow:0 8px 20px #6944d91f}.placement-module-tabs button.completed{background:#f0fbf5;border-color:#9edab9}.placement-module-tabs i{background:#edf2ff;border-radius:10px;flex:0 0 34px;justify-content:center;align-items:center;height:34px;font-size:.86rem;font-style:normal;font-weight:950;display:inline-flex}.placement-module-tabs i.placement-tab-level{color:#245f45;letter-spacing:-.02em;overflow-wrap:anywhere;text-align:center;font-size:.7rem}.placement-module-tabs strong,.placement-module-tabs small{display:block}.placement-module-tabs strong{font-size:.9rem}.placement-module-tabs small{color:#7787a2;margin-top:3px;font-size:.68rem}.placement-progress-strip{background:#ffffffe6;border:1px solid #e0e8f3;border-radius:12px;grid-template-columns:auto minmax(120px,1fr) auto;align-items:center;gap:16px;min-height:46px;padding:9px 15px;display:grid;box-shadow:0 7px 18px #26416912}.placement-progress-strip strong,.placement-progress-strip b{color:#6240d6;font-size:.78rem}.placement-progress-strip span{background:#e4e8f0;border-radius:999px;height:8px;overflow:hidden}.placement-progress-strip span i{border-radius:inherit;background:linear-gradient(90deg,#7048e8,#9a61f4);height:100%;transition:width .25s;display:block}.placement-question-layout{grid-template-columns:minmax(0,1fr) minmax(230px,280px);gap:14px;min-height:0;padding-top:8px;display:grid}.placement-question-card,.placement-question-sidebar section{background:#fffffff0;border:1px solid #dce5f1;border-radius:16px;box-shadow:0 10px 24px #1c3d6a12}.placement-question-card{scrollbar-color:#b7c9e3 transparent;scrollbar-width:thin;flex-direction:column;min-height:0;padding:clamp(16px,2.2vw,26px);display:flex;overflow:hidden}.placement-question-card>header{justify-content:space-between;align-items:center;display:flex}.placement-question-card>header span,.placement-question-card>header small{color:#6841dd;background:#f0ebff;border-radius:999px;padding:6px 9px;font-size:.72rem;font-weight:900}.placement-question-card>header small{color:#5d6d84;background:#f1f4f8}.placement-question-card h2{color:#10203f;margin:14px 0;font-size:clamp(1rem,1.35vw,1.18rem);line-height:1.45}@media (width>=721px){.reading-question-card,.listening-question-card{grid-template-rows:auto auto minmax(0,1fr) auto;grid-template-columns:minmax(0,.92fr) minmax(0,1.08fr);column-gap:14px;display:grid}.reading-question-card>header,.listening-question-card>header,.reading-question-card>h2,.listening-question-card>h2,.reading-question-card>.placement-error,.listening-question-card>.placement-error,.reading-question-card>.placement-question-actions,.listening-question-card>.placement-question-actions{grid-column:1/-1}.reading-question-card>.placement-reading-context,.listening-question-card>.placement-audio-card{grid-area:3/1;height:100%;min-height:0;max-height:none;margin:0}.reading-question-card>.placement-choice-list,.listening-question-card>.placement-choice-list{grid-area:3/2;align-content:start;min-height:0}.reading-question-card>.placement-question-actions,.listening-question-card>.placement-question-actions{grid-row:4}.reading-question-card .placement-choice-list label,.listening-question-card .placement-choice-list label{grid-template-columns:30px minmax(0,1fr) 16px;gap:9px;min-height:44px;padding:6px 9px}.reading-question-card .placement-choice-list label>span,.listening-question-card .placement-choice-list label>span{width:28px;height:28px}}.placement-reading-context{color:#263a5b;white-space:pre-wrap;background:linear-gradient(135deg,#f8f5ff,#f3f7ff);border:1px solid #ece6ff;border-radius:13px;max-height:230px;margin-bottom:15px;padding:14px 16px;font-size:.88rem;line-height:1.6;overflow-y:auto}.placement-choice-list{border:0;gap:9px;margin:0;padding:0;display:grid}.placement-choice-list label{cursor:pointer;border:1px solid #dfe6f1;border-radius:12px;grid-template-columns:34px minmax(0,1fr) 18px;align-items:center;gap:12px;min-height:52px;padding:8px 12px;display:grid}.placement-choice-list label:hover{background:#faf9ff;border-color:#bba8fa}.placement-choice-list label.selected{background:linear-gradient(90deg,#f6f2ff,#fff);border-color:#8762f3;box-shadow:inset 3px 0 #7048e8}.placement-choice-list input{opacity:0;width:1px;height:1px;position:absolute}.placement-choice-list label>span{color:#5332b8;background:#f4f1ff;border:1px solid #ddd4ff;border-radius:50%;justify-content:center;align-items:center;width:32px;height:32px;font-size:.75rem;font-weight:900;display:inline-flex}.placement-choice-list label>strong{color:#273a5b;font-size:.86rem;font-weight:720}.placement-choice-list label>i{border:1px solid #bdc9db;border-radius:50%;width:16px;height:16px}.placement-choice-list label.selected>i{border:5px solid #754ce9}.placement-question-sidebar{min-height:0;display:block}.placement-question-sidebar section{flex-direction:column;height:100%;min-height:0;padding:16px;display:flex;overflow:hidden}.placement-question-sidebar h2{color:#142442;margin:0 0 12px;font-size:.9rem}.placement-question-sidebar ul{color:#526885;gap:9px;margin:0;padding:0;font-size:.75rem;line-height:1.4;list-style:none;display:grid}.placement-question-sidebar li{padding-left:18px;position:relative}.placement-question-sidebar li:before{color:#7048e8;content:"✓";font-weight:950;position:absolute;left:0}.placement-question-grid{flex:1;grid-template-columns:repeat(5,1fr);grid-auto-rows:minmax(32px,1fr);gap:7px;min-height:0;display:grid;overflow:hidden}.placement-question-grid button{color:#52637e;cursor:pointer;background:#fff;border:1px solid #dce4ef;border-radius:9px;min-height:32px;font:750 .7rem/1 inherit}.placement-question-grid button.answered{color:#277243;background:#eef9f1;border-color:#bfe4c8}.placement-question-grid button.current{color:#6438d7;background:#f3eeff;border:2px solid #7b50ed}.placement-question-key{color:#758399;flex-wrap:wrap;gap:8px;margin-top:12px;font-size:.62rem;display:flex}.placement-question-key span{align-items:center;gap:4px;display:inline-flex}.placement-question-key i{border:1px solid #cdd6e2;border-radius:50%;width:8px;height:8px}.placement-question-key i.answered{background:#83d397;border-color:#83d397}.placement-question-key i.current{background:#8155ec;border-color:#8155ec}.placement-question-actions,.placement-test-footer{grid-template-columns:minmax(120px,auto) 1fr minmax(120px,auto);align-items:center;gap:14px;margin-top:auto;padding-top:18px;display:grid}.placement-question-actions>.primary-action,.placement-question-actions>.placement-submit-action{grid-column:3}.placement-test-footer>span{color:#627592;text-align:center;font-size:.72rem;font-weight:700}.placement-submit-action{color:#fff;cursor:pointer;background:linear-gradient(135deg,#ffad25,#ff8a18);border:0;border-radius:11px;min-height:44px;padding:12px 18px;font:850 .85rem/1 inherit}.placement-submit-action:disabled{cursor:not-allowed;filter:grayscale(.55);opacity:.55}.placement-module-review{grid-template-rows:auto auto minmax(0,1fr) auto}.ledger-placement-review-button{color:#5635c6!important;background:#f8f5ff!important;border-color:#cfc4ff!important}.student-ledger-main.placement-review-open>:not(.ledger-compact-toolbar):not(.ledger-placement-review-shell){visibility:hidden}.ledger-placement-review-shell{z-index:5;box-sizing:border-box;background:#fffffffa;border:1px solid #dbe6f4;border-radius:18px;grid-template-rows:auto auto auto auto;align-content:start;gap:16px;height:calc(100% - 70px);min-height:0;padding:22px;display:grid;position:absolute;inset:70px 0 0;overflow-y:auto;box-shadow:0 16px 38px #1e417017}.ledger-placement-review-shell .placement-titlebar{justify-content:space-between;align-items:flex-start;gap:24px;display:flex}.ledger-placement-review-shell .placement-titlebar h2{margin:4px 0 7px;font-size:clamp(1.75rem,2.45vw,2.55rem);line-height:1.04}.ledger-placement-review-shell .placement-titlebar>div>p:last-child{color:#5a6f8f;margin:0}.placement-review-back{white-space:nowrap;flex:none}.ledger-placement-review-shell .placement-module-tabs,.ledger-placement-review-shell .placement-review-summary{margin:0}.ledger-placement-review-shell .placement-feedback-list{overscroll-behavior:contain;padding:0 5px 12px 0;overflow:visible}@media (width<=860px){.ledger-placement-review-shell{height:auto;position:relative;inset:auto;overflow:visible}.student-ledger-main.placement-review-open{height:auto;overflow:visible}.ledger-placement-review-shell .placement-titlebar{flex-direction:column;align-items:stretch}}.placement-review-summary{background:linear-gradient(135deg,#f0fbf5,#f6f2ff);border:1px solid #d8e8e5;border-radius:15px;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:15px;padding:15px 18px;display:grid}.placement-review-summary>div{gap:2px;min-width:130px;display:grid}.placement-review-summary small{color:#60748f;text-transform:uppercase;font-size:.68rem;font-weight:850}.placement-review-summary strong{color:#25714b;font-size:1.65rem}.placement-review-summary em{color:#5d708b;text-transform:capitalize;font-size:.68rem;font-style:normal;font-weight:750}.placement-review-summary p{color:#4a6380;margin:0;font-size:.84rem;line-height:1.45}.placement-feedback-list{scrollbar-color:#9aa1aa transparent;scrollbar-width:thin;gap:11px;min-height:0;padding-right:4px;display:grid;overflow-y:auto}.placement-feedback-list article{background:#fffffff0;border:1px solid #dce5f1;border-left:4px solid #e69a45;border-radius:13px;padding:14px 16px;box-shadow:0 7px 16px #1c3d6a0d}.placement-feedback-list article.correct{border-left-color:#3caf6c}.placement-feedback-list article>header{justify-content:space-between;align-items:center;display:flex}.placement-feedback-list article>header span,.placement-feedback-list article>header strong{font-size:.72rem;font-weight:900}.placement-feedback-list article.correct>header strong{color:#26784d}.placement-feedback-list article.incorrect>header strong{color:#a55c23}.placement-feedback-list h2{color:#152747;margin:8px 0;font-size:.98rem}.placement-feedback-list p{color:#4d6280;margin:5px 0;font-size:.82rem;line-height:1.45}.placement-feedback-copy{color:#263f63!important}.placement-feedback-rationale{font-style:italic}.placement-answer-explanation{background:#f6f8fc;border:1px solid #e2e8f2;border-radius:10px;margin-top:8px;padding:8px 10px}.placement-answer-explanation.correct-answer-explanation{background:#f1faf5;border-color:#cce9d8}.placement-review-context{background:#f6f4ff;border:1px solid #e1d9ff;border-radius:10px;margin:8px 0;padding:8px 10px}.placement-review-context summary{color:#6843ce;cursor:pointer;font-size:.76rem;font-weight:850}.placement-review-context p{white-space:pre-wrap;margin-top:8px}.placement-review-footer{justify-content:space-between;align-items:center;gap:16px;display:flex}.placement-review-footer>span{color:#627592;font-size:.76rem;font-weight:700}.placement-audio-card{color:#fff;background:linear-gradient(145deg,#071e4b,#0a2f6e);border-radius:16px;margin-bottom:15px;padding:16px}.placement-audio-card>div{align-items:center;gap:8px;display:flex}.placement-audio-card audio{display:none}.placement-audio-play{color:#11234c;cursor:pointer;background:linear-gradient(135deg,#ffb238,#ff8a18);border:0;border-radius:11px;align-items:center;gap:9px;min-height:44px;margin:14px 0 10px;padding:10px 15px;font:850 .84rem/1 inherit;display:inline-flex}.placement-audio-play span{background:#ffffff47;border-radius:50%;justify-content:center;align-items:center;width:24px;height:24px;display:inline-flex}.placement-audio-card p{color:#d9e8ff;margin:12px 0;line-height:1.5}.placement-audio-card small{color:#a9c7f7}.placement-error{color:#923d21;background:#fff2ed;border:1px solid #ffc5b1;border-radius:10px;margin-top:12px;padding:10px 12px;font-size:.78rem;font-weight:750}.placement-welcome{align-content:center}.placement-welcome .placement-titlebar,.placement-result-workspace .placement-titlebar{text-align:center;flex-direction:column;justify-content:center;gap:10px;max-width:820px;margin-inline:auto}.placement-welcome .placement-titlebar>div,.placement-result-workspace .placement-titlebar>div{justify-items:center;display:grid}.placement-welcome .placement-titlebar p:last-child,.placement-result-workspace .placement-titlebar p:last-child{max-width:650px}.placement-welcome-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:14px;width:100%;max-width:980px;margin:clamp(16px,4vh,38px) auto 0;display:grid}.placement-welcome-grid article{background:#ffffffeb;border:1px solid #dce5f2;border-radius:16px;align-items:center;gap:16px;min-height:118px;padding:18px;display:flex}.placement-welcome-grid article>span{color:#6740da;background:#f1ecff;border-radius:14px;flex:0 0 54px;justify-content:center;align-items:center;height:54px;font-weight:950;display:inline-flex}.placement-welcome-grid small{color:#7253cc;font-weight:900}.placement-welcome-grid h2{color:#122341;margin:3px 0;font-size:1.15rem}.placement-welcome-grid p{color:#60738e;margin:0;font-size:.78rem}.placement-welcome-grid strong{color:#b36313;margin-top:5px;font-size:.7rem;display:block}.placement-welcome-actions{justify-content:space-between;align-items:center;gap:20px;width:100%;max-width:980px;margin:18px auto 0;display:flex}.placement-welcome-actions p{color:#63748f;margin:0;font-size:.78rem}.placement-leave-backdrop{z-index:1000;background:#05122e9e;justify-content:center;align-items:center;padding:20px;display:flex;position:fixed;inset:0}.placement-leave-dialog{text-align:center;background:#fff;border-radius:20px;width:100%;max-width:470px;padding:28px;box-shadow:0 28px 80px #0010314d}.placement-leave-dialog>span{color:#6740dc;background:#eee9ff;border-radius:50%;justify-content:center;align-items:center;width:54px;height:54px;font-size:1.5rem;display:inline-flex}.placement-leave-dialog h2{color:#10213f;margin:15px 0 8px}.placement-submit-dialog{max-width:540px;padding:30px 34px}.placement-submit-dialog h2{overflow-wrap:anywhere;font-size:clamp(2rem,4vw,3rem);line-height:1.02}.placement-submit-dialog div{flex-wrap:wrap}.placement-leave-dialog p{color:#5e718f;line-height:1.55}.placement-leave-dialog div{justify-content:center;gap:10px;margin-top:20px;display:flex}.placement-result-workspace{align-content:center}.placement-result-card{text-align:center;background:#fffffff2;border:1px solid #dbe5f2;border-radius:22px;width:100%;max-width:820px;margin:20px auto;padding:clamp(24px,4vw,44px)}.placement-result-card>p:first-child{color:#7250d3;letter-spacing:.08em;text-transform:uppercase;font-size:.78rem;font-weight:900}.placement-result-card>strong{color:#10203e;margin:10px;font-size:clamp(3rem,7vw,5.5rem);line-height:1;display:block}.placement-result-workspace.result-mode-uneven .placement-result-card>strong,.placement-result-workspace.result-mode-highly_uneven .placement-result-card>strong,.placement-result-workspace.result-mode-incomplete .placement-result-card>strong{font-size:clamp(2.25rem,5vw,4.2rem);line-height:1.05}.placement-result-card>span{color:#5c6f8b;max-width:680px;margin:0 auto;line-height:1.55;display:block}.placement-review-required{color:#a54310;background:#fff0e4;border:1px solid #ffc99e;border-radius:999px;margin:2px 0 14px;padding:8px 12px;font-size:.78rem;display:inline-flex}.placement-domain-profile{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:22px 0 0;display:grid}.placement-domain-profile article{background:#f4f2ff;border:1px solid #ddd5ff;border-radius:14px;padding:15px}.placement-domain-profile span,.placement-domain-profile strong,.placement-domain-profile small{display:block}.placement-domain-profile span{color:#67548f;text-transform:uppercase;font-size:.7rem;font-weight:850}.placement-domain-profile strong{color:#4f2abe;margin:5px 0 3px;font-size:1.35rem}.placement-domain-profile small{color:#6b7890}.placement-conservative-guidance{color:#4b5f7a;background:#f8fafc;border:1px solid #e0e7f0;border-radius:12px;margin:12px 0 0;padding:11px}.placement-conservative-guidance b{color:#172c4c}.placement-result-confidence{color:#516986;margin:0 0 10px;font-size:.78rem;font-weight:750}.placement-result-modules{grid-template-columns:repeat(4,1fr);gap:10px;margin:28px 0 18px;display:grid}.placement-result-modules article{background:#f4f7fb;border-radius:12px;padding:14px 8px}.placement-result-modules span,.placement-result-modules strong{display:block}.placement-result-modules span{color:#637591;font-size:.72rem}.placement-result-modules strong{color:#5632c2;margin-top:4px;font-size:1.2rem}.placement-result-note{color:#657792;font-size:.75rem;line-height:1.5}.placement-locked-panel{text-align:center;max-width:620px;margin:auto;padding:44px}.placement-locked-panel>span{color:#8190a8;font-size:2.5rem}.placement-locked-panel h1{color:#152644}.placement-locked-panel p:not(.eyebrow){color:#62748f;line-height:1.55}.placement-access-control{background:#f6f4ff;border:1px solid #ded5ff;border-radius:14px;flex-direction:column;justify-content:space-between;align-items:stretch;gap:18px;margin-top:16px;padding:15px;display:flex}.placement-access-control span,.placement-access-control strong{display:block}.placement-access-control span{color:#7151cc;text-transform:uppercase;font-size:.72rem;font-weight:900}.placement-access-control strong{color:#1c2c49;margin-top:3px}.placement-access-control p{color:#63748f;margin:5px 0 0;font-size:.72rem}.placement-access-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;width:100%;display:grid}.placement-access-actions form,.placement-access-actions button{width:100%;min-width:0}.homework-type-placement{color:#6038d2;background:linear-gradient(145deg,#efeaff,#dcd2ff);font-size:1.05rem;font-weight:950}@media (width>=1101px){.placement-route-page{height:100dvh;min-height:0;overflow:hidden}.placement-route-page .student-portal,.placement-route-page .portal-sidebar,.placement-main{height:100%;min-height:0}.placement-route-page .student-portal{max-width:none}.placement-main{display:block;overflow:hidden}.placement-test-workspace{grid-template-rows:auto auto auto minmax(0,1fr);height:100%;min-height:0}.placement-welcome,.placement-result-workspace{grid-template-rows:auto minmax(0,auto) auto}.vocabulary-route-page .student-portal,.placement-route-page .student-portal{max-width:1680px}}.ledger-placement-apply{background:linear-gradient(135deg,#faf8ff,#f2efff);border:1px solid #d8ceff;border-radius:14px;gap:8px;padding:14px;display:grid}.ledger-placement-apply>p:not(.ledger-card-label){color:var(--muted);font-size:.9rem;line-height:1.4}.ledger-placement-apply-button{justify-self:start}@media (width<=1100px){.placement-test-workspace{min-height:auto}.placement-question-layout{grid-template-columns:minmax(0,1fr)}.placement-question-sidebar{display:block}}@media (width>=1101px) and (height<=820px){.placement-test-workspace{gap:10px;padding:18px 20px}.placement-titlebar h1{font-size:2rem}.placement-module-tabs button{min-height:56px;padding-block:8px}.placement-progress-strip{min-height:42px;padding-block:7px}.placement-question-layout{padding-top:2px}.placement-question-card,.placement-question-sidebar section{padding:14px 16px}.placement-question-card h2{margin:10px 0}.placement-question-actions{padding-top:12px}.placement-question-grid{grid-auto-rows:minmax(28px,1fr);gap:5px}.placement-question-grid button{min-height:28px}.placement-question-key{margin-top:8px}}@media (width<=720px){.placement-test-workspace{border-radius:14px;padding:14px}.placement-titlebar,.placement-save-actions,.placement-welcome-actions,.placement-access-control,.placement-access-actions{flex-direction:column;align-items:stretch}.placement-titlebar{align-items:flex-start}.placement-save-actions,.placement-access-actions{width:100%}.placement-module-tabs{grid-template-columns:repeat(2,minmax(0,1fr));padding-bottom:0;display:grid;overflow:visible}.placement-module-tabs button{flex:initial;min-width:0}.placement-progress-strip{grid-template-columns:1fr auto;gap:8px}.placement-progress-strip span{grid-area:2/1/auto/-1}.placement-question-sidebar{grid-template-columns:1fr}.placement-question-actions,.placement-test-footer{grid-template-columns:1fr 1fr}.placement-question-actions>.primary-action,.placement-question-actions>.placement-submit-action{grid-column:2}.placement-test-footer>span{grid-area:1/1/auto/-1}.placement-welcome-grid,.placement-result-modules,.placement-domain-profile{grid-template-columns:1fr}.placement-welcome-actions .primary-action,.placement-access-actions button{width:100%}.placement-review-footer{flex-direction:column;align-items:stretch}.placement-review-summary,.placement-access-actions{grid-template-columns:1fr}}@media (width>=1101px){.vocabulary-main .vocabulary-library-home-shell{grid-template-rows:auto minmax(0,1fr)}.vocabulary-main .vocabulary-library-home-content{flex-direction:column;gap:clamp(12px,1.6vh,19px);padding-block:clamp(16px,2vh,24px);display:flex;overflow-y:auto}.vocabulary-main .vocabulary-library-home-content .vocabulary-category-card{min-height:0;padding:0}.vocabulary-main .vocabulary-library-home-content .vocabulary-category-grid{grid-template-rows:repeat(2,minmax(226px,1fr));grid-template-columns:repeat(2,minmax(0,1fr))}.vocabulary-main .vocabulary-library-home-content .vocabulary-category-card{grid-template-rows:minmax(0,1fr);grid-template-columns:minmax(190px,.9fr) minmax(0,1.25fr)}.vocabulary-main .vocabulary-library-home-content .vocabulary-category-visual{min-height:0}.vocabulary-main .vocabulary-library-home-content .vocabulary-category-copy{align-content:center;padding:20px 24px}.vocabulary-main .vocabulary-library-home-content .vocabulary-category-icon{position:static;top:auto;left:auto}.vocabulary-main .vocabulary-library-home-content .vocabulary-category-copy>small{min-height:0}.vocabulary-main .vocabulary-library-home-content .vocabulary-benefit-strip{display:none}}.vocabulary-library-home-content .vocabulary-category-active>span:last-child{color:inherit;font-weight:inherit}@media (width>=1101px){.teacher-vocabulary-main:has(.vocabulary-library-pilot){grid-template-rows:auto minmax(0,1fr);display:grid}.teacher-vocabulary-main:has(.vocabulary-library-pilot)>.vocabulary-library-pilot{box-sizing:border-box;align-self:stretch;height:100%;min-height:0}.teacher-vocabulary-main:has(.vocabulary-game-page){grid-template-rows:minmax(0,1fr)}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-game-page{background:#fff;border:1px solid #d7e4f2;border-radius:20px;height:100%;overflow:hidden}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-focus-shell{background:radial-gradient(circle at 50% 32%,#42b1c81a,#0000 31%),linear-gradient(#fff 0 112px,#f6fbff 112px 100%);border:0;border-radius:0}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-focus-topbar{background:0 0;border:0;border-bottom:1px solid #dce8f5;border-radius:0;padding:18px 28px 14px}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-focus-card-top{padding:10px 28px 8px}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-card-progress{width:auto;margin-inline:28px}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-focus-image,.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-focus-image img{width:100%;min-height:0}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-focus-image img{object-position:center}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-flip-card{width:min(100% - 44px,930px);max-width:930px;height:min(790px,100dvh - 155px);min-height:650px;margin-block:12px 0}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-flip-face{border-radius:20px;padding:20px}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-flip-face:has(.vocabulary-focus-image){grid-template-rows:minmax(390px,1.95fr) minmax(235px,1fr);grid-template-columns:1fr;gap:0;padding:20px}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-focus-image{background:#bee4f6;border-radius:16px}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-focus-image img{object-fit:contain}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-focus-answer{padding:12px 6px 2px}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-answer-side{grid-template-columns:repeat(4,minmax(0,1fr));align-content:start;justify-items:stretch;gap:5px 12px;display:grid}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-answer-side>.eyebrow{z-index:2;background:#fffffff0;border-radius:999px;grid-column:1/-1;width:max-content;margin:-27px auto 0;padding:7px 22px;box-shadow:0 6px 18px #123d701a}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-answer-side>h1,.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-answer-side>.vocabulary-meaning,.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-answer-side>.vocabulary-verb-forms,.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-answer-side>.vocabulary-bilingual-example{grid-column:1/-1}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-answer-side>h1{text-align:center;margin:0;font-size:clamp(3.4rem,4.2vw,4.35rem);line-height:.96}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-answer-side>.vocabulary-meaning{text-align:center;margin:-1px 0 3px}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-answer-side>.vocabulary-bilingual-example{background:linear-gradient(90deg,#f5fffd,#f4fbff);border-color:#bde7df;width:100%;margin:1px 0 3px;padding:8px 16px}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-answer-side>.vocabulary-audio-actions,.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-answer-side>.vocabulary-focus-actions{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px;width:100%;margin:0;display:grid}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-answer-side>.vocabulary-audio-actions{grid-column:1/3}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-answer-side>.vocabulary-focus-actions{grid-column:3/5}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-answer-side .vocabulary-audio-button,.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-answer-side .vocabulary-good,.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-answer-side .vocabulary-missed{white-space:nowrap;min-height:54px;padding:10px 12px}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-prompt-side{padding:20px clamp(22px,7vw,120px) 8px}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-prompt-side>h1{margin-block:5px 8px;font-size:clamp(3.4rem,5vw,4.8rem)}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-no-image{width:min(100% - 72px,900px);max-width:900px;height:min(610px,100dvh - 220px);min-height:500px}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-no-image .vocabulary-flip-face{align-content:center;justify-items:center;padding:clamp(42px,7vh,82px) clamp(56px,9vw,130px)}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-no-image .vocabulary-focus-answer{place-content:center;align-self:stretch;align-items:center;gap:10px;width:100%;max-width:720px;height:100%;padding:0}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-no-image .vocabulary-answer-side{text-align:center;flex-direction:column;justify-content:center;place-self:stretch center;align-items:center;display:flex}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-no-image .vocabulary-answer-side>.eyebrow{margin:0 auto}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-no-image .vocabulary-answer-side>h1{margin-block:2px 0;font-size:clamp(4rem,6vw,6rem)}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-no-image .vocabulary-answer-side>.vocabulary-meaning{margin-bottom:12px}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-no-image .vocabulary-answer-side>.vocabulary-audio-actions,.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-no-image .vocabulary-answer-side>.vocabulary-focus-actions{grid-column:auto;width:100%;max-width:560px;margin:0;display:grid}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-no-image .vocabulary-answer-side>.vocabulary-audio-actions{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-no-image .vocabulary-answer-side>.vocabulary-focus-actions{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-no-image .vocabulary-prompt-side>h1{margin-block:4px 2px;font-size:clamp(4rem,6vw,6rem);line-height:.98}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-no-image .vocabulary-card-instruction{margin-bottom:8px}.vocabulary-main:not(.teacher-vocabulary-main) .vocabulary-no-image{width:min(100% - 72px,900px);max-width:900px;height:min(610px,100dvh - 220px);min-height:500px}.vocabulary-main:not(.teacher-vocabulary-main) .vocabulary-no-image .vocabulary-flip-face{align-content:center;justify-items:center;padding:clamp(42px,7vh,82px) clamp(56px,9vw,130px)}.vocabulary-main:not(.teacher-vocabulary-main) .vocabulary-no-image .vocabulary-focus-answer{place-content:center;align-self:stretch;align-items:center;gap:10px;width:100%;max-width:720px;height:100%;padding:0}.vocabulary-main:not(.teacher-vocabulary-main) .vocabulary-no-image .vocabulary-answer-side{text-align:center;flex-direction:column;justify-content:center;place-self:stretch center;align-items:center;display:flex}.vocabulary-main:not(.teacher-vocabulary-main) .vocabulary-no-image .vocabulary-answer-side>.vocabulary-audio-actions,.vocabulary-main:not(.teacher-vocabulary-main) .vocabulary-no-image .vocabulary-answer-side>.vocabulary-focus-actions{grid-column:auto;width:100%;max-width:560px;margin:0;display:grid}.vocabulary-main:not(.teacher-vocabulary-main) .vocabulary-no-image .vocabulary-answer-side>.vocabulary-audio-actions{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}.vocabulary-main:not(.teacher-vocabulary-main) .vocabulary-no-image .vocabulary-answer-side>.vocabulary-focus-actions{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=720px){.homework-student-search-field .ledger-student-search-popover{width:auto;max-height:min(72dvh,520px);position:fixed;inset:auto 10px 10px}}.learning-focus-portal-layout{width:100%;max-width:1680px}.learning-focus-main{min-width:0}.learning-focus-page-header{background:linear-gradient(110deg,#fff 0%,#f7fbff 65%,#edf6ff 100%);border:1px solid #dbe6f4;border-radius:15px;grid-template-columns:minmax(250px,.8fr) minmax(320px,1.1fr) auto;align-items:center;gap:18px;padding:16px 18px;display:grid;box-shadow:0 13px 32px #1c487c14}.learning-focus-page-header h1{color:var(--navy);margin:2px 0 3px;font-size:clamp(1.65rem,2.1vw,2.3rem);line-height:1}.learning-focus-page-header>div>p:last-child{color:#617594;margin:0;font-size:.76rem}.ledger-focus-switch{background:#eef4fb;border:1px solid #d4e1f2;border-radius:11px;align-items:center;padding:4px;display:flex}.ledger-focus-switch a,.ledger-focus-switch span{color:#4f6685;white-space:nowrap;border-radius:8px;min-height:36px;padding:9px 12px;font-size:.72rem;font-weight:850;text-decoration:none}.ledger-focus-switch span{color:#fff;background:#176cff;box-shadow:0 6px 14px #176cff33}.learning-focus-workspace{gap:14px;margin-top:12px;display:grid}.learning-focus-controls{background:#fff;border:1px solid #dce7f4;border-radius:13px;justify-content:space-between;align-items:center;gap:16px;padding:10px 12px;display:flex}.learning-focus-add{flex:none;min-height:38px;padding:9px 15px}.learning-focus-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:12px;display:grid}.learning-focus-stat-grid article{background:#fff;border:1px solid #dce7f3;border-radius:14px;grid-template-columns:52px minmax(0,1fr);align-items:center;gap:12px;min-height:104px;padding:15px;display:grid}.learning-focus-stat-icon{color:#1872e8;background:#e8f3ff;border-radius:50%;place-items:center;width:50px;height:50px;font-size:1.45rem;font-weight:900;display:grid}.learning-focus-stat-grid .needs_attention .learning-focus-stat-icon{color:#e24c59;background:#ffe3e5}.learning-focus-stat-grid .in_progress .learning-focus-stat-icon{color:#e0970b;background:#fff0cc}.learning-focus-stat-grid .stable .learning-focus-stat-icon{color:#10a56d;background:#dff7e9}.learning-focus-stat-grid small{color:#516987;letter-spacing:.055em;text-transform:uppercase;font-size:.62rem;font-weight:900;display:block}.learning-focus-stat-grid strong{color:var(--navy);margin-top:2px;font-size:1.35rem;line-height:1.05;display:block}.learning-focus-stat-grid p{color:#71819a;margin:5px 0 0;font-size:.69rem}.learning-focus-board{gap:14px}.learning-focus-column{border-radius:15px;flex-direction:column;min-height:410px;display:flex}.learning-focus-column>header{padding:13px 14px}.learning-focus-column>header h2{letter-spacing:.045em;text-transform:uppercase;margin:0;font-size:.82rem}.learning-focus-card-list{align-content:start;gap:8px;padding:0 9px 10px;display:grid}.learning-focus-card{border-left-width:1px;min-height:104px;padding:13px;position:relative}.learning-focus-card.selected{border-color:#176cff;box-shadow:0 0 0 1px #176cff,0 9px 22px #145ccc21}.learning-focus-card strong{font-size:.88rem}.learning-focus-card>i{color:#617795;font-size:.62rem;font-style:normal;font-weight:800;position:absolute;bottom:11px;right:12px}.learning-focus-column-add{color:#1766cf;cursor:pointer;min-height:36px;font:inherit;background:#ffffffbf;border:1px dashed #c9d8eb;border-radius:9px;margin:auto 9px 10px;font-size:.7rem;font-weight:850}.learning-focus-detail-panel{background:#fff;border:1px solid #d7e3f1;border-radius:16px;padding:18px;position:relative;box-shadow:0 16px 36px #1b457614}.learning-focus-detail-panel>header{border-bottom:1px solid #e5ecf5;justify-content:space-between;align-items:flex-start;gap:20px;padding-bottom:15px;display:flex}.learning-focus-detail-panel h2{color:var(--navy);margin:3px 0 8px;font-size:1.55rem}.learning-focus-detail-tags{flex-wrap:wrap;gap:6px;display:flex}.learning-focus-detail-tags span{color:#526a89;background:#edf3fa;border-radius:999px;padding:5px 8px;font-size:.64rem;font-weight:850}.learning-focus-detail-tags .needs_attention{color:#ba3242;background:#ffe7e9}.learning-focus-detail-tags .in_progress{color:#a76500;background:#fff0cd}.learning-focus-detail-tags .stable{color:#078254;background:#ddf7e8}.learning-focus-detail-panel dl{grid-template-columns:repeat(3,auto);gap:8px;margin:0;display:grid}.learning-focus-detail-panel dl div{background:#f5f8fc;border-radius:10px;min-width:100px;padding:9px 11px}.learning-focus-detail-panel dt{color:#6a7d98;letter-spacing:.04em;text-transform:uppercase;font-size:.58rem;font-weight:850}.learning-focus-detail-panel dd{color:var(--navy);margin:3px 0 0;font-size:.78rem;font-weight:850}.learning-focus-detail-grid{grid-template-columns:minmax(360px,.85fr) minmax(440px,1.15fr);gap:18px;padding-top:16px;display:grid}.learning-focus-detail-grid h3{color:var(--navy);grid-column:1/-1;margin:0 0 2px;font-size:.94rem}.learning-focus-edit-form{background:#f9fbfe;border:1px solid #e0e8f3;border-radius:12px;grid-template-columns:repeat(2,minmax(0,1fr));align-content:start;padding:14px}.learning-focus-edit-actions{grid-column:1/-1;gap:8px;display:flex}.learning-focus-history{align-content:start;gap:10px;display:grid}.learning-focus-event-form{background:#f7fbff;border:1px solid #dce7f3;border-radius:12px;grid-template-columns:145px minmax(0,1fr) auto;align-items:end;gap:9px;padding:12px;display:grid}.learning-focus-event-form label{color:#405b81;text-transform:uppercase;gap:5px;font-size:.63rem;font-weight:850;display:grid}.learning-focus-event-form input,.learning-focus-event-form textarea{width:100%;min-height:40px;color:var(--navy);font:inherit;text-transform:none;background:#fff;border:1px solid #ccdbee;border-radius:8px;padding:8px 9px;font-size:.75rem}.learning-focus-event-form textarea{resize:vertical}.learning-focus-event-form button{min-height:40px}.learning-focus-timeline{gap:7px;max-height:330px;padding-right:4px;display:grid;overflow:auto}.learning-focus-timeline article{border:1px solid #e0e8f3;border-radius:10px;grid-template-columns:78px minmax(0,1fr) auto;align-items:start;gap:10px;padding:11px;display:grid}.learning-focus-timeline article>span{color:#2763b8;text-align:center;background:#e6f0ff;border-radius:999px;padding:5px 6px;font-size:.57rem;font-weight:850}.learning-focus-timeline article>span.study_note{color:#087a59;background:#e0f7ee}.learning-focus-timeline article strong{color:var(--navy);font-size:.72rem}.learning-focus-timeline article p{color:#596f8e;margin:4px 0 0;font-size:.74rem;line-height:1.45}.learning-focus-timeline form button,.learning-focus-delete-form button{color:#c22c3a;cursor:pointer;font:inherit;background:0 0;border:0;font-size:.63rem;font-weight:850}.learning-focus-history-empty{color:#6a7d98;text-align:center;border:1px dashed #ccd9ea;border-radius:10px;margin:0;padding:20px;font-size:.76rem}.learning-focus-delete-form{text-align:right;border-top:1px solid #edf1f6;margin-top:12px;padding-top:10px}.learning-focus-detail-panel.empty{text-align:center}.learning-focus-detail-panel.empty p{color:#6c7f99}.ledger-precreate{align-items:center;gap:6px;display:flex}.ledger-precreate>span{color:#6a7c95;margin-right:8px;font-size:.7rem}.ledger-precreate>strong{color:#405b7d;font-size:.68rem}.ledger-precreate form{display:contents}.ledger-precreate button{color:#1261d7;cursor:pointer;min-width:42px;min-height:34px;font:inherit;background:#f6faff;border:1px solid #bcd2f1;border-radius:8px;font-size:.72rem;font-weight:900}.ledger-precreate button:hover{color:#fff;background:#176cff;border-color:#176cff}.ledger-precreate button:disabled{color:#7c899b;cursor:not-allowed;background:#eef2f7;border-color:#d7e0ec}.ledger-precreate button:disabled:hover{color:#7c899b;background:#eef2f7;border-color:#d7e0ec}.ledger-package-required{font-weight:800;color:#9a5a00!important}.ledger-note-cell>p{margin:0 0 6px}.ledger-result-banner.transient{z-index:120;width:auto;max-width:min(360px,100vw - 36px);position:fixed;top:18px;right:18px;box-shadow:0 14px 34px #163b682e}@media (width<=1120px){.learning-focus-page-header{grid-template-columns:minmax(240px,1fr) minmax(300px,1.2fr)}.ledger-focus-switch{grid-column:1/-1;width:fit-content}.learning-focus-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.learning-focus-detail-grid{grid-template-columns:1fr}}@media (width<=760px){.learning-focus-portal-layout{width:min(100% - 20px,1440px)}.learning-focus-page-header,.learning-focus-stat-grid,.learning-focus-board{grid-template-columns:1fr}.learning-focus-column{min-height:240px}.learning-focus-controls{flex-direction:column;align-items:flex-start}.learning-focus-detail-panel>header{flex-direction:column}.learning-focus-detail-panel dl{grid-template-columns:repeat(3,minmax(0,1fr));width:100%}.learning-focus-detail-panel dl div{min-width:0}.learning-focus-edit-form{grid-template-columns:1fr}.learning-focus-edit-wide,.learning-focus-edit-actions{grid-column:auto}.learning-focus-event-form{grid-template-columns:1fr}.learning-focus-timeline article{grid-template-columns:72px minmax(0,1fr)}.learning-focus-timeline article form{grid-column:2}.ledger-table-heading{flex-direction:column;align-items:flex-start}.ledger-precreate{flex-wrap:wrap}}.homework-result-score{color:#08794e;letter-spacing:0;background:#e7f8ef;border:1px solid #9ed7bd;border-radius:999px;place-items:center;min-width:58px;min-height:34px;margin-top:4px;padding:6px 10px;font-size:.92rem;font-weight:900;display:inline-grid}.homework-result-form{background:#f7faff;border:1px solid #d7e3f4;border-radius:11px;gap:6px;width:min(100%,154px);padding:8px}.homework-result-form label{color:#56708f;text-transform:uppercase;gap:4px;font-size:.62rem;font-weight:850;display:grid}.homework-result-input{background:#fff;border:1px solid #c9d9ed;border-radius:8px;grid-template-columns:minmax(0,1fr) auto;align-items:center;display:grid;overflow:hidden}.homework-result-input input{width:100%;min-width:0;height:34px;color:var(--navy);font:inherit;background:0 0;border:0;outline:0;padding:5px 6px 5px 9px;font-size:.82rem;font-weight:850}.homework-result-input i{color:#71839d;padding-right:8px;font-size:.72rem;font-style:normal}.homework-result-form .secondary-action{width:100%;min-height:32px;padding:6px 8px;font-size:.7rem}@media (width>=861px){main .homework-card{grid-template-columns:166px minmax(0,1fr) 142px 190px}}.ledger-table th:first-child{width:11%}.ledger-table th:nth-child(2){width:10%}.ledger-table th:nth-child(3){width:8%}.ledger-table th:nth-child(4){width:29%}.ledger-table th:nth-child(5){width:17%}.ledger-table th:nth-child(6){width:14%}.ledger-table th:nth-child(7){text-align:right;width:11%}.ledger-table tbody tr.ledger-row-done td{background:#eefaf3}.ledger-table tbody tr.ledger-row-cancelled td{background:#fff0f1}.ledger-table tbody tr.ledger-row-rescheduled td{background:#fff9e9}.ledger-table tbody tr.ledger-row-awaiting td{background:#fff}.ledger-date-pill{color:#173f72;white-space:nowrap;background:#f4f8fd;border:1px solid #cbdcf1;border-radius:999px;align-items:center;min-height:28px;padding:5px 9px;line-height:1.15;display:inline-flex}.ledger-note-cell{white-space:normal;overflow:visible}.ledger-note-open{color:#263f63;cursor:pointer;width:100%;max-height:3.05em;font:inherit;text-align:left;-webkit-line-clamp:2;background:0 0;border:0;-webkit-box-orient:vertical;padding:0;line-height:1.5;display:-webkit-box;overflow:hidden}.ledger-note-open:hover{color:#075fce;text-underline-offset:2px;text-decoration:underline}.ledger-note-dialog{max-width:720px}.ledger-note-dialog>p{color:#294364;white-space:pre-wrap;max-height:min(52vh,480px);margin:0;font-size:.95rem;line-height:1.7;overflow:auto}.ledger-focus-cell{white-space:normal;overflow:visible}.ledger-focus-none{color:#91a0b5}.ledger-focus-bubbles{flex-wrap:wrap;gap:5px;display:flex}.learning-focus-event-form{grid-template-columns:138px minmax(0,1fr);align-items:stretch}.learning-focus-event-meta{align-content:start;gap:7px;display:grid}.learning-focus-event-meta button{width:100%;min-height:34px}.learning-focus-event-form>label textarea{min-height:86px}.learning-focus-timeline article{padding:0;display:block;overflow:hidden}.learning-focus-history-open{width:100%;color:inherit;cursor:pointer;font:inherit;text-align:left;background:0 0;border:0;grid-template-columns:78px minmax(0,1fr) auto;align-items:start;gap:10px;padding:11px;display:grid}.learning-focus-history-open:hover{background:#f7faff}.learning-focus-history-open>span{color:#2763b8;text-align:center;background:#e6f0ff;border-radius:999px;padding:5px 6px;font-size:.57rem;font-weight:850}.learning-focus-history-open>span.study_note{color:#087a59;background:#e0f7ee}.learning-focus-history-open strong{color:var(--navy);font-size:.72rem}.learning-focus-history-open p{color:#596f8e;-webkit-line-clamp:2;-webkit-box-orient:vertical;margin:4px 0 0;font-size:.74rem;line-height:1.45;display:-webkit-box;overflow:hidden}.learning-focus-history-open>i{color:#1766cf;white-space:nowrap;font-size:.63rem;font-style:normal;font-weight:850}.learning-focus-history-dialog{max-width:720px}.learning-focus-history-edit-form{gap:12px;display:grid}.learning-focus-history-edit-form label{color:#45607f;text-transform:uppercase;gap:6px;font-size:.68rem;font-weight:850;display:grid}.learning-focus-history-edit-form input,.learning-focus-history-edit-form textarea{width:100%;color:var(--navy);font:inherit;text-transform:none;background:#fff;border:1px solid #cbd9eb;border-radius:9px;padding:10px 12px;font-size:.85rem}.learning-focus-history-edit-form textarea{resize:vertical;line-height:1.55}.learning-focus-history-edit-form .primary-action{justify-self:start}.learning-focus-history-delete-form{text-align:right;border-top:1px solid #e7edf5;margin-top:12px;padding-top:11px}.learning-focus-history-delete-form button{color:#c72e3b;cursor:pointer;font:inherit;background:0 0;border:0;font-size:.72rem;font-weight:850}.learning-focus-class-history-detail p{color:#294364;white-space:pre-wrap;max-height:min(52vh,480px);font-size:.95rem;line-height:1.7;overflow:auto}.learning-focus-class-history-detail small{color:#71829a}@media (width<=860px){.homework-result-form{width:min(100%,170px)}}@media (width<=760px){.learning-focus-event-form{grid-template-columns:1fr}.learning-focus-history-open{grid-template-columns:72px minmax(0,1fr)}.learning-focus-history-open>i{grid-column:2}}.teacher-security-main{align-content:start;gap:16px;display:grid}.teacher-security-main .panel form{gap:12px;margin-top:18px;display:grid}.teacher-security-main .panel form label{color:#1b3159;gap:7px;font-weight:800;display:grid}.teacher-security-main .panel form input{color:#081b41;max-width:360px;min-height:44px;font:inherit;background:#fff;border:1px solid #c7d7ec;border-radius:10px;padding:10px 12px}.security-setup-key{background:#f7fbff;border:1px solid #c8dbf3;border-radius:12px;gap:6px;margin:16px 0;padding:16px;display:grid}.security-setup-key span{color:#55708f;letter-spacing:.08em;text-transform:uppercase;font-size:.75rem;font-weight:850}.security-setup-key code{overflow-wrap:anywhere;color:#061b45;letter-spacing:.08em;font-size:1rem;font-weight:850}.security-copy-key{justify-self:start;margin-top:4px}.security-setup-steps{color:#334f73;gap:8px;margin:14px 0;padding-left:24px;line-height:1.5;display:grid}.security-advanced-link{color:#526d8f;margin:12px 0}.security-advanced-link summary{cursor:pointer;font-weight:800}.security-advanced-link code{overflow-wrap:anywhere;margin-top:8px;font-size:.74rem;display:block}.security-mfa-message{border:1px solid;border-radius:11px;margin:0;padding:13px 15px;font-weight:750;line-height:1.45}.security-mfa-message-error{color:#8a1f1f;background:#fff2f2;border-color:#efb6b6}.security-mfa-message-success{color:#12643d;background:#effbf4;border-color:#a9dec3}.security-code-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:9px;margin-top:16px;display:grid}.security-code-grid code{color:#09265a;text-align:center;background:#f8fbff;border:1px solid #bcd4ef;border-radius:9px;padding:10px;font-weight:850}.security-session-list{gap:8px;margin:16px 0;display:grid}.security-session-list article{border:1px solid #dae5f2;border-radius:10px;justify-content:space-between;align-items:center;gap:16px;padding:12px 14px;display:flex}.security-session-list article div{gap:3px;display:grid}.security-session-list small,.security-session-list span{color:#617593;font-size:.76rem}@media (width<=720px){.security-code-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.security-session-list article{flex-direction:column;align-items:flex-start}}.teacher-health-portal-layout{width:100%;max-width:1680px}.teacher-health-main{grid-auto-rows:max-content;gap:10px;min-width:0}.teacher-health-hero{min-height:108px;margin-bottom:0}.teacher-health-hero .status-pill{color:#315f9e;background:#edf5ff;border:1px solid #cfe0f6;border-radius:999px;place-self:start end;padding:.5rem .7rem;font-size:.76rem;font-weight:850}.health-metric-grid{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;margin-top:8px}.health-metric-grid .student-metric{gap:3px;min-height:76px;padding:10px 12px}.health-metric-grid .student-metric span{font-size:.67rem;line-height:1.2}.health-metric-grid .student-metric strong{overflow-wrap:anywhere;font-size:clamp(1rem,1.25vw,1.28rem);line-height:1.15}.health-error-list{gap:.65rem;display:grid}.health-error-row{border:1px solid #dbe6f4;border-radius:14px;grid-template-columns:minmax(130px,.7fr) minmax(260px,2fr) minmax(130px,.8fr);align-items:start;gap:.75rem;padding:.8rem .9rem;display:grid}.health-error-row div,.health-error-row strong,.health-error-row small{display:block}.health-error-row small,.health-error-row code{color:#55708f;font-size:.75rem}.health-error-row p{overflow-wrap:anywhere;margin:0}.health-alert{border:1px solid;border-radius:18px;justify-content:space-between;align-items:center;padding:1rem 1.15rem;display:flex}.health-alert.clear{background:#effcf4;border-color:#a9e8c3}.health-alert.attention{background:#fff5e8;border-color:#f4c47f}.health-alert h2{margin:.2rem 0 0;font-size:clamp(1.05rem,1.6vw,1.35rem)}.health-alert>span{border-radius:999px;padding:.5rem .7rem;font-size:.78rem;font-weight:900}.health-alert.clear>span{color:#087443;background:#d8f7e5}.health-alert.attention>span{color:#8a4b00;background:#ffe2b9}.health-error-search{grid-template-columns:minmax(220px,1fr) auto auto;align-items:end;gap:.75rem;margin:0 0 1rem;display:grid}.health-error-search label{gap:.35rem;display:grid}.health-error-search label span{color:var(--ink-soft);font-size:.75rem;font-weight:800}.health-error-search input{border:1px solid var(--line);border-radius:12px;min-height:44px;padding:.65rem .8rem}.health-error-search>a{color:var(--blue-700);align-self:center;font-weight:800}@media (width<=720px){.health-alert{flex-direction:column;align-items:flex-start;gap:.75rem}.health-error-search{grid-template-columns:1fr;align-items:stretch}}.ledger-pagination{grid-template-columns:1fr auto 1fr;align-items:center;gap:.75rem;padding:.85rem 1rem 0;display:grid}.ledger-pagination a{color:var(--blue-700);font-weight:800;text-decoration:none}.ledger-pagination a:last-child{justify-self:end}.ledger-pagination>span{color:var(--ink-soft);font-size:.82rem;font-weight:700}@media (width<=900px){.teacher-health-portal-layout{width:min(100% - 20px,1440px)}.health-metric-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.health-error-row{grid-template-columns:1fr}}@media (width<=560px){.health-metric-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-health-hero .status-pill{justify-self:start}}@media (width>=921px){.teacher-workspace-route{box-sizing:border-box;height:100dvh;min-height:0;padding-block:16px;overflow:hidden}.teacher-workspace-route>.teacher-portal{width:100%;max-width:1680px;height:100%;min-height:0;padding-top:0}.teacher-workspace-route>.teacher-portal>.portal-sidebar,.teacher-workspace-route>.teacher-portal>.portal-main{height:100%;min-height:0}.teacher-workspace-route>.teacher-portal>.portal-main:not(.student-ledger-main):not(.teacher-vocabulary-main){overscroll-behavior:contain;scrollbar-width:none;align-content:start;overflow:hidden auto}.teacher-workspace-route>.teacher-portal>.portal-main:not(.student-ledger-main):not(.teacher-vocabulary-main)::-webkit-scrollbar{display:none}}.exercise-content-switcher{background:#ffffffdb;border:1px solid #cfe0f3;border-radius:18px;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;padding:10px;display:grid}.exercise-content-switcher a{color:#173763;border:1px solid #d6e2f1;border-radius:13px;gap:3px;padding:14px 18px;text-decoration:none;display:grid}.exercise-content-switcher a span{color:#607696;font-size:.82rem}.exercise-content-switcher a.active{color:#0b54cb;background:#edf5ff;border-color:#176bff;box-shadow:inset 0 0 0 1px #176bff}.exercise-content-hero-actions{align-items:center;gap:8px;display:flex}.grammar-library-filters{grid-template-columns:minmax(240px,1.8fr) repeat(3,minmax(130px,.7fr));gap:10px;display:grid}.grammar-library-filters label{color:#365170;text-transform:uppercase;letter-spacing:.05em;gap:5px;font-size:.74rem;font-weight:800;display:grid}.grammar-library-filters input,.grammar-library-filters select{color:#0b1935;background:#fff;border:1px solid #cbd9ea;border-radius:10px;width:100%;min-height:44px;padding:0 12px}.grammar-library-summary{color:#617795;margin:14px 0 8px;font-size:.84rem}.content-batch-import{background:#f8fbff;border:1px solid #cfe0f3;border-radius:13px;margin:0 0 14px}.content-batch-import>summary{color:#0b58dc;cursor:pointer;padding:12px 14px;font-weight:850}.content-batch-import>form{gap:12px;padding:0 14px 14px;display:grid}.content-batch-import p{color:#526987;margin:0}.content-batch-import .exercise-import-selection ul{max-height:110px}.content-batch-import .primary-action{justify-self:start}.content-batch-import .exercise-import-selection.is-ready{color:#087448;background:#eaf8f1;border:1px solid #a6dfc1}.content-batch-import .exercise-import-selection.is-ready strong{color:#087448}.content-batch-import .content-batch-confirm.is-ready{background:linear-gradient(135deg,#18b66e,#0a9657);border-color:#13a866;box-shadow:0 10px 24px #0a965733}.grammar-library-list{gap:9px;display:grid}.grammar-library-row{background:#fff;border:1px solid #d6e1ef;border-radius:14px;grid-template-columns:minmax(260px,1.5fr) minmax(280px,1fr) auto;align-items:center;gap:16px;padding:16px;display:grid}.grammar-library-row.is-draft{background:#f3f5f8;border-color:#d5dce6}.grammar-library-title{align-items:center;gap:9px;display:flex}.grammar-library-row p{color:#526987;margin:5px 0 9px}.grammar-library-tags{flex-wrap:wrap;gap:6px;display:flex}.grammar-library-tags span,.content-status{color:#365170;background:#edf3fa;border-radius:999px;padding:4px 8px;font-size:.72rem;font-weight:800}.content-status.published{color:#08743e;background:#def7e9}.content-status.draft{color:#556478;background:#e2e7ed}.grammar-library-row dl{grid-template-columns:repeat(2,minmax(92px,1fr));gap:12px 0;margin:0;display:grid}.grammar-library-row dl div{border-left:1px solid #e2eaf4;min-width:0;padding:0 12px}.grammar-library-row dt{color:#71839d;text-transform:uppercase;overflow-wrap:anywhere;font-size:.65rem;font-weight:800;line-height:1.25}.grammar-library-row dd{overflow-wrap:anywhere;margin:3px 0 0;font-weight:900}.grammar-library-tags .content-updated-at{color:#795b12;background:#f8f0db}.grammar-library-actions{flex-wrap:wrap;justify-content:flex-end;gap:6px;display:flex}.grammar-library-actions form{display:contents}.grammar-library-actions .secondary-action,.grammar-library-actions button{min-height:36px;padding:7px 10px}.grammar-library-actions .grammar-order-form{justify-content:flex-end;align-items:end;gap:6px;width:100%;margin-bottom:2px;display:flex}.grammar-order-form label{color:#617795;letter-spacing:.04em;text-transform:uppercase;gap:3px;font-size:.65rem;font-weight:850;display:grid}.grammar-order-form input[type=number]{color:#0b1935;width:72px;min-height:36px;font:inherit;background:#fff;border:1px solid #cbd9ea;border-radius:9px;padding:6px 8px;font-size:.8rem}.grammar-library-empty{text-align:center;color:#617795;border:1px dashed #c9d8e9;border-radius:12px;padding:32px}.grammar-editor-route,.grammar-saved-preview-route{width:min(1540px,100% - 28px);margin:0 auto;padding:16px 0 28px}.grammar-preview-toolbar{background:#ffffffe6;border:1px solid #cfdeef;border-radius:18px;justify-content:space-between;align-items:center;gap:20px;margin-bottom:12px;padding:18px 22px;display:flex}.grammar-editor-toolbar{color:#617391;align-items:center;gap:12px;min-height:44px;margin-bottom:10px;font-size:.78rem;display:flex}.grammar-editor-toolbar strong{color:#0b7f75;letter-spacing:.08em;text-transform:uppercase;font-size:.72rem}.grammar-editor-toolbar span{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.grammar-editor-toolbar .secondary-action{min-height:38px;margin-left:auto;padding:7px 12px}.grammar-json-editor{grid-template-columns:minmax(0,1.7fr) minmax(310px,.7fr);align-items:stretch;gap:14px;display:grid}.grammar-json-input-panel,.grammar-json-preview{background:#fff;border:1px solid #cfdeef;border-radius:18px;padding:20px}.grammar-json-input-panel textarea{resize:vertical;color:#eaf3ff;tab-size:2;background:#071b39;border:1px solid #bfd0e5;border-radius:12px;width:100%;min-height:68vh;margin-top:14px;padding:16px;font:13px/1.55 Consolas,monospace}.grammar-file-button{cursor:pointer;position:relative;overflow:hidden}.grammar-file-button input{opacity:0;cursor:pointer;position:absolute;inset:0}.grammar-json-preview{position:sticky;top:12px}.grammar-json-preview.valid{border-color:#8bd8b5}.grammar-json-preview.invalid{border-color:#efaaaa}.grammar-json-preview dl{grid-template-columns:repeat(2,minmax(0,1fr));gap:9px;display:grid}.grammar-json-preview dl div{background:#f3f7fc;border-radius:10px;padding:10px}.grammar-json-preview dt{color:#6a7e98;text-transform:uppercase;font-size:.68rem;font-weight:800}.grammar-json-preview dd{overflow-wrap:anywhere;margin:3px 0 0;font-weight:850}.grammar-validation-success{color:#08743e;background:#e7f9ef;border-radius:10px;padding:12px;font-weight:800}.grammar-validation-errors{max-height:48vh;padding-left:22px;overflow:auto}.grammar-validation-errors li{margin-bottom:10px}.grammar-validation-errors code{color:#b21f35;font-weight:800;display:block}.grammar-validation-errors span{color:#536a88}.grammar-editor-version-note{color:#617391;margin:14px 0 0;font-size:.76rem;line-height:1.4}.grammar-editor-actions{grid-template-columns:1fr 1fr;gap:8px;margin-top:8px;display:grid}.grammar-preview-toolbar>div:last-child{gap:8px;display:flex}@media (width<=980px){.grammar-library-filters{grid-template-columns:1fr 1fr}.grammar-library-row{grid-template-columns:1fr}.grammar-library-actions,.grammar-library-actions .grammar-order-form{justify-content:flex-start}.grammar-json-editor{grid-template-columns:1fr}.grammar-json-preview{position:static}}@media (width<=620px){.exercise-content-switcher,.grammar-library-filters{grid-template-columns:1fr}.grammar-preview-toolbar,.exercise-content-hero-actions{flex-direction:column;align-items:stretch}.grammar-editor-toolbar{flex-wrap:wrap}.grammar-editor-toolbar span{order:3;width:100%}.grammar-library-row dl{grid-template-columns:repeat(2,1fr);gap:8px 0}.grammar-editor-route,.grammar-saved-preview-route{width:min(100% - 16px,1540px)}.grammar-json-input-panel textarea{min-height:55vh;font-size:12px}}.homework-submitted-at{justify-items:center;gap:2px;margin-top:4px;display:grid}.homework-submitted-at time{color:#315d78;white-space:nowrap;font-size:.68rem;font-weight:800;line-height:1.25}.vocabulary-topic-row>span:nth-child(2){min-width:0}.vocabulary-topic-progress{background:#e4edf8;border-radius:999px;width:min(260px,100%);height:5px;margin-top:10px;display:block;overflow:hidden}.vocabulary-topic-progress b{border-radius:inherit;background:linear-gradient(90deg,#176bff,#20beb6);height:100%;transition:width .25s;display:block}.vocabulary-topic-started{background:linear-gradient(115deg,#f8fbff,#edf5ff);border-color:#9fc6ff}.vocabulary-topic-complete{background:linear-gradient(115deg,#f5fff9,#e8f9f0);border-color:#79d4aa}.vocabulary-topic-complete .vocabulary-topic-number{color:#087647;background:#d9f5e6}.vocabulary-topic-complete .vocabulary-topic-progress b,.vocabulary-study-pack-complete .vocabulary-topic-progress b{background:#13ad6c}.vocabulary-study-pack-complete{background:linear-gradient(115deg,#f5fff9,#e8f9f0)!important;border-color:#75d6aa!important}.vocabulary-study-pack-complete>div:last-child span{color:#087647}@media (width>=1101px){.vocabulary-main .vocabulary-topic-list,.vocabulary-main .vocabulary-pack-list{grid-auto-rows:max-content;align-content:start}.vocabulary-main .vocabulary-topic-row{height:auto;min-height:88px}.vocabulary-main .vocabulary-study-pack{height:auto;min-height:104px}.vocabulary-main:not(.teacher-vocabulary-main):has(.vocabulary-game-page){overflow:hidden}.vocabulary-main:not(.teacher-vocabulary-main):has(.vocabulary-game-page) .vocabulary-game-page{box-sizing:border-box;background:#fff;border:1px solid #ccdcf0;border-radius:20px;height:100%;min-height:0;overflow:hidden}.vocabulary-main:not(.teacher-vocabulary-main):has(.vocabulary-game-page) .vocabulary-focus-shell{background:radial-gradient(circle at 44% 44%,#cef9ee57,#0000 34%),radial-gradient(circle at 64% 20%,#e2daff47,#0000 30%),linear-gradient(145deg,#fafdff,#f2f9ff);height:100%;min-height:0}.vocabulary-main .vocabulary-no-image .vocabulary-answer-side{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:12px;width:100%;height:100%;padding:32px 42px!important;display:flex!important}.vocabulary-main .vocabulary-no-image .vocabulary-answer-side>.vocabulary-audio-actions,.vocabulary-main .vocabulary-no-image .vocabulary-answer-side>.vocabulary-focus-actions{gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:min(700px,100%)!important;max-width:700px!important;margin:0!important;display:grid!important;position:static!important}}@media (width<=720px){.homework-submitted-at{vertical-align:middle;margin:5px 0 0 7px;display:inline-grid}}.homework-card-due{text-align:center}.homework-submitted-at{text-align:center;place-content:center;justify-items:center;width:100%}.homework-submitted-at time{white-space:normal;justify-items:center;gap:1px;width:100%;display:grid}.homework-submitted-at time span{text-align:center;width:100%;display:block}.student-portal>.portal-sidebar{color:#1c3760;font-family:var(--font-reading), Arial, sans-serif;background:linear-gradient(#fffffffa,#eff7fffa);border:1px solid #d8e6f7;box-shadow:0 20px 55px #355d9221}.student-portal>.portal-sidebar .sidebar-brand-lockup strong,.student-portal>.portal-sidebar .account-footer strong{color:#10264c}.student-portal>.portal-sidebar .sidebar-brand-lockup small,.student-portal>.portal-sidebar .account-footer small{color:#6880a3}.student-portal>.portal-sidebar .sidebar-nav{gap:5px}.student-portal>.portal-sidebar .sidebar-nav a,.student-portal>.portal-sidebar .sidebar-nav .student-feature-link,.student-portal>.portal-sidebar .sidebar-nav .student-placement-link{color:#2b486f;min-height:42px;box-shadow:none;background:0 0;border:1px solid #0000;gap:10px;padding:7px 9px}.student-portal>.portal-sidebar .sidebar-nav a:hover,.student-portal>.portal-sidebar .sidebar-nav a.active{color:#1258cf;box-shadow:none;background:#eaf3ff;border-color:#d8e7fb}.student-nav-icon{color:#4d79ba;background:#eef5ff;border-radius:10px;flex:none;place-items:center;width:32px;height:32px;display:grid}.student-portal>.portal-sidebar .sidebar-nav a.active .student-nav-icon{color:#1165ed;background:#dceaff}.student-dashboard-icon-svg{width:19px;height:19px}.student-nav-icon>.student-dashboard-icon-svg,.student-metric-icon>.student-dashboard-icon-svg{width:19px;max-width:19px;height:19px;max-height:19px;display:block}.student-nav-label{flex:1;min-width:0}.student-portal>.portal-sidebar .student-feature-link.locked{color:#8092aa;background:#f6f9fdc7;border-color:#e2eaf4}.student-portal>.portal-sidebar .student-feature-link.locked small{color:#6680a5;background:#f7faff;border-color:#cbd9eb;margin-left:auto}.student-portal>.portal-sidebar .student-homework-link.pending{color:#8b5700;background:#fff5d9;border-color:#f2dca7}.student-portal>.portal-sidebar .account-footer{color:#18365f;box-shadow:none;background:0 0;border:0;border-top:1px solid #dce7f5;border-radius:0;padding:14px 0 0}.student-portal>.portal-sidebar .account-footer a{color:#24456e;box-shadow:none;background:#ffffffb8;border-color:#d7e3f2}.student-overview-route{background:radial-gradient(circle at 82% 12%,#cae1ff94,#0000 34%),linear-gradient(145deg,#f6faff,#eaf4ff)}.student-overview-main{gap:10px}.student-overview-main .student-dashboard-hero{min-height:78px;box-shadow:none;background:0 0;border:0;border-radius:0;padding:6px 10px}.student-overview-main .student-dashboard-hero h1{letter-spacing:-.045em;font-size:clamp(2rem,3vw,2.65rem)}.welcome-wave{margin-left:7px;font-size:.75em;display:inline-block;transform:translateY(-2px)}.student-overview-main .student-metrics{gap:10px}.student-overview-main .student-metric{border-radius:17px;grid-template-rows:auto auto;grid-template-columns:44px minmax(0,1fr);align-items:center;column-gap:12px;min-height:88px;padding:13px 15px;display:grid;box-shadow:0 11px 28px #46699617}.student-metric-icon{color:#2a6edc;background:#e7f0ff;border-radius:50%;grid-row:1/3;place-items:center;width:44px;min-width:44px;max-width:44px;height:44px;min-height:44px;max-height:44px;display:grid}.student-metric-label{color:#426188;letter-spacing:.055em;text-transform:uppercase;align-self:end;font-size:.72rem;font-weight:900}.student-overview-main .student-metric strong{align-self:start;font-size:1.55rem;line-height:1}.student-overview-main .student-metric.metric-card-positive .student-metric-icon{color:#148858;background:#e3f5ec}.student-overview-main .student-metric.metric-card-danger .student-metric-icon{color:#c54049;background:#ffe9ec}.student-overview-main .student-metric.metric-card-blue .student-metric-icon{color:#356cc2;background:#e8f0ff}.student-overview-main .student-metric.metric-card-warning .student-metric-icon{color:#b87000;background:#fff0c9}.student-overview-main .panel{border-color:#dce7f4;border-radius:17px;padding:14px 16px;box-shadow:0 12px 30px #31527e14}.student-overview-main .panel-heading{margin-bottom:6px}.student-overview-main .panel-heading h2{font-size:1.28rem}.student-overview-main .weekly-activity-panel{grid-column:span 7}.student-overview-main .streak-panel{grid-column:span 5}.student-overview-main .level-progress-panel{flex-direction:column;grid-column:1/-1;justify-content:flex-start;display:flex}.student-overview-main .weekly-chart{min-height:208px;padding:7px 8px 4px}.student-overview-main .weekly-chart>div{grid-template-rows:auto minmax(162px,1fr) auto}.student-overview-main .weekly-summary-strip,.student-overview-main .level-progress-grid{gap:8px}.student-overview-main .streak-showcase{min-height:156px}.student-overview-main .streak-art,.student-overview-main .streak-progress-image{width:132px;height:132px}.student-overview-main .level-progress-card{gap:6px;padding:10px 12px}.skill-progress-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:10px;width:100%;display:grid}.skill-progress-grid article{border:1px solid var(--line);background:linear-gradient(#fff,#f8fbff);border-radius:16px;align-items:center;gap:12px;min-width:0;padding:16px;display:flex}.skill-progress-grid article>div{gap:3px;min-width:0;display:grid}.skill-progress-grid strong{color:var(--navy);font-size:1rem}.skill-progress-grid article>div>span{color:#1c416f;font-size:.84rem;font-weight:800}.skill-progress-grid small{color:var(--muted);font-size:.72rem}.skill-progress-icon{width:42px;height:42px;color:var(--brand-blue);background:#e9f2ff;border-radius:13px;flex:0 0 42px;place-items:center;display:grid}.skill-progress-icon svg{width:22px;height:22px;display:block}@media (width<=820px){.skill-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (width<=520px){.skill-progress-grid{grid-template-columns:1fr}}@media (width>=621px){.homework-card-due{flex-direction:column;justify-content:center;align-items:center;display:flex}}@media (width>=1041px) and (height>=760px){.student-overview-route{height:100dvh;min-height:0;padding:10px 14px;overflow:hidden}.student-overview-portal{align-items:stretch;height:calc(100dvh - 20px);min-height:0;padding-top:0}.student-overview-portal>.portal-sidebar,.student-overview-main,.student-overview-main .student-dashboard-grid{min-height:0}.student-overview-portal>.portal-sidebar{height:100%}.student-overview-main{grid-template-rows:auto auto minmax(0,1fr);height:100%;overflow:hidden}.student-overview-main .student-dashboard-grid{overflow:hidden}}.homework-card{min-height:176px;grid-template-columns:132px minmax(0,1fr) minmax(148px,168px) minmax(180px,208px)!important}.homework-type-art{border-radius:22px;width:104px;height:104px;margin:auto}.homework-card-copy{align-self:center;padding:20px 18px}.homework-card-due{flex-direction:column;justify-content:center;align-items:center;gap:5px;padding:16px;display:flex}.homework-card-actions{background:#ffffffa3;border-left:1px solid #e4ecf8;flex-direction:column;justify-content:center;align-items:stretch;gap:8px;padding:38px 16px 16px;display:flex;position:relative}.homework-card-actions:before{content:"Actions";color:#5d769d;letter-spacing:.1em;text-transform:uppercase;font-size:.68rem;font-weight:850;position:absolute;top:15px;left:16px}.homework-card-actions form,.homework-card-actions .primary-action,.homework-card-actions .secondary-action{width:100%}.homework-card-actions .primary-action,.homework-card-actions .secondary-action{min-height:42px}.homework-card-actions .homework-result-form{background:#f8fbff;border:1px solid #dbe7f7;border-radius:12px;gap:7px;padding:9px}@media (width<=1040px){.homework-card{grid-template-columns:104px minmax(0,1fr) 146px!important}.homework-card-actions{border-top:1px solid #e4ecf8;border-left:0;flex-flow:wrap;grid-area:2/2/auto/-1;align-items:center;padding:36px 18px 16px}.homework-card-actions form,.homework-card-actions .primary-action,.homework-card-actions .secondary-action{width:auto;min-width:132px}.homework-card-actions .homework-result-form{width:min(100%,270px)}}@media (width<=620px){.homework-card{min-height:0;grid-template-columns:82px minmax(0,1fr)!important}.homework-type-art{border-radius:17px;width:64px;height:64px;margin:14px auto}.homework-card-copy{padding:15px 14px 8px}.homework-card-due{text-align:left;border-left:0;flex-flow:wrap;grid-area:2/2;justify-content:flex-start;align-items:center;gap:6px;padding:4px 14px 14px;background:0 0!important}.homework-card-due>span:first-child{font-size:.68rem}.homework-card-due strong{margin-left:0}.homework-submitted-at{text-align:left;justify-items:start;width:auto;margin:0}.homework-submitted-at time,.homework-submitted-at time span{text-align:left;justify-items:start;width:auto}.homework-card-actions{grid-area:3/1/auto/-1;grid-template-columns:repeat(2,minmax(0,1fr));align-items:stretch;padding:36px 12px 13px;display:grid}.homework-card-actions:before{left:12px}.homework-card-actions form,.homework-card-actions .primary-action,.homework-card-actions .secondary-action,.homework-card-actions .homework-result-form{width:100%;min-width:0}.homework-card-actions .homework-result-form{grid-column:1/-1}}@media (width<=760px){.grammar-tour-coach{max-height:none!important;padding:14px!important;overflow:visible!important}.grammar-tour-coach .eyebrow{margin:0 0 2px;font-size:.64rem}.grammar-tour-coach h2{margin:2px 0 4px;font-size:1rem;line-height:1.2}.grammar-tour-coach p:not(.eyebrow){margin:0;font-size:.83rem;line-height:1.32}.grammar-tour-coach footer{gap:8px;margin-top:10px}.grammar-tour-coach footer button{min-height:36px;padding:7px 10px;font-size:.82rem}}@media (width<=1040px){.student-overview-main .weekly-activity-panel,.student-overview-main .streak-panel{grid-column:1/-1}}.teacher-workspace-route{background:radial-gradient(circle at 78% 10%,#c5deff94,#0000 31%),radial-gradient(circle at 12% 84%,#ddeeffb8,#0000 35%),linear-gradient(145deg,#f7fbff,#eaf4ff);min-height:100dvh}.teacher-portal{align-items:stretch}.teacher-portal>.teacher-sidebar{color:#1c3760;font-family:var(--font-reading), Arial, sans-serif;background:linear-gradient(#fffffffc,#eff7fffc);border:1px solid #d8e6f7;box-shadow:0 20px 55px #355d9221}.teacher-portal>.teacher-sidebar .sidebar-brand-lockup strong,.teacher-portal>.teacher-sidebar .account-footer strong{color:#10264c}.teacher-portal>.teacher-sidebar .sidebar-brand-lockup small,.teacher-portal>.teacher-sidebar .account-footer small{color:#6880a3}.teacher-portal>.teacher-sidebar .sidebar-nav{gap:5px}.teacher-portal>.teacher-sidebar .sidebar-nav a{color:#2b486f;min-height:42px;box-shadow:none;background:0 0;border:1px solid #0000;gap:10px;padding:7px 9px}.teacher-portal>.teacher-sidebar .sidebar-nav a:hover,.teacher-portal>.teacher-sidebar .sidebar-nav a.active{color:#1258cf;box-shadow:none;background:#eaf3ff;border-color:#d8e7fb}.teacher-nav-icon{color:#4d79ba;background:#eef5ff;border-radius:10px;flex:none;place-items:center;width:32px;height:32px;display:grid}.teacher-nav-label{flex:1;min-width:0}.teacher-nav-icon>.student-dashboard-icon-svg{width:19px;height:19px;display:block}.teacher-portal>.teacher-sidebar .sidebar-nav a.active .teacher-nav-icon{color:#1165ed;background:#dceaff}.teacher-portal>.teacher-sidebar .sidebar-nav a.homework-review-link.has-review{color:#8b5700;background:#fff5d9;border-color:#f2dca7}.teacher-portal>.teacher-sidebar .sidebar-nav a.homework-review-link.has-review .teacher-nav-icon{color:#b87000;background:#fff0c9}.teacher-portal>.teacher-sidebar .account-footer{color:#18365f;box-shadow:none;background:0 0;border:0;border-top:1px solid #dce7f5;border-radius:0;padding:14px 0 0}.teacher-portal>.teacher-sidebar .account-footer a,.account-footer button,.teacher-portal>.teacher-sidebar .sidebar-link{color:#24456e;box-shadow:none;background:#ffffffb8;border-color:#d7e3f2}.teacher-portal>.teacher-sidebar .sidebar-link:hover,.teacher-portal>.teacher-sidebar .account-footer a:hover,.account-footer button:hover{color:#1258cf;background:#f7fbff;border-color:#b9d4fb}.teacher-command-main{align-content:start;gap:14px}.teacher-command-main .teacher-dashboard-hero{min-height:96px;box-shadow:none;background:0 0;border:0;border-radius:0;padding:10px 12px 16px}.teacher-command-main .teacher-dashboard-hero h1{letter-spacing:-.045em}.teacher-command-main .teacher-metrics{gap:12px}.teacher-command-main .teacher-metrics>article{border-radius:18px;grid-template-rows:auto auto;grid-template-columns:50px minmax(0,1fr);align-items:center;column-gap:12px;min-height:118px;padding:17px 18px;display:grid;box-shadow:0 12px 28px #46699617}.teacher-command-main .teacher-metric-icon{color:#1768ee;background:#e7f0ff;border-radius:50%;grid-row:1/span 2;place-items:center;width:50px;height:50px;display:grid}.teacher-command-main .teacher-metric-icon .student-dashboard-icon-svg{width:23px;height:23px}.teacher-command-main .teacher-metric-label{color:#52719a;letter-spacing:.08em;text-transform:uppercase;align-self:end;font-size:.71rem;font-weight:800}.teacher-command-main .teacher-metrics>article>strong{align-self:start}.teacher-command-main .teacher-metrics>article>p{grid-column:2;margin:-2px 0 0}.teacher-command-main .metric-card-positive .teacher-metric-icon{color:#078b64;background:#e4f8ef}.teacher-command-main .metric-card-warning .teacher-metric-icon{color:#b56b00;background:#fff3d9}.teacher-command-main .metric-card-danger .teacher-metric-icon{color:#d04b58;background:#ffebed}.teacher-command-main .panel{border-color:#dce7f4;border-radius:18px;box-shadow:0 12px 30px #31527e14}.teacher-command-main .teacher-command-grid{gap:14px}.teacher-command-main .command-attention-panel,.teacher-command-main .command-actions-panel,.teacher-command-main .command-activity-preview{padding:20px}.teacher-command-main .command-action-grid{gap:10px}@media (width>=1041px) and (height>=760px){.student-overview-main>*{align-self:stretch}.student-overview-main .student-dashboard-hero{min-height:98px;padding-bottom:22px}.student-overview-main .student-dashboard-grid{grid-template-rows:auto minmax(0,1fr);min-height:0;display:grid}.student-overview-main .level-progress-panel{height:100%;min-height:0}}.grammar-discover-operation-notice{z-index:80;border:1px solid;border-radius:.9rem;width:min(31rem,100vw - 3rem);margin:0;padding:1rem 1.15rem;font-weight:700;line-height:1.45;position:fixed;bottom:1.5rem;right:1.5rem;box-shadow:0 18px 42px #0b2a5b38}.grammar-discover-operation-notice.success{color:#075d48;background:#ecfcf4;border-color:#5fd3a7}.grammar-discover-operation-notice.error{color:#9e2633;background:#fff2f3;border-color:#f2a4ad}.vocabulary-main:has(.vocabulary-game-page){min-height:0;overflow:hidden}.vocabulary-main .vocabulary-game-page{box-sizing:border-box;height:100%;min-height:0;padding:0}.vocabulary-main .vocabulary-game-page .vocabulary-focus-shell{box-sizing:border-box;background:radial-gradient(circle at 15% 38%,#d3f7f16b,#0000 29%),radial-gradient(circle at 85% 25%,#e2dcff52,#0000 27%),#fff;border:1px solid #d5e2f2;border-radius:22px;grid-template-rows:auto auto 8px minmax(0,1fr) auto;grid-template-columns:minmax(0,1fr);gap:12px;height:100%;min-height:0;padding:18px clamp(18px,2.5vw,34px) 20px;display:grid;overflow:auto;box-shadow:0 18px 46px #264c7b17}.vocabulary-study-header{justify-content:space-between;align-items:center;gap:18px;min-width:0;display:flex}.vocabulary-study-back{color:#0e5bc8;cursor:pointer;min-height:44px;font:inherit;background:#fff;border:1px solid #b9d1f2;border-radius:12px;justify-content:center;align-items:center;padding:0 17px;font-size:.86rem;font-weight:850;display:inline-flex;box-shadow:0 7px 18px #1c5bb117}.vocabulary-study-back:hover{background:#f4f8ff;border-color:#78a9ed}.vocabulary-study-pack-label{color:#5b7190;text-overflow:ellipsis;white-space:nowrap;min-width:0;font-size:.8rem;font-weight:800;overflow:hidden}.vocabulary-study-progress-copy{color:#4b6487;justify-content:space-between;align-items:center;gap:16px;font-size:.79rem;display:flex}.vocabulary-study-progress-copy strong{color:#18345d;font-size:.86rem}.vocabulary-main .vocabulary-game-page .vocabulary-card-progress{background:#e6eef8;border-radius:999px;grid-area:auto/1;width:100%;height:8px;margin:0}.vocabulary-card-stage{grid-template-columns:58px minmax(0,940px) 58px;justify-content:center;align-items:center;gap:clamp(10px,1.6vw,22px);width:100%;min-height:0;display:grid}.vocabulary-main .vocabulary-game-page .vocabulary-card-stage .vocabulary-flip-card{grid-column:2;width:100%!important;max-width:940px!important;height:min(590px,100dvh - 295px)!important;min-height:500px!important;margin:0!important}.vocabulary-card-nav,.vocabulary-card-nav-placeholder{width:52px;height:52px}.vocabulary-card-nav{color:#1267df;cursor:pointer;font:inherit;background:#fff;border:1px solid #c8daf1;border-radius:50%;place-items:center;font-size:1.55rem;font-weight:700;display:grid;box-shadow:0 10px 24px #1f5ba91f}.vocabulary-card-nav:hover:not(:disabled){background:#f1f7ff;border-color:#7fabe7;transform:translateY(-1px)}.vocabulary-card-nav:disabled{visibility:hidden}.vocabulary-main .vocabulary-game-page .vocabulary-card-stage .vocabulary-flip-face{box-sizing:border-box;border-color:#ccdced;border-radius:24px;box-shadow:0 20px 48px #1f467724;padding:clamp(24px,3vw,36px)!important}.vocabulary-main .vocabulary-game-page .vocabulary-card-stage .vocabulary-flip-face:has(.vocabulary-focus-image){display:grid;grid-template-rows:minmax(0,1fr)!important;grid-template-columns:minmax(230px,.8fr) minmax(0,1.2fr)!important;gap:clamp(24px,3vw,42px)!important}.vocabulary-main .vocabulary-game-page .vocabulary-card-stage .vocabulary-focus-image{background:#d9edf8;border-radius:18px;width:100%;height:100%;min-height:0;overflow:hidden}.vocabulary-main .vocabulary-game-page .vocabulary-card-stage .vocabulary-focus-image img{object-fit:cover;object-position:center;width:100%;height:100%}.vocabulary-main .vocabulary-game-page .vocabulary-card-stage .vocabulary-focus-answer{text-align:center;place-content:center;place-items:center;gap:12px;width:100%;max-width:720px;height:100%;min-height:0;margin:auto;position:relative;padding:18px!important}.vocabulary-main .vocabulary-game-page .vocabulary-no-image .vocabulary-focus-answer,.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-no-image .vocabulary-focus-answer{max-width:760px;padding:clamp(34px,5vw,68px)!important;display:grid!important}.vocabulary-main .vocabulary-game-page .vocabulary-focus-answer>.eyebrow{width:max-content;box-shadow:none;background:0 0;margin:0 auto;padding:0}.vocabulary-main .vocabulary-game-page .vocabulary-focus-answer>h1,.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-focus-answer>h1{text-align:center;margin:2px 0 0;font-size:clamp(2.8rem,5vw,5rem);line-height:.98}.vocabulary-main .vocabulary-game-page .vocabulary-prompt-context{color:#466886;background:#f2fbfb;border:1px solid #d6e9ef;border-radius:999px;max-width:600px;margin:6px 0 0;padding:10px 18px;line-height:1.4}.vocabulary-main .vocabulary-game-page .vocabulary-card-instruction{margin:5px 0 0}.vocabulary-main .vocabulary-game-page .vocabulary-reveal-button{border-radius:13px;width:min(100%,310px);min-height:50px;margin:0;box-shadow:0 10px 22px #1266d733}.vocabulary-word-audio{z-index:2;color:#1264d7;cursor:pointer;min-height:42px;font:inherit;background:#fff;border:1px solid #bfd5f1;border-radius:12px;justify-content:center;align-items:center;gap:7px;padding:0 13px;font-size:.76rem;font-weight:850;display:inline-flex;position:absolute;top:clamp(14px,1.6vw,20px);right:clamp(14px,1.6vw,20px)}.vocabulary-main .vocabulary-game-page .vocabulary-answer-side{flex-direction:column;align-items:center;gap:14px;justify-content:flex-start!important;padding-top:4px!important;display:flex!important}.vocabulary-main .vocabulary-game-page .vocabulary-answer-side>.eyebrow{margin-top:0}.vocabulary-word-audio:hover:not(:disabled),.vocabulary-example-audio:hover:not(:disabled){background:#eef6ff;border-color:#7faeea}.vocabulary-main .vocabulary-game-page .vocabulary-meaning{color:#637995;margin:0 0 2px;font-size:1rem}.vocabulary-conjugation-section{justify-items:center;gap:10px;width:100%;display:grid}.vocabulary-conjugation-toggle{color:#28577f;cursor:pointer;min-height:42px;font:inherit;background:#f8fbff;border:1px solid #c6d9ef;border-radius:11px;justify-content:space-between;align-items:center;gap:18px;padding:0 15px;font-size:.78rem;font-weight:850;display:inline-flex}.vocabulary-conjugation-toggle span{color:#1267df;font-size:1rem}.vocabulary-main .vocabulary-game-page .vocabulary-verb-forms{grid-template-columns:repeat(5,minmax(0,1fr));gap:8px;width:100%;margin:0;display:grid}.vocabulary-main .vocabulary-game-page .vocabulary-verb-forms span{background:#f8fbff;border:1px solid #d9e5f2;border-radius:10px;min-width:0;padding:9px 7px}.vocabulary-main .vocabulary-game-page .vocabulary-verb-forms small,.vocabulary-main .vocabulary-game-page .vocabulary-verb-forms strong{display:block}.vocabulary-main .vocabulary-game-page .vocabulary-verb-forms small{color:#71849c;text-overflow:ellipsis;white-space:nowrap;font-size:.62rem;overflow:hidden}.vocabulary-main .vocabulary-game-page .vocabulary-verb-forms strong{overflow-wrap:anywhere;color:#163861;font-size:.78rem}.vocabulary-main .vocabulary-game-page .vocabulary-bilingual-example{text-align:left;background:linear-gradient(100deg,#f3fffc,#f4f9ff);border:1px solid #c8e5e2;border-radius:14px;gap:7px;width:100%;max-width:650px;margin:auto 0 0;padding:13px 15px;display:grid}.vocabulary-example-english{grid-template-columns:minmax(0,1fr) 38px;align-items:center;gap:10px;display:grid}.vocabulary-main .vocabulary-game-page .vocabulary-bilingual-example p{margin:0;line-height:1.45}.vocabulary-main .vocabulary-game-page .vocabulary-bilingual-example>p:last-child{color:#3e777a;border-top:1px solid #dbe9ec;padding-top:7px;font-weight:750}.vocabulary-example-audio{color:#1264d7;cursor:pointer;width:38px;height:38px;font:inherit;background:#fff;border:1px solid #bfd5f1;border-radius:10px;place-items:center;display:grid}.vocabulary-reveal-actions,.vocabulary-rating-actions,.vocabulary-rating-placeholder{min-height:58px}.vocabulary-main .vocabulary-game-page .vocabulary-reveal-actions{justify-content:center;align-items:center;width:min(680px,100%)!important;margin:0 auto!important;display:flex!important}.vocabulary-main .vocabulary-game-page .vocabulary-rating-actions{gap:12px;grid-template-columns:repeat(2,minmax(0,1fr))!important;width:min(680px,100%)!important;margin:0 auto!important;display:grid!important}.vocabulary-main .vocabulary-game-page .vocabulary-rating-actions button{border-radius:13px;min-height:54px}.vocabulary-rating-actions button[aria-pressed=true]{outline-offset:2px;outline:3px solid #1267df33}@media (width<=900px){.vocabulary-main .vocabulary-game-page .vocabulary-focus-shell{min-height:100%;padding:14px;overflow:visible}.vocabulary-card-stage{grid-template-columns:44px minmax(0,1fr) 44px;gap:8px}.vocabulary-card-nav,.vocabulary-card-nav-placeholder{width:42px;height:42px}.vocabulary-main .vocabulary-game-page .vocabulary-card-stage .vocabulary-flip-card{height:650px!important;min-height:650px!important}.vocabulary-main .vocabulary-game-page .vocabulary-card-stage .vocabulary-flip-face:has(.vocabulary-focus-image){grid-template-rows:minmax(190px,.7fr) minmax(0,1.3fr)!important;grid-template-columns:1fr!important;gap:14px!important}.vocabulary-main .vocabulary-game-page .vocabulary-card-stage .vocabulary-focus-answer{padding:12px!important}.vocabulary-main .vocabulary-game-page .vocabulary-verb-forms{grid-template-columns:repeat(2,minmax(0,1fr))}}.vocabulary-main .vocabulary-game-page .vocabulary-conjugation-section{align-self:center;justify-items:center;width:min(650px,100%);max-width:650px;margin-inline:auto}.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-answer-side>.vocabulary-conjugation-section{grid-column:1/-1;justify-self:center}.vocabulary-main .vocabulary-game-page .vocabulary-conjugation-toggle{align-self:center;min-width:170px}.vocabulary-main .vocabulary-game-page .vocabulary-verb-forms strong{overflow-wrap:normal;word-break:normal}.vocabulary-main .vocabulary-game-page .vocabulary-answer-side>.vocabulary-bilingual-example,.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-answer-side>.vocabulary-bilingual-example{text-align:center;width:min(650px,100%);margin:auto auto 18px!important}.vocabulary-main .vocabulary-game-page .vocabulary-bilingual-example p{text-align:center;font-size:.96rem;line-height:1.55}.vocabulary-main .vocabulary-game-page .vocabulary-flip-back:has(.vocabulary-focus-image) .vocabulary-answer-side{padding-top:clamp(58px,8vh,92px)!important}@media (width<=760px){.vocabulary-main .vocabulary-instructions-shell{width:100%;margin:0;padding:18px}.vocabulary-main .vocabulary-instructions-grid{grid-template-columns:minmax(0,1fr);gap:20px;display:grid}.vocabulary-main .vocabulary-instructions-grid h1{margin:7px 0 12px;font-size:clamp(2.15rem,11vw,3rem);line-height:1.02}.vocabulary-main .vocabulary-instruction-steps{gap:9px;margin-block:18px}.vocabulary-main .vocabulary-instruction-steps span{padding:11px 13px}.vocabulary-main .vocabulary-instruction-example{display:none}.vocabulary-route-page:has(.vocabulary-game-page){height:100dvh;overflow:hidden}.vocabulary-route-page:has(.vocabulary-game-page) .student-portal{height:100%;overflow:hidden}.vocabulary-route-page:has(.vocabulary-game-page) .portal-main.vocabulary-main{height:100%;min-height:0;padding:58px 7px 7px;overflow:hidden}.vocabulary-main .vocabulary-game-page,.vocabulary-main .vocabulary-game-page>.vocabulary-focus-shell{width:100%;height:100%;min-height:0;overflow:hidden}.vocabulary-main .vocabulary-game-page>.vocabulary-focus-shell{border-radius:17px;grid-template-rows:auto auto 6px minmax(0,1fr) auto;gap:7px;padding:8px}.vocabulary-main .vocabulary-game-page .vocabulary-study-header{align-items:center;gap:9px}.vocabulary-main .vocabulary-game-page .vocabulary-study-back{min-height:40px;padding-inline:11px;font-size:.76rem}.vocabulary-main .vocabulary-game-page .vocabulary-study-pack-label{text-align:right;text-overflow:ellipsis;white-space:nowrap;width:auto;min-width:0;font-size:.68rem;overflow:hidden}.vocabulary-main .vocabulary-game-page .vocabulary-card-stage{height:clamp(390px,100dvh - 295px,650px);min-height:390px;position:relative;overflow:hidden}.vocabulary-main .vocabulary-game-page .vocabulary-card-stage .vocabulary-flip-card{width:100%!important;max-width:none!important;height:100%!important;min-height:100%!important}.vocabulary-main .vocabulary-game-page .vocabulary-card-stage .vocabulary-flip-face{border-radius:18px;padding:10px!important}.vocabulary-main .vocabulary-game-page .vocabulary-card-stage .vocabulary-flip-face:has(.vocabulary-focus-image){grid-template-rows:minmax(112px,.86fr) minmax(0,1.14fr)!important;grid-template-columns:minmax(0,1fr)!important;gap:9px!important}.vocabulary-main .vocabulary-game-page .vocabulary-card-stage .vocabulary-focus-image{border-radius:13px}.vocabulary-main .vocabulary-game-page .vocabulary-card-stage .vocabulary-focus-image img{object-fit:contain}.vocabulary-main .vocabulary-game-page .vocabulary-card-stage .vocabulary-focus-answer{gap:7px;padding:5px!important}.vocabulary-main .vocabulary-game-page .vocabulary-focus-answer>h1,.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-focus-answer>h1{margin-top:0;font-size:clamp(2rem,12vw,3.25rem)}.vocabulary-main .vocabulary-game-page .vocabulary-flip-back:has(.vocabulary-focus-image) .vocabulary-answer-side{padding-top:24px!important}.vocabulary-main .vocabulary-game-page .vocabulary-answer-side>.vocabulary-bilingual-example,.teacher-vocabulary-main:has(.vocabulary-game-page) .vocabulary-answer-side>.vocabulary-bilingual-example{padding:9px 11px;margin:auto auto 4px!important}.vocabulary-main .vocabulary-game-page .vocabulary-bilingual-example p{font-size:.88rem;line-height:1.42}.vocabulary-main .vocabulary-game-page .vocabulary-word-audio{top:10px;right:10px}.vocabulary-main .vocabulary-game-page .vocabulary-verb-forms{grid-template-columns:repeat(5,minmax(0,1fr));gap:4px}.vocabulary-main .vocabulary-game-page .vocabulary-verb-forms small{font-size:.52rem}.vocabulary-main .vocabulary-game-page .vocabulary-verb-forms strong{font-size:.67rem}.vocabulary-main .vocabulary-game-page .vocabulary-reveal-button,.vocabulary-main .vocabulary-game-page .vocabulary-rating-actions button{min-height:46px}.vocabulary-main .vocabulary-game-page .vocabulary-card-nav{width:38px;height:38px;bottom:50%;transform:translateY(50%)}.vocabulary-main .vocabulary-game-page .vocabulary-card-nav-previous{left:8px}.vocabulary-main .vocabulary-game-page .vocabulary-card-nav-next{right:8px}}@media (width<=640px){.grammar-discover-operation-notice{width:calc(100vw - 1.5rem);bottom:.75rem;right:.75rem}}.vocabulary-main .vocabulary-game-page .vocabulary-no-image .vocabulary-flip-face{justify-content:center;align-items:stretch;display:flex!important}.vocabulary-main .vocabulary-game-page .vocabulary-no-image .vocabulary-focus-answer{box-sizing:border-box;text-align:center;flex-direction:column;flex:0 760px;align-self:stretch;align-items:center;width:min(100%,760px);min-width:0;justify-content:center!important;margin-inline:auto!important;display:flex!important}@media (width<=760px){.vocabulary-main .vocabulary-game-page .vocabulary-card-stage{padding:0;display:block}.vocabulary-main .vocabulary-game-page .vocabulary-card-stage .vocabulary-flip-card{grid-column:auto}.vocabulary-main .vocabulary-game-page .vocabulary-card-nav,.vocabulary-main .vocabulary-game-page .vocabulary-card-nav-placeholder{z-index:4;width:32px;height:32px;font-size:1.1rem;position:absolute;top:50%;bottom:auto}.vocabulary-main .vocabulary-game-page .vocabulary-card-nav{transform:translateY(-50%)}.vocabulary-main .vocabulary-game-page .vocabulary-card-nav-previous{left:7px}.vocabulary-main .vocabulary-game-page .vocabulary-card-nav-next{right:7px}.vocabulary-main .vocabulary-game-page .vocabulary-flip-back:has(.vocabulary-focus-image) .vocabulary-answer-side{gap:10px;justify-content:center!important;padding-top:0!important}.vocabulary-main .vocabulary-game-page .vocabulary-flip-back:has(.vocabulary-focus-image) .vocabulary-bilingual-example{margin:8px auto 0!important}.vocabulary-main .vocabulary-game-page .vocabulary-verb-forms{grid-template-columns:repeat(6,minmax(0,1fr));gap:5px}.vocabulary-main .vocabulary-game-page .vocabulary-verb-forms span{grid-column:span 2;padding:7px 5px}.vocabulary-main .vocabulary-game-page .vocabulary-verb-forms span:nth-child(4){grid-column:2/span 2}.vocabulary-main .vocabulary-game-page .vocabulary-verb-forms span:nth-child(5){grid-column:4/span 2}.vocabulary-main .vocabulary-game-page .vocabulary-verb-forms small{text-overflow:clip;white-space:normal;font-size:.56rem;overflow:visible}.vocabulary-main .vocabulary-game-page .vocabulary-verb-forms strong{overflow-wrap:anywhere;font-size:.7rem}}