:root {
  /* Catppuccin Mocha full palette */
  --mantle: #181825;
  --base: #1e1e2e;
  --text: #cdd6f4;
  --link: #89b4fa;

  /* Syntax highlighting remapped to Catppuccin Mocha */
  --syn-keyword: #cba6f7;
  /* mauve  — replaces light-yellow */
  --syn-type: #cba6f7;
  /* mauve  — replaces light-yellow */
  --syn-string: #a6e3a1;
  /* green  — replaces dark-yellow */
  --syn-number: #fab387;
  /* peach  — replaces magenta */
  --syn-function: #89b4fa;
  /* blue   — replaces blue */
  --syn-comment: #6c7086;
  /* overlay0 — replaces comment-gray */
  --syn-default: #89dceb;
  /* sky    — replaces cyan */
}

code,
pre {
  font-family: 'JetBrains Mono', monospace;
  font-feature-settings: "liga" 1, "calt" 1;
  /* enables ligatures */
}

pre {
  border-top: 1px solid var(--mantle);
  border-bottom: 1px solid var(--mantle);
  padding: 10px 5px;
  margin: 0;
}

code.zig {
  color: var(--syn-default);
  font-size: clamp(0.5rem, 6vw, 0.8rem);
}

code.zig .keyword,
code.zig .type {
  color: var(--syn-keyword);
}

code.zig .string {
  color: var(--syn-string);
}

code.zig .numeric.constant {
  color: var(--syn-number);
}

code.zig .function {
  color: var(--syn-function);
}

code.zig .comment {
  color: var(--syn-comment);
}
