/* Token theme for Tree-sitter based syntax highlighting */

/* Keywords */
.token-keyword {
  color: var(--color-syntax-keyword, #c792ea);
  font-weight: 500;
}

/* Strings */
.token-string {
  color: var(--color-syntax-string, #c3e88d);
}

/* Numbers */
.token-number {
  color: var(--color-syntax-number, #f78c6c);
}

/* Constants */
.token-constant {
  color: var(--color-syntax-constant, #89ddff);
}

/* Comments */
.token-comment {
  color: var(--color-syntax-comment, #7f848e);
  font-style: italic;
}

/* Variables */
.token-variable {
  color: var(--color-syntax-variable, #f07178);
}

/* Properties */
.token-property {
  color: var(--color-syntax-property, #82aaff);
}

/* Types */
.token-type {
  color: var(--color-syntax-type, #ffcb6b);
}

/* Functions */
.token-function {
  color: var(--color-syntax-function, #82aaff);
}

/* Operators */
.token-operator {
  color: var(--color-syntax-operator, #89ddff);
}

/* Punctuation */
.token-punctuation {
  color: var(--color-syntax-punctuation, var(--color-text));
}

/* Default text */
.token-text {
  color: var(--color-text);
}

/* Identifiers */
.token-identifier {
  color: var(--color-text);
}

/* Booleans */
.token-boolean {
  color: var(--color-syntax-boolean, #ff5370);
}

/* Null/undefined */
.token-null {
  color: var(--color-syntax-null, #ff5370);
}

/* Regular expressions */
.token-regex {
  color: var(--color-syntax-regex, #89ddff);
}

/* JSX */
.token-jsx {
  color: var(--color-syntax-jsx, #89ddff);
}

.token-jsx-attribute {
  color: var(--color-syntax-jsx-attribute, #c792ea);
}

.token-jsx-text {
  color: var(--color-text);
}