Notifications that stack in the corner: a new toast slides up and the older ones shuffle back with a slight scale and fade, like cards behind it; hovering the stack fans them out so each is readable, and each one carries a shrinking progress bar for its own timeout. Swipe or click × to dismiss early.
Toast `translateY(calc(var(--i) × −10px)) scale(calc(1 − var(--i) × 0.05))` with `opacity: 1 − i × 0.3` (i ≤ 2 shown); region `:hover` switches to `translateY(calc(var(--i) × −(100% + 8px)))` at scale 1 so they fan out. Entry: `translateY(20px)` + fade 0.3 s `cubic-bezier(.2,.8,.2,1)`. The progress bar is a `width` transition over the toast's lifetime, paused by setting `animation-play-state` via `:hover`.
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.