/* ============================================================
   ASHBOURNE — Color
   Neo-brutalist: hard blacks, raw greys, one loud orange.
   Contrast is the system; nothing is soft or tinted-pretty.
   ============================================================ */
:root {
  /* —— Black ladder —— */
  --black-000: #000000;   /* absolute — borders, hard shadows */
  --black-900: #0D0D0D;   /* deepest surface */
  --black-800: #171717;   /* canvas (brand black) */
  --black-700: #1F1F1F;   /* panel */
  --black-600: #2A2A2A;   /* raised panel */
  --black-500: #333333;   /* hover panel */

  /* —— Grey ladder —— */
  --grey-700: #4D4D4D;    /* dark grey (brand) */
  --grey-600: #646464;    /* grey (brand) */
  --grey-500: #808080;
  --grey-400: #A7A7A7;    /* light grey (brand) */
  --grey-300: #C4C4C4;
  --grey-200: #DEDEDE;    /* lightest grey (brand) */
  --white-100: #F9F9F9;   /* off-white (brand) */
  --white-000: #FFFFFF;

  /* —— Orange: the signal —— */
  --orange-300: #FF8A5C;
  --orange-400: #F25623;  /* primary brand orange */
  --orange-500: #E85002;  /* pressed / deep */
  --orange-600: #C10801;  /* darkest — rare */
  --orange-tint: rgba(242, 86, 35, 0.14);

  /* —— Semantic (loud, flat, no pastels) —— */
  --acid: #C8FF00;        /* live / armed */
  --pos: #16C172;
  --neg: #FF2D16;
  --acid-tint: rgba(200, 255, 0, 0.14);
  --pos-tint: rgba(22, 193, 114, 0.14);
  --neg-tint: rgba(255, 45, 22, 0.14);

  /* ============================================================
     Semantic aliases — reference these, not the scales.
     ============================================================ */
  --bg-page: var(--black-800);
  --bg-alt: var(--black-900);
  --bg-invert: var(--white-100);

  --surface-panel: var(--black-700);
  --surface-raised: var(--black-600);
  --surface-hover: var(--black-500);
  --surface-active: var(--grey-700);

  --text-strong: var(--white-100);
  --text-body: var(--grey-200);
  --text-muted: var(--grey-400);
  --text-faint: var(--grey-600);
  --text-disabled: var(--grey-700);
  --text-invert: var(--black-800);

  /* Neo-brutalist borders: visible, structural, never subtle */
  --border-hard: var(--white-100);
  --border-panel: var(--grey-700);
  --border-faint: #262626;
  --border-accent: var(--orange-400);

  --accent: var(--orange-400);
  --accent-hover: var(--orange-500);
  --accent-text: var(--orange-400);
  --accent-tint: var(--orange-tint);
  --on-accent: var(--black-800);

  --focus-ring: var(--acid);

  /* Legacy aliases (older components/cards still reference these) */
  --surface-card: var(--black-700);
  --line-faint: var(--border-faint);
  --line: var(--grey-700);
  --line-strong: var(--grey-600);
  --line-bone: var(--grey-200);
  --border-card: var(--grey-700);
  --border-hover: var(--white-100);
  --border-input: var(--grey-600);
  --accent-line: var(--orange-400);
  --bone-100: var(--white-100);
  --bone-200: var(--grey-200);
  --bone-300: var(--grey-300);
}
