# Gaussian Glass — contrato v1.5

## Origem e decisão

O ClickAgents preservado usa blur de 6px em máscaras e 26px em vidro de mídia. Esses valores são referências de comportamento, não tokens copiados. O Baluarte adota 20px no shell sticky: acima do efeito utilitário de overlay e abaixo do vidro de mídia, com transparência suficiente para comunicar continuidade sem produzir névoa excessiva.

## Tokens

| Papel | Contrato |
|---|---|
| Blur | `--b-effect-gaussian-blur: 20px` |
| Saturação | `--b-effect-gaussian-saturation: 1.12` |
| Superfície clara do header | `--bg` a 78% sobre transparente |
| Superfície escura do header | `--bg` a 82% sobre transparente |
| Fallback sem backdrop-filter | `--bg` a 96% sobre transparente |

## Uso permitido

Gaussian é um efeito funcional para superfícies sticky ou overlay que precisam preservar contexto durante a rolagem. O primeiro consumidor governado é o header dividido do portal.

- aplique o blur na superfície inteira, não separadamente em cada botão;
- mantenha texto e controles em tokens semânticos sólidos;
- use transparência ligeiramente maior no tema claro e maior opacidade no escuro;
- preserve divisores estruturais verticais quando eles comunicarem regiões diferentes;
- remova linhas horizontais redundantes somente quando o vidro mantiver separação suficiente;
- ofereça fallback opaco e legível quando `backdrop-filter` não estiver disponível.

## Proibições

- Gaussian em cards comuns, menus ou conteúdo apenas como decoração;
- blur superior a 20px no shell sem nova revisão visual e de desempenho;
- saturação alta, brilho colorido ou tint que altere os papéis semânticos;
- remover o divisor entre sidebar e conteúdo por causa do vidro;
- depender do blur para contraste de texto;
- animar intensidade de blur durante hover, foco ou colapso.

## Acessibilidade e desempenho

O efeito não pode ser a única indicação de região. Contraste é medido sobre a composição final; forced colors e ausência de suporte devem permanecer funcionais. O header usa uma única camada de backdrop, evitando múltiplos filtros sobrepostos. Reduced motion não altera o Gaussian, pois o efeito é estático.

## Evidência mínima

A auditoria deve provar, em claro/escuro e Chromium/Firefox/WebKit:

- header de 54px sem borda horizontal inferior;
- `blur(20px) saturate(1.12)` computado;
- divisor vertical contínuo entre os cabeçalhos e entre sidebar/conteúdo;
- fallback declarado;
- margens externas de 14px;
- ausência de overflow e estabilidade durante colapso 260→49px em fine ou coarse.
