/* Baloyi Financials — Color tokens
   Navy = trust/authority (primary brand). Green = balanced/verified (accent).
   Neutrals are a cool slate ramp on warm paper. Semantics follow accounting
   convention: green credit/positive, red debit/negative (also shown in parens). */
:root {
  /* ---- Brand: Navy ---- */
  --navy-900: #0f2038;
  --navy-800: #16304f;
  --navy-700: #1e3a5f; /* primary */
  --navy-600: #274b78;
  --navy-500: #345d8f;
  --navy-400: #5b7ea6;
  --navy-300: #91a8c4;
  --navy-200: #c3d1e2;
  --navy-100: #e5ecf4;

  /* ---- Accent: Verdigris green ---- */
  --green-800: #0a5540;
  --green-700: #0a6b52;
  --green-600: #0d7a5f; /* accent */
  --green-500: #12916f;
  --green-400: #3aa886;
  --green-200: #a9dccb;
  --green-100: #d8efe7;

  /* ---- Neutral slate ramp ---- */
  --ink-900: #14181f;
  --ink-800: #232a34;
  --ink-700: #3a424e;
  --ink-600: #4e5765;
  --ink-500: #626b78;
  --ink-400: #8a929e;
  --ink-300: #c4cad2;
  --ink-200: #e2e6ea;
  --ink-150: #eaeef2;
  --ink-100: #eef1f4;
  --paper: #ffffff;
  --paper-2: #f7f9fb;
  --paper-3: #f0f3f7;

  /* ---- Semantic hues ---- */
  --positive-600: #0d7a5f;
  --positive-100: #d8efe7;
  --negative-600: #b42318;
  --negative-100: #fbe7e5;
  --warning-600: #b54708;
  --warning-100: #fbe9d8;
  --info-600: #175cd3;
  --info-100: #e0e9fb;

  /* ---- Semantic aliases ---- */
  --brand-primary: var(--navy-700);
  --brand-primary-hover: var(--navy-800);
  --brand-primary-press: var(--navy-900);
  --accent: var(--green-600);
  --accent-hover: var(--green-700);

  --text-heading: var(--navy-900);
  --text-body: var(--ink-900);
  --text-muted: var(--ink-500);
  --text-subtle: var(--ink-400);
  --text-inverse: #ffffff;
  --text-link: var(--navy-600);
  --text-link-hover: var(--navy-800);

  --surface-page: var(--paper-2);
  --surface-card: var(--paper);
  --surface-sunken: var(--paper-3);
  --surface-raised: #ffffff;
  --surface-brand: var(--navy-700);
  --surface-accent-soft: var(--green-100);

  --border-default: var(--ink-200);
  --border-strong: var(--ink-300);
  --border-brand: var(--navy-200);
  --border-focus: var(--navy-500);

  --figure-positive: var(--positive-600);
  --figure-negative: var(--negative-600);
}
