← Components

Live demos

Click to open

Confirmation dialog — destructive

Delete / irreversible action

Confirmation dialog — warning

Reversible but significant action

Quick-create form

Compact create dialog — new vendor

Full form modal

Edit purchase order — large dialog

Behavior reference

Behavior Rule Implementation
Open animationFade + scale up from 97% → 100%CSS transition on .is-open
Close on EscAlwayskeydown listener, remove .is-open
Close on backdropFor non-destructive forms onlyClick on .modal-backdrop, not .modal
Focus trapTab cycles within modalQuery all focusable, wrap at boundary
Return focusOn close, return to trigger elementStore lastFocus before open
Scroll lockBody scroll locked while openoverflow: hidden on body
Destructive labelButton must restate the action"Delete purchase order" not "Confirm"