# Regras do estilo pixel (Pixel art)

Estas regras valem para QUEM MONTA. Não existe vídeo pronto aqui: só peças (`pecas.json`). Cada cena é escrita do zero, peça a peça.

## Regras do kit: cor
| token | hex | uso |
|---|---|---|
| `ceu` | #29ADFF | fundo |
| `noite` | #1D2B53 | contorno, sombra dura, caixas escuras |
| `creme` | #FFF1E8 | texto claro, miolo de caixa, nuvem |
| `amarelo` | #FFEC27 | título principal, moeda, destaque |
| `laranja` | #FFA300 | chão, sol |
| `magenta` | #FF004D | seleção, nome, coração |
| `verde` | #00E436 | grama, cartão de data |
| `roxo` | #7E2553 | detalhe de sprite |
| `cinza` | #83769C | sombra de sprite |

- Sem degradê. Sombras são retângulos chapados de `noite` deslocados 8–10 px (`box-shadow: 10px 10px 0`).
- Linhas finas de varredura: `rgba(29,43,83,0.06)` a cada 6 px, só no Overlay.
- O cliente pode trocar: `amarelo` e `magenta` (cores de destaque) e o `ceu`.

## Regras do kit: tipografia
- **título**: Press Start 2P 400 (arquivo `assets/fontes/pressstart2p.woff2`, família registrada como `PX Press Start 2P`).
- **texto**: VT323 400 (arquivo `assets/fontes/vt323.woff2`, família registrada como `PX VT323`).

| papel | tamanho px | máx. caracteres por linha | fonte |
|---|---|---|---|
| título gigante | 150 (2 linhas) / 130 | 6–9 | Press Start 2P |
| título de data/oferta | 110 | 10 | Press Start 2P |
| menu | 76 | 14 | Press Start 2P |
| HUD (número / rótulo) | 52 / 24 | 6 / 12 | Press Start 2P |
| diálogo | 104 | 22 por linha, 3 linhas | VT323 |
| endereço | 84 | 18 | VT323 |

- Tracking: 0 nos títulos (a fonte já é monoespaçada), 2 px no diálogo.
- Line-height: 1.1 nos títulos, 1.02 no diálogo.
- Caixa: TUDO EM MAIÚSCULAS (a fonte de 8 bits não tem minúscula legível em corpo grande).
- Texto que passa da largura útil (920 px) **encolhe sozinho** (`caber()` em `base.ts`), nunca corta palavra.

## Regras do kit: area-segura
- Tudo que se lê fica entre **y = 168** e **y = 1330** e entre **x = 80** e **x = 1000** (920 px úteis). Abaixo de 1330 só fundo e o que sangra.
- Herói com 40% ou mais da altura ou da largura; no máximo 2 apoios por cena.

| uso | y de referência (px) |
|---|---|
| HUD | 215 |
| título de 2 linhas (centro) | 700–760 |
| sprite herói (centro) | 620–760 |
| caixa de diálogo (centro) | 760 |
| menu (centro) | 740 |
| PRESS START | 1030–1070 |
| endereço | 1150–1250 |

## Regras do kit: movimento
- Tela 1080×1920, 30 fps. Curva padrão: `mola(t) com overshoot 2,2 (fórmula easeOutBack) em passos de 3 quadros`.
- Passo de animação: **3 quadro(s)** por posição (movimento em passos, cara de stop-motion).
- Câmera: zoom base 1.02, deriva ±14 px × ±10 px, giro ±0.004 rad, soco de 0.035 em cada batida (decai em 7 quadros).
- Toda entrada passa do alvo e volta (overshoot de 2,2). Nenhum quadro parado.

| movimento | quadros | valores |
|---|---|---|
| título cai | 10 | de −520 px com escala 1,25 até 1, mola 2,2; uma linha a cada 6 quadros |
| sprite nasce | 9 | escala 0 → 1 com mola; depois pula: |sen(t/7,2)| × 3,2 × escala |
| caixa de diálogo | 9 + 1 letra/1,5 q | escala 0 → 1 pela base; ▼ pisca a cada 8 quadros |
| menu | 9 por item | entra 1100 px da esquerda, 4 quadros entre itens; seta troca a cada 10 q |
| HUD | 9 | desce 300 px; pontos sobem em 30 quadros de 100 em 100 |
| chuva | contínuo | velocidade 14–28 px/quadro, balanço ±30 px |
| câmera | contínuo | zoom 1,02 ± 0,012, deriva ±14 × ±10 px, soco 0,035 |

- Cena entra em 12 quadros e sobrepõe 10 com a próxima; cortes a cada 18–45 quadros.

## Regras do kit: ritmo
- Trilha a **124 bpm**: 1 batida = **14.52 quadros** (0.48 s). Corte em múltiplos de batida (7, 15, 29 quadros).

| batida | duração s | quadros |
|---|---|---|
| gancho | 1.3–2.5 | 40–75 |
| virada | 1.3–3.0 | 40–90 |
| problema | 1.3–3.3 | 40–100 |
| lista | 1.2–2.5 | 36–75 |
| data | 1.0–2.3 | 30–70 |
| marca | 1.3–4.0 | 40–120 |

- Tempo mínimo de leitura: 1 palavra = 8 quadros, frase de 3 palavras = 24 quadros.
- Troca de cena a cada 0,6–1,5 s (18–45 quadros). Vídeo de 6–60 s.

## Regras do kit: som
- Trilha: `assets/trilha/trilha.mp3` (8,7 s, 124 bpm, preset MotionCraft `tech-bright`), volume **0,5**, fade de saída nos últimos 20 quadros. Com narração: 0,25.
- Efeitos sintetizados (pacote `digital-soft`):

| som | volume | quando |
|---|---|---|
| `whoosh-entra` | 0,9 | entrada de cena (−1 quadro) |
| `pop-palavra` | 1,0 | título que cai, sprite que nasce |
| `pop-cartao` | 0,9 | caixa/menu que abre |
| `tick` | 0,6 | cada 2 letras do diálogo |
| `clique` | 0,8 | seta do menu muda |
| `impacto` | 0,9 | a palavra grande do gancho |
| `subida` | 0,7 | 1,2 s antes do clímax |
| `assinatura` | 0,9 | tela de título final |

- No máximo **3 sons por segundo**; nunca o mesmo arquivo duas vezes seguidas.
- Som entra **1 a 2 quadros antes** do visual. Alvo do mix: **−14 LUFS**, pico −1,5 dBTP.

## Movimento (régua extravagante; liso e calmo é reprovado)
- A câmera nunca para: use `CameraDeriva` (ou a câmera do estilo) com ao menos 4 chaves `{em, z, x, y}` mudando `z` e `x/y`, uma chave a cada cena. Deriva e leve rotação por baixo, sempre.
- Em cada corte, um `CorteImpacto` (clarão + tremida + zoom-pop) casado com o som `impacto` 1 a 2 quadros antes.
- Toda cena tem fundo vivo (`Particulas` + o fundo do estilo), pelo menos 1 herói e 2 apoios em movimento. Cena parada é reprovada.
- Entrada de elemento: 10-18 quadros com overshoot curto; saída: metade da entrada. Stagger entre itens: 2-5 quadros.
- Peças 3D e giros valem: quanto mais profundidade (parallax, perspectiva, rotação), melhor, sem sair da área segura.

## Som (camadas)
- Trilha sempre, volume 0,45, fade de saída 20 quadros.
- SFX em TODO corte e em toda entrada de elemento grande, no mínimo 2 camadas por corte (ex.: `whoosh-sai` + `impacto`, depois `swoosh` no quadro seguinte). Máx. 6 efeitos por segundo. Nunca o mesmo arquivo duas vezes no mesmo quadro.
- Sons deste estilo: assinatura, clique, impacto, pop-cartao, pop-palavra, subida, swoosh, tick, whoosh-entra, whoosh-sai.

## Densidade mínima (o conferir cobra isto)
| medida | mínimo |
|---|---|
| camadas visuais simultâneas por cena | 4 (fundo, partículas, herói, apoio) |
| elementos em movimento por segundo (média da linha do tempo) | 5 |
| chaves de câmera por vídeo | 4 |
| SFX por corte | 1 (alvo 2) |
| peças diferentes usadas no vídeo | 6 |

## Proibido
- Copiar uma cena pronta: cada cena é composta peça a peça, com props novas.
- Cena parada: nenhum quadro em que nada se mexe.
- Elemento com movimento grande sem som.
