/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

/* ===== console.css ====================================================
   == Styles used by the Error Console window.
   ====================================================================== */

@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");

#ToolbarMode,
#ToolbarEval,
statusbar,
statusbarpanel {
  -moz-appearance: none !important;
  background: Window;
  border: none;
}

#ToolbarMode {
  -moz-binding: url(chrome://global/content/bindings/toolbar.xml#toolbar-drag);
  -moz-box-pack: center;
  padding: 5px 0;
}

#ToolbarEval {
  border-top: 1px solid #a7aba7;
  border-bottom: 1px solid #a7aba7;
  background: linear-gradient(to bottom, #d4d4d4, #ececec);
}

.console-box {
  background-color: -moz-Field;
  color: -moz-FieldText;
}

statusbar {
  border-top: 1px solid #a7aba7;
}

/* ::::: console rows ::::: */

.console-row {
  border-bottom: 1px dotted threedshadow;
  padding: 4px 0px;
}

.console-row-icon {
  padding: 4px;
  -moz-padding-start: 5px;
  -moz-box-align: start !important;
}

.console-row-msg > label:first-child,
.console-row-file > label:first-child {
  display: none;
}

.console-time {
  font-weight: normal !important;
}

.console-icon {
  list-style-image: inherit;
}

.console-error-msg {
  margin-bottom: 2px;
}

/* ..... error rows ..... */

.console-row-code {
  padding-top: 3px;
  padding-bottom: 3px;
  -moz-padding-start: 3px;
  -moz-padding-end: 0px;
  color: #0000BB;
  font-size: larger;
}

.console-dots,
.console-caret {
  height: 9px;
}

.console-dots {
  background: url("chrome://global/skin/console/console-error-dash.gif") repeat-x top;
}

.console-caret {
  width: 7px;
  background: url("chrome://global/skin/console/console-error-caret.gif") no-repeat top;
}

/* ..... message rows ..... */

.console-row[type="message"] {
  font-family: monospace;
}

/* ..... selected state ..... */

.console-row[selected="true"] {
  background: #abbfd1 url("chrome://global/skin/console/itemSelected.png") repeat-x top;
}

.console-row-code[selected="true"],
.console-row-content[selected="true"] > .console-row-file > .console-error-source > .text-link {
  color: inherit !important;
}

/* ::::: icons ::::: */

.console-row[type="error"],
.console-row[type="exception"] {
  list-style-image: url("moz-icon://stock/gtk-dialog-error?size=menu");
}

.console-row[type="error"] .console-row-msg,
.console-row[type="exception"] .console-row-msg {
  font-weight: bold;
}

.console-row[type="warning"] {
  list-style-image: url("moz-icon://stock/gtk-dialog-warning?size=menu");
}

.console-row[type="message"] {
  list-style-image: url("moz-icon://stock/gtk-dialog-info?size=menu");
}

/* ::::: toolbars ::::: */

#TextboxEval {
  margin: 2px !important;
}

#ButtonEval {
  margin-top: 2px !important;
  margin-bottom: 2px !important;
  -moz-margin-start: 0px !important;
  -moz-margin-end: 2px !important;
}

/* ::::: toolbarbuttons ::::: */

#ToolbarMode toolbarbutton {
  -moz-appearance: none;
  background-image: linear-gradient(to bottom, #f7f7f7, #dbdbdb);
  border: 1px solid rgba(0,0,0,.25);
  border-radius: 3px;
  color: ButtonText;
  padding: 0px 3px;
  margin: 0px 3px;
  min-height: 28px;
  min-width: 32px;
  box-shadow: 0 1px 0 rgba(255,255,255,0.89), inset 0 1px 0 rgba(255,255,255,1);
  text-shadow: none;
  transition-property: color, border, box-shadow, background;
  transition-duration: 200ms;
}

#ToolbarMode toolbarbutton[id="Console:clear"] {
  background: none;
  border-color: transparent;
  box-shadow: none;
  width: 32px;
}
#ToolbarMode toolbarbutton#Console\:clear > .toolbarbutton-icon {
  margin: 0;
}
#ToolbarMode toolbarbutton#Console\:clear > .toolbarbutton-text {
  display: none;
}

#ToolbarMode toolbarbutton:not([disabled="true"]):hover {
  background-image: linear-gradient(to bottom, #ffffff, #ebebeb);
  border-color: rgba(0,0,0,.25);
  box-shadow: 0 1px 0 rgba(255,255,255,0.89);
}

#ToolbarMode toolbarbutton:active:hover,
#ToolbarMode toolbarbutton[checked="true"],
#ToolbarMode toolbarbutton[checked="true"]:hover {
  background-image: linear-gradient(to bottom, #c9c9c9, #e4e4e4) !important;
  border-color: rgba(0,0,0,.25);
  box-shadow: 0 1px 0 rgba(255,255,255,0.89);
}

/* ::::: Mode ::::: */

#ToolbarMode > toolbarseparator {
  display: none;
}

#viewGroup > toolbarbutton {
  -moz-border-start-width: 0;
  -moz-border-end-width: 1px;
  border-radius: 0;
  margin: 0;
  min-width: 120px;
}

#viewGroup > toolbarbutton > .toolbarbutton-icon {
  display: none;
}

#viewGroup > toolbarbutton:first-of-type {
  -moz-border-start-width: 1px;
  border-radius: 3px 0px 0px 3px;
  -moz-margin-start: 3px;
}

#viewGroup > toolbarbutton:last-of-type {
  -moz-border-end-width: 1px;
  border-radius: 0px 3px 3px 0px;
  -moz-margin-end: 3px;
}

#viewGroup {
  -moz-margin-start: calc(34px + 3px * 2);
}

/* Toolbar icons */

toolbar#ToolbarMode toolbarbutton {
  -moz-box-orient: horizontal;
}

/*
#Console\:modeAll {
  list-style-image: url("chrome://global/skin/console/console-toolbar.png");
}

#Console\:modeErrors {
  list-style-image: url("moz-icon://stock/gtk-dialog-error?size=toolbar");
}

#Console\:modeWarnings {
  list-style-image: url("moz-icon://stock/gtk-dialog-warning?size=toolbar");
}

#Console\:modeMessages {
  list-style-image: url("moz-icon://stock/gtk-dialog-info?size=toolbar");
}
*/

#Console\:clear {
  /*
  list-style-image: url(moz-icon://stock/edit-clear-all-symbolic?size=menu);
  */
  list-style-image: url(chrome://symbolic-icons/skin/edit-clear-all.svg);
}

toolbar#ToolbarMode .toolbarbutton-text {
  -moz-padding-end: 4px;
}

/* ::::: Fix Error Console toolbar button text spacing ::::: */

.toolbarbutton-text {
  -moz-padding-start: 0px;
  -moz-padding-end: 5px;
}
