/* Scoped teaching figures: no dependency on the legacy animation workspace. */
.story-widget{border:1px solid var(--border);border-radius:14px;padding:clamp(14px,3vw,28px);background:var(--surface);margin:1.4rem 0;color:var(--text)}
.story-widget label{display:block;font-weight:600;font-size:.9rem;margin-bottom:.5rem}
.story-widget select{width:100%;max-width:100%;padding:.7rem;border:1px solid var(--border-strong,var(--border));border-radius:7px;background:var(--bg);color:var(--heading);font:inherit;font-size:.9rem}
.story-selectors{display:grid;grid-template-columns:1fr 1fr;gap:1rem}
.story-description{min-height:3em;font-size:.95rem!important;line-height:1.6}
.story-plot{max-width:620px;margin:1rem auto;background:var(--bg);border:1px solid var(--border);border-radius:10px}
.story-plot svg{display:block;width:100%;height:auto;overflow:visible}
.story-plot text{font:13px system-ui,sans-serif;fill:var(--heading)}
.story-edge{fill:none;stroke:#5296da;stroke-width:2.5;opacity:.75}
.story-current{fill:none;stroke:#d77b22;stroke-width:4;stroke-dasharray:8 4}
.story-point{fill:var(--heading);stroke:var(--bg);stroke-width:2}
.story-grid{stroke:var(--border);stroke-width:1}
.story-film{fill:var(--bg-soft);stroke:var(--muted);stroke-width:1.5}
.story-film.accepted{fill:#226ba3;stroke:#68b7ef}.story-film.rejected{fill:var(--bg-soft);stroke:var(--muted);stroke-dasharray:3 2}
.story-film.current{stroke:#db842c;stroke-width:3}.story-cross{stroke:var(--heading);stroke-width:2}
.story-controls{display:flex;flex-wrap:wrap;gap:.5rem;margin:1rem 0}
.story-controls button{padding:.65rem .85rem;min-height:44px;font:inherit;font-size:.85rem;color:var(--heading);background:var(--bg);border:1px solid var(--border-strong,var(--border));border-radius:7px;cursor:pointer}
.story-controls button:hover:not(:disabled),.story-controls button[aria-pressed=true]{border-color:var(--accent);background:var(--accent-soft)}
.story-controls button:disabled{opacity:.45;cursor:default}.story-widget :focus-visible{outline:3px solid var(--accent);outline-offset:3px}
.story-status{min-height:4.6em;border-left:3px solid var(--accent);padding:.8rem 1rem;background:var(--bg-soft);font-size:.95rem!important}
.story-metrics{display:grid;grid-template-columns:1fr 1fr;gap:.8rem}.story-metrics>div{padding:.8rem;border-bottom:1px solid var(--border)}
.story-metrics span{display:block;font-size:.8rem;color:var(--muted)}.story-metrics strong{display:block;font-size:1.3rem;color:var(--heading);margin-top:.3rem}
.story-note{font-size:.8rem!important;line-height:1.5;color:var(--muted)}.story-trace{font-size:.85rem!important;overflow-wrap:anywhere}.story-conclusion{font-size:.95rem!important;min-height:3em}
.story-proof li{margin:.75rem 0;line-height:1.65}.story-comparison{padding-left:1.3rem;line-height:1.8}
@media(max-width:540px){.story-selectors{grid-template-columns:1fr}.story-widget{padding:12px}.story-metrics strong{font-size:1.05rem}.story-plot text{font-size:14px}.story-controls button{flex:1 1 auto}.story-status{min-height:7em}}

@media(min-width:900px){.story-stage{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:1.25rem;align-items:start}.story-plot{margin:0 auto}.story-step-panel .story-status{margin-top:0}.story-metrics{gap:.4rem}.story-controls button{padding:.6rem .65rem}.story-metrics strong{font-size:1.1rem}}
