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

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

/* ::::: menupopup ::::: */

menupopup,
panel {
  -moz-appearance: menupopup;
  min-width: 1px;
  color: MenuText;
}

/* ::::: arrow panel ::::: */

panel[type="arrow"] {
  -moz-appearance: none;
}

panel[type="arrow"][side="top"],
panel[type="arrow"][side="bottom"] {
  margin-left: -20px;
  margin-right: -20px;
}

panel[type="arrow"][side="left"],
panel[type="arrow"][side="right"] {
  margin-top: -20px;
  margin-bottom: -20px;
}

.panel-arrowcontent {
  padding: var(--arrowpanel-padding);
  color: var(--arrowpanel-color);
  background: var(--arrowpanel-background);
  border: 1px solid var(--arrowpanel-border-color);
  box-shadow: 0 0 4px hsla(0,0%,0%,.2);
  margin: 4px;
}

.panel-arrow[side="top"],
.panel-arrow[side="bottom"] {
  list-style-image: var(--panel-arrow-image-vertical,
                        url("chrome://global/skin/arrow/panelarrow-vertical-themed.svg"));
  position: relative;
  margin-left: 10px;
  margin-right: 10px;
}

.panel-arrow[side="top"] {
  margin-bottom: -5px;
}

.panel-arrow[side="bottom"] {
  transform: scaleY(-1);
  margin-top: -5px;
}

.panel-arrow[side="left"],
.panel-arrow[side="right"] {
  list-style-image: url("chrome://global/skin/arrow/panelarrow-horizontal-themed.svg");
  position: relative;
  margin-top: 10px;
  margin-bottom: 10px;
}

.panel-arrow[side="left"] {
  margin-right: -5px;
}

.panel-arrow[side="right"] {
  transform: scaleX(-1);
  margin-left: -5px;
}

/* ::::: tooltip ::::: */

tooltip {
  -moz-appearance: tooltip;
  margin-top: 21px;
  max-width: 40em;
  color: InfoText;
  font: message-box;
}

tooltip[titletip="true"] {
 /* See bug 32157 comment 128
  * margin: -2px 0px 0px -3px;
  */
  max-width: none;
}

/* rules for popups associated with menulists */

menulist > menupopup {
  padding: 0px;
  min-width: 0px;
}