:root{--bg:#f6f7f4;--surface-soft:#eef2ea;--text:#1f261f;--muted:#647067;--line:#d8ded4;--accent:#0f7b5f;--accent-dark:#0a5f49;--warning:#9a5b00;--shadow:0 16px 45px rgba(39,47,39,0.08)}.pilot-assessment-shell{width:min(calc(100% - 28px),1040px);min-height:100vh;margin-inline:auto;padding:18px 0 40px}.pilot-assessment-brand{display:flex;align-items:center;gap:10px;margin-bottom:14px;color:var(--text)}.pilot-assessment-brand .brand-mark{display:inline-grid;place-items:center;width:42px;height:42px;border-radius:13px;background:linear-gradient(135deg,#2563eb,#0f766e);color:#fff;font-weight:950;box-shadow:0 10px 24px rgba(37,99,235,.22)}.pilot-assessment-brand>div{display:grid;line-height:1.25}.pilot-assessment-brand strong{font-size:.94rem}.pilot-assessment-brand span:not(.brand-mark){color:var(--muted);font-size:.74rem;font-weight:700}.pilot-assessment-shell .assessment-taking-hero{grid-template-columns:minmax(0,1fr) auto!important;align-items:center}.pilot-assessment-status-badge{display:inline-flex;align-items:center;justify-content:center;border:1px solid #fdba74;border-radius:999px;background:#fff7ed;color:#9a3412;font-size:.76rem;font-weight:900;padding:7px 12px;white-space:nowrap}.pilot-assessment-name-card,.pilot-assessment-result{display:grid;gap:16px;border:1px solid var(--line);border-radius:18px;background:var(--surface);box-shadow:var(--shadow-soft);padding:clamp(18px,4vw,32px)}.pilot-assessment-name-card{grid-template-columns:auto minmax(0,1fr);align-items:start}.pilot-assessment-name-card h2,.pilot-assessment-result h2{margin:2px 0 6px;font-size:clamp(1.25rem,3vw,1.7rem)}.pilot-assessment-name-card p,.pilot-assessment-result p{margin:0;color:var(--muted)}.pilot-assessment-name-icon,.pilot-assessment-result-mark{display:inline-grid;place-items:center;width:58px;height:58px;border-radius:18px;background:color-mix(in srgb,var(--accent) 12%,var(--surface));color:var(--accent)}.pilot-assessment-name-card form{grid-column:1/-1;display:grid;gap:9px}.pilot-assessment-start-features{grid-column:1/-1;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.pilot-assessment-start-features span{display:flex;align-items:center;justify-content:center;gap:7px;min-height:44px;border:1px solid var(--line);border-radius:12px;background:var(--surface-soft);color:var(--text);font-size:.78rem;font-weight:800;padding:8px;text-align:center}.pilot-assessment-start-features svg{flex:0 0 auto;color:var(--accent)}.pilot-assessment-name-card form label{font-weight:850}.pilot-assessment-name-card form .input{min-height:50px;font-size:1rem}.pilot-assessment-name-card form .button{justify-self:start;margin-top:4px}.pilot-assessment-independent-note{grid-column:1/-1;border:1px solid color-mix(in srgb,var(--accent) 20%,var(--line));border-radius:12px;background:color-mix(in srgb,var(--accent) 6%,var(--surface));padding:10px 12px;font-size:.82rem;font-weight:750}.pilot-assessment-student-strip{display:flex;align-items:center;gap:7px;border:1px solid var(--line);border-radius:14px;background:var(--surface);padding:8px 12px}.pilot-assessment-student-strip span{color:var(--muted);font-size:.78rem}.pilot-assessment-shell .assessment-v2-progress{position:sticky;top:8px;z-index:20;border-color:color-mix(in srgb,var(--accent) 24%,var(--line));background:color-mix(in srgb,var(--surface) 92%,transparent);box-shadow:0 10px 28px color-mix(in srgb,var(--text) 8%,transparent);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.pilot-assessment-question-nav{display:grid;grid-template-columns:repeat(12,minmax(34px,1fr));gap:6px;overflow-x:auto;padding:2px 1px 5px;scrollbar-width:thin}.pilot-assessment-question-nav button{display:inline-grid;place-items:center;min-width:34px;height:34px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--muted);cursor:pointer;font:inherit;font-size:.75rem;font-weight:900;transition:border-color .15s ease,background .15s ease,color .15s ease,transform .15s ease}.pilot-assessment-question-nav button.answered{border-color:color-mix(in srgb,var(--success) 42%,var(--line));background:color-mix(in srgb,var(--success) 9%,var(--surface));color:var(--success)}.pilot-assessment-question-nav button.current{border-color:var(--accent);background:var(--accent);color:#fff;box-shadow:0 6px 14px color-mix(in srgb,var(--accent) 25%,transparent);transform:translateY(-1px)}.pilot-assessment-question-nav button:disabled{cursor:progress;opacity:.65}.pilot-assessment-shell .assessment-v2-card{scroll-margin-top:70px;border-radius:18px}.pilot-assessment-listening-panel{grid-template-columns:minmax(0,1fr) auto auto!important;align-items:center;border:1px solid color-mix(in srgb,var(--accent) 20%,var(--line));border-radius:14px;background:color-mix(in srgb,var(--accent) 6%,var(--surface));padding:12px}.pilot-assessment-listening-panel>div{display:flex;align-items:center;gap:8px;color:var(--text);font-size:.82rem;font-weight:850}.pilot-assessment-listening-panel>div svg{flex:0 0 auto;color:var(--accent)}.pilot-assessment-listening-panel small{color:var(--muted);font-weight:800;white-space:nowrap}.pilot-assessment-shell .assessment-option{position:relative;grid-template-columns:36px minmax(0,1fr) auto;gap:10px;min-height:58px;border-radius:14px;padding:10px 12px}.pilot-assessment-shell .assessment-option input{position:absolute;width:1px;height:1px;opacity:0;pointer-events:none}.pilot-assessment-option-index{display:inline-grid;place-items:center;width:34px;height:34px;border:1px solid var(--line);border-radius:10px;background:var(--surface);color:var(--muted);font-size:.82rem;font-weight:950}.pilot-assessment-option-text{color:var(--text);font-size:.94rem;line-height:1.5}.pilot-assessment-option-check{color:var(--accent)}.pilot-assessment-shell .assessment-option.selected .pilot-assessment-option-index{border-color:var(--accent);background:var(--accent);color:#fff}.pilot-assessment-shell .assessment-v2-save-message{border-radius:999px;background:color-mix(in srgb,var(--surface) 90%,transparent);padding:5px 10px;font-size:.76rem}.pilot-assessment-error{margin:0;border:1px solid #fecaca;border-radius:12px;background:#fef2f2;color:#b91c1c!important;font-size:.83rem;font-weight:800;padding:9px 11px}.pilot-assessment-result{justify-items:center;text-align:center}.pilot-assessment-result-mark{background:#ecfdf5;color:#047857}.pilot-assessment-score{display:grid;gap:4px}.pilot-assessment-score strong{color:var(--accent);font-size:clamp(2.8rem,9vw,5rem);font-weight:950;line-height:1}.pilot-assessment-score span{color:var(--muted);font-weight:800}.pilot-assessment-lesson-results{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;width:100%}.pilot-assessment-lesson-results article{display:grid;gap:5px;border:1px solid var(--line);border-radius:14px;background:var(--surface-soft);padding:14px}.pilot-assessment-lesson-results span{color:var(--muted);font-size:.8rem;font-weight:750}.pilot-assessment-lesson-results strong{font-size:1.35rem}.pilot-assessment-share{min-width:210px;justify-content:center}.pilot-assessment-share-message{color:var(--success)!important;font-size:.8rem;font-weight:800}@media (max-width:620px){.pilot-assessment-shell{width:min(calc(100% - 18px),1040px);padding-top:10px}.pilot-assessment-shell .assessment-taking-hero{grid-template-columns:minmax(0,1fr)!important;gap:7px!important}.pilot-assessment-status-badge{justify-self:start}.pilot-assessment-name-card{grid-template-columns:1fr}.pilot-assessment-start-features{grid-template-columns:repeat(2,minmax(0,1fr))}.pilot-assessment-name-icon{width:50px;height:50px}.pilot-assessment-independent-note,.pilot-assessment-name-card form{grid-column:auto}.pilot-assessment-name-card form .button{width:100%}.pilot-assessment-lesson-results{grid-template-columns:1fr}.pilot-assessment-shell:has(.assessment-v2-session) .assessment-taking-hero,.pilot-assessment-shell:has(.assessment-v2-session) .assessment-taking-stat-grid,.pilot-assessment-shell:has(.pilot-assessment-result) .assessment-taking-stat-grid{display:none}.pilot-assessment-shell:has(.assessment-v2-session) .pilot-assessment-brand{margin-bottom:4px}.pilot-assessment-question-nav{grid-template-columns:repeat(12,36px);margin-inline:-1px}.pilot-assessment-listening-panel{grid-template-columns:1fr!important;justify-items:stretch!important}.pilot-assessment-listening-panel .button{width:100%}.pilot-assessment-listening-panel small{text-align:center}.pilot-assessment-shell .assessment-option-grid{grid-template-columns:1fr}.pilot-assessment-shell .assessment-v2-card{min-height:0}}.assessment-v2-session{display:grid;gap:1rem}.assessment-v2-progress{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem;padding:.9rem 1rem;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.assessment-v2-progress>div:not(.assessment-v2-progress-track){display:flex;align-items:baseline;gap:.35rem}.assessment-v2-progress>div span{color:var(--muted);font-size:.82rem}.assessment-v2-progress-track{height:9px;overflow:hidden;border-radius:999px;background:color-mix(in srgb,var(--accent) 12%,var(--surface))}.assessment-v2-progress-track span{display:block;height:100%;border-radius:inherit;background:var(--accent);transition:width .2s ease}.assessment-v2-card{min-height:360px;padding:clamp(1.15rem,3vw,2rem);display:grid;align-content:start;gap:1.1rem}.assessment-v2-card>header{display:flex;justify-content:space-between;gap:1rem;color:var(--muted)}.assessment-v2-kind{padding:.35rem .7rem;border-radius:999px;color:var(--accent);background:color-mix(in srgb,var(--accent) 12%,transparent);font-weight:750}.assessment-v2-card h2{margin:0;font-size:clamp(1.2rem,2.5vw,1.65rem)}.assessment-v2-listening,.assessment-v2-pronunciation{display:grid;justify-items:start;gap:1rem}.assessment-v2-listening{grid-template-columns:auto auto;align-items:center}.assessment-v2-pronunciation blockquote,.teacher-assessment-recording blockquote{margin:0;width:100%;padding:1rem;border:1px solid var(--line);border-radius:14px;background:color-mix(in srgb,var(--accent) 7%,var(--surface));font-size:clamp(1.25rem,3vw,1.75rem);text-align:left}.assessment-option.selected{border-color:var(--accent);background:color-mix(in srgb,var(--accent) 10%,var(--surface))}.assessment-v2-recording-saved{display:flex;flex-wrap:wrap;align-items:center;gap:.65rem;color:var(--success)}.assessment-v2-recording-saved audio{max-width:min(100%,360px)}.assessment-hidden-audio{display:none}.assessment-v2-save-message{display:flex;align-items:center;justify-content:center;gap:.45rem;min-height:1.5rem;margin:0;color:var(--muted)}.assessment-v2-navigation{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:1rem}.assessment-v2-start-panel,.assessment-v2-submit{display:flex;align-items:center;justify-content:space-between;gap:1rem;padding:1.1rem;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.assessment-v2-start-panel p,.assessment-v2-submit p{margin:.25rem 0 0;color:var(--muted)}.assessment-pending-review-panel{border-color:color-mix(in srgb,var(--warning) 45%,var(--line))}.teacher-assessment-review-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1rem}.teacher-assessment-review-summary article{display:flex;align-items:center;gap:.75rem;padding:1rem;border:1px solid var(--line);border-radius:16px;background:var(--surface)}.teacher-assessment-review-summary article div{display:grid}.teacher-assessment-review-summary span{color:var(--muted)}.teacher-assessment-session-list{display:grid;gap:1.25rem}.teacher-assessment-session-card{padding:1rem;border:1px solid var(--line);border-radius:18px;background:var(--surface)}.teacher-assessment-session-card>header{display:flex;justify-content:space-between;gap:1rem}.teacher-assessment-session-card h2{margin:.5rem 0 .2rem}.teacher-assessment-session-card p{margin:0;color:var(--muted)}.teacher-assessment-session-meta{display:grid;justify-items:end;align-content:start}.teacher-assessment-session-meta strong{font-size:1.35rem}.teacher-assessment-course-line{display:flex;flex-wrap:wrap;gap:.55rem;margin:1rem 0;color:var(--muted)}.teacher-assessment-recording-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:.85rem}.teacher-assessment-recording{display:grid;gap:.8rem;padding:.9rem;border:1px solid var(--line);border-radius:16px}.teacher-assessment-recording.approved{border-color:color-mix(in srgb,var(--success) 50%,var(--line))}.teacher-assessment-recording.rejected{border-color:color-mix(in srgb,var(--danger) 50%,var(--line))}.teacher-assessment-audio,.teacher-assessment-recording-head{display:flex;align-items:center;justify-content:space-between;gap:.6rem}.teacher-assessment-recording-head strong{display:inline-flex;align-items:center;gap:.3rem;font-size:.82rem}.teacher-assessment-recording-head .approved{color:var(--success)}.teacher-assessment-recording-head .rejected{color:var(--danger)}.teacher-assessment-audio audio{width:min(100%,360px)}.teacher-assessment-review-form{display:grid;gap:.65rem}.teacher-assessment-review-form label{display:grid;gap:.35rem}.teacher-assessment-review-form label span{color:var(--muted);font-size:.82rem}.teacher-assessment-review-form input{width:100%}.teacher-assessment-review-form>div{display:flex;flex-wrap:wrap;justify-content:end;gap:.5rem}@media (max-width:760px){.assessment-v2-navigation{grid-template-columns:1fr 1fr}.assessment-v2-start-panel,.assessment-v2-submit{align-items:stretch;flex-direction:column}.assessment-v2-start-panel .button,.assessment-v2-submit .button{width:100%}.teacher-assessment-recording-grid,.teacher-assessment-review-summary{grid-template-columns:1fr}.teacher-assessment-session-card>header{align-items:start;flex-direction:column}.teacher-assessment-session-meta{justify-items:start}}.prayer-next-chip{position:fixed;inset-inline-end:clamp(14px,3vw,28px);inset-block-end:clamp(82px,8vh,112px);z-index:70;display:inline-flex;align-items:center;gap:8px;max-width:min(420px,calc(100vw - 28px));padding:10px 12px;border:1px solid rgba(15,118,110,.2);border-radius:8px;background:rgba(240,253,250,.96);color:#134e4a;box-shadow:0 16px 42px rgba(15,23,42,.14);font-size:.88rem;line-height:1.35}.prayer-next-chip strong{font-variant-numeric:tabular-nums;color:#0f766e}.prayer-next-chip.is-notice{border-color:rgba(180,83,9,.28);background:rgba(255,251,235,.98);color:#78350f}.prayer-next-chip.is-notice strong{color:#b45309}.prayer-lock-overlay{position:fixed;inset:0;z-index:1000;display:grid;place-items:center;padding:20px;background:linear-gradient(135deg,rgba(15,23,42,.94),rgba(20,83,45,.92)),#0f172a;color:#f8fafc}.prayer-lock-panel{width:min(560px,100%);display:grid;gap:18px;padding:clamp(22px,5vw,34px);border:1px solid rgba(255,255,255,.18);border-radius:8px;background:rgba(15,23,42,.76);box-shadow:0 30px 90px rgba(0,0,0,.36);text-align:center}.prayer-lock-icon{width:58px;height:58px;display:grid;place-items:center;margin-inline:auto;border-radius:999px;background:rgba(20,184,166,.16);color:#99f6e4}.prayer-lock-copy{display:grid;gap:8px}.prayer-lock-eyebrow{margin:0;color:#99f6e4;font-size:.9rem;font-weight:700}.prayer-lock-copy h2{margin:0;color:#ffffff;font-size:clamp(1.6rem,4vw,2.25rem);line-height:1.2}.prayer-lock-copy p:not(.prayer-lock-eyebrow){margin:0;color:rgba(248,250,252,.88);font-size:1rem;line-height:1.8}.prayer-lock-countdown{display:grid;gap:4px;padding:14px;border:1px solid rgba(153,246,228,.2);border-radius:8px;background:rgba(15,118,110,.14)}.prayer-lock-countdown small,.prayer-lock-countdown span{color:rgba(248,250,252,.72)}.prayer-lock-countdown strong{color:#ffffff;font-size:clamp(2rem,9vw,3.2rem);line-height:1;font-variant-numeric:tabular-nums}.prayer-lock-refresh{justify-self:center}.section-card{display:grid;gap:18px;padding:clamp(18px,3vw,24px);border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}.stats-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(160px,1fr));gap:12px}.stats-grid>div{display:grid;gap:6px;padding:14px;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft)}.simple-list small,.stats-grid span{color:var(--muted);font-size:.86rem}.form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(220px,1fr));gap:14px}.form-grid label{display:grid;gap:7px;min-width:0}.form-grid input,.form-grid select,.form-grid textarea{width:100%}.form-actions,.form-span-2{grid-column:1/-1}.form-actions{display:flex;justify-content:flex-start;gap:10px}.simple-list,.simple-list>form{display:grid;gap:10px}.simple-list>form{grid-template-columns:minmax(110px,.8fr) minmax(160px,1fr) minmax(0,1.4fr) auto;align-items:center;padding:12px;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft)}body[data-prayer-locked=true] audio,body[data-prayer-locked=true] video{pointer-events:none}@media (max-width:640px){.prayer-next-chip{inset-inline:12px;inset-block-end:76px;justify-content:center;text-align:center}.prayer-lock-overlay{padding:14px}.simple-list>form{grid-template-columns:1fr;align-items:stretch}}.login-page-clean{min-height:100dvh;display:grid;place-items:center;padding:clamp(20px,5vw,48px);background:radial-gradient(circle at 18% 14%,rgba(14,165,233,.18),transparent 32%),radial-gradient(circle at 84% 82%,rgba(16,185,129,.16),transparent 34%),linear-gradient(135deg,#f7fbff,#eef7f5)}.login-panel-clean{width:100%;max-width:none;display:grid;gap:16px;border:1px solid rgba(219,230,239,.92);border-radius:16px;background:rgba(255,255,255,.96);box-shadow:0 24px 70px rgba(15,23,42,.14);padding:clamp(22px,5vw,30px)}.lesson-app-flow .lesson-activity-card.flow-stage,:root[data-theme=dark] .lesson-app-flow .lesson-activity-card.flow-stage{border:0!important;background:transparent!important;box-shadow:none!important;padding:0!important}.lesson-app-flow .flow-actions .button,:root[data-theme=dark] .lesson-app-flow .flow-actions .button{border-radius:999px!important;color:#ffffff!important}.lesson-app-flow .flow-actions .button.secondary,:root[data-theme=dark] .lesson-app-flow .flow-actions .button.secondary{border:1px solid #bdd7ff!important;background:#ffffff!important;color:#2874f0!important}.lesson-video-activity .flow-actions .button.secondary,:root[data-theme=dark] .lesson-video-activity .flow-actions .button.secondary{border:0!important;background:linear-gradient(180deg,#3b82f6,#2563eb)!important;color:#ffffff!important}.student-learn-shell:has(.lesson-app-flow) .bottom-nav-card,:root[data-theme=dark] .student-learn-shell:has(.lesson-app-flow) .bottom-nav-card{border-color:rgba(219,232,247,.92)!important;background:rgba(255,255,255,.92)!important;box-shadow:0 18px 44px rgba(15,23,42,.14)!important}.student-learn-shell:has(.lesson-app-flow) .bottom-nav-link,:root[data-theme=dark] .student-learn-shell:has(.lesson-app-flow) .bottom-nav-link{color:#748198!important}.student-learn-shell:has(.lesson-app-flow) .bottom-nav-link[data-active=true],:root[data-theme=dark] .student-learn-shell:has(.lesson-app-flow) .bottom-nav-link[data-active=true]{background:rgba(37,99,235,.1)!important;color:#2563eb!important}.lesson-voice-activity .lesson-hero-card{order:1}.lesson-voice-activity .lesson-target-card{order:2;min-height:76px;padding-block:10px}.lesson-voice-activity .voice-practice-zone{order:3;gap:8px;padding-top:0}.lesson-voice-activity .pronunciation-result-card{order:4}.lesson-voice-activity .flow-actions{order:5;gap:8px!important}.lesson-voice-activity .teacher-tip-card{order:6}.lesson-voice-activity .teacher-return-note{order:7}.lesson-voice-activity .lesson-hero-card,.lesson-voice-activity .lesson-hero-image,.lesson-voice-activity .lesson-hero-video,.lesson-voice-activity .lesson-scene-fallback{min-height:218px!important;height:218px!important}.lesson-voice-activity .voice-mic-button{width:112px!important;height:112px!important}.lesson-voice-activity .voice-mic-button svg{width:44px;height:44px}.lesson-voice-activity .voice-wave span:nth-child(3){height:40px}.lesson-voice-activity .flow-actions .button{min-height:46px!important}.student-learn-shell:has(.lesson-app-flow):before,:root[data-theme=dark] .student-learn-shell:has(.lesson-app-flow):before{opacity:.28}.lesson-app-flow .lesson-app-title h1,.lesson-app-flow .lesson-app-title span,.lesson-app-flow .lesson-dialog-card strong,.lesson-app-flow .lesson-target-card strong,:root[data-theme=dark] .lesson-app-flow .lesson-app-title h1,:root[data-theme=dark] .lesson-app-flow .lesson-app-title span,:root[data-theme=dark] .lesson-app-flow .lesson-dialog-card strong,:root[data-theme=dark] .lesson-app-flow .lesson-target-card strong{color:inherit!important}.lesson-app-flow .lesson-app-header,:root[data-theme=dark] .lesson-app-flow .lesson-app-header{min-height:86px!important}.lesson-app-flow .lesson-app-progress,:root[data-theme=dark] .lesson-app-flow .lesson-app-progress{align-self:center!important}.student-learn-stats strong,body,button,html,input,select,textarea{font-family:var(--app-font-family)!important}:root[data-theme=dark] .admin-learn-shell,:root[data-theme=dark] .guardian-learn-shell,:root[data-theme=dark] .login-page,:root[data-theme=dark] .portal-shell,:root[data-theme=dark] .status-page,:root[data-theme=dark] .student-learn-shell,:root[data-theme=dark] .student-shell,:root[data-theme=dark] .teacher-learn-shell,:root[data-theme=dark] body,:root[data-theme=dark] main.login-page.login-page-clean{background:linear-gradient(135deg,#0b1114,#102126 48%,#181928);color:var(--text)}:root[data-theme=dark] .identity-brand strong,:root[data-theme=dark] .identity-name,:root[data-theme=dark] .login-panel-clean h2,:root[data-theme=dark] .login-welcome-card h1,:root[data-theme=dark] h1,:root[data-theme=dark] h2,:root[data-theme=dark] h3{color:var(--text)}@media (max-width:860px){.identity-card{grid-template-areas:"brand theme logout" "profile profile profile" "meta meta meta";grid-template-columns:minmax(0,1fr) auto auto}.identity-theme{justify-content:flex-end}}:root{color-scheme:light;--app-font-family:var(--font-app),"IBM Plex Sans Arabic","Segoe UI",Tahoma,Arial,sans-serif;--bg:#f4f8fb;--surface-soft:#f6f9fc;--surface-strong:#e8f0f7;--text:#142033;--muted:#607084;--line:#d8e3ed}:root[data-theme=dark]{color-scheme:dark;--bg:#0b1114;--surface:#121b20;--surface-soft:#18252b;--surface-strong:#21333a;--text:#eef7f4;--muted:#a7b6b2;--line:#2a3d45;--accent:#24c6a5;--accent-dark:#64dfc8;--accent-indigo:#8d9cff;--accent-cyan:#38c7dd;--success:#4ade80;--warning:#fbbf24;--danger:#fb7185;--shadow:0 18px 48px rgba(0,0,0,0.42);--shadow-soft:0 10px 28px rgba(0,0,0,0.32);--shadow-lift:0 22px 52px rgba(0,0,0,0.5)}body,button,html,input,select,textarea{font-family:var(--app-font-family)}:root[data-theme=dark] body{background:linear-gradient(135deg,#0b1114,#102126 48%,#181928);color:var(--text)}.admin-learn-shell,.guardian-learn-shell,.login-page,.portal-shell,.status-page,.student-learn-shell,.student-shell,.teacher-learn-shell{background:linear-gradient(135deg,#fbfdff,#f4f8fb 46%,#fff8ee)}:root[data-theme=dark] .admin-learn-shell,:root[data-theme=dark] .guardian-learn-shell,:root[data-theme=dark] .login-page,:root[data-theme=dark] .portal-shell,:root[data-theme=dark] .status-page,:root[data-theme=dark] .student-learn-shell,:root[data-theme=dark] .student-shell,:root[data-theme=dark] .teacher-learn-shell,:root[data-theme=dark] main.login-page.login-page-clean{background:linear-gradient(135deg,#0b1114,#102126 48%,#181928)}.theme-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;border:1px solid color-mix(in srgb,var(--line) 78%,transparent);border-radius:999px;background:color-mix(in srgb,var(--surface) 88%,transparent);color:var(--text);cursor:pointer;font-size:.78rem;font-weight:900;line-height:1;padding:0 11px;box-shadow:var(--shadow-soft);transition:background .14s ease,border-color .14s ease,color .14s ease,transform .14s ease}.theme-toggle:hover{border-color:color-mix(in srgb,var(--accent) 48%,var(--line));background:var(--surface-soft);transform:translateY(-1px)}.theme-toggle svg{color:var(--accent-dark)}.login-theme-toggle{margin:0 auto 10px}.identity-card{grid-template-areas:"brand profile meta theme logout";grid-template-columns:minmax(150px,.9fr) minmax(150px,1fr) minmax(170px,1.1fr) auto auto}.identity-theme{grid-area:theme;display:flex;justify-content:center;min-width:0}:root[data-theme=dark] .desktop-side-nav,:root[data-theme=dark] .flow-overview,:root[data-theme=dark] .flow-stage,:root[data-theme=dark] .identity-card,:root[data-theme=dark] .lesson-body,:root[data-theme=dark] .login-panel.login-panel-clean,:root[data-theme=dark] .login-welcome-card,:root[data-theme=dark] .metric,:root[data-theme=dark] .module,:root[data-theme=dark] .more-drawer-panel,:root[data-theme=dark] .section,:root[data-theme=dark] .student-achievement-preview,:root[data-theme=dark] .student-badge-card,:root[data-theme=dark] .student-certificate-preview,:root[data-theme=dark] .student-continue-card,:root[data-theme=dark] .student-course-card,:root[data-theme=dark] .student-empty-card,:root[data-theme=dark] .student-glass-hero,:root[data-theme=dark] .student-learn-stats article,:root[data-theme=dark] .student-main-progress-card,:root[data-theme=dark] .student-plan-card,:root[data-theme=dark] .student-profile-hero,:root[data-theme=dark] .student-progress-hero,:root[data-theme=dark] .student-progress-stat-grid article,:root[data-theme=dark] .student-settings-row,:root[data-theme=dark] .student-skill-card,:root[data-theme=dark] .student-unit-card,:root[data-theme=dark] .student-weekly-card,:root[data-theme=dark] .table-wrap{border-color:color-mix(in srgb,var(--line) 82%,transparent);background:color-mix(in srgb,var(--surface) 88%,transparent);color:var(--text);box-shadow:var(--shadow)}:root[data-theme=dark] .identity-brand strong,:root[data-theme=dark] .identity-name,:root[data-theme=dark] .login-panel-clean h2,:root[data-theme=dark] .login-welcome-card h1,:root[data-theme=dark] .student-achievement-preview h2,:root[data-theme=dark] .student-certificate-preview h2,:root[data-theme=dark] .student-glass-hero-copy h2,:root[data-theme=dark] .student-learn-greeting span,:root[data-theme=dark] .student-main-progress-card h2,:root[data-theme=dark] .student-plan-card h2,:root[data-theme=dark] .student-profile-hero h1,:root[data-theme=dark] .student-progress-hero h1,:root[data-theme=dark] .student-skill-card h2,:root[data-theme=dark] .student-weekly-card h2,:root[data-theme=dark] h1,:root[data-theme=dark] h2,:root[data-theme=dark] h3{color:var(--text)}:root[data-theme=dark] .hint,:root[data-theme=dark] .identity-brand small,:root[data-theme=dark] .identity-meta dt,:root[data-theme=dark] .identity-profile span,:root[data-theme=dark] .muted,:root[data-theme=dark] .section-header p,:root[data-theme=dark] .student-achievement-preview p,:root[data-theme=dark] .student-certificate-preview p,:root[data-theme=dark] .student-empty-card p,:root[data-theme=dark] .student-glass-hero-copy p,:root[data-theme=dark] .student-learn-greeting h1,:root[data-theme=dark] .student-main-progress-card p,:root[data-theme=dark] .student-plan-card p,:root[data-theme=dark] .student-profile-hero p,:root[data-theme=dark] .student-progress-hero p{color:var(--muted)}:root[data-theme=dark] .actions-row input,:root[data-theme=dark] .field input,:root[data-theme=dark] .field select,:root[data-theme=dark] .field textarea{border-color:var(--line);background:#101a1f;color:var(--text)}:root[data-theme=dark] .button.secondary{border-color:var(--line);background:var(--surface-soft);color:var(--text)}:root[data-theme=dark] .bottom-nav-card{border-color:color-mix(in srgb,var(--line) 80%,transparent);background:rgba(8,13,16,.92)}.interactive-lesson-flow.is-review-mode .flow-overview>div>p:not(.eyebrow):not(.flow-review-note),.interactive-lesson-flow.is-review-mode .pronunciation-stage .flow-stage-header p{display:none}.flow-review-note,.flow-review-practice-note{border:1px solid color-mix(in srgb,var(--accent-cyan) 34%,var(--line));border-radius:8px;background:color-mix(in srgb,var(--accent-cyan) 10%,var(--surface));color:var(--text);font-weight:850}.flow-review-note{margin:8px 0 0;padding:10px 12px}.flow-review-practice-note{display:flex;align-items:center;gap:8px;margin-top:12px;padding:11px 12px}.flow-review-practice-note svg{color:var(--accent-cyan);flex:0 0 auto}@media (max-width:860px){.identity-card{grid-template-areas:"brand theme logout" "profile profile profile" "meta meta meta";grid-template-columns:minmax(0,1fr) auto auto}.identity-theme{justify-content:flex-end}.theme-toggle span{display:none}}:root{--app-font-family:var(--font-app),"Cairo","Segoe UI",Tahoma,Arial,sans-serif;--app-bg-base:#f4f9fc;--app-bg-gradient:linear-gradient(135deg,#edf7ff,#f8fbff 34%,#effbf6 68%,#fff8ec);--app-bg-gradient-soft:linear-gradient(145deg,rgba(237,247,255,0.96),rgba(248,251,255,0.98) 42%,rgba(239,251,246,0.94) 72%,rgba(255,248,236,0.86))}html{background:var(--app-bg-base)}body{background:var(--app-bg-gradient);font-family:var(--app-font-family);font-weight:500;line-height:1.65;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}button,input,select,textarea{font-family:inherit}.admin-learn-shell,.guardian-learn-shell,.login-page,.portal-shell,.status-page,.student-learn-shell,.student-shell,.teacher-learn-shell{background:var(--app-bg-gradient-soft)}main.login-page.login-page-clean{background:var(--app-bg-gradient)}.bottom-nav-card,.course-path-lesson-card,.course-path-unit,.desktop-side-nav,.identity-card,.login-panel.login-panel-clean,.login-welcome-card,.student-achievement-card,.student-continue-card,.student-course-card,.student-profile-card,.student-progress-card,.student-stat-card{backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px)}.student-learn-shell{--learn-blue:#2563eb;--learn-green:#22c55e;--learn-purple:#7c3aed;--learn-gold:#f59e0b;--learn-ink:#101936;--learn-muted:#667085;min-height:100vh;background:linear-gradient(145deg,rgba(219,234,254,.94),rgba(255,255,255,.98) 44%,rgba(236,253,245,.82)),#f8fbff;color:var(--learn-ink)}.teacher-learn-shell{--learn-blue:#3f5cc8;--learn-green:#0f766e;--learn-purple:#7c3aed}.guardian-learn-shell{--learn-blue:#2563eb;--learn-green:#16a34a;--learn-purple:#b7791f}.admin-learn-shell{background:linear-gradient(145deg,rgba(239,246,255,.96),rgba(255,255,255,.98) 46%,rgba(236,253,245,.78)),#f8fbff}.admin-learn-shell .bottom-nav-card,.admin-learn-shell .desktop-side-nav,.admin-learn-shell .identity-card{border-color:rgba(255,255,255,.82);background:rgba(255,255,255,.88);box-shadow:0 18px 54px rgba(15,23,42,.1)}.admin-learn-home{--admin-glass-line:rgba(255,255,255,0.86);--admin-glass-bg:rgba(255,255,255,0.76);display:grid;gap:18px}.admin-learn-home .admin-glass-hero,.admin-learn-home .command-action,.admin-learn-home .command-card,.admin-learn-home .metric,.admin-learn-home .module,.admin-learn-home .review-lane,.admin-learn-home .role-command-card{border-color:var(--admin-glass-line);background:var(--admin-glass-bg);box-shadow:0 14px 36px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.72)}.admin-learn-home .admin-glass-hero{position:relative;overflow:hidden;background:linear-gradient(135deg,rgba(255,255,255,.92),rgba(239,246,255,.84)),radial-gradient(circle at 12% 18%,rgba(37,99,235,.18),transparent 32%)}.admin-learn-home .command-action,.admin-learn-home .command-card,.admin-learn-home .metric,.admin-learn-home .module,.admin-learn-home .review-lane,.admin-learn-home .role-command-card{transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.admin-learn-home .command-action:hover,.admin-learn-home .command-card:hover,.admin-learn-home .metric:hover,.admin-learn-home .module:hover,.admin-learn-home .review-lane:hover,.admin-learn-home .role-command-card:hover{border-color:rgba(37,99,235,.22);box-shadow:0 20px 44px rgba(15,23,42,.12);transform:translateY(-1px)}.student-learn-shell:before{position:fixed;inset:0;z-index:-1;pointer-events:none;content:"";background-image:linear-gradient(120deg,rgba(37,99,235,.1),transparent 34%,rgba(34,197,94,.08) 78%,transparent),url("data:image/svg+xml,%3Csvg width='160' height='160' viewBox='0 0 160 160' xmlns='http://www.w3.org/2000/svg'%3E%3Cg fill='none' stroke='%2398b4ee' stroke-width='2' stroke-linecap='round' opacity='.23'%3E%3Cpath d='M24 30l7 14 15 2-11 11 3 15-14-7-14 7 3-15L2 46l15-2z'/%3E%3Cpath d='M112 25c17 0 31 12 31 27s-14 27-31 27-31-12-31-27 14-27 31-27z'/%3E%3Cpath d='M53 106l17-9 17 9v22l-17 9-17-9zM62 114l8 4 8-4M70 118v13'/%3E%3Cpath d='M132 111l18 18M150 111l-18 18'/%3E%3C/g%3E%3C/svg%3E");background-size:auto,160px 160px}.student-learn-shell .desktop-side-nav,.student-learn-shell .identity-card{display:none}.student-learn-shell .portal-main{width:min(100%,480px);margin:0 auto;padding:max(14px,env(safe-area-inset-top)) 14px calc(88px + env(safe-area-inset-bottom))}.student-learn-shell .bottom-nav-card{width:min(456px,calc(100% - 24px));border-color:rgba(255,255,255,.86);background:rgba(255,255,255,.9);box-shadow:0 18px 54px rgba(15,23,42,.16);padding:6px}.student-learn-shell .bottom-nav-link{min-height:50px;flex-direction:column;gap:2px;border-radius:18px;color:#8a95aa;font-size:.62rem;padding:5px 2px}.student-learn-shell .bottom-nav-link[data-active=true]{border-color:transparent;background:rgba(37,99,235,.11);color:var(--learn-blue);box-shadow:0 12px 28px rgba(37,99,235,.13)}.student-learn-shell .bottom-nav-link[data-active=true]:after{position:absolute;bottom:4px;width:6px;height:6px;border-radius:999px;background:var(--learn-blue);content:""}.student-learn-shell .bottom-nav-link svg,.student-learn-shell .bottom-nav-link[data-active=true] svg{width:18px;height:18px}.student-learn-shell .bottom-nav-link,.student-learn-shell .desktop-side-link,.student-learn-shell .more-drawer-link{--student-nav-icon:#2563eb;--student-nav-icon-bg:rgba(37,99,235,0.12);--student-nav-icon-ring:rgba(37,99,235,0.18)}.student-learn-shell .bottom-nav-link[data-nav-tone=teal],.student-learn-shell .desktop-side-link[data-nav-tone=teal],.student-learn-shell .more-drawer-link[data-nav-tone=teal]{--student-nav-icon:#0f766e;--student-nav-icon-bg:rgba(15,118,110,0.13);--student-nav-icon-ring:rgba(15,118,110,0.2)}.student-learn-shell .bottom-nav-link[data-nav-tone=purple],.student-learn-shell .desktop-side-link[data-nav-tone=purple],.student-learn-shell .more-drawer-link[data-nav-tone=purple]{--student-nav-icon:#7c3aed;--student-nav-icon-bg:rgba(124,58,237,0.13);--student-nav-icon-ring:rgba(124,58,237,0.2)}.student-learn-shell .bottom-nav-link[data-nav-tone=cyan],.student-learn-shell .desktop-side-link[data-nav-tone=cyan],.student-learn-shell .more-drawer-link[data-nav-tone=cyan]{--student-nav-icon:#0284c7;--student-nav-icon-bg:rgba(2,132,199,0.13);--student-nav-icon-ring:rgba(2,132,199,0.2)}.student-learn-shell .bottom-nav-link[data-nav-tone=amber],.student-learn-shell .desktop-side-link[data-nav-tone=amber],.student-learn-shell .more-drawer-link[data-nav-tone=amber],.student-learn-shell .more-drawer>.bottom-nav-link{--student-nav-icon:#ca8a04;--student-nav-icon-bg:rgba(202,138,4,0.14);--student-nav-icon-ring:rgba(202,138,4,0.22)}.student-learn-shell .bottom-nav-link[data-nav-tone=indigo],.student-learn-shell .desktop-side-link[data-nav-tone=indigo],.student-learn-shell .more-drawer-link[data-nav-tone=indigo]{--student-nav-icon:#4f46e5;--student-nav-icon-bg:rgba(79,70,229,0.13);--student-nav-icon-ring:rgba(79,70,229,0.21)}.student-learn-shell .portal-nav-icon{display:inline-grid;width:30px;height:30px;flex:0 0 auto;place-items:center;border:1px solid var(--student-nav-icon-ring);border-radius:14px;background:radial-gradient(circle at 30% 24%,rgba(255,255,255,.78),transparent 36%),var(--student-nav-icon-bg);color:var(--student-nav-icon);box-shadow:0 8px 18px color-mix(in srgb,var(--student-nav-icon) 13%,transparent);transition:background .15s var(--ux-ease-standard),box-shadow .15s var(--ux-ease-standard),color .15s var(--ux-ease-standard),transform .15s var(--ux-ease-standard)}.student-learn-shell .portal-nav-icon svg{width:18px;height:18px;color:inherit;stroke-width:2.35;transition:opacity .15s var(--ux-ease-standard),transform .18s var(--ux-ease-emphasized)}.student-learn-shell .bottom-nav-link[data-active=true]{background:color-mix(in srgb,var(--student-nav-icon) 12%,#ffffff);color:var(--student-nav-icon)}.student-learn-shell .bottom-nav-link[data-active=true]:after{background:var(--student-nav-icon)}.student-learn-shell .bottom-nav-link[data-active=true] .portal-nav-icon,.student-learn-shell .desktop-side-link[data-active=true] .portal-nav-icon,.student-learn-shell .more-drawer-link[data-active=true] .portal-nav-icon{background:radial-gradient(circle at 30% 22%,rgba(255,255,255,.9),transparent 36%),color-mix(in srgb,var(--student-nav-icon) 18%,#ffffff);color:var(--student-nav-icon);box-shadow:0 10px 24px color-mix(in srgb,var(--student-nav-icon) 21%,transparent),inset 0 0 0 1px rgba(255,255,255,.72);transform:translateY(-1px) scale(1.045)}:root[data-theme=dark] .student-learn-shell .bottom-nav-card{border-color:rgba(255,255,255,.16);background:rgba(8,13,16,.9)}:root[data-theme=dark] .student-learn-shell .portal-nav-icon{background:radial-gradient(circle at 30% 24%,rgba(255,255,255,.16),transparent 38%),color-mix(in srgb,var(--student-nav-icon) 17%,rgba(15,23,42,.88));box-shadow:0 8px 18px color-mix(in srgb,var(--student-nav-icon) 17%,transparent)}:root[data-theme=dark] .student-learn-shell .bottom-nav-link[data-active=true]{background:color-mix(in srgb,var(--student-nav-icon) 20%,rgba(15,23,42,.84))}.student-learn-home{display:grid;gap:16px;min-width:0}.bidi-text{unicode-bidi:plaintext}.bidi-text-ltr{unicode-bidi:isolate}.student-achievement-preview,.student-continue-card,.student-course-card,.student-learn-greeting,.student-plan-card,.student-section-title{display:flex;align-items:center;justify-content:space-between;gap:12px}.student-learn-greeting span{color:var(--learn-ink);font-size:1.08rem;font-weight:900}.student-learn-greeting h1{margin:2px 0 0;color:var(--learn-muted);font-size:.94rem;font-weight:800}.student-avatar-bubble{display:grid;width:58px;height:58px;flex:0 0 auto;place-items:center;overflow:hidden;border:4px solid rgba(255,255,255,.88);border-radius:999px;background:rgba(255,255,255,.74);box-shadow:0 14px 34px rgba(15,23,42,.1)}.student-avatar-bubble img{width:100%;height:100%;object-fit:cover}.student-achievement-preview,.student-badge-card,.student-certificate-preview,.student-continue-card,.student-course-card,.student-empty-card,.student-glass-hero,.student-learn-stats article,.student-main-progress-card,.student-plan-card,.student-profile-hero,.student-progress-hero,.student-progress-stat-grid article,.student-settings-row,.student-skill-card,.student-unit-card,.student-weekly-card{border:1px solid rgba(255,255,255,.86);background:rgba(255,255,255,.74);box-shadow:0 14px 36px rgba(15,23,42,.08),inset 0 1px 0 rgba(255,255,255,.72)}@supports ((backdrop-filter:blur(10px)) or (-webkit-backdrop-filter:blur(10px))){.student-achievement-preview,.student-badge-card,.student-certificate-preview,.student-continue-card,.student-course-card,.student-empty-card,.student-glass-hero,.student-learn-stats article,.student-main-progress-card,.student-plan-card,.student-profile-hero,.student-progress-hero,.student-progress-stat-grid article,.student-settings-row,.student-skill-card,.student-unit-card,.student-weekly-card{-webkit-backdrop-filter:blur(16px);backdrop-filter:blur(16px)}}.student-glass-hero{overflow:hidden;border-radius:32px;padding:10px}.student-glass-hero-image{display:grid;min-height:184px;place-items:center;overflow:hidden;border-radius:26px;background:linear-gradient(135deg,rgba(37,99,235,.24),rgba(255,255,255,.72) 52%,rgba(236,72,153,.14)),#eaf3ff}.student-glass-hero-image img{width:100%;height:100%;min-height:184px;object-fit:cover;object-position:center}.student-glass-hero-copy{position:relative;z-index:1;width:min(88%,340px);margin:-38px auto 4px;border:1px solid rgba(255,255,255,.84);border-radius:28px;background:rgba(255,255,255,.82);box-shadow:0 14px 34px rgba(15,23,42,.1);padding:16px 14px;text-align:center}.student-achievement-preview span,.student-certificate-preview span,.student-course-card span,.student-glass-hero-copy span,.student-plan-card span,.student-progress-hero span,.student-section-title span{display:inline-flex;align-items:center;gap:5px;color:var(--learn-blue);font-size:.86rem;font-weight:900}.student-achievement-preview h2,.student-certificate-preview h2,.student-glass-hero-copy h2,.student-main-progress-card h2,.student-plan-card h2,.student-profile-hero h1,.student-progress-hero h1,.student-skill-card h2,.student-weekly-card h2{margin:6px 0 0;color:var(--learn-ink);font-size:clamp(1.35rem,7vw,2rem);font-weight:950;line-height:1.18}.student-achievement-preview p,.student-certificate-preview p,.student-empty-card p,.student-glass-hero-copy p,.student-main-progress-card p,.student-plan-card p,.student-profile-hero p,.student-progress-hero p{margin:8px 0 0;color:var(--learn-muted);font-weight:800;line-height:1.7}.student-learn-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:9px}.student-learn-stats article{display:grid;min-height:128px;align-content:center;justify-items:center;border-radius:26px;padding:11px 6px;text-align:center}.student-badge-card>span,.student-learn-stats article>span,.student-profile-avatar,.student-unit-card>span{display:grid;width:42px;height:42px;place-items:center;border-radius:999px;color:#fff;box-shadow:0 12px 26px rgba(37,99,235,.18)}.student-badge-card.blue>span,.student-learn-stats .blue,.student-unit-card .blue{background:linear-gradient(135deg,#2563eb,#60a5fa)}.student-badge-card.green>span,.student-learn-stats .green,.student-unit-card .green{background:linear-gradient(135deg,#22c55e,#86efac)}.student-badge-card.purple>span,.student-learn-stats .purple,.student-unit-card .purple{background:linear-gradient(135deg,#7c3aed,#c084fc)}.student-learn-stats .orange,.student-unit-card .orange{background:linear-gradient(135deg,#f97316,#fdba74)}.guardian-learn-home .student-unit-card .purple{background:linear-gradient(135deg,#b7791f,#facc15)}.teacher-learn-home .student-glass-hero-image{background:linear-gradient(135deg,rgba(63,92,200,.22),rgba(255,255,255,.74) 52%,rgba(15,118,110,.14)),#eef2ff;color:#3f5cc8}.guardian-learn-home .student-glass-hero-image{background:linear-gradient(135deg,rgba(183,121,31,.2),rgba(255,255,255,.74) 52%,rgba(37,99,235,.12)),#fff7ed;color:#b7791f}.student-badge-card.gold>span{background:linear-gradient(135deg,#f59e0b,#fde047)}.student-badge-card.orange>span{background:linear-gradient(135deg,#f97316,#fdba74)}.student-learn-stats strong{margin-top:8px;color:var(--learn-ink);font-family:Inter,Tajawal,system-ui,sans-serif;font-size:clamp(1.15rem,6vw,1.55rem);font-weight:950}.student-badge-card small,.student-course-card p,.student-learn-stats em,.student-learn-stats small,.student-unit-card em,.student-unit-card small{color:var(--learn-muted);font-size:.76rem;font-style:normal;font-weight:850;line-height:1.45}.student-learn-stats em{color:#16a34a}.student-continue-card{border-radius:28px;padding:10px}.student-continue-thumb{display:grid;width:116px;flex:0 0 116px;place-items:center;overflow:hidden;border-radius:22px;aspect-ratio:4/3;background:#eaf3ff}.student-continue-thumb img{width:100%;height:100%;object-fit:cover}.student-continue-copy{min-width:0;flex:1}.student-continue-copy span{color:var(--learn-blue);font-weight:950}.student-continue-copy h2,.student-course-card h3,.student-empty-card strong,.student-unit-card strong{margin:4px 0;overflow-wrap:anywhere;color:var(--learn-ink);font-size:1.05rem;font-weight:950;line-height:1.28}.student-continue-copy p{display:flex;align-items:center;gap:4px;margin:7px 0 0;color:var(--learn-muted);font-size:.82rem;font-weight:850}.student-progress-line{height:7px;overflow:hidden;border-radius:999px;background:rgba(148,163,184,.2)}.student-progress-line i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--learn-blue),#60a5fa)}.student-play-button{display:grid;width:54px;height:54px;flex:0 0 auto;place-items:center;border-radius:999px;background:linear-gradient(135deg,var(--learn-blue),#818cf8);color:#fff;box-shadow:0 14px 34px rgba(37,99,235,.34)}.student-section-title h2{margin:0;color:var(--learn-ink);font-size:1.16rem;font-weight:950}.student-achievement-preview a,.student-certificate-preview a,.student-profile-link,.student-section-title a{color:var(--learn-blue);font-weight:950}.student-unit-strip{display:grid;grid-auto-columns:minmax(142px,1fr);grid-auto-flow:column;gap:10px;overflow-x:auto;padding-bottom:2px;scrollbar-width:none}.student-unit-strip::-webkit-scrollbar{display:none}.student-unit-card{display:grid;min-height:158px;align-content:start;gap:6px;border-radius:26px;padding:14px}.student-course-cards{display:grid;gap:10px}.student-course-card{border-radius:26px;padding:16px}.student-course-card>div{flex:1;min-width:0}.student-course-card strong{display:grid;width:54px;height:54px;flex:0 0 auto;place-items:center;border:4px solid rgba(37,99,235,.18);border-radius:999px;color:var(--learn-blue);font-family:Inter,Tajawal,system-ui,sans-serif}.student-achievement-preview,.student-plan-card{border-radius:28px;padding:18px}.student-progress-hero{border-radius:30px;padding:22px;background:linear-gradient(135deg,rgba(37,99,235,.17),rgba(255,255,255,.78) 54%,rgba(34,197,94,.13)),rgba(255,255,255,.74)}.student-progress-hero.achievement{background:linear-gradient(135deg,rgba(245,158,11,.18),rgba(255,255,255,.78) 54%,rgba(124,58,237,.13)),rgba(255,255,255,.74)}.student-progress-grid{display:grid;grid-template-columns:1fr 1fr;gap:10px}.student-main-progress-card,.student-progress-stat-grid article{display:grid;justify-items:center;align-content:center;border-radius:26px;padding:14px;text-align:center}.student-main-progress-card>span{display:grid;width:126px;height:126px;place-items:center;border-radius:999px}.student-main-progress-card>span strong{display:grid;width:94px;height:94px;place-items:center;border-radius:999px;background:#fff;color:var(--learn-ink);font-family:Inter,Tajawal,system-ui,sans-serif;font-size:1.75rem;font-weight:950}.student-progress-stat-grid{display:grid;grid-template-columns:1fr 1fr;gap:8px}.student-progress-stat-grid article{min-height:92px}.student-progress-stat-grid svg{color:var(--learn-blue)}.student-progress-stat-grid strong{color:var(--learn-ink);font-size:1.25rem;font-weight:950}.student-progress-stat-grid span{color:var(--learn-muted);font-size:.74rem;font-weight:850}.student-certificate-preview,.student-profile-hero,.student-skill-card,.student-weekly-card{border-radius:28px;padding:18px}.student-week-bars{display:grid;grid-template-columns:repeat(7,minmax(0,1fr));align-items:end;min-height:150px;gap:7px;padding-top:14px}.student-week-bars span{display:grid;height:100%;align-content:end;justify-items:center;gap:7px}.student-week-bars i{width:24px;min-height:12px;border-radius:999px 999px 10px 10px;background:linear-gradient(180deg,#60a5fa,var(--learn-blue));box-shadow:0 8px 22px rgba(37,99,235,.24)}.student-week-bars small{color:var(--learn-muted);font-size:.68rem;font-weight:850}.student-skill-row{display:grid;grid-template-columns:100px 1fr 44px;align-items:center;gap:8px;margin-top:12px}.student-skill-row>span{display:flex;align-items:center;gap:6px;font-weight:950}.student-skill-row strong{color:var(--learn-ink);font-family:Inter,Tajawal,system-ui,sans-serif}.student-badge-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.student-badge-card{display:grid;min-height:136px;justify-items:center;align-content:center;gap:7px;border-radius:26px;padding:14px;text-align:center}.student-badge-card strong{color:var(--learn-ink);font-weight:950}.student-certificate-preview{display:grid;grid-template-columns:1fr 140px;align-items:center;gap:14px}.student-certificate-preview section{display:grid;min-height:134px;place-items:center;border:2px solid rgba(37,99,235,.2);border-radius:20px;background:rgba(255,255,255,.8);padding:10px;text-align:center;transform:rotate(-3deg)}.student-certificate-preview section b,.student-certificate-preview section strong{color:#172554;font-weight:950}.student-certificate-preview section p,.student-certificate-preview section small{margin:0;color:var(--learn-muted);font-size:.72rem;font-weight:850}.student-profile-hero{display:grid;grid-template-columns:76px 1fr;align-items:center;gap:14px;overflow:hidden}.student-profile-avatar{width:76px;height:76px;background:linear-gradient(135deg,var(--learn-blue),var(--learn-purple))}.student-profile-hero strong{display:inline-flex;margin-top:4px;border-radius:999px;background:rgba(37,99,235,.08);padding:5px 10px;color:var(--learn-blue)}.student-plan-card>strong{display:grid;width:72px;height:72px;flex:0 0 auto;place-items:center;border:8px solid rgba(37,99,235,.14);border-radius:999px;color:var(--learn-blue);font-family:Inter,Tajawal,system-ui,sans-serif;font-size:1.25rem;font-weight:950}.student-settings-list{display:grid;gap:7px}.student-settings-row{display:flex;min-height:58px;align-items:center;justify-content:space-between;gap:10px;border-radius:20px;color:var(--learn-ink);padding:10px 14px}.student-settings-row span{display:inline-flex;align-items:center;gap:8px;color:inherit;font-weight:950}.student-settings-row>span:last-child{color:#98a2b3}.student-profile-link{justify-self:center}.student-empty-card{border-radius:24px;padding:18px}@media (max-width:370px){.student-learn-shell .portal-main{padding-inline:10px}.student-learn-stats{gap:6px}.student-learn-stats article{min-height:118px;padding-inline:4px}.student-continue-thumb{width:92px;flex-basis:92px}.student-play-button{width:46px;height:46px}.student-certificate-preview,.student-progress-grid{grid-template-columns:1fr}.student-skill-row{grid-template-columns:82px 1fr 38px}}@media (min-width:768px){.student-learn-shell .portal-main{width:min(100%,520px)}}@media (prefers-reduced-motion:reduce){.course-path-unit .course-path-items,.course-path-unit[open] .course-path-item,.more-drawer-panel,.portal-main>*{animation:none!important}.course-path-unit,.course-path-unit-title,.course-path-unit-title:after{transition-duration:1ms!important}.student-learn-shell *,.student-learn-shell :after,.student-learn-shell :before{animation:none!important;scroll-behavior:auto!important;transition-duration:1ms!important}}.teacher-submissions-page{display:grid;gap:20px}.teacher-submission-stats{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.teacher-submission-stats article{display:grid;gap:6px;min-height:104px;padding:16px;border:1px solid #dbe6ef;border-radius:16px;background:#fff;box-shadow:0 12px 34px rgba(28,63,90,.08)}.teacher-submission-stats svg{color:#0872c9}.teacher-submission-stats span{color:#64748b;font-size:.9rem;font-weight:800}.teacher-submission-stats strong{color:#0f172a;font-size:1.65rem;font-weight:900}.pronunciation-audio-row{display:grid;grid-template-columns:minmax(220px,1fr) auto;align-items:center;gap:12px}.pronunciation-audio-row audio{width:100%;min-width:0}.pronunciation-audio-row .button{white-space:nowrap}@media (max-width:680px){.pronunciation-audio-row,.teacher-submission-stats{grid-template-columns:1fr}.pronunciation-audio-row .button{width:100%;justify-content:center}}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.skeleton-shimmer{position:relative;display:block;overflow:hidden;background:#e6eef6;isolation:isolate}.skeleton-shimmer:after{content:"";position:absolute;inset:0;transform:translateX(100%);background:linear-gradient(90deg,transparent,rgba(255,255,255,.8),transparent);animation:skeleton-shimmer 1.25s ease-in-out infinite}.student-page-loading{pointer-events:none;user-select:none}.student-page-loading .student-loading-surface{position:relative;overflow:hidden;isolation:isolate}.student-page-loading .student-loading-surface:after{display:none}.student-page-loading .student-loading-surface>*{position:relative;z-index:1}.student-page-loading .skeleton-shimmer{background:linear-gradient(90deg,#dce8f2,#f5fbff,#dce8f2);box-shadow:none!important;color:transparent!important}.student-page-loading .skeleton-button,.student-page-loading .skeleton-line,.student-page-loading .skeleton-pill,.student-page-loading .skeleton-progress{max-width:100%}.student-page-loading .student-avatar-bubble .skeleton-circle,.student-page-loading .student-profile-avatar .skeleton-circle{width:100%;height:100%}.student-page-loading .student-continue-thumb .skeleton-thumb,.student-page-loading .student-glass-hero-image .skeleton-media{width:100%;height:100%;min-height:100%;border-radius:inherit}.student-page-loading .student-course-card .skeleton-score,.student-page-loading .student-main-progress-card .skeleton-score,.student-page-loading .student-plan-card .skeleton-score{justify-self:center}.student-loading-option{display:flex;align-items:center;gap:10px;min-height:48px;padding:10px 12px;border:1px solid #dbe6ef;border-radius:14px;background:rgba(248,252,255,.86)}.student-loading-option .skeleton-line{flex:1}.student-loading-bar{display:block;width:100%;min-height:18px;border-radius:999px;align-self:end}.student-page-loading .student-week-bars .student-loading-bar{width:18px;margin-inline:auto}.student-page-loading .button,.student-page-loading .lesson-back-button,.student-page-loading .lesson-step-counter,.student-page-loading .voice-mic-button{pointer-events:none}.student-page-loading .button .skeleton-line{width:78px;height:14px;background:rgba(255,255,255,.58)}.student-page-loading .interactive-video-player.skeleton-video{display:block;min-height:clamp(220px,48vw,520px);border-radius:22px}.student-page-loading .pronunciation-score-ring .skeleton-pill.small{width:54px;height:18px;margin:auto}:root[data-theme=dark] .student-page-loading .skeleton-shimmer{background:linear-gradient(90deg,#263846,#354b5a,#263846)}:root[data-theme=dark] .student-page-loading .student-loading-surface:after{background:linear-gradient(90deg,transparent,rgba(255,255,255,.12),transparent)}:root[data-theme=dark] .student-loading-option{border-color:color-mix(in srgb,var(--line) 78%,transparent);background:color-mix(in srgb,var(--surface) 88%,transparent)}.student-skeleton-page{display:grid;gap:20px;max-width:980px;margin:0 auto;padding-bottom:24px}.skeleton-hero,.skeleton-lesson-hero{display:grid;gap:18px;padding:18px;border:1px solid #dbe6ef;border-radius:24px;background:rgba(255,255,255,.78);box-shadow:0 18px 50px rgba(28,63,90,.1)}.skeleton-hero{grid-template-columns:minmax(210px,.88fr) minmax(260px,1.12fr);align-items:stretch}.skeleton-activity-stack,.skeleton-hero-copy,.skeleton-lesson-stack,.skeleton-line-stack,.skeleton-unit-stack{display:grid;gap:12px}.skeleton-media{min-height:220px;border-radius:20px}.skeleton-button,.skeleton-circle,.skeleton-line,.skeleton-marker,.skeleton-pill,.skeleton-progress,.skeleton-score,.skeleton-stat,.skeleton-thumb,.skeleton-video{border-radius:999px}.skeleton-line{width:100%;height:14px}.skeleton-line.title{width:min(360px,82%);height:32px;border-radius:14px}.skeleton-line.wide{width:88%}.skeleton-line.medium{width:62%}.skeleton-line.short{width:38%}.skeleton-pill{width:118px;height:28px}.skeleton-pill.small{width:74px;height:24px}.skeleton-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;margin-top:auto}.skeleton-stat{height:58px;border-radius:18px}.skeleton-unit{display:grid;gap:12px;padding:14px;border:1px solid #dbe6ef;border-radius:18px;background:rgba(255,255,255,.78);box-shadow:0 12px 34px rgba(28,63,90,.08)}.skeleton-activity-card,.skeleton-lesson-row,.skeleton-unit-head{display:grid;align-items:center;gap:12px}.skeleton-unit-head{grid-template-columns:auto 1fr auto}.skeleton-lesson-row{grid-template-columns:32px minmax(92px,140px) minmax(0,1fr) 58px;padding:12px;border:1px solid #e6eef6;border-radius:16px;background:#fff}.skeleton-circle,.skeleton-marker{width:32px;height:32px}.skeleton-thumb{height:76px;border-radius:14px}.skeleton-progress{width:74%;height:7px}.skeleton-score{width:46px;height:46px;border-radius:999px}.lesson-detail-loading{max-width:860px}.skeleton-lesson-hero{gap:14px}.skeleton-video{width:100%;aspect-ratio:16/9;min-height:220px;border-radius:20px}.skeleton-activity-card{grid-template-columns:36px minmax(0,1fr) 132px;padding:16px;border:1px solid #dbe6ef;border-radius:18px;background:rgba(255,255,255,.82);box-shadow:0 12px 34px rgba(28,63,90,.08)}.skeleton-button{height:42px;border-radius:14px}.course-path-unit{overflow:clip;border:1px solid #dbe6ef;border-radius:18px;background:rgba(255,255,255,.76);box-shadow:0 12px 34px rgba(28,63,90,.08);padding:0;transition:background-color .18s ease,border-color .18s ease,box-shadow .18s ease,transform .18s ease}.course-path-unit[open]{background:#fff;box-shadow:0 18px 42px rgba(28,63,90,.11)}.course-path-unit-title{display:grid;grid-template-columns:auto minmax(0,1fr) auto auto;align-items:center;cursor:pointer;padding:16px 18px;list-style:none;transition:background-color .16s ease}.course-path-unit-title:hover{background:color-mix(in srgb,#eaf6ff 42%,transparent)}.course-path-unit-title::-webkit-details-marker{display:none}.course-path-unit-title:after{content:"+";display:grid;place-items:center;width:32px;height:32px;margin-inline-start:auto;border-radius:999px;color:#0872c9;background:#eaf6ff;font-size:1.2rem;font-weight:900;transition:transform .18s ease,background-color .18s ease,color .18s ease}.course-path-unit[open] .course-path-unit-title:after{content:"-";transform:rotate(180deg)}.course-path-unit-title em{color:#64748b;font-size:.86rem;font-style:normal;font-weight:900}.course-path-unit .course-path-items{padding:0 14px 16px;transform-origin:top;animation:unit-items-open .21s cubic-bezier(.16,1,.3,1) both}.course-path-unit[open] .course-path-item{animation:unit-item-enter .22s cubic-bezier(.16,1,.3,1) both}.course-path-unit[open] .course-path-item:nth-child(2){animation-delay:24ms}.course-path-unit[open] .course-path-item:nth-child(3){animation-delay:48ms}.course-path-unit[open] .course-path-item:nth-child(4){animation-delay:72ms}.course-path-unit[open] .course-path-item:nth-child(n+5){animation-delay:96ms}@keyframes skeleton-shimmer{to{transform:translateX(-100%)}}@keyframes portal-page-enter{0%{opacity:.62;transform:translateY(6px) scale(.998)}to{opacity:1;transform:translateY(0) scale(1)}}@keyframes portal-page-leave{0%{opacity:1;transform:translateY(0) scale(1);filter:blur(0)}to{opacity:.58;transform:translateY(-4px) scale(.998)}}@keyframes drawer-panel-in{0%{opacity:0;transform:translateX(50%) translateY(12px) scale(.975)}to{opacity:1;transform:translateX(50%) translateY(0) scale(1)}}@keyframes unit-items-open{0%{opacity:0;transform:translateY(-8px) scaleY(.98)}to{opacity:1;transform:translateY(0) scaleY(1)}}@keyframes unit-item-enter{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}@media (max-width:620px){.skeleton-hero{grid-template-columns:1fr;border-radius:20px}.skeleton-media{min-height:160px}.skeleton-stat-grid{grid-template-columns:1fr}.skeleton-lesson-row{grid-template-columns:26px 88px minmax(0,1fr)}.skeleton-lesson-row .skeleton-score{grid-column:3;width:64px;height:8px;border-radius:999px}.skeleton-activity-card{grid-template-columns:32px minmax(0,1fr)}.skeleton-activity-card .skeleton-button{grid-column:1/-1}.course-path-unit-title{grid-template-columns:1fr auto}.course-path-unit-title em,.course-path-unit-title h2{grid-column:1/-1}}.pronunciation-ui-v2-enabled{--lesson-blue:#1d4ed8;--lesson-green:#15803d;--lesson-ink:#172033;--lesson-muted:#475569;--lesson-line:#d9e3ef}.pronunciation-ui-v2{min-height:0;align-content:start;gap:14px}.pronunciation-prompt-card,.pronunciation-recorder-card{min-width:0;border:1px solid var(--lesson-line);border-radius:24px;background:#ffffff;box-shadow:0 14px 34px rgba(30,64,175,.08);padding:clamp(18px,4vw,26px)}.pronunciation-prompt-card{display:grid;align-content:start;gap:10px;background:radial-gradient(circle at 14% 8%,rgba(29,78,216,.1),transparent 34%),linear-gradient(145deg,#ffffff,#f7faff)}.pronunciation-live-status,.pronunciation-prompt-topline{display:flex;align-items:center;justify-content:space-between;gap:10px}.pronunciation-activity-state,.pronunciation-kicker,.pronunciation-listen-button,.pronunciation-live-status>span,.pronunciation-privacy-note{display:inline-flex;align-items:center;gap:7px}.pronunciation-kicker{color:var(--lesson-blue);font-size:.78rem;font-weight:900}.pronunciation-activity-state{min-height:28px;border-radius:999px;background:#eaf2ff;color:#1d4ed8;font-size:.72rem;font-weight:900;padding:4px 10px}.pronunciation-activity-state.is-recording,.pronunciation-activity-state.is-retry{background:#fff1f2;color:#be123c}.pronunciation-activity-state.is-complete{background:#ecfdf3;color:#15803d}.pronunciation-prompt-card h2{margin:6px 0 2px;color:var(--lesson-ink);font-size:clamp(1.12rem,3.4vw,1.45rem);font-weight:900;line-height:1.5}.pronunciation-target-label{color:var(--lesson-muted);font-size:.74rem;font-weight:850}.pronunciation-target-text{display:block;overflow-wrap:anywhere;color:var(--lesson-ink);font-size:clamp(2rem,8vw,3.15rem);font-weight:950;line-height:1.18;letter-spacing:-.025em}.pronunciation-listen-button{width:fit-content;min-height:42px;border:1px solid #bed4fb;border-radius:999px;background:#edf4ff;color:#1d4ed8;font:inherit;font-size:.84rem;font-weight:900;padding:8px 14px;cursor:pointer;transition:border-color .15s ease,background-color .15s ease,transform .15s ease}.pronunciation-listen-button:hover{border-color:#8fb5f5;background:#e2edff}.pronunciation-listen-button:active{transform:scale(.98)}.pronunciation-actions .button:focus-visible,.pronunciation-listen-button:focus-visible,.pronunciation-ui-v2 .voice-mic-button:focus-visible{outline:3px solid rgba(29,78,216,.3);outline-offset:3px}.pronunciation-coach-copy{margin:2px 0 0;color:var(--lesson-muted);font-size:.82rem;font-weight:700;line-height:1.65}.pronunciation-recorder-card{display:grid;justify-items:center;gap:10px;text-align:center}.pronunciation-live-status{width:100%;color:var(--lesson-muted);font-size:.76rem;font-weight:850}.pronunciation-live-status i{width:8px;height:8px;border-radius:999px;background:#94a3b8;box-shadow:0 0 0 4px rgba(148,163,184,.14)}.pronunciation-recorder-card.is-recording .pronunciation-live-status i{background:#e11d48;box-shadow:0 0 0 4px rgba(225,29,72,.14);animation:pronunciation-live-pulse 1.1s ease-in-out infinite}.pronunciation-recorder-card.is-complete .pronunciation-live-status i{background:#15803d;box-shadow:0 0 0 4px rgba(21,128,61,.13)}.pronunciation-live-waveform{display:flex;height:44px;align-items:center;justify-content:center;gap:5px;margin-top:2px}.pronunciation-live-waveform span{width:5px;height:38px;border-radius:999px;background:linear-gradient(180deg,#60a5fa,#1d4ed8);opacity:.9;transform:scaleY(var(--bar-level));transform-origin:center;transition:transform .11s linear}.pronunciation-recorder-card.is-recording .pronunciation-live-waveform span{background:linear-gradient(180deg,#fb7185,#e11d48)}.pronunciation-ui-v2 .voice-mic-button{width:108px!important;height:108px!important;border:7px solid #dbeafe;background:linear-gradient(155deg,#2563eb,#1d4ed8);box-shadow:0 0 0 9px rgba(29,78,216,.07),0 16px 30px rgba(29,78,216,.22);transition:transform .15s ease,box-shadow .15s ease,background-color .15s ease}.pronunciation-ui-v2 .voice-mic-button:before{inset:-15px;border-color:rgba(29,78,216,.14)}.pronunciation-ui-v2 .voice-mic-button:hover:not(:disabled){transform:translateY(-2px);box-shadow:0 0 0 9px rgba(29,78,216,.09),0 20px 36px rgba(29,78,216,.25)}.pronunciation-ui-v2 .voice-mic-button.is-recording{border-color:#ffe4e6;background:linear-gradient(155deg,#f43f5e,#be123c);box-shadow:0 0 0 9px rgba(225,29,72,.08),0 16px 30px rgba(190,18,60,.22)}.pronunciation-ui-v2 .voice-mic-button:disabled{opacity:.72}.pronunciation-recording-timer{display:inline-flex;overflow:hidden;max-height:0;align-items:center;gap:7px;border:0 solid transparent;border-radius:999px;background:#fff1f2;color:#9f1239;opacity:0;padding:0 13px;pointer-events:none;transform:translateY(-4px);transition:max-height .18s ease,border-width .18s ease,opacity .16s ease,padding .18s ease,transform .18s ease}.pronunciation-recording-timer.is-visible{max-height:40px;border-width:1px;border-color:#fecdd3;opacity:1;padding:7px 13px;transform:translateY(0)}.pronunciation-recording-timer span{font-size:.74rem;font-weight:850}.pronunciation-recording-timer bdi{min-width:42px;color:#881337;font-size:.92rem;font-variant-numeric:tabular-nums;font-weight:950;letter-spacing:.03em}.pronunciation-recorder-title{margin-top:4px;color:var(--lesson-ink);font-size:1.03rem;font-weight:950}.pronunciation-recorder-card>p{max-width:34ch;margin:0;color:var(--lesson-muted);font-size:.8rem;font-weight:700;line-height:1.6}.pronunciation-ui-v2 .pronunciation-result-card{order:0;display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:14px;border-color:#cdebd8;background:#f7fdf9;box-shadow:0 12px 28px rgba(21,128,61,.08);padding:16px}.pronunciation-ui-v2 .pronunciation-result-card.is-processing{border-color:#cbdcf8;background:#f7faff;box-shadow:0 12px 28px rgba(29,78,216,.07)}.pronunciation-result-symbol{display:grid;width:68px;height:68px;place-items:center;border-radius:999px;background:#e7f8ed;color:#15803d}.pronunciation-result-symbol.is-processing{background:#eaf2ff;color:#1d4ed8}.pronunciation-ui-v2 .pronunciation-score-ring{width:68px;height:68px}.pronunciation-ui-v2 .pronunciation-score-ring strong{color:#15803d;font-size:1rem}.pronunciation-result-copy{display:grid;min-width:0;gap:4px}.pronunciation-ui-v2 .pronunciation-result-copy>span{color:var(--lesson-muted);font-size:.72rem;font-weight:850}.pronunciation-ui-v2 .pronunciation-result-copy h3{margin:0;color:#15803d;font-size:1.12rem;font-weight:950}.pronunciation-ui-v2 .pronunciation-result-card.is-processing h3{color:#1d4ed8}.pronunciation-ui-v2 .pronunciation-result-copy>p{display:block;margin:0;color:var(--lesson-muted);font-size:.8rem;font-weight:750;line-height:1.55}.pronunciation-heard-text{display:flex;flex-wrap:wrap;align-items:baseline;gap:5px 8px;margin-top:6px;border-radius:12px;background:rgba(255,255,255,.82);padding:8px 10px}.pronunciation-heard-text span{color:var(--lesson-muted);font-size:.7rem;font-weight:800}.pronunciation-heard-text bdi{overflow-wrap:anywhere;color:var(--lesson-ink);font-size:.88rem;font-weight:900}.pronunciation-ui-v2 .flow-review-practice-note,.pronunciation-ui-v2 .teacher-return-note,.pronunciation-ui-v2 .teacher-tip-card{order:0}.pronunciation-ui-v2 .teacher-tip-card{border-radius:18px;box-shadow:none}.pronunciation-ui-v2 .teacher-tip-avatar{width:44px;height:44px}.pronunciation-privacy-note{justify-content:center;margin:0;color:var(--lesson-muted);font-size:.75rem;font-weight:750;line-height:1.55;text-align:center}.pronunciation-privacy-note svg{flex:0 0 auto;color:#15803d}.lesson-voice-activity .flow-actions.pronunciation-actions{order:0;justify-items:center;gap:8px!important}.pronunciation-actions .button{width:min(100%,300px)!important}.pronunciation-ui-v2 .pronunciation-actions .pronunciation-skip-action{min-height:40px!important;border:0!important;background:transparent!important;color:#475569!important;box-shadow:none!important;font-size:.82rem;text-decoration:underline;text-decoration-color:#cbd5e1;text-underline-offset:4px}.pronunciation-ui-v2 .pronunciation-actions .pronunciation-skip-action:hover{background:#f1f5f9!important;color:#1e293b!important}.lesson-voice-activity .flow-actions:after{display:none;content:none}@keyframes pronunciation-live-pulse{0%,to{transform:scale(1);opacity:1}50%{transform:scale(.76);opacity:.72}}@media (min-width:760px){.student-learn-shell .portal-main:has(.pronunciation-ui-v2-enabled){width:min(100%,820px);padding-inline:20px}.pronunciation-ui-v2{grid-template-columns:minmax(0,1.08fr) minmax(280px,.92fr);align-items:stretch}.pronunciation-prompt-card,.pronunciation-recorder-card{min-height:330px}.pronunciation-ui-v2 .flow-review-practice-note,.pronunciation-ui-v2 .pronunciation-actions,.pronunciation-ui-v2 .pronunciation-privacy-note,.pronunciation-ui-v2 .pronunciation-result-card,.pronunciation-ui-v2 .pronunciation-submitted-summary,.pronunciation-ui-v2 .teacher-return-note,.pronunciation-ui-v2 .teacher-tip-card{grid-column:1/-1}.pronunciation-ui-v2 .teacher-tip-card{justify-self:stretch}}@media (max-width:420px){.lesson-voice-activity.pronunciation-ui-v2{gap:10px}.pronunciation-prompt-card,.pronunciation-recorder-card{border-radius:20px;padding:14px}.pronunciation-prompt-card{gap:7px}.pronunciation-prompt-card h2{margin-block:3px 0;font-size:1.08rem}.pronunciation-target-text{font-size:clamp(1.85rem,10.5vw,2.35rem)}.pronunciation-coach-copy{font-size:.76rem;line-height:1.5}.pronunciation-recorder-card{gap:7px}.pronunciation-ui-v2 .voice-mic-button{width:96px!important;height:96px!important}.pronunciation-live-waveform{height:34px;margin-top:0}.pronunciation-live-waveform span{height:32px}.pronunciation-recorder-title{margin-top:1px;font-size:.98rem}.pronunciation-recorder-card>p{font-size:.76rem;line-height:1.5}.pronunciation-ui-v2 .teacher-tip-card{gap:9px;padding:10px}.pronunciation-ui-v2 .teacher-tip-card p{line-height:1.42}.pronunciation-ui-v2 .pronunciation-result-card{grid-template-columns:58px minmax(0,1fr);padding:14px}.pronunciation-result-symbol,.pronunciation-ui-v2 .pronunciation-score-ring{width:58px;height:58px}}@media (prefers-reduced-motion:reduce){.pronunciation-recorder-card.is-recording .pronunciation-live-status i{animation:none}.pronunciation-listen-button,.pronunciation-live-waveform span,.pronunciation-recording-timer,.pronunciation-ui-v2 .voice-mic-button{transition:none}}.course-path-page{display:grid;gap:28px;max-width:980px;margin:0 auto;padding-bottom:24px}.course-path-shell{position:relative;display:grid;gap:18px}.course-path-shell.is-reserved .course-path-hero{border-color:#6ee7b7;box-shadow:0 16px 38px rgba(5,150,105,.16)}.course-path-hero{position:relative;display:grid;grid-template-columns:minmax(130px,180px) minmax(0,1fr);align-items:center;gap:14px;overflow:hidden;min-height:150px;padding:14px;border:1px solid #d7e7f5;border-radius:18px;background:radial-gradient(circle at 90% 20%,rgba(255,196,64,.28),transparent 22%),linear-gradient(145deg,#eff8ff,#f8fbff 58%,#edf7f2);box-shadow:0 16px 38px rgba(22,66,96,.1)}.course-path-hero:before{content:"";position:absolute;inset:0;background-image:linear-gradient(90deg,rgba(14,116,144,.05) 1px,transparent 0),linear-gradient(rgba(14,116,144,.05) 1px,transparent 0);background-size:34px 34px;mask-image:linear-gradient(180deg,rgba(0,0,0,.4),transparent 78%)}.course-path-hero-media{position:relative;z-index:1;height:118px;display:grid;place-items:center;overflow:hidden;border:1px solid rgba(120,174,212,.36);border-radius:14px;background:rgba(255,255,255,.74)}.course-path-hero-media img{width:100%;height:100%;object-fit:cover}.course-path-hero-badge{position:relative;z-index:1;width:100%;margin:0;padding:12px 14px;border-radius:16px;color:#fff;text-align:start;background:linear-gradient(135deg,#075eaf,#0785d8);box-shadow:0 14px 28px rgba(7,94,175,.22)}.course-path-hero-topline{display:flex;align-items:center;justify-content:space-between;gap:10px}.course-path-reservation-badge{display:inline-flex;flex:0 0 auto;align-items:center;gap:5px;padding:5px 9px;border:1px solid transparent;border-radius:999px;line-height:1;white-space:nowrap;box-shadow:0 7px 16px rgba(15,23,42,.14)}.course-path-reservation-badge.is-reserved{border-color:#6ee7b7;background:#d1fae5;color:#065f46}.course-path-reservation-badge.is-unreserved{border-color:rgba(255,255,255,.34);background:rgba(15,23,42,.38);color:#f8fafc}.course-path-footer span,.course-path-hero-badge span,.course-path-meta span,.course-path-summary span,.course-path-unit-title span{color:inherit;font-size:.82rem;font-weight:800}.course-path-hero-badge h1{margin:6px 0;font-size:clamp(1.1rem,2.4vw,1.55rem);line-height:1.15;-webkit-line-clamp:2}.course-path-hero-badge h1,.course-path-hero-badge p{overflow:hidden;display:-webkit-box;-webkit-box-orient:vertical}.course-path-hero-badge p{margin:0;color:rgba(255,255,255,.86);line-height:1.45;-webkit-line-clamp:1}.course-path-summary{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.course-path-summary div{display:grid;gap:4px;min-height:68px;padding:12px 14px;border:1px solid #dbe6ef;border-radius:14px;background:#fff}.course-path-summary span{color:#64748b}.course-path-summary strong{color:#0f172a;overflow-wrap:anywhere}.course-path-items,.course-path-timeline,.course-path-unit{display:grid;gap:16px}.course-path-unit-title{display:flex;align-items:baseline;gap:10px;padding:0 8px}.course-path-unit-title span{color:#0872c9}.course-path-unit-title h2{margin:0;color:#0f172a;font-size:1.08rem}.course-path-item{position:relative;display:grid;grid-template-columns:58px minmax(0,1fr);align-items:center;gap:12px}.course-path-item:before{content:"";position:absolute;top:-18px;bottom:-18px;right:28px;width:3px;background:#d5e0ea}.course-path-item:first-child:before{top:50%}.course-path-item:last-child:before{bottom:50%}.course-path-marker{position:relative;z-index:1;display:grid;place-items:center;width:42px;height:42px;justify-self:center;border:5px solid #fff;border-radius:999px;color:#fff;background:#94a3b8;box-shadow:0 8px 22px rgba(15,23,42,.16)}.course-path-item[data-state=complete] .course-path-marker{background:#12b76a}.course-path-item[data-state=active] .course-path-marker{background:#0872c9}.course-path-item[data-state=open] .course-path-marker{background:#f59e0b}.course-path-lesson-card{display:grid;grid-template-columns:168px minmax(0,1fr) 74px;align-items:center;gap:18px;min-height:128px;padding:12px 14px;border:1px solid #dce8f2;border-radius:18px;color:inherit;text-decoration:none;background:#fff;box-shadow:0 12px 34px rgba(28,63,90,.1);transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease}.course-path-lesson-card:hover{border-color:#8dc8ed;transform:translateY(-2px);box-shadow:0 18px 40px rgba(28,63,90,.14)}.course-path-lesson-card.is-locked{color:#64748b;background:#f8fafc;box-shadow:none}.course-path-thumb{display:grid;place-items:center;overflow:hidden;width:100%;aspect-ratio:16/9;border-radius:14px;color:#0872c9;background:#eaf6ff}.course-path-thumb img{width:100%;height:100%;object-fit:cover}.course-path-copy{display:grid;gap:6px;min-width:0}.course-path-meta{display:flex;align-items:center;gap:8px;color:#0f9f61}.course-path-meta i{width:7px;height:7px;border-radius:999px;background:currentColor}.course-path-lesson-card.is-locked .course-path-meta{color:#94a3b8}.course-path-copy h3{margin:0;color:#111827;font-size:clamp(1.05rem,2.5vw,1.35rem);line-height:1.25;overflow-wrap:anywhere}.course-path-copy p{margin:0;color:#64748b;font-size:.92rem;line-height:1.55;overflow-wrap:anywhere}.course-path-progress{overflow:hidden;width:min(320px,100%);height:6px;border-radius:999px;background:#e5edf4}.course-path-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#12b76a,#0872c9)}.course-path-score{display:grid;place-items:center;width:62px;height:62px;border-radius:999px}.course-path-score span{display:grid;place-items:center;width:48px;height:48px;border-radius:inherit;color:#0f9f61;font-size:.78rem;font-weight:900;background:#fff}.course-path-lesson-card.is-locked .course-path-score span{color:#94a3b8}.course-path-empty,.course-path-footer{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:16px 18px;border:1px solid #dbe6ef;border-radius:18px;background:#fff}.course-path-empty{display:grid;justify-items:center;text-align:center}.course-path-empty h1,.course-path-empty p{margin:0}@media (max-width:760px){.course-path-page{gap:20px}.course-path-hero{grid-template-columns:112px minmax(0,1fr);gap:12px;min-height:132px;padding:12px;border-radius:18px}.course-path-hero-media{height:112px;border-radius:12px}.course-path-hero-badge{padding:12px;border-radius:14px}.course-path-hero-badge p{line-height:1.45;-webkit-line-clamp:2}.course-path-summary{grid-template-columns:repeat(2,minmax(0,1fr))}.course-path-item{grid-template-columns:44px minmax(0,1fr);gap:8px}.course-path-item:before{right:21px}.course-path-marker{width:36px;height:36px;border-width:4px}.course-path-lesson-card{grid-template-columns:112px minmax(0,1fr);grid-template-areas:"thumb copy" "score copy";gap:10px;min-height:126px;padding:10px;border-radius:16px}.course-path-thumb{grid-area:thumb}.course-path-copy{grid-area:copy}.course-path-score{grid-area:score;width:52px;height:52px;justify-self:center}.course-path-score span{width:40px;height:40px;font-size:.72rem}}@media (max-width:520px){.course-path-hero{grid-template-columns:92px minmax(0,1fr);gap:10px;padding:10px}.course-path-hero-media{height:96px}.course-path-hero-badge h1{font-size:1.05rem}.course-path-hero-badge p{display:none}.course-path-summary{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.course-path-summary div{min-height:62px;padding:10px}.course-path-summary span{font-size:.72rem}.course-path-summary strong{font-size:.9rem}.course-path-unit-title{display:grid;gap:3px}.course-path-lesson-card{grid-template-columns:96px minmax(0,1fr)}.course-path-copy p{display:none}}.course-path-unit-title.course-path-unit-cover-title{position:relative;isolation:isolate;display:grid;align-items:end;min-height:154px;overflow:hidden;padding:0;border-radius:18px 18px 0 0;color:#fff;background:#0f172a;transition:min-height .18s ease,filter .18s ease}.course-path-unit:not([open]) .course-path-unit-cover-title{border-radius:18px}.course-path-unit-title.course-path-unit-cover-title:hover{background:#0f172a}.course-path-unit-title.course-path-unit-cover-title:after{content:none}.course-path-unit-cover-fallback,.course-path-unit-cover-image,.course-path-unit-cover-shade{position:absolute;inset:0}.course-path-unit-cover-image{z-index:0;width:100%;height:100%;object-fit:cover;transform:scale(1.002);transition:opacity .18s ease,transform .22s ease,filter .22s ease}.course-path-unit-cover-image-light{opacity:1;visibility:visible}.course-path-unit-cover-image-dark{opacity:0;visibility:hidden}.course-path-unit-cover-fallback{z-index:0;display:grid;place-items:center;color:#dbeafe;background:radial-gradient(circle at 78% 24%,rgba(56,189,248,.28),transparent 26%),linear-gradient(135deg,#0f172a,#164e63)}.course-path-unit-cover-shade{z-index:1;pointer-events:none;background:linear-gradient(90deg,rgba(15,23,42,.12),rgba(15,23,42,.02) 46%,rgba(15,23,42,.38)),linear-gradient(180deg,rgba(15,23,42,.03),rgba(15,23,42,.42))}.course-path-unit-cover-copy{position:relative;z-index:2;display:grid;gap:7px;min-width:0;padding:18px;padding-inline-end:76px}.course-path-unit-cover-title.has-cover-image .course-path-unit-cover-copy{justify-self:end;align-self:end;width:min(235px,64%);padding:14px}.course-path-unit-cover-title.has-cover-image .course-path-unit-heading{position:absolute;overflow:hidden;width:1px;height:1px;margin:-1px;padding:0;border:0;clip:rect(0 0 0 0);white-space:nowrap}.course-path-unit-cover-title .course-path-unit-kicker{display:inline-flex;align-items:center;width:max-content;max-width:100%;min-height:26px;padding:0 11px;border:1px solid rgba(255,255,255,.3);border-radius:999px;color:#fff;background:rgba(15,23,42,.34);box-shadow:0 8px 22px rgba(15,23,42,.18);font-size:.78rem;font-weight:900;line-height:1;backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.course-path-unit-cover-title h2{margin:0;color:#fff;font-size:1.18rem;line-height:1.25;text-shadow:0 2px 14px rgba(15,23,42,.36)}.course-path-unit-cover-title em{color:rgba(255,255,255,.9);font-size:.84rem;text-shadow:0 2px 12px rgba(15,23,42,.38)}.course-path-unit-cover-title.has-cover-image em{display:inline-flex;align-items:center;width:max-content;max-width:100%;min-height:25px;padding:0 10px;border:1px solid rgba(255,255,255,.24);border-radius:999px;background:rgba(15,23,42,.36);backdrop-filter:blur(10px);-webkit-backdrop-filter:blur(10px)}.course-path-unit-toggle{position:absolute;inset-block-start:14px;inset-inline-end:14px;z-index:3;display:grid;place-items:center;width:44px;height:44px;border:1px solid rgba(255,255,255,.72);border-radius:999px;color:#0f172a;background:rgba(255,255,255,.94);box-shadow:0 14px 32px rgba(15,23,42,.22);transition:transform .18s ease,background-color .18s ease,color .18s ease}.course-path-unit[open] .course-path-unit-toggle{color:#fff;background:#0872c9;transform:rotate(180deg)}.course-path-unit[open] .course-path-unit-cover-image{transform:scale(1.026)}.course-path-unit[open] .course-path-items{padding-top:14px}@media (max-width:520px){.course-path-unit-title.course-path-unit-cover-title{min-height:128px}.course-path-unit-cover-copy{gap:5px;padding:14px;padding-inline-end:62px}.course-path-unit-cover-title.has-cover-image .course-path-unit-cover-copy{width:min(210px,68%);padding:12px}.course-path-unit-cover-title .course-path-unit-kicker{min-height:24px;padding:0 9px;font-size:.72rem}.course-path-unit-cover-title h2{font-size:1.02rem}.course-path-unit-cover-title em{font-size:.76rem}.course-path-unit-toggle{inset-block-start:10px;inset-inline-end:10px;width:38px;height:38px}}*{box-sizing:border-box}body,html{min-height:100%}body{margin:0;letter-spacing:0}a{color:inherit;text-decoration:none}:focus-visible{outline:3px solid rgba(6,182,212,.42);outline-offset:3px}button,input,select,textarea{font:inherit}.skip-link{position:fixed;top:10px;right:50%;z-index:200;transform:translate(50%,-140%);border:1px solid var(--line);border-radius:14px;background:var(--surface);color:var(--text);font-weight:900;padding:10px 14px;transition:transform .14s ease}.skip-link:focus-visible{transform:translate(50%)}.login-page,.status-page{display:grid;min-height:100vh;place-items:center;padding:24px}.login-panel,.status-panel{border:1px solid var(--line);background:var(--surface);box-shadow:var(--shadow);padding:28px}.brand-mark{display:inline-flex;align-items:center;justify-content:center;width:44px;height:44px;color:white;font-weight:800}.eyebrow{margin:18px 0 6px;font-size:.88rem;font-weight:700}h1,h2,h3{margin:0;line-height:1.25}p{line-height:1.75}.muted{color:var(--muted)}.form-stack{display:grid;gap:14px;margin-top:22px}.compact-form{display:grid;gap:10px;margin-top:10px;min-width:280px}.compact-form .field textarea{min-height:82px}.guardian-admin-stack{display:grid;gap:12px;margin-top:12px}.field{display:grid;gap:7px}.field legend,.field span{color:var(--text);font-size:.92rem;font-weight:700}.field input,.field select,.field textarea{width:100%;border:1px solid var(--line);border-radius:8px;background:white;color:var(--text);padding:0 12px}.field input,.field select{min-height:44px}.field textarea{min-height:140px;padding:12px;resize:vertical}.field input:focus,.field select:focus,.field textarea:focus{outline:3px solid rgba(15,123,95,.14)}.hint{margin:0;color:var(--muted);font-size:.88rem}.alert{border:1px solid rgba(180,35,24,.22);border-radius:8px;background:rgba(180,35,24,.07);color:var(--danger);padding:10px 12px;font-size:.92rem}.button{display:inline-flex;align-items:center;justify-content:center;gap:8px;border:1px solid transparent;cursor:pointer;font-weight:700;padding:0 14px;white-space:nowrap}.button:disabled{cursor:not-allowed;filter:grayscale(.22);opacity:.68}.button.secondary{background:white}.button.danger{background:var(--danger)}.button.full{width:100%}.admin-shell{display:grid;grid-template-columns:260px minmax(0,1fr)}.sidebar{position:sticky;top:0;display:flex;flex-direction:column;height:100vh;border-left:1px solid var(--line);background:#fbfcf9;padding:18px}.sidebar-brand{display:flex;align-items:center;gap:10px;padding-bottom:18px}.sidebar-brand strong{display:block}.sidebar-brand span{display:block;color:var(--muted);font-size:.82rem}.nav{display:grid;gap:8px}.logout-button,.nav a{display:flex;align-items:center;gap:9px;min-height:40px;border-radius:8px;background:transparent;cursor:pointer;padding:0 10px;text-align:right}.logout-button:hover,.nav a:hover{border-color:var(--line)}.logout-form{margin-top:auto;padding-top:18px}.logout-button{width:100%}.main{min-width:0;padding:22px}.topbar{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:22px}.topbar h1{font-size:clamp(1.35rem,2vw,2rem)}.user-chip{min-width:180px;border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:10px 12px}.user-chip span,.user-chip strong{display:block}.user-chip span{color:var(--muted);font-size:.82rem}.content-stack{display:grid;gap:18px}.section{border:1px solid var(--line);background:var(--surface);padding:18px}.section-header{display:flex;justify-content:space-between;gap:14px;margin-bottom:16px}.section-header p{margin:6px 0 0;color:var(--muted)}.metrics-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px}.metric{border:1px solid var(--line);background:var(--surface)}.metric span{color:var(--muted);font-size:.86rem}.metric strong{display:block;margin-top:7px;font-size:1.8rem}.module-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.module{border:1px solid var(--line);border-radius:8px;background:var(--surface);padding:16px}.module p{margin:8px 0 0;color:var(--muted)}.table-wrap{border:1px solid var(--line);border-radius:8px}.data-table{width:100%;min-width:720px;border-collapse:collapse;background:white}.data-table td,.data-table th{border-bottom:1px solid var(--line);padding:12px;text-align:right;vertical-align:top}.data-table th{background:#f0f3ec;color:#334036;font-size:.88rem}.table-empty{padding:28px 16px!important;text-align:center!important}.empty-state-inline{display:grid;justify-items:center;gap:6px}.empty-state-inline strong{color:var(--text);font-size:1rem}.data-table tr:last-child td{border-bottom:0}.badge-list{display:flex;flex-wrap:wrap;gap:6px}.badge{display:inline-flex;align-items:center;min-height:26px;background:var(--surface-soft);color:#334036;font-size:.82rem;padding:0 9px}.badge.active{background:rgba(15,123,95,.12);color:var(--accent-dark)}.badge.disabled{background:rgba(180,35,24,.1);color:var(--danger)}.actions-row{display:flex;flex-wrap:wrap;gap:8px}.checkbox-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;margin-top:8px}.checkbox-item{display:flex;align-items:center;gap:8px;border:1px solid var(--line);border-radius:8px;padding:9px 10px}.checkbox-item input{width:18px;height:18px}.role-block{display:grid;gap:14px;border-top:1px solid var(--line);padding-top:16px}.role-block:first-child{border-top:0;padding-top:0}.permissions-groups{display:grid;gap:14px}.permission-group{border:1px solid var(--line);border-radius:8px;padding:12px}.permission-group h4{margin:0 0 8px}.json-preview{max-width:520px;overflow-x:auto;border-radius:8px;background:#1f261f;color:#eef2ea;padding:10px;direction:ltr;text-align:left;white-space:pre-wrap}.student-shell{min-height:100vh;background:var(--bg)}.student-header{border-bottom:1px solid var(--line);background:#fbfcf9}.student-header-inner,.student-main{margin:0 auto;padding:18px 22px}.student-header-inner{display:flex;align-items:center;justify-content:space-between;gap:16px}.student-nav{display:flex;align-items:center;flex-wrap:wrap;gap:8px}.student-main{display:grid;gap:18px}.course-list,.lesson-list{display:grid;gap:12px}.course-row,.lesson-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:14px;border:1px solid var(--line);border-radius:8px;background:white;padding:14px}.course-row p,.lesson-row p{margin:6px 0 0;color:var(--muted)}.progress-track{width:100%;height:10px;overflow:hidden;border-radius:999px;background:var(--surface-soft)}.progress-fill{height:100%;border-radius:inherit;background:var(--accent)}.lesson-body{background:white;padding:18px;line-height:1.9;white-space:pre-wrap}.actions-row input,.lesson-body{border:1px solid var(--line);border-radius:8px}.actions-row input{min-height:42px;padding:0 10px}.password-control{position:relative;display:block}.password-control input{padding-left:48px}.icon-button{display:inline-grid;place-items:center;width:38px;height:38px;border:1px solid transparent;border-radius:14px;background:transparent;color:var(--muted);cursor:pointer}.icon-button:hover{border-color:var(--line);background:var(--surface-soft);color:var(--text)}.password-toggle{position:absolute;top:50%;left:4px;transform:translateY(-50%)}.certificate-page{width:min(980px,100%);margin:0 auto;padding:28px 22px}.certificate-document{display:grid;gap:28px;min-height:680px;border:2px solid var(--accent);border-radius:8px;background:white;padding:34px}.certificate-footer,.certificate-topline{display:flex;align-items:flex-start;justify-content:space-between;gap:16px}.certificate-body{display:grid;place-items:center;gap:10px;padding:28px 0;text-align:center}.certificate-body h2{font-size:clamp(2rem,4vw,3rem)}.certificate-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.certificate-footer div,.certificate-grid div{border:1px solid var(--line);border-radius:8px;padding:12px}.certificate-footer span,.certificate-grid span{display:block;color:var(--muted);font-size:.86rem}.certificate-footer strong,.certificate-grid strong{display:block;margin-top:6px}.certificate-actions{margin-top:14px;justify-content:center}@media print{body{background:white}.certificate-page{width:100%;padding:0}.certificate-actions{display:none}}@media (max-width:980px){.admin-shell{grid-template-columns:1fr}.sidebar{position:static;height:auto;border-left:0;border-bottom:1px solid var(--line)}.nav{grid-template-columns:repeat(2,minmax(0,1fr))}.logout-form{margin-top:12px}.certificate-grid,.metrics-grid,.module-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.login-page,.main,.status-page,.student-header-inner,.student-main{padding:14px}.login-panel,.section,.status-panel{padding:16px}.section-header,.topbar{display:grid}.certificate-grid,.checkbox-grid,.metrics-grid,.module-grid,.nav{grid-template-columns:1fr}.user-chip{min-width:0}.course-row,.lesson-row,.student-header-inner{grid-template-columns:1fr}.student-header-inner{display:grid}}:root{--bg:#070a12;--surface:rgba(255,255,255,0.06);--surface-soft:rgba(255,255,255,0.1);--surface-strong:rgba(255,255,255,0.14);--text:#ecf2ff;--muted:#c6d2ea;--line:rgba(255,255,255,0.1);--accent:#6366f1;--accent-dark:#8b5cf6;--accent-cyan:#06b6d4;--warning:#f59e0b;--danger:#f43f5e;--success:#22c55e;--shadow:0 18px 50px -18px rgba(0,0,0,0.55);--shadow-soft:0 16px 26px rgba(0,0,0,0.35);--grad-1:linear-gradient(135deg,#6366f1,#8b5cf6);--grad-2:linear-gradient(135deg,#3b82f6,#06b6d4);--grad-danger:linear-gradient(135deg,#ef4444,#f97316)}body,html{background:#070a12}body{background:linear-gradient(180deg,#070a12,#0b1020 58%,#070a12);font-family:IBM Plex Sans Arabic,Segoe UI,Tahoma,Arial,sans-serif}body:before{position:fixed;inset:0;z-index:-1;pointer-events:none;background:linear-gradient(135deg,rgba(99,102,241,.12),transparent 38%),linear-gradient(225deg,rgba(6,182,212,.1),transparent 42%),linear-gradient(180deg,rgba(255,255,255,.035),transparent 44%);content:""}.login-page,.status-page,.student-shell{background:transparent}.certificate-document,.certificate-footer div,.certificate-grid div,.course-row,.lesson-body,.lesson-row,.login-panel,.metric,.module,.permission-group,.role-block,.section,.status-panel,.table-wrap,.user-chip{border-color:color-mix(in srgb,var(--line) 70%,transparent);backdrop-filter:blur(22px);-webkit-backdrop-filter:blur(22px)}.certificate-document,.login-panel,.section,.status-panel{border-radius:26px}.login-panel,.status-panel{width:min(100%,460px);padding:30px}.section{padding:22px}.brand-mark{border:1px solid rgba(255,255,255,.18);border-radius:16px;background:var(--grad-1);box-shadow:0 14px 26px rgba(99,102,241,.22);font-weight:900}.eyebrow{color:#dbeafe}.field legend,.field span,h1,h2,h3{color:var(--text)}.certificate-footer span,.certificate-grid span,.course-row p,.hint,.lesson-row p,.metric span,.module p,.muted,.section-header p,.sidebar-brand span,.user-chip span{color:var(--muted)}.actions-row input,.field input,.field select,.field textarea{border-color:color-mix(in srgb,var(--line) 70%,transparent);border-radius:18px;background:rgba(255,255,255,.095);font-weight:800;box-shadow:none}.field input::placeholder,.field textarea::placeholder{color:rgba(198,210,234,.72)}.field input:focus,.field select:focus,.field textarea:focus{border-color:rgba(99,102,241,.72);outline:3px solid rgba(99,102,241,.2);background:rgba(255,255,255,.12)}.button{min-height:46px;border:0;border-radius:18px;color:white;box-shadow:0 14px 26px rgba(99,102,241,.22);transition:transform .12s ease,filter .12s ease,background .12s ease,border-color .12s ease}.button,.button:hover{background:var(--grad-1)}.button:hover{filter:brightness(1.06)}.button:active{transform:scale(.98)}.button.secondary{border:1px solid color-mix(in srgb,var(--line) 58%,transparent);background:color-mix(in srgb,var(--surface-soft) 95%,transparent);box-shadow:var(--shadow-soft)}.button.secondary:hover{border-color:rgba(255,255,255,.18);background:var(--surface-strong)}.button.danger,.logout-button,.logout-confirm-btn{background:var(--grad-danger);color:white;box-shadow:0 16px 28px rgba(127,29,29,.34)}.admin-shell{min-height:100vh;background:transparent}.sidebar{margin:16px;height:calc(100vh - 32px);border:1px solid color-mix(in srgb,var(--line) 70%,transparent);border-radius:26px;background:rgba(255,255,255,.075);box-shadow:var(--shadow);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.sidebar-brand{border-bottom:1px solid rgba(255,255,255,.08);margin-bottom:12px;padding-bottom:16px}.nav{gap:9px}.logout-button,.nav a{min-height:42px;border:1px solid transparent;border-radius:16px;color:var(--text);font-weight:800}.logout-button:hover,.nav a:hover{border-color:rgba(255,255,255,.15);background:var(--surface-soft)}.logout-button{justify-content:center}.main{padding:22px 6px 22px 22px}.topbar{position:sticky;top:14px;z-index:20;border:1px solid color-mix(in srgb,var(--line) 70%,transparent);border-radius:24px;background:rgba(255,255,255,.075);box-shadow:var(--shadow);padding:16px;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.topbar h1{font-weight:900}.certificate-footer div,.certificate-grid div,.course-row,.lesson-row,.metric,.module,.permission-group,.user-chip{border-radius:18px}.metrics-grid{gap:12px}.metric{padding:16px;transition:transform .18s ease,background .18s ease,border-color .18s ease}.course-row:hover,.lesson-row:hover,.metric:hover,.module:hover,.section:hover{border-color:rgba(255,255,255,.16);background:var(--surface-soft)}.metric strong{font-size:clamp(1.55rem,2.6vw,2.05rem);font-weight:900}.course-row,.lesson-row,.module{padding:16px}.badge{min-height:28px;border:1px solid rgba(148,163,184,.24);background:rgba(148,163,184,.18);color:#f1f5f9;font-weight:800}.badge.active{border-color:rgba(34,197,94,.22);background:rgba(34,197,94,.22);color:#dcfce7}.badge.disabled{border-color:rgba(244,63,94,.24);background:rgba(244,63,94,.22);color:#ffe4e6}.alert{border-color:rgba(248,113,113,.28);border-radius:18px;background:rgba(244,63,94,.12);color:#ffe4e6}.table-wrap{overflow-x:auto;border-radius:20px}.data-table{background:transparent}.data-table td,.data-table th{border-bottom-color:rgba(255,255,255,.08)}.data-table th{background:rgba(255,255,255,.05);color:var(--muted);font-size:.82rem;font-weight:900}.checkbox-item,.data-table td{color:var(--text)}.checkbox-item{border-color:color-mix(in srgb,var(--line) 70%,transparent);border-radius:18px;background:rgba(255,255,255,.055);font-weight:800}.checkbox-item input,input[type=checkbox],input[type=radio]{accent-color:#6366f1}.role-block{border-top-color:rgba(255,255,255,.09)}.json-preview{border:1px solid rgba(255,255,255,.08);background:rgba(0,0,0,.28);color:#ecf2ff}.student-header{position:sticky;top:0;z-index:30;border-bottom:1px solid rgba(255,255,255,.08);background:rgba(7,10,18,.82);backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.student-header-inner,.student-main{width:min(1180px,100%)}.student-nav{border:1px solid color-mix(in srgb,var(--line) 65%,transparent);border-radius:26px;background:rgba(255,255,255,.085);box-shadow:0 22px 60px rgba(0,0,0,.42);padding:8px;backdrop-filter:blur(24px);-webkit-backdrop-filter:blur(24px)}.student-nav .button{min-height:38px;border-radius:18px;padding-inline:12px}.student-main{padding-bottom:108px}.progress-bar,.progress-track{width:100%;height:10px;overflow:hidden;border-radius:999px;background:rgba(255,255,255,.1)}.progress-bar span,.progress-fill{display:block;height:100%;border-radius:inherit;background:var(--grad-2)}.certificate-page{color:var(--text)}.certificate-document{border-color:rgba(99,102,241,.38)}@media (min-width:981px){.admin-shell{grid-template-columns:292px minmax(0,1fr)}}@media (max-width:980px){.sidebar{height:auto;margin:12px}.main{padding:12px}.topbar{position:static}}@media (max-width:620px){.login-page,.main,.status-page,.student-header-inner,.student-main{padding:12px}.login-panel,.section,.status-panel{border-radius:22px}.student-nav{position:fixed;right:10px;bottom:12px;left:10px;z-index:80;display:flex;flex-wrap:nowrap;justify-content:flex-start;overflow-x:auto}.student-nav .button{flex:0 0 auto;min-width:max-content;font-size:.86rem}.student-header{position:static}.data-table{min-width:680px}}.portal-shell{min-height:100vh;padding:14px clamp(12px,2.4vw,28px) 118px}.identity-card{position:sticky;top:14px;z-index:60;display:grid;grid-template-areas:"brand profile meta logout";grid-template-columns:minmax(150px,.95fr) minmax(150px,1.05fr) minmax(180px,1.15fr) auto;align-items:center;gap:10px;width:min(1180px,100%);margin:0 auto;border:1px solid color-mix(in srgb,var(--line) 72%,transparent);border-radius:20px;background:rgba(255,255,255,.085);box-shadow:0 16px 42px rgba(0,0,0,.34);padding:8px 10px;backdrop-filter:blur(26px);-webkit-backdrop-filter:blur(26px)}.identity-brand,.identity-logout,.identity-meta,.identity-profile{min-width:0}.identity-brand{grid-area:brand;display:flex;align-items:center;gap:8px}.identity-brand .brand-mark{width:38px;height:38px;border-radius:14px;font-size:.9rem}.identity-brand span:last-child{display:grid;gap:2px;min-width:0}.identity-brand strong,.identity-name{overflow:hidden;color:var(--text);font-weight:900;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.identity-brand strong{font-size:.92rem}.identity-brand small,.identity-meta dt,.identity-profile span{overflow:hidden;color:var(--muted);font-size:.78rem;font-weight:800;text-overflow:ellipsis;white-space:nowrap}.identity-brand small{font-size:.7rem}.identity-profile{grid-area:profile;display:grid;gap:1px}.identity-name{font-size:clamp(.98rem,1.25vw,1.18rem);margin:0}.identity-meta{grid-area:meta;display:flex;flex-wrap:nowrap;gap:6px;margin:0;overflow-x:auto;scrollbar-width:none}.identity-meta::-webkit-scrollbar{display:none}.identity-meta div:first-child{display:none}.identity-meta div{display:inline-flex;align-items:center;gap:6px;flex:0 0 auto;min-width:0;border:1px solid rgba(255,255,255,.08);border-radius:999px;background:rgba(255,255,255,.07);padding:6px 9px}.identity-meta dt{font-size:.68rem}.identity-meta dd{overflow:hidden;max-width:130px;margin:0;font-size:.78rem;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.identity-logout{grid-area:logout;display:flex;justify-content:flex-end}.identity-logout .button{min-height:36px;border-radius:14px;padding-inline:11px}.portal-main{display:grid;gap:18px;width:min(1180px,100%);min-width:0;margin:12px auto 0}.portal-main>*{animation:portal-page-enter .18s cubic-bezier(.2,.8,.2,1) both;will-change:opacity,transform,filter}:root[data-route-transition=leaving] .portal-main>*{animation:portal-page-leave .12s cubic-bezier(.4,0,1,1) both}:root[data-route-transition=settling] .portal-main>*{animation:portal-page-enter .2s cubic-bezier(.16,1,.3,1) both}.content-stack,.course-list,.lesson-list,.metrics-grid,.module-grid,.portal-main>*,.section,.section-header,.table-wrap{min-width:0}.bottom-nav-card{position:fixed;right:50%;bottom:14px;z-index:90;width:min(720px,calc(100% - 24px));transform:translateX(50%);border:1px solid color-mix(in srgb,var(--line) 70%,transparent);border-radius:28px;background:rgba(13,18,32,.9);box-shadow:0 24px 70px rgba(0,0,0,.48);padding:8px;backdrop-filter:blur(26px);-webkit-backdrop-filter:blur(26px)}.bottom-nav-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:7px}.bottom-nav-grid.has-five,.bottom-nav-grid.has-more{grid-template-columns:repeat(5,minmax(0,1fr))}.bottom-nav-grid.has-five.has-more{gap:4px}.bottom-nav-grid.has-five.has-more,.bottom-nav-grid.has-six{grid-template-columns:repeat(6,minmax(0,1fr))}.bottom-nav-link{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-width:0;min-height:46px;border:1px solid transparent;border-radius:20px;background:transparent;color:var(--muted);cursor:pointer;font-size:.88rem;font-weight:900;line-height:1;padding:0 8px;transition:background .14s ease,border-color .14s ease,color .14s ease,transform .14s ease}.bottom-nav-link:hover,.more-drawer[data-open=true]>.bottom-nav-link{border-color:rgba(255,255,255,.16);background:var(--surface-soft);color:var(--text)}.bottom-nav-link[data-active=true],.more-drawer-link[data-active=true]{border-color:rgba(56,189,248,.32);background:rgba(56,189,248,.16);color:#e0f2fe}.bottom-nav-link[data-active=true] svg,.more-drawer-link[data-active=true] svg{color:#67e8f9}.bottom-nav-link:active{transform:scale(.98)}.bottom-nav-link span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.more-drawer{position:relative;min-width:0}.more-drawer>.bottom-nav-link{width:100%;font-family:inherit}.more-drawer-panel{position:fixed;right:50%;bottom:92px;z-index:120;display:grid;align-content:start;gap:14px;width:min(430px,calc(100vw - 24px));max-height:min(58dvh,440px);overflow-y:auto;border:1px solid color-mix(in srgb,var(--line) 72%,transparent);border-radius:24px;background:rgba(13,18,32,.96);box-shadow:0 26px 90px rgba(0,0,0,.58);padding:16px;backdrop-filter:blur(28px);-webkit-backdrop-filter:blur(28px);transform-origin:bottom center;transform:translateX(50%);animation:drawer-panel-in .18s cubic-bezier(.16,1,.3,1) both}.more-drawer-header{display:grid;gap:3px;border-bottom:1px solid rgba(255,255,255,.08);padding-bottom:12px}.more-drawer-header strong{color:var(--text);font-size:1.1rem;font-weight:900}.more-drawer-header span{color:var(--muted);font-size:.86rem;font-weight:800}.more-drawer-list{display:grid;gap:8px}.more-drawer-group{display:grid;gap:6px;min-width:0}.more-drawer-group-title{color:var(--muted);font-size:.74rem;font-weight:900;padding:0 4px}.more-drawer-group-links{display:grid;gap:7px}.more-drawer-link{display:flex;align-items:center;gap:10px;min-height:46px;border:1px solid rgba(255,255,255,.08);border-radius:18px;background:rgba(255,255,255,.065);color:var(--text);font-weight:900;padding:0 12px}.more-drawer-link:hover{border-color:rgba(255,255,255,.16)}.student-learn-shell .portal-main:has(.student-lesson-primary){width:min(100%,430px);padding-inline:12px}.student-lesson-primary{order:-2;overflow:visible;border:0;border-radius:28px;background:transparent;box-shadow:none;padding:0}.student-lesson-meta{padding:14px 16px}.student-lesson-primary .interactive-lesson-flow{gap:14px}.student-lesson-primary .flow-overview{padding-inline:2px}.student-lesson-primary .flow-stage{gap:12px;border-radius:14px;padding:clamp(10px,1.5vw,14px)}.student-lesson-primary .interactive-video-player{display:block;min-height:clamp(240px,48vw,560px);max-height:min(74vh,660px);border-radius:14px}.student-lesson-video-actions{display:flex;justify-content:flex-end;margin-top:12px}@media (max-width:680px){.student-lesson-primary .flow-overview,.student-lesson-primary .flow-stage-header{display:grid}.student-lesson-primary .interactive-video-player{min-height:clamp(220px,62vw,420px)}}.interactive-lesson-flow{display:grid;gap:16px}.flow-overview,.flow-stage-header{display:flex;align-items:flex-start;justify-content:space-between;gap:14px}.flow-overview h2,.flow-stage h3{margin:0}.flow-finish-stage p,.flow-overview p,.flow-stage-header p,.flow-submitted-state p,.teacher-return-note p{margin:4px 0 0;color:var(--muted)}.flow-progress-track{overflow:hidden;height:10px;border-radius:999px;background:rgba(255,255,255,.08)}.flow-progress-fill{height:100%;border-radius:inherit;background:linear-gradient(90deg,#22c55e,#38bdf8);transition:width .25s ease}.flow-stage{display:grid;gap:16px;border:1px solid color-mix(in srgb,var(--line) 80%,transparent);border-radius:8px;background:rgba(255,255,255,.045);padding:16px}.interactive-video-player{width:100%;max-height:68vh;aspect-ratio:16/9;border-radius:8px;background:#000;object-fit:contain}.pronunciation-stage{min-height:360px;align-content:center}.flow-target{display:grid;place-items:center;min-height:112px;border:1px solid rgba(56,189,248,.28);border-radius:8px;background:rgba(56,189,248,.1);color:#f8fafc;font-size:2.4rem;font-weight:900;letter-spacing:0;text-align:center;padding:18px}.flow-actions{display:flex;flex-wrap:wrap;align-items:center;gap:10px}.flow-submitted-state,.teacher-return-note{display:flex;align-items:flex-start;gap:10px;border:1px solid rgba(251,191,36,.28);border-radius:8px;background:rgba(251,191,36,.1);padding:12px}.flow-submitted-state{border-color:rgba(34,197,94,.28);background:rgba(34,197,94,.1)}.teacher-return-note audio{width:min(100%,520px);margin-top:8px}.flow-finish-stage{justify-items:start}.flow-finish-stage>svg{color:#86efac}.lesson-extra-activities-note{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:12px;width:100%;min-width:0;box-sizing:border-box;border:1px solid rgba(124,58,237,.26);border-radius:18px;background:rgba(124,58,237,.08);padding:14px}.lesson-extra-activities-note>svg{color:#7c3aed}.lesson-extra-activities-note>div{min-width:0}.lesson-extra-activities-note strong{display:block;color:var(--lesson-ink);font-size:.95rem;font-weight:950;line-height:1.5;overflow-wrap:anywhere}.flow-finish-stage .lesson-extra-activities-note p{line-height:1.7;overflow-wrap:anywhere}.flow-stepper{display:grid;grid-template-columns:repeat(auto-fit,minmax(150px,1fr));gap:8px}.flow-step-dot{display:grid;grid-template-columns:auto 1fr;gap:2px 8px;align-items:center;border:1px solid color-mix(in srgb,var(--line) 74%,transparent);border-radius:8px;background:rgba(255,255,255,.035);padding:10px}.flow-step-dot span{display:grid;grid-row:span 2;place-items:center;width:30px;height:30px;border-radius:999px;background:rgba(148,163,184,.18);color:var(--text);font-weight:900}.flow-step-dot strong{min-width:0;overflow-wrap:anywhere;font-size:.9rem;line-height:1.25}.flow-step-dot small{color:var(--muted);font-weight:800}.flow-step-dot.submitted span{background:rgba(59,130,246,.24);color:#bfdbfe}.flow-step-dot.approved span{background:rgba(34,197,94,.24);color:#bbf7d0}.flow-step-dot.returned span{background:rgba(251,146,60,.24);color:#fed7aa}.lesson-app-flow{--lesson-blue:#2874f0;--lesson-green:#36bf61;--lesson-ink:#16223b;--lesson-muted:#6f7b91;--lesson-line:#dde7f4;display:grid;gap:14px;min-height:calc(100dvh - 104px);color:var(--lesson-ink);padding-bottom:calc(112px + env(safe-area-inset-bottom))}.lesson-app-flow>.flow-overview,.lesson-app-flow>.flow-progress-track,.lesson-app-flow>.flow-stepper{display:none}.lesson-app-header{position:sticky;top:max(8px,env(safe-area-inset-top));z-index:4;display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid rgba(226,235,247,.86);border-radius:26px;background:rgba(248,252,255,.9);box-shadow:0 14px 34px rgba(29,78,216,.1);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);padding:10px 12px 12px}.lesson-app-back,.lesson-listen-fab,.lesson-mini-listen,.voice-mic-button{-webkit-tap-highlight-color:transparent}.lesson-app-back{display:grid;width:40px;height:40px;place-items:center;border:1px solid #e3edf9;border-radius:999px;background:#ffffff;color:#1f3b63;box-shadow:0 8px 18px rgba(15,23,42,.08)}.lesson-app-title{min-width:0;text-align:center}.lesson-app-title h1{overflow:hidden;margin:0;color:var(--lesson-ink);font-size:1.08rem;font-weight:950;line-height:1.25;text-overflow:ellipsis;white-space:nowrap}.lesson-app-title span{display:block;margin-top:2px;color:var(--lesson-muted);font-size:.74rem;font-weight:850}.lesson-app-counter{display:inline-flex;align-items:center;justify-content:center;gap:4px;min-width:68px;height:30px;box-sizing:border-box;border-radius:999px;background:#eef6ff;color:var(--lesson-blue);font-size:.78rem;font-weight:950;padding-inline:8px;white-space:nowrap}.lesson-app-counter bdi{font-variant-numeric:tabular-nums}.lesson-app-progress{grid-column:2/4;overflow:hidden;height:6px;border-radius:999px;background:#dfe7f1}.lesson-app-progress span{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,var(--lesson-green),var(--lesson-blue));transition:width .25s ease}.lesson-review-banner{margin:0;border:1px solid rgba(59,130,246,.18);border-radius:18px;background:#eff6ff;color:#1d4ed8;font-size:.84rem;font-weight:850;line-height:1.55;padding:10px 12px}.lesson-activity-card{display:grid;gap:14px;border:0;border-radius:0;background:transparent;box-shadow:none;padding:0}.lesson-hero-card{position:relative;min-height:244px;overflow:hidden;border:1px solid rgba(206,223,245,.95);border-radius:26px;background:radial-gradient(circle at 14% 12%,rgba(59,130,246,.14),transparent 30%),linear-gradient(180deg,#eef7ff,#f8fcff);box-shadow:0 18px 38px rgba(30,64,175,.1)}.lesson-listen-fab{position:absolute;top:14px;inset-inline-start:14px;z-index:2;display:grid;width:42px;height:42px;place-items:center;border:0;border-radius:999px;background:#ffffff;color:var(--lesson-blue);box-shadow:0 12px 26px rgba(37,99,235,.18);cursor:pointer}.lesson-hero-image,.lesson-hero-video{display:block;width:100%;height:244px;background:#eaf4ff;object-fit:cover}.lesson-hero-video{object-fit:contain}.flow-video-autoplay-hint{margin:8px 12px 0;color:var(--muted);font-size:.9rem;font-weight:800;text-align:center}.lesson-replay-explanation-action{display:flex;justify-content:center;margin-top:2px}.lesson-replay-explanation-action .button{width:min(100%,280px);min-height:46px;justify-content:center;border:1px solid #bdd7ff;background:#ffffff;color:var(--lesson-blue);font-weight:900}.lesson-explanation-backdrop{position:fixed;z-index:1200;inset:0;display:grid;place-items:center;overflow-y:auto;background:rgba(15,23,42,.72);padding:16px}.lesson-explanation-modal{position:relative;display:grid;width:min(100%,720px);max-height:calc(100dvh - 32px);overflow-y:auto;border:1px solid #dbe7f5;border-radius:18px;background:#ffffff;box-shadow:0 24px 70px rgba(15,23,42,.32);padding:10px}.lesson-explanation-close{position:absolute;z-index:2;top:18px;inset-inline-end:18px;display:grid;width:42px;height:42px;place-items:center;border:1px solid rgba(255,255,255,.72);border-radius:999px;background:rgba(15,23,42,.76);color:#ffffff;box-shadow:0 8px 22px rgba(15,23,42,.24);cursor:pointer}.lesson-explanation-modal .lesson-hero-video{height:auto;aspect-ratio:16/9;border-radius:10px;background:#000000}.lesson-scene-fallback{position:relative;display:grid;height:244px;grid-template-columns:1fr .9fr 1fr;align-items:end;gap:8px;padding:42px 18px 18px}.lesson-scene-fallback:before{position:absolute;inset:22px 20px auto;height:72px;border-radius:22px;background:linear-gradient(90deg,transparent 0 18%,rgba(37,99,235,.08) 18% 22%,transparent 22% 44%,rgba(34,197,94,.1) 44% 48%,transparent 48%),rgba(255,255,255,.52);content:""}.lesson-scene-person{position:relative;display:grid;justify-items:center;align-content:end;height:154px}.lesson-scene-person span{display:block;width:56px;height:56px;border:4px solid #ffffff;border-radius:999px;background:linear-gradient(145deg,#f6c37a,#fef3c7);box-shadow:0 10px 22px rgba(15,23,42,.12)}.lesson-scene-person strong{display:grid;width:76px;height:72px;place-items:center;margin-top:-6px;border-radius:24px 24px 18px 18px;color:#ffffff;font-size:1.35rem;font-weight:950}.lesson-scene-person.student strong{background:linear-gradient(180deg,#60a5fa,#2563eb)}.lesson-scene-person.teacher strong{background:linear-gradient(180deg,#34d399,#16a34a)}.lesson-scene-board{display:grid;gap:8px;align-self:center;border:1px solid rgba(148,163,184,.2);border-radius:20px;background:rgba(255,255,255,.78);padding:14px}.lesson-scene-board span{height:8px;border-radius:999px;background:#bfdbfe}.lesson-scene-board span:nth-child(2){background:#bbf7d0}.lesson-scene-board span:nth-child(3){width:70%;background:#dbeafe}.lesson-dialog-card{position:absolute;right:22px;bottom:16px;left:22px;display:grid;gap:4px;max-width:260px;margin-inline:auto;border:1px solid rgba(226,232,240,.95);border-radius:18px;background:rgba(255,255,255,.96);box-shadow:0 14px 34px rgba(15,23,42,.12);padding:12px 14px}.lesson-dialog-card span{color:var(--lesson-blue);font-size:.68rem;font-weight:950}.lesson-dialog-card strong{color:var(--lesson-ink);font-size:.98rem;font-weight:950;line-height:1.35}.lesson-dialog-card small{display:inline-flex;align-items:center;gap:5px;color:var(--lesson-muted);font-size:.74rem;font-weight:850}.lesson-video-activity>.flow-stage-header,.lesson-video-activity>.interactive-video-player,.lesson-voice-activity>.flow-stage-header,.lesson-voice-activity>.flow-submitted-state,.lesson-voice-activity>.flow-target{display:none}.lesson-choice-card,.lesson-match-card,.lesson-target-card,.lesson-writing-card,.pronunciation-result-card,.teacher-tip-card{border:1px solid var(--lesson-line);border-radius:22px;background:#ffffff;box-shadow:0 12px 30px rgba(15,23,42,.07)}.lesson-target-card{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:14px}.lesson-target-card span{color:var(--lesson-blue);font-size:.72rem;font-weight:950}.lesson-target-card strong{display:block;margin-top:4px;color:var(--lesson-ink);font-size:clamp(1.58rem,8vw,2.35rem);font-weight:950;line-height:1.25;letter-spacing:0}.lesson-keyword{color:var(--lesson-green)}.lesson-mini-listen{display:inline-flex;min-width:82px;height:38px;align-items:center;justify-content:center;gap:6px;border:1px solid #cfe2ff;border-radius:999px;background:#eff6ff;color:var(--lesson-blue);font-weight:950;cursor:pointer}.voice-practice-zone{display:grid;grid-template-columns:1fr auto 1fr;align-items:center;justify-items:center;gap:12px;padding:6px 0 2px}.voice-practice-zone p{grid-column:1/-1;margin:0;color:var(--lesson-muted);font-size:.84rem;font-weight:850;text-align:center}.voice-mic-button{position:relative;display:grid;width:126px;height:126px;place-items:center;border:8px solid #dbeafe;border-radius:999px;background:linear-gradient(180deg,#3b82f6,#2563eb);color:#ffffff;box-shadow:0 0 0 12px rgba(37,99,235,.08),0 18px 36px rgba(37,99,235,.25);cursor:pointer}.voice-mic-button:before{position:absolute;inset:-18px;border:1px solid rgba(37,99,235,.16);border-radius:inherit;content:""}.voice-mic-button.is-recording{background:linear-gradient(180deg,#ef4444,#dc2626);box-shadow:0 0 0 12px rgba(239,68,68,.08),0 18px 36px rgba(220,38,38,.22)}.voice-mic-button:disabled{cursor:not-allowed;filter:grayscale(.12);opacity:.76}.voice-wave{display:flex;align-items:center;justify-content:center;gap:5px;width:92px;min-width:0}.voice-wave span{width:5px;border-radius:999px;background:linear-gradient(180deg,#67e8f9,#22c55e)}.voice-wave span:first-child,.voice-wave span:nth-child(5){height:18px;opacity:.55}.voice-wave span:nth-child(2),.voice-wave span:nth-child(4){height:34px;opacity:.82}.voice-wave span:nth-child(3){height:48px}.pronunciation-result-card{display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:12px;padding:14px}.pronunciation-score-ring{display:grid;width:76px;height:76px;place-items:center;border-radius:999px;background:radial-gradient(circle at center,#ffffff 58%,transparent 60%),conic-gradient(var(--lesson-green) var(--score),#e4edf7 0)}.pronunciation-score-ring strong{color:var(--lesson-green);font-size:1.1rem;font-weight:950}.pronunciation-result-card span{color:var(--lesson-muted);font-size:.78rem;font-weight:900}.pronunciation-result-card h3{margin:3px 0;color:var(--lesson-green);font-size:1.24rem;font-weight:950}.pronunciation-result-card p{display:inline-flex;align-items:center;gap:6px;margin:0;color:#178044;font-size:.82rem;font-weight:900}.result-teacher-avatar,.teacher-tip-avatar{display:grid;width:54px;height:54px;place-items:center;border:3px solid #ffffff;border-radius:999px;background:linear-gradient(145deg,#dbeafe,#bbf7d0);color:#1e40af;font-weight:950;box-shadow:0 8px 20px rgba(15,23,42,.12)}.teacher-tip-card{display:grid;grid-template-columns:auto 1fr;align-items:center;gap:12px;background:linear-gradient(180deg,#f8fbff,#eef7ff);padding:12px}.teacher-tip-card span{display:inline-flex;align-items:center;gap:5px;color:var(--lesson-blue);font-size:.78rem;font-weight:950}.teacher-tip-card p{margin:4px 0 0;color:#334155;font-size:.84rem;font-weight:850;line-height:1.55}.lesson-voice-activity .teacher-return-note{border-color:#fde68a;border-radius:20px;background:#fffbeb;color:#92400e}.flow-finish-stage .button,.lesson-video-activity .flow-actions,.lesson-voice-activity .flow-actions{display:grid;grid-template-columns:1fr;gap:10px}.flow-finish-stage .button,.lesson-video-activity .flow-actions .button,.lesson-voice-activity .flow-actions .button{width:100%;min-height:50px;justify-content:center;border-radius:999px;font-size:.95rem;font-weight:950}.lesson-video-activity .flow-actions .button:not(.secondary):not(.danger),.lesson-voice-activity .flow-actions .button:not(.secondary):not(.danger){background:linear-gradient(180deg,#3b82f6,#2563eb);color:#ffffff;box-shadow:0 12px 26px rgba(37,99,235,.22)}.flow-finish-stage .button.secondary,.lesson-video-activity .flow-actions .button.secondary,.lesson-voice-activity .flow-actions .button.secondary{border:1px solid #bdd7ff;background:#ffffff;color:var(--lesson-blue)}.flow-finish-stage .flow-actions{display:grid;grid-template-columns:minmax(0,1fr);width:100%;min-width:0}.flow-finish-stage .button{display:inline-flex}.flow-finish-stage .lesson-extra-activities-cta{border:0;background:linear-gradient(135deg,#7c3aed,#4f46e5);color:#ffffff;box-shadow:0 12px 26px rgba(91,33,182,.25)}.lesson-step-progress{display:grid;width:100%;min-width:0;gap:8px;padding:2px 0 4px}.lesson-step-summary{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:4px 10px;color:var(--lesson-muted);font-size:.78rem;font-weight:850;line-height:1.4;padding-inline:2px}.lesson-step-summary strong{color:var(--lesson-ink);font-size:.82rem;font-weight:950}.lesson-step-summary bdi{font-variant-numeric:tabular-nums}.lesson-step-dots{display:flex;flex-flow:row wrap;justify-content:center;width:100%;min-width:0;gap:8px;box-sizing:border-box;direction:ltr;padding:3px}.lesson-step-dot{display:grid;flex:0 0 28px;width:28px;height:28px;box-sizing:border-box;place-items:center;border:1px solid #d9e5f3;border-radius:999px;background:#ffffff;color:#7b8797;font-size:.78rem;font-weight:950}.lesson-step-dot.submitted{border-color:#93c5fd;background:#eff6ff;color:#2563eb}.lesson-step-dot.approved{border-color:#86efac;background:#f0fdf4;color:#16a34a}.lesson-step-dot.returned{border-color:#fdba74;background:#fff7ed;color:#ea580c}.lesson-step-dot.current{box-shadow:0 0 0 3px rgba(40,116,240,.2)}.lesson-choice-card,.lesson-match-card,.lesson-writing-card{display:grid;gap:10px;padding:14px}.lesson-answer-slot,.lesson-option-card,.lesson-word-chip{border:1px solid #dbe5f0;border-radius:18px;background:#ffffff;color:var(--lesson-ink);font-weight:900;padding:14px 16px}.lesson-option-card.is-correct,.lesson-option-card.is-selected{border-color:#78d996;background:#effdf3;color:#14783c}.lesson-option-card.is-wrong{border-color:#fecaca;background:#fff1f2;color:#b91c1c}@media (max-width:380px){.student-learn-shell .portal-main:has(.student-lesson-primary){padding-inline:10px}.lesson-app-header{grid-template-columns:40px minmax(0,1fr) auto;padding-inline:10px}.lesson-app-counter{min-width:62px;font-size:.68rem;padding-inline:6px}.lesson-hero-card,.lesson-hero-image,.lesson-hero-video,.lesson-scene-fallback{min-height:226px;height:226px}.voice-wave{width:70px}.voice-mic-button{width:112px;height:112px}}.interactive-pronunciation,.pronunciation-review-box{display:grid;gap:14px}.pronunciation-card,.pronunciation-review-card{align-items:stretch}.pronunciation-attempt{display:grid;gap:10px;margin-top:12px}.pronunciation-attempt audio,.pronunciation-review-box audio{width:min(100%,520px)}.skip-line,.success-line{display:inline-flex;align-items:center;gap:8px;margin:0;font-weight:900}.success-line{color:#dcfce7}.skip-line{color:#fed7aa}.alert.neutral{border-color:rgba(99,102,241,.24);background:rgba(99,102,241,.12);color:#e0e7ff}@media (max-width:1080px){.identity-card{grid-template-areas:"brand logout" "profile profile" "meta meta";grid-template-columns:minmax(0,1fr) auto;gap:7px 10px}.identity-meta,.identity-profile{grid-column:auto}}@media (max-width:720px){.portal-shell{padding:8px 8px 102px}.identity-card{top:8px;grid-template-areas:"brand brand logout" "profile meta meta";grid-template-columns:minmax(0,.9fr) minmax(0,1fr) auto;gap:6px 8px;border-radius:18px;padding:7px}.identity-brand .brand-mark{width:34px;height:34px}.identity-brand strong{font-size:.84rem}.identity-brand small,.identity-profile span{font-size:.66rem}.identity-name{font-size:.92rem}.identity-profile{display:flex;align-items:center;gap:6px}.identity-profile span{flex:0 0 auto;border:1px solid rgba(34,197,94,.22);border-radius:999px;background:rgba(34,197,94,.16);color:#dcfce7;padding:3px 7px}.identity-name{min-width:0}.identity-meta{gap:5px}.identity-meta div{padding:5px 8px}.identity-meta dt{font-size:.64rem}.identity-meta dd{max-width:92px;font-size:.74rem}.identity-logout .button{min-height:34px;padding-inline:9px}.bottom-nav-card{bottom:10px;width:calc(100% - 16px);border-radius:24px;padding:7px}.bottom-nav-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.bottom-nav-grid.has-more{grid-template-columns:repeat(5,minmax(0,1fr))}.bottom-nav-grid.has-six{grid-template-columns:repeat(6,minmax(0,1fr))}.bottom-nav-link{flex-direction:column;gap:5px;min-height:54px;font-size:.72rem;padding:0 4px}.more-drawer-panel{top:auto;right:50%;bottom:86px;width:min(360px,calc(100vw - 16px));max-height:min(54dvh,380px);border-radius:24px}}@media (max-width:470px){.identity-brand small{max-width:170px}}:root{--bg:#f5f7fb;--surface-soft:#f1f5f9;--surface-strong:#e7edf5;--text:#172033;--muted:#607083;--line:#d8e1ec;--accent:#146c63;--accent-dark:#0e514b;--accent-cyan:#0f8fb3;--shadow:0 18px 42px rgba(15,23,42,0.08);--shadow-soft:0 12px 24px rgba(15,23,42,0.08);--grad-1:#146c63;--grad-2:#2563eb;--grad-danger:#b42318}body,html{background:var(--bg)}body{font-family:Segoe UI,Tahoma,Arial,sans-serif}body:before{content:none}.login-page,.portal-shell,.status-page,.student-shell{background:linear-gradient(180deg,#fbfcfe 0,var(--bg) 58%,#eef4f7 100%)}.login-experience{display:grid;grid-template-columns:minmax(0,1.08fr) minmax(340px,420px);gap:clamp(22px,4vw,56px);width:min(1120px,100%);align-items:center}.login-brief{display:grid;gap:18px;min-width:0;animation:panel-in .42s ease-out both}.login-brand-row,.login-panel-head{display:flex;align-items:center;justify-content:space-between;gap:12px}.login-brand-row{justify-content:flex-start}.login-brand-row>span:last-child{display:grid;gap:2px}.login-brand-row strong{color:var(--text);font-size:1.02rem;font-weight:900}.login-brand-row small{color:var(--muted);font-size:.86rem;font-weight:800}.login-brief h1{max-width:680px;color:var(--text);font-size:clamp(2rem,5vw,4.4rem);font-weight:900;line-height:1.08}.login-lede{max-width:680px;margin:0;color:var(--muted);font-size:clamp(1rem,1.35vw,1.16rem)}.login-role-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px;max-width:700px}.login-preview-list span,.login-role-card,.login-status-pill,.login-trust-strip span{display:inline-flex;align-items:center;gap:7px;min-width:0;border:1px solid var(--line);background:rgba(255,255,255,.78);color:var(--text);font-weight:900}.login-role-card{min-height:48px;border-radius:8px;padding:0 12px;box-shadow:var(--shadow-soft)}.login-role-card svg{color:var(--accent)}.login-trust-strip{display:flex;flex-wrap:wrap;gap:9px}.login-preview-list span,.login-status-pill,.login-trust-strip span{min-height:34px;border-radius:999px;padding:0 11px;font-size:.86rem}.login-status-pill svg,.login-trust-strip svg{color:var(--success)}.certificate-document,.certificate-footer div,.certificate-grid div,.course-row,.lesson-body,.lesson-row,.login-panel,.metric,.module,.permission-group,.role-block,.section,.status-panel,.table-wrap,.user-chip{border-color:var(--line);background:var(--surface);box-shadow:var(--shadow);backdrop-filter:none;-webkit-backdrop-filter:none}.login-panel,.status-panel{width:min(100%,420px);animation:panel-in .36s ease-out both;animation-delay:.08s}.login-panel{display:grid;gap:12px}.login-panel .form-stack{margin-top:8px}.login-preview-list{display:flex;flex-wrap:wrap;gap:8px;margin-top:8px}.section{border-radius:8px}.brand-mark{border:0;background:var(--accent);box-shadow:none}.field legend,.field span,.identity-brand strong,.identity-name,h1,h2,h3{color:var(--text)}.bottom-nav-link,.certificate-footer span,.certificate-grid span,.course-row p,.hint,.identity-brand small,.identity-meta dt,.identity-profile span,.lesson-row p,.metric span,.module p,.muted,.section-header p,.sidebar-brand span,.user-chip span{color:var(--muted)}.actions-row input,.field input,.field select,.field textarea{border-color:var(--line);background:#ffffff;font-weight:700}.field input::placeholder,.field textarea::placeholder{color:#8a98aa}.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent);outline:3px solid rgba(20,108,99,.14);background:#ffffff}.button{background:var(--accent);box-shadow:none}.button:hover{background:var(--accent-dark);filter:none}.button.secondary{border-color:var(--line);color:var(--text)}.button.secondary:hover{background:var(--surface-soft)}.button.danger,.logout-button,.logout-confirm-btn{background:var(--danger);box-shadow:none}.badge{border-color:#cbd5e1;background:#f1f5f9;color:#334155}.badge.active{border-color:#bbf7d0;background:#dcfce7;color:#166534}.badge.disabled{border-color:#fecdd3;background:#fff1f2;color:#be123c}.identity-card{border-color:rgba(216,225,236,.9);background:rgba(255,255,255,.92);box-shadow:0 16px 40px rgba(15,23,42,.1)}.identity-meta div{border-color:#dbe4ef;background:#f8fafc}.identity-meta dd{color:var(--text)}.identity-logout .button{border-radius:8px}.bottom-nav-card{border-color:rgba(15,23,42,.08);background:rgba(17,24,39,.92)}.bottom-nav-link:hover,.more-drawer[data-open=true]>.bottom-nav-link{border-color:rgba(255,255,255,.14);background:rgba(255,255,255,.1);color:#ffffff}.bottom-nav-link[data-active=true],.more-drawer-link[data-active=true]{border-color:rgba(20,184,166,.35);background:rgba(20,184,166,.18);color:#ccfbf1}.bottom-nav-link[data-active=true] svg,.more-drawer-link[data-active=true] svg{color:#5eead4}.more-drawer-panel{border-color:var(--line);background:var(--surface);color:var(--text)}.more-drawer-header span,.more-drawer-link{color:var(--muted)}.more-drawer-link:hover{background:var(--surface-soft);color:var(--text)}.command-action,.command-card,.course-row,.lesson-row,.metric,.module,.review-lane,.role-command-card{transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease,background .16s ease}.command-action:hover,.command-card:hover,.course-row:hover,.lesson-row:hover,.metric:hover,.module:hover,.review-lane:hover,.role-command-card:hover{border-color:#b9c9d9;background:#ffffff;box-shadow:0 16px 34px rgba(15,23,42,.1);transform:translateY(-2px)}.section:hover{border-color:var(--line);background:var(--surface)}.command-center{display:grid;gap:18px;padding:2px 0 6px}.command-hero{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,420px);align-items:end;gap:18px}.command-hero p{max-width:720px;margin:8px 0 0;color:var(--muted)}.command-hero h1{font-size:clamp(1.65rem,3vw,2.6rem);font-weight:900}.command-actions{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.command-action,.command-card,.review-lane{border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow-soft)}.command-action{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:8px;min-height:44px;padding:0 11px;color:var(--text);font-weight:900}.command-action span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.command-action svg:first-child{color:var(--accent)}.command-action svg:last-child{color:var(--muted)}.command-grid,.role-command-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.role-command-card{display:grid;align-content:start;gap:14px;min-height:280px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow-soft);padding:16px}.role-command-head{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:start;gap:10px}.role-command-head h2{margin-top:4px;color:var(--text);font-size:1.05rem;font-weight:900;line-height:1.45}.role-command-card>p{color:var(--muted);font-size:.9rem;font-weight:800;line-height:1.75}.role-command-metrics{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.role-command-metrics div{display:grid;gap:4px;min-width:0;border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:10px}.role-command-metrics span{overflow:hidden;color:var(--muted);font-size:.75rem;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.role-command-metrics strong{overflow-wrap:anywhere;color:var(--text);font-size:1rem;font-weight:900;line-height:1.35}.role-command-card .button{align-self:end;justify-self:start}.command-card{display:grid;gap:8px;min-height:150px;padding:16px;color:var(--text)}.command-card>span:not(.command-icon){color:var(--muted);font-size:.88rem;font-weight:900}.command-card strong{font-size:clamp(1.35rem,2.5vw,2rem);font-weight:900;line-height:1.2}.command-card small{color:var(--muted);font-size:.84rem;font-weight:800;line-height:1.6}.command-icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:8px}.tone-teal .command-icon{background:#ccfbf1;color:#0f766e}.review-lanes{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px}.review-lane{display:grid;gap:6px;padding:12px}.review-lane svg{color:var(--accent)}.review-lane span{color:var(--muted);font-size:.82rem;font-weight:900}.review-lane strong{color:var(--text);font-size:.95rem;line-height:1.5}.metric{border-radius:8px}.metric strong{color:var(--text)}.data-table th{background:#f1f5f9}.alert.neutral{border-color:#c7d2fe;background:#eef2ff;color:#3730a3}.student-360-hero,.student-360-panel{border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow)}.student-360-hero{display:grid;gap:18px;padding:18px}.finance-snapshot,.student-360-back-row,.student-360-contact,.student-360-profile{display:flex;align-items:center;gap:10px}.student-360-back-row{justify-content:space-between}.student-360-header-actions,.student-whatsapp-share{display:flex;align-items:center;gap:10px}.student-whatsapp-share{margin:0}.button.student-whatsapp-button{border-color:#0f766e;background:#0f766e;color:#ffffff;white-space:nowrap}.button.student-whatsapp-button:hover:not(:disabled){border-color:#115e59;background:#115e59}.student-whatsapp-note{max-width:260px;color:var(--muted);font-size:.78rem;font-weight:800;line-height:1.45}.student-whatsapp-note.error{color:#b91c1c}.student-360-profile{align-items:flex-start}.student-avatar{display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;width:70px;height:70px;border-radius:8px;background:#ccfbf1;color:#0f766e;font-size:2rem;font-weight:900}.student-360-profile h1{font-size:clamp(1.65rem,3vw,2.5rem);font-weight:900}.student-360-contact{flex-wrap:wrap;margin-top:12px}.student-360-contact span{display:inline-flex;align-items:center;gap:6px;min-height:32px;border:1px solid var(--line);border-radius:999px;background:var(--surface-soft);color:var(--text);font-size:.86rem;font-weight:900;padding:0 10px}.student-360-contact svg{color:var(--accent)}.student-360-metrics{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px}.student-360-metric{display:grid;gap:6px;min-width:0;border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:12px}.student-360-metric svg{color:var(--accent)}.student-360-metric span{color:var(--muted);font-size:.8rem;font-weight:900}.student-360-metric strong{overflow-wrap:anywhere;color:var(--text);font-size:clamp(1.1rem,2vw,1.45rem);font-weight:900}.student-360-grid{display:grid;grid-template-columns:minmax(0,1.35fr) minmax(300px,.85fr);gap:14px}.student-360-panel{display:grid;gap:14px;align-content:start;padding:16px}.student-360-panel.wide{grid-column:span 2}.finance-snapshot{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.finance-snapshot div{display:grid;gap:5px;border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:12px}.finance-snapshot span,.mini-list-row small,.timeline-item p,.timeline-item span{color:var(--muted)}.finance-snapshot strong{color:var(--text);font-size:1.25rem;font-weight:900}.activity-timeline,.mini-list{display:grid;gap:10px}.mini-list-row,.timeline-item{display:grid;gap:4px;min-width:0;border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:10px 12px}.mini-list-row span,.timeline-item strong{color:var(--text);font-weight:900}.mini-list-row strong{color:var(--accent-dark);font-weight:900}.mini-list-row small,.timeline-item p{line-height:1.65}.activity-timeline{position:relative}.timeline-item{border-right:4px solid #ccfbf1}.inquiry-create-form{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.inquiry-create-form .inquiry-notes-field{grid-column:span 2}.inquiry-create-form button{align-self:end}.inquiry-board{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:14px}.inquiry-column{display:grid;align-content:start;gap:10px;min-width:0;border:1px solid var(--line);border-radius:8px;background:#eef4f7;padding:10px}.inquiry-column-header{display:flex;align-items:center;justify-content:space-between;gap:10px}.inquiry-column-header strong{color:var(--text);font-size:1rem;font-weight:900}.inquiry-column-header span{display:inline-grid;place-items:center;min-width:30px;height:30px;border-radius:999px;background:#ffffff;color:var(--accent);font-weight:900}.inquiry-list{display:grid;gap:10px}.inquiry-card{display:grid;gap:12px;min-width:0;border:1px solid var(--line);border-radius:8px;background:#ffffff;box-shadow:var(--shadow-soft);padding:12px}.inquiry-card-footer,.inquiry-card-head,.inquiry-contact{display:flex;align-items:flex-start;gap:10px}.inquiry-card-head{justify-content:space-between}.inquiry-card h2{font-size:1.05rem;font-weight:900}.inquiry-card p{margin:4px 0 0}.inquiry-contact{flex-wrap:wrap}.inquiry-card-footer span,.inquiry-contact span{display:inline-flex;align-items:center;gap:6px;min-height:28px;border:1px solid var(--line);border-radius:999px;background:#f8fafc;color:var(--text);font-size:.78rem;font-weight:900;padding:0 9px}.inquiry-card-footer svg,.inquiry-contact svg{color:var(--accent)}.inquiry-update-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.inquiry-card textarea{min-height:76px}.inquiry-converted-link{display:inline-flex;align-items:center;justify-content:center;justify-self:start;gap:7px;min-height:34px;border:1px solid rgba(14,116,144,.28);border-radius:999px;background:#ecfeff;color:var(--accent);font-size:.82rem;font-weight:900;text-decoration:none;padding:0 12px}.inquiry-convert-panel{display:grid;gap:10px;border:1px solid rgba(14,116,144,.22);border-radius:8px;background:#f8fcff;padding:10px}.inquiry-convert-panel h3{color:var(--text);font-size:.95rem;font-weight:900;margin:0}.inquiry-convert-panel p{font-size:.82rem;line-height:1.6}.inquiry-convert-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.inquiry-convert-grid .field{grid-column:auto}.inquiry-convert-panel .button{justify-self:start}.inquiry-card-footer{align-items:center;justify-content:space-between}.inquiry-empty{margin:0;border:1px dashed var(--line);border-radius:8px;background:rgba(255,255,255,.68);padding:14px;text-align:center}.communication-compose{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.communication-message-field{grid-column:span 3}.communication-feed{display:grid;gap:10px}.communication-item{display:grid;grid-template-columns:auto minmax(0,1fr);gap:12px;border:1px solid var(--line);border-radius:8px;background:#ffffff;padding:14px}.communication-icon{display:inline-flex;align-items:center;justify-content:center;width:38px;height:38px;border-radius:8px;background:#eef2ff;color:#3730a3}.communication-item-head,.communication-meta{display:flex;flex-wrap:wrap;align-items:center;gap:8px}.communication-item-head{justify-content:space-between}.communication-item h3{color:var(--text);font-size:1rem;font-weight:900}.communication-item p{margin:7px 0 0;color:var(--muted);line-height:1.7}.communication-meta{margin-top:10px}.communication-meta span{min-height:28px;border:1px solid var(--line);border-radius:999px;background:#f8fafc;color:var(--muted);font-size:.78rem;font-weight:900;padding:5px 9px}.role-workbench{display:grid;gap:16px;border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow);padding:18px}.workbench-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.family-card,.workbench-card{display:grid;gap:10px;min-width:0;border:1px solid var(--line);border-radius:8px;background:#f8fafc;padding:14px}.workbench-card.primary{background:#ecfeff;border-color:#a5f3fc}.family-card-head p,.family-card-head span,.family-stats span,.workbench-card>span{color:var(--muted);font-size:.82rem;font-weight:900}.family-card h2,.workbench-card h2{color:var(--text);font-size:clamp(1.05rem,2vw,1.45rem);font-weight:900}.focus-row p,.workbench-card p{margin:0;color:var(--muted);line-height:1.65}.focus-list{display:grid;gap:10px}.focus-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px;border:1px solid var(--line);border-radius:8px;background:#ffffff;padding:12px}.focus-row strong{color:var(--text);font-weight:900}.family-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.family-card-head{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.family-card-head strong{display:inline-grid;place-items:center;flex:0 0 auto;min-width:54px;height:54px;border-radius:8px;background:#ccfbf1;color:#0f766e;font-size:1.15rem;font-weight:900}.family-stats{display:flex;flex-wrap:wrap;gap:7px}.family-stats span{min-height:28px;border:1px solid var(--line);border-radius:999px;background:#ffffff;padding:5px 9px}.guardian-family-console,.guardian-notification-console,.guardian-progress-console{gap:18px}.guardian-family-hero,.guardian-notification-hero,.guardian-progress-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,320px);gap:clamp(16px,3vw,28px);overflow:hidden;border:1px solid #d8e2ec;border-radius:8px;background:radial-gradient(circle at top right,rgba(183,121,31,.14),transparent 32%),linear-gradient(135deg,#ffffff,#f8fbff 54%,#fff8ed);box-shadow:var(--shadow-soft);padding:clamp(18px,3vw,30px)}.guardian-progress-hero{background:radial-gradient(circle at top right,rgba(15,118,110,.16),transparent 32%),linear-gradient(135deg,#ffffff,#f0fdfa 50%,#f5f7ff)}.guardian-notification-hero{background:radial-gradient(circle at top right,rgba(63,92,200,.15),transparent 32%),linear-gradient(135deg,#ffffff,#f4f7ff 56%,#fff8ed)}.guardian-family-hero:before,.guardian-notification-hero:before,.guardian-progress-hero:before{content:"";position:absolute;inset:auto 0 0 auto;width:44%;height:6px;background:linear-gradient(90deg,#b7791f,#0f766e,#3f5cc8);opacity:.82}.guardian-family-hero-copy,.guardian-family-summary,.guardian-notification-card,.guardian-notification-copy,.guardian-notification-summary,.guardian-progress-card,.guardian-progress-copy,.guardian-progress-score,.guardian-student-card{min-width:0}.guardian-family-hero-copy,.guardian-notification-copy,.guardian-progress-copy{display:grid;align-content:center;gap:12px}.guardian-family-hero-copy h1,.guardian-notification-copy h1,.guardian-progress-copy h1{max-width:760px;color:var(--text);font-size:clamp(1.55rem,3vw,2.75rem);font-weight:900;line-height:1.16;overflow-wrap:anywhere}.guardian-family-hero-copy p:not(.eyebrow),.guardian-notification-copy p:not(.eyebrow),.guardian-progress-copy p:not(.eyebrow){max-width:760px;margin:0;color:#5b6b7e;font-weight:800;line-height:1.85;overflow-wrap:anywhere}.guardian-family-actions{display:flex;flex-wrap:wrap;gap:10px}.guardian-family-summary,.guardian-notification-summary,.guardian-progress-score{display:grid;align-content:center;gap:10px;border:1px solid rgba(183,121,31,.2);border-radius:8px;background:rgba(255,255,255,.84);box-shadow:0 18px 44px rgba(15,23,42,.1);padding:18px}.guardian-progress-score{border-color:rgba(15,118,110,.2)}.guardian-notification-summary{border-color:rgba(63,92,200,.2)}.guardian-family-stat-card span,.guardian-family-summary span,.guardian-mini-panel span,.guardian-notification-card-head span,.guardian-notification-meta span,.guardian-notification-summary span,.guardian-progress-card-head span,.guardian-progress-kpis span,.guardian-progress-score span,.guardian-student-head span,.guardian-student-kpis span{color:var(--muted);font-size:.8rem;font-weight:900}.guardian-family-summary strong,.guardian-notification-summary strong,.guardian-progress-score strong{color:#1f2a44;font-size:clamp(2.1rem,5vw,3.8rem);font-weight:900;line-height:1}.guardian-empty-state p,.guardian-family-stat-card p,.guardian-family-summary p,.guardian-mini-panel p,.guardian-notification-card p,.guardian-notification-summary p,.guardian-progress-card-head p,.guardian-progress-score p,.guardian-student-head p{margin:0;color:var(--muted);line-height:1.7}.guardian-family-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.guardian-family-stat-card{display:grid;align-content:space-between;gap:10px;min-height:126px;border:1px solid #dce6f1;border-radius:8px;background:#ffffff;box-shadow:0 12px 28px rgba(15,23,42,.06);padding:15px}.guardian-family-stat-card:first-child{background:linear-gradient(180deg,#ffffff,#f0fdfa)}.guardian-family-stat-card:nth-child(2){background:linear-gradient(180deg,#ffffff,#eff6ff)}.guardian-family-stat-card:nth-child(3){background:linear-gradient(180deg,#ffffff,#fff7ed)}.guardian-family-stat-card:nth-child(4){background:linear-gradient(180deg,#ffffff,#f5f3ff)}.guardian-family-stat-card strong{color:var(--text);font-size:clamp(1.3rem,2.5vw,2rem);font-weight:900;overflow-wrap:anywhere}.guardian-notification-grid,.guardian-progress-grid,.guardian-student-grid{display:grid;gap:14px}.guardian-notification-card,.guardian-progress-card,.guardian-student-card{display:grid;gap:14px;border:1px solid #dce6f1;border-radius:8px;background:#ffffff;box-shadow:var(--shadow-soft);padding:clamp(14px,2vw,18px)}.guardian-notification-card.is-unread{border-color:#a7f3d0;background:linear-gradient(#ffffff,#ffffff) padding-box,linear-gradient(135deg,rgba(15,118,110,.45),rgba(63,92,200,.18)) border-box}.guardian-mini-head,.guardian-notification-card-head,.guardian-progress-card-head,.guardian-student-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px}.guardian-empty-state h2,.guardian-notification-card-head h2,.guardian-progress-card-head h2,.guardian-student-head h2{margin:0;color:var(--text);font-size:clamp(1.1rem,2vw,1.55rem);font-weight:900;overflow-wrap:anywhere}.guardian-progress-card-head strong,.guardian-student-head strong{display:inline-grid;place-items:center;min-width:56px;height:48px;border-radius:8px;background:#ccfbf1;color:#0f766e;font-size:1.1rem;font-weight:900}.guardian-notification-meta,.guardian-progress-kpis,.guardian-student-kpis{display:flex;flex-wrap:wrap;gap:7px}.guardian-notification-meta span,.guardian-progress-kpis span,.guardian-student-kpis span{border:1px solid var(--line);border-radius:999px;background:#f8fafc;padding:5px 9px}.guardian-mini-panel,.guardian-progress-panel,.guardian-student-section{display:grid;gap:10px;border:1px solid #e2eaf3;border-radius:8px;background:#f8fafc;padding:12px}.guardian-assessment-item strong,.guardian-enrollment-item strong,.guardian-mini-head h3,.guardian-mini-panel strong,.guardian-timeline-item strong{margin:0;color:var(--text);font-size:.98rem;font-weight:900;overflow-wrap:anywhere}.guardian-mini-head span{display:inline-grid;place-items:center;min-width:32px;height:28px;border-radius:999px;background:#e0f2fe;color:#0369a1;font-size:.78rem;font-weight:900}.guardian-assessment-stack,.guardian-enrollment-stack,.guardian-timeline{display:grid;gap:9px}.guardian-assessment-item,.guardian-enrollment-item,.guardian-timeline-item{display:grid;grid-template-columns:minmax(0,1fr) auto;gap:10px;align-items:center;border:1px solid #e1e9f2;border-radius:8px;background:#ffffff;padding:10px}.guardian-assessment-item div,.guardian-enrollment-item div,.guardian-timeline-item div{display:grid;gap:4px;min-width:0}.guardian-assessment-item span:not(.badge),.guardian-enrollment-item span:not(.badge),.guardian-timeline-item span:not(.badge){color:var(--muted);font-size:.82rem;font-weight:800}.guardian-progress-layout,.guardian-student-split{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.guardian-mini-panel .button{width:fit-content}.guardian-assessment-badges{display:flex;flex-wrap:wrap;gap:6px;justify-content:flex-end}.guardian-notification-card-head{align-items:center}.guardian-notification-card p{max-width:820px;overflow-wrap:anywhere}.guardian-notification-action .button{width:fit-content}.guardian-empty-state{display:grid;gap:8px;border:1px dashed #cbd8e7;border-radius:8px;background:#f8fafc;padding:16px}.guardian-family-stat-card:hover,.guardian-notification-card:hover,.guardian-progress-card:hover,.guardian-student-card:hover{transform:translateY(-1px);box-shadow:0 18px 38px rgba(15,23,42,.08)}@keyframes panel-in{0%{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;scroll-behavior:auto!important;transition-duration:.001ms!important}}@media (max-width:980px){.command-hero,.login-experience{grid-template-columns:1fr}.login-brief h1{max-width:760px}.command-actions,.command-grid,.role-command-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.review-lanes,.student-360-metrics{grid-template-columns:repeat(3,minmax(0,1fr))}.student-360-grid,.student-360-panel.wide{grid-template-columns:1fr;grid-column:auto}.communication-compose,.inquiry-board,.inquiry-create-form{grid-template-columns:repeat(2,minmax(0,1fr))}.communication-message-field,.inquiry-create-form .inquiry-notes-field{grid-column:span 2}.family-grid,.workbench-grid{grid-template-columns:1fr}}@media (max-width:620px){.login-page{padding:16px}.login-experience{gap:18px}.command-actions,.command-grid,.login-role-grid,.review-lanes,.role-command-grid{grid-template-columns:1fr}.role-command-card{min-height:0;gap:11px;padding:13px}.role-command-metrics{grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}.role-command-metrics div{padding:8px 6px}.role-command-card>p{font-size:.85rem;line-height:1.55}.login-brief h1{font-size:2rem}.login-panel{padding:18px}.student-360-back-row,.student-360-profile{align-items:stretch;flex-direction:column}.student-360-header-actions,.student-whatsapp-share{align-items:stretch;flex-direction:column;width:100%}.student-whatsapp-note{max-width:none}.button.student-whatsapp-button{width:100%}.finance-snapshot,.student-360-contact,.student-360-metrics{grid-template-columns:1fr}.student-360-contact{display:grid}.communication-compose,.communication-message-field,.inquiry-board,.inquiry-convert-grid,.inquiry-create-form,.inquiry-create-form .inquiry-notes-field,.inquiry-update-grid{grid-template-columns:1fr;grid-column:auto}.communication-item{grid-template-columns:1fr}.inquiry-card-footer,.inquiry-card-head{align-items:stretch;flex-direction:column}.family-card-head,.focus-row{grid-template-columns:1fr}.focus-row{align-items:stretch}.family-card-head{flex-direction:column}}:root{--bg:#f4f7fb;--surface:#ffffff;--surface-soft:#f7f9fc;--surface-strong:#e9eef6;--text:#162033;--muted:#64748b;--line:#d9e2ee;--accent:#0f766e;--accent-dark:#115e59;--accent-cyan:#0e8ca8;--accent-indigo:#3f5cc8;--warning:#b7791f;--danger:#b42318;--success:#15803d;--shadow:0 18px 48px rgba(15,23,42,0.09);--shadow-soft:0 10px 28px rgba(15,23,42,0.07);--shadow-lift:0 22px 52px rgba(15,23,42,0.13)}html{background:var(--bg)}body{background:linear-gradient(135deg,#fbfdff,#f4f8fb 46%,#fff8ee);color:var(--text);font-family:Segoe UI Variable,Segoe UI,Tahoma,Arial,sans-serif;text-rendering:optimizeLegibility}.desktop-side-nav{display:none}.login-page,.portal-shell,.status-page,.student-shell{background:linear-gradient(135deg,#fbfdff,#f4f8fb 46%,#fff8ee)}.brand-mark{border-radius:8px;background:linear-gradient(135deg,var(--accent),var(--accent-indigo));color:#ffffff;box-shadow:0 12px 28px rgba(15,118,110,.22)}.login-experience{width:min(1180px,100%);grid-template-columns:minmax(0,1.14fr) minmax(350px,430px)}.login-brief{gap:20px}.login-brand-row{width:fit-content;border:1px solid rgba(217,226,238,.86);border-radius:8px;background:rgba(255,255,255,.72);box-shadow:var(--shadow-soft);padding:8px 10px}.login-brief h1{letter-spacing:0}.login-lede{color:#526172;font-weight:650}.login-preview-list span,.login-role-card,.login-status-pill,.login-trust-strip span{border-color:rgba(217,226,238,.95);background:rgba(255,255,255,.84);box-shadow:var(--shadow-soft)}.login-role-card{min-height:52px}.login-role-card svg{color:var(--accent-indigo)}.login-showcase{display:grid;gap:12px;max-width:720px;border:1px solid rgba(217,226,238,.95);border-radius:8px;background:rgba(255,255,255,.86);box-shadow:var(--shadow);padding:14px}.login-showcase-main{display:flex;align-items:center;justify-content:space-between;gap:12px}.login-showcase-main div{display:grid;gap:4px}.login-showcase-kicker,.login-showcase-status{color:var(--accent);font-size:.78rem;font-weight:900}.login-showcase-main strong{color:var(--text);font-size:clamp(1.05rem,1.6vw,1.35rem);font-weight:900}.login-showcase-status{min-height:30px;border:1px solid #bbf7d0;border-radius:999px;background:#ecfdf5;color:#166534;padding:6px 10px;white-space:nowrap}.login-showcase-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.login-showcase-grid span{display:grid;gap:7px;min-width:0;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft);color:var(--text);font-size:.82rem;font-weight:900;padding:10px}.login-showcase-grid svg{color:var(--accent-indigo)}.login-panel,.status-panel{border-radius:8px;border-color:rgba(217,226,238,.95);background:rgba(255,255,255,.94);box-shadow:var(--shadow-lift)}.command-action,.command-card,.communication-item,.course-row,.family-card,.inquiry-card,.lesson-row,.metric,.module,.review-lane,.role-command-card,.role-workbench,.section,.student-360-hero,.student-360-panel,.table-wrap,.workbench-card{border-color:rgba(217,226,238,.95);border-radius:8px;background:rgba(255,255,255,.94);box-shadow:var(--shadow-soft)}.role-workbench,.section,.student-360-hero,.student-360-panel{padding:clamp(16px,2vw,22px)}.section-header{align-items:flex-start;gap:16px}.command-hero h1,.section-header h1,.section-header h2,.student-360-profile h1{color:var(--text);letter-spacing:0}.command-hero p,.role-command-card>p,.section-header p,.workbench-card p{color:#5b6b7e;font-weight:650}.eyebrow{width:fit-content;margin-top:0;border:1px solid #bdece6;border-radius:999px;background:#ecfdf5;color:var(--accent-dark);font-size:.78rem;font-weight:900;padding:5px 10px}.button{min-height:42px;border-radius:8px;background:linear-gradient(135deg,var(--accent),var(--accent-indigo));box-shadow:0 10px 22px rgba(15,118,110,.18);font-weight:900;transition:transform .14s ease,box-shadow .14s ease,background .14s ease}.button:hover{background:linear-gradient(135deg,var(--accent-dark),#314aab);box-shadow:0 14px 30px rgba(15,118,110,.22);transform:translateY(-1px)}.button.secondary{background:#ffffff;box-shadow:none}.button.secondary:hover{background:#f7f9fc;box-shadow:var(--shadow-soft)}.button.danger,.logout-button,.logout-confirm-btn{background:linear-gradient(135deg,#b42318,#9f1239);box-shadow:0 10px 22px rgba(180,35,24,.16)}.field legend,.field span{color:#25324a;font-weight:900}.actions-row input,.field input,.field select,.field textarea{border-color:#d6e0ec;border-radius:8px;background:#fbfdff;color:var(--text);font-weight:750;transition:border-color .14s ease,background .14s ease,box-shadow .14s ease}.actions-row input:focus,.field input:focus,.field select:focus,.field textarea:focus{border-color:var(--accent-cyan);background:#ffffff;box-shadow:0 0 0 4px rgba(14,140,168,.11);outline:0}.command-card,.metric,.role-command-card,.workbench-card{position:relative;overflow:hidden}.command-card:before,.metric:before,.role-command-card:before,.workbench-card:before{content:"";position:absolute;inset-inline-start:0;top:0;width:4px;height:100%;background:linear-gradient(180deg,var(--accent),var(--accent-indigo))}.command-card>span:not(.command-icon),.finance-snapshot span,.metric span,.review-lane span,.student-360-metric span{color:var(--muted);font-weight:900}.command-card strong,.finance-snapshot strong,.metric strong,.student-360-metric strong{color:#111827;letter-spacing:0}.command-hero{align-items:stretch;border:1px solid rgba(217,226,238,.95);border-radius:8px;background:linear-gradient(135deg,rgba(255,255,255,.96),rgba(240,249,255,.94));box-shadow:var(--shadow-soft);padding:clamp(16px,2vw,22px)}.command-actions{align-content:start}.command-action{background:#ffffff}.command-action:hover,.command-card:hover,.family-card:hover,.metric:hover,.review-lane:hover,.role-command-card:hover,.workbench-card:hover{border-color:#b9c7d8;box-shadow:var(--shadow-lift)}.command-icon{width:42px;height:42px;box-shadow:inset 0 0 0 1px rgba(255,255,255,.72)}.role-command-card{min-height:260px}.communication-meta span,.family-stats span,.finance-snapshot div,.focus-row,.inquiry-card-footer span,.inquiry-contact span,.mini-list-row,.role-command-metrics div,.student-360-metric,.timeline-item{border-color:#dce5f0;background:#f8fafc}.data-table{border-collapse:separate;border-spacing:0;background:#ffffff}.data-table th{background:#eef4fb;color:#334155;font-size:.78rem;letter-spacing:0}.data-table td{color:#233047}.data-table tbody tr{transition:background .12s ease}.data-table tbody tr:hover{background:#f8fbff}.badge{border-radius:999px;font-weight:900}.inquiry-column{background:#f1f6fa}.inquiry-column-header{border:1px solid #d9e2ee;border-radius:8px;background:#ffffff;padding:8px 10px}.inquiry-card{box-shadow:0 8px 22px rgba(15,23,42,.06)}.inquiry-convert-panel{background:linear-gradient(135deg,#f8feff,#f2f7ff)}.family-card-head strong,.student-avatar,.tone-teal .command-icon,.workbench-card.primary{background:#ccfbf1;color:#0f766e}.role-dashboard-hero{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:clamp(16px,3vw,30px);overflow:hidden;border:1px solid #d7e3ef;border-radius:8px;background:radial-gradient(circle at top right,rgba(15,118,110,.16),transparent 32%),linear-gradient(135deg,#ffffff,#f4f9ff 58%,#fff8ee);box-shadow:var(--shadow-soft);padding:clamp(16px,2.6vw,26px)}.role-dashboard-hero-teacher{background:radial-gradient(circle at top right,rgba(63,92,200,.16),transparent 32%),linear-gradient(135deg,#ffffff,#f4f7ff 58%,#fff8ee)}.role-dashboard-hero-guardian{background:radial-gradient(circle at top right,rgba(183,121,31,.17),transparent 32%),linear-gradient(135deg,#ffffff,#f8fbff 58%,#fff8eb)}.role-dashboard-copy{display:grid;gap:11px;min-width:0}.role-dashboard-copy h1{color:var(--text);font-size:clamp(1.55rem,3vw,2.65rem);font-weight:900;line-height:1.18}.role-dashboard-copy p:not(.eyebrow){max-width:720px;margin:0;color:#5b6b7e;font-weight:700}.role-dashboard-actions{display:flex;flex-wrap:wrap;gap:9px;margin-top:2px}.role-dashboard-score{display:grid;place-items:center;align-content:center;gap:2px;width:clamp(118px,15vw,162px);aspect-ratio:1;border:10px solid #ffffff;border-radius:50%;box-shadow:inset 0 0 0 1px rgba(15,23,42,.08),0 18px 36px rgba(15,23,42,.12)}.role-dashboard-score small,.role-dashboard-score span{display:grid;place-items:center;width:calc(100% - 28px);border-radius:999px;background:rgba(255,255,255,.92)}.role-dashboard-score span{color:#111827;font-size:clamp(1.45rem,3vw,2.15rem);font-weight:900;line-height:1.1;padding-top:10px}.role-dashboard-score small{color:var(--muted);font-size:.76rem;font-weight:900;padding-bottom:10px}.tone-blue .command-icon{background:#dbeafe;color:#1d4ed8}.tone-amber .command-icon{background:#fef3c7;color:#b45309}.tone-rose .command-icon{background:#ffe4e6;color:#be123c}.bottom-nav-card{right:max(12px,calc((100vw - 720px) / 2));left:max(12px,calc((100vw - 720px) / 2));width:auto;transform:none;backdrop-filter:none;-webkit-backdrop-filter:none}.teacher-group-console{gap:18px}.teacher-group-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(240px,320px);gap:clamp(16px,3vw,28px);overflow:hidden;border:1px solid #d6e1ee;border-radius:8px;background:radial-gradient(circle at top right,rgba(63,92,200,.16),transparent 34%),linear-gradient(135deg,#ffffff,#f3f7ff 52%,#fff8ec);box-shadow:var(--shadow-soft);padding:clamp(18px,3vw,30px)}.teacher-group-hero:before{content:"";position:absolute;inset:auto 0 0 auto;width:42%;height:6px;background:linear-gradient(90deg,#3f5cc8,#0f766e,#b7791f);opacity:.82}.teacher-group-guidance,.teacher-group-hero-copy,.teacher-group-panel,.teacher-group-readiness,.teacher-group-section,.teacher-progress-card,.teacher-session-card,.teacher-submission-card{min-width:0}.teacher-group-hero-copy{display:grid;align-content:center;gap:12px}.teacher-group-hero-copy h1{max-width:780px;color:var(--text);font-size:clamp(1.6rem,3vw,2.8rem);font-weight:900;line-height:1.16;overflow-wrap:anywhere}.teacher-group-hero-copy p:not(.eyebrow){max-width:760px;margin:0;color:#5a6a7d;font-weight:800;line-height:1.85;overflow-wrap:anywhere}.teacher-group-actions{display:flex;flex-wrap:wrap;gap:10px}.teacher-group-readiness{display:grid;align-content:center;gap:10px;border:1px solid rgba(63,92,200,.18);border-radius:8px;background:rgba(255,255,255,.82);box-shadow:0 18px 44px rgba(15,23,42,.1);padding:18px}.teacher-group-readiness span,.teacher-group-stat-card span,.teacher-guidance-card span,.teacher-lesson-row span,.teacher-progress-card-head span,.teacher-session-card-head span,.teacher-submission-head span{color:var(--muted);font-size:.8rem;font-weight:900}.teacher-group-readiness strong{color:#1f2a44;font-size:clamp(2.3rem,5vw,4rem);font-weight:900;line-height:1}.teacher-empty-state p,.teacher-group-readiness p,.teacher-group-stat-card p,.teacher-guidance-card p,.teacher-section-head p,.teacher-session-card-head p,.teacher-submission-head p{margin:0;color:var(--muted);line-height:1.7}.teacher-group-stat-grid{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:12px}.teacher-group-stat-card{display:grid;align-content:space-between;gap:10px;min-height:132px;border:1px solid #dbe5f0;border-radius:8px;background:#ffffff;box-shadow:0 12px 28px rgba(15,23,42,.06);padding:15px}.teacher-group-stat-card:first-child{background:linear-gradient(180deg,#ffffff,#f0fdfa)}.teacher-group-stat-card:nth-child(2){background:linear-gradient(180deg,#ffffff,#eff6ff)}.teacher-group-stat-card:nth-child(3){background:linear-gradient(180deg,#ffffff,#fff7ed)}.teacher-group-stat-card:nth-child(4){background:linear-gradient(180deg,#ffffff,#f5f3ff)}.teacher-group-stat-card:nth-child(5){background:linear-gradient(180deg,#ffffff,#fff1f2)}.teacher-group-stat-card strong{color:var(--text);font-size:clamp(1.45rem,3vw,2.2rem);font-weight:900}.teacher-group-layout{display:grid;grid-template-columns:minmax(0,1.45fr) minmax(260px,.55fr);gap:14px}.teacher-group-guidance,.teacher-group-panel,.teacher-group-section{border:1px solid var(--line);border-radius:8px;background:var(--surface);box-shadow:var(--shadow-soft)}.teacher-group-panel,.teacher-group-section{padding:clamp(14px,2vw,20px)}.teacher-attendance-controls,.teacher-panel-head,.teacher-progress-card-head,.teacher-section-head,.teacher-session-card-head,.teacher-submission-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:start;gap:12px}.teacher-panel-head h2,.teacher-section-head h2{margin:0;color:var(--text);font-size:clamp(1.15rem,2vw,1.55rem);font-weight:900}.teacher-grade-form .button,.teacher-session-composer .button{width:fit-content}.teacher-group-guidance{display:grid;gap:12px;padding:12px}.teacher-guidance-card{display:grid;align-content:start;gap:8px;border:1px solid #dce6f1;border-radius:8px;background:#f8fafc;padding:14px}.teacher-guidance-card strong{color:var(--text);font-size:1.05rem;font-weight:900}.teacher-group-section{display:grid;gap:16px}.teacher-progress-grid,.teacher-session-grid,.teacher-submission-grid{display:grid;gap:12px}.teacher-session-card,.teacher-submission-card{display:grid;gap:14px;border:1px solid #dce6f1;border-radius:8px;background:#ffffff;box-shadow:0 12px 28px rgba(15,23,42,.05);padding:14px}.teacher-empty-state h3,.teacher-progress-card h3,.teacher-session-card-head h3,.teacher-submission-card h3{margin:0;color:var(--text);font-size:1rem;font-weight:900}.teacher-session-meter{display:grid;place-items:center;width:70px;aspect-ratio:1;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;color:#1d4ed8}.teacher-session-meter strong{font-size:1.25rem;font-weight:900;line-height:1}.teacher-session-meter small{color:#4b6387;font-size:.72rem;font-weight:900}.teacher-attendance-controls{align-items:end;border-block:1px solid #e5edf6;padding-block:12px}.teacher-attendance-list{display:grid;gap:10px}.teacher-attendance-row{display:grid;grid-template-columns:minmax(180px,.8fr) minmax(160px,.55fr) minmax(200px,1fr);align-items:end;gap:10px;border:1px solid #e2eaf3;border-radius:8px;background:#f8fafc;padding:10px}.teacher-attendance-row>div{display:grid;gap:4px;align-self:center}.teacher-attendance-row strong{color:var(--text);font-weight:900}.teacher-attendance-row span{color:var(--muted);font-size:.82rem;font-weight:800}.teacher-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.teacher-progress-card{display:grid;gap:12px;border:1px solid #dce6f1;border-radius:8px;background:linear-gradient(#ffffff,#ffffff) padding-box,linear-gradient(135deg,rgba(15,118,110,.35),rgba(63,92,200,.18)) border-box;box-shadow:0 12px 28px rgba(15,23,42,.05);padding:14px}.teacher-progress-card-head strong{display:inline-grid;place-items:center;min-width:58px;height:46px;border-radius:8px;background:#ccfbf1;color:#0f766e;font-size:1.05rem;font-weight:900}.teacher-progress-meta,.teacher-submission-meta{display:flex;flex-wrap:wrap;gap:7px}.teacher-progress-meta span,.teacher-submission-meta span{border:1px solid var(--line);border-radius:999px;background:#f8fafc;color:var(--muted);font-size:.78rem;font-weight:900;padding:5px 9px}.teacher-lesson-stack{display:grid;gap:8px}.teacher-lesson-row{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid #e2eaf3;border-radius:8px;background:#f8fafc;padding:9px 10px}.teacher-lesson-row div{display:grid;gap:3px;min-width:0}.teacher-lesson-row strong{overflow:hidden;color:var(--text);font-size:.9rem;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.teacher-lesson-row em{color:#1d4ed8;font-style:normal;font-weight:900}.teacher-submission-card{grid-template-columns:minmax(0,1fr) minmax(280px,.55fr);align-items:start}.teacher-grade-form,.teacher-submission-copy{display:grid;gap:11px;min-width:0}.teacher-grade-form{border:1px solid #e2eaf3;border-radius:8px;background:#f8fafc;padding:12px}.teacher-submission-body{margin:0;border-inline-start:4px solid #3f5cc8;border-radius:8px;background:#f8fafc;color:#3f4a5f;line-height:1.8;padding:10px 12px}.teacher-submission-link{width:fit-content;color:#1d4ed8;font-weight:900}.teacher-empty-state{display:grid;gap:8px;border:1px dashed #cbd8e7;border-radius:8px;background:#f8fafc;padding:16px}.teacher-group-stat-card:hover,.teacher-progress-card:hover,.teacher-session-card:hover,.teacher-submission-card:hover{transform:translateY(-1px);box-shadow:0 18px 38px rgba(15,23,42,.08)}.access-console,.access-hero{display:grid;gap:18px}.access-hero{position:relative;grid-template-columns:minmax(0,1fr) auto;align-items:end;overflow:hidden;border:1px solid #d9e5f1;border-radius:8px;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(239,249,247,.96)),repeating-linear-gradient(135deg,rgba(15,118,110,.08) 0 1px,transparent 1px 14px);padding:clamp(16px,2.4vw,24px)}.access-hero:before{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:6px;background:linear-gradient(180deg,var(--accent),var(--accent-indigo))}.access-hero-copy{position:relative;display:grid;gap:8px;min-width:0}.access-hero-copy h2{color:#111827;font-size:clamp(1.35rem,2.4vw,2.15rem);font-weight:950}.access-hero-copy p:not(.eyebrow){max-width:760px;margin:0;color:#56677d;font-weight:750}.access-hero-actions{position:relative;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.access-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.access-form-panel,.access-guidance,.access-role-pill,.access-stat-card{border:1px solid #dce5f0;border-radius:8px;background:#ffffff;box-shadow:var(--shadow-soft)}.access-stat-card{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;min-height:116px;padding:14px}.access-stat-card div{min-width:0}.access-stat-card small,.access-stat-card span:not(.command-icon),.access-user-cell small,.role-choice small{color:var(--muted);font-weight:850}.access-stat-card strong{display:block;color:#111827;font-size:clamp(1.55rem,2.5vw,2rem);font-weight:950;line-height:1.1;margin:4px 0}.access-role-strip{display:flex;flex-wrap:wrap;gap:8px}.access-role-pill{display:inline-flex;align-items:center;gap:8px;min-height:36px;color:#334155;font-size:.88rem;font-weight:900;padding:0 10px}.access-role-pill strong{display:inline-flex;align-items:center;justify-content:center;min-width:26px;height:26px;border-radius:999px;background:#edf7f6;color:var(--accent-dark)}.compact-section-header{margin-bottom:-4px}.access-user-cell{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:10px;min-width:220px}.access-email,.access-user-cell small,.access-user-cell strong{display:block;overflow-wrap:anywhere}.access-avatar{justify-content:center;width:40px;height:40px;border:1px solid #bdece6;border-radius:8px;background:#ecfdf5;color:var(--accent-dark)}.access-avatar,.access-status{display:inline-flex;align-items:center;font-weight:950}.access-status{gap:7px;min-height:30px;border:1px solid #dce5f0;border-radius:999px;background:#f8fafc;color:#475569;font-size:.82rem;padding:0 10px;white-space:nowrap}.access-status:before{content:"";width:8px;height:8px;border-radius:999px;background:currentColor}.access-status.active{border-color:#bdece6;background:#ecfdf5;color:var(--accent-dark)}.access-status.disabled{border-color:#fecdd3;background:#fff1f2;color:#be123c}.access-create-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);align-items:start;gap:16px}.access-form-panel{margin-top:0;padding:clamp(14px,2vw,18px)}.form-section-head,.guidance-step,.role-block-header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.form-section-head{justify-content:flex-start;border-bottom:1px solid #e4ebf3;padding-bottom:12px}.form-section-head p,.guidance-step p{margin:4px 0 0;color:var(--muted);font-weight:750}.form-two-column{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.role-select-panel{min-width:0}.role-choice-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}.role-choice{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:start;gap:10px;min-height:88px;border:1px solid #dce5f0;border-radius:8px;background:#f8fafc;padding:12px;transition:border-color .14s ease,background .14s ease,box-shadow .14s ease}.role-choice:has(input:checked),.role-choice:hover{border-color:#8bd8cf;background:#f0fdfa;box-shadow:0 12px 26px rgba(15,118,110,.1)}.role-choice input{width:18px;height:18px;margin-top:2px}.role-choice small,.role-choice span,.role-choice strong{display:block;min-width:0}.role-choice strong{color:#1f2937;font-weight:950}.access-guidance{display:grid;gap:12px;padding:14px}.guidance-step{justify-content:flex-start}.access-permissions-groups{gap:16px}.access-role-block{border:1px solid #dce5f0;border-radius:8px;background:#ffffff;box-shadow:var(--shadow-soft);padding:16px}.access-role-block:first-child{border-top:1px solid #dce5f0;padding-top:16px}.role-block-header{border-bottom:1px solid #e4ebf3;padding-bottom:12px}.role-block-header .eyebrow{margin-bottom:8px}.learning-console,.learning-hero{display:grid;gap:18px}.learning-hero{position:relative;grid-template-columns:minmax(0,1fr) auto;align-items:end;overflow:hidden;border:1px solid #d9e5f1;border-radius:8px;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(239,246,255,.96)),repeating-linear-gradient(135deg,rgba(37,99,235,.07) 0 1px,transparent 1px 14px);padding:clamp(16px,2.4vw,24px)}.learning-hero:before{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:6px;background:linear-gradient(180deg,#2563eb,var(--accent))}.lesson-hero{background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(255,247,237,.96)),repeating-linear-gradient(135deg,rgba(245,158,11,.08) 0 1px,transparent 1px 14px)}.lesson-hero:before{background:linear-gradient(180deg,#f59e0b,#2563eb)}.learning-hero-copy{position:relative;display:grid;gap:8px;min-width:0}.learning-hero-copy h2{color:#111827;font-size:clamp(1.35rem,2.4vw,2.15rem);font-weight:950}.learning-hero-copy p:not(.eyebrow){max-width:760px;margin:0;color:#56677d;font-weight:750}.learning-hero-actions{position:relative;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.learning-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.group-mini-card,.learning-form-panel,.learning-guidance,.learning-path-card,.learning-stat-card,.lesson-type-pill{border:1px solid #dce5f0;border-radius:8px;background:#ffffff;box-shadow:var(--shadow-soft)}.learning-stat-card{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;min-height:116px;padding:14px}.group-mini-card span,.learning-path-card p,.learning-stat-card small,.learning-stat-card span:not(.command-icon){color:var(--muted);font-weight:850}.learning-stat-card strong{display:block;color:#111827;font-size:clamp(1.55rem,2.5vw,2rem);font-weight:950;line-height:1.1;margin:4px 0}.learning-path-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.learning-path-card{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;min-height:96px;padding:14px}.learning-path-card h3{color:#111827;font-size:1rem}.learning-path-card p{margin:5px 0 0}.group-mini-list{display:grid;gap:8px;min-width:280px}.group-mini-card{display:grid;gap:6px;padding:10px}.group-mini-card strong{color:#111827}.group-mini-card span{display:inline-flex;align-items:center;gap:6px;font-size:.84rem}.group-mini-card svg{color:var(--accent)}.lesson-type-strip{display:flex;flex-wrap:wrap;gap:8px}.lesson-type-pill{display:inline-flex;align-items:center;gap:8px;min-height:38px;color:#334155;font-weight:900;padding:0 10px}.lesson-type-pill svg{color:#2563eb}.lesson-type-pill strong{min-width:26px;height:26px;background:#eff6ff;color:#1d4ed8}.lesson-order-badge,.lesson-progress-chip,.lesson-type-pill strong{display:inline-flex;align-items:center;justify-content:center;border-radius:999px}.lesson-order-badge,.lesson-progress-chip{font-weight:950;white-space:nowrap}.lesson-order-badge{min-width:36px;min-height:36px;background:#eff6ff;color:#1d4ed8;padding:0 10px}.lesson-progress-chip{min-height:30px;border:1px solid #dce5f0;background:#f8fafc;color:#475569;padding:0 10px}.lesson-title-cell{display:grid;gap:4px;min-width:240px}.learning-create-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);align-items:start;gap:16px}.learning-form-panel{margin-top:0;padding:clamp(14px,2vw,18px)}.learning-guidance{display:grid;gap:12px;padding:14px}.audit-console,.program-console{display:grid;gap:18px}.audit-hero,.program-create-hero,.program-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:end;gap:18px;overflow:hidden;border:1px solid #d9e5f1;border-radius:8px;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(240,253,250,.96)),repeating-linear-gradient(135deg,rgba(15,118,110,.08) 0 1px,transparent 1px 14px);padding:clamp(16px,2.4vw,24px)}.program-create-hero{background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(239,246,255,.96)),repeating-linear-gradient(135deg,rgba(37,99,235,.07) 0 1px,transparent 1px 14px)}.audit-hero{align-items:center;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(255,251,235,.96)),repeating-linear-gradient(135deg,rgba(180,83,9,.08) 0 1px,transparent 1px 14px)}.audit-hero:before,.program-create-hero:before,.program-hero:before{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:6px}.program-hero:before{background:linear-gradient(180deg,#0f766e,#2563eb)}.program-create-hero:before{background:linear-gradient(180deg,#2563eb,#0f766e)}.audit-hero:before{background:linear-gradient(180deg,#b45309,#0f766e)}.audit-hero-copy,.program-hero-copy{position:relative;display:grid;gap:8px;min-width:0}.audit-hero-copy h2,.program-hero-copy h2{color:#111827;font-size:clamp(1.35rem,2.4vw,2.15rem);font-weight:950}.audit-hero-copy p:not(.eyebrow),.program-hero-copy p:not(.eyebrow){max-width:780px;margin:0;color:#56677d;font-weight:750}.program-hero-actions{position:relative;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.audit-hero-stamp{position:relative;display:grid;place-items:center;gap:8px;min-width:132px;min-height:112px;border:1px solid #f1d6a8;border-radius:8px;background:#ffffff;color:#92400e;font-weight:950;text-align:center;box-shadow:var(--shadow-soft)}.audit-stat-grid,.program-stat-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:12px}.audit-empty-state,.audit-entry-card,.audit-stat-card,.program-create-form,.program-create-guidance,.program-empty-state,.program-guidance-card,.program-path-card,.program-stat-card{border:1px solid #dce5f0;border-radius:8px;background:#ffffff;box-shadow:var(--shadow-soft)}.audit-stat-card,.program-stat-card{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;min-height:116px;padding:14px}.audit-entry-card>p,.audit-entry-email,.audit-entry-meta span,.audit-stat-card small,.audit-stat-card span:not(.command-icon),.program-guidance-card p,.program-path-card p,.program-path-metrics span,.program-stat-card small,.program-stat-card span:not(.command-icon){color:var(--muted);font-weight:850}.audit-stat-card strong,.program-stat-card strong{display:block;color:#111827;font-size:clamp(1.55rem,2.5vw,2rem);font-weight:950;line-height:1.1;margin:4px 0}.audit-stat-card .audit-date-value{font-size:clamp(1.05rem,1.6vw,1.35rem);line-height:1.25}.program-path-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.program-path-card{display:grid;align-content:start;gap:14px;min-height:230px;padding:14px}.audit-entry-head,.program-path-head{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px}.audit-entry-head h3,.program-path-head h3{color:#111827;font-size:1.05rem;font-weight:950}.program-path-card>p{margin:0;line-height:1.8}.audit-entry-meta,.program-path-metrics{display:flex;flex-wrap:wrap;gap:8px;margin-top:auto}.audit-entry-meta span,.program-path-metrics span{display:inline-flex;align-items:center;gap:6px;max-width:100%;min-height:32px;border:1px solid #dce5f0;border-radius:999px;background:#f8fafc;overflow-wrap:anywhere;padding:0 10px}.program-path-metrics svg{color:#0f766e}.program-create-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);align-items:start;gap:16px}.program-create-form,.program-create-guidance{padding:clamp(14px,2vw,18px)}.program-create-form{margin-top:0}.program-create-guidance{display:grid;gap:12px}.program-guidance-card{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;padding:12px}.program-guidance-card strong{color:#111827;font-weight:950}.program-guidance-card p{margin:4px 0 0;line-height:1.7}.audit-empty-state,.program-empty-state{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:14px;padding:16px}.audit-empty-state strong,.program-empty-state strong{color:#111827;font-size:1.05rem;font-weight:950}.audit-empty-state p,.program-empty-state p{margin:4px 0 0;color:var(--muted);font-weight:800}.audit-entry-card,.audit-entry-grid{display:grid;gap:12px}.audit-entry-card{padding:14px}.audit-entry-head time{color:#64748b;font-size:.85rem;font-weight:900;white-space:nowrap}.audit-entry-meta svg{color:#b45309}.audit-entry-email{margin:-4px 52px 0 0}.audit-detail-panel{border:1px solid #dce5f0;border-radius:8px;background:#f8fafc;overflow:hidden;padding:10px 12px}.audit-detail-panel summary{cursor:pointer;color:#334155;font-weight:950}.audit-json-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:10px}.audit-detail-panel .json-preview{max-width:100%;overflow-wrap:anywhere}.enrollment-console,.enrollment-hero{display:grid;gap:18px}.enrollment-hero{position:relative;grid-template-columns:minmax(0,1fr) auto;align-items:end;overflow:hidden;border:1px solid #d9e5f1;border-radius:8px;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(240,253,244,.96)),repeating-linear-gradient(135deg,rgba(22,163,74,.08) 0 1px,transparent 1px 14px);padding:clamp(16px,2.4vw,24px)}.enrollment-hero:before{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:6px;background:linear-gradient(180deg,#16a34a,#2563eb)}.enrollment-hero-copy{position:relative;display:grid;gap:8px;min-width:0}.enrollment-hero-copy h2{color:#111827;font-size:clamp(1.35rem,2.4vw,2.15rem);font-weight:950}.enrollment-hero-copy p:not(.eyebrow){max-width:760px;margin:0;color:#56677d;font-weight:750}.enrollment-hero-actions{position:relative;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.enrollment-path-grid,.enrollment-stat-grid{display:grid;gap:12px}.enrollment-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.enrollment-path-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.enrollment-form-panel,.enrollment-guidance,.enrollment-path-card,.enrollment-stat-card{border:1px solid #dce5f0;border-radius:8px;background:#ffffff;box-shadow:var(--shadow-soft)}.enrollment-stat-card{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;min-height:116px;padding:14px}.enrollment-path-card p,.enrollment-stat-card small,.enrollment-stat-card span:not(.command-icon),.enrollment-student-cell small{color:var(--muted);font-weight:850}.enrollment-stat-card strong{display:block;color:#111827;font-size:clamp(1.55rem,2.5vw,2rem);font-weight:950;line-height:1.1;margin:4px 0}.enrollment-path-card{display:grid;grid-template-columns:42px minmax(0,1fr);align-items:center;gap:12px;min-height:96px;padding:14px}.enrollment-path-card h3{color:#111827;font-size:1rem}.enrollment-path-card p{margin:5px 0 0}.enrollment-student-cell{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:10px;min-width:220px}.enrollment-student-cell small,.enrollment-student-cell strong{display:block;overflow-wrap:anywhere}.enrollment-create-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);align-items:start;gap:16px}.enrollment-form-panel{margin-top:0;padding:clamp(14px,2vw,18px)}.enrollment-guidance{display:grid;gap:12px;padding:14px}.attendance-console,.attendance-hero{display:grid;gap:18px}.attendance-hero{position:relative;grid-template-columns:minmax(0,1fr) auto;align-items:end;overflow:hidden;border:1px solid #d9e5f1;border-radius:8px;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(240,253,250,.96)),repeating-linear-gradient(135deg,rgba(8,145,178,.08) 0 1px,transparent 1px 14px);padding:clamp(16px,2.4vw,24px)}.attendance-hero:before{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:6px;background:linear-gradient(180deg,#0891b2,var(--accent))}.attendance-session-hero{background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(239,246,255,.96)),repeating-linear-gradient(135deg,rgba(37,99,235,.08) 0 1px,transparent 1px 14px)}.attendance-session-hero:before{background:linear-gradient(180deg,#2563eb,#0891b2)}.attendance-hero-copy{position:relative;display:grid;gap:8px;min-width:0}.attendance-hero-copy h2{color:#111827;font-size:clamp(1.35rem,2.4vw,2.15rem);font-weight:950}.attendance-hero-copy p:not(.eyebrow){max-width:760px;margin:0;color:#56677d;font-weight:750}.attendance-hero-actions{position:relative;display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.attendance-session-grid,.attendance-stat-grid{display:grid;gap:12px}.attendance-session-grid,.attendance-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.attendance-form-panel,.attendance-guidance,.attendance-mark-panel,.attendance-session-card,.attendance-stat-card,.attendance-teacher-chip{border:1px solid #dce5f0;border-radius:8px;background:#ffffff;box-shadow:var(--shadow-soft)}.attendance-stat-card{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;min-height:116px;padding:14px}.attendance-card-meta span,.attendance-session-card p,.attendance-stat-card small,.attendance-stat-card span:not(.command-icon){color:var(--muted);font-weight:850}.attendance-stat-card strong{display:block;color:#111827;font-size:clamp(1.55rem,2.5vw,2rem);font-weight:950;line-height:1.1;margin:4px 0}.attendance-session-card{display:grid;align-content:space-between;gap:12px;min-height:160px;padding:14px}.attendance-session-card h3{color:#111827;font-size:1rem;margin-top:10px}.attendance-session-card p{margin:6px 0 0}.attendance-card-meta{display:grid;gap:6px}.attendance-card-meta span{display:inline-flex;align-items:center;gap:7px}.academic-map-section{display:grid;gap:16px}.academic-section-header{align-items:flex-end}.academic-section-header p{max-width:760px}.academic-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.academic-course-grid,.academic-enrollment-grid,.academic-lesson-grid,.academic-session-grid{align-items:stretch}.academic-course-card,.academic-empty-state,.academic-enrollment-card,.academic-lesson-card,.academic-session-card{border:1px solid #dce5f0;border-radius:8px;background:linear-gradient(180deg,rgba(255,255,255,.98),rgba(248,250,252,.94)),#ffffff;box-shadow:var(--shadow-soft)}.academic-course-card,.academic-enrollment-card,.academic-lesson-card,.academic-session-card{display:grid;align-content:start;gap:14px;min-width:0;min-height:100%;padding:clamp(14px,2vw,18px);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.academic-course-card:hover,.academic-enrollment-card:hover,.academic-lesson-card:hover,.academic-session-card:hover{border-color:#b9c9dc;box-shadow:var(--shadow-lift);transform:translateY(-2px)}.academic-card-head{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:start;gap:12px;min-width:0}.academic-card-head h3{color:#111827;font-size:clamp(1rem,1.2vw,1.18rem);font-weight:950;line-height:1.45}.academic-card-head p:not(.eyebrow){margin:5px 0 0;color:var(--muted);font-weight:760;line-height:1.7}.academic-card-head .badge{justify-self:end}.academic-enrollment-head{grid-template-columns:minmax(0,1fr) auto;align-items:center}.academic-lesson-head{grid-template-columns:auto minmax(0,1fr) auto}.academic-card-metrics,.attendance-state-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.attendance-state-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.academic-card-metrics span,.attendance-state-grid span{display:grid;gap:4px;min-height:68px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc;padding:10px}.academic-card-metrics strong,.attendance-state-grid strong{color:#111827;font-size:1.35rem;font-weight:950;line-height:1}.academic-card-metrics small,.attendance-state-grid small{color:var(--muted);font-size:.78rem;font-weight:850}.academic-pill-row{display:flex;flex-wrap:wrap;gap:8px}.academic-more-pill,.academic-pill-row span,.academic-route-chip{display:inline-flex;align-items:center;gap:6px;max-width:100%;min-height:32px;border:1px solid #dce5f0;border-radius:999px;background:#ffffff;color:#475569;font-size:.84rem;font-weight:900;line-height:1.3;padding:6px 10px}.academic-mini-stack{display:grid;gap:8px}.academic-mini-row{display:grid;grid-template-columns:minmax(0,1fr) auto auto;align-items:center;gap:10px;min-height:58px;border:1px solid #e2e8f0;border-radius:8px;background:#ffffff;padding:10px}.academic-mini-row small,.academic-mini-row strong{display:block;min-width:0;overflow-wrap:anywhere}.academic-mini-row strong{color:#172033;font-weight:950}.academic-mini-row small{margin-top:3px;color:var(--muted);font-weight:800}.academic-mini-row>span,.academic-mini-row>svg{display:inline-flex;align-items:center;gap:5px;color:var(--accent-indigo);font-weight:900;white-space:nowrap}.academic-mini-empty{grid-template-columns:1fr;background:#f8fafc}.academic-more-pill{justify-self:start;background:#eff6ff;color:#1d4ed8}.academic-card-footer{display:flex;align-items:center;justify-content:space-between;gap:10px;margin-top:auto}.academic-person{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:10px;min-width:0}.academic-person h3,.academic-person p{overflow-wrap:anywhere}.academic-empty-state{display:grid;grid-template-columns:44px minmax(0,1fr) auto;align-items:center;gap:14px;min-height:126px;padding:clamp(14px,2vw,18px)}.academic-empty-state svg{color:var(--accent-indigo)}.academic-empty-state h3{color:#111827;font-weight:950}.academic-empty-state p{margin:4px 0 0;color:var(--muted);font-weight:800}.attendance-create-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);align-items:start;gap:16px}.attendance-form-panel{margin-top:0;padding:clamp(14px,2vw,18px)}.attendance-guidance{display:grid;gap:12px;padding:14px}.attendance-mark-panel{display:grid;gap:16px;padding:clamp(16px,2vw,22px)}.attendance-mark-panel .section-header{margin-bottom:0}.attendance-mark-header{align-items:center}.attendance-mark-controls{display:grid;grid-template-columns:minmax(240px,420px) minmax(220px,1fr);align-items:stretch;gap:12px}.attendance-teacher-chip{display:grid;grid-template-columns:24px minmax(0,auto) minmax(0,1fr);align-items:center;gap:8px;padding:12px}.attendance-teacher-chip svg{color:var(--accent)}.attendance-teacher-chip span{color:var(--muted);font-weight:900}.attendance-teacher-chip strong{overflow-wrap:anywhere}.attendance-student-list input,.attendance-student-list select{width:100%;min-height:38px;border:1px solid #d6e0ec;border-radius:8px;background:#fbfdff;color:var(--text);font:inherit;font-weight:750;padding:0 10px}.attendance-student-card-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.attendance-empty-state,.attendance-student-card{border:1px solid #dce5f0;border-radius:8px;background:#ffffff;box-shadow:var(--shadow-soft)}.attendance-student-card{display:grid;align-content:start;gap:12px;min-width:0;padding:clamp(12px,1.8vw,16px)}.attendance-student-card-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px}.attendance-student-card .enrollment-student-cell{min-width:0}.attendance-student-card .badge{justify-self:end}.attendance-student-fields{display:grid;grid-template-columns:minmax(180px,.72fr) minmax(0,1.28fr);gap:10px}.attendance-student-fields .field{margin:0}.attendance-student-foot{display:flex;align-items:center;justify-content:space-between;gap:10px;min-height:38px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc;color:var(--muted);font-size:.86rem;font-weight:850;padding:8px 10px}.attendance-student-foot strong{color:#172033;overflow-wrap:anywhere}.attendance-empty-state{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:14px;padding:16px}.attendance-empty-state svg{color:var(--accent-indigo)}.attendance-empty-state h3{color:#111827;font-weight:950}.attendance-empty-state p{margin:4px 0 0;color:var(--muted);font-weight:800}.certificate-console{display:grid;gap:18px}.certificate-admin-hero{position:relative;display:grid;gap:18px;overflow:hidden;border:1px solid #d9e5f1;border-radius:8px;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(255,251,235,.96)),repeating-linear-gradient(135deg,rgba(202,138,4,.08) 0 1px,transparent 1px 14px);padding:clamp(16px,2.4vw,24px)}.certificate-admin-hero:before{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:6px;background:linear-gradient(180deg,#ca8a04,#0891b2)}.certificate-admin-copy{position:relative;display:grid;gap:8px;min-width:0}.certificate-admin-copy h2{color:#111827;font-size:clamp(1.35rem,2.4vw,2.15rem);font-weight:950}.certificate-admin-copy p:not(.eyebrow){max-width:780px;margin:0;color:#56677d;font-weight:750}.certificate-readiness-grid,.certificate-stat-grid{display:grid;gap:12px}.certificate-readiness-grid,.certificate-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.certificate-check,.certificate-issue-form,.certificate-issued-cell,.certificate-readiness-card,.certificate-stat-card{border:1px solid #dce5f0;border-radius:8px;background:#ffffff;box-shadow:var(--shadow-soft)}.certificate-stat-card{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;min-height:116px;padding:14px}.certificate-ready-list span,.certificate-stat-card small,.certificate-stat-card span:not(.command-icon){color:var(--muted);font-weight:850}.certificate-stat-card strong{display:block;color:#111827;font-size:clamp(1.45rem,2.3vw,1.95rem);font-weight:950;line-height:1.16;margin:4px 0}.certificate-readiness-card{display:grid;align-content:space-between;gap:12px;min-height:120px;padding:14px}.certificate-readiness-card.wide{grid-column:span 2}.certificate-readiness-card strong{display:block;margin-top:5px;color:#111827;font-size:1.35rem;font-weight:950}.certificate-ready-list{display:flex;flex-wrap:wrap;gap:8px}.certificate-ready-list span{min-height:30px;border:1px solid #dce5f0;border-radius:999px;background:#f8fafc;padding:5px 9px}.certificate-check-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px;min-width:320px}.certificate-check{display:inline-flex;align-items:center;gap:7px;min-height:34px;color:#64748b;font-size:.83rem;font-weight:900;padding:0 10px}.certificate-check svg{color:#94a3b8}.certificate-check.active{border-color:#bdece6;background:#ecfdf5;color:var(--accent-dark)}.certificate-check.active svg{color:var(--accent)}.certificate-issued-cell{display:grid;gap:7px;min-width:190px;padding:10px}.certificate-issued-cell span,.certificate-issued-cell strong{overflow-wrap:anywhere}.certificate-action-stack{min-width:220px}.certificate-issue-form{gap:10px;min-width:240px;margin-top:0;padding:12px}.certificate-eligibility-section{display:grid;gap:16px}.certificate-section-header{align-items:flex-end}.certificate-section-header p{max-width:780px}.certificate-eligibility-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:14px}.certificate-action-panel,.certificate-eligibility-card,.certificate-empty-state,.certificate-waiting-panel{border:1px solid #dce5f0;border-radius:8px;background:#ffffff;box-shadow:var(--shadow-soft)}.certificate-eligibility-card{display:grid;align-content:start;gap:14px;min-width:0;padding:clamp(14px,2vw,18px)}.certificate-card-head{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:12px}.certificate-card-head .enrollment-student-cell{min-width:0}.certificate-card-head .badge{justify-self:end}.certificate-card-course{display:grid;gap:5px}.certificate-card-course h3{color:#111827;font-size:clamp(1.02rem,1.25vw,1.2rem);font-weight:950;line-height:1.45}.certificate-card-course p:not(.eyebrow){margin:0;color:var(--muted);font-weight:800;line-height:1.7}.certificate-card-summary{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.certificate-card-summary span{display:grid;gap:4px;min-height:68px;border:1px solid #e2e8f0;border-radius:8px;background:#f8fafc;padding:10px}.certificate-card-summary strong{color:#111827;font-size:1.1rem;font-weight:950;line-height:1.15;overflow-wrap:anywhere}.certificate-card-summary small,.certificate-ready-note,.certificate-reason-list span,.certificate-waiting-panel span{color:var(--muted);font-weight:850}.certificate-reason-list{display:flex;flex-wrap:wrap;gap:8px}.certificate-reason-list span{min-height:30px;border:1px solid #fed7aa;border-radius:999px;background:#fff7ed;color:#9a3412;padding:5px 9px}.certificate-ready-note{margin:0;border:1px solid #bdece6;border-radius:8px;background:#ecfdf5;color:var(--accent-dark);padding:10px}.certificate-card-action{margin-top:auto}.certificate-action-panel,.certificate-waiting-panel{display:grid;gap:10px;padding:12px}.certificate-action-panel .button,.certificate-issue-form .button{width:100%}.certificate-action-panel .certificate-issued-cell{min-width:0;border-color:#e2e8f0;background:#f8fafc;box-shadow:none}.certificate-action-panel .certificate-issued-cell svg{color:var(--accent)}.certificate-issue-fields,.certificate-revoke-form{display:grid;gap:10px}.certificate-issue-fields{grid-template-columns:repeat(2,minmax(0,1fr))}.certificate-issue-fields .field{margin:0}.certificate-revoke-form{grid-template-columns:minmax(0,1fr) auto}.certificate-revoke-form input{min-width:0}.certificate-waiting-panel{align-content:center;min-height:112px;background:#f8fafc}.certificate-waiting-panel svg{color:#94a3b8}.certificate-waiting-panel strong{color:#172033;font-weight:950}.certificate-empty-state{display:grid;grid-template-columns:48px minmax(0,1fr);align-items:center;gap:14px;padding:16px}.certificate-empty-state svg{color:var(--warning)}.certificate-empty-state h3{color:#111827;font-weight:950}.certificate-empty-state p{margin:4px 0 0;color:var(--muted);font-weight:800}.finance-console,.report-console{display:grid;gap:18px}.finance-hero,.report-hero{position:relative;display:grid;align-items:stretch;gap:18px;overflow:hidden;border:1px solid #d9e5f1;border-radius:8px;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(239,246,255,.96)),repeating-linear-gradient(135deg,rgba(37,99,235,.075) 0 1px,transparent 1px 14px);box-shadow:var(--shadow-soft);padding:clamp(16px,2.4vw,24px)}.report-hero{grid-template-columns:minmax(0,1fr) minmax(190px,260px)}.finance-hero{grid-template-columns:minmax(0,1fr) minmax(260px,360px);background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(240,253,244,.96)),repeating-linear-gradient(135deg,rgba(20,184,166,.075) 0 1px,transparent 1px 14px)}.finance-hero:before,.report-hero:before{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:6px}.report-hero:before{background:linear-gradient(180deg,#2563eb,#8b5cf6)}.finance-hero:before{background:linear-gradient(180deg,#0f766e,#2563eb)}.finance-hero-copy,.report-hero-copy{position:relative;display:grid;align-content:center;gap:8px;min-width:0}.finance-hero-copy h2,.report-hero-copy h2{color:#111827;font-size:clamp(1.45rem,2.5vw,2.25rem);font-weight:950}.finance-hero-copy p:not(.eyebrow),.report-hero-copy p:not(.eyebrow){max-width:820px;margin:0;color:#56677d;font-weight:750}.finance-hero-actions,.report-hero-pills{display:flex;flex-wrap:wrap;gap:8px;margin-top:6px}.report-hero-pills span{display:inline-flex;align-items:center;gap:7px;min-height:34px;border:1px solid #dce5f0;border-radius:999px;background:#ffffff;color:#475569;font-size:.84rem;font-weight:900;padding:0 10px}.report-hero-pills svg{color:var(--accent)}.finance-alert-card,.finance-hero-score,.finance-stat-card,.finance-workflow-card,.report-action-card,.report-focus-card,.report-hero-score,.report-signal-card{border:1px solid #dce5f0;border-radius:8px;background:#ffffff;box-shadow:var(--shadow-soft)}.finance-hero-score,.report-hero-score{position:relative;display:grid;align-content:center;gap:6px;min-height:160px;padding:18px}.finance-alert-card span,.finance-hero-score span,.finance-stat-card span:not(.command-icon),.finance-workflow-card span,.report-action-card span,.report-focus-card span:not(.command-icon),.report-hero-score span,.report-signal-card span{color:#64748b;font-weight:900}.finance-hero-score strong,.report-hero-score strong{color:#111827;font-size:clamp(2.15rem,4vw,3.1rem);font-weight:950;line-height:1}.finance-alert-card small,.finance-hero-score small,.finance-stat-card small,.finance-workflow-card small,.report-action-card small,.report-focus-card small,.report-hero-score small,.report-signal-card small{color:#64748b;font-weight:800;line-height:1.6}.finance-alert-grid,.finance-stat-grid,.finance-workflow-grid,.report-action-grid,.report-focus-grid,.report-signal-grid{display:grid;gap:12px}.finance-stat-grid,.report-action-grid,.report-focus-grid,.report-signal-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.finance-workflow-grid{grid-template-columns:repeat(5,minmax(0,1fr))}.finance-alert-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.finance-stat-card,.report-focus-card{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;min-height:124px;padding:14px}.finance-stat-card strong,.report-focus-card strong{display:block;overflow-wrap:anywhere;color:#111827;font-size:clamp(1.25rem,2.1vw,1.75rem);font-weight:950;line-height:1.16;margin:4px 0}.finance-alert-card,.finance-workflow-card,.report-action-card{display:grid;align-content:space-between;gap:8px;min-height:126px;color:#111827;padding:14px;transition:border-color .14s ease,transform .14s ease,background .14s ease}.finance-workflow-card:hover,.report-action-card:hover{border-color:#b9d7f0;background:#f8fbff;transform:translateY(-2px)}.finance-alert-card svg,.finance-workflow-card svg,.report-action-card svg{color:var(--accent)}.finance-alert-card strong,.finance-workflow-card strong,.report-action-card strong,.report-signal-card strong{overflow-wrap:anywhere;color:#111827;font-size:1.05rem;font-weight:950;line-height:1.35}.report-signal-card{display:grid;gap:7px;min-height:118px;padding:14px}.finance-hero-side{position:relative;display:grid;gap:10px}.finance-hero-actions{justify-content:stretch;margin-top:0}.finance-hero-actions .button{flex:1 1 148px}.finance-alert-card{grid-template-columns:28px minmax(0,1fr);align-content:start;min-height:128px}.finance-alert-card.wide{grid-column:span 2}.finance-list-console,.finance-list-hero{display:grid;gap:18px}.finance-list-hero{position:relative;grid-template-columns:minmax(0,1fr) auto;align-items:end;overflow:hidden;border:1px solid #d9e5f1;border-radius:8px;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(240,253,244,.96)),repeating-linear-gradient(135deg,rgba(15,118,110,.075) 0 1px,transparent 1px 14px);box-shadow:var(--shadow-soft);padding:clamp(16px,2.4vw,24px)}.finance-list-hero:before{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:6px;background:linear-gradient(180deg,#0f766e,#2563eb)}.finance-list-hero-invoices:before,.finance-list-hero-payments:before{background:linear-gradient(180deg,#2563eb,#0f766e)}.finance-list-hero-expenses:before,.finance-list-hero-payroll:before{background:linear-gradient(180deg,#b45309,#0f766e)}.finance-list-hero-copy{position:relative;display:grid;gap:8px;min-width:0}.finance-list-hero-copy h2{color:#111827;font-size:clamp(1.35rem,2.4vw,2.15rem);font-weight:950}.finance-list-hero-copy p:not(.eyebrow){max-width:780px;margin:0;color:#56677d;font-weight:750}.finance-list-hero .button{position:relative}.finance-list-stat-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.finance-empty-state,.finance-list-stat-card,.finance-record-card{border:1px solid #dce5f0;border-radius:8px;background:#ffffff;box-shadow:var(--shadow-soft)}.finance-list-stat-card{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;min-height:112px;padding:14px}.finance-amount-row span,.finance-list-stat-card small,.finance-list-stat-card span:not(.command-icon),.finance-record-description,.finance-record-meta span,.finance-record-metrics span{color:#64748b;font-weight:850}.finance-list-stat-card strong{display:block;overflow-wrap:anywhere;color:#111827;font-size:clamp(1.25rem,2vw,1.75rem);font-weight:950;line-height:1.16;margin:4px 0}.finance-record-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,280px),1fr));gap:12px}.finance-record-zone{display:grid;gap:16px}.finance-record-card{display:grid;align-content:start;gap:12px;min-height:228px;padding:14px}.finance-record-head{display:grid;grid-template-columns:42px minmax(0,1fr) auto;align-items:center;gap:10px}.finance-record-head h3{color:#111827;font-size:1.04rem;font-weight:950;line-height:1.35}.finance-record-description{margin:0;line-height:1.75}.finance-amount-row,.finance-record-meta,.finance-record-metrics{display:flex;flex-wrap:wrap;gap:8px}.finance-amount-row span,.finance-record-meta span,.finance-record-metrics span{display:inline-flex;align-items:center;gap:6px;max-width:100%;min-height:32px;border:1px solid #dce5f0;border-radius:999px;background:#f8fafc;overflow-wrap:anywhere;padding:0 10px}.finance-amount-row{margin-top:auto}.finance-amount-row strong{color:#111827;font-weight:950}.finance-amount-row.compact span{min-height:36px}.finance-record-card .button{justify-self:start}.finance-empty-state{display:grid;grid-template-columns:46px minmax(0,1fr);align-items:center;gap:14px;padding:16px}.finance-empty-state strong{color:#111827;font-size:1.05rem;font-weight:950}.finance-empty-state p{margin:4px 0 0;color:var(--muted);font-weight:800}.finance-form-console,.finance-form-hero{display:grid;gap:18px}.finance-form-hero{position:relative;grid-template-columns:minmax(0,1fr) auto;align-items:end;overflow:hidden;border:1px solid #d9e5f1;border-radius:8px;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(240,253,244,.96)),repeating-linear-gradient(135deg,rgba(15,118,110,.075) 0 1px,transparent 1px 14px);box-shadow:var(--shadow-soft);padding:clamp(16px,2.4vw,24px)}.finance-form-hero:before{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:6px;background:linear-gradient(180deg,#0f766e,#2563eb)}.finance-form-hero-invoices:before,.finance-form-hero-payments:before{background:linear-gradient(180deg,#2563eb,#0f766e)}.finance-form-hero-expenses:before,.finance-form-hero-payroll:before{background:linear-gradient(180deg,#b45309,#0f766e)}.finance-form-hero-copy{position:relative;display:grid;gap:8px;min-width:0}.finance-form-hero-copy h2{color:#111827;font-size:clamp(1.35rem,2.4vw,2.15rem);font-weight:950}.finance-form-hero-copy p:not(.eyebrow){max-width:780px;margin:0;color:#56677d;font-weight:750}.finance-form-hero .button{position:relative}.finance-form-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);align-items:start;gap:16px}.finance-form-guidance,.finance-form-panel,.finance-guidance-card{border:1px solid #dce5f0;border-radius:8px;background:#ffffff;box-shadow:var(--shadow-soft)}.finance-form-panel{margin-top:0;padding:clamp(14px,2vw,18px)}.finance-form-guidance{display:grid;gap:12px;padding:14px}.finance-guidance-card{display:grid;grid-template-columns:42px minmax(0,1fr);gap:12px;padding:12px}.finance-guidance-card strong{color:#111827;font-weight:950}.finance-guidance-card p{margin:4px 0 0;color:var(--muted);font-weight:800;line-height:1.7}.form-three-column{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.assessment-console,.assessment-student-page,.assessment-taking-page{display:grid;gap:18px}.assessment-admin-hero,.assessment-student-hero,.assessment-taking-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(190px,260px);align-items:stretch;gap:18px;overflow:hidden;border:1px solid #d9e5f1;border-radius:8px;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(255,247,237,.96)),repeating-linear-gradient(135deg,rgba(245,158,11,.075) 0 1px,transparent 1px 14px);box-shadow:var(--shadow-soft);padding:clamp(16px,2.4vw,24px)}.assessment-student-hero,.assessment-taking-hero{background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(239,246,255,.96)),repeating-linear-gradient(135deg,rgba(37,99,235,.075) 0 1px,transparent 1px 14px)}.assessment-admin-hero:before,.assessment-student-hero:before,.assessment-taking-hero:before{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:6px;background:linear-gradient(180deg,#f59e0b,#2563eb)}.assessment-student-hero:before,.assessment-taking-hero:before{background:linear-gradient(180deg,#2563eb,#0f766e)}.assessment-admin-copy,.assessment-student-hero>div:first-child,.assessment-taking-hero>div:first-child{position:relative;display:grid;align-content:center;gap:8px;min-width:0}.assessment-admin-copy h2,.assessment-student-hero h1,.assessment-taking-hero h1{color:#111827;font-size:clamp(1.45rem,2.5vw,2.25rem);font-weight:950}.assessment-admin-copy p:not(.eyebrow),.assessment-student-hero p:not(.eyebrow),.assessment-taking-hero p:not(.eyebrow){max-width:820px;margin:0;color:#56677d;font-weight:750}.assessment-admin-card,.assessment-admin-score,.assessment-complete-panel,.assessment-detail-panel,.assessment-empty-state,.assessment-form-panel,.assessment-guidance article,.assessment-question-card,.assessment-stat-card,.assessment-student-card,.assessment-student-score,.assessment-student-stat-grid article,.assessment-taking-score,.assessment-taking-stat-grid article{border:1px solid #dce5f0;border-radius:8px;background:#ffffff;box-shadow:var(--shadow-soft)}.assessment-admin-score,.assessment-student-score,.assessment-taking-score{position:relative;display:grid;align-content:center;gap:6px;min-height:160px;padding:18px}.assessment-admin-score span,.assessment-attempt-card time,.assessment-attempt-person small,.assessment-complete-panel p,.assessment-detail-head h4,.assessment-guidance p,.assessment-meta-grid span,.assessment-mini-empty,.assessment-pass-chip span,.assessment-question-card legend span,.assessment-question-meta small,.assessment-stat-card small,.assessment-stat-card span:not(.command-icon),.assessment-student-card p,.assessment-student-meta span,.assessment-student-score small,.assessment-student-score span,.assessment-student-stat-grid span,.assessment-taking-score small,.assessment-taking-score span,.assessment-taking-stat-grid span,.assessment-warning span{color:#64748b;font-weight:850}.assessment-admin-score strong,.assessment-student-score strong,.assessment-taking-score strong{color:#111827;font-size:clamp(2rem,4vw,3rem);font-weight:950;line-height:1}.assessment-card-grid,.assessment-stat-grid,.assessment-student-card-grid,.assessment-student-stat-grid,.assessment-taking-stat-grid{display:grid;gap:12px}.assessment-stat-grid,.assessment-student-stat-grid,.assessment-taking-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.assessment-card-grid{grid-template-columns:1fr}.assessment-student-card-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.assessment-stat-card{display:grid;grid-template-columns:44px minmax(0,1fr);align-items:center;gap:12px;min-height:116px;padding:14px}.assessment-stat-card strong{display:block;color:#111827;font-size:clamp(1.55rem,2.5vw,2rem);font-weight:950;line-height:1.1;margin:4px 0}.assessment-create-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);align-items:start;gap:16px}.assessment-form-panel{padding:clamp(14px,2vw,18px)}.assessment-guidance{display:grid;gap:12px}.assessment-guidance article{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;min-height:92px;padding:12px}.assessment-guidance svg,.assessment-student-stat-grid svg,.assessment-taking-stat-grid svg{color:var(--accent)}.assessment-attempt-person strong,.assessment-attempt-result strong,.assessment-complete-panel strong,.assessment-guidance strong,.assessment-question-card legend strong,.assessment-question-item h5,.assessment-student-card h3,.assessment-title-cell h3{color:#111827;font-weight:950}.assessment-guidance p{margin:4px 0 0;line-height:1.6}.assessment-admin-card{display:grid;gap:16px;padding:clamp(14px,2vw,18px)}.assessment-card-head{display:grid;grid-template-columns:minmax(0,1fr) minmax(92px,120px);align-items:stretch;gap:12px}.assessment-title-cell{display:grid;align-content:start;gap:7px;min-width:0}.assessment-student-card h3,.assessment-student-card p,.assessment-title-cell h3,.assessment-title-cell p{overflow-wrap:anywhere}.assessment-title-cell p{margin:0;color:#56677d;font-weight:800}.assessment-pass-chip{display:grid;place-items:center;gap:4px;border:1px solid #dce5f0;border-radius:8px;background:#f8fafc;padding:10px;text-align:center}.assessment-pass-chip strong{color:#111827;font-size:1.5rem;font-weight:950}.assessment-meta-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.assessment-meta-grid div{display:grid;gap:4px;border:1px solid #dce5f0;border-radius:8px;background:#f8fafc;padding:10px}.assessment-meta-grid strong{color:#111827;font-weight:950}.assessment-status-form{display:grid;grid-template-columns:minmax(220px,340px) auto;align-items:end;gap:10px}.assessment-warning{display:inline-flex;align-items:center;gap:8px;border:1px solid #fde68a;border-radius:8px;background:#fffbeb;padding:10px 12px}.assessment-warning svg{color:#b45309}.assessment-detail-panel{display:grid;gap:12px;padding:13px;background:linear-gradient(180deg,#ffffff,#f8fafc),repeating-linear-gradient(135deg,rgba(15,118,110,.045) 0 1px,transparent 1px 13px)}.assessment-detail-head{display:flex;align-items:center;justify-content:space-between;gap:12px;border-bottom:1px solid #e2e8f0;padding-bottom:10px}.assessment-detail-head h4,.assessment-question-item h5{margin:0;color:#111827}.assessment-detail-head svg{flex:0 0 auto;color:#0f766e}.assessment-attempt-grid,.assessment-question-list{display:grid;gap:10px}.assessment-question-item{display:grid;gap:12px;border:1px solid #dce5f0;border-radius:8px;background:rgba(255,255,255,.86);padding:12px}.assessment-question-head{display:grid;grid-template-columns:38px minmax(0,1fr);gap:10px;align-items:start}.assessment-question-head>div{display:grid;gap:6px;min-width:0}.assessment-question-order{display:grid;place-items:center;width:36px;height:36px;border:1px solid #bfdbfe;border-radius:8px;background:#eff6ff;color:#1d4ed8;font-weight:950}.assessment-attempt-person strong,.assessment-question-item h5,.assessment-question-meta strong{overflow-wrap:anywhere}.assessment-question-meta{display:grid;grid-template-columns:minmax(0,2fr) minmax(0,1fr) minmax(80px,.5fr);gap:8px}.assessment-question-meta span{display:grid;align-content:start;gap:4px;border:1px solid #e2e8f0;border-radius:8px;background:#ffffff;padding:9px;min-width:0}.assessment-attempt-card time,.assessment-attempt-person small,.assessment-question-meta small{color:#64748b;font-weight:850}.assessment-attempt-result strong,.assessment-question-meta strong{color:#111827;font-weight:950}.assessment-attempt-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.assessment-attempt-card{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:10px;border:1px solid #dce5f0;border-radius:8px;background:#ffffff;padding:11px}.assessment-attempt-person{display:grid;grid-template-columns:40px minmax(0,1fr);align-items:center;gap:10px;min-width:0}.assessment-attempt-person>div,.assessment-attempt-result{display:grid;gap:4px;min-width:0}.assessment-attempt-result{justify-items:end}.assessment-attempt-card time{grid-column:1/-1;justify-self:end}.assessment-attempt-more,.assessment-mini-empty{display:flex;align-items:center;gap:8px;border:1px dashed #cbd5e1;border-radius:8px;background:#f8fafc;padding:10px 12px;color:#64748b;font-weight:850}.assessment-attempt-more{justify-content:center}.assessment-mini-empty svg{color:#94a3b8}.assessment-question-builder{border-top:1px solid #dce5f0;padding-top:14px}.assessment-question-builder .section-header{margin-bottom:0}.assessment-question-builder h4{margin:0;color:#111827}.assessment-question-builder svg{color:#f59e0b}.assessment-student-stat-grid article,.assessment-taking-stat-grid article{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:10px;min-height:94px;padding:13px}.assessment-student-stat-grid strong,.assessment-taking-stat-grid strong{display:block;color:#111827;font-size:1.45rem;font-weight:950;line-height:1.1;margin-top:4px}.assessment-student-card{display:grid;align-content:space-between;gap:14px;min-height:260px;padding:16px}.assessment-student-card.passed{border-color:#bdece6;background:linear-gradient(135deg,#ffffff,#ecfdf5)}.assessment-student-card.locked{background:linear-gradient(135deg,#ffffff,#f8fafc)}.assessment-student-card-head{display:flex;align-items:center;justify-content:space-between;gap:10px}.assessment-student-card-head svg{color:var(--accent)}.assessment-student-meta{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.assessment-student-meta div{display:grid;gap:4px;border:1px solid #dce5f0;border-radius:8px;background:#f8fafc;padding:9px}.assessment-student-meta strong,.assessment-student-state{color:#111827;font-weight:950}.assessment-student-state{display:inline-flex;align-items:center;justify-content:center;min-height:42px;border:1px solid #dce5f0;border-radius:8px;background:#f8fafc}.assessment-complete-panel,.assessment-empty-state{display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:12px;padding:18px}.assessment-empty-state{grid-column:1/-1;grid-template-columns:34px minmax(0,1fr)}.assessment-complete-panel svg,.assessment-empty-state svg{color:var(--accent)}.assessment-complete-panel p,.assessment-empty-state p{margin:4px 0 0}.assessment-answer-form{display:grid;gap:14px}.assessment-question-card{display:grid;gap:14px;margin:0;padding:16px}.assessment-question-card legend{display:grid;gap:5px;padding:0}.assessment-option-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.assessment-option{display:grid;grid-template-columns:20px minmax(0,1fr);align-items:center;gap:9px;min-height:48px;border:1px solid #dce5f0;border-radius:8px;background:#f8fafc;color:#111827;font-weight:900;padding:10px}.assessment-option input{width:18px;height:18px}.assessment-option span{overflow-wrap:anywhere}.assessment-submit-row{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:10px}.student-create-console,.student-registry-console{display:grid;gap:18px}.student-create-hero,.student-registry-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) minmax(210px,300px);align-items:stretch;gap:18px;overflow:hidden;border:1px solid #d9e5f1;border-radius:8px;background:linear-gradient(135deg,rgba(255,255,255,.98),rgba(240,253,244,.96)),repeating-linear-gradient(135deg,rgba(15,118,110,.075) 0 1px,transparent 1px 14px);box-shadow:var(--shadow-soft);padding:clamp(16px,2.4vw,24px)}.student-create-hero{align-items:end}.student-create-hero:before,.student-registry-hero:before{content:"";position:absolute;inset-block:0;inset-inline-start:0;width:6px;background:linear-gradient(180deg,#0f766e,#2563eb)}.student-create-copy,.student-registry-copy{position:relative;display:grid;align-content:center;gap:8px;min-width:0}.student-create-copy h2,.student-registry-copy h2{color:#111827;font-size:clamp(1.45rem,2.5vw,2.25rem);font-weight:950}.student-create-copy p:not(.eyebrow),.student-registry-copy p:not(.eyebrow){max-width:820px;margin:0;color:#56677d;font-weight:750}.student-registry-actions{position:relative;display:grid;gap:10px}.student-create-form,.student-create-guidance article,.student-inline-workflow,.student-registry-card,.student-registry-empty,.student-registry-score,.student-registry-stat-card{border:1px solid #dce5f0;border-radius:8px;background:#ffffff;box-shadow:var(--shadow-soft)}.student-registry-score{display:grid;align-content:center;gap:6px;min-height:150px;padding:18px}.student-create-guidance p,.student-registry-card p,.student-registry-contact span,.student-registry-mini-grid span,.student-registry-score small,.student-registry-score span,.student-registry-stat-card small,.student-registry-stat-card span{color:#64748b;font-weight:850}.student-registry-score strong{color:#111827;font-size:clamp(2rem,4vw,3rem);font-weight:950;line-height:1}.student-registry-grid,.student-registry-stat-grid{display:grid;gap:12px}.student-registry-stat-grid{grid-template-columns:repeat(4,minmax(0,1fr))}.student-registry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.student-registry-stat-card{display:grid;grid-template-columns:24px minmax(0,1fr);align-items:center;gap:10px;min-height:108px;padding:14px}.student-create-guidance svg,.student-registry-stat-card svg{color:var(--accent)}.student-registry-stat-card strong{display:block;color:#111827;font-size:1.6rem;font-weight:950;line-height:1.1;margin:4px 0}.student-registry-card{display:grid;align-content:start;gap:14px;min-height:360px;padding:16px}.student-registry-card-head{display:grid;grid-template-columns:46px minmax(0,1fr) auto;align-items:center;gap:10px}.student-registry-avatar{display:inline-grid;place-items:center;width:46px;height:46px;border-radius:8px;background:linear-gradient(135deg,#dbeafe,#ccfbf1);color:#0f766e;font-size:1.2rem;font-weight:950}.student-registry-card h3{overflow-wrap:anywhere;color:#111827;font-size:1.1rem;font-weight:950}.student-registry-card p{margin:4px 0 0}.student-registry-contact{display:grid;gap:7px}.student-registry-contact span{display:inline-flex;align-items:center;gap:7px;overflow-wrap:anywhere}.student-registry-contact svg{color:var(--accent)}.student-registry-mini-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.student-registry-mini-grid div{display:grid;gap:4px;border:1px solid #dce5f0;border-radius:8px;background:#f8fafc;padding:10px}.student-registry-mini-grid strong{color:#111827;font-size:1.3rem;font-weight:950}.student-registry-section{display:grid;gap:8px;min-width:0}.student-create-guidance strong,.student-registry-section>strong{color:#111827;font-weight:950}.student-registry-workflows{display:grid;gap:8px}.student-inline-workflow{overflow:hidden}.student-inline-workflow summary{display:flex;align-items:center;gap:8px;min-height:44px;color:#111827;cursor:pointer;font-weight:950;list-style:none;padding:0 12px}.student-inline-workflow summary::-webkit-details-marker{display:none}.student-inline-workflow summary svg{color:var(--accent)}.student-inline-workflow .compact-form{border-top:1px solid #dce5f0;margin-top:0;padding:12px}.student-registry-empty{grid-column:1/-1;display:grid;grid-template-columns:34px minmax(0,1fr) auto;align-items:center;gap:12px;padding:18px}.student-registry-empty svg{color:var(--accent)}.student-registry-empty strong{color:#111827;font-weight:950}.student-registry-empty p{margin:4px 0 0;color:#64748b;font-weight:850}.student-create-layout{display:grid;grid-template-columns:minmax(0,1fr) minmax(280px,360px);align-items:start;gap:16px}.student-create-form{display:grid;gap:14px;padding:clamp(14px,2vw,18px)}.student-create-form .section-header{margin-bottom:0}.student-create-form h3{color:#111827}.student-create-form .section-header svg{color:var(--accent)}.student-create-subhead{border-top:1px solid #dce5f0;padding-top:14px}.registration-mode-control{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.registration-mode-option{display:grid;grid-template-columns:auto auto minmax(0,1fr);align-items:center;gap:8px;min-height:48px;border:1px solid #cbd5e1;border-radius:6px;background:#fff;color:#334155;padding:10px 12px;font-weight:900;cursor:pointer}.registration-mode-option input{width:16px;height:16px;margin:0;accent-color:#0f766e}.registration-mode-option.active{border-color:#0f766e;background:#ecfdf5;color:#115e59}.registration-payment-fields{display:contents}.registration-result-strip{display:grid;grid-template-columns:minmax(130px,auto) minmax(0,1fr);gap:3px 12px;border-inline-start:4px solid #2563eb;background:#eff6ff;color:#1e3a8a;padding:11px 13px}.registration-result-strip strong{grid-row:span 2;align-self:center}.registration-result-strip small,.registration-result-strip span{min-width:0;overflow-wrap:anywhere}.registration-result-strip small{color:#475569;line-height:1.55}.registration-result-strip.trial{border-inline-start-color:#d97706;background:#fffbeb;color:#92400e}.registration-result-strip.paid{border-inline-start-color:#0f766e;background:#f0fdfa;color:#115e59}.registration-existing-form,.registration-payment-record,.registration-settings-band{border:1px solid #d8e2ee;border-radius:8px;background:#fff;box-shadow:0 10px 28px rgba(15,23,42,.05)}.registration-existing-form,.registration-settings-band{padding:clamp(14px,2vw,20px)}.registration-payments-header,.registration-settings-header{align-items:center}.registration-payment-stats{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}.registration-payment-stats>div{display:grid;gap:6px;min-height:86px;border-block-start:3px solid #0f766e;background:#fff;padding:13px}.registration-payment-stats span{color:#64748b;font-weight:800}.registration-payment-stats strong{color:#111827;font-size:1.55rem}.registration-payment-list,.registration-provider-list,.registration-rate-table{display:grid;gap:10px}.registration-payment-record{display:grid;gap:13px;padding:15px}.registration-payment-record>header{display:flex;align-items:flex-start;justify-content:space-between;gap:12px}.registration-payment-record h3,.registration-payment-record p{margin:0}.registration-payment-facts{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px}.registration-payment-facts span{display:grid;gap:3px;min-width:0;border-inline-start:2px solid #cbd5e1;padding-inline-start:8px;color:#64748b;overflow-wrap:anywhere}.registration-payment-facts strong{color:#1f2937}.registration-entitlement-line,.registration-refund-status{display:flex;align-items:flex-start;gap:8px;background:#f8fafc;color:#334155;padding:10px 12px}.payment-decision-controls,.payment-refund-fields,.registration-payment-actions{display:grid;gap:9px}.registration-payment-actions{grid-template-columns:max-content minmax(0,1fr);align-items:start}.payment-reject-row{display:grid;grid-template-columns:minmax(180px,1fr) max-content;gap:8px}.payment-refund-fields{grid-template-columns:minmax(180px,1fr) minmax(150px,.7fr) max-content}.form-error-text{margin:0;color:#b91c1c;font-weight:800}.registration-rate-table>div{display:grid;grid-template-columns:80px 90px minmax(150px,1fr) minmax(160px,1fr) minmax(130px,.8fr);align-items:center;gap:8px;border-bottom:1px solid #e2e8f0;padding:9px 4px}.registration-provider-list{grid-template-columns:repeat(2,minmax(0,1fr))}.registration-provider-list>div{display:grid;grid-template-columns:minmax(0,1fr) minmax(230px,1fr) auto;align-items:center;gap:10px;border-bottom:1px solid #e2e8f0;padding:10px 4px}.registration-provider-list form{display:flex;align-items:center;justify-content:space-between;gap:10px}.registration-provider-list>div>div{display:grid;gap:3px}.registration-provider-list form select{min-width:0}.diploma-certificate-list{display:grid;gap:10px;margin-bottom:14px}.diploma-certificate-list article{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:11px;border-inline-start:4px solid #0f766e;background:#f0fdfa;padding:13px}.diploma-certificate-list article>div{display:grid;gap:4px}.student-create-guidance{display:grid;gap:12px}.student-create-guidance article{display:grid;grid-template-columns:24px minmax(0,1fr);gap:10px;min-height:104px;padding:13px}.student-create-guidance p{margin:4px 0 0;line-height:1.65}@media (min-width:1120px){.portal-shell{display:grid;grid-template-columns:286px minmax(0,1fr);gap:22px;min-height:100vh;padding:18px 24px 34px}.desktop-side-nav{position:sticky;top:18px;display:grid;grid-template-rows:auto auto minmax(0,1fr) auto;gap:14px;height:calc(100vh - 36px);min-width:0;border:1px solid rgba(217,226,238,.95);border-radius:8px;background:rgba(255,255,255,.92);box-shadow:var(--shadow);padding:14px}.desktop-side-brand{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:10px;border-bottom:1px solid var(--line);padding-bottom:12px}.desktop-side-brand .brand-mark{width:42px;height:42px}.desktop-side-brand span:last-child,.desktop-side-user{display:grid;gap:2px;min-width:0}.desktop-side-brand strong,.desktop-side-user strong{overflow:hidden;color:var(--text);font-weight:900;text-overflow:ellipsis;white-space:nowrap}.desktop-side-brand small,.desktop-side-user small,.desktop-side-user span{overflow:hidden;color:var(--muted);font-size:.78rem;font-weight:900;text-overflow:ellipsis;white-space:nowrap}.desktop-side-user{border:1px solid #dce5f0;border-radius:8px;background:#f8fafc;padding:10px}.desktop-side-links{display:grid;align-content:start;gap:12px;min-height:0;overflow-y:auto;padding-inline-end:2px}.desktop-side-group{display:grid;gap:6px;min-width:0}.desktop-side-group-title{color:#526172;font-size:.7rem;font-weight:900;letter-spacing:0;padding:0 10px}.desktop-side-group-links{display:grid;gap:5px}.desktop-side-link{display:grid;grid-template-columns:30px minmax(0,1fr);align-items:center;gap:9px;min-height:40px;border:1px solid transparent;border-radius:8px;color:#526172;font-size:.9rem;font-weight:900;padding:0 10px;transition:background .14s ease,border-color .14s ease,color .14s ease,transform .14s ease}.desktop-side-link span{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.desktop-side-link svg{color:#718198}.desktop-side-link:hover,.desktop-side-link[data-active=true]{border-color:#c9d8e8;background:#eef7f8;color:var(--accent-dark);transform:translateX(-2px)}.desktop-side-link:hover svg,.desktop-side-link[data-active=true] svg{color:var(--accent)}.desktop-side-logout .button{width:100%}.bottom-nav-card,.identity-card{display:none}.portal-main{grid-column:2;width:min(100%,1440px);margin:0}}@media (max-width:1119px){.identity-card{border-radius:8px;background:rgba(255,255,255,.94)}}@media (max-width:980px){.login-experience{grid-template-columns:1fr;align-items:stretch;width:min(760px,100%)}.login-panel,.login-showcase{width:100%;max-width:none}.login-showcase-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.role-dashboard-hero{grid-template-columns:1fr}.role-dashboard-score{justify-self:start}.access-create-layout,.access-hero{grid-template-columns:1fr}.access-hero-actions{justify-content:flex-start}.access-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.access-guidance{grid-template-columns:repeat(3,minmax(0,1fr))}.audit-hero,.learning-create-layout,.learning-hero,.program-create-hero,.program-create-layout,.program-hero{grid-template-columns:1fr}.learning-hero-actions,.program-hero-actions{justify-content:flex-start}.audit-json-grid,.audit-stat-grid,.learning-path-grid,.learning-stat-grid,.program-path-grid,.program-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.learning-guidance,.program-create-guidance{grid-template-columns:repeat(3,minmax(0,1fr))}.enrollment-create-layout,.enrollment-hero{grid-template-columns:1fr}.enrollment-hero-actions{justify-content:flex-start}.enrollment-path-grid,.enrollment-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.enrollment-guidance{grid-template-columns:repeat(3,minmax(0,1fr))}.attendance-create-layout,.attendance-hero{grid-template-columns:1fr}.attendance-hero-actions{justify-content:flex-start}.attendance-session-grid,.attendance-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.attendance-guidance{grid-template-columns:repeat(3,minmax(0,1fr))}.academic-card-grid,.attendance-student-card-grid{grid-template-columns:1fr}.certificate-readiness-grid,.certificate-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.assessment-admin-hero,.assessment-create-layout,.assessment-student-hero,.assessment-taking-hero,.certificate-eligibility-grid,.finance-form-hero,.finance-form-layout,.finance-hero,.finance-list-hero,.guardian-family-hero,.guardian-notification-hero,.guardian-progress-hero,.report-hero,.student-create-hero,.student-create-layout,.student-registry-hero,.teacher-attendance-row,.teacher-group-hero,.teacher-group-layout,.teacher-submission-card{grid-template-columns:1fr}.assessment-attempt-grid,.assessment-option-grid,.assessment-stat-grid,.assessment-student-card-grid,.assessment-student-stat-grid,.assessment-taking-stat-grid,.finance-alert-grid,.finance-form-guidance,.finance-list-stat-grid,.finance-record-grid,.finance-stat-grid,.finance-workflow-grid,.guardian-family-stat-grid,.guardian-progress-layout,.guardian-student-split,.report-action-grid,.report-focus-grid,.report-signal-grid,.student-registry-grid,.student-registry-stat-grid,.teacher-group-stat-grid,.teacher-progress-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}@media (max-width:620px){.bottom-nav-card{right:8px;left:8px;width:auto;transform:none}.login-showcase-main{align-items:stretch;flex-direction:column}.login-showcase-grid{grid-template-columns:1fr}.login-brand-row{width:100%}.role-dashboard-hero,.role-workbench,.section,.student-360-hero,.student-360-panel{padding:14px}.role-dashboard-actions .button{width:100%}.role-dashboard-score{width:124px}.access-guidance,.access-stat-grid,.form-three-column,.form-two-column,.registration-mode-control,.registration-payment-facts,.registration-payment-stats,.registration-provider-list,.registration-provider-list>div,.registration-result-strip,.role-choice-grid{grid-template-columns:1fr}.registration-result-strip strong{grid-row:auto}.registration-payment-actions,.registration-payment-record>header{display:grid;grid-template-columns:1fr}.payment-refund-fields,.payment-reject-row,.registration-rate-table>div{grid-template-columns:1fr}.access-form-panel .button,.access-hero-actions .button{width:100%}.access-stat-card{min-height:98px}.role-block-header{display:grid}.audit-json-grid,.audit-stat-grid,.learning-guidance,.learning-path-grid,.learning-stat-grid,.program-create-guidance,.program-path-grid,.program-stat-grid{grid-template-columns:1fr}.learning-form-panel .button,.learning-hero-actions .button,.program-create-form .button,.program-empty-state .button,.program-hero-actions .button{width:100%}.audit-stat-card,.learning-stat-card,.program-stat-card{min-height:98px}.audit-empty-state,.audit-entry-head,.program-empty-state,.program-path-head{grid-template-columns:1fr}.audit-entry-head time,.program-path-head .badge{justify-self:start}.audit-entry-email{margin:0}.group-mini-list,.lesson-title-cell{min-width:220px}.enrollment-guidance,.enrollment-path-grid,.enrollment-stat-grid{grid-template-columns:1fr}.enrollment-form-panel .button,.enrollment-hero-actions .button{width:100%}.enrollment-stat-card{min-height:98px}.enrollment-student-cell{min-width:210px}.attendance-guidance,.attendance-mark-controls,.attendance-session-grid,.attendance-stat-grid{grid-template-columns:1fr}.attendance-form-panel .button,.attendance-hero-actions .button,.attendance-mark-panel .button{width:100%}.attendance-stat-card{min-height:98px}.attendance-teacher-chip{grid-template-columns:24px minmax(0,1fr)}.attendance-teacher-chip strong{grid-column:2}.attendance-empty-state,.attendance-mark-header,.attendance-student-card-head,.attendance-student-fields,.attendance-student-foot{grid-template-columns:1fr}.attendance-mark-header{display:grid}.attendance-student-card .badge,.attendance-student-foot strong{justify-self:start}.attendance-student-foot{align-items:flex-start;flex-direction:column}.academic-card-head{grid-template-columns:44px minmax(0,1fr)}.academic-enrollment-head{grid-template-columns:1fr}.academic-lesson-head{grid-template-columns:auto minmax(0,1fr)}.academic-card-head .badge{grid-column:1/-1;justify-self:start}.academic-card-metrics,.attendance-state-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.academic-mini-row{grid-template-columns:1fr;align-items:start}.academic-mini-row>span,.academic-mini-row>svg{justify-self:start}.academic-card-footer{align-items:stretch;flex-direction:column}.academic-card-footer .button,.academic-empty-state .button{width:100%}.academic-empty-state,.certificate-card-summary,.certificate-check-grid,.certificate-issue-fields,.certificate-readiness-grid,.certificate-revoke-form,.certificate-stat-grid{grid-template-columns:1fr}.certificate-readiness-card.wide{grid-column:auto}.certificate-check-grid{min-width:220px}.certificate-card-head,.certificate-empty-state{grid-template-columns:1fr}.certificate-card-head .badge{justify-self:start}.certificate-revoke-form .button{width:100%}.assessment-attempt-grid,.assessment-meta-grid,.assessment-option-grid,.assessment-question-meta,.assessment-stat-grid,.assessment-student-card-grid,.assessment-student-stat-grid,.assessment-taking-stat-grid,.finance-alert-grid,.finance-form-guidance,.finance-list-stat-grid,.finance-record-grid,.finance-stat-grid,.finance-workflow-grid,.guardian-family-hero,.guardian-family-stat-grid,.guardian-notification-hero,.guardian-progress-hero,.guardian-progress-layout,.guardian-student-split,.report-action-grid,.report-focus-grid,.report-signal-grid,.student-create-layout,.student-registry-grid,.student-registry-mini-grid,.student-registry-stat-grid,.teacher-attendance-row,.teacher-group-hero,.teacher-group-layout,.teacher-progress-grid,.teacher-submission-card{grid-template-columns:1fr}.assessment-stat-card,.assessment-student-card,.finance-alert-card,.finance-list-stat-card,.finance-record-card,.finance-stat-card,.guardian-family-stat-card,.report-focus-card,.student-registry-card,.student-registry-stat-card{min-height:98px}.finance-alert-card.wide{grid-column:auto}.finance-form-hero .button,.finance-form-panel .button,.finance-list-hero .button,.finance-record-card .button,.guardian-family-actions .button,.guardian-mini-panel .button,.guardian-notification-action .button,.teacher-grade-form .button,.teacher-group-actions .button,.teacher-session-card .button,.teacher-session-composer .button{width:100%}.finance-empty-state,.finance-record-head,.guardian-assessment-item,.guardian-enrollment-item,.guardian-mini-head,.guardian-notification-card-head,.guardian-progress-card-head,.guardian-student-head,.guardian-timeline-item,.teacher-attendance-controls,.teacher-panel-head,.teacher-progress-card-head,.teacher-section-head,.teacher-session-card-head,.teacher-submission-head{grid-template-columns:1fr}.finance-record-head .badge{justify-self:start}.teacher-group-stat-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.guardian-family-summary,.guardian-notification-summary,.guardian-progress-card-head strong,.guardian-progress-score,.guardian-student-head strong,.teacher-group-readiness,.teacher-progress-card-head strong,.teacher-session-meter{justify-self:start}.teacher-lesson-row strong{white-space:normal}.guardian-assessment-badges{justify-content:flex-start}.assessment-attempt-card,.assessment-card-head,.assessment-complete-panel,.assessment-detail-head,.assessment-empty-state,.assessment-status-form,.student-registry-card-head,.student-registry-empty{grid-template-columns:1fr}.assessment-pass-chip{place-items:start;text-align:right}.assessment-status-form .button,.assessment-submit-row .button,.finance-hero-actions .button,.student-create-form .button,.student-registry-actions .button,.student-registry-card-head .button{width:100%}.student-registry-avatar{width:42px;height:42px}}main.login-page.login-page-clean{min-height:100dvh;display:grid;place-items:center;padding:clamp(20px,5vw,48px);background:radial-gradient(circle at 18% 14%,rgba(14,165,233,.18),transparent 32%),radial-gradient(circle at 84% 82%,rgba(16,185,129,.16),transparent 34%),linear-gradient(135deg,#f7fbff,#eef7f5)}.login-clean-shell{width:min(430px,100%);display:grid;gap:14px}.login-welcome-card{border:1px solid rgba(255,255,255,.72);border-radius:16px;background:rgba(255,255,255,.44);box-shadow:0 18px 50px rgba(15,23,42,.12);backdrop-filter:blur(18px);-webkit-backdrop-filter:blur(18px);padding:18px 20px;text-align:center}.login-welcome-card h1{margin:0;color:#0f172a;font-size:clamp(1.35rem,5vw,2rem);font-weight:900;line-height:1.25}.login-panel.login-panel-clean{width:100%;max-width:none;display:grid;gap:16px;border:1px solid rgba(219,230,239,.92);border-radius:16px;background:rgba(255,255,255,.96);box-shadow:0 24px 70px rgba(15,23,42,.14);padding:clamp(22px,5vw,30px)}.login-panel-clean .login-panel-head{justify-content:center}.login-panel-clean .brand-mark{width:54px;height:54px;border-radius:14px;font-size:1.45rem}.login-panel-clean h2{margin:0;color:#0f172a;font-size:clamp(1.35rem,4vw,1.7rem);font-weight:900;text-align:center}.login-panel-clean .form-stack{margin-top:0;gap:14px}.login-panel-clean .button.full{min-height:48px;justify-content:center}.student-learn-shell:has(.lesson-app-flow),:root[data-theme=dark] .student-learn-shell:has(.lesson-app-flow){background:radial-gradient(circle at 14% 8%,rgba(96,165,250,.18),transparent 30%),radial-gradient(circle at 86% 22%,rgba(34,197,94,.13),transparent 28%),linear-gradient(180deg,#f7fbff,#eef7ff 54%,#f8fcff)!important;color:#16223b!important}.student-lesson-primary.section,:root[data-theme=dark] .student-lesson-primary.section{border:0!important;background:transparent!important;box-shadow:none!important}.lesson-app-flow,:root[data-theme=dark] .lesson-app-flow{color:#16223b!important}.lesson-app-flow .lesson-app-header,:root[data-theme=dark] .lesson-app-flow .lesson-app-header{grid-template-rows:44px 6px!important;align-content:center!important;align-self:start!important;min-height:0!important;height:auto!important}.lesson-app-flow .lesson-app-title h1,.lesson-app-flow .lesson-dialog-card strong,.lesson-app-flow .lesson-target-card strong,:root[data-theme=dark] .lesson-app-flow .lesson-app-title h1,:root[data-theme=dark] .lesson-app-flow .lesson-dialog-card strong,:root[data-theme=dark] .lesson-app-flow .lesson-target-card strong{color:#16223b!important}.lesson-app-flow .lesson-app-title span,:root[data-theme=dark] .lesson-app-flow .lesson-app-title span{color:#6f7b91!important}.lesson-app-flow .lesson-hero-card,:root[data-theme=dark] .lesson-app-flow .lesson-hero-card{background:radial-gradient(circle at 14% 12%,rgba(59,130,246,.14),transparent 30%),linear-gradient(180deg,#eef7ff,#f8fcff)!important;color:#16223b!important}.lesson-app-flow .lesson-target-card,.lesson-app-flow .pronunciation-result-card,.lesson-app-flow .teacher-tip-card,:root[data-theme=dark] .lesson-app-flow .lesson-target-card,:root[data-theme=dark] .lesson-app-flow .pronunciation-result-card,:root[data-theme=dark] .lesson-app-flow .teacher-tip-card{background:#ffffff!important;color:#16223b!important}:root{--ux-ease-standard:cubic-bezier(0.2,0.8,0.2,1);--ux-ease-emphasized:cubic-bezier(0.16,1,0.3,1);--ux-motion-fast:150ms;--ux-motion-page:300ms}.portal-shell{isolation:isolate}.portal-main>*{will-change:auto}.student-learn-shell .portal-main{scroll-margin-top:max(16px,env(safe-area-inset-top))}.bottom-nav-link,.button,.desktop-side-link,.more-drawer-link,.student-achievement-preview a,.student-course-card,.student-play-button,.student-section-title a,.student-unit-card{touch-action:manipulation}.bottom-nav-link:active,.button:active,.desktop-side-link:active,.more-drawer-link:active,.student-achievement-preview a:active,.student-course-card:active,.student-play-button:active,.student-section-title a:active,.student-unit-card:active{transform:translateY(0) scale(.985)}.bottom-nav-link:focus-visible,.button:focus-visible,.desktop-side-link:focus-visible,.field input:focus-visible,.field select:focus-visible,.field textarea:focus-visible,.more-drawer-link:focus-visible,.student-achievement-preview a:focus-visible,.student-course-card:focus-visible,.student-play-button:focus-visible,.student-section-title a:focus-visible,.student-unit-card:focus-visible{outline:3px solid color-mix(in srgb,var(--accent-cyan) 54%,transparent);outline-offset:3px}.desktop-side-nav,.identity-card,.student-achievement-preview,.student-continue-card,.student-course-card,.student-glass-hero,.student-learn-stats article,.student-unit-card{transform:none}.bottom-nav-card{--bottom-nav-resting-transform:translateZ(0);transform:var(--bottom-nav-resting-transform)}.student-learn-shell .bottom-nav-card{right:50%;left:auto;width:min(456px,calc(100vw - 24px));--bottom-nav-resting-transform:translateX(50%) translateZ(0);transform:var(--bottom-nav-resting-transform)}.student-learn-shell .bottom-nav-link{position:relative;overflow:hidden}.student-learn-shell .bottom-nav-link[data-active=true]:after{inset-inline-start:50%;transform:translateX(-50%)}.student-progress-line i{transform-origin:right center}.login-panel-clean .field{color:var(--text)}.login-panel-clean .field>span:not(.password-control){color:var(--text);opacity:.86}.login-panel-clean .field input::placeholder{color:color-mix(in srgb,var(--muted) 78%,var(--text));opacity:1}:root[data-theme=dark] .login-panel-clean .field>span:not(.password-control){color:color-mix(in srgb,var(--text) 88%,#ffffff);opacity:1}:root[data-theme=dark] .login-panel-clean .field input::placeholder{color:color-mix(in srgb,var(--muted) 72%,#ffffff)}.student-achievement-preview,.student-continue-card,.student-course-card,.student-unit-card{transition:transform var(--ux-motion-standard) var(--ux-ease-emphasized),box-shadow var(--ux-motion-standard) ease}@media (hover:hover){.student-achievement-preview:has(a:hover),.student-continue-card:has(.student-play-button:hover),.student-course-card:hover,.student-unit-card:hover{transform:translateY(-3px);box-shadow:var(--shadow-lift)}.bottom-nav-link:hover,.student-play-button:hover{transform:translateY(-2px)}}@media (prefers-reduced-motion:no-preference){.login-clean-shell,.portal-main>*{animation-duration:var(--ux-motion-page);animation-timing-function:var(--ux-ease-emphasized)}.student-learn-home>*{animation:student-surface-in var(--ux-motion-page) var(--ux-ease-standard) both}.student-learn-home>:nth-child(2){animation-delay:32ms}.student-learn-home>:nth-child(3){animation-delay:64ms}.student-learn-home>:nth-child(4){animation-delay:92ms}.student-learn-home>:nth-child(n+5){animation-delay:112ms}.bottom-nav-card{animation:student-nav-in .28s var(--ux-ease-emphasized) both}.student-progress-line i{animation:student-progress-fill .56s var(--ux-ease-emphasized) both}.student-avatar-bubble img,.student-continue-thumb img,.student-glass-hero-image img{transition:transform .22s var(--ux-ease-standard),filter .22s var(--ux-ease-standard)}.student-continue-card:has(.student-play-button:hover) .student-continue-thumb img{transform:scale(1.025)}}@keyframes student-surface-in{0%{opacity:0;transform:translate3d(0,8px,0)}to{opacity:1;transform:translateZ(0)}}@keyframes student-nav-in{0%{opacity:0;transform:var(--bottom-nav-resting-transform) translateY(12px)}to{opacity:1;transform:var(--bottom-nav-resting-transform)}}@keyframes student-progress-fill{0%{transform:scaleX(.2)}to{transform:scaleX(1)}}.identity-theme{align-items:center;gap:8px}.identity-utility-actions{display:inline-flex;align-items:center;justify-content:center}.student-sound-toggle{display:inline-grid;width:36px;height:36px;place-items:center;border:1px solid color-mix(in srgb,var(--line) 78%,transparent);border-radius:999px;background:color-mix(in srgb,var(--surface) 90%,transparent);color:color-mix(in srgb,var(--text) 76%,var(--muted));box-shadow:var(--shadow-soft);cursor:pointer;transition:background .15s var(--ux-ease-standard),border-color .15s var(--ux-ease-standard),box-shadow .15s var(--ux-ease-standard),color .15s var(--ux-ease-standard),transform .15s var(--ux-ease-standard)}.student-sound-toggle.is-on{border-color:color-mix(in srgb,var(--accent-cyan) 46%,var(--line));background:color-mix(in srgb,var(--accent-cyan) 13%,var(--surface));color:var(--accent-dark)}.student-sound-toggle:focus-visible{outline:3px solid color-mix(in srgb,var(--accent-cyan) 54%,transparent);outline-offset:3px}.student-celebration-layer{position:fixed;inset:0;z-index:90;pointer-events:none}.student-celebration-burst{position:absolute;top:46%;left:50%;width:1px;height:1px;transform:translate(-50%,-50%)}.student-celebration-burst.complete{top:42%}.student-celebration-pop{position:absolute;top:50%;left:50%;display:grid;width:56px;height:56px;place-items:center;border:3px solid #ffffff;border-radius:999px;background:linear-gradient(135deg,#16a34a,#0ea5e9);color:#ffffff;font-size:1.6rem;font-weight:950;box-shadow:0 18px 38px rgba(14,165,233,.28),0 0 0 12px rgba(34,197,94,.12);transform:translate(-50%,-50%) scale(.72);animation:student-success-pop .72s var(--ux-ease-emphasized) both}.student-celebration-burst i{position:absolute;top:50%;left:50%;display:block;width:8px;height:14px;border-radius:3px;background:var(--piece-color);box-shadow:0 6px 14px color-mix(in srgb,var(--piece-color) 28%,transparent);opacity:0;transform:translate(-50%,-50%) rotate(var(--piece-angle));animation:student-confetti-fly .98s var(--ux-ease-emphasized) var(--piece-delay) both}.student-learn-shell .button:not(:disabled),.student-learn-shell .extra-activity-options label,.student-learn-shell .lesson-choice-option:not(:disabled),.student-learn-shell .unit-flow-option-grid label,.student-learn-shell .unit-flow-step-list button:not(:disabled),.student-sound-toggle{will-change:auto}.student-learn-shell .extra-activity-options label,.student-learn-shell .unit-flow-option-grid label{position:relative;overflow:hidden;transition:background .16s var(--ux-ease-standard),border-color .16s var(--ux-ease-standard),box-shadow .16s var(--ux-ease-standard),transform .16s var(--ux-ease-standard)}.student-learn-shell .extra-activity-options label:has(input:checked),.student-learn-shell .unit-flow-option-grid label:has(input:checked){border-color:color-mix(in srgb,var(--accent) 62%,var(--line));background:color-mix(in srgb,var(--accent) 11%,var(--surface));box-shadow:0 12px 26px color-mix(in srgb,var(--accent) 13%,transparent);transform:translateY(-1px)}.student-learn-shell .button:not(:disabled):active,.student-learn-shell .extra-activity-options label:active,.student-learn-shell .lesson-choice-option:not(:disabled):active,.student-learn-shell .unit-flow-option-grid label:active,.student-sound-toggle:active{transform:translateY(1px) scale(.985)}.unit-flow-recorder .button.danger:after,.voice-mic-button.is-recording:before{animation:student-record-pulse .98s ease-out infinite}.unit-flow-recorder .button.danger{position:relative;isolation:isolate}.unit-flow-recorder .button.danger:after{position:absolute;inset:-6px;z-index:-1;border:1px solid rgba(239,68,68,.28);border-radius:inherit;content:""}.extra-activity-result.passed,.unit-flow-feedback.passed{animation:student-success-soft-pop .54s var(--ux-ease-emphasized) both}@media (hover:hover){.student-learn-shell .extra-activity-options label:hover,.student-learn-shell .lesson-choice-option:not(:disabled):hover,.student-learn-shell .unit-flow-option-grid label:hover,.student-learn-shell .unit-flow-step-list button:not(:disabled):hover,.student-sound-toggle:hover{transform:translateY(-2px)}.student-sound-toggle:hover{border-color:color-mix(in srgb,var(--accent-cyan) 52%,var(--line));background:color-mix(in srgb,var(--accent-cyan) 10%,var(--surface))}.student-learn-shell .button:not(:disabled):hover{transform:translateY(-2px);box-shadow:var(--shadow-lift)}}@keyframes student-success-pop{0%{opacity:0;transform:translate(-50%,-50%) scale(.56)}44%{opacity:1;transform:translate(-50%,-50%) scale(1.08)}to{opacity:0;transform:translate(-50%,-50%) scale(.92)}}@keyframes student-confetti-fly{0%{opacity:0;transform:translate(-50%,-50%) rotate(var(--piece-angle)) translateY(0) scale(.54)}12%{opacity:1}to{opacity:0;transform:translate(-50%,-50%) rotate(var(--piece-angle)) translateY(var(--piece-distance)) scale(.92)}}@keyframes student-record-pulse{0%{opacity:.9;transform:scale(.98)}to{opacity:0;transform:scale(1.18)}}@keyframes student-success-soft-pop{0%{transform:scale(.985)}60%{transform:scale(1.012)}to{transform:scale(1)}}.lesson-video-activity{align-content:start}.lesson-video-activity .lesson-listen-fab{display:none}@media (max-width:680px){.student-lesson-primary .interactive-lesson-flow{align-content:start;gap:10px}.lesson-video-activity{--lesson-video-mobile-width:min(560px,calc(100vw - 28px));gap:10px;justify-items:center}.lesson-video-activity .lesson-hero-card{width:var(--lesson-video-mobile-width);min-height:0;aspect-ratio:16/9;margin-inline:calc((100% - var(--lesson-video-mobile-width)) / 2);border-radius:22px}.lesson-video-activity .lesson-hero-video,.student-page-loading .lesson-video-activity .lesson-hero-video{height:auto;min-height:0;aspect-ratio:16/9;border-radius:inherit}.lesson-video-activity .flow-actions{width:var(--lesson-video-mobile-width);margin-inline:calc((100% - var(--lesson-video-mobile-width)) / 2)}.lesson-video-activity .flow-actions .button{flex:1 1 100%;min-height:48px;justify-content:center}}@media (prefers-reduced-motion:reduce){html:focus-within{scroll-behavior:auto}.login-page-clean *,.login-page-clean :after,.login-page-clean :before,.portal-shell *,.portal-shell :after,.portal-shell :before{animation-duration:1ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:1ms!important}.extra-activity-result.passed,.student-celebration-burst i,.student-celebration-pop,.unit-flow-feedback.passed,.unit-flow-recorder .button.danger:after,.voice-mic-button.is-recording:before{animation:none!important}.student-celebration-pop{opacity:.92;transform:translate(-50%,-50%) scale(1)}.student-celebration-burst i{display:none}}.certificate-page{width:min(1040px,100%);padding:clamp(16px,3vw,34px);direction:rtl}.verify-document{gap:22px;min-height:auto;padding:clamp(20px,3vw,34px)}.verify-document .certificate-topline{align-items:center;padding-bottom:16px;border-bottom:1px solid var(--line)}.verify-document .certificate-topline h1{margin:2px 0 0;font-size:clamp(1.45rem,3vw,2rem)}.certificate-status-band{display:grid;grid-template-columns:auto minmax(0,1fr);align-items:center;gap:16px;border:1px solid #bbf7d0;border-radius:8px;background:#f0fdf4;padding:18px}.certificate-status-band.missing,.certificate-status-band.revoked{border-color:#fecdd3;background:#fff1f2}.certificate-status-icon{display:grid;place-items:center;width:58px;height:58px;border-radius:8px;background:#dcfce7;color:#166534}.certificate-status-band.missing .certificate-status-icon,.certificate-status-band.revoked .certificate-status-icon{background:#ffe4e6;color:#be123c}.certificate-status-band h2,.certificate-status-band p{margin:0}.certificate-status-band h2{font-size:clamp(1.35rem,3vw,2rem);color:#14532d}.certificate-document .certificate-status-band h2{color:#14532d!important}.certificate-status-band p{margin-top:6px;color:#166534;font-weight:700}.certificate-status-band.missing h2,.certificate-status-band.revoked h2{color:#9f1239}.certificate-document .certificate-status-band.missing h2,.certificate-document .certificate-status-band.revoked h2{color:#9f1239!important}.certificate-status-band.missing p,.certificate-status-band.revoked p{color:#be123c}.certificate-subject{display:grid;grid-template-columns:minmax(0,1.05fr) minmax(0,.95fr);gap:14px}.certificate-subject>div{min-width:0;border:1px solid var(--line);border-radius:8px;background:var(--surface-soft);padding:16px}.certificate-detail-item span,.certificate-section-title p,.certificate-subject span{color:var(--muted)}.certificate-subject h2,.certificate-subject p,.certificate-subject strong{overflow-wrap:anywhere}.certificate-subject h2{margin:8px 0 0;font-size:clamp(1.45rem,3vw,2.2rem);line-height:1.25}.certificate-subject strong{display:block;margin-top:8px;font-size:clamp(1.1rem,2.4vw,1.55rem);line-height:1.35}.certificate-subject p{margin:8px 0 0;color:var(--muted);font-weight:800}.certificate-section-title{display:flex;align-items:flex-end;justify-content:space-between;gap:14px;padding-top:4px}.certificate-section-title h3,.certificate-section-title p{margin:0}.verify-grid{grid-template-columns:repeat(4,minmax(0,1fr));direction:rtl}.certificate-detail-item{min-width:0}.certificate-detail-item strong{overflow-wrap:anywhere;line-height:1.35}.certificate-revocation-reason{margin:0}@media (max-width:760px){.certificate-section-title,.verify-document .certificate-topline{align-items:flex-start;flex-direction:column}.certificate-status-band,.certificate-subject,.verify-grid{grid-template-columns:1fr}.certificate-status-band{text-align:center}.certificate-status-icon{margin-inline:auto}}.lesson-branch-activity,.lesson-quiz-activity,.lesson-ready-activity{gap:18px}.lesson-choice-list{display:grid;gap:10px}.lesson-number-streak-value{display:grid;place-items:center;width:min(100%,15rem);min-height:8rem;margin:0 auto 1rem;border:1px solid rgba(37,99,235,.18);border-radius:1.5rem;background:linear-gradient(145deg,rgba(219,234,254,.92),rgba(255,255,255,.98));color:#1d4ed8;font-size:clamp(3rem,12vw,5.5rem);font-weight:900;line-height:1;box-shadow:0 18px 40px rgba(37,99,235,.12)}:root[data-theme=dark] .lesson-number-streak-value{border-color:rgba(96,165,250,.28);background:linear-gradient(145deg,rgba(30,64,175,.28),rgba(15,23,42,.94));color:#bfdbfe}.lesson-choice-option{width:100%;min-height:54px;border:1px solid rgba(15,23,42,.14);border-radius:8px;background:#fff;color:#0f172a;cursor:pointer;font:inherit;font-weight:800;padding:12px 14px;text-align:start;transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.lesson-choice-option.is-selected,.lesson-choice-option:hover{border-color:#12b76a;box-shadow:0 10px 24px rgba(18,183,106,.14);transform:translateY(-1px)}.lesson-text-answer input{direction:ltr;text-align:left}.lesson-ready-button{min-height:62px;justify-content:center;width:100%}:root[data-theme=dark] .lesson-choice-option{background:rgba(15,23,42,.92);border-color:rgba(226,232,240,.18);color:#e2e8f0}.bottom-nav-link,.desktop-side-link,.more-drawer-link{position:relative}.portal-nav-count{position:absolute;inset-block-start:3px;inset-inline-end:3px;z-index:2;display:none;min-width:18px;height:18px;align-items:center;justify-content:center;border:2px solid var(--surface);border-radius:999px;background:#dc2626;color:#fff!important;font-size:.62rem!important;font-weight:950;line-height:1;padding-inline:3px;box-shadow:0 4px 10px rgba(220,38,38,.3)}.portal-nav-count.is-visible{display:inline-flex}.notification-center-page{display:grid;gap:18px;width:min(100%,920px);margin-inline:auto;padding-bottom:24px}.notification-center-hero{position:relative;display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:22px;overflow:hidden;border:1px solid color-mix(in srgb,var(--accent-indigo) 24%,var(--line));border-radius:24px;background:radial-gradient(circle at 10% 20%,color-mix(in srgb,var(--accent-cyan) 18%,transparent),transparent 34%),linear-gradient(145deg,color-mix(in srgb,var(--surface) 94%,var(--accent-indigo) 6%),var(--surface));padding:clamp(20px,4vw,34px);box-shadow:var(--shadow)}.notification-center-hero h1{max-width:680px;margin:8px 0;color:var(--text);font-size:clamp(1.45rem,3vw,2.25rem);line-height:1.3}.notification-center-hero p{max-width:700px;margin:0;color:var(--muted);line-height:1.8}.notification-center-kicker{display:inline-flex;align-items:center;gap:7px;color:var(--accent-dark);font-size:.82rem;font-weight:950}.notification-center-summary{display:grid;place-items:center;min-width:104px;min-height:104px;border:1px solid color-mix(in srgb,var(--accent-indigo) 28%,transparent);border-radius:50%;background:color-mix(in srgb,var(--surface) 80%,transparent);box-shadow:var(--shadow-soft)}.notification-center-summary strong{color:var(--accent-indigo);font-size:2rem;line-height:1}.notification-center-summary span{color:var(--muted);font-size:.74rem;font-weight:900}.notification-center-toolbar{display:flex;flex-wrap:wrap;justify-content:flex-end;gap:9px}.notification-center-toolbar .button{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:44px}.notification-center-error{margin:0;border:1px solid color-mix(in srgb,var(--danger) 35%,var(--line));border-radius:12px;background:color-mix(in srgb,var(--danger) 8%,var(--surface));color:var(--danger);padding:12px 14px;font-weight:800}.notification-center-list{display:grid;gap:10px}.notification-center-item{display:grid;grid-template-columns:auto minmax(0,1fr) auto;align-items:center;gap:13px;width:100%;border:1px solid var(--line);border-radius:17px;background:var(--surface);color:var(--text);cursor:pointer;font:inherit;padding:15px;text-align:start;box-shadow:var(--shadow-soft);transition:border-color .16s ease,box-shadow .16s ease,transform .16s ease}.notification-center-item:hover{border-color:color-mix(in srgb,var(--accent) 45%,var(--line));box-shadow:var(--shadow);transform:translateY(-1px)}.notification-center-item.is-unread{border-color:color-mix(in srgb,var(--accent-indigo) 42%,var(--line));background:linear-gradient(135deg,color-mix(in srgb,var(--accent-indigo) 8%,var(--surface)),var(--surface))}.notification-center-item:disabled{cursor:default;opacity:.84}.notification-center-icon{display:grid;place-items:center;width:42px;height:42px;border-radius:13px;background:color-mix(in srgb,var(--accent-indigo) 12%,var(--surface-soft));color:var(--accent-indigo)}.notification-center-copy{display:grid;gap:5px;min-width:0}.notification-center-title-row{display:flex;align-items:center;gap:8px}.notification-center-title-row strong{overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.notification-center-title-row em{flex:0 0 auto;border-radius:999px;background:color-mix(in srgb,var(--accent-indigo) 12%,var(--surface-soft));color:var(--accent-indigo);font-size:.7rem;font-style:normal;font-weight:950;padding:2px 7px}.notification-center-copy>span:not(.notification-center-title-row){overflow:hidden;color:var(--muted);line-height:1.55;text-overflow:ellipsis;white-space:nowrap}.notification-center-copy small{color:var(--muted);font-size:.72rem;font-weight:750}.notification-center-status{border-radius:999px;background:var(--surface-soft);color:var(--muted);font-size:.7rem;font-weight:900;padding:5px 9px}.notification-center-status.is-unread{background:color-mix(in srgb,var(--accent) 14%,var(--surface));color:var(--accent-dark)}.notification-center-empty{display:grid;place-items:center;gap:7px;min-height:240px;border:1px dashed color-mix(in srgb,var(--line) 85%,var(--accent));border-radius:20px;background:color-mix(in srgb,var(--surface) 88%,transparent);color:var(--muted);text-align:center}.notification-center-empty strong{color:var(--text)}@media (max-width:620px){.notification-center-hero{grid-template-columns:minmax(0,1fr) auto;gap:12px;border-radius:19px;padding:18px}.notification-center-summary{min-width:76px;min-height:76px}.notification-center-summary strong{font-size:1.55rem}.notification-center-item{grid-template-columns:auto minmax(0,1fr);align-items:start}.notification-center-status{grid-column:2;justify-self:start}}.lesson-app-flow.pronunciation-ui-v2-enabled{--lesson-blue:#1d4ed8;--lesson-green:#15803d;--lesson-ink:#172033;--lesson-muted:#475569;--lesson-line:#d9e3ef;container-type:inline-size}.lesson-voice-activity.pronunciation-ui-v2{min-height:0;align-content:start}.lesson-voice-activity.pronunciation-ui-v2 .voice-mic-button{width:108px!important;height:108px!important}.lesson-voice-activity.pronunciation-ui-v2 .flow-actions:after{display:none;content:none}.lesson-app-flow .pronunciation-ui-v2 .pronunciation-result-card{background:#f7fdf9!important}.lesson-app-flow .pronunciation-ui-v2 .pronunciation-result-card.is-processing{background:#f7faff!important}.lesson-voice-activity.pronunciation-ui-v2 .pronunciation-actions .pronunciation-skip-action{min-height:40px!important}@media (min-width:760px){.student-learn-shell .portal-main:has(.lesson-app-flow.pronunciation-ui-v2-enabled){width:min(100%,820px);padding-inline:20px}.lesson-voice-activity.pronunciation-ui-v2{grid-template-columns:minmax(0,1fr)}.pronunciation-ui-v2 .pronunciation-prompt-card,.pronunciation-ui-v2 .pronunciation-recorder-card{min-height:0}}@container (min-width: 700px){.lesson-voice-activity.pronunciation-ui-v2{grid-template-columns:minmax(0,1.08fr) minmax(280px,.92fr)}.pronunciation-ui-v2 .pronunciation-prompt-card,.pronunciation-ui-v2 .pronunciation-recorder-card{min-height:330px}}@media (max-width:420px){.lesson-voice-activity.pronunciation-ui-v2 .voice-mic-button{width:96px!important;height:96px!important}}.recoverable-form-alert{display:grid;gap:8px;scroll-margin-block:24px}.recoverable-form-alert-reason,.recoverable-form-alert-resolution p,.recoverable-form-alert-title{margin:0}.recoverable-form-alert-title{font-size:1.04rem;font-weight:900}.recoverable-form-alert-reason,.recoverable-form-alert-resolution{line-height:1.65}.recoverable-form-alert-resolution{display:grid;gap:2px}.recoverable-form-alert ul{display:grid;gap:5px;margin:0;padding-inline-start:20px}.recoverable-form-alert button{border:0;background:transparent;color:inherit;cursor:pointer;font:inherit;font-weight:800;padding:0;text-align:start;text-decoration:underline;text-underline-offset:3px}.recoverable-form-alert small{color:inherit;font-weight:700}.recoverable-form-alert-code{direction:ltr;font-size:.78rem;opacity:.82;width:fit-content}.field.field-invalid input,.field.field-invalid select,.field.field-invalid textarea{border-color:var(--danger);outline:3px solid rgba(180,35,24,.12)}form[aria-busy=true]{cursor:progress}