/* Dark mode */

/* Panel/body settings */

.jscoq-theme-dark#panel-wrapper,
.jscoq-theme-dark #panel-wrapper {
  background: #222;
  color: #eee;
  border-left: 1px solid #9f9f9f;
}

.jscoq-theme-dark .flex-panel {
  border-top: 1px solid #9f9f9f;
}

#vsep, #hsep {
  background: #272727;
}

#script-panel {
  background-color: #000;
}

.jscoq-theme-dark a,
.jscoq-theme-dark a:link,
.jscoq-theme-dark a:visited,
.jscoq-theme-dark a:active {
  color: #abc;
}

.jscoq-theme-dark a:hover {
  color: #5af;
}

.jscoq-theme-dark #toolbar {
  border-bottom: 1px solid #272727;
}

.jscoq-theme-dark #buttons button {
  filter: brightness(170%);
}

.jscoq-theme-dark #buttons button:active {
  filter: brightness(250%);
  opacity: 1;
}

.jscoq-theme-dark #buttons button:disabled {
  opacity: 0.6;
}

.jscoq-theme-dark .link-to-github::after {
  background-image: url(../ui-images/themes/dark/github.png);
}

.jscoq-theme-dark .flex-panel > .caption {
  background: #666;
  color: #ccc;
}

/* Code settings */
/* Replaced by blackboard CM theme */
/*.CodeMirror-gutters { background-color: #000; }*/
/*.CodeMirror-scroll { background-color: #000; }*/

/*.CodeMirror-line::selection, .CodeMirror-line > span::selection, .CodeMirror-line > span > span::selection { background-color: #000; }*/
/*.CodeMirror { color: #fff; }*/

.cm-s-blackboard .CodeMirror-dialog,
.cm-s-darcula .CodeMirror-dialog {
  background: #333;
  border-bottom: 1px solid #999;
  box-shadow: 0 1px 4px #666;
}

.cm-s-blackboard .CodeMirror-dialog a.dialog-link,
.cm-s-darcula .CodeMirror-dialog a.dialog-link {
  color: #bbf;
}

.cm-s-blackboard .CodeMirror-gutters {
  background: #000;
  border-right: 1px solid #272727;
}

.cm-s-blackboard .coq-eval-ok {
  background: #483D8B;
}

.cm-s-blackboard .coq-eval-pending {
  background: #94763a;
}

.cm-s-blackboard .coq-eval-failed {
  background: #aa0000;
}

/* Gallina keywords */
.cm-s-blackboard .cm-keyword {
  color: #98FB98;
}

.cm-s-blackboard .cm-s-blackboard .cm-number {
  color: #FFFFFF;
}

/* Vernaculars */
.cm-s-blackboard .cm-builtin {
  color: #00FFFF;
}

.cm-s-blackboard .cm-comment {
  color: #a50;
}

.cm-s-blackboard .cm-variable {
  color: #FFFFFF;
}

.cm-s-blackboard .cm-operator {
  color: #FFFFFF;
}

/* Tactics */
.cm-s-blackboard .cm-keyword {
  color: #98FB98;
}

.cm-s-blackboard .cm-tactic {
  color: #9370DB;
}

.cm-s-blackboard .cm-terminator {
  color: #FF0000;
}

/* Pretty-print tags generated by coq */
.jscoq-theme-dark .constr\.evar {
  color: #e399ff;
}
.jscoq-theme-dark .constr\.keyword {
  color: #11aeea;
}
.jscoq-theme-dark .constr\.notation {
  color: #ff6666;
}
.jscoq-theme-dark .constr\.path {
  color: #1ce715;
}
.jscoq-theme-dark .constr\.reference {
  color: #6d7ccc;
}
.jscoq-theme-dark .constr\.type {
  color: #aabb22;
}
.jscoq-theme-dark .constr\.variable {
  color: #7fbfff;
}
.jscoq-theme-dark .module\.definition {
  color: #777ddd;
}
.jscoq-theme-dark .module\.keyword {
  color: #dd862f;
}
.jscoq-theme-dark .tactic\.keyword {
  color: #9674b8;
}
.jscoq-theme-dark .tactic\.primitive {
  color: #c0c0c0;
}
.jscoq-theme-dark .tactic\.string {
  color: #99ff99;
}

.jscoq-theme-dark .constr\.reference:hover,
.jscoq-theme-dark .constr\.type:hover,
.jscoq-theme-dark .constr\.variable:hover,
.jscoq-theme-dark .constr\.notation:hover {
  background: rgba(204, 255, 1, 0.25);
  box-shadow: 0 0 4px 1px rgba(204, 255, 1, 0.5);
}

/* The company-coq symbols for nat (ℕ) and Real (ℝ) are thin 
 * and don't show well on a dark background */
.jscoq-theme-dark [data-name=nat],
.jscoq-theme-dark [data-name=Real] {
  font-weight: bold;
}

.jscoq-theme-dark #goal-panel div.contextual-info {
  background: rgba(255, 255, 255, 0.1);
  border-top: 1px solid rgba(255,255,255,0.25);
}

.jscoq-theme-dark .contextual-focus,
.jscoq-theme-dark .contextual-focus:hover {
  background: rgba(255, 200, 1, 0.5);
  box-shadow: 0 0 4px 1px rgba(255, 200, 1, 0.5);
}

.jscoq-theme-dark .contextual-info .message {
  color: #bbb;
}
