.hljs {
    /* https://github.com/highlightjs/highlight.js/blob/3209cca58146c1287123c3d3bb3eb982174d64fd/src/styles/github.css */
    /* prettylights-syntax-keyword */
    --keyword: #d73a49;
    /* prettylights-syntax-entity */
    --entity: #6f42c1;
    /* prettylights-syntax-constant */
    --constant: #005cc5;
    /* prettylights-syntax-string */
    --string: #032f62;
    /* prettylights-syntax-variable */
    --variable: #e36209;
    /* prettylights-syntax-comment */
    --comment: #6a737d;
    /* prettylights-syntax-entity-tag */
    --entity-tag: #22863a;
    /* prettylights-syntax-storage-modifier-import */
    --storage-modifier-import: #24292e;
    /* prettylights-syntax-markup-heading */
    --markup-heading: #005cc5;
    /* prettylights-syntax-markup-list */
    --markup-list: #735c0f;
    /* prettylights-syntax-markup-italic */
    --markup-italic: #24292e;
    /* prettylights-syntax-markup-bold */
    --markup-bold: #24292e;
    /* prettylights-syntax-markup-inserted */
    --markup-inserted: #22863a;
    --markup-inserted-bg: #f0fff4;
    /* prettylights-syntax-markup-deleted */
    --markup-deleted: #b31d28;
    --markup-deleted-bg: #ffeef0;
}

@media (prefers-color-scheme: dark) {
    .hljs {
        /* https://github.com/highlightjs/highlight.js/blob/3209cca58146c1287123c3d3bb3eb982174d64fd/src/styles/github-dark.css */
        /* prettylights-syntax-keyword */
        --keyword: #ff7b72;
        /* prettylights-syntax-entity */
        --entity: #d2a8ff;
        /* prettylights-syntax-constant */
        --constant: #79c0ff;
        /* prettylights-syntax-string */
        --string: #a5d6ff;
        /* prettylights-syntax-variable */
        --variable: #ffa657;
        /* prettylights-syntax-comment */
        --comment: #8b949e;
        /* prettylights-syntax-entity-tag */
        --entity-tag: #7ee787;
        /* prettylights-syntax-storage-modifier-import */
        --storage-modifier-import: #c9d1d9;
        /* prettylights-syntax-markup-heading */
        --markup-heading: #1f6feb;
        /* prettylights-syntax-markup-list */
        --markup-list: #f2cc60;
        /* prettylights-syntax-markup-italic */
        --markup-italic: #c9d1d9;
        /* prettylights-syntax-markup-bold */
        --markup-bold: #c9d1d9;
        /* prettylights-syntax-markup-inserted */
        --markup-inserted: #aff5b4;
        --markup-inserted-bg: #033a16;
        /* prettylights-syntax-markup-deleted */
        --markup-deleted: #ffdcd7;
        --markup-deleted-bg: #67060c;
    }
}

.hljs-doctag,
.hljs-keyword,
.hljs-meta .hljs-keyword,
.hljs-template-tag,
.hljs-template-variable,
.hljs-type,
.hljs-variable.language_ {
    color: var(--keyword);
}

.hljs-title,
.hljs-title.class_,
.hljs-title.class_.inherited__,
.hljs-title.function_ {
    color: var(--entity);
}

.hljs-attr,
.hljs-attribute,
.hljs-literal,
.hljs-meta,
.hljs-number,
.hljs-operator,
.hljs-variable,
.hljs-selector-attr,
.hljs-selector-class,
.hljs-selector-id {
    color: var(--constant);
}

.hljs-regexp,
.hljs-string,
.hljs-meta .hljs-string {
    color: var(--string);
}

.hljs-built_in,
.hljs-symbol {
    color: var(--variable);
}

.hljs-comment,
.hljs-code,
.hljs-formula {
    color: var(--comment);
}

.hljs-name,
.hljs-quote,
.hljs-selector-tag,
.hljs-selector-pseudo {
    color: var(--entity-tag);
}

.hljs-subst {
    color: var(--storage-modifier-import);
}

.hljs-section {
    color: var(--markup-heading);
    font-weight: bold;
}

.hljs-bullet {
    color: var(--markup-list);
}

.hljs-emphasis {
    color: var(--markup-italic);
    font-style: italic;
}

.hljs-strong {
    color: var(--markup-bold);
    font-weight: bold;
}

.hljs-addition {
    color: var(--markup-inserted);
    background-color: var(--markup-inserted-bg);
}

.hljs-deletion {
    color: var(--markup-deleted);
    background-color: var(--markup-deleted-bg);
}

.hljs-char.escape_,
.hljs-link,
.hljs-params,
.hljs-property,
.hljs-punctuation,
.hljs-tag {/* purposely ignored */
}
