/* Based on Sublime Text's Monokai theme */

.cm-s-monokai.CodeMirror {
  background: #272822;
  color: #f8f8f2;
}

.cm-s-monokai div.CodeMirror-selected {
  background: #49483E;
}

.cm-s-monokai .CodeMirror-line::-moz-selection, .cm-s-monokai .CodeMirror-line > span::-moz-selection, .cm-s-monokai .CodeMirror-line > span > span::-moz-selection {
  background: rgba(73, 72, 62, .99);
}

.cm-s-monokai .CodeMirror-line::selection, .cm-s-monokai .CodeMirror-line > span::selection, .cm-s-monokai .CodeMirror-line > span > span::selection {
  background: rgba(73, 72, 62, .99);
}

.cm-s-monokai .CodeMirror-line::-moz-selection, .cm-s-monokai .CodeMirror-line > span::-moz-selection, .cm-s-monokai .CodeMirror-line > span > span::-moz-selection {
  background: rgba(73, 72, 62, .99);
}

.cm-s-monokai .CodeMirror-gutters {
  background: #272822;
  border-right: 0px;
}

.cm-s-monokai .CodeMirror-guttermarker {
  color: white;
}

.cm-s-monokai .CodeMirror-guttermarker-subtle {
  color: #d0d0d0;
}

.cm-s-monokai .CodeMirror-linenumber {
  color: #d0d0d0;
}

.cm-s-monokai .CodeMirror-cursor {
  border-left: 1px solid #f8f8f0;
}

.cm-s-monokai span.cm-comment {
  color: #75715e;
}

.cm-s-monokai span.cm-atom {
  color: #ae81ff;
}

.cm-s-monokai span.cm-number {
  color: #ae81ff;
}

.cm-s-monokai span.cm-comment.cm-attribute {
  color: #97b757;
}

.cm-s-monokai span.cm-comment.cm-def {
  color: #bc9262;
}

.cm-s-monokai span.cm-comment.cm-tag {
  color: #bc6283;
}

.cm-s-monokai span.cm-comment.cm-type {
  color: #5998a6;
}

.cm-s-monokai span.cm-property, .cm-s-monokai span.cm-attribute {
  color: #a6e22e;
}

.cm-s-monokai span.cm-keyword {
  color: #f92672;
}

.cm-s-monokai span.cm-builtin {
  color: #66d9ef;
}

.cm-s-monokai span.cm-string {
  color: #e6db74;
}

.cm-s-monokai span.cm-variable {
  color: #f8f8f2;
}

.cm-s-monokai span.cm-variable-2 {
  color: #9effff;
}

.cm-s-monokai span.cm-variable-3, .cm-s-monokai span.cm-type {
  color: #66d9ef;
}

.cm-s-monokai span.cm-def {
  color: #fd971f;
}

.cm-s-monokai span.cm-bracket {
  color: #f8f8f2;
}

.cm-s-monokai span.cm-tag {
  color: #f92672;
}

.cm-s-monokai span.cm-header {
  color: #ae81ff;
}

.cm-s-monokai span.cm-link {
  color: #ae81ff;
}

.cm-s-monokai span.cm-error {
  background: #f92672;
  color: #f8f8f0;
}

.cm-s-monokai .CodeMirror-activeline-background {
  background: #373831;
}

.cm-s-monokai .CodeMirror-matchingbracket {
  text-decoration: underline;
  color: white !important;
}

.CodeMirror-focused {
  border-radius: 0.375rem;
  outline: 2px solid transparent;
  outline-offset: 2px;
  --tw-ring-opacity: 0.5;
  --tw-ring-color: rgba(199, 210, 254, var(--tw-ring-opacity));
  --tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0
    var(--tw-ring-offset-width) var(--tw-ring-offset-color);
  --tw-ring-shadow: var(--tw-ring-inset) 0 0 0
    calc(3px + var(--tw-ring-offset-width)) var(--tw-ring-color);
  box-shadow: var(--tw-ring-offset-shadow), var(--tw-ring-shadow),
    var(--tw-shadow, 0 0 #0000);
}

.CodeMirror {
  padding: 0.75rem;
  font-family: inherit;
  font-size: inherit;
  border-bottom-left-radius: 0.375rem;
  border-bottom-right-radius: 0.375rem;
  --tw-border-opacity: 1;
  border: 1px solid rgba(209, 213, 219, var(--tw-border-opacity));
}

.CodeMirror.CodeMirror-focused {
  --tw-border-opacity: 1;
  border-color: rgba(165, 180, 252, var(--tw-border-opacity));
}

.cm-s-default .cm-header,
.cm-s-default .cm-variable-2 {
  color: rgb(31, 41, 55);
}
