.learning-body > section:first-child { margin-top: 0; padding-top: 0; border-top: 0; }
.learning-diagram { margin: 28px 0; padding: 24px; border: 1px solid var(--line); border-radius: 8px; background: var(--surface); }
.learning-diagram ol { display: grid; grid-template-columns: repeat(3,minmax(0,1fr)); gap: 18px; list-style: none; margin: 0; padding: 0; counter-reset: stage; }
.learning-diagram li { margin: 0; padding: 12px 0; border-top: 3px solid var(--repair-accent); counter-increment: stage; }
.learning-diagram li::before { content: "0" counter(stage); display: block; color: #914300; font-size: .8rem; margin-bottom: 12px; }
.learning-diagram strong, .learning-diagram span { display: block; }
.learning-diagram strong { color: var(--ink); }
.learning-diagram span { font-size: .9375rem; margin-top: 10px; }
.learning-diagram figcaption { margin-top: 20px; font-size: .875rem; line-height: 1.6; color: var(--muted); }
.learning-terms { margin: 26px 0; }
.learning-terms dt { font-weight: 700; margin-top: 20px; }
.learning-terms dd { margin: 8px 0 0; color: var(--muted); line-height: 1.8; }
@media(max-width:600px) { .learning-diagram ol { grid-template-columns: 1fr; } .learning-diagram { padding: 20px; } }

.foundation-figure { margin: 26px 0; padding: 18px; background: var(--surface); border: 1px solid var(--line); border-radius: 8px; }
.foundation-figure svg { display: block; width: 100%; height: auto; stroke: none; fill: none; }
.foundation-figure svg text { fill: var(--ink); font: 16px Arial,sans-serif; }
.foundation-figure figcaption { font-size: .875rem; color: var(--muted); line-height: 1.6; margin-top: 14px; }
.demo-lamp { fill: white; stroke: var(--ink); stroke-width: 3; }
.is-closed .demo-lamp { fill: #ffdba8; }
.learning-detail summary { cursor: pointer; min-height: 44px; padding-block: 10px; font-weight: 650; line-height: 1.5; }
.learning-detail summary:focus-visible { outline: 3px solid var(--charcoal); outline-offset: 4px; }
.lesson-prerequisite { font-size: .9375rem; line-height: 1.7; color: var(--muted); }
.lesson-prerequisite a { text-decoration: underline; text-underline-offset: 4px; }
