Токены сняты с живого DOM bi.group, поэтому цвета и радиусы здесь измеренные, а не подобранные на глаз. Шрифт SF Pro Display. Набора хватает, чтобы собрать новую страницу и не выпасть из общего языка.
Акцент один. Семантические цвета показывают статус показателя и никогда не используются для красоты.
#1D1D1FЗаголовки, основной текст#444D60Вторичный текст#6B7386Мета, подписи#3152DFКнопки, ссылки, акцент#27348BHover / нажатие#F5F9FFПодложка выделения#ECEFF3Секции, шапки таблиц#E6E6E7Чипы, дорожки#1B9C63Светофор: план выполнен#8F5A06Светофор: зона риска#D0400FСветофор: провал#E1E5EBГраницы, разделителиВсе текстовые пары проверены на контраст. Минимум получился 4,75:1, это выше порога AA даже для мелкого шрифта.
SF Pro Display в трёх начертаниях. Подключаем как WOFF2, урезанный до кириллицы и латиницы: 47 КБ вместо 950 КБ.
Сетка 4px и всего два радиуса. Больше не понадобилось.
| Токен | Значение | Где применяется |
|---|---|---|
--r-sm | 8px | Кнопки, чипы, поля ввода, мелкие элементы |
--r-lg | 20px | Карточки, таблицы, секционные блоки |
| Шаг сетки | 4 · 8 · 12 · 16 · 20 · 24 · 32 · 40 · 48 · 64 | Все отступы и зазоры кратны 4px |
| Кнопка | 40px / 48px | Стандарт и крупная; горизонтальный отступ 20–24px |
| Чип | 30px | Подложка #E6E6E7, радиус 8px |
| Контейнер | 1200px | Поля 20px на мобильном, 40px на десктопе |
Первичная кнопка залита акцентом, вторичная только обведена. Первичная на экране одна.
Нейтральный список без иерархии. Кликать их нельзя, иначе это уже кнопки.
Рядом с меткой ставим точку того же цвета, чтобы статус читался не только по цвету.
Радиус 20px, граница #E1E5EB, тень почти незаметная. Шапка карточки заливается #ECEFF3.
Три полосы, которые становятся короче, это воронка, теряющая объём. Точка справа отмечает шаг, на котором она провалилась.
На тёмном фоне плашка остаётся синей. Знак не инвертируется.
На сером работает без обводки: синий сам себя отделяет от фона.
font-variant-numeric: tabular-nums везде, где числа выстраиваются друг под другом.