# Diseño UI v2 — RinoTrack

Interfaz opt-in (`?ui=v2` / cookie `rino_ui`). La v1 sigue disponible con `?ui=v1`.

## Stack

- PHP vistas (sin SPA)
- Basecoat **Rhea** + Tailwind v4
- htmx (parciales / filtros)
- Tipografía: **Oxanium** (títulos), **Roboto** (cuerpo)

## Identidad

| Token | Valor |
|-------|--------|
| Primary | `#2563EB` |
| Sidebar | `#142B43` |
| Radius | `0.75rem` |
| Dark mode | `html.dark` + `data-theme` |

## Homogeneidad por perfil

Admin, líder y miembro comparten:

- `views/partials/layout.php` (head, sidebar, topbar, footer)
- `views/partials/nav_items.php` (menú por rol)
- Helpers `e()`, `badge()`, `alert()`, `ui_page_header()`, `ui_empty()`
- Tablas `.table-scroll` (cabecera navy sólida, chips Monday)
- Cards `rounded-2xl border bg-card`

Activación: cada controller llama `render_v2('ruta/vista', $vars)` si existe `vista.v2.php`.

## Build

```bash
npm run build   # assets/app.css → public/css/app.css + vendor Basecoat
```

## Criterio de éxito

Misma lógica de negocio y mismos `name=""` de formularios; solo cambia presentación.
