// Copyright (c) 2024, the Dart project authors.  Please see the AUTHORS file
// for details. All rights reserved. Use of this source code is governed by a
// BSD-style license that can be found in the LICENSE file.

pre code {
  white-space: pre;
  word-wrap: initial;
  font-size: 100%
}

pre {
  border: 1px solid #ddd;
  background-color: #eee;
  font-size: 14px;

  @media(max-width: 840px) {
    margin: 16px 0;
  }
}

code {
  font-family: 'Roboto Mono', Menlo, monospace;
  color: inherit;
  padding: 0.2em 0.4em;
  font-size: 85%;
  background-color: rgba(27, 31, 35, 0.05);
  border-radius: 3px;
}

// Syntax highlighting, for highlightjs rendered code.
.hljs {
  display: block;
  overflow-x: auto;
  padding: 0.5em;
  color: var(--main-text-color);
  background: var(--main-code-bg);

  .hljs-string, .hljs-doctag {
    color: var(--main-string-color);
  }

  .hljs-number, .hljs-literal, .hljs-variable,
  .hljs-template-variable, .hljs-tag .hljs-attr {
    color: var(--main-var-color);
  }

  .hljs-comment, .hljs-quote {
    color: var(--main-comment-color);
    font-style: italic;
  }

  .hljs-title, .hljs-section, .hljs-selector-id {
    color: var(--main-section-color);
    font-weight: bold;
  }

  .hljs-tag, .hljs-name, .hljs-attribute {
    color: var(--main-tag-color);
    font-weight: normal;
  }

  .hljs-keyword, .hljs-selector-tag, .hljs-subst {
    color: var(--main-keyword-color);
    font-weight: bold;
  }
}
