:root {
  --light-hl-0: #000000;
  --dark-hl-0: #d4d4d4;
  --light-hl-1: #0000ff;
  --dark-hl-1: #569cd6;
  --light-hl-2: #0070c1;
  --dark-hl-2: #4fc1ff;
  --light-hl-3: #795e26;
  --dark-hl-3: #dcdcaa;
  --light-hl-4: #a31515;
  --dark-hl-4: #ce9178;
  --light-hl-5: #001080;
  --dark-hl-5: #9cdcfe;
  --light-hl-6: #008000;
  --dark-hl-6: #6a9955;
  --light-hl-7: #098658;
  --dark-hl-7: #b5cea8;
  --light-hl-8: #af00db;
  --dark-hl-8: #c586c0;
  --light-hl-9: #267f99;
  --dark-hl-9: #4ec9b0;
  --light-hl-10: #000000;
  --dark-hl-10: #c8c8c8;
  --light-code-background: #ffffff;
  --dark-code-background: #1e1e1e;
}

@media (prefers-color-scheme: light) {
  :root {
    --hl-0: var(--light-hl-0);
    --hl-1: var(--light-hl-1);
    --hl-2: var(--light-hl-2);
    --hl-3: var(--light-hl-3);
    --hl-4: var(--light-hl-4);
    --hl-5: var(--light-hl-5);
    --hl-6: var(--light-hl-6);
    --hl-7: var(--light-hl-7);
    --hl-8: var(--light-hl-8);
    --hl-9: var(--light-hl-9);
    --hl-10: var(--light-hl-10);
    --code-background: var(--light-code-background);
  }
}

@media (prefers-color-scheme: dark) {
  :root {
    --hl-0: var(--dark-hl-0);
    --hl-1: var(--dark-hl-1);
    --hl-2: var(--dark-hl-2);
    --hl-3: var(--dark-hl-3);
    --hl-4: var(--dark-hl-4);
    --hl-5: var(--dark-hl-5);
    --hl-6: var(--dark-hl-6);
    --hl-7: var(--dark-hl-7);
    --hl-8: var(--dark-hl-8);
    --hl-9: var(--dark-hl-9);
    --hl-10: var(--dark-hl-10);
    --code-background: var(--dark-code-background);
  }
}

body.light {
  --hl-0: var(--light-hl-0);
  --hl-1: var(--light-hl-1);
  --hl-2: var(--light-hl-2);
  --hl-3: var(--light-hl-3);
  --hl-4: var(--light-hl-4);
  --hl-5: var(--light-hl-5);
  --hl-6: var(--light-hl-6);
  --hl-7: var(--light-hl-7);
  --hl-8: var(--light-hl-8);
  --hl-9: var(--light-hl-9);
  --hl-10: var(--light-hl-10);
  --code-background: var(--light-code-background);
}

body.dark {
  --hl-0: var(--dark-hl-0);
  --hl-1: var(--dark-hl-1);
  --hl-2: var(--dark-hl-2);
  --hl-3: var(--dark-hl-3);
  --hl-4: var(--dark-hl-4);
  --hl-5: var(--dark-hl-5);
  --hl-6: var(--dark-hl-6);
  --hl-7: var(--dark-hl-7);
  --hl-8: var(--dark-hl-8);
  --hl-9: var(--dark-hl-9);
  --hl-10: var(--dark-hl-10);
  --code-background: var(--dark-code-background);
}

.hl-0 {
  color: var(--hl-0);
}
.hl-1 {
  color: var(--hl-1);
}
.hl-2 {
  color: var(--hl-2);
}
.hl-3 {
  color: var(--hl-3);
}
.hl-4 {
  color: var(--hl-4);
}
.hl-5 {
  color: var(--hl-5);
}
.hl-6 {
  color: var(--hl-6);
}
.hl-7 {
  color: var(--hl-7);
}
.hl-8 {
  color: var(--hl-8);
}
.hl-9 {
  color: var(--hl-9);
}
.hl-10 {
  color: var(--hl-10);
}
pre,
code {
  background: var(--code-background);
}
