/* Motion adapted from the fh01 analysis: reveal, linked tabs, accordion,
   modal, counters and touch gallery. No third-party animation runtime. */
:root{--motion-fast:180ms;--motion-base:280ms;--motion-reveal:420ms;--motion-ease:cubic-bezier(.22,.68,.2,1)}
.motion-enabled .bottom-nav{isolation:isolate}
.motion-indicator{position:absolute;top:7px;left:0;height:54px;z-index:-1;background:var(--color-accent-soft);border-radius:13px;pointer-events:none;transition:transform var(--motion-base) var(--motion-ease)}
.motion-enabled .bottom-nav a[aria-current=page]{background:transparent}
.motion-enabled .bottom-nav a,.desktop-nav a{transition:color var(--motion-fast) ease,background var(--motion-fast) ease}
.motion-enabled .course-tabs{position:sticky;isolation:isolate}
.course-tab-indicator{position:absolute;left:0;bottom:0;height:3px;width:50%;background:var(--color-accent);pointer-events:none;transition:transform var(--motion-base) var(--motion-ease)}
.motion-enabled .course-tabs a[aria-current=page]{border-bottom-color:transparent}
.app-header{transition:box-shadow var(--motion-base) ease}
.app-header.is-scrolled{box-shadow:0 4px 18px var(--color-shadow)}
.answer-option{transition:background var(--motion-fast) ease,border-color var(--motion-fast) ease}
.button:active,.assessment-entry:active{transform:translateY(1px)}
.text-link>span,.assessment-entry>.icon:last-child,.course-preview>.icon{transition:transform var(--motion-fast) var(--motion-ease)}
details summary:after{content:'+'!important;transition:transform var(--motion-fast) var(--motion-ease)}
details[open]:not(.is-collapsing)>summary:after{transform:rotate(45deg)}
.case-rail{display:flex;overflow-x:auto;overscroll-behavior-x:contain;scroll-snap-type:x mandatory;gap:16px;scrollbar-width:none;border-radius:var(--radius-md);padding-bottom:2px}
.case-rail::-webkit-scrollbar{display:none}
.case-rail>.case-card{flex:0 0 94%;scroll-snap-align:center;min-width:0;transform-origin:center}
.case-rail:focus-visible{outline:3px solid var(--color-focus);outline-offset:4px}
.case-rail-controls{display:flex;justify-content:flex-end;align-items:center;gap:16px;margin-top:12px}
.case-rail-controls button{width:44px;height:44px;border:var(--rule);background:var(--color-paper);border-radius:50%;font-size:20px}
.case-rail-controls span{font:13px var(--font-number);color:var(--color-muted);min-width:44px;text-align:center}
@media(hover:hover) and (pointer:fine){
 .case-card,.product-card,.focus-course{transition:border-color var(--motion-fast) ease}
 .case-card:hover,.product-card:hover,.focus-course:hover{border-color:var(--color-accent)}
 .text-link:hover>span,.assessment-entry:hover>.icon:last-child,.course-preview:hover>.icon{transform:translateX(3px)}
}
@media(max-width:520px){:root{--motion-base:240ms;--motion-reveal:340ms}.case-rail>.case-card{flex-basis:92%}}
@media(prefers-reduced-motion:reduce){
 *,*:before,*:after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
 .case-rail{scroll-snap-type:x proximity}
}
@media print{.motion-indicator,.course-tab-indicator,.case-rail-controls{display:none}.case-rail{display:block;overflow:visible}}

.score-row progress{transform-origin:left center}
.report-score strong>span[aria-hidden="true"]{display:inline;font:inherit;color:inherit}
