.course-page{max-width:1320px;padding-top:30px}.course-page h1{font-size:clamp(2rem,3.2vw,3rem);font-weight:750;line-height:1.15;margin:12px 0 20px}.course-page h2{font-size:1.5rem;font-weight:700;margin:12px 0 18px}.course-page h3{font-size:1.1rem;font-weight:650}.course-page p{margin:12px 0}.course-page ul,.course-page ol{padding-left:23px;list-style:revert}.course-page li{margin:9px 0}.course-small{font-size:.875rem;color:var(--muted)}.course-page a{text-underline-offset:4px}.course-breadcrumbs{display:flex;flex-wrap:wrap;gap:18px;align-items:center;font-size:.875rem;margin-bottom:32px;color:var(--muted)}.course-breadcrumbs a:hover{color:var(--primary);text-decoration:underline}.course-library-heading,.course-overview-heading{display:grid;grid-template-columns:1.2fr 1fr;gap:64px;align-items:center;margin:32px 0 42px}.course-library-heading>div>p:last-child,.course-overview-heading>div>p{font-size:1.0625rem;color:var(--muted);max-width:650px}.course-library-heading aside{border:1px solid var(--border);background:var(--surface);border-radius:16px;padding:20px 26px 28px;font-size:.875rem}.course-library-heading aside strong,.course-library-heading aside span{display:block}.course-library-heading aside span{color:var(--muted);margin-top:5px}.course-map{width:100%;height:auto;color:var(--primary)}.course-map.compact{padding:4px 22px;background:#f1f5ff;border-top:1px solid var(--border);border-bottom:1px solid var(--border)}.course-filters{display:flex;flex-wrap:wrap;gap:10px;padding-bottom:22px;border-bottom:1px solid var(--border)}.course-filters button{border:1px solid var(--border);border-radius:100px;background:var(--surface);padding:9px 18px;font-size:.875rem;color:var(--ink)}.course-filters button.active{background:var(--primary);color:#fff;border-color:var(--primary)}.course-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px;margin-top:22px}.course-card{border:1px solid var(--border);border-radius:14px;background:var(--surface);overflow:hidden;display:flex;flex-direction:column}.course-card-top{display:flex;justify-content:space-between;gap:16px;padding:18px 22px;color:var(--primary);font-size:.875rem;font-weight:650}.course-card-body{padding:18px 24px 24px;display:flex;flex-direction:column;flex:1}.course-card h2{font-size:1.35rem}.course-card h2 a:hover{color:var(--primary);text-decoration:underline}.course-card-body>p:not(.course-small){color:var(--muted);margin:0 0 20px}.course-project-label{margin-top:auto;border-top:1px solid var(--border);padding-top:16px;letter-spacing:.1em;font-size:.75rem;color:var(--muted)}.course-project-label strong{display:block;letter-spacing:0;font-size:.875rem;color:var(--ink);margin-top:4px}.course-link{display:flex;justify-content:space-between;color:var(--primary);font-weight:650;font-size:.875rem;margin-top:20px}.course-link:hover{text-decoration:underline}.course-editorial-note{font-size:.875rem;color:var(--muted);padding-top:24px}.course-actions{display:flex;flex-wrap:wrap;gap:12px;margin:24px 0}.course-overview-art{text-align:center;background:#eef2ff;padding:22px;border:1px solid #dbe3fa;border-radius:16px}.course-overview-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin:30px 0}.course-overview-grid>section{background:var(--surface);padding:24px;border:1px solid var(--border);border-radius:14px}.course-curriculum{scroll-margin-top:110px;margin-top:42px}.course-section-heading{display:flex;justify-content:space-between;gap:20px;align-items:center}.course-chapter-row{display:grid;grid-template-columns:40px 1fr auto 20px;gap:20px;align-items:center;background:var(--surface);padding:22px;border:1px solid var(--border);border-bottom:0}.course-chapter-row:nth-child(2){border-radius:12px 12px 0 0}.course-chapter-row:last-child{border-bottom:1px solid var(--border);border-radius:0 0 12px 12px}.course-chapter-row:hover{background:#f8faff}.course-chapter-row p{font-size:.875rem;color:var(--muted);margin-bottom:0}.course-chapter-number{color:var(--primary);font-weight:650}.course-access{font-size:.75rem;border:1px solid var(--border);padding:4px 9px;border-radius:5px;color:var(--muted);white-space:nowrap}.course-access.open{background:#eef2ff;color:var(--primary);border-color:#c7d2fe}.course-capstone{background:var(--surface);border:1px solid var(--border);border-left:4px solid var(--primary);border-radius:12px;padding:28px;margin:36px 0}.course-reader{display:grid;grid-template-columns:270px minmax(0,1fr);gap:48px;align-items:start}.course-sidebar{position:sticky;top:100px;max-height:calc(100vh - 130px);overflow:auto;background:var(--surface);border:1px solid var(--border);border-radius:12px;padding:20px}.course-sidebar-title{font-weight:700;display:block;margin-bottom:18px}.course-sidebar nav a{display:flex;gap:12px;padding:12px 8px;font-size:.875rem;border-radius:6px}.course-sidebar nav a>span{color:var(--muted)}.course-sidebar nav a[aria-current=page]{background:#eef2ff;color:var(--primary)}.course-sidebar small{display:block;font-size:.75rem;color:var(--muted);margin-top:4px}.course-lesson-heading{padding:12px 0 30px;border-bottom:1px solid var(--border)}.course-lesson-heading h1{font-size:clamp(1.8rem,3vw,2.5rem)}.course-lesson-heading>p{color:var(--muted)}.course-lesson-heading>.eyebrow{color:var(--primary)}.course-body{max-width:790px}.course-body>section{margin:32px 0}.course-body p,.course-body li{line-height:1.85}.course-objectives{background:var(--surface);border:1px solid var(--border);padding:20px 24px;border-radius:12px}.course-objectives h2{font-size:1.1rem}.lesson-diagram{margin:32px 0;border-top:1px solid var(--border);border-bottom:1px solid var(--border);padding:22px 0}.lesson-diagram ol{display:flex;gap:10px;padding:0;list-style:none;counter-reset:diagram}.lesson-diagram li{flex:1;min-width:0;position:relative;border:1px solid #c7d2fe;border-radius:8px;background:#eef2ff;padding:12px;font-size:.875rem;line-height:1.5;color:#312e81;overflow-wrap:anywhere}.lesson-diagram li span{display:block;color:var(--primary);font-size:.75rem;font-weight:700;margin-bottom:8px}.lesson-diagram p{font-size:.875rem;color:var(--muted)}.course-code{border:1px solid var(--border);background:var(--surface);border-radius:10px;overflow:hidden}.course-code>span{display:block;padding:8px 16px;border-bottom:1px solid var(--border);font-size:.75rem;color:var(--muted)}.course-code pre{max-width:100%;overflow:auto;padding:18px;font-size:.875rem;line-height:1.7;white-space:pre;-moz-tab-size:4;-o-tab-size:4;tab-size:4}.course-lab,.course-quiz{background:#fff;border:1px solid var(--border);padding:26px;border-radius:12px}.course-lab details{border-top:1px solid var(--border);padding-top:16px;margin-top:20px}.course-lab summary{cursor:pointer;color:var(--primary);font-weight:650}.course-quiz fieldset{border:0;margin:20px 0;padding:0}.course-quiz legend{font-weight:650;margin-bottom:15px}.course-quiz label{display:flex;align-items:flex-start;gap:12px;padding:12px 0}.course-quiz input{margin-top:6px;accent-color:var(--primary);flex-shrink:0}.course-sources a{color:var(--primary);text-decoration:underline}.course-gate{padding:35px;background:#fff;border:1px solid var(--border);border-radius:14px;margin:30px 0}.course-lock{display:inline-grid;place-items:center;background:#eef2ff;color:var(--primary);width:46px;height:46px;border-radius:12px;font-size:24px;margin-bottom:20px}.course-pagination{display:flex;justify-content:space-between;gap:24px;padding:24px 0;border-top:1px solid var(--border);color:var(--primary);font-size:.875rem;font-weight:650}.course-pagination a:hover{text-decoration:underline}@media(max-width:1050px){.course-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.course-reader{grid-template-columns:220px minmax(0,1fr);gap:24px}.course-library-heading,.course-overview-heading{gap:28px}}@media(max-width:760px){.course-library-heading,.course-overview-heading,.course-reader,.course-overview-grid{grid-template-columns:1fr;gap:24px}.course-library-heading aside{padding:15px 22px}.course-library-heading{margin-top:18px}.course-sidebar{position:static;max-height:230px}.course-chapter-row{grid-template-columns:28px minmax(0,1fr) 18px;gap:12px;padding:18px}.course-access{grid-column:2;justify-self:start}.course-chapter-row>span:last-child{grid-column:3;grid-row:1}.course-section-heading{align-items:flex-start;flex-direction:column;gap:0}.course-overview-grid{margin:24px 0}.course-capstone,.course-lab,.course-quiz,.course-gate{padding:22px}.course-lesson-heading{padding-top:0}.lesson-diagram ol{flex-wrap:wrap}.lesson-diagram li{flex-basis:40%}.course-breadcrumbs{gap:10px}.course-page h1{overflow-wrap:anywhere}}@media(max-width:480px){.course-grid{grid-template-columns:1fr}.course-filters button{padding:8px 13px}.course-card-body{padding:18px 22px}.lesson-diagram li{flex-basis:100%}.course-pagination{gap:16px}.course-actions .btn{width:100%}}.course-reading-area{min-width:0}@media print{.course-sidebar,.course-pagination,.course-actions,.course-filters{display:none!important}.course-reader{display:block}.course-page{padding:0}.course-code pre{white-space:pre-wrap;overflow-wrap:anywhere}.course-body{max-width:none}.course-quiz{-moz-column-break-inside:avoid;break-inside:avoid}}.course-code-header{display:flex;justify-content:space-between;align-items:center;gap:12px;padding:8px 12px 8px 16px;border-bottom:1px solid var(--border);background:#f8faff;color:#475569;font-size:.875rem}.course-code-header>span{min-width:0;overflow-wrap:anywhere}.course-code-copy{flex-shrink:0;min-height:44px;min-width:116px;padding:8px 12px;color:var(--primary-dark)}.course-code-copy svg{flex-shrink:0}.course-code pre{margin:0}.course-code pre:focus-visible{outline-offset:-3px}.course-page .course-code-feedback{margin:0;padding:12px 16px 0;border-top:1px solid var(--border);color:#9f1239;font-size:.875rem;line-height:1.6}.course-code-fallback{padding:10px 16px 16px}.course-code-fallback .btn{min-height:44px}@media print{.course-code-copy,.course-code-feedback,.course-code-status,.course-code-fallback{display:none!important}}
