A row of icon tiles that swells under the pointer like a desktop dock: the tile under the hand grows the most, its neighbours a little less, and the whole row stays on its baseline. A label floats above the grown tile.
On pointermove each tile gets `scale = 1 + 0.6 × max(0, cos(d / 120 × π/2))` where d is the horizontal distance from the pointer to the tile centre, applied as `transform: scale()` with `transform-origin: bottom`; tiles also get `margin: 0 (scale−1)×12px` so neighbours spread. On leave every tile transitions back over 0.25 s. The hovered tile's label fades in above it.
From prompt to a block in your page.
The preview is the shipped element inside a neutral demo page. Hover, click, focus: the one interaction it is about is live.
Token sets re-tint it live. The prompt carries the one you chose.
A paste-in snippet, or a component for Next.js, React, Vue, Astro, WordPress, Shopify or Webflow.
It quotes the markup, styles and script verbatim with the tokens and the rules that keep it self-contained.
It inherits your page's font and width; the tokens live on :root; several instances share one script.