Селекторы [data-state]: стили без десятка классов
data-ui, data-open и BEM вместе.
Атрибуты `data-state="open"` позволяют стилизовать `[data-state=open]` без классов `.is-open` — удобно для headless компонентов и тестов.
Не дублируйте данные только в data-атрибутах для SEO — видимый текст остаётся в DOM.
- Attribute selectors — MDN — [attr=value] синтаксис.
- data-* attributes — MDN — Кастомные data.
Специфичность
Селектор [data-state=open] сравним с классом — держите один источник правды в JS.