/* ============================================================
   Prism 语法高亮主题 —— 颜色全部由 DESIGN.md 靛蓝/珊瑚/墨色 token 衍生
   （keyword=珊瑚、string/number=靛蓝、function=靛蓝 hover、comment=tertiary）
   深色模式自动生效：全部通过 CSS 变量引用，不引入独立高饱和色。
   ============================================================ */
code[class*="language-"],
pre[class*="language-"] {
  color: var(--text, #1D1F24);
  font-family: var(--font-mono, 'JetBrains Mono', monospace);
  font-size: 0.88em;
  line-height: 1.6;
  text-shadow: none;
  direction: ltr;
  text-align: left;
  white-space: pre;
  word-spacing: normal;
  word-break: normal;
  tab-size: 4;
  hyphens: none;
}

pre[class*="language-"] {
  background: var(--bg-alt);
  border: 1px solid var(--border-light);
  border-radius: var(--radius-sm);
  overflow: auto;
}
pre[class*="language-"]::-webkit-scrollbar { height: 8px; }
pre[class*="language-"]::-webkit-scrollbar-thumb { background: var(--border); border-radius: 4px; }

:not(pre) > code[class*="language-"] {
  padding: 0.15em 0.35em;
  border-radius: var(--radius-2xs);
  background: var(--bg-alt);
}

/* 语法 token */
.token.comment,
.token.prolog,
.token.doctype,
.token.cdata { color: var(--text-tertiary); font-style: italic; }

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

.token.property,
.token.tag,
.token.constant,
.token.symbol,
.token.deleted { color: var(--warm); }

.token.boolean,
.token.number { color: var(--accent); }

.token.selector,
.token.attr-name,
.token.string,
.token.char,
.token.builtin,
.token.inserted { color: var(--accent); }

.token.operator,
.token.entity,
.token.url,
.language-css .token.string,
.style .token.string { color: var(--text-secondary); }

.token.atrule,
.token.attr-value,
.token.keyword { color: var(--warm); }

.token.function,
.token.class-name { color: var(--accent-hover); }

.token.regex,
.token.important,
.token.variable { color: var(--warm); }

.token.important,
.token.bold { font-weight: 600; }
.token.italic { font-style: italic; }
