/*
 * Prism syntax-highlighting theme for Benji's Digital blog code blocks.
 *
 * Shipped as a static stylesheet (NOT a scoped Astro <style>) so it loads via a
 * plain <link rel="stylesheet"> — covered by the CSP `style-src 'self'`. Prism
 * colors tokens with CSS classes (.token.tag etc.), so there are zero inline
 * `style=` attributes, unlike Shiki. Dark palette tuned to the GitHub-dark look
 * the blog used previously (bg #24292e) and the site's slate scale.
 */

pre[class*="language-"],
code[class*="language-"] {
  color: #e1e4e8;
  background: none;
  font-family: ui-monospace, SFMono-Regular, "SF Mono", Menlo, Consolas,
    "Liberation Mono", monospace;
  font-size: 14px;
  line-height: 1.6;
  text-align: left;
  white-space: pre;
  word-spacing: normal;
  word-break: normal;
  word-wrap: normal;
  tab-size: 2;
  hyphens: none;
}

pre[class*="language-"] {
  margin: 1.6em 0;
  padding: 1.15em 1.35em;
  overflow: auto;
  border-radius: 12px;
  background: #24292e;
  border: 1px solid rgba(255, 255, 255, 0.08);
}

:not(pre) > code[class*="language-"] {
  padding: 0.15em 0.4em;
  border-radius: 6px;
  background: #24292e;
  white-space: normal;
}

.token.comment,
.token.prolog,
.token.doctype,
.token.cdata {
  color: #8b949e;
  font-style: italic;
}

.token.punctuation {
  color: #c9d1d9;
}

.token.tag,
.token.keyword,
.token.selector,
.token.important,
.token.atrule {
  color: #ff7b72;
}

.token.attr-name,
.token.class-name,
.token.property,
.token.constant,
.token.symbol {
  color: #79c0ff;
}

.token.attr-value,
.token.string,
.token.char,
.token.regex,
.token.url {
  color: #a5d6ff;
}

.token.boolean,
.token.number,
.token.function {
  color: #d2a8ff;
}

.token.operator,
.token.entity,
.token.variable {
  color: #ffa657;
}

.token.namespace {
  opacity: 0.7;
}

.token.bold {
  font-weight: 700;
}

.token.italic {
  font-style: italic;
}
