diff --git a/src/App.css b/src/App.css index 081b0cf..a808296 100644 --- a/src/App.css +++ b/src/App.css @@ -492,3 +492,15 @@ flex: none; } } + +/* ── Accessibility: Reduced Motion ──────────────────────────────────── */ + +@media (prefers-reduced-motion: reduce) { + *, + *::before, + *::after { + animation-duration: 0.01ms !important; + animation-iteration-count: 1 !important; + transition-duration: 0.01ms !important; + } +} diff --git a/src/index.css b/src/index.css index 5dddb5f..58695cc 100644 --- a/src/index.css +++ b/src/index.css @@ -115,6 +115,10 @@ html { -webkit-text-size-adjust: 100%; } +@media (prefers-reduced-motion: reduce) { + html { scroll-behavior: auto; } +} + body { height: 100%; overflow: hidden; diff --git a/src/pages/blog-marketing/BlogMarketing.css b/src/pages/blog-marketing/BlogMarketing.css index 9b2e998..811c344 100644 --- a/src/pages/blog-marketing/BlogMarketing.css +++ b/src/pages/blog-marketing/BlogMarketing.css @@ -148,3 +148,7 @@ .bm-write-actions { flex-direction: column; } .bm-post-card__actions { flex-wrap: wrap; } } + +@media (prefers-reduced-motion: reduce) { + .bm-spinner { animation: none; } +} diff --git a/src/pages/blog/Blog.css b/src/pages/blog/Blog.css index 507e513..5a2fa1a 100644 --- a/src/pages/blog/Blog.css +++ b/src/pages/blog/Blog.css @@ -81,7 +81,7 @@ display: none; position: fixed; /* 사이드바 토글 버튼(top-left) 과 겹치지 않도록 오른쪽 하단 배치 */ - bottom: 24px; + bottom: calc(var(--bottom-nav-h, 64px) + var(--safe-area-bottom, 0px) + 16px); right: 24px; top: auto; left: auto;