/* ============================================================
   ATREE — Colour tokens
   Sourced directly from the ATREE Brand Guideline (2024).
   Primary palette:   green, rust, river-blue, lime-leaf
   Secondary palette: sage, deep-forest, earth-bark
   Neutrals carry a faint warm/olive cast for a grounded,
   community-rooted, earthy feel (vs. clinical cool greys).
   ============================================================ */

:root {
  /* ---- Brand palette (exact brand-book values) ---- */
  --atree-green:   #00933A;   /* primary — forest green, rgb(0,147,58)   */
  --atree-lime:    #95C11F;   /* leaf / lime accent, rgb(149,193,31)     */
  --atree-sage:    #72BB6F;   /* soft sage green, rgb(114,187,111)       */
  --atree-forest:  #0A4F37;   /* deep forest, rgb(10,79,55)              */
  --atree-rust:    #94311A;   /* terracotta / maroon, rgb(148,49,26)     */
  --atree-bark:    #532B15;   /* earth bark brown, rgb(83,43,21)         */
  --atree-river:   #307BBF;   /* water blue, rgb(48,123,191)             */
  --atree-gold:    #C9A20A;   /* harvest gold — photo-bg accent          */

  /* ---- Tints & shades (derived, harmonious) ---- */
  --atree-green-700:  #007A30;
  --atree-green-300:  #6FC58E;
  --atree-green-100:  #DCF0E2;
  --atree-lime-700:   #6E9111;
  --atree-lime-100:   #EEF6D6;
  --atree-river-700:  #265E92;
  --atree-river-100:  #DBE9F5;
  --atree-rust-700:   #722512;
  --atree-rust-100:   #F4E2DC;
  --atree-forest-900: #06321F;

  /* ---- Neutrals: warm earthen greys ---- */
  --white:    #ffffff;
  --paper:    #FBFBF7;   /* page background — warm paper */
  --ink-50:   #F4F5EF;
  --ink-100:  #E9EBE1;
  --ink-200:  #D6D9CB;
  --ink-300:  #B7BBAA;
  --ink-400:  #8E9381;
  --ink-500:  #686D5B;
  --ink-600:  #4C5142;
  --ink-700:  #353A2D;
  --ink-800:  #232719;
  --ink-900:  #14180E;   /* near-black, faint green-black */
  --black:    #0E120A;

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

  /* Surfaces & backgrounds */
  --color-bg:            var(--paper);
  --color-surface:       var(--white);
  --color-surface-sunken:var(--ink-50);
  --color-surface-inverse:var(--atree-forest);
  --color-surface-inverse-deep: var(--atree-forest-900);

  /* Text */
  --text-strong:  var(--ink-900);
  --text-body:    var(--ink-700);
  --text-muted:   var(--ink-500);
  --text-subtle:  var(--ink-400);
  --text-on-dark: var(--ink-50);
  --text-on-dark-muted: #AEC2B0;
  --text-link:    var(--atree-forest);

  /* Brand roles */
  --brand-primary:       var(--atree-forest);
  --brand-primary-hover: var(--atree-forest-900);
  --brand-accent:        var(--atree-lime);
  --brand-water:         var(--atree-river);
  --brand-earth:         var(--atree-rust);
  --brand-forest:        var(--atree-forest);

  /* Borders & lines */
  --border:        var(--ink-200);
  --border-strong: var(--ink-300);
  --border-inverse:rgba(255,255,255,0.18);

  /* Status */
  --status-success: var(--atree-green);
  --status-info:    var(--atree-river);
  --status-warning: var(--atree-gold);
  --status-danger:  var(--atree-rust);
  --status-success-bg: var(--atree-green-100);
  --status-info-bg:    var(--atree-river-100);
  --status-warning-bg: #F6ECC6;
  --status-danger-bg:  var(--atree-rust-100);

  /* Focus */
  --focus-ring: 0 0 0 3px rgba(10,79,55,0.38);
}
