/* Course-based guides reuse the Learning Library's fonts and colour tokens. */
.course-page .course-hero{display:block;max-width:var(--course-width,960px)}
.course-page .course-content{max-width:var(--course-width,960px);margin-inline:auto}
.course-page .course-content>section{margin-block:var(--space-8)}
.course-page .course-visual{margin:var(--space-6) 0;padding:var(--space-4);background:var(--white);border-radius:var(--r-card)}
.course-page .course-visual img{display:block;max-width:100%;width:100%;height:auto}
.course-page .course-visual figcaption{color:var(--body);font-family:var(--font-ui);line-height:1.65}
.course-page .course-visual figcaption strong{display:block;color:var(--ink)}
.course-page .course-visual .diagram-link{display:inline-block;margin-top:var(--space-3)}
.course-page .worked-detail h3,.course-page .worksheet h3{font-family:var(--font-ui);font-weight:800}
.course-page .course-tags{display:flex;flex-wrap:wrap;gap:var(--space-3);color:var(--learn-teal)}
.course-page .course-tags span{padding:var(--space-2) var(--space-3);border-radius:var(--r-pill);background:var(--learn-mint)}
.course-page .lesson-contents{position:static;display:flex;flex-wrap:wrap}
.course-page .check-note{padding:var(--space-4);background:var(--learn-mint);border-radius:var(--r-card)}
.course-page .source-note{overflow-wrap:anywhere}
.course-page #practice details{padding-block:var(--space-3)}
.course-page .print-key{display:none}
@media(max-width:760px){.course-page .course-visual{padding:0}.course-page .course-visual figcaption{padding:var(--space-3)}.course-page .course-hero h1{overflow-wrap:anywhere}.course-page .course-content{width:100%}}
@media print{.course-page .course-visual .diagram-link{display:none}.course-page .course-hero{display:none}}
/* Readable guides: one alignment, clear paragraphs and accessible diagrams. */
.course-page{--guide-body:1.0625rem;--guide-small:.875rem;--guide-print-body:11pt;--guide-print-title:22pt;--guide-print-heading:16pt;--guide-print-subheading:12pt;--guide-diagram-min:720px;--guide-text-width:72ch}
.course-page .course-hero,.course-page .course-content{margin-inline:auto;width:100%;max-width:var(--course-width,960px)}
.course-page .course-content,.course-page .course-hero{font-family:var(--f-ui)}
.course-page .course-content p,.course-page .course-content li{font-size:var(--guide-body);line-height:1.75}
.course-page .course-content p{margin-block:var(--space-4);max-width:var(--guide-text-width)}
.course-page .course-content h2{margin-block:var(--space-8) var(--space-4)}
.course-page .course-content h3{margin-block:var(--space-6) var(--space-3)}
.course-page .worked-detail h3,.course-page .worksheet h3{margin-top:0}
.course-page .course-content li{padding-bottom:var(--space-2)}
.course-page .practice-options{list-style:none;margin-block:var(--space-3);padding-left:0}
.course-page .practice-options li{padding:var(--space-2) var(--space-3);margin-block:var(--space-2);background:var(--cream);border-radius:var(--r-icon)}
.course-page .screen-solution{padding-block:var(--space-3)}
.course-page .screen-solution summary{color:var(--bl-blue);min-height:var(--space-6)}
.course-page .guide-tools{margin-top:var(--space-6);display:flex;flex-wrap:wrap;align-items:center;gap:var(--space-3)}
.course-page .guide-tools>.button{background:var(--bl-blue)}
.course-page .guide-copy{border:0;background:var(--white);color:var(--bl-blue);padding:var(--space-3) var(--space-6);border-radius:var(--r-pill);box-shadow:var(--s1);cursor:pointer;font-weight:800}
.course-page .guide-tool-hint,.course-page .guide-share-status{flex-basis:100%;font-size:var(--guide-small);margin:0;color:var(--body);max-width:var(--guide-text-width)}
.course-page .guide-share-status:empty{display:none}
.course-page .guide-copy-fallback{width:100%}
.course-page .guide-copy-fallback input{display:block;width:100%;padding:var(--space-3);color:var(--ink)}
.course-page .print-reference,.course-page .diagram-help,.course-page .diagram-zoom{display:none}
.course-page .diagram-viewport{max-width:100%;overflow-x:auto;overscroll-behavior-inline:contain;border-radius:var(--r-icon)}
.course-page .course-visual figcaption{font-size:var(--guide-small);padding-top:var(--space-3)}
.course-page .course-content .lesson-faq p{margin-bottom:var(--space-2)}
@media(max-width:760px){
 .course-page .course-hero{padding-top:var(--space-4)}
 .course-page .course-hero h1{font-size:clamp(2rem,8vw,2.5rem);line-height:1.15}
 .course-page .course-content .worksheet{padding:var(--space-4)}
 .course-page .course-visual .diagram-viewport img{width:var(--guide-diagram-min);max-width:none;min-width:var(--guide-diagram-min)}
 .course-page .diagram-help{display:block;margin-bottom:var(--space-2);color:var(--bl-blue);font-weight:700}
 .course-page .diagram-zoom{display:block;padding:var(--space-3)}
 .course-page .diagram-zoom summary{color:var(--bl-blue);cursor:pointer;min-height:var(--space-6);padding-block:var(--space-2);font-weight:800}
 .course-page .lesson-contents{padding:var(--space-4)}
 .course-page .guide-tools>.button,.course-page .guide-copy{width:100%;text-align:center}
}
@media print{
 .course-page{background:var(--white);font-size:var(--guide-print-body)}
 .course-page main,.course-page .course-content{max-width:none;width:100%;margin:0;padding:0}
 .course-page .course-content p,.course-page .course-content li{font-size:var(--guide-print-body);line-height:1.45;max-width:none}
 .course-page .course-content h2{font-size:var(--guide-print-heading);break-after:avoid;margin-block:var(--space-6) var(--space-3)}
 .course-page .course-content h3{font-size:var(--guide-print-subheading);break-after:avoid}
 .course-page .course-content>section{break-inside:auto;margin-block:var(--space-6)}
 .course-page .worked-detail,.course-page .course-visual,.course-page .lesson-faq{break-inside:avoid;box-shadow:none}
 .course-page .guide-tools,.course-page .diagram-help,.course-page .diagram-zoom,.course-page .lesson-actions,.course-page .course-tags,.course-page .lesson-contents,.course-page .learn-cta{display:none}
 .course-page .course-visual{padding:0;margin-block:var(--space-4)}
 .course-page .diagram-viewport{overflow:visible}
 .course-page .course-visual .diagram-viewport img{min-width:0;width:100%;max-width:100%;height:auto}
 .course-page .print-reference{display:block;font-size:var(--guide-small);overflow-wrap:anywhere}
 .course-page .print-reference a{color:var(--ink)}
 .course-page[data-print-mode="guide"] .course-hero{display:block;padding:0;margin:0 0 var(--space-6)}
 .course-page[data-print-mode="guide"] .course-hero h1{font-size:var(--guide-print-title);margin-block:var(--space-3)}
 .course-page[data-print-mode="guide"] .learn-content>section:not(.worksheet):not(.print-key):not(.learn-cta){display:block}
 .course-page[data-print-mode="guide"] .learn-content>.learn-cta{display:none}
 .course-page[data-print-mode="guide"] .worksheet{break-before:page}
 .course-page[data-print-mode="guide"] .source-note{font-size:var(--guide-print-body)}
 .course-page[data-print-mode="practice"] .course-hero{display:block;padding:0}
 .course-page[data-print-mode="practice"] .course-hero>:not(h1):not(.print-reference){display:none}
 .course-page[data-print-mode="practice"] .course-hero h1{font-size:var(--guide-print-title)}
 .course-page .print-key{display:none}
 .course-page.print-with-answers .print-key{display:block;break-before:page}
}
