:root{
  /* Surfaces — dark is the default brand context */
  --surface-page:var(--ink-900);
  --surface-raised:var(--ink-800);
  --surface-sunken:var(--ink-1000);
  --surface-card:var(--ink-850);
  --surface-card-hover:var(--ink-800);
  --surface-inverse:var(--paper-100);
  --surface-inverse-card:var(--paper-000);
  --surface-accent:var(--ember-500);

  /* Text */
  --text-strong:var(--paper-000);
  --text-body:var(--grey-300);
  --text-muted:var(--grey-500);
  --text-label:var(--ember-500);
  --text-on-accent:var(--ink-1000);
  --text-inverse-strong:var(--ink-900);
  --text-inverse-body:var(--grey-700);
  --text-inverse-muted:var(--grey-700); /* grey-500 is dark-surface only — too light on paper */
  --text-link:var(--ember-500);
  --text-link-hover:var(--ember-300);

  /* Lines */
  --border-subtle:var(--white-10);
  --border-strong:var(--white-16);
  --border-inverse:var(--paper-300);

  /* Status */
  --status-positive:var(--teal-500);
  --status-warning:var(--gold-500);
  --status-negative:var(--red-500);
  --status-info:var(--ember-500);

  /* Interactive */
  --action-primary-bg:var(--ember-500);
  --action-primary-bg-hover:var(--ember-300);
  --action-primary-fg:var(--ink-1000);
  --action-secondary-bg:var(--white-06);
  --action-secondary-bg-hover:var(--white-10);
  --action-secondary-fg:var(--paper-000);
  --action-danger-bg:var(--red-500);
  --focus-ring:var(--ember-500);
}
