IFTPV GEST

Design system · «Granit i Ambre»

La tinta granito es siempre estructura y el ámbar es siempre acento. Radio de 7 px, tipografía Hanken Grotesk, cifras tabulares y tablas densas. Todo el color viene de tokens semánticos o de las familias tint de negocio: ningún componente escribe una variante de color.

Capa 1 · Primitivos

Rampas físicas en OKLCH. No se consumen nunca desde los componentes de producto.

granite — estructura

50

100

200

300

400

500

600

700

800

900

950

amber — acento

50

100

200

300

400

500

600

700

800

900

950

parchment — fondos cálidos (claro)

50

100

200

Capa 2 · Semánticos

Lo que consumen Tailwind y shadcn. Cambian de valor con el tema, nunca de nombre.

background / foregroundbg-background text-foreground
card / card-foregroundbg-card text-card-foreground
primary / primary-foregroundbg-primary text-primary-foreground
secondary / secondary-foregroundbg-secondary text-secondary-foreground
muted / muted-foregroundbg-muted text-muted-foreground
accent / accent-foregroundbg-accent text-accent-foreground
accent-subtlebg-accent-subtle text-accent-subtle-foreground
destructive / destructive-foregroundbg-destructive text-destructive-foreground
surface-softbg-surface-soft text-foreground
surface-raisedbg-surface-raised text-foreground
borderbg-border text-foreground
ringbg-ring text-accent-foreground

Capa 3 · Familias de negocio

Cuatro slots por estado: surface · fg · border · strong. Se resuelven en ambos temas sin dark: manual.

sync

4 estado

Salud de la sincronización con el ERP del cliente.

SincronizadoPendienteDesactualizadoError
SincronizadoPendienteDesactualizadoError

device

4 estado

Ciclo de vida de cada terminal enrolado.

En líneaDesconectadoBloqueadoVinculando
En líneaDesconectadoBloqueadoVinculando

subscription

4 estado

Estado de facturación de la cuenta.

ActivaPruebaImpagoCancelada
ActivaPruebaImpagoCancelada

severity

3 estado

Nivel de los avisos del registro de incidencias.

InformaciónAvisoCrítico
InformaciónAvisoCrítico

KPI

Cifra grande con variación. Siempre tabular-nums para que las columnas no bailen.

MRR facturado

18.450,00 €

+4,2 % vs. mes anterior

Terminales activos

127

+6 vs. mes anterior

Colas de sync pendientes

38

+12 vs. mes anterior

Errores de sync (24 h)

3

−5 vs. mes anterior

Tabla densa · Terminales

Diez filas, alto de fila comprimido, estado por tint e importe alineado a la derecha.

Terminales enrolados

3 en cola
TerminalEstablecimientoEstadoÚltima conexiónVersiónFacturado (mes)
TPV-BCN-01Gràcia · Verdi 12En línea16 feb 2026, 09:594.8.24821,40 €
TPV-BCN-02Gràcia · Verdi 12En línea16 feb 2026, 09:594.8.23190,05 €
TPV-BCN-07Eixample · Aragó 480Desconectado16 feb 2026, 06:484.7.90,00 €
TPV-GIR-01Girona · Rambla 4En línea16 feb 2026, 09:594.8.212.744,90 €
TPV-GIR-02Girona · Rambla 4Vinculando4.8.20,00 €
TPV-TAR-03Tarragona · PortBloqueado14 feb 2026, 10:004.6.1851,75 €
TPV-LLE-01Lleida · Blondel 22En línea16 feb 2026, 09:584.8.12065,30 €
TPV-MAD-04Madrid · ChamberíEn línea16 feb 2026, 09:594.8.218.320,60 €
TPV-MAD-05Madrid · ChamberíDesconectado16 feb 2026, 09:094.8.07412,15 €
TPV-VLC-02València · RussafaEn línea16 feb 2026, 09:594.8.29634,00 €
Total59.040,15 €

Series de gráficos

Paleta categórica de seis series, dibujada con SVG a mano. Sin librerías de gráficos.

Volumen por mes

Ventas TPVTickets ERPReintentos
febmarabrmayjunjulago

Sincronizaciones por hora

1.284

1

2

3

4

5

6

Controles de formulario

Input, select nativo, checkbox y las cuatro variantes de botón con sus estados.

Reposo

Desactivados

Tamaños

El foco usa el anillo ámbar (--ring); navega con el tabulador para comprobarlo.