/*
 * Visual Studio 2015 dark style - WCAG AAA Accessible Version
 * Based on original by Nicolas LLOBERA <nllobera@gmail.com>
 * Modified for 7:1 contrast ratio (WCAG 2.1 AAA)
 * Background overridden by htl-doc.css to #494949
 */

.hljs {
  display: block;
  overflow-x: auto;
  padding: 0.5em;
  background: #494949;
  color: #FFFFFF;
  font-weight: normal;
  --font-size: 1.15em !important;
}

/* Keywords, literals, symbols, names - bright blue for #494949 bg (7:1+) */
.hljs-keyword,
.hljs-literal,
.hljs-symbol,
.hljs-name {
  color: #C0EDFF;
}

.hljs-link {
  color: #A8E4FF;
  text-decoration: underline;
}

/* Built-in types - bright teal */
.hljs-built_in,
.hljs-type {
  color: #6EE7D6;
}

/* Markdown inline/fenced code spans.
   Previously unstyled, so these tokens fell back to the base .hljs white and were
   indistinguishable from surrounding prose in a markdown sample. Upstream vs2015 leaves
   .hljs-code commented out, so there is no original colour to inherit.
   #ABF1E7 is the teal above lightened until it clears 7:1 on BOTH code-block backgrounds
   (#494949 in light mode, #000000 in dark - see .HTL-doc .hljs in htl-doc.css):
   measured 7.06:1 on #494949 and 16.48:1 on #000000. It sits closest to .hljs-link's
   #A8E4FF, which is acceptable because links are underlined and so stay distinguishable
   without relying on colour. //-- SG */
.hljs-code {
  color: #ABF1E7;
}

/* Numbers, classes - bright green */
.hljs-number,
.hljs-class {
  color: #D4EEBC;
}

/* Strings - bright salmon (7:1+) */
.hljs-string,
.hljs-meta-string {
  color: #FFE8DD;
}

/* Regexp, template tags - bright orange */
.hljs-regexp,
.hljs-template-tag {
  color: #FFB88A;
}

/* Subst, function, title, params - white */
.hljs-subst,
.hljs-function,
.hljs-title,
.hljs-params,
.hljs-formula {
  color: #FFFFFF;
}

/* Comments - bright green */
.hljs-comment,
.hljs-quote {
  color: #98E088;
  font-style: italic;
}

/* Doctag - bright green */
.hljs-doctag {
  color: #A8D89A;
}

/* Meta, tags - light gray (7:1+) */
.hljs-meta,
.hljs-meta-keyword,
.hljs-tag {
  color: #E8E8E8;
}

/* Variables - bright purple */
.hljs-variable,
.hljs-template-variable {
  color: #EDA4F5;
}

/* Attributes - bright cyan */
.hljs-attr,
.hljs-attribute,
.hljs-builtin-name {
  color: #B8EEFF;
}

.hljs-section {
  color: #FFE566;
}

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

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

/* Selectors - bright yellow */
.hljs-bullet,
.hljs-selector-tag,
.hljs-selector-id,
.hljs-selector-class,
.hljs-selector-attr,
.hljs-selector-pseudo {
  color: #F5DFA0;
}

.hljs-addition {
  background-color: #2D6B2A;
  display: inline-block;
  width: 100%;
}

.hljs-deletion {
  background-color: #8B2A2A;
  display: inline-block;
  width: 100%;
}
