/* Code block wrapper with header */
.code-block-wrapper {
  margin: 1rem 0;
}

.code-block-header {
  font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier, monospace;
}

.code-block-wrapper pre.highlight {
  margin: 0;
  border-radius: 0 0 0.5rem 0.5rem;
  border-top: none;
}

pre.highlight {
  background-color: #0d1117;
  border-radius: 0.5rem;
  padding: 1rem;
  overflow-x: auto;
  margin: 1rem 0;
  border: 1px solid #30363d;
}

pre.highlight code {
  background-color: transparent;
  color: #c9d1d9;
  font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, Courier, monospace;
  font-size: 0.875rem;
  line-height: 1.6;
  display: block;
}

pre.highlight .c,
pre.highlight .c1,
pre.highlight .cm,
pre.highlight .cs,
pre.highlight .cd {
  color: #8b949e;
  font-style: italic;
}

pre.highlight .k,
pre.highlight .kd,
pre.highlight .kn,
pre.highlight .kp,
pre.highlight .kr,
pre.highlight .kt,
pre.highlight .kv {
  color: #ff7b72;
}

pre.highlight .s,
pre.highlight .s1,
pre.highlight .s2,
pre.highlight .sb,
pre.highlight .sc,
pre.highlight .sd,
pre.highlight .se,
pre.highlight .sh,
pre.highlight .si,
pre.highlight .sx,
pre.highlight .sr,
pre.highlight .ss {
  color: #a5d6ff;
}

pre.highlight .m,
pre.highlight .mf,
pre.highlight .mh,
pre.highlight .mi,
pre.highlight .mo,
pre.highlight .mb,
pre.highlight .mx,
pre.highlight .il {
  color: #79c0ff;
}

pre.highlight .nf,
pre.highlight .fm {
  color: #d2a8ff;
}

pre.highlight .nc,
pre.highlight .nn {
  color: #ffa657;
}

pre.highlight .na {
  color: #79c0ff;
}

pre.highlight .nt {
  color: #7ee787;
}

pre.highlight .nv,
pre.highlight .vi,
pre.highlight .vc,
pre.highlight .vg {
  color: #ffa657;
}

pre.highlight .nb {
  color: #ffa657;
}

pre.highlight .o,
pre.highlight .ow {
  color: #ff7b72;
}

pre.highlight .p {
  color: #c9d1d9;
}

pre.highlight .err {
  color: #f85149;
}

pre.highlight .gd {
  color: #ffa198;
  background-color: #490202;
}

pre.highlight .gi {
  color: #7ee787;
  background-color: #04260f;
}

pre.highlight .gh {
  color: #79c0ff;
  font-weight: bold;
}

pre.highlight .gu {
  color: #79c0ff;
}

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

pre.highlight .gs {
  font-weight: bold;
}

pre.highlight .w {
  color: #6e7681;
}

pre.highlight .bp {
  color: #79c0ff;
}

pre.highlight .cp {
  color: #8b949e;
}

.hljs {
  color: #c9d1d9;
  background: #0d1117;
}

.hljs-comment,
.hljs-quote {
  color: #8b949e;
  font-style: italic;
}

.hljs-keyword,
.hljs-selector-tag,
.hljs-addition {
  color: #ff7b72;
}

.hljs-string,
.hljs-meta .hljs-string {
  color: #a5d6ff;
}

.hljs-number,
.hljs-literal,
.hljs-variable,
.hljs-template-variable,
.hljs-tag .hljs-attr {
  color: #79c0ff;
}

.hljs-title,
.hljs-title.class_,
.hljs-title.class_.inherited__,
.hljs-title.function_,
.hljs-attr,
.hljs-attribute {
  color: #d2a8ff;
}

.hljs-type,
.hljs-built_in,
.hljs-params {
  color: #ffa657;
}

.hljs-symbol,
.hljs-bullet,
.hljs-regexp,
.hljs-meta {
  color: #7ee787;
}

.hljs-deletion {
  color: #ffa198;
  background-color: #490202;
}

.hljs-section,
.hljs-name,
.hljs-selector-id,
.hljs-selector-class {
  color: #79c0ff;
  font-weight: bold;
}

.hljs-emphasis {
  font-style: italic;
}

.hljs-strong {
  font-weight: bold;
}

.hljs-link {
  text-decoration: underline;
}

.hljs-tag {
  color: #7ee787;
}

.hljs-name {
  color: #7ee787;
}

.hljs-operator {
  color: #ff7b72;
}

.hljs-doctag {
  color: #d2a8ff;
}

.hljs-template-tag {
  color: #ff7b72;
}

.hljs-variable.language_ {
  color: #ffa657;
}

pre.highlight::-webkit-scrollbar {
  height: 0.5rem;
}

pre.highlight::-webkit-scrollbar-track {
  background: #161b22;
  border-radius: 0.25rem;
}

pre.highlight::-webkit-scrollbar-thumb {
  background: #30363d;
  border-radius: 0.25rem;
}

pre.highlight::-webkit-scrollbar-thumb:hover {
  background: #484f58;
}

.hljs-ln-numbers {
  text-align: right;
  color: #6e7681;
  border-right: 1px solid #30363d;
  padding-right: 0.5rem;
  margin-right: 0.5rem;
  user-select: none;
}

.hljs-ln-code {
  padding-left: 0.5rem;
}
