/* One Dark Syntax Highlighting for Doxygen-Awesome */

/* Apply to dark mode if using the dark mode toggle */
html.dark-mode {
    /* Code block background and foreground */
    --fragment-background: #282c34;
    --fragment-foreground: #abb2bf;

    /* Keywords: if, else, return, for, while, switch, case, etc. */
    --fragment-keyword: #c678dd;

    /* Type keywords: int, void, float, bool, char, auto, etc. */
    --fragment-keywordtype: #e5c07b;

    /* Flow keywords: return, break, continue, goto */
    --fragment-keywordflow: #c678dd;

    /* General tokens (identifiers, etc.) */
    --fragment-token: #e06c75;

    /* Comments */
    --fragment-comment: #5c6370;

    /* Links to other documentation */
    --fragment-link: #61afef;

    /* Preprocessor directives: #include, #define, #ifdef */
    --fragment-preprocessor: #e06c75;

    /* Line numbers */
    --fragment-linenumber-color: #4b5263;
    --fragment-linenumber-background: #282c34;
    --fragment-linenumber-border: #3e4451;
}

/* If NOT using the dark mode toggle, use this instead: */
@media (prefers-color-scheme: dark) {
    html:not(.light-mode) {
        --fragment-background: #282c34;
        --fragment-foreground: #abb2bf;
        --fragment-keyword: #c678dd;
        --fragment-keywordtype: #e5c07b;
        --fragment-keywordflow: #c678dd;
        --fragment-token: #e06c75;
        --fragment-comment: #5c6370;
        --fragment-link: #61afef;
        --fragment-preprocessor: #e06c75;
        --fragment-linenumber-color: #4b5263;
        --fragment-linenumber-background: #282c34;
        --fragment-linenumber-border: #3e4451;
    }
}

/* Additional styling for string literals (Doxygen uses .stringliteral class) */
html.dark-mode .stringliteral,
html.dark-mode .charliteral {
    color: #98c379 !important;
}

/* Numbers */
html.dark-mode .vhdldigit {
    color: #d19a66 !important;
}

/* Make comments italic like in CLion/One Dark */
html.dark-mode .comment {
    font-style: italic;
}