큰 움직임(패럴랙스, 확대·축소, 흔들림)은 전정 장애가 있는 사용자에게 어지럼증·메스꺼움을 유발할 수 있습니다. macOS·iOS·Windows·Android는 모두 시스템 설정에 "동작 줄이기"가 있고, `@media (prefers-reduced-motion: reduce)`로 그 설정을 CSS에서 읽을 수 있습니다.
완전히 애니메이션을 없애기보다는 **거리와 크기를 줄이는** 방향이 낫습니다 — 슬라이드 대신 페이드, 큰 확대 대신 즉시 전환. 로딩 스피너처럼 진행 상태를 알려주는 기능적으로 중요한 움직임까지 지우면 오히려 정보가 사라지니 구분이 필요합니다.
데모 왼쪽은 기본 애니메이션(크게 튀어오르고 회전), 오른쪽은 같은 상태 변화를 `prefers-reduced-motion: reduce`로 감지해 제자리에서 짧게 페이드만 하는 버전입니다.
언제 쓰나
인터페이스 전체를 감싸는 공통 트랜지션 유틸에 미디어쿼리를 한 번만 넣으면 모든 곳에 적용됩니다. 개별 컴포넌트마다 따로 챙기지 말고 토큰·유틸 레벨에서 해결하세요.