Examples

Not a modal library — a morph controller. Every trigger is just a box that grows into another box: a button into a form, a field into a custom select, a card into a fullscreen takeover, a thumbnail into a lightbox. The same controller drives all of them, and it nests.

Forms & custom controls

A button morphs into a form — and a field inside it morphs open its own custom select, a popover built from divs, not the native control. Pick an option, submit, and the panel hands off to a success state.

Fullscreen takeover

The same morph, scaled all the way up. A card grows into a panel that fills the viewport, its cover image carried along as a shared element into the full-bleed hero. Close hands it straight back.