/* Sixstep visual identity: expressive course chrome, quiet working surfaces. */
:root{--ui-ink:#20284a;--ui-muted:#68758d;--ui-blue:#315cf5;--ui-blue-soft:#eef1ff;--ui-border:#e3e7f2;--ui-surface:#fff;--ui-bg:#f3f5fc;--ui-radius:16px;--ui-good:#128470;--ui-warn:#a36224;--ui-danger:#c34d5b;--blue:#315cf5;--blue-dark:#2448d0;--text:#20284a;--muted:#68758d;--line:#e3e7f2;--radius:16px;--shadow-soft:0 6px 24px #25366708;--shadow-lift:0 10px 28px #263d7512}
body{background:var(--ui-bg);color:var(--ui-ink);font-family:"Segoe UI","Microsoft YaHei","PingFang SC",sans-serif;line-height:1.6}
button{transition:background-color .18s,color .18s,border-color .18s,box-shadow .18s}
button:focus-visible,a:focus-visible,summary:focus-visible{outline:3px solid #809aff;outline-offset:3px}
button:active:not(:disabled){filter:brightness(.95)}
.pill{border-radius:6px;letter-spacing:.15px;padding:4px 9px;font-size:12px}
.panel{border:1px solid var(--ui-border);border-radius:16px;box-shadow:var(--shadow-soft);background:#fff}
.panel-pad{padding:26px}.panel h3{color:var(--ui-ink)}
.btn{border-radius:11px;min-height:48px;font-size:14px;padding:12px 20px;font-weight:600;gap:8px}
.btn.primary{background:var(--ui-blue);box-shadow:0 5px 13px #315cf525;border:1px solid transparent}
.btn.primary:hover:not(:disabled){background:#2448d0;box-shadow:0 6px 18px #315cf535}
.btn.outline,.btn.secondary{background:white;border:1px solid #d8dff2;color:#3155bd}
.text-button{color:var(--ui-blue);font-size:14px;font-weight:500}.icon-button{color:#68758d}

/* Original left navigation and subject hierarchy, with a clear brand. */
.rail{width:92px;padding:23px 10px;background:#182859;color:#c6d2f7;border:0;box-shadow:5px 0 25px #18285909}
.brand{font-size:25px;font-weight:800;letter-spacing:2px;line-height:1.3;margin:0 0 8px;color:white;gap:0}
.rail-role{font-size:10px;letter-spacing:3px;color:#92a7dd;margin:0 0 28px}
.rail-item{width:72px;min-height:74px;margin:0 0 10px;border-radius:14px;color:#b8c7ed;gap:8px;position:relative}
.rail-item svg{width:22px;height:22px}.rail-item span{font-size:12px;font-weight:500}
.rail-item.active{background:#315cf5;color:#fff;box-shadow:0 8px 20px #08133335}
.rail-item.active::after{content:"";position:absolute;width:4px;height:18px;border-radius:4px;background:#95f0da;right:-10px;top:28px}
.rail-item:hover:not(.active){background:#ffffff0c;color:#fff}.rail-bottom .rail-item{min-height:58px}
.workspace[data-view-role="student"]{margin-left:92px;background:var(--ui-bg)}
.workspace[data-view-role="student"] .topbar{height:58px;background:#fff;border-bottom:1px solid #e8ebf5;box-shadow:none;padding:0 26px}
.workspace[data-view-role="student"] .breadcrumb{font-size:15px;color:#263459;letter-spacing:.2px;font-weight:600}
.workspace[data-view-role="student"] .breadcrumb>span:first-child::before{color:#6d7eaa;font-size:17px}
.workspace[data-view-role="student"] .topbar-right{gap:16px}
.workspace[data-view-role="student"] .role-switch{background:#f0f3fc;border:1px solid #e7ebf7;padding:3px;border-radius:10px;gap:2px}
.workspace[data-view-role="student"] .role-switch>span{font-size:11px;color:#76829a}
.workspace[data-view-role="student"] .role-switch button{font-size:12px;padding:5px 13px;border-radius:7px;color:#6c7891;min-height:34px}
.workspace[data-view-role="student"] .role-switch button.active{background:#fff;color:#315cf5;box-shadow:0 2px 6px #2638750d}
.workspace[data-view-role="student"] .avatar-circle{background:#e9efff;color:#315cf5;border:0;border-radius:11px;width:36px;height:36px;font-size:15px}
.workspace[data-view-role="student"] .avatar-text b{font-size:13px;color:#273658}.workspace[data-view-role="student"] .avatar-text small{font-size:11px;color:#7a86a0}
.workspace[data-view-role="student"] .prototype-print{border:1px solid #e0e6f4;border-radius:9px;background:white;color:#617394;min-height:38px;padding:8px 14px;font-size:12px}
.workspace[data-view-role="student"] .subjectbar{position:relative;inset:auto;height:47px;background:#fff;border-bottom:1px solid #e3e8f4;padding:0 26px;justify-content:flex-start;gap:30px}
.workspace[data-view-role="student"] .subjectbar button{height:47px;min-height:44px;position:relative;font-size:14px;font-weight:500;color:#78849b;padding:0 5px;background:none;border:0}
.workspace[data-view-role="student"] .subjectbar button.active{color:#315cf5;font-weight:700}
.workspace[data-view-role="student"] .subjectbar button.active::after{content:"";position:absolute;left:5px;right:5px;height:3px;border-radius:3px 3px 0 0;background:#315cf5;bottom:0}
.workspace[data-view-role="student"] .layout{min-height:calc(100dvh - 105px);gap:0}
.workspace[data-view-role="student"] .main{padding:22px 26px 26px;max-width:none;min-width:0}

/* The course identity is a compact cover, not another white form. */
.main:has(.stepper)>.page-heading{display:flex;align-items:center;position:relative;isolation:isolate;overflow:hidden;min-height:105px;margin:0 0 18px;padding:19px 24px;border-radius:18px;background:#20346d;box-shadow:0 8px 24px #192d6312;color:#fff;gap:16px}
.page-heading::before{content:"";position:absolute;z-index:-1;right:0;top:0;bottom:0;width:43%;background:linear-gradient(110deg,transparent,#315cf51f)}
.page-heading>div:first-child{max-width:72%;position:relative;z-index:1}.page-heading .eyebrow{display:block;font-size:10px;font-weight:500;letter-spacing:1px;color:#a8baff;margin-bottom:5px}
.page-heading .eyebrow i{display:inline-block;width:5px;height:5px;border-radius:50%;background:#87e7d1;margin-right:5px;vertical-align:2px}
.page-heading h1{font-size:27px;letter-spacing:.6px;font-weight:700;color:#fff;margin:0;line-height:1.5}
.page-heading p{font-size:12px;color:#aebfe6;margin-top:4px;letter-spacing:.2px}
.page-heading>.text-button{position:relative;z-index:1;margin-left:auto;align-self:flex-end;color:#e3eaff;font-size:12px;font-weight:500;min-height:38px;white-space:nowrap;border-bottom:1px solid #ffffff28;padding:4px 0}
.course-cover-art{position:absolute;right:168px;top:0;height:100%;width:174px;opacity:.94;pointer-events:none;z-index:0}
.course-cover-art svg{width:100%;height:100%}
.course-sidebar{width:211px;flex-basis:211px;align-self:stretch;background:#edf0fa;border:0;border-right:1px solid #e1e6f4;border-radius:0;box-shadow:none;margin:0;padding:26px 16px;position:relative}
.course-heading{padding:0 0 16px;margin:0;border:0}.course-heading h3{font-size:15px;color:#263357;gap:7px}
.teacher-tag{font-size:10px;color:#62749c;background:#e1e7f7;padding:3px 7px;border-radius:5px;font-weight:400}
.catalog-label{display:block;font-size:9px;letter-spacing:1.5px;color:#8795b5;margin:0 0 18px}
.chapter-label{font-size:13px;color:#364668;line-height:1.7;padding:0 4px 14px;gap:8px}.chapter-label svg{margin-top:3px}
.chapter-items{padding:0;margin:0;border:0}.chapter-item{font-size:12px;line-height:1.8;min-height:46px;padding:12px 10px;color:#7886a2;margin:4px 0;border-radius:9px;background:transparent;white-space:normal;text-align:left}
.chapter-item.active{background:#fff;color:#315cf5;font-weight:600;box-shadow:0 4px 12px #273c7309}
.chapter-item.active::before{content:"";display:block;position:absolute;width:3px;height:16px;left:0;top:calc(50% - 8px);border-radius:0 3px 3px 0;background:#315cf5}
.chapter-item{position:relative}.chapter-item .dot{display:none}.chapter-locked{font-size:11px;color:#7d89a1;padding:18px 4px;border-top:1px solid #dfe5f4;margin-top:20px}
.sidebar-note{display:flex;background:#e4e9f9;border:0;border-radius:12px;padding:18px 12px;margin-top:32px;gap:9px;color:#6b7da7;align-items:flex-start}.sidebar-note p{font-size:11px;line-height:1.8}.sidebar-note svg{color:#315cf5;flex-shrink:0}

/* The six names remain the visual anchor of every lesson. */
.stepper{display:grid;grid-template-columns:repeat(6,minmax(0,1fr));gap:10px;margin-bottom:16px}
.step-button{min-height:70px;height:auto;position:relative;overflow:hidden;display:flex;align-items:center;justify-content:flex-start;flex-direction:row;gap:10px;padding:12px 14px;background:#fff;border:1px solid #e3e7f4;border-radius:13px;box-shadow:0 3px 10px #20356804;text-align:left}
.step-letter{width:34px;height:40px;border-radius:9px;background:#f0f3ff;color:#546cad;font-size:24px;line-height:1;font-weight:700;flex-shrink:0;display:grid;place-items:center}
.step-info{display:flex;flex-direction:column;position:relative;z-index:1;gap:3px}.step-info b{font-size:13px;color:#465373;white-space:nowrap;font-weight:600}.step-info small{font-size:9px;color:#8e9bb8;letter-spacing:.2px}
.step-index{position:absolute;right:6px;top:0;font-size:29px;line-height:1.1;color:#f0f3fb;font-weight:750;pointer-events:none;letter-spacing:-1.8px}
.step-button.active{background:#315cf5;color:#fff;border-color:#315cf5;box-shadow:0 6px 16px #315cf527}
.step-button.active .step-letter{background:#ffffff1c;color:#fff}.step-button.active .step-info b{color:#fff}.step-button.active .step-info small{color:#d4dfff}.step-button.active .step-index{color:#ffffff0d}
.step-button.done:not(.active){border-color:#d6e9e4;background:#f9fdfc}.step-button.done:not(.active) .step-letter{color:#1a927e;background:#e8f6f2}.step-button.done .step-check{position:absolute;top:6px;right:7px;background:#e4f4ef;color:#128470;border-radius:50%;width:15px;height:15px;font-size:10px;display:grid;place-items:center}
.step-button.done .step-index{display:none}.step-button.done.active .step-check{background:#ffffff26;color:#fff}
.delivery-toolbar{border-radius:12px;background:#fff;border:1px solid #e4e8f5;padding:10px 15px;margin-bottom:18px;min-height:56px;box-shadow:none}
.delivery-toolbar .text-button{font-size:13px}.delivery-toolbar .btn{border-radius:8px;min-height:40px;padding:8px 14px;font-size:12px}
.delivery-device{background:#f2f4fb;border:0;border-radius:8px;padding:3px}.delivery-device button{font-size:11px;min-height:38px;border-radius:6px;padding:6px 11px;color:#7a86a1}.delivery-device button.active{color:#315cf5;box-shadow:0 2px 7px #283b720b}
.original-course-tools{margin:0 0 12px;background:transparent;color:#7a87a2}.original-course-tools>summary{min-height:32px;font-size:12px;padding:3px 0}.original-course-tools[open]{background:#edf1fb;border-color:#dce4f7;border-radius:12px;padding:10px}
.learning-feature-actions{margin:0 0 12px}.learning-feature-actions .text-button{font-size:12px;padding:7px 12px;background:#e9eeff;border-radius:8px}
.lesson-grid{display:block}.right-stack{display:none}.page-foot{font-size:11px;color:#8a96af;margin-top:22px;padding:8px 3px}.page-foot button{color:#7586aa;min-height:34px}.page-foot>span:first-child{display:flex;gap:6px;align-items:center}

/* Preview: coloured task rail beside a proper paper workspace. */
.stage-preview{border:1px solid #e3e8f4;border-radius:18px;overflow:hidden;box-shadow:var(--shadow-soft)}
.stage-preview .panel-body{display:block;padding:24px;min-height:0}
.preview-learning-grid{display:grid;grid-template-columns:minmax(205px,.72fr) minmax(0,1.5fr);gap:24px;align-items:start}
.preview-task-pane{padding-top:2px}.preview-task-title{font-size:18px;letter-spacing:.3px;font-weight:700;color:#24335b;margin-bottom:18px;line-height:1.6}
.preview-task-title::before{content:"";display:block;width:26px;height:4px;border-radius:4px;background:#ff9277;margin-bottom:10px}
.stage-preview .checklist{display:flex;flex-direction:column;gap:12px}
.stage-preview .check-item{min-height:95px;padding:16px 13px;border:1px solid #e4e9f6;border-radius:13px;background:#f6f8ff;box-shadow:none;display:flex;align-items:flex-start;flex-direction:row;gap:12px;width:100%}
.stage-preview .check-circle{width:29px;height:29px;flex-shrink:0;border-radius:9px;display:grid;place-items:center;background:#e6ecff;border:0;color:#315cf5;font-size:13px;font-weight:700;margin-top:1px}
.stage-preview .check-content b{font-size:15px;line-height:1.6;color:#27385e;font-weight:600}.stage-preview .check-content small{font-size:12px;line-height:1.8;color:#7888a6;margin-top:5px}
.stage-preview .check-item.checked{background:#edf8f4;border-color:#c4e4d9}.stage-preview .check-item.checked .check-circle{background:#1b9a82;color:#fff}.stage-preview .check-item.checked .check-content b{color:#257861}
.preview-handout{background:#fff;border:1px solid #e0e5ee;border-radius:12px;box-shadow:0 8px 24px #273b6b08;max-height:480px;overflow-y:auto;scrollbar-color:#c9d3ec transparent;scrollbar-width:thin}
.lh-paper{padding:25px 28px;background:linear-gradient(#f9faff 0 65px,white 65px);font-size:14px;line-height:1.9;color:#475777}
.lh-paper header{font-size:11px;color:#315cf5;letter-spacing:.6px}.lh-paper header small{font-size:10px;color:#8e9bb5}.lh-paper h2{font-size:23px;line-height:1.6;color:#243258;margin:16px 0 20px;font-weight:700}.lh-paper h3{font-size:14px;color:#365cb4;margin:18px 0 10px}.lh-paper p{font-size:13px;color:#64718b;line-height:1.9}.lh-paper dl>div{font-size:12px;background:#f5f7fc;border:0;border-radius:7px;padding:12px;gap:10px}.lh-paper dl dt{color:#5470ac}.lh-paper small{font-size:11px;color:#94a0b8}
.stage-preview .upload-zone{margin-top:20px;border:1px dashed #cdd8f2;background:#f7f9ff;border-radius:12px;padding:18px}
.stage-preview .upload-actions{gap:16px;justify-content:flex-start}.stage-preview .upload-actions>.btn{background:#ecf1ff;color:#315cf5;border:1px solid #cedbff;min-height:48px;font-size:14px;box-shadow:none;border-radius:10px;padding:11px 20px}.stage-preview .upload-actions>.text-button{font-size:12px;color:#7a8bb0}
.stage-preview .note-list{margin-top:14px}.stage-preview .note-item{background:#fff;border:1px solid #e5eaf5;border-radius:10px;box-shadow:none}.stage-preview .note-text b{font-size:12px;color:#435474}.stage-preview .note-text small{font-size:11px;color:#1b927c}
.stage-preview .actions{margin-top:20px;padding-top:18px;border-top:1px solid #e9edf6;gap:16px}.action-hint{font-size:12px;color:#8794ae}

/* Practice stays paper white; selection and completion receive distinct colour. */
.op-content{max-width:1040px;padding:27px 34px 26px;margin:0 auto}.op-root{color:var(--ui-ink)}
.op-question-indicator{font-size:13px;color:#7e8ba6;letter-spacing:.3px}.op-question-indicator b{color:#315cf5;font-size:17px}.op-q-type{font-size:11px;background:#edf1ff;border:0;border-radius:6px;color:#627cc2;padding:4px 9px}
.op-number-row{padding-bottom:19px;border-bottom:1px solid #edf0f7;gap:20px}.op-question-numbers{gap:10px}
.op-question-number{width:48px;height:48px;min-width:48px;border-radius:12px;background:#f1f4fd;border:1px solid #e2e8f9;color:#7c8db2;font-size:17px;box-shadow:none}.op-question-number.is-current{background:#315cf5;color:#fff;border-color:#315cf5;box-shadow:0 5px 12px #315cf529}.op-question-number.is-answered:not(.is-current){background:#eef2ff;color:#315cf5;border-color:#bdccff}.op-question-number.is-correct:not(.is-current){background:#eaf8f2;color:#15816b;border-color:#cbe8dc}.op-question-number.is-wrong:not(.is-current){background:#fff0ec;color:#c76752;border-color:#f4ccbf}
.op-number-caption{font-size:12px;color:#7b88a5}.op-number-caption small{font-size:10px;color:#a0aac0;margin-top:3px}
.op-question-area{margin-top:24px}.op-q-stem{font-size:20px;line-height:1.85;font-weight:600;color:#26345a;margin-bottom:22px}.op-options{gap:12px}.op-option{min-height:64px;border-radius:12px;background:#fff;border:1px solid #e1e7f2;color:#536280;font-size:16px;line-height:1.7;padding:14px 20px;gap:15px;box-shadow:0 2px 5px #22336803}.op-option-key{width:30px;height:30px;background:#f2f5fc;color:#8293b7;border-radius:9px;border:0;font-size:13px;display:grid;place-items:center;flex-shrink:0}.op-option.is-selected{background:#f0f3ff;border-color:#8fa8ff;color:#3155b7;box-shadow:inset 3px 0 #315cf5}.op-option.is-selected .op-option-key{background:#315cf5;color:#fff}.op-option.is-correct{background:#edf9f4;border-color:#b3ddce;color:#237d66;box-shadow:inset 3px 0 #1b9a82}.op-option.is-wrong{background:#fff3ef;border-color:#f1c6b8;color:#b55e47;box-shadow:inset 3px 0 #e9876e}
.op-bottom-action-bar{border-top:1px solid #edf0f7;margin-top:26px;padding-top:20px;gap:14px}.op-action-btn{min-height:48px;border-radius:10px;font-size:13px;padding:10px 18px;display:inline-flex;align-items:center;justify-content:center;gap:7px}.op-action-btn svg{width:15px;height:15px}.op-submit,.op-next{background:#315cf5;color:#fff;box-shadow:0 4px 12px #315cf51c}.op-prev,.op-error{background:#f5f7fc;border:1px solid #e4e9f5;color:#7586ab}.op-action-btn:disabled{opacity:.42}.op-submission-summary{margin:12px 24px 22px;background:#eef8f4;border-radius:11px;border:0;padding:14px 18px;font-size:13px;color:#5d8277}.op-view-result{color:#18836d;font-size:13px}
.op-result-modal{border-radius:22px;border:1px solid #edf0f7;box-shadow:0 25px 100px #18285935;padding:34px;max-width:520px}.op-result-icon{background:#e4f7ed;color:#179375;box-shadow:none}.op-result-title{font-size:25px;color:#263459}.op-result-subtitle{font-size:13px;color:#8996ae}.op-result-stats{background:#f5f7fd;border-radius:14px;padding:23px 15px}.op-stat-value{font-size:39px;color:#315cf5}.op-stat-label{font-size:12px;color:#8090ae}.op-result-next{font-size:13px;line-height:1.9;color:#7887a2}.op-result-btn{min-height:48px;border-radius:10px;font-size:14px}.op-primary{background:#315cf5}

/* Analysis plan one retains its tabs and two-column explanation. */
.analysis-plan-one{border-radius:16px;background:#fff;overflow:hidden}.p1-sub-tabs-bar{padding:14px 22px;background:#f8faff;border-bottom:1px solid #e5eaf6;gap:20px}
.p1-q-num-label{font-size:12px;color:#8997b1}.p1-q-num{width:48px;height:48px;border-radius:12px;background:#eef2ff;border:1px solid #dce4fa;color:#6f83b4;font-size:16px}.p1-q-num.active{background:#315cf5;color:#fff;border-color:#315cf5;box-shadow:0 5px 12px #315cf52b}.p1-q-num:hover{transform:none}.p1-sub-tabs{gap:8px;border:0;padding:3px;background:#eaf0fb;border-radius:11px;margin:0}.p1-sub-tab{min-height:46px;background:transparent;border:0;border-radius:8px;padding:9px 14px;color:#7b8bad;font-size:13px;gap:7px}.p1-sub-tab.active{background:#fff;color:#315cf5;border:0;box-shadow:0 3px 9px #273e7810}.p1-sub-tab.active::after{display:none}.p1-sub-tab-num{width:21px;height:21px;font-size:10px;background:#dfe7fb;color:#7b8db6}.p1-sub-tab.active .p1-sub-tab-num{background:#315cf5;color:#fff}
.p1-tab-panel{padding:22px}.p1-analysis-layout{gap:22px}.p1-panel-card{padding:21px;border:1px solid #e4e9f5;border-radius:13px;box-shadow:none}.p1-q-type{font-size:13px;color:#405786}.p1-q-stem{font-size:17px;line-height:1.85;color:#29395d}.p1-option{font-size:13px;border-radius:9px;background:#fafbff;border:1px solid #e7ecf6;padding:12px 34px 12px 14px;color:#6b7893}.p1-option.correct{background:#edf8f3;border-color:#c5e6d7;color:#308267}.p1-option.wrong{background:#fff1ed;border-color:#f0c5b5;color:#b26850}.p1-answer-row{font-size:13px;color:#6c7c99;line-height:1.9;margin-top:12px}.p1-answer-row>b{color:#315cf5}.p1-section-title{font-size:15px!important;color:#2d436c}
.p1-model-section{background:#f9faff;border:1px solid #e1e7f5;border-radius:13px;padding:0;overflow:hidden}.p1-model-head{margin:0;padding:17px 18px;background:#20346d;color:#fff;border:0;gap:9px;border-radius:0}.p1-model-head h3{font-size:15px;color:#fff}.p1-model-tag{font-size:10px;color:#c9d6ff;background:#ffffff13;border:1px solid #ffffff1c;border-radius:5px;padding:3px 7px}.p1-step-row{min-height:76px;padding:15px 18px;gap:12px;border-bottom:1px solid #e6ebf6}.p1-step-num{width:27px;height:27px;font-size:12px;background:#e8eeff;color:#315cf5;border-radius:8px}.p1-step-title-line b{font-size:13px;color:#354a78}.p1-step-title-line span{font-size:10px;color:#99a6be}.p1-step-content p{font-size:13px;color:#647594;line-height:1.9}.p1-model-summary{font-size:12px;padding:15px 18px;color:#7888aa;background:#f1f4fc}
.p1-btn{min-height:48px;font-size:13px;padding:11px 20px;border-radius:10px;box-shadow:none}.p1-primary{background:#315cf5;color:white}.p1-reason-panel{border:1px solid #e2e8f5;border-radius:14px;padding:22px}.p1-reason-item{min-height:70px;border-radius:12px;background:#fafbff;border-color:#e0e7f7;padding:15px}.p1-reason-item strong{font-size:14px;color:#465d8b}.p1-reason-item small{font-size:12px;color:#8b9cb8}.p1-reason-item.selected{background:#eff3ff;border-color:#8ea9ff;box-shadow:inset 3px 0 #315cf5}.p1-reason-item.selected strong{color:#315cf5}.p1-result-overview{background:#f5f8fd;border:1px solid #e5eaf4;border-radius:10px}.p1-result-overview>summary{font-size:12px;min-height:44px;padding:12px 16px;color:#6c80a8}.p1-video-unavailable{display:flex;justify-content:space-between;gap:12px;border:1px dashed #dbe3f2;border-radius:9px;padding:12px 14px;margin-top:16px;color:#8997b1;font-size:11px;background:#fafbff}

/* Student report: a meaningful score cover and three distinct next actions. */
.report-header{margin:0 0 22px;align-items:center}.report-header h1{font-size:28px;font-weight:750;color:#24345a;letter-spacing:.5px}.report-header .eyebrow{font-size:10px;color:#7c8bad;letter-spacing:1px;margin-bottom:6px}.report-header p{font-size:12px;color:#8a97af}.report-header .btn{font-size:13px}
.report-hero{position:relative;isolation:isolate;overflow:hidden;padding:29px 34px;border:0;border-radius:20px;background:#20346d;color:white;gap:30px;box-shadow:0 12px 30px #1c326218}
.report-hero::before{content:"";display:block;position:absolute;width:300px;height:300px;right:-45px;top:-96px;border:1px solid #ffffff14;border-radius:50%;z-index:-1}.report-hero::after{content:"";display:block;position:absolute;width:205px;height:205px;right:5px;top:-48px;border:1px solid #ffffff15;border-radius:50%;z-index:-1}
.report-hero .pill{background:#ffffff15!important;color:#b0eddb!important;border:1px solid #ffffff17;font-size:10px;padding:4px 9px;border-radius:5px}.report-hero h2{font-size:27px;font-weight:650;color:#fff;margin:12px 0 8px;letter-spacing:.6px}.report-hero p{font-size:13px;line-height:1.8;color:#b5c4e6}.report-hero-score{min-width:146px;padding-left:28px;border-left:1px solid #ffffff1f;position:relative;z-index:1}.report-hero-score b{font-size:66px;letter-spacing:-2px;font-weight:650;line-height:1.1;color:#a3ecd8;font-variant-numeric:tabular-nums}.report-hero-score span{font-size:12px;color:#b1c4e6;margin-top:8px}
.stat-grid.report-stat-grid{gap:16px;margin:20px 0 24px;border:0;border-radius:0;background:none;overflow:visible}.report-stat-grid .stat-card{border:1px solid #e2e8f5;border-radius:14px;box-shadow:var(--shadow-soft);padding:21px 24px;position:relative;overflow:hidden;background:#fff}.report-stat-grid .stat-card::before{content:"";position:absolute;top:0;left:24px;width:24px;height:3px;background:#7a9aff;border-radius:0 0 3px 3px}.report-stat-grid .stat-card:nth-child(2)::before{background:#e8af76}.report-stat-grid .stat-card:nth-child(3)::before{background:#65c9b4}.report-stat-grid .stat-card:last-child{border-right:1px solid #e2e8f5}.stat-card p{font-size:12px;color:#8392ad;margin:0 0 10px}.stat-card strong{font-size:32px;color:#283d69;line-height:1.3;font-weight:650;letter-spacing:-.4px}.stat-card strong small{font-size:12px;font-weight:400;color:#8d9ab4;letter-spacing:0}.stat-card>span{font-size:11px;color:#8b9ab5;margin-top:9px}
.student-report-overview{margin-bottom:24px}.student-report-overview>.panel{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:0;border:1px solid #e1e8f4;padding:24px 26px;border-radius:16px;box-shadow:var(--shadow-soft)}.student-report-overview h3{grid-column:1/-1;font-size:18px;margin-bottom:22px;letter-spacing:.3px}.student-report-overview .insight-item{margin:0;padding:0 24px;border:0;border-right:1px solid #e7ecf7;font-size:13px;line-height:1.9;gap:10px;color:#7b8ca9}.student-report-overview .insight-item:nth-child(2){padding-left:0}.student-report-overview .insight-item:last-child{border:0;padding-right:0}.student-report-overview .insight-item b{display:block;font-size:14px;color:#3a507c;margin-bottom:8px;font-weight:600}.insight-dot{width:7px;height:7px;background:#759aff;margin-top:8px;flex-shrink:0}.student-next-actions{display:flex;gap:10px;margin-top:16px;flex-wrap:wrap}.student-next-actions .btn{font-size:13px}
.lf-daily{padding:26px;border:1px solid #e3e9f5;border-radius:16px;box-shadow:var(--shadow-soft);background:#fff}.lf-title h3{font-size:18px;color:#31456c;letter-spacing:.3px}.lf-demo{font-size:10px;padding:3px 7px;background:#f0f3fc;color:#9aa7bf;border-radius:5px}.lf-expression-metrics{gap:16px}.lf-expression-metrics>div{background:#f5f7fe;border:0;border-radius:12px;padding:22px;position:relative}.lf-expression-metrics>div::after{content:"";width:48px;height:48px;position:absolute;right:20px;top:24px;border:1px solid #dfe6fb;border-radius:14px;transform:rotate(15deg);pointer-events:none}.lf-expression-metrics small{font-size:12px;color:#8695af}.lf-expression-metrics strong{font-size:34px;font-weight:600;letter-spacing:-.5px;color:#4568b9;line-height:1.5}.lf-expression-metrics p,.lf-coverage-note{font-size:12px;line-height:1.8;color:#8594ae}.lf-coverage-note{margin:12px 0}.lf-encouragement{background:#edf8f3;border:0;border-radius:13px;padding:21px 24px;gap:16px}.lf-encourage-mark{width:38px;height:38px;color:#fff;background:#25977e;border-radius:12px;font-size:22px}.lf-encouragement h3{color:#307c67;font-size:15px}.lf-encouragement p,.lf-encouragement small{font-size:13px;line-height:1.85;color:#709482}.lf-exam-detail>summary{font-size:12px;color:#94a2ba;min-height:44px}.student-report-details{border:1px solid #e1e7f3;border-radius:13px;background:#fff;margin-top:20px;box-shadow:var(--shadow-soft)}.student-report-details>summary{padding:18px 24px;min-height:56px;color:#7083a6;font-size:13px}.report-steps{gap:12px}.report-step{font-size:12px}.report-step .step-icon{background:#eef2ff;color:#647fc0;border-radius:7px}.report-step .bar-track{background:#f0f3fa}.report-step .bar-track i{background:#a3b7f5}.report-step.done .step-icon{background:#e6f7ef;color:#208668}.question-table{font-size:12px}.question-table th{color:#94a1b9;background:#f8faff}.question-table td{color:#6d7e9e}.question-table .green{color:#258b70}

/* Shared overlays and finite-rule warnings remain legible and honest. */
.modal{border-radius:20px;box-shadow:0 24px 90px #192c633b;border:1px solid #e1e8f7}.modal-head{background:#f9faff;border-bottom:1px solid #e8edf7;padding:21px 26px}.modal-head h2{color:#2d416d;font-size:19px}.modal-body{font-size:14px;line-height:1.9;color:#657799;padding:24px 26px}.modal-body .small{font-size:12px}.modal-foot{padding:17px 26px;background:#fff;border-top:1px solid #e8edf7}.ev-key-warning{background:#fff5e9!important;border-color:#e8c69f!important;color:#965e25!important}.ev-standard-issue{background:#fff7ed;border:1px solid #f1d7bb;border-radius:10px;padding:15px 18px;margin:0 0 14px;color:#8c622d;font-size:14px;line-height:1.9}.ev-standard-issue b{color:#8c622d}.ev-standard-issue p{margin-top:7px}#toast{background:#20346d;border:1px solid #ffffff12;border-radius:12px;font-size:13px;box-shadow:0 8px 28px #1b2e632b}

/* Keep the learning canvas in view on the 13-inch tablet. */
@media(min-width:780px){
 .main:has(.stepper)>.page-heading{min-height:91px;padding-top:14px;padding-bottom:14px}
 .page-heading .eyebrow{display:none}.page-heading h1{line-height:1.4}.page-heading p{line-height:1.7}
 .delivery-toolbar{padding:0;min-height:56px}.delivery-toolbar-top{padding:7px 15px;border-bottom:0}
 .op-content{min-height:0;box-shadow:none}.op-number-row{margin-bottom:0;padding-bottom:16px}.op-question-area{padding-right:0;margin-top:22px;overflow:visible}
 .op-q-type{margin-bottom:14px}.op-options{display:grid;gap:10px}.op-option{margin:0;min-height:58px}
 .op-bottom-action-bar{position:sticky;bottom:12px;z-index:5;background:#fff;border:1px solid #e1e7f5;border-radius:12px;padding:12px 15px;box-shadow:0 6px 25px #273e7514;margin-top:22px}
 .stage-preview .actions{position:sticky;bottom:12px;z-index:5;background:#fff;border:1px solid #e1e7f5;border-radius:12px;padding:12px 15px;box-shadow:0 6px 25px #273e7514}
}
.op-action-btn.op-submit{background:#315cf5;box-shadow:0 4px 12px #315cf524;border-radius:10px}
.op-action-btn.op-next{background:#eef2ff;color:#315cf5;border:1px solid #d8e2ff}
.op-action-btn.op-prev,.op-action-btn.op-error{background:#f7f9fe;border:1px solid #e1e7f5;color:#7386ae;border-radius:10px}
.panel-body:has(>.analysis-plan-one){padding:0}
.p1-study-tools{padding:16px 20px;font-size:12px;gap:12px}.p1-wrongbook-button{border-radius:8px;font-size:12px;min-height:40px;color:#6e81ab;border-color:#e0e7f6}
.p1-result-overview{margin:0 20px 15px;border:1px solid #e4eaf8;border-radius:9px;background:#f5f8ff}.p1-result-overview>summary{min-height:42px;padding:10px 14px;font-size:12px;color:#7c8eaf}.p1-result-overview>summary b{color:#315cf5}
.p1-practice-tag{font-size:11px;background:#fff4e9;color:#ad7947;border-radius:7px;padding:6px 10px}.p1-practice-right{font-size:13px;line-height:1.9;color:#8594b0}.p1-submit-btn{background:#315cf5;border-radius:10px;min-height:48px;font-size:14px;box-shadow:0 4px 12px #315cf51a}
.stage-preview .check-content small{color:#687894}.op-number-caption{color:#6b7b97}.op-number-caption small{color:#75839c}.step-info small{font-size:10px;color:#71809d}.stat-card p,.stat-card>span{color:#6d7d99}.p1-practice-right{color:#667795}.student-report-overview .insight-item{color:#687b99}.lf-expression-metrics small,.lf-expression-metrics p,.lf-coverage-note{color:#6d7f9b}
@media(min-width:780px){.main:has(.analysis-plan-one)>.original-course-tools:not([open]){float:right;width:max-content;max-width:60%;margin-bottom:12px}.main:has(.analysis-plan-one)>.learning-feature-actions{display:inline-flex;margin-bottom:12px}.main:has(.analysis-plan-one)>.lesson-grid{clear:both}}
@media(min-width:1500px){.workspace[data-view-role="student"] .main{padding:26px 36px 30px}.course-sidebar{width:232px;flex-basis:232px;padding:30px 20px}.main:has(.stepper)>.page-heading{min-height:102px;padding:18px 28px}.page-heading h1{font-size:30px}.step-button{min-height:78px;padding:14px 20px;gap:13px}.step-info b{font-size:14px}.step-info small{font-size:10px}.step-letter{font-size:27px;width:39px;height:44px}.course-cover-art{right:190px;width:205px}.stage-preview .panel-body{padding:28px}.preview-handout{max-height:540px}.preview-learning-grid{grid-template-columns:minmax(245px,.68fr) minmax(0,1.55fr);gap:30px}.stage-preview .check-item{min-height:109px;padding:20px}.lh-paper p{font-size:15px}.lh-paper h3{font-size:16px}.lh-paper dl>div{font-size:14px}.preview-task-title{font-size:20px}.stage-preview .check-content small{font-size:13px}}
@media(min-width:780px) and (max-width:1100px){.rail{width:80px;padding-left:8px;padding-right:8px}.rail-item{width:64px}.workspace[data-view-role="student"]{margin-left:80px}.workspace[data-view-role="student"] .topbar{padding:0 18px}.workspace[data-view-role="student"] .subjectbar{padding:0 18px;gap:21px}.workspace[data-view-role="student"] .main{padding:18px}.course-sidebar{width:182px;flex-basis:182px;padding:24px 12px}.course-heading h3{font-size:13px}.teacher-tag{font-size:9px;padding:2px 5px}.chapter-item{font-size:11px;padding:11px 8px}.chapter-label{font-size:12px}.main:has(.stepper)>.page-heading{min-height:100px;padding:17px 20px}.page-heading h1{font-size:23px}.page-heading p{font-size:11px}.page-heading>.text-button{font-size:11px}.course-cover-art{opacity:.45;right:115px;width:134px}.stepper{gap:7px}.step-button{padding:10px 8px;gap:6px;min-height:66px}.step-letter{font-size:22px;width:28px;height:35px}.step-info b{font-size:11px}.step-info small{font-size:8px}.step-index{font-size:25px}.stage-preview .panel-body{padding:20px}.preview-learning-grid{grid-template-columns:minmax(170px,.72fr) minmax(0,1.4fr);gap:18px}.preview-task-title{font-size:16px}.stage-preview .check-item{min-height:94px;padding:14px 10px;gap:9px}.stage-preview .check-content b{font-size:13px}.stage-preview .check-content small{font-size:11px}.stage-preview .check-circle{width:25px;height:25px;font-size:12px}.preview-handout{max-height:445px}.lh-paper{padding:23px 20px}.lh-paper h2{font-size:20px}.lh-paper dl>div{grid-template-columns:80px 1fr;gap:8px}.lh-paper p{font-size:12px}.op-content{padding:24px}.p1-sub-tabs-bar{gap:14px;padding:12px 16px}.p1-sub-tab{font-size:12px;padding:8px 10px}.p1-q-num-group{gap:8px}.p1-tab-panel{padding:18px}.p1-panel-card{padding:18px}.p1-q-stem{font-size:16px}.student-report-overview .insight-item{padding:0 14px;font-size:12px}.student-report-overview .insight-item b{font-size:13px}.report-hero h2{font-size:25px}}
@media(max-width:779px){.workspace[data-view-role="student"] .main{padding:16px}.main:has(.stepper)>.page-heading{padding:17px 20px;min-height:96px}.page-heading h1{font-size:23px}.course-cover-art{opacity:.25;right:70px}.step-info{display:none}.step-button{justify-content:center;min-height:58px;padding:8px}.stepper{gap:8px}.preview-learning-grid{grid-template-columns:1fr}.preview-handout{max-height:400px}.student-report-overview>.panel{display:block}.student-report-overview .insight-item,.student-report-overview .insight-item:nth-child(2){padding:15px 0;border:0;border-bottom:1px solid #e7ecf7}.student-report-overview .insight-item:last-child{border:0}.report-hero{padding:25px}.report-hero-score{min-width:100px;padding-left:22px}.report-hero h2{font-size:23px}.report-hero-score b{font-size:53px}}
@media(max-width:600px){.workspace[data-view-role="student"]{margin-left:0;padding-bottom:76px}.rail{width:100%;height:68px;padding:4px 8px;inset:auto 0 0;display:flex;flex-direction:row}.rail .brand,.rail .rail-role,.rail .rail-bottom{display:none}.rail-item{width:45%;max-width:none;min-height:58px;margin:0;border-radius:10px}.rail-item.active::after{display:none}.workspace[data-view-role="student"] .topbar{height:58px;padding:0 13px}.workspace[data-view-role="student"] .subjectbar{gap:17px;padding:0 13px}.workspace[data-view-role="student"] .main{padding:13px}.workspace[data-view-role="student"] .role-switch>span{display:none}.workspace[data-view-role="student"] .role-switch button{font-size:11px;padding:5px 9px}.main:has(.stepper)>.page-heading{padding:17px;gap:12px}.page-heading>div:first-child{max-width:75%}.page-heading h1{font-size:20px}.page-heading p{font-size:10px}.page-heading>.text-button{font-size:0;min-width:24px;border:0}.page-heading>.text-button svg{width:20px;height:20px}.course-cover-art{right:-3px;opacity:.24;width:150px}.stepper{gap:6px}.step-button{min-height:54px;border-radius:10px}.step-letter{font-size:22px;width:30px}.step-index{font-size:21px}.stage-preview .panel-body{padding:18px}.stage-preview .check-item{min-height:83px}.stage-preview .upload-actions{gap:10px}.stage-preview .upload-actions>.btn{font-size:12px;padding:10px 13px}.stage-preview .upload-zone{padding:14px}.preview-task-title{font-size:18px}.op-content{padding:20px 16px}.op-q-stem{font-size:18px}.op-option{font-size:14px;padding:13px 14px;gap:10px}.op-bottom-action-bar{flex-wrap:wrap}.op-action-btn{font-size:12px;padding:9px 13px}.op-number-caption{font-size:11px}.p1-tab-panel{padding:15px}.p1-panel-card{padding:16px}.p1-sub-tab{font-size:12px;padding:8px}.p1-model-head{padding:15px}.p1-step-row{padding:14px}.report-header h1{font-size:24px}.report-header>.row{gap:6px}.report-header .btn{font-size:11px;padding:8px 11px;min-height:42px}.report-hero{padding:23px 20px;gap:14px}.report-hero h2{font-size:21px}.report-hero p{font-size:12px}.report-hero-score{min-width:75px;padding-left:15px}.report-hero-score b{font-size:42px}.report-hero-score span{font-size:10px}.report-stat-grid .stat-card{padding:18px 15px}.stat-card strong{font-size:27px}.stat-grid.report-stat-grid{gap:10px}.panel-pad,.lf-daily{padding:20px}.student-report-overview>.panel{padding:20px}.student-next-actions .btn{font-size:12px}}
@media(prefers-reduced-motion:reduce){*,*::before,*::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}}
@media print{body,.workspace[data-view-role="student"]{background:#fff!important}.workspace[data-view-role="student"]{margin:0!important}.page-heading,.course-cover-art{display:none!important}.report-hero{box-shadow:none;background:#eef2fa!important;color:#23365b!important;border:1px solid #dce3ef}.report-hero h2,.report-hero-score b{color:#243a69!important}.report-hero p,.report-hero-score span{color:#637697!important}.report-hero-score{border-left-color:#d2dbea}.report-hero .pill{color:#537096!important;background:#e2e9f7!important}.report-hero::before,.report-hero::after{display:none}.student-report-overview>.panel{display:block}.student-report-overview .insight-item{border:0;padding:12px 0}.panel,.stat-card{box-shadow:none!important}}
