# Design System — METADAX v2.0

> **Status:** Evolução do Design System v1 (institucional). Nada do que já funciona foi removido — este documento **estende** o sistema atual com tema escuro prioritário, paleta tecnológica com acento vermelho, tipografia Vercel (Geist) e JetBrains Mono para produtos/dashboards/valores financeiros, cores semânticas, de transação e de trading, geometria de botão retangular para produto, o componente de assinatura AI Timeline, diretrizes de code block, sistema completo de formulários, diretrizes de usabilidade mobile-first, política de anúncios, biblioteca de padrões de página (hero/about/features/documentation) e componentes prontos (header/footer/loader) já publicados no CDN.
>
> **O que muda em relação ao v1:** nada é quebrado. O Azul METADAX (`#0056B3`) continua sendo a cor institucional primária (está registrada — INPI nº 850250075442). O que muda é a **camada tecnológica**: um novo acento vermelho/coral para produtos, dashboards e destaques de inovação, tema escuro como padrão de exibição, e uma tipografia de produto (Geist, da Vercel) para telas densas em dados — como o `metadaxerp`.

---

## 0. Sumário

1. Filosofia & Direção Visual v2
2. Paleta de Cores Completa (institucional, tecnológica, semântica, transações, trading)
3. Temas — Dark (padrão) e Light — tokens CSS
4. Tipografia — Audiowide, Inter, Geist e JetBrains Mono
5. Estilização de Componentes (botões retangulares, badges, AI Timeline, code block, formulários)
6. Header & Footer — Componentes Prontos (CDN)
7. Princípios de Layout & Grid
8. Elevação & Sombra (dark/light)
9. Escala de Border Radius
10. Uso Correto da Marca
11. Usabilidade Mobile-First
12. Anúncios — Diretrizes de Uso
13. Comportamento Responsivo (institucional + escala de produto/app)
14. Arquitetura do `global.css` — Diagnóstico e Otimização
15. Diretrizes Institucionais Obrigatórias (rodapé)
16. Guia para Agentes & Prompts
17. Padrões de Criação de Sites, SPAs e Landing Pages
18. Changelog v1 → v2 / Lacunas Conhecidas

---

## 1. Filosofia & Direção Visual v2

O v1 estabeleceu a METADAX como uma marca institucional: azul de confiança, preto tecnológico, tipografia limpa, densidade baixa. O v2 não abandona isso — ele adiciona uma **segunda voz**, usada especificamente em produtos, dashboards e superfícies que precisam comunicar **tecnologia, futuro, inovação e atenção**: um acento vermelho/coral quente que dança em conjunto com o azul institucional, nunca o substituindo.

A leitura é a seguinte: **Azul METADAX = confiança e institucional** (site, marca, contratos, CTAs primários). **Vermelho Sinal = energia e inovação** (badges de novidade, gradientes de destaque em telas de produto, alertas de atenção, estados críticos em dashboards). As duas cores foram calibradas para funcionarem como um duo — o vermelho tem temperatura suficiente para não ser lido como "erro" isolado (esse papel fica com um vermelho semântico separado, mais saturado e puro — ver seção 2.3).

**Tema escuro é o padrão de exibição no v2.** Onde o v1 alternava tiles claros e escuros como ritmo de seção, o v2 assume o dark como canvas primário de produto (dashboards, `metadaxerp`, ferramentas internas) — o site institucional continua predominantemente claro. Os dois temas são totalmente especificados (seção 3); nenhuma superfície do sistema deve existir em apenas um tema.

**Características centrais do v2 (adicionadas ao v1):**
- Acento tecnológico: Vermelho Sinal (`#FF4A3D`) usado com moderação — gradientes de destaque, glows em dark theme, badges de "Novo"/"Beta", nunca como cor de erro.
- Tema escuro como canvas primário de produto; tema claro mantido e totalmente tokenizado.
- Paleta semântica completa: sucesso, atenção, alerta e erro com tons distintos do acento de marca, para nunca haver ambiguidade entre "novidade" e "problema".
- Paleta de transação dedicada (receita, despesa, pendente, transferência, investimento) — essencial para produtos financeiros como o `metadaxerp`.
- Tipografia de produto: **Geist Sans** e **Geist Mono** (Vercel) para dashboards e dados tabulares, coexistindo com Inter (institucional) e Audiowide (logotipo exclusivo).
- Mobile-first assumido como requisito, não como breakpoint reduzido — toda especificação de componente já nasce pensada para toque antes de mouse.

---

## 2. Paleta de Cores Completa

### 2.1 Institucional (herdada do v1 — não alterar)

| Token | Valor | Papel |
|---|---|---|
| `--metadax-blue` | `#0056B3` | CTA primário, links, foco, títulos de destaque (site institucional) |
| `--metadax-black` | `#1E1E1E` | Superfície escura, logotipo dark |
| `--metadax-white` | `#FFFFFF` | Canvas claro, texto sobre escuro |
| `--metadax-pure-black` | `#000000` | Nav global, overlays de vídeo |

### 2.2 Tecnológica — Acento v2 (novo)

| Token | Valor | Papel |
|---|---|---|
| `--metadax-red` | `#FF4A3D` | Acento de inovação — badges "Novo"/"Beta", glow em dark theme, elemento final de gradiente |
| `--metadax-red-soft` | `rgba(255, 74, 61, 0.14)` | Fundo de badge/pill sobre superfície escura |
| `--metadax-red-strong` | `#E8362A` | Estado hover/pressionado do acento vermelho |
| `--metadax-blue-bright` | `#1E7FE0` | Variante clara do azul institucional — usada sobre fundo escuro, onde `#0056B3` perde contraste |
| `--metadax-gradient-nova` | `linear-gradient(135deg, #0056B3 0%, #FF4A3D 100%)` | Gradiente de destaque — **uso raro**: hero de produto no dark theme, capa de release notes, splash de loading. Nunca em botões, nunca em texto de corpo. |

> **Regra de uso:** o Vermelho Sinal é um *tempero*, não um segundo CTA. Em qualquer tela, o Azul METADAX continua sendo a única cor de "clique aqui"; o vermelho sinaliza "isto é novo / preste atenção", nunca "aja aqui".

### 2.3 Semântica — Estado do Sistema (novo)

Cores de estado são deliberadamente distintas do acento de marca para eliminar ambiguidade entre "novidade" (vermelho de marca) e "erro" (vermelho semântico).

| Token | Valor (dark) | Valor (light) | Papel |
|---|---|---|---|
| `--color-success` | `#22C55E` | `#16A34A` | Confirmações, operações concluídas, badges "Ativo" |
| `--color-success-bg` | `rgba(34, 197, 94, 0.14)` | `rgba(22, 163, 74, 0.10)` | Fundo de alerta/badge de sucesso |
| `--color-warning` | `#F5B301` | `#B87503` | Atenção moderada — pendências, revisões necessárias |
| `--color-warning-bg` | `rgba(245, 179, 1, 0.14)` | `rgba(184, 117, 3, 0.10)` | Fundo de alerta de atenção |
| `--color-caution` | `#FB8B24` | `#C2600C` | Risco intermediário — abaixo de erro, acima de atenção (ex: limite próximo, vencimento em breve) |
| `--color-caution-bg` | `rgba(251, 139, 36, 0.14)` | `rgba(194, 96, 12, 0.10)` | Fundo de alerta de risco intermediário |
| `--color-error` | `#E5342A` | `#C4281F` | Falhas, exclusões destrutivas, campos inválidos |
| `--color-error-bg` | `rgba(229, 52, 42, 0.14)` | `rgba(196, 40, 31, 0.10)` | Fundo de alerta de erro |
| `--color-info` / `--focus-ring` | `#3B82F6` | `#3B82F6` | Badges informativos e **anel de foco padrão** de todo input, select e componente interativo do sistema — valor único, igual nos dois temas |
| `--color-info-bg` | `rgba(59, 130, 246, 0.14)` | `rgba(59, 130, 246, 0.10)` | Fundo de banner informativo |

> **Atualização v2:** o token de info foi recalibrado para `#3B82F6` e passa a acumular o papel de **anel de foco universal** (`--focus-ring`) — o mesmo valor é usado em `outline` de qualquer campo focado, em ambos os temas, garantindo que o indicador de foco nunca dependa do tema ativo para ser reconhecível.

### 2.4 Transações Financeiras (novo — para produtos como o `metadaxerp`)

| Token | Valor | Papel |
|---|---|---|
| `--tx-income` | `#22C55E` | Receita, entrada, crédito |
| `--tx-expense` | `#E5342A` | Despesa, saída, débito |
| `--tx-pending` | `#F5B301` | Transação pendente/em processamento |
| `--tx-transfer` | `#2E90FA` | Transferência entre contas |
| `--tx-investment` | `#A855F7` | Aplicação/investimento |
| `--tx-neutral` | `#6C757D` | Estorno, ajuste contábil, saldo neutro |

**Convenção de exibição:** valores positivos sempre em `--tx-income` com prefixo `+`; valores negativos sempre em `--tx-expense` com prefixo `-`. Nunca usar cor para indicar sinal sem o prefixo textual correspondente — é uma exigência de acessibilidade (não depender apenas de cor).

### 2.5 Neutros de Superfície — Dark (novo)

| Token | Valor | Papel |
|---|---|---|
| `--surface-canvas-dark` | `#0A0A0A` | Canvas de fundo do produto (mais escuro que o Preto METADAX) |
| `--surface-1-dark` | `#141414` | Primeira camada de elevação (cards) |
| `--surface-2-dark` | `#1E1E1E` | Segunda camada (equivale ao Preto METADAX do v1) |
| `--surface-3-dark` | `#262626` | Terceira camada (modais, popovers) |
| `--hairline-dark` | `rgba(255, 255, 255, 0.08)` | Borda hairline sobre superfície escura |
| `--text-primary-dark` | `#FFFFFF` | Texto primário sobre escuro |
| `--text-secondary-dark` | `rgba(255, 255, 255, 0.64)` | Texto secundário sobre escuro |
| `--text-tertiary-dark` | `rgba(255, 255, 255, 0.40)` | Texto terciário/desabilitado sobre escuro |

### 2.6 Neutros de Superfície — Light (herdado do v1, tokenizado)

| Token | Valor | Papel |
|---|---|---|
| `--surface-canvas-light` | `#FFFFFF` | Canvas primário |
| `--surface-1-light` | `#FAFAFA` | Cards utilitários claros |
| `--hairline-light` | `rgba(0, 0, 0, 0.08)` | Borda hairline sobre claro |
| `--text-primary-light` | `#1E1E1E` | Texto primário sobre claro |
| `--text-secondary-light` | `rgba(0, 0, 0, 0.80)` | Texto secundário (Ink 80% do v1) |
| `--text-tertiary-light` | `rgba(0, 0, 0, 0.48)` | Fine print, legal, desabilitado (Ink 48% do v1) |

### 2.7 Trading & Ilustração (novo)

Cores dedicadas a contextos de mercado/precificação (cotações, variações percentuais, glifos ilustrativos de moeda) — **distintas** da paleta de transação da Seção 2.4. A diferença de papel é estrita:

- **`--tx-income` / `--tx-expense`** (Seção 2.4): lançamentos contábeis de um extrato/razão — podem aparecer como texto **ou** fundo de badge.
- **`--price-up` / `--price-down`** (esta seção): cotação/variação de preço em tempo real (ex: câmbio, criptoativos, indicadores de mercado no `metadaxerp`) — **cor de texto apenas, nunca fundo**.

| Token | Valor | Papel |
|---|---|---|
| `--accent-yellow` | `#F4B000` | Preenchimento de glifo ilustrativo (ex: ícone de Bitcoin em telas de mercado). **Uso apenas ilustrativo** — nunca cor de ação, badge de estado ou texto funcional. |
| `--price-up-dark` | `#0ECB81` | Preço em alta — cor de texto, tema escuro |
| `--price-up-light` | `#05B169` | Preço em alta — cor de texto, tema claro (mais escura para manter contraste AA sobre branco) |
| `--price-down-dark` | `#F6465D` | Preço em baixa — cor de texto, tema escuro |
| `--price-down-light` | `#CF202F` | Preço em baixa — cor de texto, tema claro |

```css
.metadax-price--up   { color: var(--price-up); }
.metadax-price--down { color: var(--price-down); }
/* Nunca: background: var(--price-up) em texto ou badge — a cor de preço é estritamente tipográfica */
```

Como em toda cor de sinal do sistema (Seção 2.4), a variação percentual sempre acompanha um indicador não-cromático (`▲`/`▼` ou `+`/`-`) junto ao número — a cor reforça, nunca carrega sozinha o significado.

---

## 3. Temas — Dark (padrão) e Light

Toda superfície de produto deve declarar-se via `data-theme="dark"` ou `data-theme="light"` no elemento raiz (`<html>` ou `<body>`), com `dark` como valor padrão quando o atributo não é definido. O site institucional (marketing) continua `light` por padrão, herdando o comportamento do v1.

```css
:root {
  color-scheme: dark light;

  /* Institucional — não muda entre temas */
  --metadax-blue: #0056B3;
  --metadax-blue-bright: #1E7FE0;
  --metadax-red: #FF4A3D;
  --metadax-red-strong: #E8362A;
  --metadax-red-soft: rgba(255, 74, 61, 0.14);
  --metadax-gradient-nova: linear-gradient(135deg, #0056B3 0%, #FF4A3D 100%);

  /* Semântica — valores dark por padrão */
  --color-success: #22C55E;
  --color-warning: #F5B301;
  --color-caution: #FB8B24;
  --color-error: #E5342A;

  /* Info & foco — valor único, igual nos dois temas */
  --color-info: #3B82F6;
  --focus-ring: #3B82F6;

  /* Transações */
  --tx-income: #22C55E;
  --tx-expense: #E5342A;
  --tx-pending: #F5B301;
  --tx-transfer: #2E90FA;
  --tx-investment: #A855F7;
  --tx-neutral: #6C757D;

  /* Trading & ilustração */
  --accent-yellow: #F4B000;
  --price-up: #0ECB81;
  --price-down: #F6465D;

  /* Superfície — dark por padrão */
  --surface-canvas: #0A0A0A;
  --surface-1: #141414;
  --surface-2: #1E1E1E;
  --surface-3: #262626;
  --hairline: rgba(255, 255, 255, 0.08);
  --text-primary: #FFFFFF;
  --text-secondary: rgba(255, 255, 255, 0.64);
  --text-tertiary: rgba(255, 255, 255, 0.40);
  --shadow-product: rgba(0, 0, 0, 0.45) 3px 5px 30px 0;
}

[data-theme="light"] {
  color-scheme: light;

  --color-success: #16A34A;
  --color-warning: #B87503;
  --color-caution: #C2600C;
  --color-error: #C4281F;
  /* --color-info e --focus-ring permanecem #3B82F6 nos dois temas — não sobrescrever */

  --price-up: #05B169;
  --price-down: #CF202F;

  --surface-canvas: #FFFFFF;
  --surface-1: #FAFAFA;
  --surface-2: #1E1E1E; /* tiles escuros continuam existindo dentro de um layout claro */
  --surface-3: #F0F0F0;
  --hairline: rgba(0, 0, 0, 0.08);
  --text-primary: #1E1E1E;
  --text-secondary: rgba(0, 0, 0, 0.80);
  --text-tertiary: rgba(0, 0, 0, 0.48);
  --shadow-product: rgba(0, 0, 0, 0.22) 3px 5px 30px 0;
}

/* Respeita preferência do sistema quando o produto não define tema explícito */
@media (prefers-color-scheme: light) {
  :root:not([data-theme]) {
    color-scheme: light;
  }
}
```

**Regra de produto:** dashboards e ferramentas internas (`metadaxerp`, painéis administrativos) carregam `data-theme="dark"` por padrão, com toggle opcional para `light`. O site institucional (`metadax.com.br`) e páginas de marketing carregam `light` por padrão e não precisam oferecer dark mode a menos que explicitamente pedido.

---

## 4. Tipografia

O v2 introduz duas famílias novas — **Geist**, da Vercel, e **JetBrains Mono** — reservadas para produto/dashboard. A regra do v1 (*Audiowide = logotipo, Inter = tudo o mais*) se mantém para o site institucional; ela é estendida da seguinte forma:

> **Regra v2:** Audiowide = logotipo, sempre. Inter = site institucional, marketing, comunicação, e-mail. Geist Sans = interface de produto e dashboards (texto, labels, navegação, tabelas não-financeiras). Geist Mono = dados tabulares densos e identificadores (IDs, hashes, código genérico). **JetBrains Mono = informações financeiras e números em dashboards** — saldos, preços, variações percentuais e qualquer valor monetário do sistema.

### 4.1 Geist (Vercel) — Nova

- **Geist Sans**: família criada pela Vercel para interfaces de produto — alta legibilidade em telas densas, ótima em tamanhos pequenos (12–14px), números tabulares nativos.
- **Geist Mono**: variante monoespaçada da mesma família — usada para IDs, hashes, trechos de código inline e qualquer dado tabular denso que **não seja financeiro** (ver JetBrains Mono abaixo para valores monetários).
- **Instalação:** pacote oficial via npm — `npm install geist` — ou fontes estáticas via [vercel.com/font](https://vercel.com/font). Importar em produtos Next.js/React via `next/font` ou `geist/font`; em HTML puro, hospedar os arquivos `.woff2` no CDN próprio (`cdn.metadax.com.br/fonts/geist/`) e declarar via `@font-face`.

```css
@font-face {
  font-family: 'Geist Sans';
  src: url('https://cdn.metadax.com.br/fonts/geist/GeistVF.woff2') format('woff2-variations');
  font-weight: 100 900;
  font-display: swap;
}

@font-face {
  font-family: 'Geist Mono';
  src: url('https://cdn.metadax.com.br/fonts/geist/GeistMonoVF.woff2') format('woff2-variations');
  font-weight: 100 900;
  font-display: swap;
}

:root {
  --font-institutional: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;
  --font-product: 'Geist Sans', 'Inter', -apple-system, sans-serif;
  --font-mono: 'Geist Mono', 'Fira Code', Consolas, monospace;
  --font-financial: 'JetBrains Mono', 'Geist Mono', 'Fira Code', Consolas, monospace;
  --font-logo: 'Audiowide', sans-serif; /* uso exclusivo em logotipo */
}
```

### 4.1b JetBrains Mono — Financeiro (novo)

- **Papel exclusivo:** todo número que representa dinheiro — saldos, valores de transação, preços, variações percentuais, totais de fatura — usa **JetBrains Mono**, nunca Geist Mono. A escolha é deliberada: JetBrains Mono tem dígitos ainda mais distintos entre si (o `1`, `l` e `I` nunca se confundem), o que importa quando o número é literalmente dinheiro do usuário.
- **Instalação:** hospedada no Google Fonts (`fonts.google.com/specimen/JetBrains+Mono`) ou auto-hospedada em `cdn.metadax.com.br/fonts/jetbrains-mono/`. Via Google Fonts:

```html
<link rel="preconnect" href="https://fonts.googleapis.com">
<link href="https://fonts.googleapis.com/css2?family=JetBrains+Mono:wght@400;500;600;700&display=swap" rel="stylesheet">
```

- **Uso obrigatório com `tabular-nums`:**

```css
.metadax-financial-value {
  font-family: var(--font-financial);
  font-variant-numeric: tabular-nums;
  font-feature-settings: 'tnum' 1;
}
```

- Já era o padrão do `.metadax-code-block` no `global.css` atual (`'JetBrains Mono', 'Fira Code', 'Consolas', monospace`) — o v2 formaliza esse uso e o estende para **todo** valor financeiro de produto, não apenas blocos de código.

### 4.2 Hierarquia — Institucional (Inter, herdada do v1)

| Papel | Tamanho | Peso | Line Height | Tracking |
|---|---|---|---|---|
| Hero Headline | 56px | 600 | 1.07 | -0.28px |
| H1 / Título de Tile | 40px | 600 | 1.10 | -0.28px |
| H2 / Seção | 32px | 600 | 1.20 | -0.32px |
| Lead / Subtítulo | 24px | 400 | 1.33 | 0.00px |
| Body | 17px | 400 | 1.47 | -0.374px |
| Caption | 14px | 400 | 1.43 | -0.224px |

*(escala completa permanece idêntica à Seção 3 do Design System v1 — não repetida aqui na íntegra para evitar divergência de fonte única de verdade)*

### 4.3 Hierarquia — Produto (Geist, nova)

Otimizada para densidade de dados, dashboards e telas com números (saldos, KPIs, tabelas).

| Papel | Tamanho | Peso | Line Height | Tracking | Fonte |
|---|---|---|---|---|---|
| Dashboard Metric (destaque) | 32px | 600 | 1.15 | -0.02em | Geist Sans |
| Card Title | 18px | 600 | 1.30 | -0.01em | Geist Sans |
| Table Header | 12px | 600 | 1.30 | 0.02em (uppercase) | Geist Sans |
| Table Cell (texto) | 14px | 400 | 1.45 | 0 | Geist Sans |
| Table Cell (valor numérico, não-financeiro) | 14px | 500 | 1.45 | 0 | Geist Mono, `tabular-nums` |
| Valor Financeiro (tabela/lista) | 14px | 600 | 1.45 | 0 | **JetBrains Mono**, `tabular-nums` |
| Valor Financeiro (destaque) | 24px | 600 | 1.20 | 0 | **JetBrains Mono**, `tabular-nums` |
| Preço / Variação (trading) | 14px | 600 | 1.30 | 0 | **JetBrains Mono**, `tabular-nums`, cor `--price-up`/`--price-down` |
| Label de Input | 13px | 500 | 1.30 | 0 | Geist Sans |
| Badge / Status Pill | 12px | 600 | 1.20 | 0.02em (uppercase) | Geist Sans |
| Código / ID / Hash | 13px | 400 | 1.50 | 0 | Geist Mono |
| Code Block (corpo) | 14px | 400 | 1.6 | 0 | JetBrains Mono (ver Seção 5.7) |

**Princípio:** todo número que representa **dinheiro ou preço** usa JetBrains Mono com `tabular-nums`. Todo número que representa **contagem, ID ou dado tabular genérico não-monetário** usa Geist Mono com `tabular-nums`. Texto descritivo ao redor de qualquer número usa Geist Sans.

---

## 5. Estilização de Componentes (v2)

Os componentes do v1 (botões, cards, inputs) permanecem válidos para o site institucional. O v2 adiciona variantes para tema escuro e para os novos tokens semânticos.

### 5.1 Botões — Geometria v2 (retangular, não mais pílula)

**Mudança de geometria:** o v1 usava a pílula completa (`980px`) como formato universal de CTA. No v2, botões de **produto** (dashboards, `metadaxerp`, ferramentas internas) passam a usar **retângulo com cantos arredondados** — geometria que lê como "software" em vez de "site institucional", e que acomoda melhor ícones, contadores e estados compostos dentro do botão.

```
--radius-button-sm: 8px;   /* botões utilitários compactos, ações de tabela/toolbar */
--radius-button-md: 10px;  /* botão padrão — a maioria dos casos */
--radius-button-lg: 12px;  /* CTA de destaque em telas de onboarding/upsell */
```

> **O que continua pílula (`980px`):** o CTA institucional do site de marketing (`metadax.com.br`, herdado do v1 — não alterar, já está publicado e é parte da identidade pública da marca), além de badges/status pills e chips de configuração, que são conceitualmente *etiquetas*, não botões de ação. Fora esses dois casos, todo botão novo do sistema usa a escala de `--radius-button-*` acima.

**Botão Primário — Produto (light)**
- Background: `--metadax-blue`
- Texto: `#FFFFFF`, Geist Sans 14px, peso 600
- Radius: `--radius-button-md` (`10px`)
- Padding: `10px 18px`
- Hover: `filter: brightness(1.08)`
- Ativo: `transform: scale(0.97)`
- Foco: `outline: 2px solid var(--focus-ring); outline-offset: 2px;`

**Botão Primário — Produto (dark theme)**
- Background: `--metadax-blue-bright` (não o `--metadax-blue` padrão, que perde contraste em fundo `#0A0A0A`)
- Texto: `#FFFFFF`
- Mesma geometria retangular (`--radius-button-md`) e estado ativo (`scale(0.97)`)

**Botão Primário — Disabled (novo)**
- Background: `--surface-2` (dark) / `#E9ECEF` (light) — nunca a cor azul apagada com `opacity`, que falha em contraste para leitura do label
- Texto: `--text-tertiary` — `rgba(255,255,255,0.40)` dark / `rgba(0,0,0,0.48)` light
- Borda: nenhuma
- `cursor: not-allowed`
- **Nunca** aplicar apenas `opacity: 0.5` ao botão ativo — o texto precisa permanecer legível o suficiente para o usuário entender *qual* ação está indisponível, mesmo que não possa clicá-la

```css
.metadax-btn-primary:disabled,
.metadax-btn-primary--disabled {
  background: var(--surface-2);
  color: var(--text-tertiary);
  border: none;
  cursor: not-allowed;
  box-shadow: none;
  transform: none; /* nenhuma micro-interação em estado disabled */
}
```

**Botão Secundário / Ghost — Produto**
- Background: transparente
- Texto: `--metadax-blue` (light) / `--metadax-blue-bright` (dark)
- Borda: `1px solid var(--hairline)`
- Radius: `--radius-button-md`
- Hover: background `--surface-1`

**CTA Vermelha — Novidade (uso raro)**
- Background: `--metadax-red`
- Texto: `--metadax-white`, Geist Sans 14px, peso 600
- Radius: `--radius-button-md` (não mais pílula)
- Uso: convites de ação para features novas ("Experimente o Beta"), nunca para ações destrutivas (isso é `--color-error`, ver abaixo)

**Botão Destrutivo**
- Background: transparente
- Texto: `--color-error`
- Borda: `1px solid var(--color-error)`
- Radius: `--radius-button-md`
- Hover: background `--color-error`, texto branco
- Uso: excluir, cancelar assinatura, remover permanentemente

**Botão Ícone (novo — ações de toolbar/tabela)**
- Dimensão: `36×36px` (desktop) / `44×44px` (touch, ver Seção 11.1)
- Background: transparente
- Radius: `--radius-button-sm` (`8px`) — nunca circular no contexto de produto (o círculo (`50%`) permanece exclusivo dos chips flutuantes sobre fotografia, herdados do v1)
- Hover: background `--surface-1`

### 5.2 Badges / Status Pills (novo)

Componente não existente no v1 — necessário para dashboards e listas de transação.

```css
.metadax-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  padding: 4px 10px;
  border-radius: 980px;
  font-family: var(--font-product);
  font-size: 12px;
  font-weight: 600;
  text-transform: uppercase;
  letter-spacing: 0.02em;
}

.metadax-badge--success { background: var(--color-success-bg, rgba(34,197,94,.14)); color: var(--color-success); }
.metadax-badge--warning { background: var(--color-warning-bg, rgba(245,179,1,.14)); color: var(--color-warning); }
.metadax-badge--caution { background: var(--color-caution-bg, rgba(251,139,36,.14)); color: var(--color-caution); }
.metadax-badge--error   { background: var(--color-error-bg, rgba(229,52,42,.14));  color: var(--color-error); }
.metadax-badge--info    { background: var(--color-info-bg, rgba(46,144,250,.14));  color: var(--color-info); }
.metadax-badge--new     { background: var(--metadax-red-soft); color: var(--metadax-red); }
```

### 5.3 Card de Transação (novo — específico para produtos financeiros)

```html
<div class="metadax-tx-card">
  <span class="metadax-tx-icon metadax-tx-icon--expense">↓</span>
  <div class="metadax-tx-info">
    <p class="metadax-tx-title">Fornecedor XPTO</p>
    <p class="metadax-tx-meta">10 jul 2026 · Cartão corporativo</p>
  </div>
  <span class="metadax-tx-value metadax-tx-value--expense">- R$ 1.240,00</span>
</div>
```

```css
.metadax-tx-value {
  font-family: var(--font-financial); /* JetBrains Mono — todo valor financeiro usa esta família */
  font-variant-numeric: tabular-nums;
  font-weight: 600;
  font-size: 14px;
}
.metadax-tx-value--income  { color: var(--tx-income); }
.metadax-tx-value--expense { color: var(--tx-expense); }
.metadax-tx-value--pending { color: var(--tx-pending); }
```

### 5.4 Card & Input — Dark Theme

Cards utilitários em dark theme usam `--surface-1` como fundo (não preto puro), com `--hairline` como borda — mantendo a hierarquia visual de elevação sem sombra (a filosofia do v1 de "elevação por cor de superfície" se estende ao dark theme).

```css
[data-theme="dark"] .metadax-card {
  background: var(--surface-1);
  border: 1px solid var(--hairline);
  color: var(--text-primary);
}
[data-theme="dark"] .metadax-card input,
[data-theme="dark"] .metadax-card select {
  background: var(--surface-2);
  border: 1px solid var(--hairline);
  color: var(--text-primary);
}
[data-theme="dark"] .metadax-card input:focus {
  outline: 2px solid var(--metadax-blue-bright);
  border-color: var(--metadax-blue-bright);
}
```

### 5.5 AI Timeline (assinatura de produto — novo)

Cinco pílulas pastel marcam os estágios de uma ação de IA dentro de um timeline de agente em produto — a assinatura visual distintiva da METADAX para superfícies com IA embutida (ex: automações do `metadaxerp`, agentes de extração de PDF, qualquer fluxo onde uma IA narra o que está fazendo em tempo real).

> **Escopo estrito:** este é o **único** lugar do sistema onde cores pastel aparecem, e o **único** lugar onde mais de duas cores de "ação" coexistem lado a lado. Pastel aqui não é decoração — é rotulagem de estágio. **Nunca** usar estas cores como cores de ação do sistema (botões, links, CTAs) fora do timeline.

| Estágio | Token | Pastel (dark) | Pastel (light) | Papel |
|---|---|---|---|---|
| Thinking | `--ai-stage-thinking` | `#C9B8FF` sobre `rgba(139,92,246,0.14)` | `#7C3AED` sobre `rgba(124,58,237,0.08)` | Raciocínio/análise em andamento |
| Grep | `--ai-stage-grep` | `#8ED2FF` sobre `rgba(59,130,246,0.14)` | `#2563EB` sobre `rgba(37,99,235,0.08)` | Busca/varredura de arquivos ou dados |
| Read | `--ai-stage-read` | `#7EE8C7` sobre `rgba(20,184,166,0.14)` | `#0D9488` sobre `rgba(13,148,136,0.08)` | Leitura/inspeção de um arquivo ou registro específico |
| Edit | `--ai-stage-edit` | `#FFD08A` sobre `rgba(245,158,11,0.14)` | `#B45309` sobre `rgba(180,83,9,0.08)` | Modificação/gravação de dado ou arquivo |
| Done | `--ai-stage-done` | `#8FE3A6` sobre `rgba(34,197,94,0.14)` | `#15803D` sobre `rgba(21,128,61,0.08)` | Conclusão do estágio/tarefa |

```html
<ol class="metadax-ai-timeline">
  <li class="metadax-ai-step metadax-ai-step--thinking">
    <span class="metadax-ai-pill">Thinking</span>
    <p>analisando estrutura do repositório...</p>
  </li>
  <li class="metadax-ai-step metadax-ai-step--grep">
    <span class="metadax-ai-pill">Grep</span>
    <p>buscou em 142 arquivos por assinaturas de handler</p>
  </li>
  <li class="metadax-ai-step metadax-ai-step--read">
    <span class="metadax-ai-pill">Read</span>
    <p>abriu <code>src/api/router.ts</code> (98 linhas)</p>
  </li>
  <li class="metadax-ai-step metadax-ai-step--edit">
    <span class="metadax-ai-pill">Edit</span>
    <p>aplicou 3 alterações em <code>runner.ts</code></p>
  </li>
  <li class="metadax-ai-step metadax-ai-step--done">
    <span class="metadax-ai-pill">Done</span>
    <p>todas as verificações passaram · pronto para commit</p>
  </li>
</ol>
```

```css
.metadax-ai-timeline {
  display: flex;
  flex-direction: column;
  gap: 10px;
  list-style: none;
  padding: 0;
  font-family: var(--font-product);
}
.metadax-ai-step { display: flex; align-items: center; gap: 10px; }
.metadax-ai-step p {
  margin: 0;
  font-size: 13px;
  color: var(--text-secondary);
}
.metadax-ai-pill {
  flex-shrink: 0;
  min-width: 76px;
  text-align: center;
  padding: 3px 10px;
  border-radius: 980px; /* pílula — exceção deliberada, ver Seção 5.1 */
  font-size: 11px;
  font-weight: 600;
}
.metadax-ai-step--thinking .metadax-ai-pill { color: var(--ai-stage-thinking-fg); background: var(--ai-stage-thinking-bg); }
.metadax-ai-step--grep .metadax-ai-pill     { color: var(--ai-stage-grep-fg);     background: var(--ai-stage-grep-bg); }
.metadax-ai-step--read .metadax-ai-pill     { color: var(--ai-stage-read-fg);     background: var(--ai-stage-read-bg); }
.metadax-ai-step--edit .metadax-ai-pill     { color: var(--ai-stage-edit-fg);     background: var(--ai-stage-edit-bg); }
.metadax-ai-step--done .metadax-ai-pill     { color: var(--ai-stage-done-fg);     background: var(--ai-stage-done-bg); }
```

**Regras de uso:**
- Sempre nesta ordem quando os cinco estágios existem: Thinking → Grep/Search → Read → Edit → Done. Um fluxo pode pular estágios (ex: só Thinking → Done), mas nunca reordená-los.
- O texto descritivo ao lado da pílula é sempre em minúsculas, tom de log técnico direto — não é copy de marketing, é telemetria legível.
- Este componente pode ser usado no site institucional (ex: página de produto explicando um agente) desde que mantenha `data-theme` consistente com a superfície onde está inserido.

### 5.6 Code Block — Diretrizes de Cor

O `.metadax-code-block` já existe no `global.css` atual usando JetBrains Mono — o v2 formaliza sua paleta de syntax highlighting, hoje inexistente (o bloco atual é monocromático).

| Token | Valor (dark, padrão) | Papel |
|---|---|---|
| `--code-bg` | `#0D0D0D` | Fundo do bloco — mais escuro que `--surface-canvas` para isolar o código do restante da UI |
| `--code-text` | `#E4E4E7` | Texto padrão / identificadores |
| `--code-comment` | `rgba(228, 228, 231, 0.48)` | Comentários |
| `--code-keyword` | `var(--metadax-blue-bright)` | Palavras-chave de linguagem (`function`, `return`, `const`) |
| `--code-string` | `var(--price-up-dark)` | Strings — reaproveita o verde de trading, já calibrado para dark |
| `--code-number` | `var(--accent-yellow)` | Números literais |
| `--code-function` | `#C9B8FF` | Nomes de função/método (mesmo tom do estágio "Thinking" do AI Timeline — reforça a associação "isto é ação de código") |
| `--code-tag` | `var(--metadax-red)` | Tags JSX/HTML, atributos de componente |
| `--code-error-line` | `rgba(229, 52, 42, 0.14)` | Fundo de linha marcada como erro (diffs, linters) |
| `--code-added-line` | `rgba(14, 203, 129, 0.10)` | Fundo de linha adicionada (diff) |
| `--code-removed-line` | `rgba(246, 70, 93, 0.10)` | Fundo de linha removida (diff) |

```css
.metadax-code-block {
  background: var(--code-bg);
  color: var(--code-text);
  font-family: var(--font-financial); /* JetBrains Mono — já era o padrão do global.css */
  font-size: 14px;
  line-height: 1.6;
  border-radius: 12px;
  padding: 20px 24px;
  border: 1px solid var(--hairline);
  overflow-x: auto;
}
.metadax-code-block .tok-comment  { color: var(--code-comment); font-style: italic; }
.metadax-code-block .tok-keyword  { color: var(--code-keyword); font-weight: 600; }
.metadax-code-block .tok-string   { color: var(--code-string); }
.metadax-code-block .tok-number   { color: var(--code-number); }
.metadax-code-block .tok-function { color: var(--code-function); }
.metadax-code-block .tok-tag      { color: var(--code-tag); }
.metadax-code-block .line--added   { background: var(--code-added-line); }
.metadax-code-block .line--removed { background: var(--code-removed-line); }
.metadax-code-block .line--error   { background: var(--code-error-line); }
```

- O selo de linguagem (`::before` com `attr(data-lang)`) do `global.css` atual permanece — apenas atualizar sua cor de fundo de `var(--metadax-primary)` para `var(--metadax-blue)`, sem outra alteração.
- Em `data-theme="light"`, o code block **não** clareia — blocos de código permanecem escuros mesmo em páginas de tema claro (convenção universal de editores de código); apenas a borda ganha `--hairline-light` para não flutuar isolada sobre um canvas branco.

### 5.7 Inputs, Dropdowns, Selects & Outros Controles de Formulário (novo)

O v1 especificava apenas o input de busca (pílula). O v2 completa o sistema de formulário para produto — todos os controles abaixo seguem `--radius-button-md` (`10px`), não mais a pílula, para se alinharem à nova geometria retangular de produto.

**Text Input**
```css
.metadax-input {
  width: 100%;
  height: 44px; /* alvo de toque AAA, ver Seção 11.1 */
  padding: 0 14px;
  font-family: var(--font-product);
  font-size: 16px; /* nunca abaixo disso — evita zoom automático no iOS, ver Seção 11.3 */
  color: var(--text-primary);
  background: var(--surface-1);
  border: 1px solid var(--hairline);
  border-radius: 10px;
  transition: border-color 0.15s ease, box-shadow 0.15s ease;
}
.metadax-input::placeholder { color: var(--text-tertiary); }
.metadax-input:hover   { border-color: var(--text-tertiary); }
.metadax-input:focus   {
  outline: none;
  border-color: var(--focus-ring);
  box-shadow: 0 0 0 3px rgba(59, 130, 246, 0.18);
}
.metadax-input[aria-invalid="true"] {
  border-color: var(--color-error);
  box-shadow: 0 0 0 3px var(--color-error-bg);
}
.metadax-input:disabled {
  background: var(--surface-2);
  color: var(--text-tertiary);
  cursor: not-allowed;
}
```

**Textarea** — herda tudo do Text Input, com `height: auto`, `min-height: 96px`, `padding: 12px 14px`, `resize: vertical`.

**Select / Dropdown**
```css
.metadax-select {
  /* herda toda a base de .metadax-input */
  appearance: none;
  padding-right: 40px; /* espaço para o chevron */
  background-image: var(--icon-chevron-down); /* SVG inline, cor --text-secondary */
  background-repeat: no-repeat;
  background-position: right 14px center;
  cursor: pointer;
}
.metadax-select:focus { border-color: var(--focus-ring); box-shadow: 0 0 0 3px rgba(59,130,246,0.18); }
```
- Menu de opções aberto (`<ul role="listbox">` custom ou nativo): `background: var(--surface-2)`, `border: 1px solid var(--hairline)`, `border-radius: 10px`, `box-shadow` nível 3 (Seção 8), item ativo com `background: var(--surface-3)`.
- Opção selecionada marcada com ícone de check em `--metadax-blue` (light) / `--metadax-blue-bright` (dark) — nunca apenas negrito, que falha para leitores de tela sem `aria-selected`.

**Checkbox & Radio**
- Dimensão da caixa: `20×20px` visual, área de toque expandida para `44×44px` via `padding` no `<label>` clicável.
- Não marcado: `border: 1.5px solid var(--hairline)`, `background: transparent`, `border-radius: 6px` (checkbox) / `50%` (radio — única exceção retangular vs. circular do sistema, porque radio é semanticamente um "ponto", não um "botão").
- Marcado: `background: var(--metadax-blue)` (light) / `var(--metadax-blue-bright)` (dark), ícone de check/dot em branco.
- Foco: `outline: 2px solid var(--focus-ring); outline-offset: 2px;`

**Toggle / Switch**
```css
.metadax-switch {
  width: 40px;
  height: 24px;
  border-radius: 980px; /* pílula — exceção deliberada: um switch é fisicamente um trilho, a pílula é a metáfora correta */
  background: var(--surface-2);
  border: 1px solid var(--hairline);
  position: relative;
  transition: background 0.15s ease;
}
.metadax-switch[aria-checked="true"] { background: var(--metadax-blue); }
.metadax-switch .thumb {
  width: 18px; height: 18px; border-radius: 50%;
  background: #FFFFFF;
  position: absolute; top: 2px; left: 2px;
  transition: transform 0.15s ease;
}
.metadax-switch[aria-checked="true"] .thumb { transform: translateX(16px); }
```

**Estados de Validação (preenchendo lacuna do v1)**
- Erro: borda + `box-shadow` em `--color-error` (ver `.metadax-input[aria-invalid]` acima) + mensagem de erro abaixo do campo em `--color-error`, `13px`, sempre com ícone (nunca só cor — Seção 11.6).
- Sucesso (validação em tempo real, ex: usuário disponível): borda `--color-success`, ícone de check à direita do campo.
- Campo obrigatório: asterisco em `--metadax-red` ao lado do label — a única aparição funcional (não ilustrativa) do vermelho de marca fora de badges "Novo", por ser um indicador de atenção pontual e não uma ação.

---

## 6. Header & Footer — Componentes Prontos (CDN)

Header, footer e loader **não devem ser recriados por projeto** — eles já existem como componentes centralizados no CDN da METADAX e devem sempre ser referenciados, nunca reescritos localmente. Esta seção é a referência única para incluí-los em qualquer novo projeto.

### 6.1 Assets Essenciais

| Recurso | Link |
|---|---|
| CSS global | `https://cdn.metadax.com.br/components/css/styles.css` |
| Favicon | `https://cdn.metadax.com.br/favicon.ico` |
| Loader (splash/animação de carregamento) | `https://cdn.metadax.com.br/metadax-loader.js` |
| Component Loader (injeta header/footer) | `https://cdn.metadax.com.br/component-loader.js` |
| HTML do Header | `https://cdn.metadax.com.br/components/html/header.html` |
| HTML do Footer | `https://cdn.metadax.com.br/components/html/footer.html` |
| Logo — variação clara (`metadax_light`, para fundo escuro) | `https://cdn.metadax.com.br/assets/metadax_branding_marks/png/logos/metadax_light.png` |
| Logo — variação escura (`metadax_dark`, para fundo claro) | `https://cdn.metadax.com.br/assets/metadax_branding_marks/png/logos/metadax_dark.png` |
| Botão global de WhatsApp | `<script src="https://cdn.metadax.com.br/components/scripts/whatsapp-button.js"></script>` |
| Carrossel de startups/iniciativas | `<script src="https://cdn.metadax.com.br/startups-carousel-metadax.js"></script>` |

### 6.2 Bloco `<head>` Padrão

Todo novo projeto institucional deve incluir, sem alteração, o bloco de tags de analytics, SEO e meta institucional já homologado (Google Tag Manager, gtag, Meta Pixel, canonical, Open Graph, Twitter Card, dados institucionais em meta tags). Este bloco já está publicado e não deve ser modificado — apenas incluído integralmente no `<head>` de qualquer novo site ou landing page da marca. Ver arquivo de referência de links do projeto para o snippet completo (GTM `GTM-5HXJR4W8`, GA `G-SEQKMX0QWC`, Meta Pixel `2314887192357729`).

### 6.3 Inclusão de Header/Footer via Component Loader

```html
<!-- No <head>, junto ao bloco padrão -->
<link rel="icon" type="image/x-icon" href="https://cdn.metadax.com.br/favicon.ico">
<link rel="stylesheet" href="https://cdn.metadax.com.br/components/css/styles.css">

<!-- Logo a inserir dentro do header (a marcação do header.html já injeta o slot de logo) -->
<!-- Fundo claro → metadax_dark.png · Fundo escuro → metadax_light.png -->

<!-- Antes do fechamento de </body> -->
<script src="https://cdn.metadax.com.br/components/scripts/whatsapp-button.js"></script>
<script src="https://cdn.metadax.com.br/metadax-loader.js"></script>
<script src="https://cdn.metadax.com.br/component-loader.js"></script>
<script>
  MetadaxLoader.init({
    logoUrl: 'https://cdn.metadax.com.br/assets/images/loader.png',
    duration: 3000
  });
</script>
```

### 6.4 Regra para Produtos em Dark Theme

Quando o produto usa `data-theme="dark"` (dashboards, `metadaxerp`), o `component-loader.js` deve injetar o header com a variante `metadax_light.png` (logo clara sobre fundo escuro) e aplicar a classe utilitária `metadax-header--dark` para que a barra de navegação assuma `--surface-2` como fundo em vez do branco padrão institucional. Nenhuma alteração de marcação é necessária — apenas a leitura do atributo `data-theme` pelo componente injetado.

---

## 7. Princípios de Layout & Grid

*(herdado do v1 — inalterado)* Unidade base 8px; conteúdo institucional trava em `~980px` (seções de texto) e `~1440px` (grids de produto); gutters de `20–24px`; padding vertical de seção `64–80px`; ver Seção 5 do v1 para a escala completa.

**Adição v2 — Grid de Produto/Dashboard:** telas densas em dados (tabelas, KPIs) usam grid de 12 colunas com gutter reduzido de `16px` e container fluido (`100%` até `1680px`, sem trava rígida) — dashboards se beneficiam de mais largura útil do que páginas de marketing.

---

## 8. Elevação & Sombra

| Nível | Light | Dark | Uso |
|---|---|---|---|
| 0 | Sem sombra, sem borda | Sem sombra, sem borda | Tiles full-bleed, nav global |
| 1 | `1px solid rgba(0,0,0,0.08)` | `1px solid rgba(255,255,255,0.08)` | Cards utilitários |
| 2 | Backdrop-blur em branco 80% | Backdrop-blur em `--surface-2` a 80% | Sub-nav, barras sticky |
| 3 | `rgba(0,0,0,0.22) 3px 5px 30px 0` | `rgba(0,0,0,0.45) 3px 5px 30px 0` | Renders/ícones de produto pousando sobre superfície |

A filosofia do v1 se mantém integralmente: **uma única sombra real no sistema**, reservada a imagens/renders de produto. Em dark theme, a sombra é mais intensa em opacidade (`0.45` vs `0.22`) porque fundos escuros absorvem sombras sutis — sem esse ajuste, a elevação fica ilegível.

---

## 9. Escala de Border Radius

**Base institucional (v1 — sem alteração):** `0` tiles full-bleed · `11px` botões cápsula claros · `18px` cards utilitários · `50%` chips circulares · `980px` CTA institucional de marketing.

**Adição v2 — geometria de produto:** botões de produto deixam de usar a pílula (`980px`) como padrão e passam a usar a escala abaixo (ver Seção 5.1):

| Token | Valor | Uso |
|---|---|---|
| `--radius-button-sm` | `8px` | Botões ícone, ações de tabela/toolbar |
| `--radius-button-md` | `10px` | Botão padrão de produto, inputs, selects, code block |
| `--radius-button-lg` | `12px` | CTA de destaque em onboarding/upsell |
| `18px` | `18px` | Cards utilitários (herdado do v1, sem alteração) |
| `50%` | `50%` | Chips circulares sobre foto, radio buttons, thumb do switch |
| `980px` | `980px` | **Exceções deliberadas apenas:** CTA institucional de marketing (v1), badges/status pills, chips de configuração, pílulas do AI Timeline, trilho do toggle/switch |

> **Regra prática:** se o elemento é um **botão de ação** dentro de um produto/dashboard → `--radius-button-*`. Se é uma **etiqueta** (badge, chip, pílula de status) ou um **trilho físico** (switch) → `980px`. Se é o site institucional de marketing → segue o v1 sem alteração.

---

## 10. Uso Correto da Marca

*(idêntico ao v1 — Seção 7, sem alteração)* Regras de logotipo, variações por fundo e proibições permanecem válidas. **Adição v2:** o Vermelho Sinal (`--metadax-red`) nunca deve ser usado como fundo do logotipo — apenas Preto METADAX, Branco Gelo e Azul METADAX são fundos homologados para a marca, conforme já definido no v1.

---

## 11. Usabilidade Mobile-First

Toda superfície nova (institucional ou produto) é especificada primeiro para toque em tela pequena, depois adaptada para desktop — não o inverso.

### 11.1 Alvos de Toque

- Mínimo absoluto: `44×44px` (WCAG). Padrão METADAX: `48×48px`.
- Espaçamento mínimo entre alvos tocáveis adjacentes: `8px`, para evitar toque acidental.
- Ações destrutivas (excluir, cancelar) nunca ficam adjacentes a ações primárias sem esse espaçamento mínimo.

### 11.2 Zona de Alcance do Polegar

- Ações primárias (CTA de conclusão, "Salvar", "Confirmar") vivem no **terço inferior** da tela em telas ≤ 640px — barra sticky inferior, não topo.
- Navegação secundária/exploratória pode viver no topo; ação de compromisso vive embaixo.
- Em formulários longos, o botão de submit acompanha o scroll como barra sticky (`elevação nível 2`, backdrop-blur), nunca obriga o usuário a rolar até o fim para agir.

### 11.3 Inputs & Teclado

- `font-size` mínimo de `16px` em todo campo de formulário — abaixo disso, iOS Safari aplica zoom automático ao focar, quebrando o layout.
- Usar `inputmode` correto sempre (`inputmode="numeric"` para valores financeiros, `inputmode="email"`, `inputmode="tel"`) para acionar o teclado certo.
- `autocomplete` explícito em campos de nome, e-mail, endereço e cartão — reduz fricção de preenchimento em mobile.
- Campos monetários usam Geist Mono com `tabular-nums` (ver Seção 4.3) e formatação em tempo real (máscara de moeda).

### 11.4 Safe Areas & Viewport

- `viewport-fit=cover` + `env(safe-area-inset-*)` em qualquer barra fixa (topo ou base), para não colidir com notch/home indicator em iOS.
- Meta viewport padrão: `width=device-width, initial-scale=1, viewport-fit=cover`.

### 11.5 Performance Percebida

- Skeleton loaders (não spinners) para listas e cards que carregam dados — reduz sensação de espera em conexões móveis.
- Lazy-loading de imagens abaixo da dobra é padrão (já era regra no v1 — reforçada aqui como requisito, não sugestão).
- Orçamento de performance de referência: LCP < 2.5s, CLS < 0.1 em rede 4G simulada.
- Estados de erro de rede (offline, timeout) sempre com mensagem clara + ação de retry — nunca uma tela em branco.

### 11.6 Movimento & Acessibilidade

- Toda animação (loader, transição de página, `scale(0.95)` de botão) respeita `prefers-reduced-motion: reduce`, substituindo a transição por uma troca instantânea de estado.
- Contraste mínimo AA (4.5:1 para texto de corpo, 3:1 para texto grande/ícones) em ambos os temas — os tokens de texto secundário/terciário da Seção 2.5–2.6 já foram calibrados para atingir esse mínimo.
- Nenhuma informação (status, sinal de transação) é comunicada apenas por cor — sempre acompanhada de ícone, texto ou prefixo (`+`/`-`), conforme já estabelecido na Seção 2.4.

### 11.7 Navegação Mobile de Produto

- Produtos com múltiplas seções (dashboard, relatórios, configurações) usam **tab bar inferior fixa** em ≤ 833px (4–5 itens no máximo, ícone + label de 10px), não o menu hambúrguer do site institucional — são padrões de navegação diferentes para contextos diferentes (consumo de conteúdo vs. uso recorrente de ferramenta).
- O menu hambúrguer do v1 continua correto para o site institucional (navegação exploratória, uso esporádico).

---

## 12. Anúncios — Diretrizes de Uso

Seção nova: cobre onde, como e em que tamanho anúncios (internos, de parceiros ou de terceiros) podem aparecer em superfícies METADAX, mantendo a filosofia de baixa densidade do sistema.

### 12.1 Tamanhos Padrão Suportados (IAB)

| Slot | Dimensão | Contexto de uso |
|---|---|---|
| Mobile Banner | `320×50` | Rodapé fixo em mobile, abaixo da tab bar (nunca sobreposto) |
| Medium Rectangle | `300×250` | In-content, entre seções, nunca no primeiro fold |
| Large Rectangle | `336×280` | In-content em telas ≥ 768px |
| Leaderboard | `728×90` | Topo de conteúdo em desktop, abaixo do sub-nav — nunca colado ao header |
| Half Page | `300×600` | Sidebar em layouts com coluna lateral (≥ 1069px) |
| Billboard | `970×250` | Uso excepcional — apenas em páginas editoriais/blog, um único slot por página |
| Skyscraper | `160×600` | Sidebar em desktop largo (≥ 1441px) |

### 12.2 Regras de Enquadramento Dinâmico

```css
.metadax-ad-slot {
  display: block;
  width: 100%;
  max-width: 100%;
  margin: 40px auto; /* respiro consistente com a filosofia de espaço em branco do sistema */
  background: var(--surface-1);
  border: 1px solid var(--hairline);
  border-radius: 8px;
  overflow: hidden;
  /* aspect-ratio reserva o espaço antes do anúncio carregar — evita CLS */
  aspect-ratio: attr(data-ad-width) / attr(data-ad-height);
}

.metadax-ad-slot::before {
  content: "Publicidade";
  display: block;
  font-family: var(--font-institutional);
  font-size: 10px;
  letter-spacing: 0.04em;
  text-transform: uppercase;
  color: var(--text-tertiary);
  padding: 6px 8px 0;
}
```

- **Reserva de espaço obrigatória** via `aspect-ratio` ou `min-height` explícito por breakpoint — anúncio nunca pode causar deslocamento de layout (CLS) ao carregar.
- **Rótulo obrigatório** ("Publicidade" ou "Anúncio") acima de todo slot, em `--text-tertiary`, `10px`, seguindo o token de Fine Print do v1 — transparência com o usuário é inegociável.
- **Seleção de tamanho por breakpoint**, não por dispositivo assumido:
  - `≤ 419px` → `320×50` apenas
  - `420–833px` → `300×250`
  - `834–1068px` → `336×280` ou `728×90`
  - `≥ 1069px` → `728×90` (topo) + `300×600` ou `160×600` (sidebar), nunca os dois juntos na mesma dobra
- **Densidade máxima:** no máximo **um slot de anúncio por dobra de viewport** — a marca já se posiciona como de baixa densidade visual (Seção 1 do v1); anúncios empilhados quebram essa promessa.
- **Nunca adjacente a CTA:** manter no mínimo `40px` de distância de qualquer botão de ação primária, para não haver confusão entre anúncio e ação do produto.
- **Lazy-load abaixo da dobra:** todo slot fora do primeiro viewport carrega via `loading="lazy"` ou `IntersectionObserver`, protegendo o LCP da página.
- **Tema:** o slot herda `--surface-1` do tema ativo (dark ou light) como moldura — o anúncio em si (iframe de terceiro) não é estilizável, mas a moldura sempre respeita o tema da página, evitando um "retângulo branco" descontextualizado em uma tela escura.

---

## 13. Comportamento Responsivo

A escala de breakpoints do v1 permanece a fonte única de verdade (`419 / 640 / 735 / 833 / 1068 / 1440`px). O v2 adiciona apenas:

| Nome | Largura | Adição v2 |
|---|---|---|
| Small desktop → Desktop | 1069–1440px | Grid de produto passa a 12 colunas fluidas |
| Wide desktop | ≥ 1441px | Sidebar de anúncio (`160×600`) liberada; container de produto pode exceder 1440px (diferente do institucional, que trava) |

Touch targets, estratégia de colapso de nav e comportamento de imagem seguem integralmente o v1 (Seção 9), estendidos pelas regras de tab bar inferior e safe-area da Seção 11 deste documento.

### 13.1 Escala de Breakpoints de Produto/App (nova — v2)

Para produtos e dashboards (não o site institucional, que mantém a escala fina `419/640/735/833/1068/1440` da Seção 9 do v1), o v2 adota uma escala mais simples de cinco pontos, alinhada a convenções comuns de produto/software:

| Nome | Largura | Papel |
|---|---|---|
| Mobile | `375px` | Base de desenho — todo componente de produto nasce especificado aqui primeiro |
| Small | `640px` | Phones grandes / mini-tablets em retrato |
| Tablet | `768px` | Tablets em retrato — ponto de colapso do nav principal |
| Laptop | `1024px` | Início do layout multi-coluna completo |
| Desktop | `1280px` | Layout de produto final, largura de trabalho confortável |

Esta escala **não substitui** a escala institucional — ela é usada especificamente em `metadaxerp` e ferramentas internas. Ambas as escalas coexistem no sistema; a escolha depende do contexto (site de marketing vs. produto).

### 13.2 Alvos de Toque — Alturas Específicas de CTA

Complementa a regra geral da Seção 11.1 (mínimo `44×44px`) com alturas específicas por tipo de botão, já contemplando o padding necessário para a área de toque efetiva atingir AAA mesmo quando a altura visual é menor:

- **CTA primário:** altura visual de `40px` — atinge WCAG AA; com a área de toque expandida via padding/margem até `44px`, atinge AAA. Nunca abaixo de `40px` de altura visual.
- **CTA de download/ação crítica única na tela** (ex: "Baixar relatório", "Exportar extrato"): altura de `44px` — já nasce em conformidade AAA sem depender de padding extra, por ser tipicamente a única ação da tela e merecer alvo maior.

```css
.metadax-btn-primary        { height: 40px; padding: 0 18px; } /* AA visual, AAA com área de toque expandida */
.metadax-btn-download,
.metadax-btn-critical-single { height: 44px; padding: 0 20px; } /* AAA nativo */
```

### 13.3 Estratégia de Colapso — Produto

- **Nav superior de produto** (distinta da nav institucional, que colapsa em `833px` — Seção 9 do v1): colapsa para hambúrguer/tab-bar abaixo de `768px`.
- **Mockup de IDE/multi-painel** (ex: telas que exibem código + preview + terminal lado a lado): colapsa para **um único painel principal em preview** em mobile — os painéis secundários viram abas ou ficam acessíveis via swipe, nunca empilhados verticalmente (empilhar quebraria a leitura de código, que precisa de largura mínima).
- **Grid de features/cards:** `3-up → 2-up → 1-up`, seguindo os pontos `1024px` (3→2) e `640px` (2→1) da escala desta seção.

---

## 14. Arquitetura do `global.css` — Diagnóstico e Otimização

Este documento não substitui o `global.css` em produção — ele descreve a arquitetura atual e a direção recomendada para a próxima revisão do arquivo real.

### 14.1 Como está hoje

- Custom properties centralizadas em `:root` (`--metadax-primary`, `--metadax-secondary` etc.), mas nomeadas por **papel de marca**, não por **papel de tema** — não há distinção entre "cor institucional" e "cor de superfície", o que dificulta introduzir um tema escuro sem duplicar todo o arquivo.
- Uso extensivo de `!important` em praticamente todas as declarações — necessário porque o CSS é injetado sobre um page builder de terceiro (Wix/CDN) que já define estilos concorrentes; **manter** essa estratégia é correto para o contexto de injeção, não é dívida técnica.
- Nomenclatura de classes já segue um padrão consistente `.metadax-*`, próximo de BEM (`.metadax-footer-section`, `.metadax-nav-link-item`) — boa base para expansão.
- Breakpoints hoje são declarados como valores literais repetidos (`768px`, `1024px`) em vários blocos de media query, em vez de a partir de uma única fonte — diverge ligeiramente da escala fina do Design System (`419/640/735/833/1068/1440`), que é a documentada oficialmente.
- O rodapé (`.metadax-footer*`) já foi refeito seguindo o Design System v1 corretamente — grid responsivo, radius de 18px no painel de selos, tipografia Inter, cor de hover em Azul METADAX. É o componente mais alinhado ao sistema hoje.
- O hero (`.metadax-hero`) ainda usa gradiente decorativo de fundo (`--metadax-gradient`) e padrão de grid em SVG — isso **contraria** a regra do v1 de "sem gradientes decorativos". É uma divergência a corrigir na próxima revisão do arquivo real, não deste documento.

### 14.2 Recomendação para a próxima revisão do arquivo real

1. **Separar tokens de marca de tokens de tema.** Marca (`--metadax-blue`, `--metadax-red`) fica fixa em `:root`; tokens de superfície/texto (`--surface-canvas`, `--text-primary`) ficam sobrescritos por `[data-theme="light"]`, conforme a Seção 3 deste documento.
2. **Centralizar breakpoints como custom properties não-usáveis diretamente em `@media` (CSS ainda não suporta isso nativamente), mas documentar a escala oficial em comentário no topo do arquivo** e usar sempre os mesmos seis valores em todo o arquivo, substituindo os `768px`/`1024px` que hoje divergem da escala documentada.
3. **Aposentar o gradiente decorativo do hero institucional**, substituindo por Azul METADAX sólido ou Preto METADAX — alinhando o componente mais visível do site à regra "sem gradientes decorativos" do v1. O `--metadax-gradient-nova` do v2 (Seção 2.2) pode ocupar esse espaço **apenas** em contextos de produto/dashboard, nunca no hero institucional.
4. **Adicionar bloco de tokens semânticos e de transação** (Seções 2.3 e 2.4 deste documento) ao `global.css`, hoje ausentes — qualquer novo componente financeiro está atualmente inventando cores ad-hoc por falta desses tokens.
5. **Adicionar `@media (prefers-reduced-motion: reduce)`** global, desativando `metadax-logo-breathing`, `metadax-circle-rotate` e `translateY`/`scale` de hover — hoje nenhuma animação do arquivo respeita essa preferência.
6. **Migrar tipografia de tamanho fixo para `clamp()`** nos headings de maior destaque (`.metadax-hero h1`, `.metadax-section h2`), permitindo escala fluida entre breakpoints em vez dos saltos abruptos de `font-size` hoje definidos por media query.

---

## 15. Diretrizes Institucionais Obrigatórias (Rodapé)

Toda superfície pública da METADAX — site institucional, produto, landing page, e-mail transacional — **deve** exibir, no rodapé ou em tela de "Sobre"/"Institucional" equivalente, o seguinte bloco, sem exceção e sem edição de conteúdo:

```
METADAX
METADAX CONSULTORIA LTDA
CNPJ 65.640.808/0001-89
Av. Getúlio Vargas, 671, Sala 500 — Savassi, Belo Horizonte, MG — CEP 30112-021
metadax.com.br
```

- O nome curto **METADAX** deve estar sempre visível como âncora de marca no rodapé, mesmo em produtos com nome próprio (ex: `metadaxerp` exibe "METADAX" como mantenedora, além do nome do produto).
- O endereço completo é obrigatório, não apenas cidade/UF — é requisito institucional e de compliance, não apenas de marca.
- Em produtos com espaço reduzido (mobile, dashboards densos), o bloco pode ser condensado em uma linha (`METADAX · CNPJ 65.640.808/0001-89 · Belo Horizonte, MG`) com um link "Ver informações completas" que expande o endereço integral — nunca omitir o endereço por completo.
- Este bloco segue os tokens de Fine Print (`12px`/`400`, `--text-tertiary`) já definidos no v1 e reforçados na Seção 2.5–2.6 deste documento.

---

## 16. Guia para Agentes & Prompts

1. **Determine o tema antes de gerar qualquer componente.** Produto/dashboard → dark por padrão (Seção 3). Site institucional/marketing → light por padrão. Nunca misture tokens de um tema com superfícies do outro.
2. **Determine a fonte pelo contexto, não pelo componente.** Texto institucional/marketing → Inter. Números, tabelas, dashboards → Geist Mono (`tabular-nums`) para o valor e Geist Sans para o texto ao redor. Logotipo → Audiowide, sempre, e somente ali.
3. **Vermelho Sinal (`--metadax-red`) é para novidade/energia, não para erro.** Se a intenção for "algo deu errado", use `--color-error`. São visualmente próximos de propósito, mas semanticamente distintos — não troque um pelo outro.
4. **Sinal de transação sempre com prefixo textual (`+`/`-`), nunca só cor.**
5. **Não recriar header/footer.** Referencie os links da Seção 6 — nunca gere marcação própria de navegação global ou rodapé institucional a partir do zero.
6. **Todo novo componente de produto nasce mobile-first.** Desenhe primeiro o layout ≤ 419px (Seção 11), depois expanda para os breakpoints maiores.
7. **Slots de anúncio sempre reservam espaço e rótulo** (Seção 12) — nunca insira um `<iframe>` de anúncio sem o wrapper `.metadax-ad-slot`.
8. Referencie tokens e códigos hex específicos deste documento ao iterar — evite valores CSS inventados quando um token já existe para o papel desejado.

---

## 17. Padrões de Criação de Sites, SPAs e Landing Pages

Biblioteca de padrões de seção — não são componentes fechados, são **estruturas recomendadas** para montar sites institucionais, SPAs de produto e landing pages, seguindo os princípios já estabelecidos (baixa densidade, ritmo de tile claro/escuro, mobile-first, hierarquia tipográfica). Cada padrão indica quando usar, estrutura de conteúdo e comportamento responsivo.

### 17.1 Princípios Gerais (aplicam-se a toda página)

- **Hierarquia de F/Z:** o olhar do usuário varre em F (páginas de conteúdo/documentação) ou Z (landing pages de conversão) — a ordem dos elementos em cada seção deve respeitar isso: título → subtítulo → ação, nunca ação antes de contexto.
- **Uma ação primária por dobra.** Cada seção visível no viewport tem no máximo um CTA de destaque (Azul METADAX ou, em produto, `--metadax-blue`) — CTAs secundários usam a variante ghost.
- **Regra dos 3 segundos:** o hero precisa comunicar "o que é isto" sem exigir scroll — título + subtítulo + uma imagem/render, nada mais, seguindo a filosofia de espaço em branco da Seção 5 do v1.
- **Mobile-first literal:** toda seção abaixo é descrita primeiro em `375px` (Seção 13.1); a versão desktop é a expansão, não o ponto de partida.
- **Contraste de superfície como divisor de seção**, nunca linha ou sombra — princípio herdado do v1 e válido em todos os padrões abaixo.

### 17.2 Hero Section

**Quando usar:** primeira seção de qualquer site institucional, landing page de produto ou SPA.

**Estrutura de conteúdo (nesta ordem):**
1. Badge opcional de contexto (ex: "Novo" em `--metadax-red`, `--metadax-badge--new` — Seção 5.2) — só se houver uma novidade real a anunciar
2. Headline (`Hero Headline`, 56px/600 — Seção 3 do v1, ou `Dashboard Metric`-scale se for hero de produto)
3. Subtítulo de uma frase (`Lead`, 24px/400)
4. Um CTA primário +, opcionalmente, um CTA ghost secundário — nunca dois CTAs de mesmo peso visual
5. Render/imagem de produto (com a sombra única do sistema, Seção 8) ou, em landing pages de marketing puro, fundo de tile claro/escuro sem gradiente decorativo (ver correção pendente na Seção 14.2, item 3)

**Responsivo:** coluna única centralizada em `≤767px`; título e imagem lado a lado a partir de `1024px` quando o hero tem render de produto. Altura nunca é 100vh forçado em mobile — o conteúdo dita a altura, para não empurrar a prova de contexto para fora da primeira dobra em telas baixas (paisagem, teclado aberto).

### 17.3 About / Sobre

**Quando usar:** página ou seção institucional que explica a empresa, missão ou um produto específico.

**Estrutura:**
1. H2 de seção + um parágrafo de contexto (`Lead`, não mais que 3 linhas)
2. Bloco de prova: números-chave (ex: "+40 clientes atendidos") em `Dashboard Metric` ou `H1`, cada um com um label curto abaixo em `Caption`
3. Bloco narrativo opcional (missão/valores) em tile alternado (claro↔escuro), seguindo o ritmo de seção do v1
4. Nunca incluir CTA de conversão nesta seção — About é contexto, não funil; o CTA vem na seção seguinte ou no rodapé sticky

**Responsivo:** números-chave em grid `2×2` em mobile → linha única em `≥1024px`.

### 17.4 Information / Features

**Quando usar:** explicar capacidades, diferenciais ou módulos de um produto/serviço.

**Estrutura:**
- Grid de Card Utilitário (Seção 4 do v1: radius `18px`, borda hairline) — ícone/render no topo, título (`H2`/`Card Title`), descrição curta (2 linhas máx), link de texto azul "Saiba mais"
- Grid stair-steps `3-up → 2-up → 1-up` nos breakpoints `1024px`/`640px` (Seção 13.3)
- Se o produto tem uma feature "hero" (a mais importante), ela recebe um tile full-bleed dedicado (Seção 4 do v1 — Tile de Produto), não compete dentro do grid

**Variante de produto:** em telas de produto (não marketing), esta seção pode usar o AI Timeline (Seção 5.5) como demonstração ao vivo de uma feature de IA, em vez de screenshots estáticos — é mais convincente e já é a assinatura visual do sistema.

### 17.5 Documentation / Documentação

**Quando usar:** páginas de referência técnica, guias de API, manuais de produto.

**Estrutura:**
- Layout de três colunas em `≥1280px`: navegação lateral esquerda (fixa, `Geist Sans` 13px) · conteúdo central (largura de leitura travada em `~720px`, `Inter` ou `Geist Sans` conforme o contexto — institucional vs. produto) · índice "nesta página" à direita (opcional, sticky)
- Blocos de código seguem a Seção 5.6 integralmente (JetBrains Mono, tokens de syntax highlighting)
- Tabelas de parâmetros/API usam a tipografia de produto (Seção 4.3: `Table Header`/`Table Cell`), nunca a tipografia institucional, mesmo em documentação hospedada no site de marketing — dados tabulares são sempre Geist
- Admonitions (nota, aviso, perigo) usam os tokens semânticos da Seção 2.3 como fundo tenuizado (`--color-info-bg`, `--color-warning-bg`, `--color-error-bg`) com uma barra lateral de `3px` na cor sólida correspondente

**Responsivo:** `<1024px` — coluna de navegação vira menu colapsável no topo (drawer), índice lateral direito desaparece (fica acessível via botão "Nesta página" no topo do artigo); conteúdo central ocupa `100%` da largura útil.

### 17.6 Outras Seções Recorrentes

**Pricing / Planos**
- Chip de Opção de Configuração (Seção 4 do v1) para toggle mensal/anual
- Cards de plano em radius `18px`; plano recomendado ganha borda `2px solid var(--metadax-blue)` em vez de hairline — nunca sombra ou escala para se destacar, mantendo a filosofia de "sem sombra em card"

**FAQ**
- Accordion simples: pergunta em `Body Strong` (17px/600), resposta em `Body` (17px/400), ícone de chevron rotacionando `180deg` no estado aberto (respeita `prefers-reduced-motion`)

**CTA Final / Fechamento de página**
- Tile full-bleed (claro ou escuro, conforme o tile anterior — sempre alternando), título curto + um único CTA primário, centralizado, com bastante respiro (`64–80px` vertical, Seção 5 do v1)

**Depoimentos/Social Proof**
- Card utilitário com aspas em `Lead` (24px/400, itálico opcional), nome+cargo em `Caption Strong`, foto circular `48×48px`
- Nunca mais de 3 depoimentos visíveis simultaneamente por dobra, para manter a densidade baixa característica da marca

---

## 18. Changelog v1 → v2 / Lacunas Conhecidas

### Adicionado no v2
- Tema escuro totalmente tokenizado como padrão de produto (Seção 3)
- Acento tecnológico Vermelho Sinal + gradiente de destaque de uso raro (Seção 2.2)
- Paleta semântica de estado (sucesso/atenção/caution/erro/info) distinta do acento de marca (Seção 2.3)
- Paleta de transações financeiras (Seção 2.4)
- Paleta de trading/ilustração — `accent-yellow`, `price-up`/`price-down`, `focus-ring` unificado (Seção 2.7)
- Tipografia de produto Geist Sans/Geist Mono para dados densos, e **JetBrains Mono** dedicado a valores financeiros (Seções 4.1b, 4.3)
- Componente de Badge/Status Pill e Card de Transação (Seção 5.2–5.3)
- **Geometria de botão retangular com cantos arredondados** substituindo a pílula como padrão de produto, com pílula mantida apenas para casos deliberadamente etiqueta-like (Seções 5.1, 9)
- Estado `button-primary-disabled` formalizado (Seção 5.1)
- **AI Timeline** — componente de assinatura para estágios de agente de IA (Seção 5.5)
- Diretrizes de cor para Code Block / syntax highlighting (Seção 5.6)
- Sistema completo de inputs, dropdown/select, checkbox, radio, switch e estados de validação (Seção 5.7)
- Seção dedicada de usabilidade mobile-first (Seção 11)
- Seção dedicada de política de anúncios (Seção 12)
- Escala de breakpoints de produto/app (`375/640/768/1024/1280`) e alvos de toque específicos de CTA (Seção 13.1–13.2)
- Diagnóstico e roteiro de otimização do `global.css` real (Seção 14)
- Diretriz institucional obrigatória de rodapé, formalizada como regra (Seção 15)
- Biblioteca de padrões de página — hero, about, features, documentation e seções recorrentes (Seção 17)

### Mantido sem alteração
- Paleta institucional (Azul/Preto/Branco METADAX)
- Regra Audiowide-exclusivo-no-logotipo
- Hierarquia tipográfica Inter do site institucional
- Escala de border radius institucional, elevação/sombra única, breakpoints oficiais do site de marketing
- Regras de uso correto da marca (logotipo)
- CTA institucional em formato pílula no site de marketing (`metadax.com.br`) — a mudança de geometria desta revisão se aplica a produto, não ao site já publicado

### Lacunas conhecidas (herdadas do v1, ainda não resolvidas)
- Estados de validação de formulário além do campo neutro de busca continuam sem especificação formal de microcopy (ver skill `design:ux-copy` para complementar quando necessário).
- Dark mode do site institucional (marketing) não foi especificado — o v2 assume que o marketing site permanece light-only por ora; se isso mudar, esta seção precisa de uma revisão dedicada.
- Iconografia (biblioteca de ícones oficial) ainda não foi documentada em nenhuma versão do sistema — hoje cada projeto escolhe ad-hoc.

---

*Este documento estende, e não substitui, o Design System METADAX v1. Em caso de conflito não coberto explicitamente aqui, o v1 permanece a referência para o site institucional; este documento (v2) é a referência para produto, dashboards e novas superfícies tecnológicas.*

*© 2026 METADAX CONSULTORIA LTDA. Todos os direitos reservados.*
