SW Core
SW Core / CSS / Sombras

Sombras CSS

Profundidade por classe: a caixa "flutua" com sha, brilha na cor com sha-pri, afunda com sha-in — e mais 46 sombras especiais prontas.

O que é

Sombra é o que faz um card parecer "levantado" da página, um menu parecer por cima do resto, um campo parecer "afundado". No SW Core você escolhe pelo nome: uma escala de altura (sha-p pouco, sha médio, sha-g alto, sha-gg muito alto), um brilho colorido na cor de um significado (sha-pri, sha-suc…), a sombra para dentro (sha-in), a sombra no texto (tsha-*) e uma coleção de 46 sombras especiais (shad1…shad46).

É só CSS. A escala de altura muda sozinha com o tema: no escuro a sombra é preta e mais forte (para aparecer no fundo escuro), no claro é mais suave. As mesmas sombras existem como variáveis para o seu CSS: var(--sw-sha). Para o halo de luz forte (neon), veja sw-glow na página Superfície.

Quando usar

  • Card de produto ou serviço: sha-p ou sha — leve, sem exagero.
  • Menu que abre, janela, aviso flutuante: sha-g / sha-gg (bem por cima).
  • Botão ou card de destaque com brilho na cor: sha-pri.
  • Campo de busca "cavado" ou área rebaixada: sha-in.
  • Título sobre foto que precisa ler bem: tsha-5 (sombra escura no texto).

Comece aqui

  1. 1

    Coloque o SW Core no <head>. Todas as sombras estão no arquivo principal.

    <link rel="stylesheet" href="swcore/swcore.min.css">
  2. 2

    Coloque a classe de sombra na caixa. Fica melhor com fundo de superfície (bg-sur) e canto suave (r-m).

    Plano Profissional · R$ 99/mês
    <div class="bg-sur r-m sha p-g">Plano Profissional · R$ 99/mês</div>

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. Altura (do chão ao flutuando)

Cinco degraus. Mesmo nome da régua de espaçamento: p, (médio), g, gg.

Sem sombra
sha-0 — sem sombra <div class="bg-sur r-m sha-0 p-g t-p w-fl t-ct">Sem sombra</div>
Pouca
sha-p — pouca <div class="bg-sur r-m sha-p p-g t-p w-fl t-ct">Pouca</div>
Média
sha — média <div class="bg-sur r-m sha p-g t-p w-fl t-ct">Média</div>
Alta
sha-g — alta <div class="bg-sur r-m sha-g p-g t-p w-fl t-ct">Alta</div>
Muito alta
sha-gg — muito alta <div class="bg-sur r-m sha-gg p-g t-p w-fl t-ct">Muito alta</div>

2. Brilho colorido

Sombra escura + um brilho embaixo na cor do significado. Bom em card ou botão de destaque.

Marca
sha-pri — marca <div class="bg-sur r-m sha-pri p-g t-p w-fl t-ct">Marca</div>
Secundária
sha-sec — secundária <div class="bg-sur r-m sha-sec p-g t-p w-fl t-ct">Secundária</div>
Sucesso
sha-suc — sucesso <div class="bg-sur r-m sha-suc p-g t-p w-fl t-ct">Sucesso</div>
Erro
sha-err — erro <div class="bg-sur r-m sha-err p-g t-p w-fl t-ct">Erro</div>
Alerta
sha-ale — alerta <div class="bg-sur r-m sha-ale p-g t-p w-fl t-ct">Alerta</div>
Informação
sha-inf — informação <div class="bg-sur r-m sha-inf p-g t-p w-fl t-ct">Informação</div>

3. Para dentro (afundado)

A sombra fica na borda de dentro, como se a caixa estivesse cavada.

Padrão
sha-in — padrão <div class="bg-sur r-m sha-in p-g t-p w-fl t-ct">Padrão</div>
Sutil
shad-in-1 — sutil <div class="bg-sur r-m shad-in-1 p-g t-p w-fl t-ct">Sutil</div>
Média
shad-in-2 — média <div class="bg-sur r-m shad-in-2 p-g t-p w-fl t-ct">Média</div>
Funda
shad-in-3 — funda <div class="bg-sur r-m shad-in-3 p-g t-p w-fl t-ct">Funda</div>

4. Sombra no texto

tsha-1…tsha-10: sombra escura atrás das letras (aparece mais em fundo claro ou foto). tsha-w1…tsha-w5: brilho branco atrás das letras (para fundo escuro). Os quadros claros e escuros abaixo são só o fundo da demonstração.

Oferta
tsha-1 <span class="tsha-1">Oferta</span>
Oferta
tsha-3 <span class="tsha-3">Oferta</span>
Oferta
tsha-5 <span class="tsha-5">Oferta</span>
Oferta
tsha-7 <span class="tsha-7">Oferta</span>
Oferta
tsha-10 <span class="tsha-10">Oferta</span>
Oferta
tsha-w1 <span class="tsha-w1">Oferta</span>
Oferta
tsha-w3 <span class="tsha-w3">Oferta</span>
Oferta
tsha-w5 <span class="tsha-w5">Oferta</span>

5. As 46 sombras especiais (shad1 a shad46)

Uma coleção de sombras prontas para casos específicos: suaves, em camadas, "flutuando longe", contorno, 3D colorido. Passe o olho e use a que combinar. Da shad42 à shad46 são coloridas e fixas (não mudam com o tema); a shad24 é um anel na cor da marca.

shad1
shad1 <div class="bg-sur r-m shad1 p-g t-p w-fl t-ct">shad1</div>
shad2
shad2 <div class="bg-sur r-m shad2 p-g t-p w-fl t-ct">shad2</div>
shad3
shad3 <div class="bg-sur r-m shad3 p-g t-p w-fl t-ct">shad3</div>
shad4
shad4 <div class="bg-sur r-m shad4 p-g t-p w-fl t-ct">shad4</div>
shad5
shad5 <div class="bg-sur r-m shad5 p-g t-p w-fl t-ct">shad5</div>
shad6
shad6 <div class="bg-sur r-m shad6 p-g t-p w-fl t-ct">shad6</div>
shad7
shad7 <div class="bg-sur r-m shad7 p-g t-p w-fl t-ct">shad7</div>
shad8
shad8 <div class="bg-sur r-m shad8 p-g t-p w-fl t-ct">shad8</div>
shad9
shad9 <div class="bg-sur r-m shad9 p-g t-p w-fl t-ct">shad9</div>
shad10
shad10 <div class="bg-sur r-m shad10 p-g t-p w-fl t-ct">shad10</div>
shad11
shad11 <div class="bg-sur r-m shad11 p-g t-p w-fl t-ct">shad11</div>
shad12
shad12 <div class="bg-sur r-m shad12 p-g t-p w-fl t-ct">shad12</div>
shad13
shad13 <div class="bg-sur r-m shad13 p-g t-p w-fl t-ct">shad13</div>
shad14
shad14 <div class="bg-sur r-m shad14 p-g t-p w-fl t-ct">shad14</div>
shad15
shad15 <div class="bg-sur r-m shad15 p-g t-p w-fl t-ct">shad15</div>
shad16
shad16 <div class="bg-sur r-m shad16 p-g t-p w-fl t-ct">shad16</div>
shad17
shad17 <div class="bg-sur r-m shad17 p-g t-p w-fl t-ct">shad17</div>
shad18
shad18 <div class="bg-sur r-m shad18 p-g t-p w-fl t-ct">shad18</div>
shad19
shad19 <div class="bg-sur r-m shad19 p-g t-p w-fl t-ct">shad19</div>
shad20
shad20 <div class="bg-sur r-m shad20 p-g t-p w-fl t-ct">shad20</div>
shad21
shad21 <div class="bg-sur r-m shad21 p-g t-p w-fl t-ct">shad21</div>
shad22
shad22 <div class="bg-sur r-m shad22 p-g t-p w-fl t-ct">shad22</div>
shad23
shad23 <div class="bg-sur r-m shad23 p-g t-p w-fl t-ct">shad23</div>
shad24
shad24 <div class="bg-sur r-m shad24 p-g t-p w-fl t-ct">shad24</div>
shad25
shad25 <div class="bg-sur r-m shad25 p-g t-p w-fl t-ct">shad25</div>
shad26
shad26 <div class="bg-sur r-m shad26 p-g t-p w-fl t-ct">shad26</div>
shad27
shad27 <div class="bg-sur r-m shad27 p-g t-p w-fl t-ct">shad27</div>
shad28
shad28 <div class="bg-sur r-m shad28 p-g t-p w-fl t-ct">shad28</div>
shad29
shad29 <div class="bg-sur r-m shad29 p-g t-p w-fl t-ct">shad29</div>
shad30
shad30 <div class="bg-sur r-m shad30 p-g t-p w-fl t-ct">shad30</div>
shad31
shad31 <div class="bg-sur r-m shad31 p-g t-p w-fl t-ct">shad31</div>
shad32
shad32 <div class="bg-sur r-m shad32 p-g t-p w-fl t-ct">shad32</div>
shad33
shad33 <div class="bg-sur r-m shad33 p-g t-p w-fl t-ct">shad33</div>
shad34
shad34 <div class="bg-sur r-m shad34 p-g t-p w-fl t-ct">shad34</div>
shad35
shad35 <div class="bg-sur r-m shad35 p-g t-p w-fl t-ct">shad35</div>
shad36
shad36 <div class="bg-sur r-m shad36 p-g t-p w-fl t-ct">shad36</div>
shad37
shad37 <div class="bg-sur r-m shad37 p-g t-p w-fl t-ct">shad37</div>
shad38
shad38 <div class="bg-sur r-m shad38 p-g t-p w-fl t-ct">shad38</div>
shad39
shad39 <div class="bg-sur r-m shad39 p-g t-p w-fl t-ct">shad39</div>
shad40
shad40 <div class="bg-sur r-m shad40 p-g t-p w-fl t-ct">shad40</div>
shad41
shad41 <div class="bg-sur r-m shad41 p-g t-p w-fl t-ct">shad41</div>
shad42
shad42 <div class="bg-sur r-m shad42 p-g t-p w-fl t-ct">shad42</div>
shad43
shad43 <div class="bg-sur r-m shad43 p-g t-p w-fl t-ct">shad43</div>
shad44
shad44 <div class="bg-sur r-m shad44 p-g t-p w-fl t-ct">shad44</div>
shad45
shad45 <div class="bg-sur r-m shad45 p-g t-p w-fl t-ct">shad45</div>
shad46
shad46 <div class="bg-sur r-m shad46 p-g t-p w-fl t-ct">shad46</div>

Tabela de opções

PalavraO que fazExemplo
Altura
sha-0Sem sombra (tira a de um componente).class="sha-0"
sha-pPouca (--sw-sha-p).class="sha-p"
shaMédia (--sw-sha).class="sha"
sha-gAlta (--sw-sha-g).class="sha-g"
sha-ggMuito alta (--sw-sha-gg).class="sha-gg"
Brilho colorido
sha-pri · sha-sec · sha-suc · sha-err · sha-ale · sha-infSombra + brilho na cor do significado.class="sha-pri"
Para dentro
sha-inSombra interna padrão.class="sha-in"
shad-in-1 · shad-in-2 · shad-in-3Sutil · média · funda.class="shad-in-2"
Texto
tsha-1 … tsha-10Sombra escura no texto, da mais leve à mais forte e espalhada.class="tsha-5"
tsha-w1 … tsha-w5Brilho branco no texto (fundo escuro).class="tsha-w3"
Especiais
shad1 … shad46Coleção de sombras prontas (veja a galeria).class="shad14"
Nomes antigos (ainda funcionam)
sw-shadow · sw-shadow- · sw-shadow-- · sw-shadow--- · sw-shadow_Iguais a sha-p · sha · sha-g · sha-gg · sha-p.
No seu CSS
var(--sw-sha-p) · var(--sw-sha) · var(--sw-sha-g) · var(--sw-sha-gg)A escala de altura (muda com o tema).box-shadow: var(--sw-sha);
var(--sw-sha-pri) … var(--sw-sha-inf)O brilho colorido.box-shadow: var(--sw-sha-pri);

Receitas prontas — usos reais

Situações que aparecem em quase todo site. Copie a que servir.

Cards de serviço levantados Ao vivo
Corte

30 min · R$ 45

Barba

20 min · R$ 35

Combo

50 min · R$ 70

<div class="l l-3 gap-g">
  <div class="bg-sur r-m sha-p p-g"><strong class="t-txt">Corte</strong><p class="t-p mb-0">30 min · R$ 45</p></div>
  <div class="bg-sur r-m sha-p p-g"><strong class="t-txt">Barba</strong><p class="t-p mb-0">20 min · R$ 35</p></div>
  <div class="bg-sur r-m sha-pri p-g bd bd-pri"><strong class="t-pri">Combo</strong><p class="t-p mb-0">50 min · R$ 70</p></div>
</div>
Campo de busca afundado Ao vivo
<label class="flx alc gap-p bg-base r-m sha-in px-m py-p">
  <i class="swi-search t-mut"></i>
  <input type="search" class="bd-0 bg-base w-fl" placeholder="Buscar produto…" aria-label="Buscar produto">
</label>
Título legível sobre foto Ao vivo
Casa de praia para 8 pessoas
<section class="banner"> <!-- sua foto de fundo no CSS da página -->
  <span class="tsha-6 t-xg fw7 Tbran1">Casa de praia para 8 pessoas</span>
</section>
Aviso flutuante (bem por cima) Ao vivo
Agendamento confirmado

Sábado, 10h — te esperamos!

<div class="bg-sur r-m sha-gg p-m flx alc gap-m">
  <i class="swi-check-circle t-suc t-gg"></i>
  <div>
    <strong class="t-txt">Agendamento confirmado</strong>
    <p class="t-p mb-0">Sábado, 10h — te esperamos!</p>
  </div>
</div>

Precisa de quê

  • swcore.min.css — todas as sombras.
  • swcore.compl.min.css — só para os ícones swi-* e as cores B…/T… usadas nos exemplos.

Cuidados — erros comuns

  • Sombra em caixa sem fundo quase não aparece: dê um fundo (bg-sur) junto.
  • Não empilhe sombras fortes em tudo: numa página, poucos elementos "flutuam". Card comum: sha-p; o que abre por cima: sha-g.
  • Só uma classe de sombra por elemento: sha + sha-pri juntas brigam e só uma vale.
  • tsha-* (escura) some em fundo escuro; lá use tsha-w*.
  • As classes de sombra vencem a sombra própria do componente (usam !important). Use sha-0 para tirar a de um componente.

O que ele não faz

  • Não há sombra que aumenta ao passar o mouse pronta; faça no seu CSS: .card:hover { box-shadow: var(--sw-sha-g); }.
  • As especiais shad42…shad46 têm cores fixas (azul, verde, amarelo, laranja, rosa) e não seguem a marca nem o tema.