Pular para o conteúdo

Botões

Variações

Primário (CTA principal)

<a class="px-8 py-3 rounded-full bg-brand-500 dark:bg-brand-500 text-white font-semibold
hover:bg-brand-700 dark:hover:bg-brand-600 transition-colors">
Começar agora
</a>

Uso: Uma por seção. Ação principal da página.

Secundário (outline)

<a class="px-8 py-3 rounded-full border text-sm font-medium transition-colors
bg-white/0 border-black/10 text-[#0a0a0a] hover:border-black/18
dark:bg-white/4 dark:border-white/15 dark:text-white dark:hover:border-white/25">
Ver como funciona
</a>

Uso: Ação secundária, ao lado do botão primário.

<a class="text-brand-400 hover:text-brand-300 font-medium transition-colors">
Saber mais →
</a>

Uso: Links inline, ações terciárias.

Destrutivo

<button class="px-6 py-2 rounded-lg bg-error/10 border border-error/30 text-error hover:bg-error/20 transition-colors">
Cancelar conta
</button>

Uso: Ações irreversíveis. Sempre requer confirmação.


Estados

Defaultdefault
Hoverhover
Focusfocus
Disableddisabled
EstadoVisual
DefaultCor base
HoverCor escurecida (brand.700 light / brand.600 dark)
Focusring-2 ring-brand-500 ring-offset-2 ring-offset-background
LoadingSpinner + “Carregando…”
Disabledopacity-40 cursor-not-allowed

Tamanhos

TamanhoClassesUso
Grandepx-8 py-3 text-baseCTAs principais
Médiopx-6 py-2.5 text-smAções secundárias
Pequenopx-4 py-2 text-xsDentro de cards, tabelas

Regras

  • Nunca mais de 1 botão primário por seção
  • Copy de botão: imperativo, verbo de ação (começar, ver, baixar, falar)
  • Botões pill (rounded-full) para CTAs de destaque; rounded-md para ações funcionais
  • Nunca use apenas ícone em botões primários — sempre acompanhe com texto
  • Dark mode: accent brand.500 (#e7580f), hover brand.600
  • Light mode: accent brand.600 (#c94208), hover brand.700 — garante contraste WCAG AA