Rim Runner
offset-path: rect() lets one element ride the border, and offset-rotate: auto keeps the head aimed along the edge. No SVG, no second layer.
Usage
Get all-access
Meant for
Examples
On a Button
The head sits behind the label and above the fill, so it works on a solid button without washing the text out. Set --wm-radius to the button's own radius (8px on a default Button), or the path cuts the corners instead of turning them.
The class is wm wm-rim-runner — the first half is the marker the trigger and reduced-motion rules hook into, the second is the effect.