A chunky button with a visible edge beneath it: hover lifts it a touch, pressing pushes the face down onto the edge until they meet, and letting go springs it back up. Keyboard activation presses it too, so Enter feels like a thumb.
The face sits 6 px above an edge layer (a darker mix of the face colour) with a blurred shadow under both. `:hover` lifts the face to −8 px, `:active` drops it to 0 so face and edge meet, over 0.08 s so the press is instant; the release uses 0.25 s with a slight overshoot curve. A `.pressed` class mirrors `:active` for keyboard users: the script adds it on Space/Enter keydown and removes it on keyup.
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.