:root {
  /* ===== Primary Token Scale ===== */
  --token-primary-50:  #edf6fc;
  --token-primary-100: #d2e8f9;
  --token-primary-200: #a6d1f2;
  --token-primary-300: #70b5ea;
  --token-primary-400: #3b99e3;
  --token-primary-500: #1b75bb;
  --token-primary-600: #165f97; /* hover */
  --token-primary-700: #114874; /* active */
  --token-primary-800: #0c3250;
  --token-primary-900: #061c2c;

  /* ===== RGB ===== */
  --rgb-primary: 27 117 187;
  --rgba-primary: 27, 117, 187;
  --gradient-primary-start: var(--token-primary-700);
  --gradient-primary-end: var(--token-primary-500);

  /* ===== Usage ===== */
  --color-primary: var(--token-primary-500);
  --color-on-primary: #FFFFFF;

  --btn-primary-text: var(--color-on-primary);
  --btn-primary-bg: var(--token-primary-500);
  --btn-primary-border: var(--token-primary-500);
  --btn-primary-bg-hover: var(--token-primary-600);
  --btn-primary-bg-active: var(--token-primary-700);

  --btn-link-text: var(--token-primary-500);
  --btn-link-text-hover: var(--token-primary-700);

  /* Focus ring */
  --state-focus-ring-size: .2rem;
  --state-focus-ring-opacity: .5;
}