/* ============================================================
   GC — Color Tokens
   Derived from the GC corporate mark: a blue gradient flame
   (cyan → royal → deep navy) with a red droplet core.
   ============================================================ */

:root {
  /* ---- Brand: GC Blue (primary corporate blue) ---- */
  --gc-blue-900: #002A5C; /* deep navy — flame base, dark surfaces */
  --gc-blue-800: #003B82;
  --gc-blue-700: #0F52A8; /* PRIMARY — the "GC" wordmark blue */
  --gc-blue-600: #0F6FCB;
  --gc-blue-500: #1488D6; /* bright corporate blue */
  --gc-blue-400: #46A6E4;
  --gc-blue-300: #82C4EE;
  --gc-blue-200: #BBDEF6;
  --gc-blue-100: #E3F1FB;
  --gc-blue-50:  #F2F8FD;

  /* ---- Brand: GC Cyan (top of the flame, energy/innovation) ---- */
  --gc-cyan-600: #0093C9;
  --gc-cyan-500: #00AEEF; /* signature sky/cyan accent */
  --gc-cyan-300: #6FD0F4;
  --gc-cyan-100: #D6F1FC;

  /* ---- Brand: GC Red (droplet core, alerts & energy accents) ---- */
  --gc-red-700: #B5170F;
  --gc-red-600: #E2231A; /* signature red */
  --gc-red-500: #F0453D;
  --gc-red-100: #FDE5E4;

  /* ---- Brand: GC Green (Green & Bio / sustainability) ---- */
  --gc-green-700: #2E8B3D;
  --gc-green-600: #43B02A; /* sustainability green */
  --gc-green-500: #62C24A;
  --gc-green-100: #E6F6E2;

  /* ---- Supporting: amber (in-progress / caution) ---- */
  --gc-amber-600: #E8941A;
  --gc-amber-500: #F6A823;
  --gc-amber-100: #FCEFD6;

  /* ---- Neutrals (cool gray, tuned to the blue brand) ---- */
  --gc-gray-950: #0E141B;
  --gc-gray-900: #18222E;
  --gc-gray-800: #28333F;
  --gc-gray-700: #3D4956;
  --gc-gray-600: #566372;
  --gc-gray-500: #74808E;
  --gc-gray-400: #97A2AE;
  --gc-gray-300: #C2CAD2;
  --gc-gray-200: #DEE3E8;
  --gc-gray-150: #E8ECF0;
  --gc-gray-100: #F1F4F7;
  --gc-gray-50:  #F7F9FB;
  --gc-white:    #FFFFFF;

  /* ============================================================
     Semantic aliases — reference these in components, not raw scale
     ============================================================ */

  /* Brand */
  --color-primary:        var(--gc-blue-700);
  --color-primary-hover:  var(--gc-blue-800);
  --color-primary-active: var(--gc-blue-900);
  --color-primary-soft:   var(--gc-blue-100);
  --color-accent:         var(--gc-cyan-500);
  --color-accent-soft:    var(--gc-cyan-100);

  /* Text */
  --text-strong:    var(--gc-gray-950);
  --text-body:      var(--gc-gray-800);
  --text-muted:     var(--gc-gray-600);
  --text-subtle:    var(--gc-gray-500);
  --text-on-brand:  var(--gc-white);
  --text-link:      var(--gc-blue-700);

  /* Surfaces */
  --surface-page:    var(--gc-gray-50);
  --surface-card:    var(--gc-white);
  --surface-sunken:  var(--gc-gray-100);
  --surface-raised:  var(--gc-white);
  --surface-inverse: var(--gc-blue-900);
  --surface-brand:   var(--gc-blue-700);

  /* Borders & dividers */
  --border-subtle:  var(--gc-gray-200);
  --border-default: var(--gc-gray-300);
  --border-strong:  var(--gc-gray-400);
  --border-brand:   var(--gc-blue-700);

  /* Status / semantic */
  --status-success:      var(--gc-green-600);
  --status-success-soft: var(--gc-green-100);
  --status-warning:      var(--gc-amber-500);
  --status-warning-soft: var(--gc-amber-100);
  --status-danger:       var(--gc-red-600);
  --status-danger-soft:  var(--gc-red-100);
  --status-info:         var(--gc-cyan-500);
  --status-info-soft:    var(--gc-cyan-100);

  /* Focus ring */
  --focus-ring: var(--gc-cyan-500);
}
