Example: product shelf loading state
Match skeleton shapes to the actual content layout. Use shimmer animation for general loading
Don't mix animation modes within the same loading state. Don't use Skeleton for static design previews (use none animation instead)
<div role="status" aria-busy="true"> — screen readers announce this as a live region<span className="sr-only">Loading…</span> provides text for assistive technologyaria-hidden="true" — purely decorativeprefers-reduced-motion via the global CSS guard