:root {
  --main-50: hsl(from var(--main) h s calc(l * 0.1));
  --main-100: hsl(from var(--main) h s calc(l * 0.2));
  --main-200: hsl(from var(--main) h s calc(l * 0.4));
  --main-300: hsl(from var(--main) h s calc(l * 0.6));
  --main-400: hsl(from var(--main) h s calc(l * 0.8));
  --main-500: var(--main);
  --main-600: hsl(from var(--main) h s calc(l + (100 - l) * 0.2));
  --main-700: hsl(from var(--main) h s calc(l + (100 - l) * 0.4));
  --main-800: hsl(from var(--main) h s calc(l + (100 - l) * 0.6));
  --main-900: hsl(from var(--main) h s calc(l + (100 - l) * 0.8));
  --main-950: hsl(from var(--main) h s calc(l + (100 - l) * 0.9));
  --compl-50: hsl(from var(--compl) h s calc(l * 0.1));
  --compl-100: hsl(from var(--compl) h s calc(l * 0.2));
  --compl-200: hsl(from var(--compl) h s calc(l * 0.4));
  --compl-300: hsl(from var(--compl) h s calc(l * 0.6));
  --compl-400: hsl(from var(--compl) h s calc(l * 0.8));
  --compl-500: var(--compl);
  --compl-600: hsl(from var(--compl) h s calc(l + (100 - l) * 0.2));
  --compl-700: hsl(from var(--compl) h s calc(l + (100 - l) * 0.4));
  --compl-800: hsl(from var(--compl) h s calc(l + (100 - l) * 0.6));
  --compl-900: hsl(from var(--compl) h s calc(l + (100 - l) * 0.8));
  --compl-950: hsl(from var(--compl) h s calc(l + (100 - l) * 0.9));
}
