SURCO · 08-design-system.md · 10 de 22

En esta página 1. Fundamentos 0%

08 — Design system — SURCO

1. Fundamentos

CapaValor
Nombre DSSURCO UI (L2 vertical slice)
PrincipioClaridad operativa + calidez de finca
PlataformasWeb responsive 360–1280+
ImplementaciónTailwind tokens + componentes de página (no lib publicada)

2. Color tokens

Marca (fuente de verdad del caso)

TokenHexUso
color.bg.bone#F4F0E6Background app/marketing
color.surface#FFFFFFCards, header app
color.leaf#3D5C3APrimary
color.leaf.strong#2A4A32Hover primary
color.leaf.deep#1B3A2AFooter, ink brand
color.straw#C4A35AEyebrow, acentos
color.border#D9D2C4Bordes
color.ink#1B3A2A / near-black UITexto
color.ink.muted#6B655CSecundario
color.danger#B91C1C (aprox red-700)Errores
color.primary.softtinte leaf claroBadges, chips

Mapeo Tailwind app

ClaseValor implementado
bg-bg#F3F0E8
bg-surface#FFFFFF
text-ink / ink-muted#1A1814 / #6B655C
primary / primary-soft / primary-strong#3A5A40 / #E2E8E1 / #2A4230
straw#C4A574
border-border#E0D9CC

3. Tipografía

TokenFamiliaFallback
font.displayLiterataGeorgia, serif
font.sansManropesystem-ui, sans-serif
EstiloSpec
Display xlLiterata 36–48/600, leading tight
TitleLiterata 28–32/600
BodyManrope 16/400–500, leading relaxed
LabelManrope 11–12/700 uppercase o tracking wide
ButtonManrope 14/600

4. Espaciado y radio

TokenValor
page padding x16–24px
section y40–56px
card padding16–24px
gap grid12–16px
radius.card16–20px (rounded-2xl)
radius.pill9999px (rounded-full)
header height64–72px

5. Componentes

5.1 Botones

VarianteEstiloUso
Primarybg primary, text white, pillCTA principal, submit, + Tarea
Secondaryborder border, bg surface, pill“Soy técnico”, secundarios
Ghost/texttext muted, hover inkEntrar, Salir

Estados: default · hover (strong) · disabled (opacidad) · focus visible ring.

5.2 Badges de estado

StatusLabelEstilo sugerido
PENDINGPendientesoft primary / muted
ACTIVEActivasoft + acento straw en meta
DONEHechasoft primary
CANCELLEDCanceladamuted / borde dashed opcional

Regla a11y: no codificar solo con color; siempre texto del label.

5.3 Cards de tarea

Estructura:

  1. Meta: code · parcel.name (straw, xs bold)
  2. Título (lg semibold)
  3. Cultivo · hectáreas
  4. Vence + nombre contraparte
  5. Badge status (trailing)

Interacción: bloque entero es enlace a detalle; hover border primary/40.

5.4 Stats tiles

Grid 2×2 mobile / 4 col desktop: TOTAL, ABIERTAS, ACTIVAS, HECHAS.
Número en Literata 2xl; label 11px bold muted.

5.5 Forms

ElementoSpec
Labelsm semibold
Inputborder, radius xl/2xl, padding cómodo touch
Errortext red-700 bajo campo o banner
Submitprimary full o auto

Campos new task: title, parcelName, crop, dueAt, notes, technicianEmail.

5.6 Header app

Logo display · badge rol · nombre · (+ Tarea) · Salir.

5.7 Empty state

Borde dashed, texto centrado, CTA “Crear la primera →” si FARMER.

5.8 Error inline

Párrafo o banner; mensaje accionable (“No se pudieron cargar las tareas.”).

6. Iconografía

v1 sin set de iconos denso. Preferir:

  • Texto y tipografía
  • Badges
  • Emojis no usados en UI profesional

Si se añaden iconos: stroke 1.5–2, color ink/primary, 20–24px.

7. Elevación

NivelUso
0Fondo bone
1Card con border
2Hero image shadow-lg

8. Breakpoints (orientativos Tailwind)

NombreAnchoComportamiento
default<640stack, stats 2 col
sm≥640padding mayor
md≥768home 2 col; stats 4 col

Touch targets: ≥44px en CTAs móviles (doc 10).

9. Do / Don’t

DoDon’t
Usar straw solo en meta/eyebrowsUsar straw como fondo masivo de página
Mantener pills en CTAsBotones square material genéricos
Literata en títulos de secciónLiterata en body largo de form
Estados con label textualSolo verde/rojo sin texto
Microcopy de fincaJerga “sprint”, “ticket backlog”

10. Criterios de aceptación DS

  1. Tokens documentados y reflejados en Tailwind.
  2. Primary contrast aceptable sobre blanco (leaf oscuro).
  3. Empty y error reutilizan patrones de card/borde.
  4. Paper B-0 y UI Angular no divergen en familia tipográfica ni clima de color.