/* vim:set ts=2 sw=2 sts=2 et: */
/* 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/. */

 :root {
  --breadcrumb-id-class-color: #909090;
 }

 .theme-dark:root {
  --breadcrumb-id-class-color: var(--theme-content-color1);
 }

/* Inspector HTMLBreadcrumbs */

.breadcrumbs-widget-container {
  margin-inline-end: 3px;
  max-height: 24px; /* Set max-height for proper sizing on linux */
  height: 24px; /* Set height to prevent starting small waiting for content */
}

.scrollbutton-up,
.scrollbutton-down {
  -moz-appearance: none;
  background: transparent;
  box-shadow: none;
  border: none;
  list-style-image: none;
  margin: 0;
  padding: 0;
}

.scrollbutton-up > .toolbarbutton-icon,
.scrollbutton-down > .toolbarbutton-icon {
  -moz-appearance: none;
  width: 20px;
  height: 16px;
  background-size: 16px;
  background-position: center;
  background-repeat: no-repeat;
  background-image: url("images/breadcrumbs-scrollbutton.svg");
  list-style-image: none;
  padding: 0;

  -moz-context-properties: fill;
  fill: var(--theme-toolbar-color);
}

.scrollbutton-up:not([disabled]):active:hover,
.scrollbutton-down:not([disabled]):active:hover {
  background-color: var(--theme-toolbar-hover);
}

.scrollbutton-up[disabled] > .toolbarbutton-icon,
.scrollbutton-down[disabled] > .toolbarbutton-icon {
  opacity: 0.5;
}

/* Draw shadows to indicate there is more content 'behind' scrollbuttons. */
.scrollbutton-up:-moz-locale-dir(ltr):not(:dir(rtl)),
.scrollbutton-up:dir(ltr),
.scrollbutton-down:-moz-locale-dir(rtl),
.scrollbutton-down:dir(rtl) {
  border-right: solid 1px rgba(255, 255, 255, .1);
  border-left: solid 1px transparent;
  box-shadow: 3px 0px 3px -3px var(--theme-sidebar-background);
}

.scrollbutton-down:-moz-locale-dir(ltr):not(:dir(rtl)),
.scrollbutton-down:dir(ltr),
.scrollbutton-up:-moz-locale-dir(rtl),
.scrollbutton-up:dir(rtl) {
  border-right: solid 1px transparent;
  border-left: solid 1px rgba(255, 255, 255, .1);
  box-shadow: -3px 0px 3px -3px var(--theme-sidebar-background);
}

.scrollbutton-up[disabled],
.scrollbutton-down[disabled] {
  box-shadow: none;
  border-color: transparent;
}

.scrollbutton-up > .toolbarbutton-icon:-moz-locale-dir(rtl),
.scrollbutton-up > .toolbarbutton-icon:dir(rtl),
.scrollbutton-down > .toolbarbutton-icon:-moz-locale-dir(ltr):not(:dir(rtl)),
.scrollbutton-down > .toolbarbutton-icon:dir(ltr) {
  transform: scaleX(-1);
}

.breadcrumbs-widget-item {
  background-color: transparent;
  border: none;
  margin-inline-start: 10px;
  margin-inline-end: 1px;
  padding: 0 0 2px 0;
}

.breadcrumbs-widget-item > .button-box {
  border: none;
  padding-top: 0;
  padding-bottom: 0;
}

:root[platform="win"] .breadcrumbs-widget-item:-moz-focusring > .button-box {
  border-width: 0;
}

#debugger-toolbar .breadcrumbs-widget-item::before {
  --background-color: var(--theme-toolbar-background);
}

.breadcrumbs-widget-item:first-child::before {
  /* The first crumb does not need any separator before itself */
  content: unset;
}

.breadcrumbs-widget-item:dir(rtl)::before {
  transform: scaleX(-1);
}

/* RTL support: move the images that were on the left to the right,
 * and move images that were on the right to the left.
 */
.breadcrumbs-widget-item:dir(rtl) {
  padding: 0 20px 0 8px;
}

.breadcrumbs-widget-item:dir(rtl),
.breadcrumbs-widget-item[checked] + .breadcrumbs-widget-item:dir(rtl) {
  background-position: center right;
}

.breadcrumbs-widget-item:not(:first-child)::before {
  content: url(chrome://devtools/skin/images/breadcrumbs-divider.svg);
  background: none;
  position: relative;
  left: -3px;
  margin: 0 4px 0 -1px;
  top: -1px;
}

.breadcrumbs-widget-item[checked] .breadcrumbs-widget-item-id {
  color: var(--theme-highlight-purple);
}

.breadcrumbs-widget-item[checked] .breadcrumbs-widget-item-tag,
.breadcrumbs-widget-item[checked] .breadcrumbs-widget-item-pseudo-classes,
.breadcrumbs-widget-item[checked] .breadcrumbs-widget-item-classes {
  color: var(--theme-highlight-blue);
}

.theme-dark .breadcrumbs-widget-item {
  color: var(--theme-selection-color);
}

.theme-light .breadcrumbs-widget-item {
  color: var(--theme-body-color);
}

.breadcrumbs-widget-item-id,
.breadcrumbs-widget-item-classes {
  color: var(--breadcrumb-id-class-color);
}

.breadcrumbs-widget-item-pseudo-classes {
  color: var(--theme-highlight-lightorange);
}

/* Firebug theme support for breadcrumbs widget. */

.theme-firebug .breadcrumbs-widget-item {
  border: 1px solid transparent;
  border-radius: 2px;
  padding: 0;
}

.theme-firebug .breadcrumbs-widget-item:hover {
  border-color: rgba(0, 0, 0, 0.2);
  box-shadow: 1px 1px 1px rgba(255, 255, 255, 0.6) inset,
              0 0 1px rgba(255, 255, 255, 0.6) inset,
              0 0 2px rgba(0, 0, 0, 0.05);
}

.theme-firebug .breadcrumbs-widget-item > .button-box {
  padding-left: 0;
  padding-right: 0;
}

.theme-firebug .breadcrumbs-widget-item:first-child {
  margin: 0;
}

.theme-firebug .breadcrumbs-widget-item:not(:first-child)::before {
  margin: 0 0 0 -5px;
  top: 0;
}

/* Breadcrumbs Separators (reset selection styles) */
.theme-firebug .breadcrumbs-widget-item[checked],
.theme-firebug .breadcrumbs-widget-item[checked] .breadcrumbs-widget-item-id,
.theme-firebug .breadcrumbs-widget-item[checked] .breadcrumbs-widget-item-tag,
.theme-firebug .breadcrumbs-widget-item[checked] .breadcrumbs-widget-item-pseudo-classes,
.theme-firebug .breadcrumbs-widget-item[checked] .breadcrumbs-widget-item-classes {
  background: none;
  font-weight: bold;
  color: inherit;
}

/* The first rule is there only to make sure the default rule from
widgets.css is overwritten. */
.theme-firebug .breadcrumbs-widget-item[checked] + .breadcrumbs-widget-item {
  background: none;
}

.theme-firebug .breadcrumbs-widget-item .breadcrumbs-widget-item-tag {
  padding-left: 4px;
  padding-right: 4px;
}

/* Breadcrumbs Scrolling Buttons */

.theme-firebug .breadcrumbs-widget-container .scrollbutton-up,
.theme-firebug .breadcrumbs-widget-container .scrollbutton-down {
  padding: 0;
  box-shadow: none;
  outline: 1px solid var(--theme-splitter-color);
}

.theme-firebug .breadcrumbs-widget-container .scrollbutton-up:hover,
.theme-firebug .breadcrumbs-widget-container .scrollbutton-down:hover {
  border: 1px transparent solid !important;
  box-shadow: none !important;
}

.theme-firebug .breadcrumbs-widget-container .scrollbutton-up:active,
.theme-firebug .breadcrumbs-widget-container .scrollbutton-down:active {
  background: none !important;
}
