/* 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/. */

/* ===== toolbar.css ====================================================
  == Styles used by XUL toolbar-related elements.
  ======================================================================= */

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

/* ::::: toolbox ::::: */

toolbox {
  appearance: toolbox;
  background-color: -moz-Dialog;
  border-top: 2px solid;
  -moz-border-top-colors: ThreeDShadow ThreeDHighlight;
}

@media (-moz-os-version: windows-win10) and (-moz-windows-theme: aero),
       (-moz-os-version: windows-win11) and (-moz-windows-theme: aero) {
  toolbox {
    /* Windows 10/11's "aero" msstyle sourced toolbox background is pure white
       so don't use the widget toolbox styling and fallback to -moz-Dialog's
       color which by default should be a non-blinding rgb(240, 240, 240) */
    appearance: none;

    /* Since we are overriding the style we want to provide the bottom border
       that is normally drawn by look&feel.
       However, local application styling may also provide it on adjacent
       widgets as a border-top. Those will need to omit it on Windows 10. */
    border-bottom: 1px solid ThreeDShadow;
  }
}

/* ::::: toolbar & menubar ::::: */

toolbar, menubar {
  appearance: toolbar;
}

toolbar {
  min-width: 1px;
  min-height: 19px;
  border-top: 1px solid ThreeDHighlight;
  border-bottom: 1px solid ThreeDShadow;
}

toolbar:first-child, menubar {
  min-width: 1px;
  border-bottom: 1px solid ThreeDShadow;
  border-top: 0px !important;
}

/* ::::: lightweight theme ::::: */

menubar:-moz-lwtheme,
toolbox:-moz-lwtheme,
toolbar:-moz-lwtheme {
  appearance: none;
  background: none;
  border-style: none;
}

/* ::::: toolbar decorations ::::: */

toolbarseparator {
  appearance: separator;
  border-top: 2px solid transparent;
  border-bottom: 2px solid transparent;
  border-left: 3px solid transparent;
  border-right: 3px solid transparent;
  -moz-border-left-colors  : transparent transparent ThreeDShadow;
  -moz-border-right-colors : transparent transparent ThreeDHighlight;
}

toolbarspacer {
  width: 15px;
}

/* ::::: toolbarpaletteitem ::::: */

toolbarpaletteitem {
  cursor: grab;
}

.toolbarpaletteitem-box[type="spacer"],
.toolbarpaletteitem-box[type="spring"] {
  border: 1px solid #808080;
  background-color: #FFF !important;
}

toolbarpaletteitem[place="toolbar"] > toolbarspacer {
  width: 11px;
}

.toolbarpaletteitem-box[type="spacer"][place="toolbar"],
.toolbarpaletteitem-box[type="spring"][place="toolbar"] {
  margin-top: 2px;
  margin-bottom: 2px;
  margin-inline-start: 0px;
  margin-inline-end: 2px;
}

.toolbarpaletteitem-box[type="separator"][place="palette"] {
  width: 2px;
  height: 50px;
}

.toolbarpaletteitem-box[type="spacer"][place="palette"],
.toolbarpaletteitem-box[type="spring"][place="palette"] {
  margin-bottom: 2px;
  width: 50px;
  height: 50px;
}

.toolbarpaletteitem-box[type="spring"][place="palette"] {
  background: url("chrome://global/skin/toolbar/spring.png") no-repeat center;
}

/* ..... drag and drop feedback ..... */

toolbarpaletteitem[place="toolbar"] {
  margin-left: -2px;
  margin-right: -2px;
  border-left: 2px solid transparent;
  border-right: 2px solid transparent;
}

toolbarpaletteitem[dragover="left"] {
  border-left-color: #000000;
}

toolbarpaletteitem[dragover="right"] {
  border-right-color: #000000;
}
