JPXL RECORDS ← документация
Design language

Дизайн-язык
панели JPXL.

Одна тёмная система, две комнаты. Staff Panel — control surface: lime-сигнал, геометрический гротеск, моноширинные данные. Artist Cabinet — спокойное рабочее место: violet-акцент, мягче типографика. Одни нейтрали, одна семантика, одни компоненты внутри.

Два контекста

context / accent / type
S

Staff Panel

Модерация, финансы, операции. Читается с одного взгляда, быстро управляется. Сигнальный lime, техничный тон.

accent--ja-lime · #c4ff3d
displayBricolage Grotesque
ui / dataSpace Grotesk · JetBrains Mono
A

Artist Cabinet

Релизы, аналитика, выплаты, настройки. Место для ежедневной работы. Violet-акцент, дружелюбнее ритм.

accent--accent · #7c6dff
bodyInter
canvas#07080e

Нейтрали и elevation

ground → surface

Холодно-смещённые серые, не чистые. Глубина — из четырёх ступеней elevation и hairline, а не из тяжёлых теней.

Canvas
#0A0A0F
--ja-canvas
Elevation 1
#11121A
--ja-elev-1
Elevation 2
#191A26
--ja-elev-2
Elevation 3
#22232F
--ja-elev-3
Ink
#F5F5F7
--ja-ink
Mute / Dim
ink @ 56% / 34%
--ja-mute · --ja-dim

Акцентные системы

по одной на контекст

Staff — lime, тратится только на главное действие и живой сигнал.

.04
.10
soft
#C4FF3D
hover

Artist — violet, та же сдержанность.

.10
dim
#7C6DFF
#A99DFF
glow

Семантика

shared · state, not brand

Значение постоянно в обеих комнатах и держится отдельно от акцента — успех никогда не в цвете главного действия.

Success / money
#3DFFA1
--ja-emerald
Warning
#FFCE3D
--ja-amber
Danger
#FF5A7A
--ja-rose
Info
#3DD7FF
--ja-cyan

Типографика

display · ui · mono
Bricolage Grotesque
800 · display
Релиз одобрен
Space Grotesk
400 / 600 · ui
Интерфейс читается быстро — заголовки полужирным, тело обычным начертанием.
JetBrains Mono
400 / 600 · data
UPC 0885 0000 1234 · ISRC RU-XPL-26-0042 · 1 284 590 streams
Scale
131621284056

Компоненты

.adm-* / .ja-*
Buttons
СохранитьОтменаУдалитьАртист
Badges
АктивенОплаченоНа проверкеОшибка
Form field
Service status
База данных3 ms
Кэш1 ms
Хранилище210 ms
Confirmation modal · jaModal

Радиусы и motion

geometry · easing
6 · chips
9 · buttons
14 · cards
16 · modals
pill · dots

cubic-bezier(0.22, 1, 0.36, 1) — быстрый, «оседающий» ease на шагах 120 / 180 / 280 мс. Движение подтверждает, а не играет.

Код: как пользоваться

for developers

Токены и компоненты живут в static/css/jpxl_admin.css (админка) и в beta_ui/base.html (кабинет артиста). Всё стилизуется через токены — не хардкодь цвета.

Токены

/* всегда через переменную */
color: var(--ja-ink);
background: var(--ja-elev-1);
border: 1px solid var(--ja-hairline);
/* акцент — только на главном */
background: var(--ja-lime);

Кнопки и бейджи

<button class="adm-btn adm-btn-lime">Сохранить</button>
<button class="adm-btn adm-btn-ghost">Отмена</button>
<span class="adm-badge adm-badge-emerald">Оплачено</span>

Карточка и поле

<div class="adm-card">
  <div class="adm-card-header"></div>
  <div class="adm-card-body">
    <div class="adm-field">
      <label class="adm-field-label">Ник</label>
      <input type="text">
    </div>
  </div>
</div>

Модалки · jaModal

<!-- декларативно: атрибут на кнопке/форме -->
<button class="adm-btn adm-btn-danger"
  data-ja-confirm="Удалить релиз?"
  data-ja-confirm-variant="danger">Удалить</button>

// из JS — Promise
jaModal.confirm({ message: 'Отправить?', variant: 'danger' })
  .then(ok => { if (ok) submit(); });

Полная библиотека компонентов — секции §23–§26 в jpxl_admin.css. Инструкция по бета-UI и токенам — в CLAUDE.md.

Справочник токенов

source of truth
TokenValueRole
--ja-canvas#0A0A0FФон страницы
--ja-elev-1#11121AКарточки, панели
--ja-lime#C4FF3DStaff-акцент / primary
--accent#7C6DFFArtist-акцент / primary
--ja-emerald#3DFFA1Успех, деньги
--ja-amber#FFCE3DПредупреждение
--ja-rose#FF5A7AОпасность, удаление
--ja-cyan#3DD7FFИнформация
--ja-ink#F5F5F7Основной текст
--ja-hairlinergba(255,255,255,.08)Разделители, границы
--radius14pxСкругление карточки