/*
 * IntelliJ IDEA-like styling for highlight.js
 * 使用高优先级选择器确保样式生效
 */

.markdown-body pre code.hljs,
.markdown-body pre code {
  color: #a9b7c6 !important;
  background: transparent !important;
}

.markdown-body pre code .hljs-bullet,
.markdown-body pre code .hljs-literal,
.markdown-body pre code .hljs-number,
.markdown-body pre code .hljs-symbol {
  color: #6897bb !important;
}

.markdown-body pre code .hljs-deletion,
.markdown-body pre code .hljs-keyword,
.markdown-body pre code .hljs-selector-tag {
  color: #cc7832 !important;
}

.markdown-body pre code .hljs-link,
.markdown-body pre code .hljs-template-variable,
.markdown-body pre code .hljs-variable {
  color: #629755 !important;
}

.markdown-body pre code .hljs-comment,
.markdown-body pre code .hljs-quote {
  color: #808080 !important;
  font-style: italic;
}

.markdown-body pre code .hljs-meta {
  color: #bbb529 !important;
}

.markdown-body pre code .hljs-addition,
.markdown-body pre code .hljs-attribute,
.markdown-body pre code .hljs-string {
  color: #6a8759 !important;
}

.markdown-body pre code .hljs-section,
.markdown-body pre code .hljs-title,
.markdown-body pre code .hljs-type {
  color: #ffc66d !important;
}

.markdown-body pre code .hljs-name,
.markdown-body pre code .hljs-selector-class,
.markdown-body pre code .hljs-selector-id {
  color: #e8bf6a !important;
}

.markdown-body pre code .hljs-emphasis {
  font-style: italic;
}

.markdown-body pre code .hljs-strong {
  font-weight: 700;
}

.markdown-body pre code .hljs-tag {
  color: #e8bf6a !important;
}

.markdown-body pre code .hljs-attr {
  color: #bababa !important;
}

.markdown-body pre code .hljs-built_in,
.markdown-body pre code .hljs-builtin-name {
  color: #8888c6 !important;
}

.markdown-body pre code .hljs-doctag {
  text-decoration: underline;
}

.markdown-body pre code .hljs-params {
  color: #b9bcd1 !important;
}

.markdown-body pre code .hljs-formula {
  background: #3c3f41;
  color: #9e9e9e;
  font-style: italic;
}

.markdown-body pre code .hljs-regexp {
  background: #364135;
}

.markdown-body pre code .hljs-subst {
  color: #a9b7c6 !important;
}



/* 移除代码块中 URL 的特殊颜色标识 - 适用于前台和后台 */
.markdown-body pre code .hljs-link,
.preview-content pre code .hljs-link,
.doc-preview pre code .hljs-link,
.markdown-body pre code a,
.preview-content pre code a,
.doc-preview pre code a,
.markdown-body pre code .hljs-string.hljs-link,
.preview-content pre code .hljs-string.hljs-link,
.doc-preview pre code .hljs-string.hljs-link {
  color: inherit !important;
  text-decoration: none !important;
  pointer-events: none !important;
}

/* 移除 URL 被误识别为其他语法的颜色标识 - 使用更高优先级 */
.markdown-body pre code span.hljs-symbol,
.preview-content pre code span.hljs-symbol,
.doc-preview pre code span.hljs-symbol,
#markdownPreview pre code span.hljs-symbol,
.markdown-body pre code span.hljs-regexp,
.preview-content pre code span.hljs-regexp,
.doc-preview pre code span.hljs-regexp,
#markdownPreview pre code span.hljs-regexp {
  color: #a9b7c6 !important;
}

/* 确保 txt/text/plaintext 格式的代码块中所有内容都是统一颜色 */
.markdown-body pre code.language-txt,
.preview-content pre code.language-txt,
.doc-preview pre code.language-txt,
#markdownPreview pre code.language-txt,
.markdown-body pre code.language-text,
.preview-content pre code.language-text,
.doc-preview pre code.language-text,
#markdownPreview pre code.language-text,
.markdown-body pre code.language-plaintext,
.preview-content pre code.language-plaintext,
.doc-preview pre code.language-plaintext,
#markdownPreview pre code.language-plaintext,
.markdown-body pre code.txt,
.preview-content pre code.txt,
.doc-preview pre code.txt,
#markdownPreview pre code.txt,
.markdown-body pre code.text,
.preview-content pre code.text,
.doc-preview pre code.text,
#markdownPreview pre code.text,
.markdown-body pre code.plaintext,
.preview-content pre code.plaintext,
.doc-preview pre code.plaintext,
#markdownPreview pre code.plaintext {
  color: #a9b7c6 !important;
}

.markdown-body pre code.language-txt *,
.preview-content pre code.language-txt *,
.doc-preview pre code.language-txt *,
#markdownPreview pre code.language-txt *,
.markdown-body pre code.language-text *,
.preview-content pre code.language-text *,
.doc-preview pre code.language-text *,
#markdownPreview pre code.language-text *,
.markdown-body pre code.language-plaintext *,
.preview-content pre code.language-plaintext *,
.doc-preview pre code.language-plaintext *,
#markdownPreview pre code.language-plaintext *,
.markdown-body pre code.txt *,
.preview-content pre code.txt *,
.doc-preview pre code.txt *,
#markdownPreview pre code.txt *,
.markdown-body pre code.text *,
.preview-content pre code.text *,
.doc-preview pre code.text *,
#markdownPreview pre code.text *,
.markdown-body pre code.plaintext *,
.preview-content pre code.plaintext *,
.doc-preview pre code.plaintext *,
#markdownPreview pre code.plaintext * {
  color: inherit !important;
  text-decoration: none !important;
}

/* 针对被误识别为 Ruby 语言的纯文本 */
.markdown-body pre code.language-ruby .hljs-symbol,
.preview-content pre code.language-ruby .hljs-symbol,
.doc-preview pre code.language-ruby .hljs-symbol,
#markdownPreview pre code.language-ruby .hljs-symbol,
.markdown-body pre code.language-ruby .hljs-regexp,
.preview-content pre code.language-ruby .hljs-regexp,
.doc-preview pre code.language-ruby .hljs-regexp,
#markdownPreview pre code.language-ruby .hljs-regexp {
  color: #a9b7c6 !important;
}
