/* Enhanced Code Syntax Highlighting */

/* Code block improvements */
.highlight {
  border-radius: 4px;
  border: 1px solid #e1e4e8;
  background-color: #f6f8fa !important;
  padding: 16px;
  overflow-x: auto;
  margin: 1em 0;
  line-height: 1.45;
}

/* Inline code */
code.highlighter-rouge {
  background-color: #f6f8fa;
  padding: 0.2em 0.4em;
  margin: 0;
  font-size: 85%;
  border-radius: 3px;
  border: 1px solid #e1e4e8;
  font-family: 'SF Mono', Monaco, 'Cascadia Code', 'Roboto Mono', Consolas, 'Courier New', monospace;
}

/* Pre blocks */
.highlight pre {
  margin: 0;
  padding: 0;
  background-color: transparent;
  border: 0;
  font-size: 14px;
  font-family: 'SF Mono', Monaco, 'Cascadia Code', 'Roboto Mono', Consolas, 'Courier New', monospace;
}

/* Improve contrast for better readability */
.highlight .k,  /* Keywords */
.highlight .kd, /* Keyword.Declaration */
.highlight .kn, /* Keyword.Namespace */
.highlight .kp, /* Keyword.Pseudo */
.highlight .kr, /* Keyword.Reserved */
.highlight .kt  /* Keyword.Type */ {
  color: #d73a49;
  font-weight: 600;
}

.highlight .s,  /* Strings */
.highlight .s1, /* String.Single */
.highlight .s2, /* String.Double */
.highlight .se  /* String.Escape */ {
  color: #032f62;
}

.highlight .c,  /* Comments */
.highlight .c1, /* Comment.Single */
.highlight .cm  /* Comment.Multiline */ {
  color: #6a737d;
  font-style: italic;
}

.highlight .nf, /* Name.Function */
.highlight .nb  /* Name.Builtin */ {
  color: #6f42c1;
  font-weight: 600;
}

.highlight .mi, /* Number.Integer */
.highlight .mf, /* Number.Float */
.highlight .mh, /* Number.Hex */
.highlight .mo  /* Number.Oct */ {
  color: #005cc5;
}

.highlight .na, /* Name.Attribute */
.highlight .nc  /* Name.Class */ {
  color: #e36209;
}

.highlight .o,  /* Operator */
.highlight .ow  /* Operator.Word */ {
  color: #d73a49;
}

/* Line numbers (if enabled) */
.highlight .lineno {
  color: #6a737d;
  padding-right: 1em;
  user-select: none;
  border-right: 1px solid #e1e4e8;
  margin-right: 1em;
}

/* Selection styling */
.highlight ::selection {
  background-color: #b3d4fc;
}

/* Dark mode support (if needed in future) */
@media (prefers-color-scheme: dark) {
  .highlight {
    background-color: #2d333b !important;
    border-color: #444c56;
  }

  code.highlighter-rouge {
    background-color: #2d333b;
    border-color: #444c56;
    color: #adbac7;
  }

  .highlight .k,
  .highlight .kd,
  .highlight .kn,
  .highlight .kp,
  .highlight .kr,
  .highlight .kt {
    color: #f47067;
  }

  .highlight .s,
  .highlight .s1,
  .highlight .s2,
  .highlight .se {
    color: #96d0ff;
  }

  .highlight .c,
  .highlight .c1,
  .highlight .cm {
    color: #768390;
  }

  .highlight .nf,
  .highlight .nb {
    color: #dcbdfb;
  }

  .highlight .mi,
  .highlight .mf,
  .highlight .mh,
  .highlight .mo {
    color: #6cb6ff;
  }

  .highlight .na,
  .highlight .nc {
    color: #f69d50;
  }

  .highlight .o,
  .highlight .ow {
    color: #f47067;
  }

  .highlight .lineno {
    color: #768390;
    border-color: #444c56;
  }
}
