/* =============================================================================
   Prism theme for colinodell.com.

   Replaces the vendored Prism theme that used to live in /vendor/prism/themes
   (deleted along with Bootstrap; the Prism JS in
   /vendor/prism/ is untouched). Loaded only on blog pages, from baseof.html.

   Block chrome -- background, border, padding, size -- comes from `.prose pre`
   in styles.css, so nothing here sets it: this file is token colours only, on
   the same light-dark() scheme as the rest of the site.

   Five hues, all desaturated: copper for keywords, verdigris for strings,
   steel for callables, lilac for literals, slate for comments.
   ========================================================================== */

:root {
  /* light value first. color-scheme comes from styles.css. */
  --code-comment: light-dark(#7a8790, #6b7a85);
  --code-punct: light-dark(#5d6b75, #8b9aa5);
  --code-keyword: light-dark(#9c4f10, #e0955a);
  --code-string: light-dark(#0e6b57, #7fcfb6);
  --code-literal: light-dark(#6d3f9c, #c3a3dd);
  --code-callable: light-dark(#1f5d8c, #8fb8d8);
  --code-name: light-dark(#2b3944, #b9c7d1);
  --code-deleted: light-dark(#a52f27, #e0837b);
  --code-inserted: light-dark(#16643c, #7ec99c);
  --code-deleted-bg: light-dark(rgba(165, 47, 39, 0.07), rgba(224, 131, 123, 0.1));
  --code-inserted-bg: light-dark(rgba(22, 100, 60, 0.07), rgba(126, 201, 156, 0.1));
}

code[class*='language-'],
pre[class*='language-'] {
  color: var(--text);
  font-family: var(--font-mono);
  direction: ltr;
  text-align: left;
  white-space: pre;
  word-spacing: normal;
  word-break: normal;
  tab-size: 4;
  hyphens: none;
}

.token.comment,
.token.prolog,
.token.doctype,
.token.cdata { color: var(--code-comment); font-style: italic; }

.token.punctuation { color: var(--code-punct); }

.token.namespace { opacity: 0.7; }

.token.keyword,
.token.atrule,
.token.rule,
.token.important,
.token.selector { color: var(--code-keyword); }

.token.string,
.token.char,
.token.attr-value,
.token.regex { color: var(--code-string); }

.token.number,
.token.boolean,
.token.constant,
.token.symbol,
.token.entity,
.token.url { color: var(--code-literal); }

.token.function,
.token.class-name,
.token.tag,
.token.builtin { color: var(--code-callable); }

.token.variable,
.token.property,
.token.attr-name,
.token.parameter { color: var(--code-name); }

.token.operator { color: var(--code-punct); }

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

/* diff blocks -- several posts show patches */
.token.deleted { color: var(--code-deleted); background: var(--code-deleted-bg); }
.token.inserted { color: var(--code-inserted); background: var(--code-inserted-bg); }

.token.coord { color: var(--code-comment); }
