/* ===========================================================================
   RESA · Control de Cobros — TOKENS v4  "SKIN MARTA"
   Reskin al sistema visual del CRM de Expositores (la app de Marta):
   fondo frío gris-lavanda + glassmorfismo, tipografía Lufga (display + datos),
   acción en NEGRO tinta, marca terracota, acento suave azul polvo.
   La urgencia sigue siendo la ÚNICA escala de color del producto, ahora sobre
   la paleta semántica de Marta (rojo · ámbar · verde · gris).
   Única fuente de color y tipografía. Ningún hex fuera de aquí.
   =========================================================================== */
:root{
  /* ---- Superficies (frías) ---- */
  --bg:#e8eaf0;            /* base fría (el gradiente lo pinta el body) */
  --surface:#ffffff;       /* tarjeta / hoja */
  --surface-2:#fafbfc;     /* panel sutil */
  --surface-3:#f1f2f5;     /* hundido suave */
  --border:#e4e4e6;        /* hairline */
  --border-soft:#eeeef1;
  --border-strong:#dadbe0;
  --row-hover:#f6f7f9;     /* hover frío */

  /* ---- Tinta (fría azulada) ---- */
  --ink:#10141A;
  --ink-2:#33373f;
  --ink-3:#6a6e78;         /* metadatos — AA sobre surface */
  --ink-dark:#10141A;
  --ink-line:#33373f;
  --on-accent:#ffffff;
  --on-accent-80:rgba(255,255,255,.86);
  --on-accent-70:rgba(255,255,255,.70);
  --on-accent-24:rgba(255,255,255,.22);

  /* ---- Acento de ACCIÓN = negro tinta · acento SUAVE = azul polvo ---- */
  --accent:#10141A;        /* botón primario / chip activo / selección sólida */
  --accent-hover:#000000;
  --accent-soft:#eef2fb;   /* fondo de acento suave (azul polvo) */
  --accent-border:#d4e0f5;
  --accent-ink:#5f7fc0;    /* texto/enlace/detalle sobre soft */

  /* ---- Marca (terracota) — identidad, no acción ---- */
  --brand:#CE6969; --brand-soft:#fbeeee; --brand-deep:#a3403a; /* deep = AA en texto pequeño */

  /* ---- Rampa de URGENCIA → paleta semántica de Marta ---- */
  --ok:#9398a3;           --ok-bg:#f0f1f4;                         /* al día / recobros / sin fecha / neutral */
  --due-soon:#b07f36;     --due-soon-bg:#faf2e4;   --due-soon-border:#e8d4a8;  /* por vencer / hoy */
  --overdue:#c0564f;      --overdue-bg:#fbeeee;    --overdue-border:#e6c4c1;   /* vencida (crítico) */
  --paid:#3d9168;         --paid-bg:#e9f5ee;       --paid-border:#bfe0cd;      /* pagada */
  /* Tonos "deep" = texto AA (>=4.5:1) sobre el bg tintado del badge; el color vivo queda en el dot */
  --overdue-deep:#a3403a; --due-soon-deep:#8a6020; --paid-deep:#2f7050;

  /* ---- Antigüedad: rampa con saltos claros (por vencer = frío; luego "calienta") ---- */
  --age-pv:#cdd2da; --age-30:#e3bb5e; --age-60:#cf8f3e; --age-90:#c0564f; --age-90p:#9e3a35;

  /* ---- Velos / sombras (doble capa Marta) ---- */
  --scrim-soft:rgba(16,20,26,.24);
  --scrim:rgba(16,20,26,.42);
  --scrim-strong:rgba(16,20,26,.5);
  --shadow-sm:0 1px 2px rgba(16,20,26,.05);
  --shadow:0 1px 3px rgba(16,20,26,.05), 0 18px 40px -22px rgba(16,20,26,.22);
  --glass:rgba(255,255,255,.72);

  /* ---- Geometría (radios generosos Marta) ---- */
  --radius:14px; --radius-sm:10px;
  --row-py:7px;           /* densidad cómoda (apretada para muchas filas); compact 3px */

  /* ---- Tipografía — Lufga (display + UI), sin serif ---- */
  --serif:'Lufga','Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif; /* cifras-titular */
  --sans:'Lufga','Plus Jakarta Sans',-apple-system,BlinkMacSystemFont,'Segoe UI',sans-serif;  /* datos / UI */
  --mono:'Lufga','Plus Jakarta Sans',ui-monospace,Menlo,monospace;                            /* nº factura (con tnum) */
  --fs-cap:11px; --fs-sm:12px; --fs-xs:13px; --fs-base:14px; --fs-md:16px;
  --fs-lg:20px; --fs-kpi:30px; --fs-hero:52px;

  /* =========================================================================
     ALIAS DE COMPATIBILIDAD — los nombres antiguos apuntan a la paleta nueva.
     ========================================================================= */
  --text:var(--ink);  --muted:var(--ink-2);  --faint:var(--ink-3);
  --line:var(--border);  --line-2:var(--border-strong);  --accent-weak:var(--accent-soft);
  --pos:var(--paid);      --pos-bg:var(--paid-bg);
  --neg:var(--overdue);   --neg-bg:var(--overdue-bg);
  --crit:var(--due-soon); --crit-bg:var(--due-soon-bg);
  --neutral:var(--ok);    --neutral-bg:var(--ok-bg);
  --purple:var(--ok);     --purple-bg:var(--ok-bg);
  --vencida:var(--overdue);     --vencida-bg:var(--overdue-bg);
  --hoy:var(--due-soon);        --hoy-bg:var(--due-soon-bg);
  --porvencer:var(--due-soon);  --porvencer-bg:var(--due-soon-bg);
  --recobros:var(--ok);         --recobros-bg:var(--ok-bg);
  --sinfecha:var(--ok);         --sinfecha-bg:var(--ok-bg);
  --aldia:var(--ok);            --aldia-bg:var(--ok-bg);
  --pagada:var(--paid);         --pagada-bg:var(--paid-bg);
}

/* Cifras tabulares por defecto en toda la app (los números son el producto) */
body{font-feature-settings:"tnum" 1;}
