/* Monokai Sublime 테마 기반 Rouge 코드 하이라이팅 스타일 */

.highlight {
  background: #272822;
  color: #ffffff;
  padding: 1em;
  border-radius: 8px;
  overflow-x: auto;
  font-family: 'Fira Code', 'Courier New', monospace;
  font-size: 0.95em;
  line-height: 1.5;
}

/* 클래스가 없는 span에 적용 (Rouge가 무시한 경우) */
.highlight code span:not([class]) {
  color: #fd971f; /* 예: Monokai 스타일의 주황색 */
}

/* 기본 토큰 */
.highlight .k    { color: #f92672; } /* keyword */
.highlight .kc   { color: #f92672; } /* keyword constant */
.highlight .kd   { color: #f92672; } /* keyword declaration */
.highlight .kn   { color: #f92672; } /* keyword namespace */
.highlight .kp   { color: #f92672; } /* keyword pseudo */
.highlight .kr   { color: #f92672; } /* keyword reserved */
.highlight .kt   { color: #66d9ef; } /* type */
.highlight .nf   { color: #a6e22e; } /* function name */
.highlight .nc   { color: #a6e22e; } /* class name */
.highlight .nn   { color: #f8f8f2; } /* namespace */
.highlight .no   { color: #66d9ef; } /* constant */
.highlight .nb   { color: #f8f8f2; } /* built-in name */
.highlight .bp   { color: #f8f8f2; } /* builtin pseudo */
.highlight .n    { color: #ffffff;}
.highlight .nv   { color: #ffffff; } /* variable name */
.highlight .vc   { color: #ffffff; } /* variable class */
.highlight .vg   { color: #ffffff; } /* variable global */
.highlight .vi   { color: #ffffff; } /* variable instance */
.highlight .o    { color: #f92672; } /* operator */
.highlight .c    { color: #038901; font-style: italic; } /* comment */
.highlight .c1   { color: #038901; font-style: italic; } /* single-line comment */
.highlight .cm   { color: #038901; font-style: italic; } /* multiline comment */
.highlight .cp   { color: #038901; font-style: italic; } /* preprocessor */
.highlight .cs   { color: #038901; font-style: italic; } /* special comment */
.highlight .gd   { color: #f92672; } /* deleted */
.highlight .gi   { color: #a6e22e; } /* inserted */
.highlight .go   { color: #66d9ef; } /* output */
.highlight .gt   { color: #f92672; } /* trace */
.highlight .s    { color: #e6db74; } /* string */
.highlight .s1   { color: #e6db74; }
.highlight .s2   { color: #e6db74; }
.highlight .se   { color: #ae81ff; }
.highlight .sb   { color: #e6db74; }
.highlight .sc   { color: #e6db74; }
.highlight .sd   { color: #e6db74; }
.highlight .si   { color: #e6db74; }
.highlight .sr   { color: #e6db74; }
.highlight .ss   { color: #e6db74; }
.highlight .mi   { color: #ae81ff; } /* number */
.highlight .il   { color: #ae81ff; }
.highlight .m    { color: #ae81ff; }
.highlight .p    { color: #f8f8f2; } /* punctuation */