/* ABA explanatory loops — original diagrams, shared palette, optional motion. */
.motion-figure{min-width:0;margin:0}
.motion-figure .motion-media{overflow:hidden;border-radius:4px;background:var(--paper)}
.motion-figure picture{display:block}
.motion-figure .motion-media img{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:contain;mix-blend-mode:normal;border-radius:0}
.motion-figure .motion-caption{display:flex;align-items:center;justify-content:space-between;gap:12px;flex-wrap:wrap;font-size:12px;line-height:1.7;color:var(--muted);margin-top:12px}
.motion-figure .motion-actions{display:flex;align-items:center;gap:14px;flex-shrink:0}
.motion-toggle{display:inline-flex;align-items:center;justify-content:center;gap:7px;min-height:36px;padding:5px 10px;border:1px solid var(--line,#D9D6CE);border-radius:4px;background:transparent;color:var(--ink);font:inherit;cursor:pointer;white-space:nowrap}
.motion-toggle:hover{background:color-mix(in srgb,var(--action) 18%,var(--paper));color:var(--ink)}
.motion-toggle:focus-visible,.motion-download:focus-visible{outline:2px solid var(--blue);outline-offset:4px}
.motion-toggle:disabled{cursor:default;color:var(--muted)}
.motion-download{font-size:11px;text-decoration:underline;text-underline-offset:3px;white-space:nowrap}
@media(max-width:600px){
 .motion-figure .motion-media img{aspect-ratio:4/5}
 .motion-figure .motion-caption{gap:3px;margin-top:8px;font-size:11px}
 .motion-toggle{min-height:44px}
 .motion-download{display:inline-flex;align-items:center;min-height:44px}
}
@media print{.motion-actions{display:none!important}}

/* Course flow: the animated overview and the full, readable steps stay together. */
.journey-with-motion{display:grid;grid-template-columns:minmax(0,1.2fr) minmax(0,1fr);align-items:center;gap:40px}
.journey-with-motion .motion-media{border:0}
.motion-journey-list{list-style:none;padding:0;margin:0;min-width:0}
.motion-journey-list>li{display:grid;grid-template-columns:65px minmax(0,1fr);gap:16px;padding:19px 0;border-bottom:1px solid var(--line,#D9D6CE)}
.motion-journey-list>li:first-child{padding-top:0}
.motion-journey-list>li:last-child{border-bottom:0;padding-bottom:0}
.motion-step-meta{display:flex;flex-direction:column;align-items:flex-start;gap:9px;padding-top:2px}
.motion-step-meta>span{display:flex;align-items:center;justify-content:center;width:30px;height:30px;border-radius:50%;background:#F6E2D7;color:#B34E31;font-size:12px}
.motion-step-meta>b{font-size:12px;font-weight:500;color:var(--muted);white-space:nowrap}
.motion-step-copy h3{font-size:20px;line-height:1.45;margin:0 0 6px}
.motion-step-copy>p{font-size:13px;line-height:1.8;color:var(--muted);margin:0}
.motion-step-copy .motion-step-output{font-size:12px;color:var(--ink);margin-top:7px}
.motion-step-output>span{color:var(--muted);margin-right:8px}
@media(max-width:1000px){
 .journey-with-motion{grid-template-columns:1fr;gap:30px}
 .journey-with-motion>.motion-figure{width:100%;max-width:720px;justify-self:center}
 .motion-journey-list{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));column-gap:28px;row-gap:20px}
 .motion-journey-list>li,.motion-journey-list>li:first-child,.motion-journey-list>li:last-child{padding:0 0 20px;border-bottom:1px solid var(--line,#D9D6CE)}
}
@media(max-width:600px){
 .journey-with-motion{gap:25px}
 .motion-journey-list{grid-template-columns:1fr;gap:17px}
 .motion-journey-list>li{grid-template-columns:51px minmax(0,1fr);gap:14px}
 .motion-step-copy h3{font-size:19px}
 .motion-step-copy>p{font-size:13px}
 .motion-step-copy .motion-step-output{font-size:12px}
}
