:root{
  /* ---- Primitivos ---- */
  --rmp-paper:#F4F4F1;
  --rmp-paper-2:#EDEDE9;
  --rmp-white:#FFFFFF;
  --rmp-ink:#0D0D0D;
  --rmp-ink-2:#3A3A37;
  --rmp-gray:#63635D;
  --rmp-volt:#D8FF3A;
  --rmp-volt-45:rgba(216,255,58,.45);
  --rmp-signal:#FF6B2D;         /* señal — naranja de seguridad */
  --rmp-signal-text:#BC460E;    /* señal legible sobre papel — 4.7:1 */
  --rmp-signal-soft:#FF8A5C;    /* señal suave sobre tinta — 8.4:1 */

  /* ---- Semánticos: superficie ---- */
  --surface-page:var(--rmp-paper);
  --surface-page-alt:var(--rmp-paper-2);
  --surface-card:var(--rmp-white);
  --surface-inverse:var(--rmp-ink);

  /* ---- Semánticos: texto ---- */
  --text-strong:var(--rmp-ink);
  --text-body:var(--rmp-ink-2);
  --text-muted:var(--rmp-gray);
  --text-on-inverse:var(--rmp-paper);
  --text-on-inverse-muted:rgba(244,244,241,.62);
  --text-alert:var(--rmp-signal-text);
  --text-alert-inverse:var(--rmp-signal-soft);

  /* ---- Semánticos: acento ---- */
  --accent:var(--rmp-volt);          /* un solo punto de atención por pieza */
  --accent-soft:var(--rmp-volt-45);
  --accent-on:var(--rmp-ink);        /* texto sobre volt: siempre tinta */
  --alert:var(--rmp-signal);         /* solo falla o desviación */
  /* Señal y volt son ambos cálidos: nunca van como rellenos contiguos
     del mismo tamaño. La señal manda en línea y texto; el volt en relleno. */

  /* ---- Semánticos: línea ---- */
  --line:rgba(13,13,13,.16);
  --line-strong:var(--rmp-ink);
  --line-inverse:rgba(244,244,241,.18);
  --line-dash:repeating-linear-gradient(90deg,rgba(13,13,13,.5) 0 3px,transparent 3px 7px);

  /* ---- Series de datos ---- */
  --data-ref:rgba(13,13,13,.4);          /* serie de referencia sobre papel */
  --data-ref-inverse:rgba(244,244,241,.4);
  --data-hero:var(--rmp-volt);           /* la serie que importa */
  --data-l1:rgba(244,244,241,.12);
  --data-l2:rgba(244,244,241,.3);
  --data-l3:var(--rmp-volt-45);
  --data-l4:var(--rmp-volt);
}

[data-theme="inverse"]{
  --surface-page:var(--rmp-ink);
  --surface-card:var(--rmp-ink);
  --text-strong:var(--rmp-paper);
  --text-body:rgba(244,244,241,.78);
  --text-muted:rgba(244,244,241,.62);
  --text-alert:var(--rmp-signal-soft);
  --line:rgba(244,244,241,.18);
  --line-strong:var(--rmp-paper);
  --data-ref:rgba(244,244,241,.4);
}
