.learning-main { max-width: 960px; font-size: 1rem; }
.path-nav,.lesson-actions { display:flex; flex-wrap:wrap; gap:1rem; align-items:center; }
.path-nav a { font-size:1rem; }
.path-eyebrow { color:#1d4ed8; font-weight:700; letter-spacing:.06em; font-size:.875rem; }
.path-panel,.path-stage,.lesson-section { background:#fff; border:1px solid #cbd5e1; border-radius:12px; padding:1.5rem; margin:1.5rem 0; }
.path-stage { border-left:5px solid #2563eb; }
.path-stage ol { padding-left:1.5rem; }
.path-stage li { margin:.9rem 0; }
.path-stage a { font-weight:600; }
.lesson-meta { color:#475569; }
.path-button,.learning-main button { display:inline-block; padding:.7rem 1rem; border:1px solid #1d4ed8; border-radius:7px; background:#1d4ed8; color:white; font:inherit; cursor:pointer; text-decoration:none; }
.path-button:hover,.learning-main button:hover { background:#1e40af; color:white; }
.path-panel progress { width:100%; height:1.1rem; accent-color:#2563eb; }
.learning-main pre { background:#0f172a; color:#e2e8f0; padding:1rem; border-radius:8px; overflow:auto; white-space:pre-wrap; overflow-wrap:anywhere; }
.learning-main code { font-size:.95rem; }
.learning-main summary,#sandbox-learning summary { cursor:pointer; font-weight:600; padding:.6rem 0; }
.learning-main details { margin:.75rem 0; }
.path-banner { padding:1rem; margin:1rem 0; background:#eff6ff; border-left:4px solid #2563eb; }
.skip-learning { position:absolute; left:1rem; top:-100px; z-index:100; background:white; padding:1rem; }
.skip-learning:focus { top:0; }
:where(.learning-main,.path-nav,#sandbox-learning) :focus-visible { outline:3px solid #b45309; outline-offset:4px; }
#sandbox-learning { font-size:1rem; }
#sandbox-learning[hidden] { display:none; }
.lesson-actions { margin:1.5rem 0; }
.lesson-check { display:block; margin:1rem 0; }
.lesson-check input { width:1.1rem; height:1.1rem; }
@media(max-width:600px) { .path-panel,.path-stage,.lesson-section { padding:1rem; } .learning-main h1 { font-size:2rem; line-height:1.2; } .lesson-actions>* { width:100%; } .path-nav { gap:.6rem 1rem; } }
