body.dark-theme .language-help {
    --background-color: #2d2d2d;
    --text-color: black;
    --comment-color: #7b7e84;
    --string-color: #c29e7c;
    --keyword-color: #8d9eb1;
    --function-color: #888888;
    --number-color: #b5cea8;
    --operator-color: #bbbdc2;
    --punctuation-color: #888888;
    --type-float-color: #408eed;
    --type-vector-color: #c07ed7;
    --type-int-color: #9bb052;
    --type-float-vector-color: #91a1b3;
    --type-matrix-color: #63ba91;
    --type-void-color: #cccccc;
    --type-string-color: #c29e7c;
    --type-generic-color: #8d9eb1;
    --variable-color: #888888;
    --argtype-color: #ff6347; /* Example color for argtype */
}

body.light-theme .language-help {
    --background-color: #f2f2f2;
    --text-color: #000;
    --comment-color: #7b7e84;
    --string-color: #c29e7c;
    --keyword-color: #8d9eb1;
    --function-color: #000;
    --number-color: #b5cea8;
    --operator-color: #bbbdc2;
    --punctuation-color: #888888;
    --type-float-color: #1363c8;
    --type-vector-color: #8c34ab;
    --type-int-color: #9bb052;
    --type-float-vector-color: #91a1b3;
    --type-matrix-color: #63ba91;
    --type-void-color: #cccccc;
    --type-string-color: #c29e7c;
    --type-generic-color: #8d9eb1;
    --variable-color: #000;
}

.language-help {
    background-color: var(--background-color) !important;
    color: var(--text-color);
}

/* Comments */
.language-help .token.comment {
    color: var(--comment-color) !important;
}

/* Strings */
.language-help .token.string {
    color: var(--string-color) !important;
}

/* Keywords */
.language-help .token.keyword {
    color: var(--keyword-color) !important;
}

/* Functions */
.language-help .token.function {
    color: var(--function-color);
}

/* Numbers */
.language-help .token.number {
    color: var(--number-color) !important;
}

/* Operators */
.language-help .token.operator {
    color: var(--operator-color) !important;
}

/* Punctuation */
.language-help .token.punctuation {
    color: var(--punctuation-color) !important;
}

/* Types */
.language-help .token.type-float {
    color: var(--type-float-color) !important;
}

.language-help .token.type-vector {
    color: var(--type-vector-color) !important;
}

.language-help .token.type-int {
    color: var(--type-int-color) !important;
}

.language-help .token.type-float-vector {
    color: var(--type-float-vector-color) !important;
}

.language-help .token.type-matrix {
    color: var(--type-matrix-color) !important;
}

.language-help .token.type-void {
    color: var(--type-void-color) !important;
}

.language-help .token.type-string {
    color: var(--type-string-color) !important;
}

.language-help .token.type-generic {
    color: var(--type-generic-color) !important;
}

.language-help .token.arg-container {
    display: inline-block;
    position: relative;
    margin-right: -0.5em; 
}

.language-help .token.argtype {
    font-size: 0.5em;
    position: absolute;
    left: 1em;
    white-space: nowrap;
}

/* Match argtype colors to corresponding types */
.language-help .token.argtype.type-float {
    color: var(--type-float-color) !important;
}

.language-help .token.argtype.type-vector {
    color: var(--type-vector-color) !important;
}

.language-help .token.argtype.type-int {
    color: var(--type-int-color) !important;
}

.language-help .token.argtype.type-float-vector {
    color: var(--type-float-vector-color) !important;
}

.language-help .token.argtype.type-matrix {
    color: var(--type-matrix-color) !important;
}

.language-help .token.argtype.type-void {
    color: var(--type-void-color) !important;
}

.language-help .token.argtype.type-string {
    color: var(--type-string-color) !important;
}

.language-help .token.argtype.type-generic {
    color: var(--type-generic-color) !important;
}

.language-help .token.variable {
    display: inline-block;
    position: relative;
    padding-top: 0.4em; 
    color: var(--variable-color) !important;
}
