/* Only armed by JS; content stays visible without animation support. */
.motion-upgrade [data-reveal].reveal-ready{opacity:0;transform:translateY(20px);transition:opacity .7s var(--ease-out),transform .7s var(--ease-out);transition-delay:var(--reveal-delay,0ms)}
.motion-upgrade [data-reveal].reveal-ready.is-revealed{opacity:1;transform:none}
.motion-upgrade .section-rule{position:relative}.motion-upgrade .section-rule:after{content:'';display:block;width:64px;height:2px;background:var(--accent);margin-top:22px;transform:scaleX(0);transform-origin:left;transition:transform .9s var(--ease-out)}.motion-upgrade .section-rule.rule-visible:after{transform:scaleX(1)}
.motion-upgrade .training-board.board-ready .tactics-route:not(.secondary){stroke-dashoffset:650;transition:stroke-dashoffset 1.7s var(--ease-out) .25s}.motion-upgrade .training-board.board-ready.board-visible .tactics-route:not(.secondary){stroke-dashoffset:0}
[data-scroll-image]{transform:translateY(var(--image-drift,0px)) scale(1.045)}
[data-no-magnet]{transform:none!important}
@media(prefers-reduced-motion:reduce){.motion-upgrade [data-reveal].reveal-ready{opacity:1;transform:none;transition:none}.motion-upgrade .section-rule:after{transform:none;transition:none}[data-scroll-image]{transform:none!important}.motion-upgrade .training-board.board-ready .tactics-route:not(.secondary){stroke-dashoffset:0;transition:none}}
@media print{.motion-upgrade [data-reveal].reveal-ready{opacity:1!important;transform:none!important}[data-scroll-image]{transform:none!important}.training-questions details>p{display:block!important}.motion-upgrade .section-rule:after{transform:none}}
