Saltar al contenido principal

Sistema de Diseño

Sistema de diseño completo para la aplicación backoffice de Percus.

Colores de Marca​

Paleta Principal​

Azul Profundo
#0F4C81
Color de marca principal, encabezados, navegación
Azul Cielo
#1E88E5
Elementos interactivos, enlaces, resaltados
Naranja Percus
#FF6B35
Llamados a la acción, estados activos, resaltados

Paleta Neutral​

Pizarra 900
#0F172A
Texto principal
Pizarra 700
#334155
Texto secundario
Pizarra 500
#64748B
Texto terciario, etiquetas
Pizarra 300
#CBD5E1
Bordes, divisores
Pizarra 100
#F1F5F9
Fondos, rellenos
Pizarra 50
#F8FAFC
Fondos de página

Colores Semánticos​

Éxito
#10B981
Estados de éxito, métricas positivas
Advertencia
#F59E0B
Advertencias, estados de precaución
Error
#EF4444
Errores, acciones destructivas
Información
#3B82F6
Mensajes informativos

Tipografía​

Familia Tipográfica​

Fuente Principal: Inter

font-family: 'Inter', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, sans-serif;

¿Por qué Inter?

  • Excelente legibilidad en todos los tamaños
  • Profesional y moderna
  • Gran soporte para números y datos
  • Ampliamente utilizada en aplicaciones SaaS

Escala Tipográfica​

NivelTamañoPesoAltura de líneaUso
Display2.5rem (40px)7001.2Títulos de página
H12rem (32px)7001.25Encabezados principales
H21.5rem (24px)6001.3Encabezados de sección
H31.25rem (20px)6001.4Encabezados de subsección
H41.125rem (18px)6001.4Títulos de tarjeta
Cuerpo Grande1rem (16px)4001.6Texto de cuerpo principal
Cuerpo0.875rem (14px)4001.5Texto de cuerpo secundario
Pequeño0.75rem (12px)5001.5Etiquetas, subtítulos

Sistema de Espaciado​

Utilizamos una unidad base de 8px para espaciado consistente:

TokenTamañoUso
xs0.25rem (4px)Espaciado ajustado
sm0.5rem (8px)Espacios pequeños
md1rem (16px)Espaciado predeterminado
lg1.5rem (24px)Espaciado de sección
xl2rem (32px)Espacios grandes
2xl3rem (48px)Secciones principales

Radio de Borde​

TokenTamañoUso
sm6pxBotones, insignias
md8pxInputs, tarjetas pequeñas
lg12pxTarjetas, paneles
xl16pxContenedores grandes
full9999pxPills, botones redondeados

Sombras​

/* Pequeña - Elevación sutil */
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);

/* Media - Tarjetas, dropdowns */
box-shadow: 0 4px 12px rgba(0, 0, 0, 0.15);

/* Grande - Modales, popovers */
box-shadow: 0 8px 24px rgba(0, 0, 0, 0.2);

/* Sombra acento naranja (estados hover) */
box-shadow: 0 4px 12px rgba(255, 107, 53, 0.2);

Componentes​

Botones​

Botón Principal​

background: #FF6B35;
color: white;
padding: 0.5rem 1rem;
border-radius: 6px;
font-weight: 600;
border: 1px solid #FF6B35;

Hover:

background: #E55A28;
box-shadow: 0 2px 8px rgba(255, 107, 53, 0.3);

Botón Secundario​

background: white;
color: #64748B;
padding: 0.5rem 1rem;
border-radius: 6px;
border: 1px solid #E2E8F0;

Hover:

border-color: #FF6B35;
color: #FF6B35;
background: #FFF5F1;

Tarjetas​

background: white;
border-radius: 12px;
padding: 1.5rem;
box-shadow: 0 1px 3px rgba(0, 0, 0, 0.1);
border-left: 3px solid #F1F5F9;
transition: all 0.2s;

Hover:

border-left-color: #FF6B35;
box-shadow: 0 4px 12px rgba(255, 107, 53, 0.15);

Insignias​

Insignias de Estado​

Activo (Producción):

background: #FFE8DD;
color: #C7440A;
border: 1px solid #FFCDB3;
padding: 0.25rem 0.75rem;
border-radius: 999px;
font-size: 0.75rem;
font-weight: 600;

Pruebas:

background: #DBEAFE;
color: #1E40AF;
padding: 0.25rem 0.75rem;
border-radius: 999px;

Anterior/Inactivo:

background: #F1F5F9;
color: #64748B;
padding: 0.25rem 0.75rem;
border-radius: 999px;

Campos de Entrada​

padding: 0.625rem 1rem;
border: 1px solid #E2E8F0;
border-radius: 8px;
font-size: 0.875rem;

Enfoque:

outline: none;
border-color: #FF6B35;
box-shadow: 0 0 0 3px rgba(255, 107, 53, 0.1);
  • Altura: 64px
  • Fondo: blanco
  • Borde inferior: 1px solid #E2E8F0
  • Posicionamiento fijo (sticky)

Pestañas de Proyecto​

  • Pestaña activa: Subrayado naranja (#FF6B35), texto en negrita
  • Hover: Texto azul profundo (#0F4C81)
  • Borde inferior: 2px para estado activo

Iconos y Emojis​

Utilizamos emojis para indicadores visuales rápidos:

  • 🟢 Producción/Activo
  • 🔵 Pruebas/Beta
  • ⚪ Anterior/Inactivo
  • 📊 Analíticas/Gráficos
  • 📧 Email
  • 🔔 Notificaciones
  • ↑ Crecimiento positivo
  • ↓ Cambio negativo

Accesibilidad​

Contraste de Color​

Todo el texto cumple con los estándares WCAG AA:

  • Texto de cuerpo: mínimo 4.5:1
  • Texto grande: mínimo 3:1
  • Elementos interactivos: Estados de enfoque claros

Estados de Enfoque​

Todos los elementos interactivos tienen indicadores de enfoque visibles usando resplandor naranja:

box-shadow: 0 0 0 3px rgba(255, 107, 53, 0.1);

Diseño Responsivo​

  • Enfoque mobile-first
  • Breakpoints: 640px, 768px, 1024px, 1280px
  • Objetivos táctiles mínimo 44x44px

Implementación​

Configuración de Tailwind CSS​

El backoffice utiliza Tailwind CSS con configuración personalizada:

module.exports = {
theme: {
extend: {
colors: {
'percus-blue': '#0F4C81',
'percus-sky': '#1E88E5',
'percus-orange': '#FF6B35',
},
fontFamily: {
sans: ['Inter', 'system-ui', 'sans-serif'],
},
},
},
}

Principios de Diseño​

  1. Claridad Primero - La información debe ser clara y escaneable
  2. Revelación Progresiva - Mostrar lo necesario, ocultar lo que no
  3. Patrones Consistentes - Acciones similares se ven similares
  4. Retroalimentación - Cada acción tiene una respuesta
  5. Denso en Datos - Optimizar para densidad de información sin desorden

Mockup de UI​

Ver el mockup interactivo: static/design/backoffice-simplified.html

El mockup muestra:

  • Página de Inicio: Vista general de estadísticas + cuadrícula de tarjetas de proyecto
  • Detalle de Proyecto - Plantillas: Tabla de gestión de versiones con indicadores Producción/Pruebas/Anterior
  • Detalle de Proyecto - Integración: Credenciales API y ejemplos de código
  • Detalle de Proyecto - Analíticas: Métricas específicas de campaña y gráficos