/* Syntax highlighting theme for highlight.js.
   Maps hljs token classes to CSS variables with fallbacks to the
   existing CivNode theme palette. Themes can optionally define
   --syntax-* variables for finer control. */

/* ── Token colors ──────────────────────────────────────────────── */

.hljs-keyword,
.hljs-selector-tag,
.hljs-built_in,
.hljs-name,
.hljs-tag {
  color: var(--syntax-keyword, var(--accent));
}

.hljs-string,
.hljs-title.class_.inherited__,
.hljs-template-variable,
.hljs-template-tag {
  color: var(--syntax-string, var(--success));
}

.hljs-comment,
.hljs-quote {
  color: var(--syntax-comment, var(--text-muted));
  font-style: italic;
}

.hljs-number,
.hljs-literal {
  color: var(--syntax-number, var(--error));
}

.hljs-type,
.hljs-params,
.hljs-class .hljs-title,
.hljs-title.class_ {
  color: var(--syntax-type, var(--text-secondary));
}

.hljs-function .hljs-title,
.hljs-title.function_ {
  color: var(--syntax-function, var(--text-primary));
}

.hljs-meta,
.hljs-meta .hljs-keyword {
  color: var(--syntax-meta, var(--text-muted));
}

.hljs-attr,
.hljs-attribute,
.hljs-symbol {
  color: var(--syntax-attr, var(--accent));
  opacity: 0.85;
}

.hljs-variable,
.hljs-bullet,
.hljs-link {
  color: var(--syntax-variable, var(--text-primary));
}

.hljs-regexp,
.hljs-selector-attr,
.hljs-selector-pseudo {
  color: var(--syntax-regexp, var(--success));
  opacity: 0.85;
}

.hljs-deletion {
  color: var(--error);
}

.hljs-addition {
  color: var(--success);
}

.hljs-section,
.hljs-title {
  color: var(--syntax-keyword, var(--accent));
  font-weight: 600;
}

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

.hljs-strong {
  font-weight: 700;
}
