Styled modal over the headless overlay - scrim, focus trap, scroll lock.
Dialog playground
Esc, the scrim and the close button all dismiss it.
Install Dialog
1. New project? One command installs the package and wires everything - see Installation:
pnpm dlx zyncat-ui init2. Import the component - it loads its own stylesheet:
import { Dialog } from '@zyncat/ui/dialog';Usage
import { Dialog } from '@zyncat/ui/dialog'; <Dialog trigger={<Button variant="danger">Delete project</Button>} title="Delete project permanently?" tone="danger"> This action cannot be undone.</Dialog>Compose Dialog in your application. No Tailwind or external styling library is required; every value resolves from Zyncat UI's token vocabulary.