버튼 안, 인라인 로딩처럼 작은 자리에서 "처리 중"임을 알리는 표준적인 비확정적 표시입니다. 얼마나 걸릴지 모르는 짧은 요청(폼 제출, API 호출)에 알맞고, 작업이 몇 단계로 나뉘어 진행률을 알 수 있다면 확정적인 progress-ring으로 바꾸는 편이 사용자에게 더 유용합니다.
원 테두리(border)를 전체는 옅은 색(var(--line))으로, 위쪽 한 변만 강조색으로 칠한 뒤 transform: rotate를 linear로 무한 반복합니다. CSS 세 줄로 끝나는 가장 저렴한 로더라 재사용 컴포넌트의 기본값으로 자주 쓰입니다.
너무 빨리 사라졌다 나타나면 깜빡임처럼 느껴지므로 로딩이 200ms 이내로 끝날 것 같으면 아예 보여주지 않는 게 낫고, 화면 전체를 가리는 긴 로딩이라면 스켈레톤이 체감 속도 면에서 더 좋습니다. 감싸는 요소에 role="status"와 aria-live="polite"를 주고, 회전 자체는 장식이라 스크린리더에 알릴 필요 없이 숨겨도 됩니다. prefers-reduced-motion에서는 회전 대신 정적 링 아이콘으로 대체하는 것도 고려할 만합니다.