Respects prefers-reduced-motion: the animation is disabled and the final state is shown.
What is a Check Success?
A success check that draws itself feels earned, not dropped in. The stroke sweeps along the path so the user watches the task finish. Drive it with stroke-dashoffset and fire it once on success — looping a check looks like it is still loading.
Animation Specimen
Trigger
click
Tech
css
Duration
1.8s
Easing
ease-in-out
Performance
stroke-dashoffset
When to use
Form submitted, payment done, file saved
Any 'completed' confirmation
Avoid when
Looping on a static success screen — it reads as still loading
Without a text label — motion is not the status
One draw per success. Looping a check makes users think the action has not finished.