/* Willeasy — Color tokens.
   Base brand palette (web) + derived slide/UI colors. All pairings WCAG 2.1 verified.
   Accessibility rule: white on primary #00b7fc = 2.8:1 → NOT valid for normal text.
   Use dark text #131313 on azure, or white only on large/bold text. */
:root {
  /* ---- Brand base ---- */
  --we-azure: #00b7fc;        /* primario Willeasy */
  --we-yellow: #ffcd03;       /* CTA / badge / callout */
  --we-pink: #ff4d73;         /* enfasi / impatto */
  --we-ink: #131313;          /* nero Willeasy (non #000) */
  --we-white: #ffffff;

  /* ---- Derived / support ---- */
  --we-azure-dark: #0090d4;   /* azzurro scurito ~20% — testo colorato >7:1 su bianco */
  --we-azure-light: #5dd3ff;  /* azzurro schiarito — testo colorato su scuro */
  --we-pink-dark: #c8003d;    /* rosa scurito — testo enfasi su bianco (6.8:1) */
  --we-yellow-muted: #e6b800; /* giallo hover / su scuro */

  /* ---- Neutral scale ---- */
  --we-ink-2: #353535;        /* testo secondario su chiaro (10.5:1) */
  --we-gray-600: #5a5a5a;
  --we-gray-400: #a8a8a8;     /* muted su scuro (6.5:1) */
  --we-gray-200: #d9d9d9;
  --we-gray-100: #f2f2f2;
  --we-bg-alt: #f2f9ff;       /* tinta azzurro diluita — sezioni di respiro */
  --we-bg-section: #f7f7f7;   /* grigio neutro — sezioni tecniche */
  --we-border: #d0eeff;       /* azzurro diluito — bordi/separatori */
  --we-border-neutral: #e4e4e4;

  /* ---- Dark surfaces ---- */
  --we-dark-bg: #131313;
  --we-dark-surface: #1e1e1e;
  --we-dark-surface-2: #2a2a2a;
  --we-dark-border: #2d2d2d;

  /* ---- Semantic aliases (light default) ---- */
  --color-primary: var(--we-azure);
  --color-primary-hover: var(--we-azure-dark);
  --color-cta: var(--we-yellow);
  --color-cta-hover: var(--we-yellow-muted);
  --color-accent: var(--we-pink);

  --text-body: var(--we-ink);
  --text-muted: var(--we-ink-2);
  --text-on-primary: var(--we-ink);       /* dark text on azure — accessible */
  --text-on-cta: var(--we-ink);
  --text-link: var(--we-azure-dark);      /* 7.4:1 on white */
  --text-link-hover: var(--we-azure);

  --surface-page: var(--we-white);
  --surface-alt: var(--we-bg-alt);
  --surface-section: var(--we-bg-section);
  --surface-card: var(--we-white);
  --border-subtle: var(--we-border-neutral);
  --border-brand: var(--we-border);

  /* ---- Feedback ---- */
  --color-success: #1a8a4a;
  --color-warning: var(--we-yellow-muted);
  --color-danger: var(--we-pink-dark);
  --color-info: var(--we-azure-dark);
  --focus-ring: var(--we-azure-dark);     /* high-contrast focus */
}
