/*! RLT */
body.application-shell .premium-lesson :is(.hands-on-lab,.diagnostic-case,.technical-diagram){margin:28px 0;padding:20px;border:1px solid var(--line);border-radius:12px;background:var(--surface-raised)}
body.application-shell .premium-lesson .hands-on-lab{border-top:3px solid var(--accent)}
body.application-shell .premium-lesson .technical-diagram svg{display:block;width:100%;height:auto;color:var(--ink);font-size:15px;font-family:inherit}
body.application-shell .technical-diagram svg rect{fill:var(--paper);stroke:var(--accent);stroke-width:1.5}
body.application-shell .technical-diagram svg text{fill:var(--ink);stroke:none}
body.application-shell .technical-diagram figcaption{font-size:.88rem;line-height:1.7}
body.application-shell .case-choices{display:grid;gap:10px;margin:20px 0}
body.application-shell .case-choices button{text-align:left;white-space:normal;line-height:1.6;padding:14px;background:var(--paper);color:var(--ink);border:1px solid var(--line)}
body.application-shell .case-choices button:focus-visible{outline:2px solid var(--accent);outline-offset:3px}
body.application-shell [data-case-feedback]{padding:16px;border-left:3px solid var(--accent);background:var(--paper);line-height:1.75;margin-bottom:16px}
body.application-shell .case-notebook{margin:20px 0}
body.application-shell .academy-workshop-path{border-top:1px solid var(--line);margin-top:20px;padding-top:12px}
body.application-shell .academy-workshop-path li{line-height:1.8}
@media(max-width:600px){body.application-shell .premium-lesson :is(.hands-on-lab,.diagnostic-case,.technical-diagram){padding:14px}body.application-shell .technical-diagram{overflow-x:auto}body.application-shell .premium-lesson .technical-diagram svg{min-width:480px}}
/* Academy teaching surfaces inherit both appearance palettes. */
body.application-shell .premium-lesson{max-width:850px;margin:auto;color:var(--ink)}
body.application-shell .premium-lesson p{line-height:1.8;max-width:72ch}
body.application-shell .lesson-heading h2{font-size:clamp(1.6rem,3vw,2.1rem);line-height:1.2;margin:14px 0}
body.application-shell .lesson-meta{display:flex;flex-wrap:wrap;gap:8px 20px;font-size:.85rem;color:var(--muted)}
body.application-shell .lesson-edition{font-size:.75rem;margin-top:10px;color:var(--muted)}
body.application-shell .learning-tabs{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:6px;margin:24px 0;padding:6px;background:var(--paper);border:1px solid var(--line);border-radius:12px}
body.application-shell .learning-tabs button{display:grid;gap:4px;min-height:64px;text-align:left;background:transparent;color:var(--muted);border:1px solid transparent;padding:10px}
body.application-shell .learning-tabs button span{font-size:.7rem;letter-spacing:.1em}
body.application-shell .learning-tabs button[aria-selected=true]{background:var(--surface-raised);color:var(--ink);border-color:var(--accent);box-shadow:inset 0 -2px var(--accent)}
body.application-shell .premium-lesson [role=tabpanel]{padding:0;outline-offset:6px}
body.application-shell .premium-lesson [hidden]{display:none!important}
body.application-shell .premium-lesson h3{font-size:1.18rem;line-height:1.45;margin-top:24px}
body.application-shell .premium-lesson h4{font-size:1rem;line-height:1.5;margin:12px 0 4px}
body.application-shell .premium-lesson li{line-height:1.7;padding-left:4px}
body.application-shell .premium-lesson :is(.lesson-objectives,.recall-first,.practice-conditions,.lesson-result,.lesson-field-guide,.spaced-review){border:1px solid var(--line);border-radius:12px;padding:18px 22px;margin:20px 0;background:var(--surface-raised)}
body.application-shell .premium-lesson :is(.lesson-objectives,.recall-first,.practice-conditions,.lesson-result,.lesson-field-guide,.spaced-review)>:first-child{margin-top:0}
body.application-shell .premium-lesson .recall-first{border-left:3px solid var(--accent)}
body.application-shell .premium-lesson .study-section{max-width:100%;padding:6px 0 20px;margin-bottom:18px}
body.application-shell .reasoned-steps{list-style:none;padding:0;counter-reset:step}
body.application-shell .reasoned-steps>li{counter-increment:step;position:relative;padding:4px 0 10px 54px;border-bottom:1px solid var(--line)}
body.application-shell .reasoned-steps>li::before{content:counter(step,decimal-leading-zero);position:absolute;left:0;top:18px;color:var(--accent);font-weight:800;font-size:1.3rem}
body.application-shell .practice-question{padding:18px 20px;margin:26px 0;border:1px solid var(--line);border-radius:12px;min-width:0}
body.application-shell .practice-question legend{font-size:1rem;line-height:1.6;padding:0 5px;white-space:normal}
body.application-shell .practice-question .choice{padding:12px;margin:8px 0;border:1px solid var(--line);border-radius:8px;cursor:pointer;color:var(--ink);background:var(--paper)}
body.application-shell .practice-question .choice:has(input:checked){border-color:var(--accent);background:var(--surface-raised)}
body.application-shell .practice-feedback{margin:14px 0 0;padding:15px;border-left:3px solid var(--accent);background:var(--surface-raised);font-size:.95rem;line-height:1.75;color:var(--ink)}
body.application-shell .practice-feedback[data-correct=true]{border-left-color:var(--green)}
body.application-shell .lesson-finish{border-top:1px solid var(--line);margin-top:28px;padding-top:16px}
body.application-shell .lesson-finish>p{font-size:.85rem}
body.application-shell .academy-method,body.application-shell .academy-review{padding:22px;border:1px solid var(--line);border-radius:12px;margin:24px 0;background:var(--surface);color:var(--ink)}
body.application-shell .learning-method-grid{display:grid;grid-template-columns:1fr 1fr;gap:28px}
body.application-shell .academy-review ul{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;list-style:none;padding:0}
body.application-shell .academy-review li{display:grid;gap:12px;background:var(--paper);border:1px solid var(--line);border-radius:8px;padding:16px;font-size:.9rem}
body.application-shell .academy-review li span{font-size:.75rem;color:var(--muted)}
body.application-shell .premium-lesson .lesson-references li{overflow-wrap:anywhere}
@media(max-width:760px){body.application-shell .learning-method-grid,body.application-shell .academy-review ul{grid-template-columns:1fr}body.application-shell .learning-tabs{gap:3px;padding:4px}body.application-shell .learning-tabs button{font-size:.75rem;padding:8px 5px}body.application-shell .premium-lesson :is(.lesson-objectives,.recall-first,.practice-conditions,.lesson-result,.lesson-field-guide,.spaced-review){padding:16px}body.application-shell .practice-question{padding:14px 10px}body.application-shell .lesson-finish .row>*{flex:1;text-align:center}body.application-shell .premium-lesson .reasoned-steps>li{padding-left:42px}}

body.application-shell .practice-inputs{border-left:3px solid var(--accent);padding:4px 20px;margin:24px 0;background:var(--paper);border-radius:0 8px 8px 0}

body.application-shell .lesson-reference-table{margin:24px 0}body.application-shell .lesson-reference-table table{background:var(--surface)}body.application-shell .lesson-reference-table caption{text-align:left;font-weight:750;color:var(--ink);padding:12px 0}body.application-shell .lesson-reference-table :is(th,td){font-size:.85rem;white-space:normal;vertical-align:top;padding:12px}body.application-shell .lesson-reference-table figcaption{font-size:.8rem;color:var(--muted);line-height:1.6;margin-top:10px}

/* RLT: Installation learning path */
.academy-path{margin:1.5rem 0;padding:clamp(1rem,3vw,2rem);border:1px solid var(--line);border-radius:16px;background:var(--surface)}
.academy-path h2{margin-top:.5rem}.path-foundations{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:1.25rem;padding-left:1.4rem;margin:1.5rem 0}.path-foundations li{padding-right:1rem}.academy-path li span{display:block;font-size:.85rem;color:var(--muted,#b3c0d2);margin-top:.4rem}.path-requirement{margin:.8rem 0;padding:.8rem;border-left:3px solid var(--accent,#41d6be)}.path-requirement p{margin:.2rem 0}.path-status{font-size:.85rem;color:var(--muted,#b3c0d2)}.path-missing{padding-left:1.25rem}.path-missing li{margin:1rem 0}.path-missing .row{flex-wrap:wrap}
@media(max-width:760px){.path-foundations{grid-template-columns:1fr 1fr}}
@media(max-width:440px){.path-foundations{grid-template-columns:1fr}}
