Design System

Cores

Seis hex oficiais intactos. Tons derivados via color-mix — não são cores de marca. Fonte: brand/tokens/colors.css.

Cores-base (marca)

  • obsidian#0B0F19Base escura e profundidade
  • steel#334155Estrutura e superfícies
  • mist#94A3B8Texto secundário e elementos neutros
  • white#F8FAFCTexto principal sobre escuro e fundo claro
  • violet-ai#7C3AEDIdentidade e destaque
  • cyan-pulse#06B6D4Sinal técnico e apoio visual

Tons derivados

Método: color-mix(in srgb, brandHue P%, white|obsidian) at fixed stops with identified UI roles only. Cada tom tem papel UI identificado — não expandir sem uso.

  • obsidian-softobsidian 88% + whitePainel elevado no escuro
  • steel-softsteel 55% + whiteBorda/input no claro; superfície neutra suave
  • steel-strongsteel 82% + obsidianHover e surface-elevated no escuro
  • mist-softmist 32% + whiteHover/fill no claro; surface-elevated clara
  • mist-strongmist 70% + obsidianBorda sutil e fills no escuro
  • violet-softviolet-ai 16% + whiteSeleção / accent-soft no claro
  • violet-mutedviolet-ai 32% + obsidianSeleção / accent-soft no escuro
  • violet-strongviolet-ai 82% + obsidianHover de identidade
  • cyan-softcyan-pulse 16% + whiteAction-soft no claro
  • cyan-mutedcyan-pulse 32% + obsidianAction-soft no escuro
  • cyan-strongcyan-pulse 82% + obsidianHover de ação (ambos os temas)

Papéis semânticos

Escuro

bg
obsidian
surface
steel
surfaceElevated
steel-strong
text
white
textMuted
mist
border
mist
borderSubtle
mist-strong
accent
violet-ai
accentSoft
violet-muted
action
violet-ai
actionSoft
violet-muted
actionHover
violet-strong
hover
steel-strong
selection
violet-muted
focus
violet-ai
signal
cyan-pulse

Claro

bg
white
surface
white
surfaceElevated
mist-soft
text
obsidian
textMuted
steel
border
steel-soft
borderSubtle
mist
accent
violet-ai
accentSoft
violet-soft
action
violet-ai
actionSoft
violet-soft
actionHover
violet-strong
hover
mist-soft
selection
violet-soft
focus
violet-ai
signal
cyan-pulse

Large titles only (≥3:1). Never body, label, caption, or small links.

Dark UI chrome uses Mist borders; light uses Steel-soft. Do not paint Steel border on Steel surface.

Exemplo de título Violet (grande)

Exemplos no tema ativo

Texto principal

Texto secundário

IdentidadeSeleçãoAction soft

Clear sobre mídia (experimento local) — alternativa legível: glass regular.

Bordas usam --border / --input alinhados a Mist (escuro) e Steel (claro). Cyan Pulse em texto pequeno sobre branco permanece alerta conhecido — use em acentos/gráficos, não em corpo.

Status (funcionais)

Always pair with text or icon. Not brand palette.

Sucesso

Atenção

Erro

SucessoAtençãoErro
Escuro
#4ADE80 / #FBBF24 / #FB7185
Claro
#15803D / #92400E / #BE123C

Contraste (WCAG)

CombinaçãoRazãoUsoNota
WhiteObsidian18,30:1Texto normal (≥4,5:1)Texto principal no tema escuro
MistObsidian7,47:1Texto normal (≥4,5:1)Texto secundário no tema escuro
Cyan PulseObsidian7,89:1Texto normal (≥4,5:1)Link / ação em texto no escuro
WhiteSteel9,90:1Texto normal (≥4,5:1)Texto em superfície Steel
MistSteel3,90:1Texto grande (≥3:1)Borda Mist sobre Steel — chrome UI escuro
ObsidianWhite18,30:1Texto normal (≥4,5:1)Texto principal no tema claro
SteelWhite9,90:1Texto normal (≥4,5:1)Texto secundário / input no claro
Violet AIWhite5,45:1Texto normal (≥4,5:1)Identidade em claro
WhiteViolet AI5,45:1Texto normal (≥4,5:1)Texto em bloco de identidade
ObsidianCyan Pulse7,89:1Texto normal (≥4,5:1)Texto em botão de ação
Violet AIObsidian3,36:1Texto grande (≥3:1)Só títulos grandes — nunca body/label/caption/link pequeno
Success darkObsidian10,99:1Texto normal (≥4,5:1)Status success no escuro (+ texto/ícone)
Warning darkObsidian11,47:1Texto normal (≥4,5:1)Status warning no escuro
Error darkObsidian7,12:1Texto normal (≥4,5:1)Status error no escuro
Error darkSteel3,85:1Texto grande (≥3:1)Error sobre Steel: só grande ou evitar
Success lightWhite4,79:1Texto normal (≥4,5:1)Status success no claro
Warning lightWhite6,78:1Texto normal (≥4,5:1)Status warning no claro
Error lightWhite6,01:1Texto normal (≥4,5:1)Status error no claro
MistWhite2,45:1Só decorativo / evitar textoEvitar Mist como texto em claro
WhiteCyan Pulse2,32:1Só decorativo / evitar textoEvitar White sobre Cyan — use Obsidian