/*
 * The contents of this file are subject to the Netscape Public
 * License Version 1.1 (the "License"); you may not use this file
 * except in compliance with the License. You may obtain a copy of
 * the License at http://www.mozilla.org/NPL/
 *
 * Software distributed under the License is distributed on an "AS
 * IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
 * implied. See the License for the specific language governing
 * rights and limitations under the License.
 *
 * The Original Code is Mozilla Communicator client code, released
 * March 31, 1998.
 *
 * The Initial Developer of the Original Code is Netscape
 * Communications Corporation. Portions created by Netscape are
 * Copyright (C) 1998-1999 Netscape Communications Corporation. All
 * Rights Reserved.
 *
 * Contributor(s):
 *   Joe Hewitt (hewitt@netscape.com)
 */

/* ===== button.css =====================================================
  == Styles used by the XUL button element.
  ======================================================================= */

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

/* :::::::::: button :::::::::: */

button {
  -moz-appearance: button;
  margin: 1px 5px 2px 5px;
  min-width: 6.3em;
  border: 3px solid;
  -moz-border-top-colors: transparent ThreeDHighlight ThreeDLightShadow;
  -moz-border-right-colors: transparent ThreeDDarkShadow ThreeDShadow;
  -moz-border-bottom-colors: transparent ThreeDDarkShadow ThreeDShadow;
  -moz-border-left-colors: transparent ThreeDHighlight ThreeDLightShadow;
  background-color: ThreeDFace;
  color: ButtonText;
}

.button-box {
  border: 1px solid transparent;
  padding: 1px 4px 2px 3px;
}

.button-text {
  margin: 0 !important;
  text-align: center;
}

/* .......... focused state .......... */

button:focus {
  -moz-border-top-colors: ThreeDDarkShadow ThreeDHighlight transparent;
  -moz-border-right-colors: ThreeDDarkShadow ThreeDDarkShadow ThreeDShadow;
  -moz-border-bottom-colors: ThreeDDarkShadow ThreeDDarkShadow ThreeDShadow;
  -moz-border-left-colors: ThreeDDarkShadow ThreeDHighlight transparent;
}

button:focus > .button-box {
  border: 1px dotted ThreeDDarkShadow;
}

/* .......... default state .......... */

button[default="true"] {
  -moz-border-top-colors: ThreeDDarkShadow ThreeDHighlight ThreeDLightShadow;
  -moz-border-right-colors: ThreeDDarkShadow ThreeDDarkShadow ThreeDShadow;
  -moz-border-bottom-colors: ThreeDDarkShadow ThreeDDarkShadow ThreeDShadow;
  -moz-border-left-colors: ThreeDDarkShadow ThreeDHighlight ThreeDLightShadow;
}

/* .......... active/open/checked state .......... */

button:hover:active,
button[open="true"],
button[checked="true"] {
  -moz-border-top-colors: ThreeDDarkShadow ThreeDShadow transparent;
  -moz-border-right-colors: ThreeDDarkShadow ThreeDShadow transparent;
  -moz-border-bottom-colors: ThreeDDarkShadow ThreeDShadow transparent;
  -moz-border-left-colors: ThreeDDarkShadow ThreeDShadow transparent;
}

button:hover:active > .button-box,
button[open="true"] > .button-box,
button[checked="true"] > .button-box {
  padding: 2px 3px 1px 4px;
}

/* .......... disabled state .......... */

button[disabled="true"] {
  -moz-border-top-colors: transparent ThreeDHighlight ThreeDLightShadow !important;
  -moz-border-right-colors: transparent ThreeDDarkShadow ThreeDShadow !important;
  -moz-border-bottom-colors: transparent ThreeDDarkShadow ThreeDShadow !important;
  -moz-border-left-colors: transparent ThreeDHighlight ThreeDLightShadow !important;
  color: GrayText;
}

button[disabled="true"] > .button-box {
  padding: 1px 4px 2px 3px !important;
}

/* ::::: menu/menu-button buttons ::::: */

button[type="menu-button"] {
  -moz-box-align: center;
  -moz-box-pack: center;
  margin: 0;
  border: none;
}

.button-menu-dropmarker,
.button-menubutton-dropmarker {
  margin: 1px;
  list-style-image: url("chrome://global/skin/arrow/arrow-dn.gif");
}
  
.button-menu-dropmarker[disabled="true"],
.button-menubutton-dropmarker[disabled="true"] {
  list-style-image: url("chrome://global/skin/arrow/arrow-dn-dis.gif");
}

.button-menubutton-dropmarker[open="true"] {
  margin: 2px 0px 0px 2px;
}

/* ::::: plain buttons ::::: */

button.plain {
  border: 0px !important;
  margin: 0px !important;
  padding: 0px !important;
}
