:root {
  /* ── Neutral ramp ── */
  --c-black:    #111111;  /* Primary text, dark backgrounds, mark */
  --c-ink:      #222222;  /* Headings on white, proposal headers */
  --c-dark:     #333333;  /* Cover pages, secondary dark bg */
  --c-mid:      #AAAAAA;  /* Secondary text, captions, tagline */
  --c-border:   #E8E8E8;  /* Table borders, dividers, hr */
  --c-surface:  #F5F5F5;  /* Alternating table rows, secondary bg */
  --c-white:    #FFFFFF;  /* Page bg, card bg */

  /* ── Ember accent ramp ── */
  --c-ember-deep:  #CC3A12;  /* Hover, pressed state */
  --c-ember:       #FF4F1F;  /* Primary accent — CTA, AI wordmark, dots */
  --c-ember-lt:    #FF8A65;  /* Ember on dark backgrounds */
  --c-ember-wash:  #FFF2EE;  /* Tag fills, badge bg, pitch deck header */

  /* ── Semantic colours ── */
  --c-success:  #2ECC71;  /* Paid badge, confirmed */
  --c-warning:  #F59E0B;  /* Pending, due soon */
  --c-danger:   #EF4444;  /* Overdue, error */

  /* ── Semantic aliases ── */
  --text-primary:    var(--c-black);
  --text-heading:    var(--c-ink);
  --text-secondary:  var(--c-mid);
  --text-accent:     var(--c-ember);

  --surface-page:    var(--c-white);
  --surface-card:    var(--c-white);
  --surface-alt:     var(--c-surface);

  --border-default:  var(--c-border);

  --accent:          var(--c-ember);
  --accent-pressed:  var(--c-ember-deep);
  --accent-light:    var(--c-ember-lt);
  --accent-wash:     var(--c-ember-wash);
}
