/* ============================================================
   VIVO · COLOR TOKENS
   Púrpura is the non-negotiable brand anchor. Pair it with at
   most ONE secondary per composition. Support colors add the
   contrast the print palette lacks on screen.
   ============================================================ */
:root {
  /* — Brand anchor — */
  --vivo-purpura: #660099;        /* Pantone 2603 · always present */
  --vivo-purpura-apoio: #461e5f;  /* support · primary actions, sidebar */

  /* — Secondary (multicolor brand) — */
  --vivo-rosa: #eb3c7d;           /* Pantone 213 */
  --vivo-laranja: #ff9900;        /* Pantone 151 */
  --vivo-verde: #99cc33;          /* Pantone 376 */
  --vivo-azul: #0066cc;           /* Pantone 3005 */

  /* — Support (digital contrast variants) — */
  --vivo-rosa-apoio: #cd1e5a;     /* error / attention */
  --vivo-laranja-apoio: #fa6423;  /* warning */
  --vivo-verde-apoio: #32a04b;    /* success */
  --vivo-azul-apoio: #0055a0;     /* links / info */

  /* — Neutrals (roles fixed by the guide) — */
  --preto: #000000;               /* high-contrast text */
  --cinza-texto: #666666;         /* secondary text */
  --cinza-linha: #cccccc;         /* divider lines */
  --cinza-icone: #dddddd;         /* dividers / icon strokes */
  --cinza-disabled: #eeeeee;      /* disabled field */
  --cinza-hover: #f7f7f7;         /* list hover */
  --cinza-card: #f9f9f9;          /* page background between cards */
  --branco: #ffffff;              /* cards / page */

  /* — Gradients · one cor (anchor → support) — */
  --grad-marca: linear-gradient(135deg,#8e2de2 0%,#660099 52%,#eb3c7d 100%); /* @kind color */
  --grad-purpura: linear-gradient(135deg,#660099 0%,#461e5f 100%); /* @kind color */
  --grad-rosa: linear-gradient(135deg,#eb3c7d 0%,#cd1e5a 100%); /* @kind color */
  --grad-laranja: linear-gradient(135deg,#ffb300 0%,#fa6423 100%); /* @kind color */
  --grad-verde: linear-gradient(135deg,#99cc33 0%,#32a04b 100%); /* @kind color */
  --grad-azul: linear-gradient(135deg,#0066cc 0%,#0055a0 100%); /* @kind color */

  /* — Gradients · duas cores · púrpura 30% + cor (never verde) — */
  --grad-pr: linear-gradient(135deg,#660099 30%,#eb3c7d 100%); /* @kind color */
  --grad-pl: linear-gradient(135deg,#660099 30%,#ff9900 100%); /* @kind color */
  --grad-pa: linear-gradient(135deg,#660099 30%,#0066cc 100%); /* @kind color */

  /* ===== Semantic aliases ===== */
  --color-bg: var(--cinza-card);
  --color-surface: var(--branco);
  --color-surface-alt: var(--cinza-card);
  --text-strong: var(--preto);
  --text-body: #222222;
  --text-muted: var(--cinza-texto);
  --text-on-brand: var(--branco);

  --brand: var(--vivo-purpura);
  --brand-strong: var(--vivo-purpura-apoio);
  --action-primary: var(--vivo-purpura-apoio);
  --link: var(--vivo-azul-apoio);

  --feedback-success: var(--vivo-verde-apoio);
  --feedback-error: var(--vivo-rosa-apoio);
  --feedback-warning: var(--vivo-laranja-apoio);
  --feedback-info: var(--vivo-azul-apoio);

  --border-subtle: var(--cinza-icone);
  --border-strong: var(--cinza-linha);
  --field-disabled: var(--cinza-disabled);
  --surface-hover: var(--cinza-hover);
}
