/* Course catalog and published lessons; scoped to these two pages. */
.ma-course-page .ma-course-feature { display:grid; grid-template-columns:1.05fr 1fr; border:1px solid var(--ma-section-border); border-radius:var(--ma-radius); overflow:hidden; background:var(--ma-section-bg); }
.ma-course-feature-image { display:flex; align-items:center; background:#0f1117; }
.ma-course-feature-image img { width:100%; height:auto; display:block; }
.ma-course-feature-body { padding:clamp(1.25rem,3vw,2.5rem); }
.ma-course-feature-body h3 { margin:.35rem 0; font-size:clamp(1.7rem,3vw,2.3rem); line-height:1.15; }
.ma-course-subtitle,.ma-course-reading { color:var(--ma-section-text-muted); }
.ma-course-actions { display:flex; flex-wrap:wrap; gap:.6rem; margin-top:1.25rem; }
.ma-course-upcoming { margin-top:1rem; }
.ma-course-status { display:flex; align-items:center; flex-wrap:wrap; gap:.75rem; font-weight:600; }
.ma-course-status span { font-size:.8rem; color:var(--ma-section-accent); border:1px solid var(--ma-section-border); border-radius:999px; padding:.3rem .65rem; }
.ma-lesson-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:1.25rem; }
.ma-lesson-card { border:1px solid var(--ma-section-border); border-radius:var(--ma-radius); overflow:hidden; background:var(--ma-section-bg); min-width:0; }
.ma-lesson-cover { position:relative; display:block; background:#0f1117; }
.ma-lesson-cover img { width:100%; height:auto; aspect-ratio:16/9; object-fit:cover; display:block; }
.ma-lesson-duration,.ma-lesson-new { position:absolute; padding:.25rem .5rem; border-radius:.25rem; font-size:.78rem; font-weight:700; }
.ma-lesson-duration { right:.6rem; bottom:.6rem; color:#fff; background:#111d; }
.ma-lesson-new { top:.65rem; right:.65rem; color:#111; background:#ffcf71; }
.ma-lesson-body { padding:1.3rem; }
.ma-lesson-kicker { font-size:.75rem; font-weight:700; color:var(--ma-section-accent); letter-spacing:.05em; text-transform:uppercase; margin:0 0 .6rem; }
.ma-lesson-body h3 { font-size:1.4rem; line-height:1.25; margin:0 0 .75rem; }
.ma-lesson-body>p:not(.ma-lesson-kicker) { color:var(--ma-section-text-muted); font-size:.95rem; }
.ma-lesson-topics { display:flex; flex-wrap:wrap; gap:.4rem; margin:1rem 0 1.2rem; }
.ma-lesson-topics span { border:1px solid var(--ma-section-border); border-radius:999px; padding:.25rem .55rem; font-size:.75rem; color:var(--ma-section-text-muted); }
.ma-lesson-player { margin-top:1rem; border-top:1px solid var(--ma-section-border); padding-top:.8rem; }
.ma-lesson-player summary { cursor:pointer; color:var(--ma-section-accent); font-weight:600; font-size:.9rem; }
.ma-lesson-player .ratio { margin-top:.8rem; }
.ma-course-reading { margin:1.3rem 0; font-size:.95rem; }
.ma-course-page a:focus-visible,.ma-course-page summary:focus-visible { outline:3px solid var(--ma-section-accent); outline-offset:4px; }
@media(max-width:800px) { .ma-course-page .ma-course-feature,.ma-lesson-grid { grid-template-columns:1fr; } .ma-course-feature-body { padding:1.3rem; } }
@media(prefers-reduced-motion:reduce) { .ma-course-page .ma-card { transition:none; } }

.ma-course-page .btn-outline-primary { color:var(--ma-section-accent); border-color:var(--ma-section-accent); }
.ma-course-page .btn-outline-primary:hover { color:var(--ma-section-bg); background:var(--ma-section-accent); }
