/* ============================================================
   Dal Cero — Color tokens
   Source: Manual da Marca (Fev/2025) + 2026 palette role spec.

   ROLE MAP (the brand's own naming → usage):
     Navy      #041F47  fundos escuros, cabeçalhos, rodapés
     Escuro    #003B91  títulos, bordas, BOTÕES primários
     Vibrante  #0043D8  acentos, destaques PONTUAIS (nunca fundo principal)
     Médio     #4399FF  subtítulos, ícones, links
     Claro     #177FE5  separadores, bordas secundárias
     Cinza     #EAEAEA  fundos neutros / slides
     Âmbar     #E8B461  acentos em títulos, numerais de destaque, CTAs especiais
     Branco    #FFFFFF  texto sobre fundo escuro, fundos limpos
     Tinta     #0D0D0D  corpo de texto
   Regra: azul SEMPRE predominante. Âmbar é acento, nunca fundo principal.
   Verde aparece pontualmente em CTAs de conversão e badges de status.
   ============================================================ */

:root {
  /* ---- Brand blues (named by the manual's roles) -------- */
  --dc-navy:         #041f47;  /* dark fields, headers, footers */
  --dc-blue-deep:    #003b91;  /* titles, borders, primary buttons */
  --dc-blue-vibrant: #0043d8;  /* punctual accents / highlights only */
  --dc-blue-medium:  #4399ff;  /* subtitles, icons, links */
  --dc-blue-clear:   #177fe5;  /* separators, secondary borders */

  /* Back-compat aliases (older tokens kept pointing sensibly) */
  --dc-blue:         #003b91;  /* primary action blue = Escuro */
  --dc-blue-light:   #4399ff;  /* = Médio */

  /* Darker navy for pressed states */
  --dc-navy-deep:    #02132f;

  /* ---- Warm accent (gold/amber) — accent only ----------- */
  --dc-gold:         #e8b461;
  --dc-gold-strong:  #d79a3e;  /* for text/hover where contrast matters */

  /* ---- Conversion green (CTAs de conversão + status) ---- */
  --dc-green:        #1e8e63;
  --dc-green-hover:  #176f4e;

  /* ---- Ink & neutral ramp ------------------------------- */
  --dc-ink:          #0d0d0d;  /* presentations / slides body text */
  --dc-ink-soft:     #20262e;  /* softer tinta for dense UI body text */
  --dc-black:        #000000;
  --dc-white:        #ffffff;
  --dc-gray-50:      #f6f7f9;
  --dc-gray-100:     #eaeaea;  /* PANTONE Cool Gray 1 C — brand gray */
  --dc-gray-200:     #d8dade;
  --dc-gray-300:     #bcc0c7;
  --dc-gray-400:     #9aa0aa;
  --dc-gray-500:     #6f7681;
  --dc-gray-600:     #4d535d;
  --dc-gray-700:     #343a44;
  --dc-gray-800:     #1f242d;
  --dc-gray-900:     #11151b;

  /* ---- Blue tints (surfaces, soft fills) ---------------- */
  --dc-blue-50:      #eef5fe;
  --dc-blue-100:     #d6e8fd;
  --dc-blue-200:     #aed0fb;

  /* ---- Semantic status ---------------------------------- */
  --dc-success:      #1e8e63;
  --dc-success-soft: #e4f4ec;
  --dc-warning:      #e8b461;  /* reuses brand gold */
  --dc-warning-soft: #fbf1de;
  --dc-danger:       #d0463b;
  --dc-danger-soft:  #fbe9e7;
  --dc-info:         #177fe5;
  --dc-info-soft:    #eef5fe;

  /* ============================================================
     Semantic aliases — author UI against THESE, not raw hexes
     ============================================================ */

  /* Surfaces & backgrounds (blue predominant; navy for dark) */
  --surface-page:         var(--dc-gray-100);  /* neutral slide/page bg #EAEAEA */
  --surface-card:         var(--dc-white);
  --surface-sunken:       var(--dc-gray-100);
  --surface-inverse:      var(--dc-navy);       /* headers, footers, dark fields */
  --surface-brand:        var(--dc-blue-deep);  /* predominant brand blue */
  --surface-brand-strong: var(--dc-blue-vibrant); /* accent block — use sparingly */

  /* Text */
  --text-strong:    var(--dc-blue-deep);  /* títulos */
  --text-body:      var(--dc-ink-soft);   /* UI body — softer tinta (#0D0D0D reserved for slides) */
  --text-muted:     var(--dc-gray-500);
  --text-subtle:    var(--dc-gray-400);
  --text-on-brand:  var(--dc-white);
  --text-on-dark:   var(--dc-gray-100);
  --text-link:      var(--dc-blue-medium); /* links = Médio */
  --text-accent:    var(--dc-blue-medium); /* subtítulos = Médio */

  /* Borders & dividers */
  --border-subtle:  var(--dc-gray-200);
  --border-default: var(--dc-gray-300);
  --border-strong:  var(--dc-gray-400);
  --border-brand:   var(--dc-blue-deep);    /* primary borders = Escuro */
  --border-separator: var(--dc-blue-clear); /* separators = Claro */

  /* Interactive (primary action = Azul Escuro) */
  --action-bg:          var(--dc-blue-deep);
  --action-bg-hover:    var(--dc-navy);
  --action-bg-active:   var(--dc-navy-deep);
  --action-fg:          var(--dc-white);
  --focus-ring:         var(--dc-blue-medium);

  /* Conversion action (green) + special accent (amber) */
  --action-conversion-bg:       var(--dc-green);
  --action-conversion-bg-hover: var(--dc-green-hover);
  --accent-amber:               var(--dc-gold);
}
