---
description: Padrão de Design Aggios App para Páginas de Listagem e Dashboards
---
# Padrão de Design Aggios App
Este workflow descreve como construir uma página seguindo o design system da Aggios, utilizando os componentes padronizados na pasta `components/ui`.
## 1. Estrutura Básica da Página
Toda página deve ser envolvida por um container com padding e largura máxima:
```tsx
{/* Conteúdo aqui */}
```
## 2. Cabeçalho (`PageHeader`)
Utilize o `PageHeader` para títulos, descrições e ações globais da página.
```tsx
,
onClick: () => handleCreate()
}}
/>
```
## 3. Cartões de Estatísticas (`StatsCard`)
Para dashboards ou resumos, utilize o grid de stats:
```tsx
```
## 4. Filtros e Pesquisa (Minimalista Flat)
Os filtros não devem ter sombras nem cores de marca no estado inicial/focus. Devem usar um visual "Clean" com contraste sólido.
```tsx
```
## 5. Abas e Tabelas (`Tabs` & `DataTable`)
Para organizar o conteúdo principal, utilize o componente `Tabs`. Dentro de cada aba, utilize `Card` com `noPadding` para envolver a `DataTable`.
```tsx
,
content: (
)
}
]}
/>
```
## Regras de Estilo e Cores
- **Botões Primários**: Sempre use `variant="primary"` e aplique o gradiente via style/classe: `style={{ background: 'var(--gradient)' }} className="shadow-lg shadow-brand-500/20"`.
- **Bordas**: Use `border-zinc-200` para light mode e `dark:border-zinc-800` para dark mode.
- **Backgrounds**: Use `bg-white` (light) e `dark:bg-zinc-900` (dark) para componentes elevados.
- **Cards & Containers (Flat Design)**:
- **Cards:** Fundo branco/zinc-900, bordas sutis (`border-zinc-200` / `dark:border-zinc-800`), **SEM SOMBRAS**.
- **Border Radius:** Usar `rounded-2xl` (16px) ou `rounded-[32px]` para containers grandes.
- **StatsCards:** Texto de valor em `font-bold` ou `font-black`, ícones em boxes coloridos com opacidade 10% no dark mode.
- **Hover:** Apenas transições de cor ou escalas sutis, evitar sombras no hover.