/*
 * Zeover Blog - Syntax Highlighting
 * Custom theme matching the Zeover color palette
 * Compatible with highlight.js (Hexo default)
 *
 * Supports .theme-light and .theme-dark
 */

/* ============================================
 * DARK THEME (default)
 * ============================================ */
.hljs {
  background: transparent;
  color: #FCE1C8;
}

/* Comments */
.hljs-comment,
.hljs-quote {
  color: #8a7a6a;
  font-style: italic;
}

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

/* Strings */
.hljs-string,
.hljs-attr,
.hljs-symbol,
.hljs-bullet,
.hljs-addition {
  color: #c9a56a;
}

/* Numbers */
.hljs-number,
.hljs-literal {
  color: #ff791b;
}

/* Functions */
.hljs-title,
.hljs-section {
  color: #fff6ee;
  font-weight: 500;
}

/* Variables, attributes */
.hljs-variable,
.hljs-template-variable,
.hljs-attribute {
  color: #fce1c8;
}

/* Built-ins, classes */
.hljs-built_in,
.hljs-class .hljs-title {
  color: #f1c276;
}

/* Tags (HTML/XML) */
.hljs-tag {
  color: #c66433;
}

.hljs-name {
  color: #f0bf8f;
}

/* Deletion */
.hljs-deletion {
  color: #ff681c;
  background: rgba(255, 104, 28, 0.1);
}

/* Addition */
.hljs-addition {
  color: #c9a56a;
  background: rgba(201, 165, 106, 0.1);
}

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

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

/* Meta, preprocessor */
.hljs-meta {
  color: #8a7a6a;
}

.hljs-meta .hljs-keyword {
  color: #c66433;
}

/* Links in code */
.hljs-link {
  color: #f0bf8f;
  text-decoration: underline;
}

/* Selection */
.hljs::selection,
.hljs ::selection {
  background: rgba(240, 191, 143, 0.2);
}

/* Line numbers (if using plugin) */
.hljs-ln-numbers {
  color: #5a4a3a;
  border-right: 1px solid var(--border-default);
  padding-right: 1rem;
  margin-right: 1rem;
  user-select: none;
}

/* Diff highlighting */
.hljs-diff-addition {
  background: rgba(201, 165, 106, 0.15);
}

.hljs-diff-deletion {
  background: rgba(255, 104, 28, 0.15);
}

/* ============================================
 * LIGHT THEME overrides
 * ============================================ */
.theme-light .hljs {
  color: #3D4355;
}

.theme-light .hljs-comment,
.theme-light .hljs-quote {
  color: #8B93A7;
}

.theme-light .hljs-keyword,
.theme-light .hljs-selector-tag,
.theme-light .hljs-type {
  color: #9B4DCA;
}

.theme-light .hljs-string,
.theme-light .hljs-attr,
.theme-light .hljs-symbol,
.theme-light .hljs-bullet,
.theme-light .hljs-addition {
  color: #0D7C3E;
}

.theme-light .hljs-number,
.theme-light .hljs-literal {
  color: #D4621A;
}

.theme-light .hljs-title,
.theme-light .hljs-section {
  color: #1A1D26;
  font-weight: 500;
}

.theme-light .hljs-variable,
.theme-light .hljs-template-variable,
.theme-light .hljs-attribute {
  color: #3D4355;
}

.theme-light .hljs-built_in,
.theme-light .hljs-class .hljs-title {
  color: #B45309;
}

.theme-light .hljs-tag {
  color: #C2410C;
}

.theme-light .hljs-name {
  color: #9B4DCA;
}

.theme-light .hljs-deletion {
  color: #DC2626;
  background: rgba(220, 38, 38, 0.06);
}

.theme-light .hljs-addition {
  color: #0D7C3E;
  background: rgba(13, 124, 62, 0.06);
}

.theme-light .hljs-meta {
  color: #8B93A7;
}

.theme-light .hljs-meta .hljs-keyword {
  color: #C2410C;
}

.theme-light .hljs-link {
  color: #2563EB;
}

.theme-light .hljs::selection,
.theme-light .hljs ::selection {
  background: rgba(37, 99, 235, 0.15);
}

.theme-light .hljs-ln-numbers {
  color: #B0B8C9;
}

.theme-light .hljs-diff-addition {
  background: rgba(13, 124, 62, 0.08);
}

.theme-light .hljs-diff-deletion {
  background: rgba(220, 38, 38, 0.08);
}
