/* 代码高亮样式 - 支持深色/浅色主题自动切换 */

/* 基础代码块样式 */
.content pre {
  background-color: #f8f8f8;
  border-radius: 8px;
  padding: 1rem;
  overflow-x: auto;
  margin: 1rem 0;
  border: 1px solid #eee;
  box-shadow: 0 2px 4px rgba(0,0,0,0.05);
  line-height: 1.5;
}

.content code {
  font-family: 'SFMono-Regular', Consolas, 'Liberation Mono', Menlo, monospace;
  font-size: 0.9rem;
  background-color: #f8f8f8;
  padding: 0.2rem 0.4rem;
  border-radius: 4px;
}

.content pre code {
  background: none;
  padding: 0;
}

/* 浅色主题代码高亮 (GitHub Light) */
.content pre {
  color: #24292e;
  background-color: #f8f8f8;
}

.content pre .hljs-comment,
.content pre .hljs-quote {
  color: #6a737d;
}

.content pre .hljs-variable,
.content pre .hljs-template-variable,
.content pre .hljs-tag,
.content pre .hljs-name,
.content pre .hljs-selector-id,
.content pre .hljs-selector-class,
.content pre .hljs-regexp,
.content pre .hljs-deletion {
  color: #e36209;
}

.content pre .hljs-number,
.content pre .hljs-built_in,
.content pre .hljs-builtin-name,
.content pre .hljs-literal,
.content pre .hljs-type,
.content pre .hljs-params,
.content pre .hljs-meta,
.content pre .hljs-link {
  color: #005cc5;
}

.content pre .hljs-attribute {
  color: #005cc5;
}

.content pre .hljs-string,
.content pre .hljs-symbol,
.content pre .hljs-bullet,
.content pre .hljs-addition {
  color: #032f62;
}

.content pre .hljs-title,
.content pre .hljs-section {
  color: #6f42c1;
}

.content pre .hljs-keyword,
.content pre .hljs-selector-tag {
  color: #d73a49;
}

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

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

/* 深色主题代码高亮 (One Dark Pro) */
body.dark-mode .content pre,
@media (prefers-color-scheme: dark) and (not .dark-mode) {
  .content pre {
    color: #abb2bf;
    background-color: #2d2d2d;
    border-color: #444;
  }
  
  .content pre .hljs-comment,
  .content pre .hljs-quote {
    color: #7f848e;
  }
  
  .content pre .hljs-variable,
  .content pre .hljs-template-variable,
  .content pre .hljs-tag,
  .content pre .hljs-name,
  .content pre .hljs-selector-id,
  .content pre .hljs-selector-class,
  .content pre .hljs-regexp,
  .content pre .hljs-deletion {
    color: #e06c75;
  }
  
  .content pre .hljs-number,
  .content pre .hljs-built_in,
  .content pre .hljs-builtin-name,
  .content pre .hljs-literal,
  .content pre .hljs-type,
  .content pre .hljs-params,
  .content pre .hljs-meta,
  .content pre .hljs-link {
    color: #d19a66;
  }
  
  .content pre .hljs-attribute {
    color: #d19a66;
  }
  
  .content pre .hljs-string,
  .content pre .hljs-symbol,
  .content pre .hljs-bullet,
  .content pre .hljs-addition {
    color: #98c379;
  }
  
  .content pre .hljs-title,
  .content pre .hljs-section {
    color: #61afef;
  }
  
  .content pre .hljs-keyword,
  .content pre .hljs-selector-tag {
    color: #c678dd;
  }
  
  .content pre .hljs-emphasis {
    font-style: italic;
  }
  
  .content pre .hljs-strong {
    font-weight: bold;
  }
}

/* 当用户明确设置深色模式时，覆盖系统偏好 */
body.dark-mode .content pre {
  color: #abb2bf;
  background-color: #2d2d2d;
  border-color: #444;
}

body.dark-mode .content pre .hljs-comment,
body.dark-mode .content pre .hljs-quote {
  color: #7f848e;
}

body.dark-mode .content pre .hljs-variable,
body.dark-mode .content pre .hljs-template-variable,
body.dark-mode .content pre .hljs-tag,
body.dark-mode .content pre .hljs-name,
body.dark-mode .content pre .hljs-selector-id,
body.dark-mode .content pre .hljs-selector-class,
body.dark-mode .content pre .hljs-regexp,
body.dark-mode .content pre .hljs-deletion {
  color: #e06c75;
}

body.dark-mode .content pre .hljs-number,
body.dark-mode .content pre .hljs-built_in,
body.dark-mode .content pre .hljs-builtin-name,
body.dark-mode .content pre .hljs-literal,
body.dark-mode .content pre .hljs-type,
body.dark-mode .content pre .hljs-params,
body.dark-mode .content pre .hljs-meta,
body.dark-mode .content pre .hljs-link {
  color: #d19a66;
}

body.dark-mode .content pre .hljs-attribute {
  color: #d19a66;
}

body.dark-mode .content pre .hljs-string,
body.dark-mode .content pre .hljs-symbol,
body.dark-mode .content pre .hljs-bullet,
body.dark-mode .content pre .hljs-addition {
  color: #98c379;
}

body.dark-mode .content pre .hljs-title,
body.dark-mode .content pre .hljs-section {
  color: #61afef;
}

body.dark-mode .content pre .hljs-keyword,
body.dark-mode .content pre .hljs-selector-tag {
  color: #c678dd;
}