Colors
Design tokens — the color palette powering all components.
Определите CSS-переменные в глобальных стилях (например, src/styles/globals.css). Одна тема по умолчанию — в :root, дополнительные — в селекторах [data-theme='имя'].
Ниже перечислены все токены. Задайте нужные (достаточно тех, что хотите переопределить). Компоненты UIKit подхватывают их через алиасы --ps-* с fallback на эти имена.
Установите атрибут data-theme на <html> или <body>. Например: document.documentElement.setAttribute('data-theme', 'light'). Значение должно совпадать с именем селектора ([data-theme='light']).
При смене темы сохраняйте значение в localStorage (например, theme) и при загрузке страницы читайте его и вызывайте setAttribute('data-theme', savedTheme). Если ключа нет — используйте тему по умолчанию или системную (prefers-color-scheme).
[data-theme='light'] {
--background: #f8f8f8;
--surface-primary: #ffffff;
--surface-secondary: #f0f0f0;
--text-primary: #0a0a0a;
--text-secondary: #444444;
--border: #d0d0d0;
/* ... остальные токены при необходимости */
}/* Import the styles at your app root */
import '@pulsesync/uikit/styles'
/* Use CSS variables anywhere */
.card {
background: var(--ps-surface-secondary);
border: 1px solid var(--ps-border);
color: var(--ps-text-primary);
}
/* Theme via data-attribute on <html> */
<html data-theme="dark"> /* or "light" */