:root{
  /* Surfaces */
  --surface-app:var(--neutral-100);
  --surface-card:var(--white);
  --surface-sunken:var(--neutral-100);
  --surface-subtle:var(--neutral-50);
  --surface-raised:var(--white);
  --surface-inverse:var(--forest-900);
  --surface-accent:var(--lime-400);
  --surface-accent-soft:var(--lime-100);
  --surface-go-soft:var(--go-100);
  --surface-overlay:rgba(3,28,24,.44);
  --surface-glass:rgba(255,255,255,.72);

  /* Text */
  --text-heading:var(--forest-900);
  --text-body:var(--neutral-800);
  --text-muted:var(--neutral-500);
  --text-subtle:var(--neutral-400);
  --text-on-accent:var(--forest-900);
  --text-on-inverse:var(--white);
  --text-on-inverse-muted:rgba(255,255,255,.66);
  --text-link:var(--forest-700);
  --text-link-hover:var(--go-700);
  --text-positive:var(--success-600);
  --text-negative:var(--danger-500);

  /* Borders */
  --border-subtle:var(--neutral-150);
  --border-default:var(--neutral-200);
  --border-strong:var(--neutral-300);
  --border-accent:var(--lime-400);
  --border-inverse:rgba(255,255,255,.14);

  /* Controls */
  --control-primary-bg:var(--forest-900);
  --control-primary-fg:var(--white);
  --control-primary-bg-hover:var(--forest-800);
  --control-accent-bg:var(--lime-400);
  --control-accent-fg:var(--forest-900);
  --control-accent-bg-hover:var(--lime-500);
  --control-secondary-bg:var(--white);
  --control-secondary-fg:var(--forest-900);
  --control-secondary-border:var(--neutral-200);
  --control-ghost-fg:var(--neutral-600);
  --control-disabled-bg:var(--neutral-150);
  --control-disabled-fg:var(--neutral-400);
  --field-bg:var(--white);
  --field-bg-disabled:var(--neutral-100);
  --field-border:var(--neutral-200);
  --field-border-focus:var(--lime-400);
  --field-placeholder:var(--neutral-400);

  /* Data viz */
  --chart-income:var(--forest-900);
  --chart-expense:var(--lime-400);
  --chart-savings:var(--go-500);
  --chart-neutral:var(--neutral-300);
  --chart-grid:var(--neutral-150);
  --chart-axis-label:var(--neutral-400);
  --chart-series-1:var(--lime-400);
  --chart-series-2:var(--forest-900);
  --chart-series-3:var(--go-500);
  --chart-series-4:var(--forest-200);
  --chart-series-5:var(--neutral-300);
}
