Cores semânticas CSS
Cor com nome de função — bg-suc, t-err, bd-pri — que já sabe a cor do texto por cima e muda sozinha no tema claro/escuro.
O que é
Em vez de escolher "verde #22c55e", você escolhe o significado: suc (deu certo), err (erro), ale (atenção), inf (informação), pri (cor da marca), sec (secundária), acc (acento neutro). Depois diz onde a cor vai: bg- no fundo, t- no texto, bd- na borda. Assim bg-err é "fundo vermelho de erro" e t-suc é "texto verde de sucesso". Se um dia a marca mudar de cor, tudo que usa pri muda junto.
É só CSS. Cada classe lê uma variável do Tema (--sw-pri, --sw-suc…). O fundo cheio (bg-pri) já coloca o texto em branco ou quase-preto, o que for mais legível. O texto (t-pri) usa uma versão da cor que escurece no tema claro para continuar legível. Fundo, card e borda neutros (bg-base, bg-sur, bd-mut) trocam de valor sozinhos quando o tema troca. Precisa de um tom fixo e específico (azul 7, verde 11)? Isso é a Paleta estendida.
Quando usar
- Aviso na tela ("Pagamento aprovado", "Campo obrigatório"): fundo suave + texto da cor —
bg-suc-soft t-suc. - Faixa ou selo de destaque ("Promoção", "Novo"): fundo cheio —
bg-pri,bg-err. - Card, painel, caixa:
bg-sur(superfície) combd(borda neutra). - Destacar um card escolhido (plano mais vendido): borda da marca —
bd-2 bd-pri. - Botão, banner ou selo com brilho: cor + camada de degradê —
bg-pri grad.
Comece aqui
-
1
Coloque o SW Core no
<head>. Todas as classes desta página estão no arquivo principal.<link rel="stylesheet" href="swcore/swcore.min.css"> -
2
Escolha o lugar (
bg-fundo,t-texto,bd-borda) + o significado (pri,suc,err…).Pago Vencido Plano escolhido<span class="bg-suc">Pago</span> <span class="t-err">Vencido</span> <span class="bd-2 bd-pri">Plano escolhido</span> -
3
Quer mais discreto?
-softdá um fundo clarinho da cor; junte com o texto da mesma cor.Pedido confirmado<span class="bg-suc-soft t-suc">Pedido confirmado</span>
Todas as variações
Cada quadro abaixo é o componente de verdade, rodando. O código embaixo é exatamente o que está no quadro: copie e cole.
1. Fundo cheio (bg-)
Fundo na cor, com o texto por cima já no contraste certo (branco nas cores médias, quase-preto nas claras). As cores escuras ficam 15% mais fechadas para o texto branco ler bem.
<div class="bg-pri p-m r-p t-p w-fl t-ct">Agendar</div>
<div class="bg-sec p-m r-p t-p w-fl t-ct">Novidade</div>
<div class="bg-acc p-m r-p t-p w-fl t-ct">Arquivado</div>
<div class="bg-suc p-m r-p t-p w-fl t-ct">Aprovado</div>
<div class="bg-err p-m r-p t-p w-fl t-ct">Recusado</div>
<div class="bg-ale p-m r-p t-p w-fl t-ct">Pendente</div>
<div class="bg-inf p-m r-p t-p w-fl t-ct">Em análise</div>
2. Fundo suave (bg-…-soft)
Um véu de 14% da cor sobre a superfície: discreto, bom para aviso, selo e linha de tabela. O texto sai na própria cor; para ler melhor, junte t- da mesma cor.
<div class="bg-pri-soft t-pri p-m r-p t-p w-fl t-ct">Seu plano</div>
<div class="bg-sec-soft t-sec p-m r-p t-p w-fl t-ct">Beta</div>
<div class="bg-suc-soft t-suc p-m r-p t-p w-fl t-ct">Entregue</div>
<div class="bg-err-soft t-err p-m r-p t-p w-fl t-ct">Estoque zerado</div>
<div class="bg-ale-soft t-ale p-m r-p t-p w-fl t-ct">Vence amanhã</div>
<div class="bg-inf-soft t-inf p-m r-p t-p w-fl t-ct">Dica</div>
3. Texto (t-)
A cor só na letra. Detalhes de tamanho e peso estão em Tipografia.
<span class="t-pri t-g">Ver serviços</span>
<span class="t-sec t-g">Planos</span>
<span class="t-acc t-g">Rascunho</span>
<span class="t-suc t-g">Em dia</span>
<span class="t-err t-g">Atrasado</span>
<span class="t-ale t-g">Atenção</span>
<span class="t-inf t-g">Saiba mais</span>
<span class="t-txt t-g">Título</span>
<span class="t-mut t-g">Legenda</span>
4. Borda (bd-)
A classe bd- + cor só pinta a borda: ela precisa de uma borda existindo, então junte com uma largura (bd, bd-2… da página Bordas).
<div class="bd-2 bd-pri p-m r-p t-p w-fl t-ct">Mais vendido</div>
<div class="bd-2 bd-sec p-m r-p t-p w-fl t-ct">Premium</div>
<div class="bd-2 bd-acc p-m r-p t-p w-fl t-ct">Neutro</div>
<div class="bd-2 bd-suc p-m r-p t-p w-fl t-ct">Válido</div>
<div class="bd-2 bd-err p-m r-p t-p w-fl t-ct">Inválido</div>
<div class="bd-2 bd-ale p-m r-p t-p w-fl t-ct">Revisar</div>
<div class="bd-2 bd-inf p-m r-p t-p w-fl t-ct">Info</div>
<div class="bd-2 bd-mut p-m r-p t-p w-fl t-ct">Padrão</div>
<div class="bd-2 bd-alt p-m r-p t-p w-fl t-ct">Alternativa</div>
5. Fundos neutros (mudam com o tema)
Os tons de "chão" do site. Troque o tema da página e veja todos acompanharem.
<div class="bg-base bd p-m r-p t-p w-fl t-ct">Página</div>
<div class="bg-1 bd p-m r-p t-p w-fl t-ct">Nível 1</div>
<div class="bg-2 bd p-m r-p t-p w-fl t-ct">Nível 2</div>
<div class="bg-3 bd p-m r-p t-p w-fl t-ct">Nível 3</div>
<div class="bg-sur bd p-m r-p t-p w-fl t-ct">Card</div>
<div class="bg-sur-h bd p-m r-p t-p w-fl t-ct">Card em foco</div>
6. Degradê por cima da cor
O degradê é uma camada que você põe por cima de qualquer fundo: cor + camada. Troque a cor e a camada continua igual.
<div class="bg-pri grad p-m r-p t-p w-fl t-ct">grad</div>
<div class="bg-sec grad-diag p-m r-p t-p w-fl t-ct">grad-diag</div>
<div class="bg-suc grad-spot p-m r-p t-p w-fl t-ct">grad-spot</div>
<div class="bg-err grad-glass p-m r-p t-p w-fl t-ct">grad-glass</div>
<div class="bg-inf grad-deep p-m r-p t-p w-fl t-ct">grad-deep</div>
<div class="bg-pri grad-tone p-m r-p t-p w-fl t-ct">grad-tone</div>
<div class="bg-suc grad-tone p-m r-p t-p w-fl t-ct">grad-tone</div>
7. Degradê pronto (bg-g-)
Atalho com cor + degradê numa classe só — é o mesmo fundo dos botões cheios.
<div class="bg-g-pri p-m r-p t-p w-fl t-ct">Marca</div>
<div class="bg-g-sec p-m r-p t-p w-fl t-ct">Secundária</div>
<div class="bg-g-suc p-m r-p t-p w-fl t-ct">Sucesso</div>
<div class="bg-g-err p-m r-p t-p w-fl t-ct">Erro</div>
<div class="bg-g-ale p-m r-p t-p w-fl t-ct">Alerta</div>
<div class="bg-g-inf p-m r-p t-p w-fl t-ct">Info</div>
<div class="bg-g-drk p-m r-p t-p w-fl t-ct">Escuro</div>
<div class="bg-g-lit p-m r-p t-p w-fl t-ct">Claro</div>
8. Tons que invertem com o tema (sw-bg…)
Sete degraus de fundo com o texto certo embutido. Os com - ficam próximos do fundo da página; os com _ são o oposto do tema (escuro no tema claro, claro no escuro) — bom para uma faixa de contraste.
<div class="sw-bg bd p-m r-p t-p w-fl t-ct">sw-bg</div>
<div class="sw-bg- bd p-m r-p t-p w-fl t-ct">sw-bg-</div>
<div class="sw-bg-- bd p-m r-p t-p w-fl t-ct">sw-bg--</div>
<div class="sw-bg--- bd p-m r-p t-p w-fl t-ct">sw-bg---</div>
<div class="sw-bg_ p-m r-p t-p w-fl t-ct">sw-bg_</div>
<div class="sw-bg__ p-m r-p t-p w-fl t-ct">sw-bg__</div>
<div class="sw-bg___ p-m r-p t-p w-fl t-ct">sw-bg___</div>
Tabela de opções
| Palavra | O que faz | Exemplo |
|---|---|---|
| Significados (a parte final da classe) | ||
pri | Cor da marca (--sw-pri). | bg-pri · t-pri · bd-pri |
sec | Secundária (--sw-sec). | bg-sec |
acc | Acento neutro (--sw-acc). Não tem versão -soft. | bg-acc |
suc | Sucesso, verde. | bg-suc |
err | Erro, vermelho. | bg-err |
ale | Alerta, âmbar. | bg-ale |
inf | Informação, azul-claro. | bg-inf |
| Fundo | ||
bg-{cor} | Fundo cheio + texto legível automático. | class="bg-err" |
bg-{cor}-soft | Fundo suave (14% da cor). pri · sec · suc · err · ale · inf. | class="bg-ale-soft t-ale" |
bg-base · bg-1 · bg-2 · bg-3 | Fundo da página e 1, 2, 3 tons acima. | class="bg-2" |
bg-sur · bg-sur-h | Superfície (card) e superfície em foco. | class="bg-sur" |
| Texto | ||
t-{cor} | Texto na cor (versão legível no tema claro). | class="t-suc" |
t-txt · t-mut · t-inv | Forte · suave · invertido. | class="t-mut" |
| Borda (precisa de largura: bd, bd-1…bd-5) | ||
bd-{cor} | Pinta a borda na cor. pri · sec · acc · suc · err · ale · inf. | class="bd-2 bd-pri" |
bd-mut / bd-base | Borda neutra padrão (--sw-bor). | class="bd-1 bd-mut" |
bd-alt | Borda neutra alternativa (--sw-border). | class="bd-1 bd-alt" |
| Degradê (camada por cima do fundo) | ||
grad | Brilho de cima para baixo. | class="bg-pri grad" |
grad-diag | Claro no canto de cima → escuro embaixo, na diagonal. | |
grad-spot | Foco de luz redondo no canto superior esquerdo. | |
grad-glass | Faixa de reflexo, como vidro. | |
grad-deep | Escurece bastante para baixo (bom com texto embaixo). | |
grad-tone | Dois tons da própria cor do elemento (claro → escuro), sem véu branco. Junto de bg-suc sai verde, de bg-err vermelho; sem cor, a principal. | class="bg-suc grad-tone" |
bg-g-pri · sec · suc · err · ale · inf · drk · lit | Cor + degradê prontos numa classe. | class="bg-g-pri" |
| Grupos tonais (dia/noite) | ||
sw-bg · sw-bg- · sw-bg-- · sw-bg--- | Fundo do tema e 3 tons acima, texto normal (também como Bsw-bg…). | class="sw-bg--" |
sw-bg_ · sw-bg__ · sw-bg___ | Fundo oposto ao tema, texto invertido. | class="sw-bg_" |
sw-bl · sw-bl- … sw-bl___ | Cor de borda suave em 7 tons (precisa de largura de borda). | class="bd-1 sw-bl-" |
sw-border · sw-border- · sw-border-- · sw-border_ | Cor de borda estrutural em 4 tons. | |
Tsw-color · Tsw-color- … Tsw-color___ | Cor de texto em 7 tons (do mais forte ao oposto). | class="Tsw-color--" |
Tsw-link · Tsw-link- · Tsw-link-- · Tsw-link_ | Cor de link (com hover em Tsw-link). | |
Tsw-hover · Tsw-hover- · Tsw-hover-- · Tsw-hover_ | Cor de "mouse em cima" como cor de texto. | |
sw-shadow · sw-shadow- · sw-shadow-- · sw-shadow--- · sw-shadow_ | Mesmas sombras da escala sha-* (ver Sombras). | |
| No seu CSS | ||
var(--sw-pri) … var(--sw-inf) | Cor de preenchimento de cada significado. | color: var(--sw-err); |
var(--sw-pri-txt) … var(--sw-inf-txt) | Versão para texto (legível no tema claro). | color: var(--sw-suc-txt); |
var(--sw-bg) · var(--sw-sur) · var(--sw-bor) | Fundo, superfície, borda neutros. | background: var(--sw-sur); |
Receitas prontas — usos reais
Situações que aparecem em quase todo site. Copie a que servir.
<div class="bg-suc-soft t-suc bd-l bd-suc p-m r-p">
<i class="swi-check-circle"></i> Mensagem enviada! Respondemos em até 1 hora.
</div>
<div class="bg-err-soft t-err bd-l bd-err p-m r-p">
<i class="swi-error-circle"></i> Informe um e-mail válido.
</div>
R$ 49
Profissional
R$ 99
<div class="l l-2 gap-m">
<div class="bg-sur bd p-g r-m">
<span class="t-mut">Básico</span>
<p class="t-xg t-txt">R$ 49</p>
</div>
<div class="bg-sur bd-2 bd-pri p-g r-m">
<span class="bg-pri p-pp px-p r-p t-pp t-upp">Mais vendido</span>
<p class="t-mut mt-p">Profissional</p>
<p class="t-xg t-txt">R$ 99</p>
</div>
</div>
<span class="bg-suc-soft t-suc px-p py-pp r-p t-pp fw6">Pago</span>
<span class="bg-ale-soft t-ale px-p py-pp r-p t-pp fw6">Aguardando</span>
<span class="bg-err-soft t-err px-p py-pp r-p t-pp fw6">Cancelado</span>
<span class="bg-inf-soft t-inf px-p py-pp r-p t-pp fw6">Enviado</span>
<div class="bg-pri grad-diag p-g r-m flx j-sb alc gap-m f-wr">
<strong>Primeira consulta com 20% de desconto</strong>
<a href="/agendar" sw-btn="lit">Quero agendar</a>
</div>
<span class="selo-frete">Frete grátis</span>
<style>
.selo-frete {
color: var(--sw-suc-txt); /* texto legível no claro e no escuro */
border: 1px solid var(--sw-suc);
border-radius: var(--sw-r-p);
padding: var(--sw-s-pp) var(--sw-s-p);
}
</style>
Precisa de quê
swcore.min.css— todas as classes desta página.swcore.compl.min.css— só se usar os íconesswi-*das receitas.
Cuidados — erros comuns
bd-prisozinho não mostra borda nenhuma: ele só dá a cor. Junte combd,bd-1…bd-5.- Para texto colorido use
t-, nãobg-:bg-sucpinta o fundo inteiro. - As classes de fundo mandam na cor do texto (vem com
!important). Para outra cor de letra por cima, ponha o texto num elemento filho comt-. - Não use cor de aviso como enfeite: se tudo for vermelho, o erro de verdade não chama atenção.
suc/err/ale/infsão para estado; enfeite épri/sec. gradsozinho não tem cor: ele é uma camada. Precisa de um fundo embaixo (bg-pri grad).
O que ele não faz
- Só existem essas 7 cores com significado. Tom específico e fixo (azul 3, verde 12) é a Paleta estendida.
- A versão
-softnão existe paraacc.

