When something must interrupt the flow — a confirmation, a focused form, a search result set — it gets a modal. The brand keeps them square, bordered, and calm: no rounded corners, no glow, no bounce.
Click to open. Dismiss with the ×, the Cancel button, the backdrop, or the Esc key.
A single charcoal scrim at rgba(45,45,45,0.55). No blur — the brand does not use frosted glass. The backdrop is itself a dismiss target.
Bone-white panel, 1 px charcoal border, --shadow-lg. Square corners. Width clamps: min(440px, 90vw) for dialogs, wider for content browsers.
Title in Lexend Deca + a × close affordance, separated from the body by a 1 px rule. The × turns signal-red on hover.
Actions right-aligned. Primary action is the red bracketed CTA; secondary is the bone "ghost" button. Never more than two.
Esc all close. Destructive confirmations require an explicit button — backdrop click should not confirm.Field note. A modal is a small apology for interrupting. Keep the copy short, the choices few, and the way out obvious.
| Use | Width | Notes |
|---|---|---|
| Confirmation | 360–440 px | One question, two buttons. |
| Focused form | 480–560 px | Single column, labels above fields. |
| Content browser | 600–720 px | Search results, pickers — body scrolls, header/footer pinned. |