/* ============================================================
   BASTYON · Color tokens
   Brand source (BASTYON-BRANDING.pdf):
     Background #f8f9fb · Foreground #0f2346
     Accent 1 #5bbd24 · Accent 2 #428a2f · Accent 3 #28563b
   ============================================================ */

:root {
  /* ---- Brand primitives ---------------------------------- */
  /* Navy (foreground / trust) */
  --navy-950: #07142b;
  --navy-900: #0a1a36;
  --navy-800: #0f2346;   /* brand foreground */
  --navy-700: #163058;
  --navy-600: #234174;
  --navy-500: #345a96;
  --navy-400: #5a7cb0;
  --navy-300: #8aa4c9;
  --navy-200: #c0d0e3;
  --navy-100: #e2eaf3;
  --navy-50:  #f1f5fa;

  /* Green (energy / democratize-tech accent) */
  --green-900: #1b3a26;
  --green-800: #28563b;  /* accent 3 */
  --green-700: #347047;
  --green-600: #428a2f;  /* accent 2 */
  --green-500: #5bbd24;  /* accent 1 — primary brand green */
  --green-400: #79cf48;
  --green-300: #9bdd74;
  --green-200: #c4eaa8;
  --green-100: #e3f5d4;
  --green-50:  #f2fbe9;

  /* Neutrals (cool, navy-tinted) */
  --white:     #ffffff;
  --neutral-50:  #f8f9fb;  /* brand background */
  --neutral-100: #eef1f6;
  --neutral-200: #e0e5ee;
  --neutral-300: #cdd5e1;
  --neutral-400: #a3aebf;
  --neutral-500: #71809a;
  --neutral-600: #515f78;
  --neutral-700: #394559;
  --neutral-800: #232c3c;
  --neutral-900: #141a26;

  /* Status (harmonized into the navy/green world) */
  --success-500: #5bbd24;
  --success-100: #e3f5d4;
  --warning-500: #e8a317;
  --warning-100: #fbeecb;
  --danger-500:  #d83a3a;
  --danger-100:  #f8dada;
  --info-500:    #345a96;
  --info-100:    #e2eaf3;

  /* ---- Semantic aliases ---------------------------------- */
  --color-bg:            var(--neutral-50);
  --color-bg-inverse:    var(--navy-800);
  --surface-card:        var(--white);
  --surface-raised:      var(--white);
  --surface-sunken:      var(--neutral-100);
  --surface-overlay:     rgba(15, 35, 70, 0.55);

  --text-primary:        var(--navy-800);
  --text-secondary:      var(--neutral-600);
  --text-muted:          var(--neutral-500);
  --text-inverse:        var(--white);
  --text-brand:          var(--green-600);
  --text-on-brand:       var(--white);
  --text-link:           var(--navy-600);

  --border-subtle:       var(--neutral-200);
  --border-default:      var(--neutral-300);
  --border-strong:       var(--navy-300);
  --border-focus:        var(--green-500);

  --brand-primary:       var(--green-500);
  --brand-primary-hover: var(--green-600);
  --brand-primary-press: var(--green-700);
  --brand-secondary:     var(--navy-800);
  --brand-secondary-hover: var(--navy-700);

  --focus-ring:          color-mix(in oklch, var(--green-500) 45%, transparent);
}
