P2 · Padrões

Color Palettes

Sistema de herança de cor via data-palette. Adicionar o atributo a um elemento pai faz todos os descendentes que consomem --bg, --fg, --border, --accent se adaptarem.

01

Paletas disponíveis

PaletaFundoTextoUso
paper (padrão)#FFFFFFTintaSuperfícies primárias.
snow--n-snowTintaFundo do app.
bone--n-boneTintaPainéis sutis.
ink--n-inkBrancoHero escuro, footer, cards de impacto.
void--n-voidBrancoHover sobre ink.
accent--accent-baseBrancoCTAs editoriais, capas de drop.
02

Composição aninhada

Paletas se aninham. Uma seção data-palette='ink' pode conter um card data-palette='paper' sem afetar o pai.

<section data-palette="ink">
  <h2>Sobre branco em fundo escuro</h2>
  <div class="card" data-palette="paper">
    <p>Conteúdo claro dentro de hero escuro.</p>
  </div>
</section>
03

Tokens sobrescritos

Cada paleta sobrescreve seis tokens-base. Componentes que consomem esses tokens adaptam-se sem código adicional.

TokenFunção
--bgFundo da superfície.
--fgTexto primário.
--fg-2Texto secundário.
--fg-3Texto terciário.
--borderBorda hairline.
--accentCor de assinatura local.
04

Diretrizes

Faça

  • Componentes consomem tokens, nunca cores literais.
  • Toda cor de texto deve respeitar contraste AA (4.5:1).
  • Aninhe paletas para criar acentos visuais sem CSS extra.

Não faça

  • Não fixe color: white ou #1A1A1D direto em componente reutilizável.
  • Não invente paletas locais — fique nas seis canônicas.
  • Não anime transição entre paletas — quebra de leitura.