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

/* ===== global.css =====================================================
  == Styles that apply everywhere.
  ======================================================================= */

/* all localizable skin settings shall live here */
@import url("chrome://global/locale/intl.css");

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

/* ::::: XBL bindings ::::: */

checkbox {
  -moz-binding: url("chrome://global/content/bindings/checkbox.xml#checkbox-with-spacing");
}

radio {
  -moz-binding: url("chrome://global/skin/globalBindings.xml#radio-with-spacing");
}

menulist > menupopup {
  -moz-binding: url("chrome://global/content/bindings/popup.xml#popup-scrollbars");
}

progressmeter[mode="undetermined"] {
  -moz-binding: url("chrome://global/content/bindings/progressmeter.xml#progressmeter-undetermined");
}

toolbar[type="menubar"]:not([autohide="true"]):not(:-moz-lwtheme):-moz-system-metric(menubar-drag) {
  -moz-binding: url("chrome://global/content/bindings/toolbar.xml#toolbar-drag");
}

/* ::::: Variables ::::: */
:root {
  --arrowpanel-padding: 10px;
  --arrowpanel-background: -moz-field;
  --arrowpanel-color: -moz-fieldText;
  --arrowpanel-border-color: ThreeDShadow;
}

/* ::::: root elements ::::: */

window,
page,
dialog,
wizard,
prefwindow {
  -moz-appearance: window;
  background-color: -moz-Dialog;
  color: -moz-DialogText;
  font: message-box;
}

/* deprecated */
window.dialog {
  padding-top: 8px;
  padding-bottom: 10px;
  padding-inline-start: 8px;
  padding-inline-end: 10px;
}

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

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

.alert-dialog #info\.icon,
.alert-icon {
  list-style-image: url("moz-icon://stock/gtk-dialog-warning?size=dialog");
}

.error-icon {
  list-style-image: url("moz-icon://stock/gtk-dialog-error?size=dialog");
}

.question-icon {
  list-style-image: url("moz-icon://stock/gtk-dialog-question?size=dialog");
}

.authentication-icon {
  list-style-image: url("chrome://global/skin/icons/Authentication.png");
}

/* ::::: iframe ::::: */

iframe {
  border: none;
  width: 100px;
  height: 100px;
  min-width: 10px;
  min-height: 10px;
}

/* ::::: statusbar ::::: */

statusbar {
  -moz-appearance: statusbar;
  border-top: 1px solid ThreeDLightShadow;
  border-left: 1px solid ThreeDShadow;
  border-right: 1px solid ThreeDHighlight;
  border-bottom: 1px solid ThreeDHighlight;
  background-color: -moz-Dialog;
  min-height: 22px;
}

statusbarpanel {
  -moz-appearance: statusbarpanel;
  -moz-box-align: center;
  -moz-box-pack: center;
  border-left: 1px solid ThreeDHighlight;
  border-top: 1px solid ThreeDHighlight;
  border-right: 1px solid ThreeDShadow;
  border-bottom: 1px solid ThreeDShadow;
  padding: 0 4px;
}

.statusbar-resizerpanel {
  -moz-box-align: end;
  -moz-box-pack: end;
  -moz-appearance: resizerpanel;
  padding: 0;
  border: none;
}

.statusbarpanel-iconic,
.statusbarpanel-iconic-text,
.statusbarpanel-menu-iconic {
  padding: 0 1px;
}

/* XXXBlake yeah, shoot me -- these don't belong here.  I'll move them later. */

sidebarheader {
  height: 25px;
  background-color: -moz-Dialog;
}

sidebarheader > label {
  padding-inline-start: 4px;
}

.toolbar-focustarget {
  -moz-user-focus: ignore !important;
}

toolbar[mode="text"] .toolbarbutton-text {
  padding: 0 !important;
  margin: 3px 5px !important;
}

/* ::::: miscellaneous formatting ::::: */

:root:-moz-lwtheme,
[lwthemefooter="true"],
statusbarpanel:-moz-lwtheme {
  -moz-appearance: none;
}

sidebarheader:-moz-lwtheme {
  background: none;
}

:root:-moz-lwtheme-darktext {
  text-shadow: 0 -0.5px 1.5px white;
}

:root:-moz-lwtheme-brighttext {
  text-shadow: 1px 1px 1.5px black;
}

.inset {
  border: 1px solid ThreeDShadow;
  border-right-color: ThreeDHighlight;
  border-bottom-color: ThreeDHighlight;
  margin: 0 5px 5px;
}
  
.outset {
  border: 1px solid ThreeDShadow;
  border-left-color: ThreeDHighlight;
  border-top-color: ThreeDHighlight;
}

separator:not([orient="vertical"]) {
  height: 1.5em;
}
separator[orient="vertical"] {
  width: 1.5em;
}

separator.thin:not([orient="vertical"]) {
  height: 0.5em;
}  
separator.thin[orient="vertical"] {
  width: 0.5em;
}

separator.groove:not([orient="vertical"]) {
  border-top: 1px solid ThreeDShadow;
  border-bottom: 1px solid ThreeDHighlight;
  height: 0;
  margin-top: 0.4em;
  margin-bottom: 0.4em;
}
separator.groove[orient="vertical"] {
  border-left: 1px solid ThreeDShadow;
  border-right: 1px solid ThreeDHighlight;
  width: 0;
  margin-left: 0.4em;
  margin-right: 0.4em;
}

.small-margin {
  margin: 1px 2px;
}
    
.plain {
  -moz-appearance: none;
  margin: 0 !important;
  border: none;
  padding: 0;
}

description,
label {
  cursor: default;
  margin-top: 1px;
  margin-bottom: 2px;
  margin-inline-start: 6px;
  margin-inline-end: 5px;
}

description {
  margin-bottom: 4px;
}

label[disabled="true"] {
  color: GrayText;
}

.tooltip-label {
  margin: 0;
}

.header {
  font-weight: bold;
}

.monospace {
  font-family: monospace;
}

.indent {
  margin-inline-start: 23px;
}

.box-padded {
  padding: 5px;
}

.spaced {
  margin: 3px 5px 4px;
}

.wizard-box {
  padding: 20px 44px 10px;
}

.text-link {
  color: -moz-nativehyperlinktext;
  cursor: pointer;
}

.text-link:hover {
  text-decoration: underline;
}

.text-link:-moz-focusring {
  outline: 1px dotted;
}

notification > button {
  margin-top: 0;
  margin-bottom: 0;
}

popupnotificationcontent {
  margin-top: .5em;
}

/* :::::: autoscroll popup ::::: */

.autoscroller {
  height: 28px;
  width: 28px;
  border: none;
  margin: -14px;
  padding: 0;
  background-image: url("chrome://global/skin/icons/autoscroll.png");
  background-color: transparent;
  background-position: right top;
  -moz-appearance: none;
}

.autoscroller[scrolldir="NS"] {
  background-position: right center;
}

.autoscroller[scrolldir="EW"] {
  background-position: right bottom;
}

/* :::::: Close button icons ::::: */

.close-icon {
  -moz-appearance: none;
  height: 16px;
  width: 16px;
  background-image: -moz-image-rect(url("chrome://global/skin/icons/close.svg"), 0, 16, 16, 0);
  background-position: center center;
  background-repeat: no-repeat;
}

.close-icon:hover {
  background-image: -moz-image-rect(url("chrome://global/skin/icons/close.svg"), 0, 32, 16, 16);
}

.close-icon:hover:active {
  background-image: -moz-image-rect(url("chrome://global/skin/icons/close.svg"), 0, 48, 16, 32);
}
