:root {
  --background-color: #f9f5f0;
  --text-color: #333333;
  --heading-color: #ff6347; /* tomato */
  --subdued-heading-color: #e55a40; /* slightly muted tomato for better contrast */
  --comment-color: #767676;
  --keyword-color: #d73a49;
  --string-color: #22863a;
  --number-color: #005cc5;
  --function-color: #6f42c1;
  --class-color: #e36209;
  --tag-color: #22863a;
  --attribute-color: #005cc5;
  --error-color: #cb2431;
  --highlight-bg: #fff8e6;
  --line-number-color: #999999;
  --line-number-bg: #f0ece6;
}

pre {
  line-height: 125%;
  background-color: var(--background-color);
  color: var(--text-color);
  border-radius: 5px;
  overflow-x: auto;
  display: block;
  white-space: pre;
  word-wrap: normal;
}

td.linenos .normal,
span.linenos {
  color: var(--comment-color);
  background-color: transparent;
  padding-left: 5px;
  padding-right: 5px;
}

td.linenos .special,
span.linenos.special {
  color: var(--comment-color);
  background-color: #ffffd7;
  padding-left: 5px;
  padding-right: 5px;
}

.highlight .hll {
  background-color: var(--highlight-bg);
}

.highlight {
  background: var(--background-color);
  color: var(--text-color);
}

.highlight .c {
  color: var(--comment-color);
} /* Comment */
.highlight .err {
  color: var(--error-color);
} /* Error */
.highlight .k {
  color: var(--keyword-color);
} /* Keyword */
.highlight .s {
  color: var(--string-color);
} /* Literal.String */
.highlight .n {
  color: var(--text-color);
} /* Name */
.highlight .o {
  color: var(--keyword-color);
} /* Operator */
.highlight .p {
  color: var(--text-color);
} /* Punctuation */

.highlight .cm,
.highlight .cp,
.highlight .c1,
.highlight .cs {
  color: var(--comment-color);
} /* Comments */

.highlight .gd {
  color: var(--error-color);
  background-color: #ffeef0;
} /* Generic.Deleted */
.highlight .gi {
  color: var(--tag-color);
  background-color: #f0fff4;
} /* Generic.Inserted */

.highlight .kc,
.highlight .kd,
.highlight .kn,
.highlight .kp,
.highlight .kr {
  color: var(--keyword-color);
} /* Keyword variations */
.highlight .kt {
  color: var(--class-color);
} /* Keyword.Type */

.highlight .m {
  color: var(--number-color);
} /* Literal.Number */

.highlight .na {
  color: var(--attribute-color);
} /* Name.Attribute */
.highlight .nb {
  color: var(--function-color);
} /* Name.Builtin */
.highlight .nc {
  color: var(--class-color);
} /* Name.Class */
.highlight .nf {
  color: var(--function-color);
} /* Name.Function */
.highlight .nt {
  color: var(--tag-color);
} /* Name.Tag */

/* Add more class definitions as needed, following the pattern above */
