/* ============================================================
   GridNorth Studio — Color Tokens
   Palette drawn directly from the logo: confident navy, a
   growth-signaling green, a premium bronze-gold accent, and a
   warm ivory canvas. Reads professional, trustworthy, considered.

   Proportion rule: lead with ivory + navy. Green signals action
   and growth; gold is reserved for premium highlights & emphasis.
   ============================================================ */

:root {
  /* ---- Brand core ---------------------------------------- */
  --navy:        #0D223A; /* Midnight Navy   — primary          */
  --green:       #075349; /* Forest Green    — primary accent   */
  --gold:        #B49967; /* Bronze Gold     — secondary accent */
  --gold-light:  #C3A878; /* Gold Light      — accent tint      */
  --ivory:       #F6EAD9; /* Ivory Cream     — canvas           */
  --ivory-soft:  #FDF3E2; /* Soft Ivory      — surface/highlight*/
  --white:       #FFFFFF;

  /* Tints & shades, derived for hover / fills / wash ------- */
  --navy-700:    #14304F; /* lighter navy — hover on navy       */
  --navy-900:    #081827; /* darker navy  — pressed / deep bg   */
  --green-700:   #0A6457; /* lighter green — hover              */
  --green-900:   #053B34; /* darker green  — pressed            */
  --green-wash:  #E7EFEC; /* faint green fill — success surface */
  --gold-wash:   #F3E9D6; /* faint gold fill  — premium surface */
  --navy-wash:   #E8ECF1; /* faint navy fill  — info surface    */

  /* ---- Neutral ramp (Ink) — text, lines & UI ------------- */
  --ink-900:     #1B2735; /* deepest ink — strong body text     */
  --ink-700:     #445063; /* secondary text                     */
  --ink-500:     #7A8699; /* muted text, placeholders           */
  --ink-300:     #C7CDD7; /* borders, dividers                  */
  --ink-100:     #EEF1F5; /* hairlines, subtle fills            */

  /* ---- Semantic status (RAG) ----------------------------- *
   * Brand green carries "on track / go". Amber & brick red are
   * derived to harmonize with the palette for status only —
   * never as decorative brand color.                          */
  --status-success:    #075349; /* on track / complete (brand green) */
  --status-success-bg: #E7EFEC;
  --status-warning:    #B8860B; /* at risk / attention (amber-gold)  */
  --status-warning-bg: #F7EFD9;
  --status-danger:     #A23B2E; /* off track / overdue (brick red)   */
  --status-danger-bg:  #F5E4E1;
  --status-neutral:    #7A8699; /* not started / n/a                 */
  --status-neutral-bg: #EEF1F5;

  /* ---- Semantic aliases ---------------------------------- */
  --text-strong:    var(--navy);      /* headlines, key figures   */
  --text-body:      var(--ink-900);   /* default paragraph copy   */
  --text-muted:     var(--ink-500);   /* captions, meta, hints    */
  --text-on-dark:   var(--ivory-soft);/* text on navy / green     */
  --text-on-dark-muted: #9FB0C2;      /* muted text on navy       */
  --text-link:      var(--green);     /* inline links / actions   */

  --surface-canvas:  var(--ivory);    /* page background          */
  --surface-card:    var(--white);    /* cards, sheets, tables    */
  --surface-raised:  var(--ivory-soft);/* raised / highlight tile */
  --surface-inverse: var(--navy);     /* dark sections, sidebars  */
  --surface-inverse-2: var(--green);  /* alt dark accent surface  */

  --border-subtle:  var(--ink-100);   /* hairline inside cards    */
  --border-default: var(--ink-300);   /* inputs, dividers, table  */
  --border-strong:  var(--ink-500);   /* emphasized borders       */

  --accent-action:  var(--green);     /* primary action / growth  */
  --accent-premium: var(--gold);      /* premium emphasis / gold   */

  --focus-ring:     rgba(7, 83, 73, 0.35); /* forest-green focus  */
}
