Tokens
Cabeçalho — seed-tokens.md
Em uma frase: Os três arquivos (md, json, css) são UMA unidade: mexer em um exige mexer nos três, e o cabeçalho diz a versão vigente.
Vocabulário desta seção: gêmeos
⚠ ERRATA DE CABEÇALHO, declarada em 2026-08-20. Esta linha dizia v1.17 enquanto os gêmeos (
seed-tokens.json+seed-tokens.css) já estavam em v1.19 — o cabeçalho do CSS até registra a defasagem por escrito ("este cabecalho dizia v1.17 depois de a v1.18 ter nascido"), mas a correção nunca chegou aqui. Três versões de atraso num H1 de arquivo canônico. Corrigido junto com a v1.20, que nasce--seed-font-expressive. Por que isso vale registro e não só conserto: número de versão em cabeçalho é a primeira coisa que alguém lê para decidir se o arquivo está atual. Cabeçalho atrasado faz um documento correto parecer velho — e um documento velho parecer correto.
Arquivo canônico da camada de tokens. Primeira entrega (Fase 1) do rebranding do design system SEED iniciado em julho/2026. Este documento é a fonte de verdade conceitual; os valores executáveis vivem em dois arquivos gêmeos gerados juntos:
seed-tokens.json(formato DTCG/W3C, para ferramentas e agentes) eseed-tokens.css(CSS custom properties, para web). Os três arquivos formam uma unidade: alterar um exige alterar os três.Quem consome: o site público do DS (Lovable), o SIGA (Sistema Integrado de Gestão Assistida), o sistema de chat, o site institucional, as skills
seed-ds-*do Claude, e qualquer sistema futuro. Componentes e peças NUNCA usam hex direto: consomem tokens semânticos; tokens semânticos consomem primitivos.Contexto para leitor novo: a SEED engenharia é um HUB de engenharia elétrica (ES/MG/BA, desde 2016). A paleta de marca (8 cores, definida no rebrand de 2018 e mantida) não mudou neste trabalho — o que este arquivo faz é transformá-la de "lista de 8 hex" em sistema de 3 camadas capaz de servir produto digital, dark mode, dataviz e acessibilidade WCAG 2.2 AA. Identidade visual geral:
marca-seed.md(v5.0 em produção). Institucional:sobreaseed.md.Data: 2026-07-30 · Editado: 2026-10-28 (v1.40 —
CT-P28, folha 13, P4 = a:--seed-field-border-errorpassa a valer a cor do texto de erro (--seed-field-error-text): vermelho-700#A5272Ano claro, vermelho-300#FF9C95no escuro; era vermelho-600#C6393B/ vermelho-400#FC6F6A; nenhum hex novo) · (v1.39 —SH-P62, folha 11, SH62a..e (MANIFESTO §320): nascem três tokens do painel lateral à direita —--seed-side-panel-width420 px,--seed-side-panel-width-min320 px e--seed-side-panel-content-min640 px (§3f); adição pura, nenhum valor anterior muda) · (v1.38 —PR-P177, MANIFESTO §319: a frase de sombras do §2.8 passa a dizer o que os tokens emitem — tintada no cinza-900 no claro, preto com opacidade no escuro; nenhum valor muda; folha 12 P177 = "a") · (v1.37 — leva 43, MANIFESTO §316: MA13/MA14 do material —--seed-mat-glass-alpha-midia82 % claro / 92 % escuro, véu da mídia 35 % no escuro, topo do vidro +10 pontos; folha 11 MA2 = "a") · (v1.36 —PR-P152= b (folha 2 de 2026-10-10, F2 = b): nascem--seed-toast-bg#00352Fe--seed-toast-text#FFFFFF, invariantes de tema, para o aviso.toastdas quatro telas que o pintavam com valor solto (§3e); mesmos valores, nada muda na tela. Anterior: v1.35 (2026-09-30) —TK-P9= C eMR-C= B, respostas dele: nasce o primitivo--seed-preto#000000(§2.1-b) e ofont.letterSpacing.normalganha a descrição "0 px = o espaçamento padrão; sem variável no CSS de propósito". Os gêmeos sobem de v1.30 para v1.35 (o número que segue o último medido deste arquivo, 1.34). Adição pura, nenhum valor muda. Anterior: v1.34 (2026-09-27) — o corpo passa a documentar os 39 tokens do retrofit da v1.14 (RV1–RV10): os seis papéis tipográficos--seed-txt-*no §2.5; a escala de raio em passo 2, os meios-passos de espaço e a altura de controle no §2.6 (TK-P6). Nenhum valor muda. Anterior: v1.33 (2026-09-27) — as oito versões que faltavam no §9 (1.13 a 1.20) entram reconstituídas, com a fonte de cada uma, e esta linha volta a dizer a versão viva (REV-P29). As versões v1.23 a v1.32 estão só no §9: esta linha ficou parada na v1.22 enquanto elas nasciam. Anterior: v1.22 (2026-08-25) — a SEGUNDA leva da camada 3 entra nos gêmeos, e a classe ganha INSTRUMENTO: 19 tokens de botão, cartão, divisor, lista, item destrutivo de menu e espera, todos nomes que oseed-componentes.mdjá usava e o gêmeo não definia. A diferença de método em relação à v1.21 é que a lacuna deixou de ser procurada porgrepe passou a ser medida pela guardaguarda-spec-gemeo.py(contrato SG1), que varre os canônicos e reprova todo custom property nomeado no canon e ausente do gêmeo — placar dela: 121 PASS · 29 FAIL → 140 PASS · 10 FAIL. Dos 29 acusados, 19 tinham origem de valor declarada e foram emitidos; 10 não se emite, e a lista com o motivo de cada um está na entrada v1.22 do §9 — inclusive três nomes que o canon cita apenas para registrar um defeito, um descarte ou um exemplo de diagrama. Anterior: v1.21 — nasce a PRIMEIRA CAMADA 3 (componente) dos gêmeos, fechando a AD-P6: os 21 tokens--seed-field-*do form-field, especificados e medidos na §2.5 doseed-componentes.mddesde 2026-08-02 e até hoje ausentes dos gêmeos — a spec citavaseed-field-116 vezes, os gêmeos tinham ZERO, e o ERP consome exatamente essa camada. Adição pura (nenhum valor anterior muda), hex resolvido dos aliases da §2.5, gate G5 novo naparidade-tokens.py(fidelidade alias→valor + espelhoprefers-color-schemeconferido pela primeira vez); placar 85·0. Detalhe na fronteira do §6; v1.17 — a MARCA QUE CARREGA TEXTO desce um degrau: o gate visual do Rafael vetou a tinta escura sobre a marca e pediu texto branco; com o branco fixado, a superfície passa a ser turquesa-600#098475(4,60) e nascemsurface-brand-strongetext-on-brand-strong— estado vigente no §5-d, que supersede metade do §5-b. A marca chapada#11B0A0segue a âncora, reservada para área sem texto; v1.16 — a TINTA DO BOTÃO DESTRUTIVO, que fecha a AD-P1: o destrutivo clareia no tema escuro e a tinta continuava branca, medindo 2,71→2,76 contra piso 4,50; nascetext-on-action-destructive, branca no claro e vermelho-900 no escuro, com o RITO de três rodadas registrado no §5-c; v1.15 — as TRÊS TINTAS DE MARCA, que fecham a MR-P1 e a MR-P2: um único token de tinta servia três fundos de marca com necessidades opostas e errava dois deles, um em cada tema; agora sãotext-on-brand(escura, sobre a marca chapada),text-on-brand-deep(branca) etext-on-action-primary(inverte) — estado vigente no §5-b, com errata dupla no §5; v1.14 —surface-brand-subtle, que fechou o BT-P6 na causa, mais a primeira errata do "3,22"; v1.13 —row-selected-*: o realce de linha selecionada ganha dono no canônico, fechando uma lacuna que a bancadabanco-dados.htmljá vivia com definição local; adição pura, três tokens, quatro guardas novas na paridade; v1.12 —border-interactivefecha a SH-P1/PN-P5, promoção medida do empréstimo declarado do shell; v1.11 — semânticos de COMPOSIÇÃO E CHROME do CP-P3:rail-backgroundgradiente CP20, dois overlays de chrome do SUP-6, paleta de entidadeentity-1…6+tinta do CP23 emarker-nowdo CP24 — todos invariantes de tema, todos medidos, inclusive em composição; histórico completo no §9, com a restauração retroativa das entradas v1.7–v1.10 que faltavam na tabela) · Autoria: Claude + Rafael (decisões aprovadas em conversa de projeto)Estado:
estável— decisão sobre o arquivo inteiro.