Portal Solar · Documento de Execução

Plano de Design Final

O que está errado, por quê, e como consertar em ordem de prioridade.

Diagnóstico — O que está quebrado

01

Sem sistema tipográfico

Tamanhos, pesos e famílias de fontes variam arbitrariamente entre páginas. Não existe escala definida (h1→h6, body, caption, mono).

02

Hierarquia visual inconsistente

Elementos importantes não se destacam dos secundários. Tudo parece ter o mesmo peso visual, gerando fadiga de leitura.

03

Espaçamentos não sistematizados

Cada componente usa values ad hoc (px-3, px-6, px-7, px-8). Sem um grid de 4px ou 8px base, o layout parece 'tremido'.

04

Contraste baixo em texto secundário

Opacidades como /0.35, /0.3 tornam texto ilegível. Contraste mínimo WCAG AA é 4.5:1 para texto normal.

05

Interatividade não sinalizada

Usuário não sabe o que é clicável. Botões misturam-se com texto estático. Sem hover states consistentes.

06

Cards sem identidade visual

Cards de Atlas, Cultura e Compass parecem feitos por pessoas diferentes. Sem padrão de imagem, título, meta, ação.

07

Navegação fragmentada

3 sistemas de nav (top, bottom, overlay) com comportamentos diferentes. Usuário perde-se entre Atlas, Compass e portais.

08

Ausência de grid de layout

Conteúdo ora vai edge-to-edge, ora tem max-w, ora tem padding variável. Nada se alinha visualmente.

Execução — Ordem de prioridade

01

Escolher a direção no Atelier

Acesse /atelier, navegue pelas 24 opções, selecione uma. Copie o token gerado.

→ /atelier
02

Aplicar o token de design

Cole o token em atlas/lib/design-token.ts. Execute o script de conversão que transforma o token em CSS variables no globals.css.

→ npm run apply-style
03

Definir escala tipográfica

6 níveis: display (2.5rem), h1 (1.8rem), h2 (1.3rem), h3 (1rem), body (0.875rem), caption (0.75rem). Aplicar como classes Tailwind ou CSS variables.

→ tailwind.config.ts
04

Grid de 8px base

Todos os espaçamentos devem ser múltiplos de 8 (ou 4 para micro-ajustes). Remover todos os valores arbitrários e padronizar.

→ globals.css
05

Padronizar o card

Um único componente AtlasCard que funciona em todos os contextos: galeria, lista, horizontal, home. Props: size (sm/md/lg), variant (default/featured).

→ atlas/components/ui/Card.tsx
06

Corrigir contraste

Nenhum texto informativo abaixo de 60% de opacidade. Títulos: 90%+. Labels: 70%+. Muted: 55%+ (mínimo). Eliminar /0.3, /0.35.

→ busca global por '/ 0.3'
07

Sistema de interatividade

Todo elemento clicável: border ou underline no hover. Cursor pointer. Transição 150ms. Nada mais, nada menos.

→ globals.css :hover rules
08

Revisar página por página

Atlas → Academia → Cultura → Compass → Display. Cada página deve usar os mesmos tokens, nenhum valor hardcoded.

→ audit checklist

Regras de Ouro — Não quebre estas

Um card, uma regra

AtlasCard é o único card do sistema. Não crie variantes arbitrárias.

Texto sempre legível

Nenhum texto informativo abaixo de 55% de opacidade.

Grid de 8px

Todos os espaçamentos: múltiplos de 8. Sem valores arbitrários.

Hover sempre visível

Todo elemento interativo tem feedback visual no hover.

Três fontes apenas

Head, body, mono — só essas. Sem importações extras.

Cores via token

Nenhuma cor hardcoded nos componentes. Apenas CSS variables.