/* Prosumia CRM — typography. Roboto on a 4pt grid; the file's rule is
   "font sizes may vary, line-height is a multiple of 8" (page: Tipografía).
   Every size/weight/line-height below is transcribed from that page's table. */
:root{
  /* REGLA DE FAMILIA (consolidación v1.2, resuelve el conflicto Figma vs manual 2026):
     --prsm-font-brand (Poppins)  → títulos de PÁGINA y de SECCIÓN (h1-h4) y el
       sufijo de producto del lockup. Es la voz de la marca.
     --prsm-font-core (Roboto)    → toda la INTERFAZ y todos los DATOS: títulos de
       card (h5) para abajo, nav, labels, botones, tablas, métricas.
     --prsm-font-mono (Roboto Mono) → IDs, slugs, montos en columna, código.
     Nunca al revés: Poppins dentro de un control o de una celda es un error.
     OJO: el paquete de marca no trae Poppins Black, así que h1/h2 pasan de 900 a
     700. Si se quiere el peso 900 en títulos hay que pedir el archivo. */
  --prsm-font-core:"Roboto",-apple-system,BlinkMacSystemFont,"Segoe UI","Helvetica Neue",Arial,sans-serif;
  --prsm-font-brand:"Poppins","Roboto",-apple-system,sans-serif;
  /* HUECO DE ASSET: el paquete de marca todavía no trae Roboto Mono. Hasta que el
     archivo esté en assets/fonts/, la pila cae en la mono del sistema. */
  --prsm-font-mono:"Roboto Mono",ui-monospace,"SF Mono",Menlo,Consolas,monospace;

  --prsm-weight-light:300;
  --prsm-weight-regular:400;
  --prsm-weight-medium:500;
  --prsm-weight-semibold:600;
  --prsm-weight-bold:700;
  --prsm-weight-black:900;

  /* H1 / 56-60 Black · H1 small / 48-52 Black */
  --prsm-h1-size:56px;      --prsm-h1-line:60px;
  --prsm-h1-sm-size:48px;   --prsm-h1-sm-line:52px;
  /* H2 / 40-44 Black — títulos de sección */
  --prsm-h2-size:40px;      --prsm-h2-line:44px;
  /* H3 / 36-38 Semibold (also authored in Light) — subsección */
  --prsm-h3-size:36px;      --prsm-h3-line:38px;
  /* H4 / 32-34 Semibold — encabezados secundarios */
  --prsm-h4-size:32px;      --prsm-h4-line:34px;
  /* H5 / 24-34 Bold */
  --prsm-h5-size:24px;      --prsm-h5-line:34px;
  /* Subhead / 20-24 Regular · Bold */
  --prsm-subhead-size:20px; --prsm-subhead-line:24px;
  /* Body / 16-20 Regular · Semibold · Bold */
  --prsm-body-size:16px;    --prsm-body-line:20px;
  /* Body en UI densa (labels de campo, placeholders) */
  --prsm-body-ui-size:16px; --prsm-body-ui-line:24px;
  --prsm-label-size:16px;   --prsm-label-line:22px;
  /* Nav / 17-32 Regular — ítems de la barra superior */
  --prsm-nav-size:17px;     --prsm-nav-line:32px;
  /* Small / 12-16 Regular · Medium — notas, tooltips, mensajes de campo */
  --prsm-small-size:12px;   --prsm-small-line:16px;
  --prsm-small-tracking:0.4px;
  /* Button label / 20 Bold (grande) · 18 Bold · 18-24 Medium (botón base) */
  --prsm-button-size:18px;  --prsm-button-line:24px;
  --prsm-button-lg-size:20px;
  /* Link text / 12 Medium */
  --prsm-link-size:12px;    --prsm-link-line:16px;

  /* ---- Tier denso (consolidación v1.2) ----
     El archivo no tenía nada entre 12 y 16, así que toda la UI densa colapsaba en
     12px. La escala de KARMA se normaliza acá: 14 cuerpo, 12 tabla y metadato,
     11 SÓLO en labels en mayúsculas (su altura de x lo sostiene). El paso de 13px
     no se incorpora: queda absorbido por el 14. */
  --prsm-dense-body-size:14px;   --prsm-dense-body-line:20px;  /* cuerpo, celda ancha, valor */
  --prsm-dense-size:12px;        --prsm-dense-line:16px;       /* celda de tabla, metadato, chip */
  --prsm-dense-lead-size:16px;   --prsm-dense-lead-line:22px;  /* título de card densa */
  --prsm-dense-kpi-size:28px;    --prsm-dense-kpi-line:32px;   /* valor de KPI */
  --prsm-dense-kpi-lg-size:32px; --prsm-dense-kpi-lg-line:36px;/* KPI destacado */
  /* Micro-label: 11px permitido ÚNICAMENTE en mayúsculas con este tracking.
     En caja baja el piso del sistema es 12px, sin excepción. */
  --prsm-micro-size:11px;        --prsm-micro-line:16px;
  --prsm-micro-tracking:0.6px; /* @kind other */
  /* Números: toda columna, monto, porcentaje y KPI va tabular, siempre. */
  --prsm-numeric:tabular-nums; /* @kind other */
  /* Tracking usado en navbar, buscador y tags */
  --prsm-tracking-tight:-0.017em;
}
/* h1-h4: títulos de página y sección → Poppins (font-brand) */
.prsm-h1{font:var(--prsm-weight-bold) var(--prsm-h1-size)/var(--prsm-h1-line) var(--prsm-font-brand);color:var(--prsm-text-primary);margin:0}
.prsm-h2{font:var(--prsm-weight-bold) var(--prsm-h2-size)/var(--prsm-h2-line) var(--prsm-font-brand);color:var(--prsm-text-primary);margin:0}
.prsm-h3{font:var(--prsm-weight-semibold) var(--prsm-h3-size)/var(--prsm-h3-line) var(--prsm-font-brand);color:var(--prsm-text-primary);margin:0}
.prsm-h4{font:var(--prsm-weight-semibold) var(--prsm-h4-size)/var(--prsm-h4-line) var(--prsm-font-brand);color:var(--prsm-text-primary);margin:0}
.prsm-h5{font:var(--prsm-weight-bold) var(--prsm-h5-size)/var(--prsm-h5-line) var(--prsm-font-core);color:var(--prsm-text-primary);margin:0}
.prsm-subhead{font:var(--prsm-weight-regular) var(--prsm-subhead-size)/var(--prsm-subhead-line) var(--prsm-font-core);color:var(--prsm-text-secondary);margin:0}
.prsm-body{font:var(--prsm-weight-regular) var(--prsm-body-size)/var(--prsm-body-line) var(--prsm-font-core);color:var(--prsm-text-primary);margin:0}
.prsm-small{font:var(--prsm-weight-regular) var(--prsm-small-size)/var(--prsm-small-line) var(--prsm-font-core);letter-spacing:var(--prsm-small-tracking);color:var(--prsm-text-supporting);margin:0}
/* h5 y abajo: interfaz → Roboto (font-core) */
.prsm-dense-lead{font:var(--prsm-weight-medium) var(--prsm-dense-lead-size)/var(--prsm-dense-lead-line) var(--prsm-font-core);color:var(--prsm-text-primary);margin:0}
.prsm-dense-body{font:var(--prsm-weight-regular) var(--prsm-dense-body-size)/var(--prsm-dense-body-line) var(--prsm-font-core);color:var(--prsm-text-primary);margin:0}
.prsm-dense{font:var(--prsm-weight-regular) var(--prsm-dense-size)/var(--prsm-dense-line) var(--prsm-font-core);color:var(--prsm-text-secondary);margin:0}
.prsm-micro{font:var(--prsm-weight-medium) var(--prsm-micro-size)/var(--prsm-micro-line) var(--prsm-font-core);letter-spacing:var(--prsm-micro-tracking);text-transform:uppercase;color:var(--prsm-text-tertiary);margin:0}
.prsm-kpi{font:var(--prsm-weight-bold) var(--prsm-dense-kpi-size)/var(--prsm-dense-kpi-line) var(--prsm-font-core);font-variant-numeric:var(--prsm-numeric);color:var(--prsm-text-primary);margin:0}
.prsm-mono{font-family:var(--prsm-font-mono);font-variant-numeric:var(--prsm-numeric)}
.prsm-num{font-variant-numeric:var(--prsm-numeric);text-align:right}
.prsm-truncate{min-width:0;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.prsm-clamp-2{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;text-wrap:pretty}
