/* Role-based aliases. Reach for these first; drop to the raw scales only
   when you need a step the semantic layer doesn't name. */
:root{
  /* Text */
  --text-body:var(--yd-ink);
  --text-heading:var(--yd-navy);
  --text-display-color:var(--yd-periwinkle);
  --text-muted:var(--yd-neutral-600);
  --text-subtle:var(--yd-neutral-500);
  --text-inverse:var(--yd-neutral-0);
  --text-inverse-muted:rgba(255,255,255,.72);
  --text-accent:var(--yd-navy);
  --text-on-accent:var(--yd-navy);
  --text-link:var(--yd-blue);
  --text-link-hover:var(--yd-navy);
  --text-danger:var(--yd-red-700);
  --text-success:var(--yd-green-700);

  /* Surfaces */
  --surface-page:var(--yd-cream);
  --surface-card:var(--yd-neutral-0);
  --surface-sunken:var(--yd-neutral-100);
  --surface-inverse:var(--yd-navy);
  --surface-inverse-raised:var(--yd-blue-700);
  --surface-accent:var(--yd-yellow);
  --surface-accent-soft:var(--yd-yellow-100);
  --surface-info-soft:var(--yd-blue-50);
  --surface-success-soft:var(--yd-green-100);
  --surface-danger-soft:var(--yd-red-100);
  --surface-overlay:rgba(16,38,148,.32);

  /* Lines */
  --border-card:var(--yd-yellow);
  --border-default:var(--yd-neutral-200);
  --border-strong:var(--yd-periwinkle);
  --border-inverse:rgba(255,255,255,.24);
  --border-focus:var(--yd-blue);

  /* Controls */
  --control-primary-bg:var(--yd-navy);
  --control-primary-bg-hover:var(--yd-blue-900);
  --control-primary-fg:var(--yd-neutral-0);
  --control-accent-bg:var(--yd-yellow);
  --control-accent-bg-hover:var(--yd-yellow-500);
  --control-accent-fg:var(--yd-navy);
  --control-secondary-bg:transparent;
  --control-secondary-border:var(--yd-navy);
  --control-secondary-fg:var(--yd-navy);
  --control-ghost-fg:var(--yd-navy);
  --control-ghost-bg-hover:var(--yd-blue-50);
  --control-disabled-bg:var(--yd-neutral-200);
  --control-disabled-fg:var(--yd-neutral-400);
  --field-bg:var(--yd-neutral-0);
  --field-border:var(--yd-neutral-300);
  --field-border-hover:var(--yd-periwinkle);
  --field-placeholder:var(--yd-neutral-500);
}
