/* Lesson 1.4.3 diagrams — theme-aware and responsive. */
.lesson-143-figure{margin:1.6rem 0;padding:16px;border:1px solid var(--lds-line);border-radius:16px;background:var(--lds-surface);overflow:hidden}
.lesson-143-figure svg{display:block;width:100%;height:auto}
.lesson-143-figure figcaption{margin-top:12px;color:var(--lds-muted);font-size:13px;line-height:1.6}
.d143-bg{fill:var(--lds-surface);stroke:var(--lds-line);stroke-width:1.2}
.d143-axis{fill:none;stroke:var(--lds-muted);stroke-width:1.5;opacity:.75}
.d143-points circle{fill:var(--lds-muted);opacity:.8}
.d143-under,.d143-good,.d143-over,.d143-train,.d143-validation{fill:none;stroke-width:4;stroke-linecap:round;stroke-linejoin:round}
.d143-under{stroke:#e5a23b}.d143-good{stroke:var(--lds-good)}.d143-over{stroke:#a78bfa;stroke-width:3}
.d143-train{stroke:var(--lds-accent)}.d143-validation{stroke:#e5a23b}
.d143-best{stroke:var(--lds-good);stroke-width:2;stroke-dasharray:7 6}
.d143-dot{fill:var(--lds-good);stroke:var(--lds-surface);stroke-width:2}
.d143-label{fill:var(--lds-ink);font:600 13px Manrope,Arial,sans-serif}
.d143-flow rect{fill:color-mix(in srgb,var(--lds-accent) 10%,var(--lds-surface));stroke:var(--lds-accent);stroke-width:1.5}
.d143-flow path{fill:none;stroke:var(--lds-accent);stroke-width:2.3;stroke-linecap:round;stroke-linejoin:round}
@media(max-width:620px){.lesson-143-figure{padding:8px;margin:1.2rem -4px;overflow-x:auto}.lesson-143-figure svg{min-width:680px}.lesson-143-figure figcaption{font-size:12px}}
