01

Paleta de Cor

A paleta da NodeGrid nasce do logótipo: forest green escuro como fundo, sage green como accent primário, gold para CTA de alta conversão. Nunca usa primitivos directamente — usa sempre tokens semânticos.

Green Scale — extraído do logótipo
green-200
#a0b891
green-300
#72b872
green-400
#4a9a4a
green-500
#2a5a2a
green-600
#1a3d1a
green-700
#0b1e0b
green-800
#0d140d
green-850
#111811
green-900
#070e07
Gold Scale — CTA only
gold-200
#fef3c7
gold-300
#f8e090
gold-400
#f0d474
gold-500
#c8a840
gold-900
#0c0c0c
Neutral Scale
neutral-0
#ffffff
neutral-100
#dcdcdc
neutral-200
#b8b8b8
neutral-400
#787878
neutral-600
#404040
neutral-750
#222c22
neutral-800
#1a221a

Tokens semânticos de background e texto mais usados:

--bg-base
Fundo principal da aplicação
--bg-surface
Cards e superfícies elevadas
--accent-primary
Verde principal, links, ícones activos
--cta-bg
Fundo do botão CTA primário (gold)
--text-primary
Texto principal, headings
--text-muted
Texto secundário, descrições
--status-success
Estados positivos, confirmações
--status-error
Erros e estados críticos
02

Tipografia

Três famílias com funções distintas e não permutáveis. Cada uma tem um papel definido no sistema — misturá-las arbitrariamente quebra a hierarquia visual.

Space Grotesk
--font-display — Headings
Specimen
NodeGrid
Craft & Architecture
Software que envelhece com dignidade.
Uso

Todos os headings (h1–h3), display text, hero headlines, card titles. Usa sempre letter-spacing: -0.02em a -0.03em para efeito editorial. Google Fonts: pesos 400, 500, 600, 700.

Inter
--font-body — Body & UI
Specimen
Construímos software como ofício. Cada linha de código é uma decisão que respeita quem a vai usar.
Texto de apoio, descrições, captions e elementos de UI como labels de formulário.
Uso

Body text, parágrafos, descrições de cards, UI labels, nav links. Tamanho base: 14px (--text-base). Line-height: 1.6 para prosa, 1.25 para UI.

JetBrains Mono
--font-mono — Code & Technical
Specimen
NODEGRID · v1.0 · BRAND SYSTEM
--accent-primary: #72b872
--text-base: 14px
Uso

Section tags, badges, code snippets, token names, labels técnicos, metadata, valores numéricos em dashboards. Sempre em uppercase para identificadores, lowercase para código.

Escala tipográfica:

--text-5xl clamp 40-72px Hero
--text-3xl clamp 22-36px Section Title
--text-xl 20px Card Title
--text-base 14px Body text para UI e prosa
--text-sm 13px Texto secundário, captions, notas de rodapé
--text-xs 11px LABELS TÉCNICOS · BADGES · TAGS
03

Espaçamento

Escala de 4px com tokens nomeados por unidades (--s1 = 4px, --s2 = 8px, etc.). Usa sempre tokens — nunca valores hardcoded. Isto garante consistência e facilita ajustes globais.

--s1
4px
--s2
8px
--s3
12px
--s4
16px
--s5
20px
--s6
24px
--s8
32px
--s10
40px
--s12
48px
--s16
64px
--s20
80px
--s24
96px
--s32
128px
04

Motion & Easing

Motion discreto e com propósito. As durações base (100–300ms) cobrem 90% dos casos de UI. Spring e bounce são reservados para momentos de delight específicos. Clica em cada linha para pré-visualizar.

--duration-fast
100ms
--duration-base
180ms
--duration-slow
300ms
--duration-slower
500ms
--ease-spring
spring
--ease-bounce
bounce
--ease-out
ease-out
05

Referência Completa de Tokens

Todos os tokens disponíveis em nodegrid-brand/css/tokens.css. Usa sempre tokens de Tier 2 (semânticos) nos componentes. Tier 1 (primitivos) são apenas para criar tokens semânticos.

Token Valor Tier Uso
--bg-base→ green-900T2Fundo principal da app
--bg-surface→ green-800T2Cards, panels
--bg-surface-raised→ green-850T2Inputs, dropdowns
--bg-overlay→ green-700T2Overlays, tooltips
--accent-primary→ green-300T2Cor accent principal
--accent-dim→ green-500T2Accent dimmed, bordas
--cta-bg→ gold-400T2Fundo CTA primário
--cta-bg-hover→ gold-300T2Hover do CTA
--text-primary→ neutral-100T2Texto principal
--text-muted→ neutral-400T2Texto secundário
--text-disabled→ neutral-600T2Texto desactivado
--border-subtle→ neutral-800T2Bordas subtis
--border-default→ neutral-750T2Bordas default
--border-interactive→ green-500T2Bordas em foco/hover
--status-error→ red-400T2Estado de erro
--status-warning→ amber-400T2Estado de aviso
--status-success→ emerald-400T2Estado de sucesso
--btn-primary-bg→ cta-bgT3Botão primário fundo
--card-bg→ bg-surfaceT3Card background
--input-bg→ bg-surface-raisedT3Input background
--badge-bgrgba(114,184,114,.08)T3Badge/tag background