/* Rouge syntax highlighting — GitHub-inspired theme */
.highlight .c,
.highlight .cm,
.highlight .c1,
.highlight .cs { color: #6a737d; font-style: italic; } /* Comments */
.highlight .k,
.highlight .kc,
.highlight .kd,
.highlight .kn,
.highlight .kp,
.highlight .kr,
.highlight .kt { color: #d73a49; font-weight: bold; } /* Keywords */
.highlight .o,
.highlight .ow { color: #d73a49; } /* Operators */
.highlight .n { color: #24292e; } /* Names */
.highlight .na { color: #6f42c1; } /* Name.Attribute */
.highlight .nb { color: #005cc5; } /* Name.Builtin */
.highlight .nc { color: #6f42c1; font-weight: bold; } /* Name.Class */
.highlight .nd { color: #6f42c1; } /* Name.Decorator */
.highlight .ni { color: #24292e; } /* Name.Entity */
.highlight .ne { color: #d73a49; font-weight: bold; } /* Name.Exception */
.highlight .nf { color: #6f42c1; } /* Name.Function */
.highlight .nl { color: #005cc5; } /* Name.Label */
.highlight .nn { color: #24292e; } /* Name.Namespace */
.highlight .no { color: #005cc5; } /* Name.Constant */
.highlight .nv,
.highlight .vi,
.highlight .vg,
.highlight .vc { color: #e36209; } /* Variables */
.highlight .s,
.highlight .sb,
.highlight .sc,
.highlight .sd,
.highlight .s2,
.highlight .se,
.highlight .sh,
.highlight .si,
.highlight .sx,
.highlight .sr,
.highlight .s1,
.highlight .ss { color: #032f62; } /* Strings */
.highlight .m,
.highlight .mb,
.highlight .mf,
.highlight .mh,
.highlight .mi,
.highlight .mo,
.highlight .il { color: #005cc5; } /* Numbers */
.highlight .gd { color: #b31d28; background: #ffeef0; } /* Diff deleted */
.highlight .gi { color: #22863a; background: #f0fff4; } /* Diff inserted */
.highlight .ge { font-style: italic; } /* Generic.Emph */
.highlight .gs { font-weight: bold; } /* Generic.Strong */
.highlight .gh { color: #005cc5; font-weight: bold; } /* Generic.Heading */
.highlight .gu { color: #6f42c1; font-weight: bold; } /* Generic.Subheading */
.highlight .gp { color: #6a737d; font-weight: bold; } /* Generic.Prompt */
.highlight .w { color: #bbbbbb; } /* Text.Whitespace */
.highlight .err { color: #b31d28; background: #ffeef0; } /* Error */
.highlight .bp { color: #005cc5; } /* Name.Builtin.Pseudo */
.highlight .p { color: #24292e; } /* Punctuation */

/* Dark theme */
@media (prefers-color-scheme: dark) {
  .highlight .c,
  .highlight .cm,
  .highlight .c1,
  .highlight .cs { color: #6b7384; }
  .highlight .k,
  .highlight .kc,
  .highlight .kd,
  .highlight .kn,
  .highlight .kp,
  .highlight .kr,
  .highlight .kt { color: #e06c75; }
  .highlight .o,
  .highlight .ow { color: #e06c75; }
  .highlight .n { color: #c9cdd1; }
  .highlight .na { color: #c8a6de; }
  .highlight .nb { color: #6cb4ee; }
  .highlight .nc { color: #c8a6de; }
  .highlight .nd { color: #c8a6de; }
  .highlight .ni { color: #c9cdd1; }
  .highlight .ne { color: #e06c75; }
  .highlight .nf { color: #c8a6de; }
  .highlight .nl { color: #6cb4ee; }
  .highlight .nn { color: #c9cdd1; }
  .highlight .no { color: #6cb4ee; }
  .highlight .nv,
  .highlight .vi,
  .highlight .vg,
  .highlight .vc { color: #d19a66; }
  .highlight .s,
  .highlight .sb,
  .highlight .sc,
  .highlight .sd,
  .highlight .s2,
  .highlight .se,
  .highlight .sh,
  .highlight .si,
  .highlight .sx,
  .highlight .sr,
  .highlight .s1,
  .highlight .ss { color: #98c379; }
  .highlight .m,
  .highlight .mb,
  .highlight .mf,
  .highlight .mh,
  .highlight .mi,
  .highlight .mo,
  .highlight .il { color: #6cb4ee; }
  .highlight .gd { color: #e06c75; background: #2c1e22; }
  .highlight .gi { color: #98c379; background: #1e2c22; }
  .highlight .gh { color: #6cb4ee; }
  .highlight .gu { color: #c8a6de; }
  .highlight .gp { color: #6b7384; }
  .highlight .w { color: #3e4450; }
  .highlight .err { color: #e06c75; background: #2c1e22; }
  .highlight .bp { color: #6cb4ee; }
  .highlight .p { color: #c9cdd1; }
}
