Design system · identidade da marca

Pare de construir no escuro.

O Design System do Expert em Lábios 2026: tokens, tipografia Silka, componentes e acessibilidade prontos para você montar telas com consistência e parar de improvisar a cada tela nova. A decisão fica no token, não no achismo. Clique em qualquer cor, valor (hex/rgba) ou bloco de código para copiar.

A marca do Expert em Lábios 2026 no digital: o logo escrito em duas versões oficiais, uma para fundo escuro e uma para fundo claro. Mantém leitura e contraste nos dois temas.

Composições
Para fundo escuro
Para fundo claro
Cores oficiais · sobre o fundo correto
Fundo escuro · texto branco, 26 em gradiente
Fundo claro · azul do arquivo, 26 em branco
Uso
Faça
  • Mantenha o espaço livre ao redor ≥ a altura do ícone.
  • Tamanho mínimo: 160px de largura.
  • Use o SVG vetorial: escala sem perder nitidez e segue o tema.
Não faça
  • Recolorir o logo: use a versão do arquivo certa para cada fundo. Não existe versão monocromática nem ícone.
  • Distorcer, rotacionar, inclinar ou aplicar sombra.
  • Usar a versão branca sobre fundo claro (some no fundo).

Paleta extraída do gradiente do 26 e seus derivados em tokens de tema, claro e escuro. O componente consome token, nunca cor fixa.

Institucionais (paleta da marca)
Azul
#6B99E6
Predominante, do gradiente do 26. Marca e accents.
Azul gelo
#B3E3FB
Do gradiente do 26. CTA do escuro, destaques.
Navy da tinta
#0F1730
Tinta do CTA de gelo e fundos profundos.
7401 U 25%
Dourado claro
#FFE4A4
Accent dourado de apoio: selos, destaques.
red 0331 U
Rosa claro
#FFB1BD
Detalhes quentes, citações, âncora de preço.
pantone 712 U
Pêssego
#FFCA9B
Brilho quente em gradientes de fundo.
Branco
#FFFFFF
O branco da marca, do arquivo do logo (texto da versão para fundo escuro). Superfícies usam o off-white #FAFAFA.
Tema escuro · fundos (quase-preto, sem preto puro)
BG
#0A0E1D
Fundo principal (quase-preto, não #000).
BG 2
#10152B
Faixas alternadas.
Cartão
#171D38
Cartões e blocos.
Cartão 2
#1F2547
Elevação extra.
Tema claro · fundos (off-white, sem branco puro)
BG
#FAFAFA
Fundo principal (off-white, não #FFF).
BG 2
#F2F5FB
Faixas alternadas.
Cartão
#F7F9FD
Cartões e blocos.
Cartão 2
#EAEFF9
Elevação extra.
Azul · escala de uso
Azul profundo
#16306F
A sombra da escala: hover do CTA claro, fundos.
Azul base
#6B99E6
Institucional: o azul do logo. Gradientes e sombras da marca.
Azul claro
#9CD4F5
Hover do CTA de gelo no escuro.
Azul gelo
#B3E3FB
Accent principal sobre escuro e cor do CTA de gelo.
Sobre claro · tons profundos
Azul texto
#2C4FA3
Accent e links no tema claro.
Azul CTA claro
#1D3E8F
Início do gradiente de CTA no claro.
Gradiente da marca · como se constrói
Gradiente do 26
#B3E3FB → #6B99E6
A assinatura da marca: gelo para azul, como no numeral 26 do logo. Duas paradas em 100°.
CTA · tema escuro
#B3E3FB → #6B99E6
O botão de gelo: gradiente da marca com tinta navy #0F1730. É o token --cta-grad no escuro.
CTA · tema claro
#1D3E8F → #2C4FA3
Derivado em 120°: azul profundo, texto branco. É o token --cta-grad no claro.
/* gradiente do 26 · as 2 paradas do logo */ background:linear-gradient(100deg,#B3E3FB,#6B99E6); /* derivados de CTA (--cta-grad) · escuro (tinta navy) e claro (texto branco) */ background:linear-gradient(120deg,#B3E3FB,#6B99E6); color:#0F1730; background:linear-gradient(120deg,#1D3E8F,#2C4FA3); color:#fff;
Texto
Texto
#F7FAFE
Títulos e corpo principal.
Secundário
#BFC9E0
Texto secundário, leads.
Gelo suave
#D5EEFC
Texto sobre fundo escuro com leveza.
Aviso legal secundário
#7D89B0
Aviso legal, rodapé.
Cor de destaque quente (da marca)
Dourado
#FFE4A4
Selos, bônus, destaques de apoio.
Dourado profundo
#D6C08A
Ao passar o cursor, borda do dourado.
Rosa
#FFB1BD
Citações e destaques quentes.
Pêssego
#FFCA9B
Calor em gradientes de fundo.
Linha e sombras
Linha
rgba(179,227,251,.14)
Bordas e divisores (lilás @14%).
Sombra
rgba(44,79,163,.40)
Elevação de botões (azul @40%).
Sombra forte
rgba(44,79,163,.50)
Ao passar o cursor em botões (azul @50%).
Semânticas · feedback (sempre com ícone, nunca só cor)
Sucesso Informação Atenção Erro

Verde, âmbar e vermelho saem da paleta institucional de propósito: são funcionais (sucesso, atenção, erro). No tema light usam variantes escurecidas para manter AA. Acompanhe sempre de ícone + texto, nunca cor sozinha.

Temas · escuro e claro
Escuro · padrão do site
A virada

Do improviso à referência.

Fundo escuro navy-azulado sobre quase-preto, texto quase branco, accents em azul gelo.
Avaliação primeiro
Proporção e plano antes da agulha.
Inscrever →Certificado incluído
Claro · fundo claro
A virada

Do improviso à referência.

Fundo off-white #FAFAFA (sem branco puro), texto azul-escuro, accents em azul profundo.
Avaliação primeiro
Proporção e plano antes da agulha.
Inscrever →Certificado incluído

No tema light, dourado e rosa como texto usam variantes escurecidas (gold-ink #7A5A0E, rose #B04A5E); como preenchimento mantêm a cor institucional (#FFE4A4, #FFB1BD). O site usa o tema escuro por padrão.

Gradientes da marca em malhas e lineares. Sem cônico, sem blob, sem halo.

Escuros · funcionais
Primário · navy
Aurora · navy + pêssego
Malha de imagem · azul gelo + rosa + navy
Escuros · vibrantes
Azul → azul gelo
Profundidade · navy → azul → azul gelo
Azul gelo → pêssego
Spotlight · azul gelo
Bicolor · azul → escuro
Escuros · malhas
Nebulosa · 4 pontos
Malha · azul + azul gelo + navy
Malha quente · navy + azul gelo + pêssego
Malha de topo · azul gelo + rosa + navy
Malha centro-base
Escuros · abstratos
Espectro · navy → azul → azul gelo
Aurora vertical
Brilho de borda inferior
Fitas diagonais
Claros · suaves e pastel
Suave · azul
Aurora claro
Malha pastel
Azul gelo
Pêssego
Espectro pastel
Claros · malhas
Malha pastel · 3 pontos
Malha pastel · 4 pontos
Malha quente clara · azul + rosa + pêssego
Malha de topo clara · azul gelo + rosa + azul

Silka em escala responsiva por ponto de quebra. Corpo com no mínimo 16px no mobile para evitar o zoom no iOS.

Pare de preencher no escuro.
Destaque / H1
Silka · clamp(34-60px)
peso 500 · entrelinha 1.03
espaçamento -0.025em
Técnica, proporção e naturalidade. Com método.
Título / H2
Silka · clamp(26-38px)
peso 500 · entrelinha 1.12
espaçamento -0.02em
Do primeiro caso ao caso complexo.
Subtítulo / H3
Silka · 24px
peso 500 · entrelinha 1.2
Como avaliar antes de preencher.
Subtítulo / H4
Silka · 20px
peso 500 · entrelinha 1.25
O que está incluído na turma.
Subtítulo / H5
Silka · 17px
peso 500 · entrelinha 1.3
Detalhe de seção / rótulo
Subtítulo / H6
Silka · 15px
peso 500 · entrelinha 1.35
O curso expert em lábios da Facial Class
Rótulo / Sobrelinha
Silka · 12px · peso 600
espaçamento 0.18em · UPPERCASE
cor: Azul gelo
Avaliação, técnica e naturalidade para o preenchimento labial de nível expert.
Texto de abertura
Silka · 17-18px
peso 300 · entrelinha 1.5
cor: Secundário
Proporção, anatomia labial e a escolha entre agulha e cânula: o resultado natural nasce da avaliação, não do improviso.
Corpo
Silka · 16px
peso 300 · entrelinha 1.65
Edição 2026 do curso de lábios da Facial Class.
Corpo pequeno
Silka · 14px (computador) / 13px (celular)
peso 300 · entrelinha 1.6
cor: Secundário
R$ 149,90
Numeral / Preço
Silka · clamp(32-44px)
peso 700 · entrelinha 1
Legenda / Aviso legal
Silka · 11px
peso 300 · entrelinha 1.5
cor: Aviso legal secundário
Escala responsiva · pontos de quebra do Framer

No Framer, cada Text Style aceita override por breakpoint. Defina o valor no Desktop e ajuste em Tablet e Phone. Valores recomendados (px):

Estilo
Desktop ≥1200
Tablet ≤810
Phone ≤390
Destaque / H1
60 lh 1.03
44
34
Título / H2
38 lh 1.12
32
26
Subtítulo / H3
24 lh 1.2
22
20
Subtítulo / H4
20 lh 1.25
19
18
Subtítulo / H5
17 lh 1.3
16
16
Subtítulo / H6
15 lh 1.35
14
14
Rótulo
12
12
11
Texto de abertura
18 lh 1.5
17
16
Corpo
16 lh 1.65
16
16
Corpo pequeno
14
13
13
Numeral / Preço
44 lh 1
38
32
Aviso legal
12
11
11

As amostras acima já usam clamp(): redimensione a janela para ver a escala fluida entre Phone e Desktop. Corpo mínimo de 16px no celular evita o zoom automático do iOS.

Biblioteca Phosphor, peso Thin, traço de 1pt, herdando a cor por currentColor. O ícone nunca substitui o rótulo.

Conjunto de sistema desenhado na grade 24. Clique em qualquer ícone para copiar o SVG. Para o catálogo completo, use o link da Phosphor no fim da seção.

Domínio · saúde e curso
Navegação
Ação e conteúdo
Comunicação e mídia
Estado e conta
Tamanhos · tokens de ícone
sm · 16
base · 20
md · 24
lg · 32
xl · 48

No Framer: insira o ícone Phosphor, defina Weight = Thin e a cor como Color Style (texto/accent). Em botões, o ícone alinha à baseline do texto com gap de 8 px; alvo de toque mínimo de 44 px mesmo quando o glifo é menor.

Biblioteca completa

Os ícones acima são um recorte de sistema desenhado na grade 24. Para qualquer outro glifo, use a biblioteca oficial: 9.000+ ícones em 6 pesos, todos disponíveis nativamente no Framer.

Abrir biblioteca Phosphorphosphoricons.com

Variantes e tamanhos com altura mínima de 44px e raio pill. O rótulo sempre diz a ação (Salvar caso, não Enviar).

Ícone à direita
Sem ícone
Preenchido
Sólido
Contorno
Inline / texto
Dourado (accent)
Dourado contorno
Tamanhos (sm / md / lg)
Estados
Botões · ícone à esquerda
Etiquetas · sem ícone / ícone esquerda / ícone direita
Preenchimento labial Preenchimento labial Preenchimento labial
Selos · sem ícone / ícone esquerda / ícone direita
Certificado incluído Certificado incluído Certificado incluído
Campos de formulário · estados
Texto de ajuda opcional.
Digite um e-mail válido.
Cupom aplicado.
Campo desabilitado.
Somente leitura.
Área de texto
Caixa de seleção · Botão de opção · Alternador
Matriz de estados interativos

Os mesmos estados se aplicam a todo componente interativo (botão, campo, link, alternador, aba…). Consistência de interação = DS maduro.

EstadoSinal visual / regra
defaultRepouso: token base.
hoverMudança leve (cor/elevação); só em ponteiro.
focus-visibleObrigatório: anel --focus (navegação por teclado).
activePressionado (translateY 1px / cor mais forte).
disabled--opacity-disabled + cursor not-allowed + não focável.
loadingIndicador + bloqueia interação; mantém a largura.
errorBorda/texto --danger + mensagem + aria-invalid.
successBorda/texto --success + confirmação.
selectedEstado persistente (aba/opção ativa).
read-onlyFundo --card2, sem borda de edição, copiável.

Alertas, notificações e status nos quatro tons. Sempre ícone e texto juntos: a cor não comunica sozinha.

Alertas inline
Caso salvo. O plano já está na sua lista.
Aula nova esta semana. Entrou conteúdo novo no módulo de técnica. Confira quando quiser.
Sessão expira em breve. Salve o caso antes de continuar para não perder o que você montou.
Falha ao salvar. Não foi possível salvar agora. Verifique a conexão e tente de novo.
Notificação · Indicador de carregamento · Esqueleto
Salvo com sucesso
Estado vazio

Nenhum caso ainda

Registre o primeiro caso de lábios da sua lista.

Janela modal · Dica · Balão
Duplica o caso para você editar sem perder o original.
Filtrar porTécnica e fase do tratamento.

Organização e navegação: abas, acordeão, avatares, trilha de navegação, paginação e variantes de cartão.

Abas
Conteúdo da aba ativa. No produto: aria-selected + navegação por setas do teclado.
Acordeão
Com que frequência entram aulas novas?
As aulas são liberadas por módulo ao longo da turma.
As aulas têm certificado?
O curso emite certificado ao final. As aulas ficam disponíveis para rever durante a turma.
Avatar
EJACABC+5
Trilha de navegação · Paginação
Cartão · variantes

Cartão básico

Superfície com borda e raio padrão.

Cartão interativo

Elevação ao passar o mouse.

Cartão com mídia

Imagem/gradiente no topo.

Cartão horizontal

Miniatura + texto.

Componentes de aplicação: tabela de dados, paleta de comandos, seletor de data e navegação. Conteúdo de exemplo do domínio do curso.

Tabela de dados
Estado
Anatomia labial aplicadaFundamentos42 minPublicada
Avaliação e proporçãoAvaliação38 minRascunho
Técnica: agulha e cânulaTécnica51 minPublicada
Naturalidade: volume sem exageroNaturalidade29 minEm revisão
Correção e casos complexosCasos47 minPublicada
5 de 24 aulas
Seletor de data
17/06/2026 a 20/06/2026
Barra de navegação e barra lateral de produto

Meus módulos

BuscarAC

Módulos

Selecione um módulo para ver as aulas e o seu progresso.

Paleta de comandos

Contraste WCAG AA, foco visível, alvo de toque de 44px e respeito a movimento reduzido. A mensagem de erro diz o que houve e como resolver.

Tema dark
Texto em fundo18.3:1
Secundário em cartão10.0:1
Azul gelo (links) em fundo14.0:1
Dourado em fundo15.4:1
Tinta navy no botão de gelo5.7:1
CTA contra o fundo6.7:1
Aviso legal no rodapé5.6:1
Tema light
Texto em fundo16.4:1
Secundário em fundo6.5:1
Azul (accent/links)7.3:1
Dourado-ink (texto)6.1:1
Rosa-ink (texto)5.0:1
Tinta navy no botão de gelo7.4:1
CTA contra o fundo7.3:1

No tema light, dourado e rosa como texto usam as variantes -ink (escurecidas) para garantir AA; como preenchimento mantêm a cor institucional. Mantenha foco visível (outline) nos interativos e alvos de toque ≥ 44px.

Cores, tipografia, espaçamento e raio: a base que todo componente consome via token.

Espaçamento · base 4 / 8
--space-1 · 4
--space-2 · 8
--space-3 · 12
--space-4 · 16
--space-6 · 24
--space-8 · 32
--space-12 · 48
Raio
sm · 8
md · 14
lg · 18
pill · 30
Movimento
--motion-fast · .15s --motion · .2s --motion-slow · .4s --ease · cubic-bezier(.2,.8,.2,1)
Elevação
elev-1
elev-2
elev-3
elev-4
Opacidade · borda · desfoque
disabled
.45
muted
.66
Sobreposição
.58
hover
.08
hair · 1
bw-2 · 2
blur-md
12
Pontos de quebra · dimensionamento · proporção
phone · 390 tablet · 810 desktop · 1200
icon 16
icon 20
icon 24
touch 44
1:1
16:9
Elevação semântica

Papéis mapeados na escala de sombra: Elevado = elev-1 · Sobreposição = elev-3 · Modal = elev-4. Use o papel (`--elev-raised/overlay/modal`), não o número. Sombras usam camadas pretas no dark e matiz da marca no light.

Cantos aninhados

Elemento arredondado dentro de outro: os cantos devem ser concêntricos (mesmo centro de arco). Regra: raio interno = raio externo − padding, para o espaçamento ficar uniforme inclusive nos cantos.

Faça · concêntrico
Externo r 24 · padding 16 → interno r 8 (24 − 16). Gap uniforme.
Não faça · mesmo raio
Interno r 24 (igual ao externo) → nos cantos o gap "estufa". Não concêntrico.
Pares recomendados
ContextoExternoPaddingInterno
Cartão grande24168
Cartão médio1688
Cartão pequeno / campo1284
Tile compacto880 · reto
Pill / botãofullnão se aplicaexceção
CSS · derive o interno com calc()
/* raio interno = raio externo − padding (nunca negativo) */ .card{ --r:24px; --pad:16px; border-radius:var(--r); padding:var(--pad); } .card > .inner{ border-radius:max(0px, calc(var(--r) - var(--pad))); } /* 24 - 16 = 8 */

Padding ≥ raio → interno vira 0 (reto). Borda/stroke inverte: externo = interno + largura da borda. Aninhamento profundo: subtraia o padding de cada nível. Pill é exceção (não recalcula). Com corner smoothing (squircle iOS) a fórmula vira aproximação: iguale o smoothing em pai e filho.

Consistência por token, paridade entre claro e escuro, acessibilidade por padrão. Decida uma vez, reaplique em todo lugar.

Arquitetura de tokens (3 camadas)

Tokens fluem em primitive → semantic/intent → component. Regra de ouro: o token semântico nunca sugere valor (--btn-bg, não --azul-500); o de componente referencia o semântico, nunca o primitivo direto. É o que torna theming e rebrand triviais.

CamadaExemploPapel
primitive#hex · 16pxValor cru, sem contexto.
semantic--accent · --space-4Intenção / uso.
component--btn-bgAplicação no componente.
Princípios de movimento

Anime com propósito (feedback, orientação, continuidade), nunca decorativo. Durações nos tokens (--motion-fast .15 · --motion .2 · --motion-slow .4), curva --ease. Respeite prefers-reduced-motion (já no reset). Não anime: deslocamento de layout nem texto de leitura.

Versionamento e contribuição

SemVer (MAJOR.MINOR.PATCH) + CHANGELOG.md + política de depreciação. Contribuição: regra das 3 equipes (só vira padrão o que serve 3+ usos) + revisão antes de virar componente. Ver CONTRIBUTING.md no pacote.

Faça / Não faça
Faça
  • Consumir tokens (nunca hex solto).
  • Escuro + claro em paridade, contraste WCAG AA.
  • Ícone + texto nos estados (cor nunca sozinha).
  • Foco visível em tudo que é focável.
Não faça
  • Cor / raio / sombra fora dos tokens.
  • Texto claro sem contraste no light.
  • Animar sem propósito ou ignorar reduced-motion.
  • Botão <a> sem href.

A camada de copy do sistema: como o produto escreve. Builder para builder, técnica, direta e anti-improviso, sem hipérbole nem happy talk. Guia completo no pacote (voz-e-tom.md) e os termos de cada marca em glossario-marca.md.

Adjetivos da voz
TécnicaDiretaConfiantePrecisaAnti-improviso
Faça / Não faça
Faça
  • O rótulo diz a ação ("Salvar caso", não "Enviar").
  • No erro, diga o que houve e o próximo passo.
  • Voz ativa, frases curtas, pt-BR.
  • Ícone e texto juntos: a cor não comunica sozinha.
Não faça
  • Usar &: escreva a palavra "e".
  • Travessão (— nem –): use vírgula, dois-pontos ou parênteses.
  • Hipérbole ("a melhor", "incrível") ou happy talk ("Bem-vindo!").
  • Misturar domínio entre marcas.
Estrangeirismos
Traduzir (tem equivalente limpo)
data tabletabela de dados
command palettepaleta de comandos
date pickerseletor de data
modal, tooltip, popoverjanela modal, dica, balão
toast, breadcrumb, cardnotificação, trilha, cartão
Manter (nome próprio ou código)
token, hover, link, avatar, pill
Framer, Code Component, Color/Text Style
CSS, JSON, SVG, PNG
WCAG, SemVer, Silka, Phosphor
currentColor, clamp()
Separação de domínio

Cada marca só fala do próprio domínio. Os termos específicos ficam em glossario-marca.md (um por marca) e nunca cruzam para outro design system. Na dúvida, erre para o neutro (corpo de texto, preenchimento de cor, token, cartão), nunca para o domínio de outra marca.

Microcopy modelo
Interface
BotãoSalvar caso
Estado vazioNenhum item ainda. Crie o primeiro.
SucessoSalvo. Já está na sua lista.
ErroNão foi possível salvar. Tente de novo.
DestrutivoRemover item? Não tem volta.
Regras rápidas
Erro diz o que houve e como resolver.
Rótulo de botão é a ação, não o genérico.
Números com função tabular.
Experts: conteúdo editorial, fora da UI.
Nomes de marca por extenso.

Valores legíveis por máquina para tema, espaçamento, raio, elevação e movimento. O componente lê o token, não o valor solto.

Variáveis CSS
/* Expert em Lábios 2026 · tokens (identidade própria) */ :root{ /* institucionais */ --brand-azul:#6B99E6; --brand-azul-gelo:#B3E3FB; --brand-dourado:#FFE4A4; --brand-rosa:#FFB1BD; --brand-pessego:#FFCA9B; --brand-branco:#FFFFFF; /* fundos */ --bg:#0A0E1D; --bg2:#10152B; --card:#171D38; --card2:#1F2547; --line:rgba(179,227,251,.14); /* roxo / lilás / texto */ --primary-deep:#16306F; --primary:#6B99E6; --primary-bright:#9CD4F5; --accent:#B3E3FB; --accent-soft:#D5EEFC; --txt:#F7FAFE; --mut:#BFC9E0; --legal-mut:#7D89B0; /* accent quente */ --highlight:#FFE4A4; --highlight-deep:#D6C08A; --support:#FFB1BD; --glow:#FFCA9B; /* sombras */ --sh:rgba(44,79,163,.40); --sh-strong:rgba(44,79,163,.50); /* sistema · raio, espaçamento, z-index, movimento, foco */ --radius-sm:8px; --radius-md:14px; --radius-lg:18px; --radius-pill:30px; --space-2:8px; --space-4:16px; --space-6:24px; --space-8:32px; --motion:.2s; --ease:cubic-bezier(.2,.8,.2,1); --focus-ring:#B3E3FB; --focus:0 0 0 2px var(--bg),0 0 0 4px var(--focus-ring); /* fundações: opacidade · borda · desfoque · pontos de quebra · dimensionamento · proporção */ --opacity-disabled:.45; --opacity-muted:.66; --opacity-hover:.08; --opacity-overlay:.58; --bw-hair:1px; --bw-2:2px; --blur-sm:6px; --blur-md:12px; --blur-lg:20px; --bp-phone:390px; --bp-tablet:810px; --bp-desktop:1200px; --size-icon:20px; --control-h:44px; --touch-min:44px; --ar-square:1/1; --ar-wide:16/9; /* semânticas (feedback) + elevação (camadas) + papéis */ --success:#45C08A; --warning:#E8B53D; --danger:#FF7D93; --info:#B3E3FB; --elev-1:0 1px 2px rgba(0,0,0,.34), 0 2px 6px rgba(0,0,0,.30); --elev-2:0 2px 4px rgba(0,0,0,.34), 0 8px 18px rgba(0,0,0,.40); --elev-3:0 4px 12px rgba(0,0,0,.45), 0 16px 36px rgba(0,0,0,.55); --elev-4:0 10px 24px rgba(0,0,0,.5), 0 28px 64px rgba(0,0,0,.62); --elev-raised:var(--elev-1); --elev-overlay:var(--elev-3); --elev-modal:var(--elev-4); } /* ---- tema light · alterna com [data-theme="light"] no <html> (toggle + localStorage) ---- */ [data-theme="light"]{ --bg:#FAFAFA; --bg2:#F2F5FB; --card:#F7F9FD; --card2:#EAEFF9; --line:rgba(44,79,163,.16); --txt:#131A33; --mut:#4F5A7D; --legal-mut:#4F5A7D; --primary:#6B99E6; --primary-bright:#9CD4F5; --accent-soft:#244488; --accent:#2C4FA3; /* accent/texto: azul profundo p/ contraste no claro */ --focus-ring:#2C4FA3; --highlight:#FFE4A4; --highlight-ink:#7A5A0E; --support:#FFB1BD; --support-ink:#B04A5E; --glow:#FFCA9B; --sh:rgba(44,79,163,.18); --sh-strong:rgba(44,79,163,.26); }
JSON (Color Styles + Text Styles do Framer)
// Color Styles { "brand/Azul": "#6B99E6", "brand/AzulGelo": "#B3E3FB", "brand/Dourado": "#FFE4A4", "brand/Rosa": "#FFB1BD", "brand/Pêssego": "#FFCA9B", "bg/BG": "#0A0E1D", "bg/BG2": "#10152B", "bg/Cartão": "#171D38", "bg/Cartão2": "#1F2547", "azul/Profundo": "#16306F", "azul/Claro": "#9CD4F5", "text/Texto": "#F7FAFE", "text/Secundário": "#BFC9E0", "text/LilásSuave": "#D5EEFC", "text/Legal": "#7D89B0", "accent/Dourado": "#FFE4A4", "accent/DouradoProfundo": "#D6C08A", "accent/Rosa": "#FFB1BD", "accent/Pêssego": "#FFCA9B", "line": "rgba(179,227,251,.14)", // feedback · valor dark (paridade light no comentário) "feedback/Success": "#45C08A", // light #147A45 "feedback/Warning": "#E8B53D", // light #8A5A00 "feedback/Danger": "#FF7D93", // light #BE2C45 "feedback/Info": "#B3E3FB" // light #5E4A8C }
// Text Styles (Silka) · tamanho por breakpoint Framer [desktop, tablet, phone] { "Destaque/H1": { size:[60,44,34], weight:600, lh:1.03, ls:"-0.025em" }, "Título/H2": { size:[38,32,26], weight:600, lh:1.12, ls:"-0.02em" }, "Subtítulo/H3": { size:[24,22,20], weight:600, lh:1.2 }, "Subtítulo/H4": { size:[20,19,18], weight:600, lh:1.25, ls:"-0.01em" }, "Subtítulo/H5": { size:[17,16,16], weight:600, lh:1.3 }, "Subtítulo/H6": { size:[15,14,14], weight:600, lh:1.35 }, "Rótulo": { size:[12,12,11], weight:600, lh:1.2, ls:"0.18em", uppercase:true }, "Texto de abertura": { size:[18,17,16], weight:300, lh:1.5 }, "Corpo": { size:[16,16,16], weight:300, lh:1.65 }, "CorpoPequeno": { size:[14,13,13], weight:300, lh:1.6 }, "Numeral": { size:[44,38,32], weight:700, lh:1 }, "Legal": { size:[12,11,11], weight:300, lh:1.5 } }
Configuração no Framer · claro / escuro automático

No Framer, crie cada cor como um Color Style com um valor de Claro e um de Escuro. O site publicado segue a aparência do sistema do visitante automaticamente (prefers-color-scheme); dá pra adicionar um toggle e lembrar a escolha do visitante. Atalho no canvas: Ctrl+Cmd+N. Valores por estilo:

Color Style
Claro
Escuro
bg / Fundo
#FAFAFA
#0A0E1D
bg / Superfície
#F2F5FB
#10152B
bg / Cartão
#F7F9FD
#171D38
line / Borda
rgba(44,79,163,.16)
rgba(179,227,251,.14)
text / Texto
#131A33
#F7FAFE
text / Secundário
#4F5A7D
#BFC9E0
accent / Azul (base)
#6B99E6
#6B99E6
accent / Azul (link)
#2C4FA3
#B3E3FB
accent / Dourado · texto
#7A5A0E
#FFE4A4
accent / Dourado · preenchimento
#FFE4A4
#FFE4A4
accent / Rosa · texto
#B04A5E
#FFB1BD
chrome / Navegação
rgba(255,255,255,.82)
rgba(10,14,29,.82)
chrome / Rodapé · fundo
#EAEFF9
#060912
chrome / Rodapé · texto
#4F5A7D
#7D89B0

Refs Framer: Modo claro e escuro no Framer · Academy: modo claro e escuro