.course-progress{margin:24px 0}.course-resume{display:flex;justify-content:space-between;align-items:center;gap:24px;margin:24px 0}.course-resume h2{font-size:24px;margin:8px 0}.course-roadmap{display:grid;gap:12px}.roadmap-step{display:flex;align-items:center;gap:20px;padding:24px}.roadmap-step>div{flex:1;min-width:0}.roadmap-step h3{margin:8px 0;overflow-wrap:anywhere}.roadmap-step p{margin:0}.roadmap-number{font:600 22px monospace;color:#d7f969}.is-locked .roadmap-number{color:#a0aaa2}.lesson-workspace{max-width:1100px}.lesson-workspace h1{font-size:clamp(28px,4vw,44px);overflow-wrap:anywhere}.lesson-sections{display:flex;gap:8px;flex-wrap:wrap;margin:24px 0}.lesson-sections a{padding:13px 18px;border:1px solid #465048;border-radius:10px;text-decoration:none;color:#e7ece5}.lesson-sections a[aria-current]{background:#d7f969;color:#18200f;border-color:#d7f969;font-weight:700}.lesson-pane{padding:clamp(20px,4vw,40px);min-height:300px}.lesson-pane .reading-body{max-width:78ch;line-height:1.8;overflow-wrap:anywhere}.lesson-video{display:block;width:100%;max-height:560px;background:#000;border-radius:10px;margin:20px 0}.lesson-footer{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:18px;margin:24px 0}.lesson-pane textarea{min-height:260px}.lesson-pane summary,.lesson-editor summary{cursor:pointer;font-weight:650;padding:12px 0}.lesson-editor{max-width:1000px;margin-top:24px}.lesson-editor textarea{min-height:100px}.quiz-editor-question{border:1px solid #465048;border-radius:12px;padding:20px;margin:16px 0}.lesson-editor-list{display:flex;flex-wrap:wrap;gap:10px;margin:20px 0}.lesson-editor-list a{padding:10px 14px;border:1px solid #465048;border-radius:8px}.lesson-sections a:focus-visible,.roadmap-step a:focus-visible{outline:3px solid #d7f969;outline-offset:4px}.lesson-pane .quiz-question .checkbox{padding:12px;border-radius:8px;min-height:44px}.lesson-pane .quiz-question .checkbox:has(input:checked){background:#293827}.lesson-pane .quiz-question input{flex-shrink:0}.lesson-pane .quiz-question legend{font-size:18px;line-height:1.6}.lesson-editor .teacher-assignment{padding:12px 0;border-bottom:1px solid #465048}@media(max-width:650px){.course-resume{align-items:stretch;flex-direction:column}.roadmap-step{flex-wrap:wrap;padding:18px;gap:12px}.roadmap-step>div{flex-basis:calc(100% - 60px)}.roadmap-step>.btn{width:100%}.lesson-sections{display:grid;grid-template-columns:1fr 1fr}.lesson-sections a{padding:12px;font-size:14px}.lesson-sections a:last-child{grid-column:1/-1}.lesson-editor .form-row{grid-template-columns:1fr}.lesson-pane{padding:18px}}

/* Self assessment: radio and answer stay together on every screen. */
.lesson-pane .quiz-form{max-width:900px;margin:24px auto;gap:22px}.quiz-form .quiz-progress{display:grid;gap:10px;padding:18px;background:#122821;border:1px solid #668476;border-radius:12px}.quiz-progress strong{font-size:16px}.quiz-progress span{font-size:14px;line-height:1.6;color:#c7d6cd}.quiz-progress progress{width:100%;height:10px;accent-color:#d7f969}.lesson-pane .quiz-question{min-width:0;margin:0;padding:18px;border:1px solid #53695c;border-radius:14px}.lesson-pane .quiz-question legend{padding:0 8px;font-size:18px;font-weight:650;line-height:1.5;max-width:100%;overflow-wrap:anywhere}.lesson-pane .quiz-question .quiz-option{display:flex;align-items:flex-start;justify-content:flex-start;gap:14px;margin:10px 0 0;padding:15px;min-height:52px;box-sizing:border-box;width:100%;border:1px solid #506052;border-radius:10px;cursor:pointer;background:#111b15;color:#e8f0e8;font-size:16px;line-height:1.6;text-align:left}.lesson-pane .quiz-question .quiz-option input[type=radio]{display:block;width:20px;height:20px;min-width:20px;max-width:20px;flex:0 0 20px;align-self:flex-start;padding:0;margin:3px 0 0;accent-color:#d7f969}.lesson-pane .quiz-option>span{display:block;flex:1;min-width:0;overflow-wrap:anywhere}.lesson-pane .quiz-option:hover{border-color:#b6d89a}.lesson-pane .quiz-option:has(input:checked){border-color:#d7f969;background:#293b25;color:#fff}.lesson-pane .quiz-option:focus-within{outline:3px solid #d7f969;outline-offset:3px}.quiz-question .quiz-reference{margin:4px 0 12px;color:#b8cdbf;font-size:13px}.quiz-question .form-hint{padding:12px;border-left:3px solid #91b77e;color:#c5d9bd;font-size:14px!important}.quiz-form>.btn{justify-self:start;min-height:48px;font-size:16px}
@media(max-width:600px){.lesson-pane .quiz-question{padding:12px}.lesson-pane .quiz-question .quiz-option{font-size:16px;padding:12px;gap:10px}.quiz-form>.btn{width:100%}.lesson-pane .quiz-question legend{font-size:17px}}
