.course-page{padding-top:var(--space-xl);padding-bottom:var(--space-xl);min-width:0}body:has(.course-page) .site-header{column-gap:var(--space-sm);flex-wrap:wrap}.course-page .button,.course-page .back-link{white-space:normal;overflow-wrap:anywhere;text-align:center;min-width:0;max-width:100%}.course-page .button{min-height:48px}.course-page svg{flex-shrink:0}.course-page p,.course-page li,.course-page span{overflow-wrap:anywhere}.course-heading{gap:var(--space-xl);padding-block:var(--space-md) var(--space-2xl);display:grid}.course-heading h1,.course-locked-heading h1,.course-lesson-heading h1{max-width:21ch;margin-block:var(--space-md);font-size:clamp(2rem,5vw,3.75rem)}.course-intro{max-width:63ch;color:var(--color-ink-2);font-size:var(--text-lg)}.course-availability{align-items:flex-start;gap:var(--space-sm);font-size:var(--text-sm);color:var(--color-muted);max-width:60ch;margin-top:var(--space-lg);display:flex}.course-availability svg{margin-top:var(--space-xs)}.course-start-panel{align-content:start;gap:var(--space-md);background:var(--color-paper-2);border-top:2px solid var(--color-accent);padding:min(var(--space-lg), 24px);display:grid}.course-panel-label,.course-assignment>span,.course-lesson-outcome>span{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-accent)}.course-secondary-copy,.course-progress>p{font-size:var(--text-sm);color:var(--color-muted)}.course-progress{border-top:1px solid var(--color-rule);padding-top:var(--space-md)}.course-progress label{font-size:var(--text-sm);color:var(--color-ink-2);display:block}.course-progress progress{width:100%;height:5px;margin-block:var(--space-sm) var(--space-md);background:var(--color-rule);accent-color:var(--color-accent);border:0;display:block}.course-progress progress::-webkit-progress-bar{background:var(--color-rule)}.course-progress progress::-webkit-progress-value{background:var(--color-accent)}.course-progress progress::-moz-progress-bar{background:var(--color-accent)}.course-overview-layout,.course-workspace{gap:var(--space-2xl);align-items:start;display:grid}.course-overview-layout>*,.course-workspace>*{min-width:0}.course-section-heading{gap:var(--space-sm);margin-bottom:var(--space-lg);display:grid}.course-section-heading h2,.course-resources-aside h2,.course-access-gate h2,.course-empty-state h2,.course-update h2,.course-prose-section h2,.course-assignment h2,.course-checklist h2,.course-prompt h2{font-size:clamp(1.4rem,2.4vw,2rem)}.course-section-heading p,.course-resources-aside>p{color:var(--color-muted);font-size:var(--text-sm)}.course-block{border-top:1px solid var(--color-rule)}.course-block:last-child{border-bottom:1px solid var(--color-rule)}.course-block summary{align-items:flex-start;gap:var(--space-md);padding-block:var(--space-lg);cursor:pointer;min-height:64px;list-style:none;display:flex}.course-block summary::-webkit-details-marker{display:none}.course-navigation-details summary::-webkit-details-marker{display:none}.course-block summary:hover{color:var(--color-accent)}.course-block-number,.course-nav-number{font-family:var(--font-mono);font-size:var(--text-xs);color:var(--color-muted);line-height:1.9}.course-block-title{min-width:0;font-family:var(--font-display);font-weight:600;font-size:var(--text-lg);flex:1;line-height:1.3}.course-block-title small{font-family:var(--font-body);font-weight:400;font-size:var(--text-xs);color:var(--color-muted);margin-top:var(--space-sm);display:block}.course-block[open]>summary>svg{transform:rotate(180deg)}.course-block-body{padding-bottom:var(--space-lg);color:var(--color-muted);font-size:var(--text-sm)}.course-block-outcome{color:var(--color-ink-2);margin-bottom:var(--space-sm)}.course-lesson-list,.course-navigation-details ol,.course-resource-list,.course-checklist ul{margin:0;padding:0;list-style:none}.course-lesson-list{margin-top:var(--space-lg)}.course-lesson-list a{justify-content:space-between;align-items:center;gap:var(--space-md);padding:var(--space-md);background:var(--color-paper-2);min-height:64px;color:var(--color-ink);display:flex}.course-lesson-list a:hover{background:var(--color-paper-3)}.course-lesson-list-title{align-items:flex-start;gap:var(--space-sm);min-width:0;display:flex}.course-lesson-list-title>svg{margin-top:var(--space-xs);color:var(--color-accent)}.course-lesson-list-title small,.course-planned-lesson small{font-size:var(--text-xs);color:var(--color-muted);margin-top:var(--space-xs);display:block}.course-planned-lesson{border-left:2px solid var(--color-rule);padding-left:var(--space-md)}.course-planned-lesson>span{color:var(--color-ink-2)}.course-resources-aside>p{margin-top:var(--space-md)}.course-resource-nav{gap:var(--space-sm) var(--space-lg);margin-block:var(--space-lg);flex-wrap:wrap;display:flex}.course-resource-nav a{justify-content:space-between;align-items:center;gap:var(--space-sm);max-width:100%;min-height:48px;padding-block:var(--space-sm);font-size:var(--text-sm);border-bottom:1px solid var(--color-rule);overflow-wrap:anywhere;display:inline-flex}.course-resource-nav a:hover,.course-resource-nav a[aria-current]{color:var(--color-accent);border-color:var(--color-accent)}.course-resources-aside .course-resource-nav,.course-sidebar .course-resource-nav{gap:0;display:grid}.course-locked-heading{margin-block:var(--space-md) var(--space-xl);max-width:65ch}.course-locked-heading>p{color:var(--color-ink-2)}.course-access-gate{align-items:flex-start;gap:var(--space-md);background:var(--color-paper-2);padding:min(var(--space-lg), 24px);max-width:48rem;margin-block:var(--space-xl);display:flex}.course-access-gate>svg{color:var(--color-accent)}.course-access-gate>div{min-width:0}.course-access-gate p{margin-block:var(--space-md) var(--space-lg);color:var(--color-ink-2)}.course-resource-panel{border-top:1px solid var(--color-rule);min-height:280px;padding-block:var(--space-xl);max-width:52rem}.course-empty-state{gap:var(--space-md);justify-items:start;max-width:60ch;display:grid}.course-empty-state>svg,.course-update>svg{color:var(--color-accent)}.course-empty-state p,.course-update p{color:var(--color-ink-2)}.course-update{align-items:flex-start;gap:var(--space-md);display:flex}.course-update h2{margin-block:var(--space-sm) var(--space-md)}.course-update .back-link{margin-block:var(--space-md) 0}.course-sidebar{border-block:1px solid var(--color-rule);font-size:var(--text-sm)}.course-navigation-details>summary{min-height:48px;padding-block:var(--space-md);cursor:pointer;color:var(--color-ink-2);list-style:none}.course-navigation-details>summary:after{content:"+";float:right;padding-left:var(--space-sm);font-family:var(--font-mono)}.course-navigation-details[open]>summary:after{content:"−"}.course-overview-link{min-height:44px;color:var(--color-accent);align-items:center;display:flex}.course-navigation-details ol li{gap:var(--space-sm);padding-block:var(--space-sm);grid-template-columns:1.4rem minmax(0,1fr);display:grid}.course-navigation-details ol li p{color:var(--color-ink-2)}.course-navigation-details ol a{align-items:center;gap:var(--space-sm);min-height:44px;color:var(--color-muted);display:flex}.course-navigation-details a[aria-current],.course-navigation-details a:hover{color:var(--color-accent)}.course-nav-planned{color:var(--color-muted);font-size:var(--text-xs);padding-top:var(--space-xs);display:block}.course-lesson{min-width:0;max-width:70ch}.course-format{align-items:center;gap:var(--space-sm);color:var(--color-muted);font-size:var(--text-sm);display:inline-flex}.course-lesson-outcome{border-left:2px solid var(--color-accent);padding-left:var(--space-lg);margin-top:var(--space-xl)}.course-lesson-outcome p{margin-top:var(--space-sm);color:var(--color-ink-2)}.course-prose-section,.course-checklist,.course-prompt{margin-top:var(--space-2xl)}.course-prose-section p,.course-prose-section ul,.course-checklist ul{margin-top:var(--space-md)}.course-prose-section p,.course-prose-section li{color:var(--color-ink-2)}.course-prose-section ul:not(.course-resource-list){padding-left:var(--space-lg)}.course-prose-section li+li{margin-top:var(--space-sm)}.course-assignment{background:var(--color-paper-2);padding:min(var(--space-lg), 24px);margin-top:var(--space-2xl)}.course-assignment h2{margin-block:var(--space-sm) var(--space-md)}.course-assignment p{color:var(--color-ink-2)}.course-checklist li{align-items:flex-start;gap:var(--space-sm);margin-top:var(--space-md);color:var(--color-ink-2);display:flex}.course-checklist li>svg{margin-top:var(--space-xs);color:var(--color-accent)}.course-lesson-footer{justify-items:start;gap:var(--space-xl);border-top:1px solid var(--color-rule);padding-top:var(--space-xl);margin-top:var(--space-2xl);display:grid}.course-completion{width:100%;min-width:0}.course-completion>p{margin-top:var(--space-sm)}.course-completion [aria-pressed=true]{border-color:var(--color-success)}.course-next-state p{font-size:var(--text-sm);color:var(--color-muted)}.course-next-state .back-link{margin-block:var(--space-sm) 0}.course-prompt-heading{justify-content:space-between;align-items:center;gap:var(--space-md);flex-wrap:wrap;display:flex}.course-prompt pre{background:var(--color-paper-2);border-left:2px solid var(--color-accent);padding:var(--space-md);white-space:pre-wrap;overflow-wrap:anywhere;font-family:var(--font-mono);font-size:var(--text-sm)}.course-resource-list li{padding-block:var(--space-md);border-bottom:1px solid var(--color-rule)}.course-resource-list a{align-items:center;gap:var(--space-sm);min-height:44px;color:var(--color-accent);display:inline-flex}.course-resource-list p{color:var(--color-muted);font-size:var(--text-sm)}@media (max-width:47.999rem){.course-workspace .course-sidebar{order:2}.course-workspace .course-lesson{order:1}.course-completion .button{width:100%}}@media (min-width:48rem){.course-heading{gap:var(--space-xl);grid-template-columns:minmax(0,1.35fr) minmax(0,1fr)}.course-overview-layout{grid-template-columns:minmax(0,1fr) minmax(0,.42fr)}.course-workspace{gap:var(--space-xl);grid-template-columns:minmax(0,.4fr) minmax(0,1fr)}.course-block-body{padding-left:var(--space-xl)}.course-resources-aside,.course-sidebar{top:var(--space-lg);position:sticky}}@media (min-width:70rem){.course-heading{gap:var(--space-3xl);grid-template-columns:minmax(0,1.6fr) minmax(0,1fr)}.course-overview-layout,.course-workspace{gap:var(--space-3xl)}.course-start-panel{padding:var(--space-xl)}}
body:has(.library-page,.account-page) .site-header{column-gap:var(--space-sm);flex-wrap:wrap}.library-page .page-nav,.account-page .page-nav{flex-wrap:wrap;row-gap:0}.library-page .catalogue-art,.library-page .catalogue-description,.account-page .account-grid>section{overflow-wrap:anywhere;min-width:0}.account-page .account-grid{grid-auto-columns:minmax(0,1fr)}.account-page .button{white-space:normal;overflow-wrap:anywhere;text-align:center;min-width:0;max-width:100%}.account-page .button svg,.account-page .access-status svg{flex-shrink:0}.account-page .account-heading>div{min-width:0;max-width:100%}@media (max-width:39.99rem){.account-page .account-grid>section{padding:min(var(--space-lg), 24px)}}.cs-course-entry{gap:var(--space-lg);padding-block:var(--space-xl);margin-bottom:var(--space-xl);border-block:1px solid var(--color-rule);display:grid}.cs-course-entry>div{min-width:0}.cs-entry-eyebrow{color:var(--color-accent);font-family:var(--font-mono);font-size:var(--text-xs);letter-spacing:.06em}.cs-course-entry h2{margin-block:var(--space-sm) var(--space-md);overflow-wrap:anywhere;font-size:clamp(1.8rem,4vw,3rem)}.cs-course-entry h2 a{align-items:baseline;gap:var(--space-sm);display:inline-flex}.cs-course-entry h2 svg{flex-shrink:0}.cs-course-entry p{max-width:65ch}.cs-entry-status{margin-top:var(--space-md);font-size:var(--text-sm);color:var(--color-muted)}.cs-course-entry .button{white-space:normal;text-align:center;width:100%;min-width:0}.cs-entry-modules{gap:var(--space-md);margin-top:var(--space-lg);grid-template-columns:repeat(2,minmax(0,1fr));display:grid}.cs-entry-modules li{align-items:start;gap:var(--space-sm);min-width:0;font-size:var(--text-sm);overflow-wrap:anywhere;display:flex}.cs-entry-modules span{color:var(--color-accent);font-family:var(--font-mono)}.cs-course-account-note{margin-bottom:var(--space-md);font-size:var(--text-sm)}.cs-legacy-progress{padding-block:var(--space-xl);border-bottom:1px solid var(--color-rule)}.cs-legacy-progress .text-link{white-space:normal}@media (max-width:23rem){.cs-entry-modules{grid-template-columns:minmax(0,1fr)}}@media (min-width:60rem){.cs-course-entry{align-items:center;gap:var(--space-3xl);padding-block:var(--space-2xl);grid-template-columns:minmax(0,1fr) auto}.cs-course-entry .button{width:auto}}
