/*
vscode style for highlight.js (c) xkk1 <xkk1@120107.xyz>
Copyright (C) 2024  [xkk1](https://github.com/xkk1)

This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 3 of the License, or
(at your option) any later version.

This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
GNU General Public License for more details.

You should have received a copy of the GNU General Public License
along with this program.  If not, see <https://www.gnu.org/licenses/>.
*/

/* [data-theme="light"] */
:root {
  --hljs-color: #3B3B3B;
  --hljs-background-color: #FFFFFF;
  --hljs-selector-class-color: #800000;
  --hljs-attribute-color: #E50000;
  --hljs-attr-color: #0451A5;
  --hljs-string-color: #A31515;
  --hljs-number-color: #098658;
  --hljs-comment-color: #008000;
  --hljs-title-color: #795E26;
  --hljs-built_in-color: #795E26;
  --hljs-keyword-color: #AF00DB;
  --hljs-section-color: #800000;
  --hljs-tag-color: #800000;
  --hljs-name-color: #800000;
  --hljs-quote-color: #0451A5;
  --hljs-bullet-color: #0451A5;
  --hljs-type-color: #267F99;
  --hljs-variable-color: #001080;
  --hljs-meta-color: #0000FF;
  --hljs-subst-color: #0431FA;

  --hljs-attr-color-html: #E50000;
  --hljs-attr-color-xml: #E50000;
  --hljs-keyword-color-latex: #795E26;
  --hljs-built_in-color-latex: #AF00DB;
  --hljs-strong-color-markdown: #000080;
  --hljs-strong-emphasis-color-markdown: #000080;
  --hljs-keyword-color-java: #0000FF;
  --hljs-string-color-html: #0000FF;
  --hljs-string-color-xml: #0000FF;
  --hljs-title-class_-color: #267F99;


}

[data-theme="dark"] {
  --hljs-color: #CCCCCC;
  --hljs-background-color: #1F1F1F;
  --hljs-selector-class-color: #D7BA7D;
  --hljs-attribute-color: #9CDCFE;
  --hljs-attr-color: #9CDCFE;
  --hljs-string-color: #CE9178;
  --hljs-number-color: #B5CEA8;
  --hljs-comment-color: #6A9955;
  --hljs-title-color: #DCDCAA;
  --hljs-built_in-color: #DCDCAA;
  --hljs-keyword-color: #C586C0;
  --hljs-section-color: #800000;
  --hljs-tag-color: #569CD6;
  --hljs-name-color: #569CD6;
  --hljs-quote-color: #6A9955;
  --hljs-bullet-color: #6796E6;
  --hljs-type-color: #569CD6;
  --hljs-variable-color: #9CDCFE;
  --hljs-meta-color: #C586C0;
  --hljs-subst-color: #569CD6;

  --hljs-strong-color-markdown: #569CD6;
  --hljs-strong-emphasis-color-markdown: #569CD6;
  --hljs-meta-color-latex: #6A9955;
  --hljs-title-class_-color: #4EC9B0;
  --hljs-type-color-java: #4EC9B0;
  --hljs-keyword-color-latex: #DCDCAA;
}

pre code.hljs {
  display: block;
  overflow-x: auto;
  white-space: pre;
  padding: 0.5em;
  color: var(--hljs-color);
  background-color: var(--hljs-background-color);
}

pre:has(code.hljs) {
  background-color: var(--hljs-background-color);
}

.hljs-selector-class {
  color: var(--hljs-selector-class-color);
}

.hljs-attribute {
  color: var(--hljs-attribute-color);
}

.hljs-attr {
  color: var(--hljs-attr-color);
}

.hljs-string {
  color: var(--hljs-string-color);
}

.hljs-number {
  color: var(--hljs-number-color);
}

.hljs-comment {
  color: var(--hljs-comment-color);
}

.hljs-title {
  color: var(--hljs-title-color);
}

.hljs-built_in {
  color: var(--hljs-built_in-color);
}

.hljs-keyword {
  color: var(--hljs-keyword-color);
}

.hljs-section {
  color: var(--hljs-section-color);
}

.hljs-tag {
  color: var(--hljs-tag-color);
}

.hljs-name {
  color: var(--hljs-name-color);
}


.hljs-quote {
  color: var(--hljs-quote-color);
}

.hljs-bullet {
  color: var(--hljs-quote-color);
}


.hljs-type {
  color: var(--hljs-type-color);
}

.hljs-variable {
  color: var(--hljs-variable-color);
}

.hljs-meta {
  color: var(--hljs-meta-color);
}

.hljs-subst {
  color: var(--hljs-subst-color);
}


.language-html .hljs-attr {
  color: var(--hljs-attr-color-html, var(--hljs-attr-color));
}

.language-xml .hljs-attr {
  color: var(--hljs-attr-color-xml, var(--hljs-attr-color));
}

.language-latex .hljs-keyword {
  color: var(--hljs-keyword-color-latex, var(--hljs-keyword-color));
}

.language-latex .hljs-built_in {
  color: var(--hljs-built_in-color-latex, var(--hljs-built_in-color));
}

.language-markdown .hljs-strong {
  color: var(--hljs-strong-color-markdown, var(--hljs-strong-color));
}

.language-markdown .hljs-strong .hljs-emphasis {
  color: var(--hljs-strong-emphasis-color-markdown, var(--hljs-strong-color));
}

.language-java .hljs-keyword {
  color: var(--hljs-keyword-color-java, var(--hljs-keyword-color));
}

.language-html .hljs-string {
  color: var(--hljs-string-color-html, var(--hljs-string-color));

}

.language-xml .hljs-string {
  color: var(--hljs-string-color-xml, var(--hljs-string-color));

}

.hljs-title.class_ {
  color: var(--hljs-title-class_-color, var(--hljs-title-color));
}

.language-latex .hljs-meta {
  color: var(--hljs-meta-color-latex, var(--hljs-meta-color));
}

.language-java .hljs-type {
  color: var(--hljs-type-color-java, var(--hljs-type-color));
}

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

.hljs-strong,
.language-markdown .hljs-section {
  font-weight: bold;
}

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