/* ═══════════════════════════════════════════════════════
   highlight.css — Custom syntax highlight overrides
   Extends the highlight.js github-dark theme to match blog palette
   ═══════════════════════════════════════════════════════ */

/* Override background to match our design system */
.hljs {
  background: var(--code-bg) !important;
  color: #c9d1d9 !important;
}

/* Comments */
.hljs-comment,
.hljs-quote {
  color: #5c6578 !important;
  font-style: italic;
}

/* Keywords */
.hljs-keyword,
.hljs-selector-tag,
.hljs-type {
  color: #ff7b72 !important;
}

/* Strings */
.hljs-string,
.hljs-addition {
  color: #a5d6ff !important;
}

/* Numbers */
.hljs-number,
.hljs-literal {
  color: #79c0ff !important;
}

/* Functions */
.hljs-title.function_,
.hljs-title.class_ {
  color: #d2a8ff !important;
}

/* Built-ins */
.hljs-built_in {
  color: #ffa657 !important;
}

/* Variables / params */
.hljs-variable,
.hljs-params {
  color: #c9d1d9 !important;
}

/* Attributes */
.hljs-attr,
.hljs-attribute {
  color: #79c0ff !important;
}

/* Decorators / Meta */
.hljs-meta {
  color: #8892a4 !important;
}

/* Deletion */
.hljs-deletion {
  color: #ffa198 !important;
  background: rgba(255, 129, 130, 0.1);
}

/* Addition */
.hljs-addition {
  background: rgba(62, 207, 142, 0.1);
}

/* Section */
.hljs-section {
  color: var(--accent) !important;
  font-weight: 700;
}

/* Emphasis & Strong */
.hljs-emphasis {
  font-style: italic;
}

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

/* ─── Light Theme Overrides ─── */
[data-theme="light"] .hljs {
  background: var(--code-bg) !important;
  color: #24292f !important;
}

[data-theme="light"] .hljs-comment,
[data-theme="light"] .hljs-quote {
  color: #8a87a0 !important;
}

[data-theme="light"] .hljs-keyword,
[data-theme="light"] .hljs-selector-tag,
[data-theme="light"] .hljs-type {
  color: #cf222e !important;
}

[data-theme="light"] .hljs-string,
[data-theme="light"] .hljs-addition {
  color: #0a3069 !important;
}

[data-theme="light"] .hljs-number,
[data-theme="light"] .hljs-literal {
  color: #0550ae !important;
}

[data-theme="light"] .hljs-title.function_,
[data-theme="light"] .hljs-title.class_ {
  color: #8250df !important;
}

[data-theme="light"] .hljs-built_in {
  color: #953800 !important;
}

[data-theme="light"] .hljs-variable,
[data-theme="light"] .hljs-params {
  color: #24292f !important;
}

[data-theme="light"] .hljs-attr,
[data-theme="light"] .hljs-attribute {
  color: #0550ae !important;
}

[data-theme="light"] .hljs-meta {
  color: #5a5872 !important;
}
