/* Article blocks deliberately contrast with the surrounding site theme. */
.page-post .joe_detail__article {
  --block-code-bg: #0f172a;
  --block-code-fg: #e2e8f0;
  --block-code-muted: #94a3b8;
  --block-code-border: #334155;
  --block-code-keyword: #c4b5fd;
  --block-code-string: #86efac;
  --block-code-number: #fdba74;
  --block-code-function: #93c5fd;
  --block-code-property: #fda4af;
  --block-code-selection: #334155;
  --block-code-highlight: rgba(148, 163, 184, .12);
}
html[data-mode="dark"] .page-post .joe_detail__article {
  --block-code-bg: #f8fafc;
  --block-code-fg: #1e293b;
  --block-code-muted: #64748b;
  --block-code-border: #cbd5e1;
  --block-code-keyword: #6d28d9;
  --block-code-string: #166534;
  --block-code-number: #9a3412;
  --block-code-function: #1d4ed8;
  --block-code-property: #be123c;
  --block-code-selection: #dbeafe;
  --block-code-highlight: rgba(59, 130, 246, .08);
}
html .page-post .joe_detail__article .code-toolbar,
html .page-post .joe_detail__article pre,
html .page-post .joe_detail__article pre code {
  background: var(--block-code-bg);
  color: var(--block-code-fg);
  text-shadow: none;
}
html .page-post .joe_detail__article pre {
  border: 1px solid var(--block-code-border);
}
html .page-post .joe_detail__article .code-toolbar {
  box-shadow: none;
}
html .page-post .joe_detail__article pre .token {
  color: var(--block-code-fg);
  background: transparent;
  text-shadow: none;
}
html .page-post .joe_detail__article pre :is(.token.comment, .token.prolog, .token.doctype, .token.cdata) { color: var(--block-code-muted); }
html .page-post .joe_detail__article pre :is(.token.keyword, .token.atrule, .token.selector, .token.important) { color: var(--block-code-keyword); }
html .page-post .joe_detail__article pre :is(.token.string, .token.char, .token.attr-value, .token.regex, .token.inserted) { color: var(--block-code-string); }
html .page-post .joe_detail__article pre :is(.token.number, .token.boolean, .token.constant, .token.symbol) { color: var(--block-code-number); }
html .page-post .joe_detail__article pre :is(.token.function, .token.class-name, .token.builtin) { color: var(--block-code-function); }
html .page-post .joe_detail__article pre :is(.token.property, .token.tag, .token.attr-name, .token.deleted, .token.variable) { color: var(--block-code-property); }
html .page-post .joe_detail__article pre .token.deleted { text-decoration: line-through; }
html .page-post .joe_detail__article pre .token.inserted { text-decoration: underline; }
html .page-post .joe_detail__article .line-numbers-rows { border-color: var(--block-code-border); }
html .page-post .joe_detail__article .line-numbers-rows > span::before,
html .page-post .joe_detail__article .toolbar .toolbar-item > :is(span, a, button),
html .page-post .joe_detail__article pre :is(.copy-button, .code-expander) {
  color: var(--block-code-muted);
  background: transparent;
  text-shadow: none;
}
html .page-post .joe_detail__article pre.c_hr::after { background: var(--block-code-border); mix-blend-mode: normal; }
html .page-post .joe_detail__article pre .line-highlight { background: var(--block-code-highlight); }
html .page-post .joe_detail__article pre .line-highlight::before,
html .page-post .joe_detail__article pre .line-highlight::after { background: var(--block-code-border); color: var(--block-code-fg); text-shadow: none; }
html .page-post .joe_detail__article pre::selection,
html .page-post .joe_detail__article pre ::selection { background: var(--block-code-selection); color: var(--block-code-fg); text-shadow: none; }
