/* Rouge syntax highlighting — tuned for Infinite Interest dark theme */

.highlighter-rouge,
figure.highlight {
  margin: 0 0 1rem;
}

.highlighter-rouge .highlight,
figure.highlight pre {
  margin: 0;
}

.highlight,
.highlight pre,
.highlight table {
  background: transparent;
}

.highlight .c,
.highlight .cm,
.highlight .cp,
.highlight .c1,
.highlight .cs {
  color: var(--text-muted);
  font-style: italic;
}

.highlight .err {
  color: #f48771;
  background: rgba(244, 135, 113, 0.12);
}

.highlight .k,
.highlight .kc,
.highlight .kd,
.highlight .kn,
.highlight .kp,
.highlight .kr,
.highlight .kt {
  color: var(--accent);
}

.highlight .o,
.highlight .ow {
  color: var(--text);
}

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

.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: #9ecfa8;
}

.highlight .na,
.highlight .nb,
.highlight .nc,
.highlight .no,
.highlight .nd,
.highlight .ni,
.highlight .ne,
.highlight .nf,
.highlight .nl,
.highlight .nn,
.highlight .nx,
.highlight .py,
.highlight .nt,
.highlight .nv,
.highlight .vc,
.highlight .vg,
.highlight .vi {
  color: #7ec8e3;
}

.highlight .m,
.highlight .mf,
.highlight .mh,
.highlight .mi,
.highlight .mo,
.highlight .il {
  color: #d4a574;
}

.highlight .gd {
  color: #f48771;
  background: rgba(244, 135, 113, 0.1);
}

.highlight .gi {
  color: #9ecfa8;
  background: rgba(158, 207, 168, 0.1);
}

.highlight .ge {
  font-style: italic;
}

.highlight .gs {
  font-weight: 600;
}

.highlight .gh,
.highlight .gu {
  color: var(--text-muted);
  font-weight: 600;
}

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

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

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