/* Clear Plan — color tokens.
   Pine green = trust, calm, savings (deliberately NOT insurance-blue).
   Warm stone neutrals = paper, plain documents, clarity.
   Brass gold = "smarter savings" highlight, used sparingly. */

:root {
  /* ---- Base ramps ---- */

  /* Pine (brand) */
  --green-25:  #F6FAF7;
  --green-50:  #EDF5EF;
  --green-100: #DCEBE1;
  --green-200: #C0DCCB;
  --green-300: #94C2A8;
  --green-400: #62A183;
  --green-500: #3F8266;
  --green-600: #2C6950;
  --green-700: #235440;
  --green-800: #1C4334;
  --green-900: #16352A;
  --green-950: #0E231C;

  /* Stone (warm neutrals) */
  --neutral-0:   #FFFFFF;
  --neutral-25:  #FBFAF7;
  --neutral-50:  #F5F4EF;
  --neutral-100: #EBE9E2;
  --neutral-200: #DBD8CF;
  --neutral-300: #C2BFB4;
  --neutral-400: #A09D92;
  --neutral-500: #7F7C72;
  --neutral-600: #65625A;
  --neutral-700: #4D4B45;
  --neutral-800: #383732;
  --neutral-900: #252420;
  --neutral-950: #181714;

  /* Brass (savings accent — sparing) */
  --gold-50:  #FAF3E3;
  --gold-100: #F3E6C8;
  --gold-300: #DFC084;
  --gold-500: #B98A2F;
  --gold-700: #8A6620;

  /* Clay (danger) */
  --red-50:  #FBEFED;
  --red-100: #F4DAD6;
  --red-500: #B0453A;
  --red-700: #8C352C;

  /* Slate (info — small doses only) */
  --blue-50:  #EEF3F7;
  --blue-100: #DCE7EF;
  --blue-500: #44708F;
  --blue-700: #335872;

  /* ---- Semantic aliases ---- */

  /* Surfaces */
  --surface-page:         var(--neutral-25);
  --surface-card:         var(--neutral-0);
  --surface-sunken:       var(--neutral-50);
  --surface-brand-subtle: var(--green-50);
  --surface-inverse:      var(--green-950);

  /* Text */
  --text-strong:        #131C17;
  --text-body:          #36403A;
  --text-muted:         #6C746E;
  --text-faint:         #99A09A;
  --text-brand:         var(--green-700);
  --text-gold:          var(--gold-700);
  --text-inverse:       #F4F8F4;
  --text-inverse-muted: #A8BFB3;
  --text-on-accent:     #FFFFFF;

  /* Borders */
  --border-subtle:  #ECEAE2;
  --border-default: #DEDBD1;
  --border-strong:  #B9B6AA;
  --border-inverse: rgba(255, 255, 255, 0.14);

  /* Actions */
  --accent:         var(--green-700);
  --accent-hover:   var(--green-800);
  --accent-pressed: var(--green-900);
  --accent-subtle:  var(--green-50);
  --accent-muted:   var(--green-100);

  /* Status */
  --success:        var(--green-600);
  --success-subtle: var(--green-50);
  --warning:        var(--gold-500);
  --warning-strong: var(--gold-700);
  --warning-subtle: var(--gold-50);
  --danger:         var(--red-500);
  --danger-strong:  var(--red-700);
  --danger-subtle:  var(--red-50);
  --info:           var(--blue-500);
  --info-strong:    var(--blue-700);
  --info-subtle:    var(--blue-50);

  /* Focus */
  --focus-ring: 0 0 0 3px rgba(63, 130, 102, 0.35);
}
