A stretched-out version of the pulse loader with several rings instead of one, which fits anything that's continuously searching or checking — a "my location" map marker, a radar sweep. Like the other indeterminate loaders here, it carries no real value; once progress becomes known, switch to progress-ring.
Built by stacking 2–3 outline-only circles (border, no fill) at the same spot, each animating scale from 0 upward and opacity from 1 to 0, with animation-delay staggered so the rings expand one after another. More rings read as a denser ripple, but past three it starts to look busy instead.
A skeleton usually works better for a long wait covering the whole screen; skip it entirely under 200ms. Give the wrapper role="status" and aria-live="polite", and hide the rings with aria-hidden="true" since they're decorative. Under prefers-reduced-motion, reduce the ring count or freeze the expansion and fall back to a single static circle.