Reload
manual de marcav4.0.0out/2026pt-BR

Um manual para uma marca que se atualiza.

Este é o guia de identidade da Reload, o ecossistema de verdade para devs que querem elevar o nível, trocar experiência e crescer na carreira. Use como referência sempre que criar qualquer peça: site, capa de mentoria, post, apresentação ou camiseta.

01essencia.md

Essência da marca

Carreira também fica em cache. A Reload existe para forçar a atualização: F5 na sua evolução como dev, com gente que já está onde você quer chegar.

propósito
Tirar devs da estagnação conectando quem está subindo com quem já subiu.
missão
Levar a experiência real de profissionais de empresas de tecnologia de sucesso para devs de todo o Brasil, em mentorias com espaço aberto para perguntas e num ecossistema com curadoria.
visão
Ser o lugar onde o dev brasileiro vai quando quer dar o próximo passo na carreira.
posicionamento
Um ecossistema de devs, com gente de verdade e curadoria. A Reload junta mentorias com quem já está onde você quer chegar e um Discord com curadoria para continuar a conversa, e o próximo passo fora da zona de conforto que sai daí. Convidados, conteúdos indicados, opiniões e informações que circulam lá dentro passam por curadoria: menos ruído e achismo, mais experiência real. Dois planos: anual por R$ 499,00 (um pagamento pelos 12 meses, em até 12x sem juros no cartão ou à vista no Pix) e mensal por R$ 49,90, cobrança mensal no cartão, cancele quando quiser. Quem entra agora mantém o preço. Não vendemos horas, trilhas, módulos nem certificado, e não prometemos frequência de conteúdo.
headline do hero
Sua carreira não precisa de mais conteúdo.
promessa
Mentorias com quem já chegou lá, para atualizar sua visão de carreira.
tagline
Dê um reload. Alternativas: "Sua carreira fora do cache." / "Dê um reload."
valor

Experiência real

O que funciona dentro das empresas, e não o que parece bonito em thread.

valor

Pergunta é bem-vinda

Nenhuma dúvida é básica demais. Quem pergunta, evolui.

valor

Constância

Evolução vem de ciclos curtos, como deploys: um passo de cada vez.

valor

Troca entre pares

Todo mundo ensina alguma coisa. O ecossistema é via de mão dupla.

valor

Curadoria

Convidados, indicações e opiniões escolhidos com cuidado. Menos ruído, mais vivência.

02publico.md

Para quem falamos

Desenvolvedores de software brasileiros, de 20 a 40 anos, que já trabalham na área e querem crescer. Eles consomem conteúdo técnico todo dia, sabem identificar marketing vazio de longe e respeitam quem mostra experiência concreta.

júnior → pleno

Quem está começando a subir

Primeiro ou segundo emprego, aprende rápido, mas não sabe o que o separa do próximo nível.

  • Dor: insegurança e falta de direção
  • Busca: saber o que estudar e como ser visto no time
  • Gatilho: "como você saiu de júnior?"
pleno → sênior

Quem sente o platô

Entrega bem há anos, mas está no mesmo cargo e na mesma stack.

  • Dor: estagnação e salário parado
  • Busca: system design, influência, entrevistas em empresas maiores
  • Gatilho: "o que um sênior faz de diferente?"
sênior → liderança

Quem pensa no próximo passo

Técnico forte, avaliando entre staff engineer e gestão.

  • Dor: decisões de carreira sem referência
  • Busca: conversas com quem já fez essa escolha
  • Gatilho: "IC ou gestão?"
04cores.css

Cores

A marca é azul, preto e branco. O branco é a base, o azul é a cor da marca e das ações, o preto dá peso a texto e seções escuras. Os cinzas e os azuis de apoio só complementam. Clique em um código para copiar.

primária
Azul Reload--rl-blueMarca, ações, links, faixas de destaque
secundária
Preto--rl-blackTexto, wordmark, benefícios, rodapé
base
Branco--rl-whiteFundo principal, texto sobre azul e preto
apoio
Azul 50--rl-blue-50Fundo de seção, card do hero, selos
apoio
Azul 300--rl-blue-300Azul sobre preto: eyebrow, destaques e números
apoio
Azul hover--rl-blue-hoverSó no hover de botão azul
cinza
Cinza 50--rl-gray-50Fundo de seção alternada
cinza
Cinza 200--rl-gray-200Bordas e divisões no claro
cinza
Cinza 400--rl-gray-400Texto secundário sobre preto
cinza
Cinza 500--rl-gray-500Só labels pequenos, legendas e metadados
cinza
Cinza 700--rl-gray-700Texto sobre cinza claro, quando o preto pesar
cinza
Cinza 800--rl-gray-800Bordas sobre preto
cinza
Cinza 900--rl-gray-900Cards dos benefícios, painéis sobre preto

O azul fica concentrado no card do hero (Azul 50), no CTA final, nos números grandes, na faixa e no seletor do plano e nas ações. Fora disso, ele é sinal de ação: não pinte texto corrido nem decoração de azul. O preto fica para a seção de benefícios, o terminal de "Por que a Reload" e o rodapé; sobre ele, o azul de destaque é o Azul 300. A seção de preço é clara (Cinza 50, texto preto) com o card do plano em azul.

Texto é preto

Títulos e parágrafos em preto (#000), também dentro de cards e em fundos Cinza 50 e Azul 50. O Cinza 500 (#5E6470) só entra em texto pequeno: labels, legendas e metadados. Sobre preto, o texto é branco e o secundário é Cinza 400.

Status só na plataforma

No site não há verde, vermelho, laranja ou amarelo. Sucesso, checks, o eyebrow e o + do diff são azuis; o que sai (−, ✕) é cinza. Vermelho, verde e âmbar existem só para dizer estado na plataforma (veja Plataforma).

CombinaçãoAmostraContrasteUso
Preto sobre brancoAa21 : 1 AAATítulos e texto
Cinza 700 sobre brancoAa10,6 : 1 AAATexto sobre cinza claro, quando o preto pesar
Cinza 500 sobre brancoAa5,9 : 1 AASó labels, legendas e metadados
Branco sobre AzulAa5,6 : 1 AABotão primário
Azul sobre brancoAa5,6 : 1 AALinks, botão invertido na faixa azul
Azul sobre Azul 50Aa4,9 : 1 AASelos, ícones
Cinza 400 sobre pretoAa8,9 : 1 AAATexto secundário no preto
Azul 300 sobre pretoAa7,8 : 1 AAAEyebrow, destaques e números no preto
Azul sobre pretoAa3,8 : 1 só texto grandeTítulos grandes, nunca texto pequeno
Cinza 400 sobre brancoAa2,4 : 1 ✕ não useNada mais claro que Cinza 500 para texto no claro
05tipografia.css

Tipografia

Duas famílias, cada uma com um papel. Plus Jakarta Sans faz tudo: títulos, texto, interface, labels e código; o destaque dentro do título é a própria Jakarta em itálico azul. DM Mono (400 e 500) entra só em números (números grandes, preço) e no eyebrow acima dos títulos. Nunca em título. Títulos em peso normal (400), com tracking fechado de −3% a −4%: quem dá a hierarquia é o tamanho, não o peso. Texto em 400, ênfase e botões em 500 ou 600. Negrito pesado (700 e 800) não entra.

títulos · texto · interface · labels · código
Aa

ABCDEFGHIJKLM 0123456789 {}[]$

Plus Jakarta Sans 400–600

400 em todos os títulos (h1, h2, h3), nos nomes de mentor e no texto, com tracking de −3% a −4% nos títulos. 500 ou 600 para ênfase, botões e labels. Negrito pesado (700 e 800) não entra. Entrelinha 1,6 no texto.

números · eyebrows
499

2.000+ · R$ 499,00 · R$ 49,90

Ecossistema de devs

DM Mono 400 e 500

Só para números (400): números grandes, preço, números em mocks. E para o eyebrow (500, 13 px, caixa alta, +0,08em, azul). Nunca em título, parágrafo, botão ou no destaque <em>.

display (h1) · 64/1.08 · 400 · −4%Dê um reload.
h2 · 54/1.1 · 400 · −3,5%Mentorias com quem já chegou lá
lead · 36/1.2 · 400 · −3%Gente de verdade, com curadoria.
h3 · 22/1.25 · 400 · −3%Grupos de estudo
body · 17/1.6 · 400Você leva a pergunta e quem já passou por isso responde, com a experiência de quem vive isso todo dia.
ênfase · botões · 500–600Fazer parte →
número grande · DM Mono 400R$ 499,00
eyebrow · DM Mono 500 · 13 caixa alta · azulBenefícios que vão além
label · 13 caixa alta · 600mentorias · discord
código · 15/1.7 · 500$ reload --join

Use clamp() para títulos responsivos (no site, as classes text-display, text-title e text-lead). Destaque dentro de título com <em>: Plus Jakarta Sans em itálico azul, na mesma família e peso do título (o estilo base do site já faz isso). Números e eyebrows com a classe font-mono. Títulos e parágrafos em preto; cinza só em labels, legendas e metadados. Fallbacks: "Plus Jakarta Sans", system-ui, sans-serif e "DM Mono", ui-monospace, monospace.

06elementos.tsx

Elementos gráficos

Vêm do ambiente do dev (terminal, diff), do próprio símbolo e da órbita do hero. Cada elemento tem uma função; não use como enfeite. No lugar de emoji, use os símbolos do terminal (✓ ▸ ●) ou ícones de traço em SVG. A grade de pontos virou o sistema de arte da marca: veja a Trama.

Eyebrow: rótulo de seção

Texto curto e real acima do título: DM Mono 500, 13 px, caixa alta, +0,08em, em azul (Azul 300 sobre preto, branco sobre azul). Diz do que a seção trata, sem código nem piada interna.

Ecossistema de devsHero
Benefícios que vão alémBenefícios (Azul 300 sobre preto)
Reload no seu agenteBloco do MCP no fim dos benefícios (Azul 300 sobre preto)
Por que a Reload?Por que a Reload?
Para recrutadoresRecrutadores
Quem está por trásQuem somos
Plano membroPreço e plano
DúvidasFAQ
Benefícios que vão alémsobre preto, o eyebrow fica Azul 300; sobre azul, branco

Diff de mudanças

Para benefícios ou antes e depois. O + azul é o que entra; o − cinza é o que sai. Em comparações, os selos são "antes" (cinza) e "depois" (azul).

antesdepois
−estudar sozinho sem feedback
+tirar dúvidas com quem já chegou lá
−mesma stack há 3 anos
+mentorias com quem já está onde você quer chegar

Pílulas de tema

Borda Cinza 200 ou preta, raio total, Plus Jakarta Sans 600.

carreiratecnologialiderançasystem designentrevistasIC ou gestão

Números grandes

DM Mono 400 azul, só com fatos verdadeiros: membros, preço, condições. Nada de métricas inventadas e nenhuma frequência de conteúdo. Aparecem no hero (mais de 2 mil devs) e no passe de membro (12x de R$ 41,58 sempre com "total R$ 499,00 · última parcela R$ 41,62"; R$ 49,90 no mensal). A âncora de parcelas nunca aparece sem o total e a última parcela.

2.000+devs no ecossistema
R$ 499,00por ano no anual, em até 12x sem juros ou Pix à vista
R$ 49,90por mês no mensal, cancele quando quiser

Órbita

Fica no hero da home, ao lado do headline: os benefícios do ecossistema girando em volta da marca, numa cena 3D em WebGL (three.js, carregada só quando o hero aparece e o navegador está ocioso), centrada entre o texto e a borda do card. O protagonista é o símbolo grande, extrudado do SVG da marca sem distorção, sobre um pedestal branco; ele só balança de leve, nunca gira. Três anéis finos (azul translúcido), com raios, alturas e inclinações diferentes e um ponto azul correndo em cada um, cruzam-se sobre um chão de pontos em perspectiva e giram devagar, em velocidades e sentidos diferentes. As placas são ladrilhos 3D grossos com o ícone e o nome impressos na face, que viram de leve com o movimento para mostrar a espessura. Na primeira vez, o pedestal sobe, o símbolo assenta e as placas voltam às órbitas num "reload" de até 1,4 s. Com o mouse em cima, a órbita acelera até 5×, a cena inclina e a placa sob o mouse sobe. Sem WebGL ou sem JavaScript, fica a mesma órbita feita em CSS.

  • No centro: o símbolo da Reload, azul, num círculo branco. Sem texto nem número.
  • Nos anéis: só benefícios reais, em placas azuis ou pretas com raio pequeno e ícone de traço branco. Anel de fora: Vagas, Recrutadores, Descontos em eventos. Do meio: Networking, Mentorias, Discussões. De dentro: Descontos em cursos, Grupos de estudo.
  • Sempre com nome: cada placa leva o nome do benefício embaixo, numa pílula branca.
  • Sempre em pé: placas e nomes viajam pelo anel sem girar junto.
  • Nunca: fotos de pessoas, números inventados ou logos de empresa sem autorização. Rostos ficam no hero, ao lado do número de membros, e em "Quem está por trás".
  • Movimento reduzido: com prefers-reduced-motion: reduce, a cena 3D não carrega e a órbita em CSS fica parada.

Fotos: retratos reais em preto e branco, recortados com raio grande, sobre placas pretas ou azuis levemente inclinadas. O símbolo branco pode pousar sobre a foto como selo.

Os dois blocos do "R" podem aparecer grandes e recortados pela borda. Nunca deforme o desenho do símbolo.

Rodrigo BranasCTO na Gennera · fundador da branas.io
Pedro Nauckcriador do Compozy e do Docz
Diogo Morettidev há mais de 20 anos · DevRel

Quem está por trás: na home, três cards brancos lado a lado, com tudo visível de uma vez (sem abas): retrato grande em P&B sobre uma placa inclinada azul ou preta, com o símbolo branco num selo no canto (sem efeito de hover na foto), nome em Plus Jakarta Sans 400 com tracking fechado, cargo em cinza, um resumo real da carreira e os links como botões de ícone das redes. Rostos de verdade, sem pôster nem número de episódio.

Dê um reload.

Faixas azuis com pontos: grade de 18 px no CTA final, em Vagas e na entrada da plataforma. Os pontos brancos próximos ao mouse crescem e ficam mais opacos; movimentos rápidos e cliques os empurram, com retorno suave. Os pontos internos e da borda do R também reagem e voltam à posição, ao tamanho e à opacidade originais; em repouso, o símbolo mantém suas proporções e círculos inteiros. O redesenho F5 acontece uma única vez no CTA final. Sem JavaScript, com movimento reduzido ou em telas de toque, o padrão fica estático. A animação para ao estabilizar, fora da tela ou com a aba oculta. Sem brilho nem novas cores. Sobre o azul, o botão inverte (fundo branco, texto azul).

07forma.css

Forma

Cantos arredondados, nada de sombra decorativa. A profundidade vem de placas sólidas e do contraste entre seções.

8 px · --rl-radius-sm · selos

12 px · --rl-radius-md · botões, inputs

20 px · --rl-radius-lg · cards, fotos, painéis

32 px · rounded-hero · card do hero

botões · sobre branco
Fazer parteheader · 44 px
botões · sobre preto
foco visível
Fazer parteVer benefícios

Outline de 2 px azul com 3 px de afastamento. Sobre faixas azuis, o outline fica branco.

  • LarguraConteúdo e header em wrap (max-width: 1360px, respiro lateral de até 40 px). O card do hero usa wrap-wide (até 1440 px), um pouco mais largo que o header. Parágrafos em ~60ch, FAQ em ~880 px.
  • HeaderFundo branco, logo à esquerda com 22 px de altura, menu centralizado com uma entrada por seção da home (Benefícios, Por que a Reload, Recrutadores, Quem somos, Preço, FAQ) e, depois de Recrutadores, "Vagas" (/vagas), a primeira que leva a outra página, azul quando é a página atual; espaçamento simples, sem separadores, e o botão azul "Fazer parte" à direita. No celular, o menu vira um botão.
  • CTATodo botão de membro é "Fazer parte" e leva a /entrar?como=membro&plano=anual|mensal na plataforma, com a origem da visita: no header, no hero e nos benefícios (Anual), "Fazer parte →" no passe de membro (o plano do seletor) e no CTA final ("Dê um reload."). Nunca "assinar" nem "assinatura" no site.
  • Ordem da homeHero com órbita → frase → Benefícios → Por que a Reload → Para recrutadores → Quem está por trás → Plano → FAQ → CTA final.
  • HeroCard Azul 50 com raio de 32 px, logo abaixo do header: eyebrow "Ecossistema de devs", o headline "Sua carreira não precisa de mais conteúdo." em text-display, o texto "Devs de verdade trocando experiência de verdade, com curadoria. Mentorias com quem já está onde você quer chegar e um ecossistema que continua a conversa no Discord, com menos ruído e mais vivência.", um botão só ("Fazer parte") e, embaixo, os avatares com "Junte-se a mais de 2 mil devs que já fazem parte do ecossistema." A órbita de benefícios fica ao lado.
  • FraseLogo abaixo do hero, centralizada: "Quem já chegou lá, quem está a caminho e curadoria em tudo que acontece."
  • BenefíciosLogo depois da frase, é o destaque da página: faixa preta de ponta a ponta, eyebrow "Benefícios que vão além", título "O que muda na sua carreira quando você entra." com destaque em Azul 300, cards Cinza 900 com ícone de traço Azul 300 numa placa azul translúcida, título branco e texto Cinza 400, e o botão azul "Fazer parte".
  • PlanoSeção Cinza 50, título "Doze meses pelo preço de dez." e o passe de membro: faixa azul com o símbolo, corpo branco com o seletor Anual/Mensal (grupo de rádio, Anual ao carregar, "2 meses grátis" no Anual), campos em DM Mono, odômetro de quatro rolos com a vírgula fixa e canhoto preto com o botão "Fazer parte →". Anual: "12x de R$ 41,58" sempre com "total R$ 499,00 · última parcela R$ 41,62"; Mensal: "R$ 49,90 /mês" com "cancele quando quiser". "Sem fidelidade" só no Mensal; Pix só "à vista".
  • BotõesAltura mínima 48 px (44 px no header), Plus Jakarta Sans 600, raio 12 px. Primário azul com texto branco; secundário com borda 1.5px preta (branca sobre azul ou preto).
  • SombrasNenhuma decorativa. Profundidade vem de placas sólidas.
  • MovimentoEntrada com desfoque e crescimento: opacidade em 600 ms, blur de 4 px a 0 em 560 ms, translate de 20 px e scale de 0,92 a 1 em 900 ms, com cubic-bezier(0.22, 1, 0.36, 1) e escalonamento de 50 a 70 ms entre itens. O card do plano entra só com blur, em 1 s. Logo e menu não têm entrada; a órbita tem a própria (o "reload" das placas). Com prefers-reduced-motion: reduce, tudo aparece parado.
08voz.md

Voz e tom

A Reload fala como um dev sênior gente boa conversando no café: direto, técnico quando precisa, com humor seco e sem arrogância. Usa "você", frases curtas e termos que devs usam de verdade.

AtributoSomosNão somos
diretaSomos: "Quem já passou por isso responde. Traga sua dúvida."Não somos: "Uma jornada transformadora de desenvolvimento profissional."
técnicaSomos: Referências a git, deploy e cache, quando fazem sentido.Não somos: Piada interna forçada em toda frase.
parceiraSomos: "Todo sênior já foi júnior. Pergunta."Não somos: "Se você não está em big tech, está ficando para trás."
honestaSomos: Fala do que o ecossistema oferece de fato.Não somos: Promete salário, vaga ou promoção garantida.

Faça

  • Escreva como se estivesse falando com um colega de time.
  • Use termos em inglês que devs usam (deploy, code review, staff), sem traduzir à força.
  • Nomeie mentores e empresas só com permissão; sem permissão, use campos entre colchetes ([Nome do mentor], [Empresa]).
  • Termine chamadas com uma ação clara: "Fazer parte", "Quero fazer parte →". Nunca "assinar" nem "assinatura".

Evite

  • Jargão de coach: "mindset", "desbloquear seu potencial".
  • Gatilhos de escassez falsos e contadores inventados.
  • Excesso de emoji. Prefira os símbolos do terminal (✓ ▸ ●).
  • Diminuir quem está começando.
vocabulário da marca
reloadVerbo da marca. "Dê um reload", "reloadar a carreira".
membroQuem faz parte. Nunca "aluno" nem "cliente". Evite também "formação", "trilha" e "módulo".
ecossistemaComo a Reload se apresenta: mentorias, Discord com curadoria, grupos de estudo, eventos, descontos e recrutadores juntos. "Comunidade" fica para falar de outras comunidades ("comunidade aberta").
mentorQuem conduz as mentorias: gente que já chegou lá, em empresas de tecnologia de sucesso.
mentoriaConversa com quem já está onde você quer chegar, com espaço para perguntas. Nunca prometa frequência ("toda semana", "semanal").
recruiterQuem recruta e entra de graça no ecossistema. Use "recruiter", neutro em gênero.
cacheMetáfora para estagnação: "carreira em cache".
checkpointMarco de evolução na carreira.
curadoriaConvidados, conteúdos indicados, opiniões e informações escolhidos com cuidado antes de circular. Menos ruído e achismo, mais experiência real.
fazer parteA ação da marca, em todo CTA do site: "Fazer parte", "Fazer parte →", levando ao cadastro na plataforma com o plano. Nunca "assinar" no site; na plataforma, os botões de compra dizem "Assinar anual" e "Assinar mensal".
de verdadeGente de verdade, experiência de verdade: pessoas reais, com nome e trajetória.
09aplicacoes/

Aplicações

Modelos para as peças mais frequentes. Os textos entre colchetes são campos a preencher; nomes, empresas e títulos de mentoria entram só quando forem reais e autorizados.

topo da home · header, hero, frase e benefícios
Reload
Mentoria

[Título da mentoria]

com Rodrigo BranasCTO na Gennera · fundador da branas.io

Thumbnail de mentoria · 1280 × 720 · nível 2kit/yt-thumb ↗
Carreira em cachereload.dev

Sua carreira não precisa de mais conteúdo.

Reload
Post de frase · 1080 × 1350 · nível 2kit/ig-post-claim ↗

capa de mentoria e post de frase · modelos do kit, com a arte da trama

Avatar e favicon

Só o símbolo ou o ícone de app, nunca o logo completo.

Avatar azulAvatar preto, recorte redondoFaviconredes · discord · favicon

Rodapé de e-mail

[Seu nome][Cargo] · Reload
reload.dev
10plataforma.css

Plataforma, no claro e no escuro

O site tem um tema só. A plataforma, onde o membro passa o dia, tem densidade de app e dois temas, claro e escuro, feitos só com os tokens da marca. A profundidade vem de degraus de preenchimento e de espaço, nunca de borda ou sombra.

Claro · ilustração com os valores reais de @reload/ui
Escuro · ilustração com os valores reais de @reload/ui

Escada do escuro

Cinzas neutros, misturados do branco e do preto da marca (a porcentagem é o próprio hex), sem o azulado dos Cinzas 800 e 900. Cada superfície fica um degrau acima da que a contém. Texto secundário é branco 62 % (#9E9E9E) e a linha entre itens, branco 7 %.

moldurapreto#000000--framebranco 21,0 · 62 % 7,8Azul 300 7,8
páginabranco 7 %#121212--backgroundbranco 18,7 · 62 % 7,0Azul 300 6,9
cardbranco 11 %#1C1C1C--cardbranco 17,0 · 62 % 6,4Azul 300 6,3
popoverbranco 13 %#212121--popoverbranco 16,1 · 62 % 6,0Azul 300 5,9
mutedbranco 15 %#262626--mutedbranco 15,1 · 62 % 5,6Azul 300 5,6
controlebranco 19 %#303030--controlbranco 13,2 · 62 % 4,9Azul 300 4,9

Escada do claro

A mesma escada, com os cards subindo para o branco: a página é Cinza 50, a moldura em volta dela um degrau mais funda e o bloco dentro de um card desce de novo para o cinza. Cerca de 1,1 : 1 entre degraus, como no escuro. Texto secundário continua Cinza 500, com 4,9 : 1 ou mais em todos.

DegrauAmostraReceitaHexPreto · Cinza 500 · Azul
moldura--frameAaCinza 50 + 70 % Cinza 200#E8EAEE17,4 · 4,9 · 4,6
página--backgroundAaCinza 50#F5F6F819,4 · 5,5 · 5,1
card, popover--cardAabranco#FFFFFF21,0 · 5,9 · 5,6
muted--mutedAaCinza 50 + 30 % Cinza 200#EFF1F418,6 · 5,3 · 4,9
chip--chipAaCinza 50 + 70 % Cinza 200#E8EAEE17,4 · 4,9 · 4,6
controle--controlAaCinza 50 no card, branco na página e no muted——

Cores de status

Só na plataforma, para dizer o estado de algo. O tom base vai no claro e o -300 no escuro, na mesma luminosidade do azul, para não competir com ele. Avisos e erros são uma superfície tingida (10 % no claro, 20 % no escuro) com ícone na cor; o texto na cor passa de 4,5 : 1 sobre a própria tinta, a página, o card e o controle.

StatusUsoClaroEscuroTom sobre a tinta
Vermelho--rl-red · --rl-red-300Erro, campo inválido, ação destrutivaRejeitada#B51D1CRejeitada#FFA69B5,6 · 5,9
Verde--rl-green · --rl-green-300Sucesso: aprovada, ativa, entregueAprovada#16713AAprovada#5FD68A5,3 · 6,0
Âmbar--rl-amber · --rl-amber-300Aviso: ajustes pedidos, suspensa, incertaAjustes pedidos#9A4D0FAjustes pedidos#F6AE6A5,3 · 5,9
Azul--rl-blue · --rl-blue-300InformaçãoEm revisão#0056FFEm revisão#6B9BFF4,8 · 4,5
controles e selos

Selos Azul 50 ficam sobre cards brancos (1,13 : 1 do card, glifo azul a 4,9 : 1); no escuro, branco sobre azul, 5,6 : 1. No escuro, campo e checkbox ficam a ~1,3 : 1 do card: o estado é lido pelo azul do marcado, pelo rótulo e pelo foco.

  • Onde valeNas telas de quem faz parte (início, vagas, membros, perfil, admin), feitas com @reload/ui. O site e este manual continuam claros, com um tema só, sem botão de tema.
  • Dois temasClaro e escuro, escolhidos pelo membro no menu do próprio nome (começa seguindo o sistema). O escuro é a classe .dark no <html>; a moldura segue o tema do conteúdo.
  • DensidadeDensidade de app (ADR-002): texto 15/1.6, h1 32, h2 24, botão grande com 40 px (36 px dentro de tabelas), contagens em DM Mono. O raio acompanha o tamanho da peça: 3 px em blocos de medidor e marcas de gráfico, 6 px em selos e deltas, 10 px em botões, campos e ícones, 14 px em poços, menus e blocos dentro do card, 20 px em cards e diálogos; o aninhado usa o raio de fora menos o padding.
  • Sem bordasA hierarquia vem do preenchimento e do espaço: cada superfície fica um degrau fora da que a contém (no claro, o card sobe para o branco) e irmãos se separam por 16 a 24 px (40 a 56 px entre seções). Linha fina só entre linhas de tabela ou lista (Cinza 200 no claro, branco 7 % no escuro), no foco, nos selos de contorno (em análise, recruiter) e nos campos de texto no claro.
  • Controles cheiosCampos, select, checkbox, radio, switch e chips são preenchidos um degrau fora do container (--control): no claro, Cinza 50 dentro do card e branco sobre a página; no escuro, um degrau acima. No escuro, sem contorno: o preenchimento é o campo. Marcado é azul cheio; o botão outline do escuro vira preenchimento.
  • Selos de íconeÍcone de traço num quadrado de 8 px de raio (--seal): Azul 50 com glifo azul no claro, sempre sobre card branco; azul sólido com glifo branco no escuro.
  • FocoAnel de 2 px: azul no claro, Azul 300 no escuro. Link pequeno no escuro também é Azul 300.
  • SeleçãoSelecionado e hover são preenchimento, nunca anel ou contorno: no shell claro, o item ativo é branco sobre a moldura; no escuro, um degrau acima.
  • Sem efeitosNenhuma sombra, nem vidro: diálogos abrem sobre um véu preto chapado (32 % no claro, 60 % no escuro), sem desfoque, e menus são sólidos no degrau popover.
  • DadosContagens, metas e tempos usam o vocabulário de dados (abaixo): rampa azul para quantidade, hachura para o que ainda não conta, tracejado para pendente e comparação. Ali o tracejado e a linha fina entram porque querem dizer algo, sem virar borda de superfície.
  • Cores de statusSó para estado: vermelho em erro, campo inválido e ação destrutiva (sempre com confirmação), verde em sucesso, âmbar em aviso; informação é azul. Nunca como decoração e nunca sozinha: todo estado tem ícone ou rótulo. O site não tem cores de status.

Vocabulário de dados

A plataforma mostra contagens, metas, filas e tempos. O dado lê antes do texto: um azul só, em rampa, para quantidade; cinza para o resto; hachura para o que ainda não conta e tracejado para o que está pendente. Tudo vem dos tokens da marca, nos dois temas. As peças ficam em @reload/ui e o protótipo dados mostra cada uma.

o que cada traço quer dizer
  • Rampa azulQuantidade, do fraco ao forte (--data-1 a --data-5). O mais forte é a série em destaque; o resto é marca neutra. Partes de um todo descem a rampa e terminam no cinza.
  • HachuraO que ainda não conta: folga da escala, projeção, período anterior, valor desconhecido. Nunca decoração.
  • TracejadoContorno tracejado é pendente, rascunho, vazio ou "+ Adicionar"; linha tracejada é comparação (período anterior, projeção, média, meta).
  • NúmerosDM Mono; moeda e unidade em Jakarta, metade do tamanho, em texto secundário. Todo desenho imprime o número real ao lado.
  • DeltaSelo com seta e sinal: verde quando o movimento é bom, vermelho quando é ruim (invertido em custo, espera e reembolso), neutro quando a direção não julga nada.
  • PainelMoldura com título, descrição com " · " e ação; o dado fica num poço (branco no claro, branco 8 % no escuro); uma linha de leitura fecha com os números-chave.
11tokens.css

Tokens para desenvolvimento

Copie direto para o projeto. É o conteúdo de /assets/brand/tokens.css (no repositório, public/assets/brand/tokens.css), com um tema só. No site, os mesmos valores viram o tema do Tailwind em src/styles/global.css; na plataforma, os temas claro e escuro de @reload/ui são feitos só com eles.

/* reload.dev · design tokens v2.9.0 */
:root {
  /* colors · brand */
  --rl-blue: #0056ff; /* primary: brand, actions, links */
  --rl-black: #000000; /* secondary: text, dark sections */
  --rl-white: #ffffff; /* main background, text on blue and black */

  /* colors · supporting */
  --rl-blue-50: #ebf1ff; /* section background, seals */
  --rl-blue-300: #6b9bff; /* blue for small text on black */
  --rl-blue-hover: #0047d6; /* blue button hover */
  --rl-gray-50: #f5f6f8; /* alternating section background */
  --rl-gray-200: #e2e5ea; /* borders and dividers in light mode */
  --rl-gray-400: #a3a9b4; /* secondary text on black */
  --rl-gray-500: #5e6470; /* secondary text, captions */
  --rl-gray-700: #3a3f48; /* text on light gray when black is too heavy */
  --rl-gray-800: #2a2d33; /* borders on black */
  --rl-gray-900: #16181d; /* panels on black */

  /* colors · status (platform states only; the site stays blue, black and white) */
  --rl-red: #b51d1c; /* error and destructive on light */
  --rl-red-300: #ffa69b; /* error and destructive on dark */
  --rl-green: #16713a; /* success on light */
  --rl-green-300: #5fd68a; /* success on dark */
  --rl-amber: #9a4d0f; /* warning on light */
  --rl-amber-300: #f6ae6a; /* warning on dark */

  /* typography */
  --rl-font-display: "Plus Jakarta Sans", system-ui, sans-serif;
  --rl-font-body: "Plus Jakarta Sans", system-ui, sans-serif;
  --rl-font-mono:
    "DM Mono", ui-monospace, monospace; /* numbers and eyebrows only, never headings */

  /* shape */
  --rl-radius-sm: 8px;
  --rl-radius-md: 12px;
  --rl-radius-lg: 20px;

  /*
   * platform radius scale: the radius follows the size of the shape, so small pieces stay crisp
   * and a nested surface keeps its parent's curve (inner = outer − padding). The site keeps 8/12/20.
   */
  --rl-radius-tick: 3px; /* meter ticks, swatches, chart marks, heat cells */
  --rl-radius-chip: 6px; /* badges, deltas, kbd, small chips (≤ 28 px tall) */
  --rl-radius-control: 10px; /* buttons, inputs, icon tiles, toggles, list rows */
  --rl-radius-inner: 14px; /* wells, menus, popovers, blocks nested in a card */
}