<dialog>: нативное модальное окно без библиотеки
showModal, ::backdrop и фокус-ловушка из коробки.
`<dialog>` с `showModal()` открывает top layer, блокирует фон и возвращает фокус при `close()` — меньше кода, чем кастомный overlay на div.
Для лёгких подсказок без блокировки страницы используйте `show()` без modal-режима.
- <dialog> — MDN — API и примеры.
- Dialog element — WHATWG — Спецификация.
Доступность
Кнопка закрытия с `autofocus` внутри dialog и `aria-labelledby` на заголовок — минимум для скринридеров.
Фоновый контент помечайте `inert` при открытой модалке, если поддержка нужна в старых браузерах.