/* ***** BEGIN LICENSE BLOCK *****
 * Version: MPL 1.1/GPL 2.0/LGPL 2.1
 *
 * The contents of this file are subject to the Mozilla 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/MPL/
 *
 * 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 the Initial Developer are Copyright (C) 1998-1999
 * the Initial Developer. All Rights Reserved.
 *
 * Contributor(s):
 *
 * Alternatively, the contents of this file may be used under the terms of
 * either the GNU General Public License Version 2 or later (the "GPL"), or
 * the GNU Lesser General Public License Version 2.1 or later (the "LGPL"),
 * in which case the provisions of the GPL or the LGPL are applicable instead
 * of those above. If you wish to allow use of your version of this file only
 * under the terms of either the GPL or the LGPL, and not to allow others to
 * use your version of this file under the terms of the MPL, indicate your
 * decision by deleting the provisions above and replace them with the notice
 * and other provisions required by the GPL or the LGPL. If you do not delete
 * the provisions above, a recipient may use your version of this file under
 * the terms of any one of the MPL, the GPL or the LGPL.
 *
 * ***** END LICENSE BLOCK ***** */

/* ===== messageHeader.css ==============================================
  == Styles for the header toolbars of a mail message.
  ======================================================================= */

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

/* ::::: for the entire area ::::: */
.main-header-area {
  color: WindowText;
  background-color: AppWorkspace;
  border-bottom: 2px groove ThreeDLightShadow;
  padding: 0.4ex;
}

/* ::::: msg header toolbars ::::: */

#expandedHeaderView {
  overflow-y: auto;
  overflow-x: hidden;
  max-height: 14em;
}

/* ::::: msg header buttons ::::: */
.headerContainer
{
  min-width: 1px;
}

#expandedHeaderRows > row,
#expandedHeader2Rows > row {
  /* Ensure that the header names and values are aligned with each other. */
  -moz-box-align: baseline;
}

#expandedHeadersTopBox {
  /* Ensure that the space between the from row and the one after is
     identical to the spacing between the subsequent header lines. */
  -moz-box-align: end;
}

#otherActionsButton {
  margin-bottom: .1em;
  padding-top: 0px;
}

/* ::::: expanded header pane ::::: */

#header-view-toolbox {
  -moz-appearance: none;
  -moz-padding-end: 6px;
  padding-bottom: 3px;
  padding-top: 3px;
}

#header-view-toolbar {
  -moz-appearance: none;
  min-height: 0;
  padding: 0;
}

#expandedsubjectBox > .headerValue {
  font-weight: bold;
}

/* ::::: edit message bar ::::: */

#editMessageBox
{
  min-width: 1px;
  -moz-border-radius-bottomleft: 0.2em;
  -moz-border-radius-bottomright: 0.2em;
}

#editMessageDescription
{
  font-style: italic;
  font-weight: bolder;
}

/* ::::: attachment view ::::: */

#attachmentList
{
  margin: 0px;
  background-color: -moz-Field;
  color: -moz-FieldText;
}

/* XXX: Move all of the description attributes to the toolkit */

description[selectable="true"]
{
  margin: 1px 5px 4px;
}

descriptionitem
{
  border: 1px solid transparent;
  margin: 1px;
}

description[selectable="true"]:focus > descriptionitem[selected="true"][current="true"] 
{
  border: 1px dotted #F5DB95;
}

descriptionitem[selected="true"] 
{
  background-color: -moz-Dialog;
  color: -moz-DialogText;
}

description[selectable="true"]:focus > descriptionitem[selected="true"] 
{
  background-color: Highlight;
  color: HighlightText;
}

.attachmentBox 
{
  width: 15em;
}

#attachmentView[largeView="true"] .attachmentBox
{
  -moz-box-orient: vertical;
}

#attachmentView
{
  border-top: 1px solid ThreeDShadow;
  min-height: 30px;
}

#attachmentView[largeView="true"]
{
  min-height: 55px;
}

#attachmentView[attachmentOverflow="true"] {
  overflow: auto;
}

/* ::::: msg header captions ::::: */

#msgHeaderView {
  font-size: 100%;
  padding: 0 !important;
  margin: 0 !important;
}

.dateLabel {
  -moz-padding-end: 3px;
  -moz-user-select: text;
  -moz-user-focus: normal;
  cursor: text;
}

.msgHeaderView-button {
  -moz-appearance: button;
  min-width: 1em;
  min-height: 1ex;
  margin: 0px 0px 0px 0.2em;
  vertical-align: middle;
  /* important required to override messenger.css rule */
  padding: 0 !important;
  list-style-image: none; /* overrides the rule from primaryToolbar.css */
}

.msgHeaderView-button[type="menu-button"] > .toolbarbutton-menubutton-button > .button-box {
  /* Needed to make the buttons the same height as the trash icon */
  min-height: 16px;
}

.msgHeaderView-button[disabled="true"] {
  display: none;
}

/* toolbar[mode="text"] is necessary so that we end up with more specificity
 * than the !import rule in toolkit's toolbar.css.
 */
toolbar[mode="text"] > .msgHeaderView-button .toolbarbutton-text
{
  margin: 0 !important;
  padding: 0 !important;
}

/* Unlike the primary toolbar, we want icons to be horizontally in line with
 * the text, rather than vertically.
 */
toolbar[mode="full"] > .msgHeaderView-button,
toolbar[mode="full"] > .msgHeaderView-button > .toolbarbutton-menubutton-button
{
  -moz-box-orient: horizontal;
}

/* For unclear reasons, toolkit's toolbarbutton.css forces a margin of 0,
 * jamming the image up against the text, so we need this !important
 * rule to override that.
 *
 * The second selector is a descendent selector rather than a child selector
 * so that we effect both buttons and menubuttons.
 */
toolbar[mode="full"] > .msgHeaderView-button .toolbarbutton-text {
  -moz-margin-start: 2px !important;
}

.hdrReplyButton {
  /* important required to override -moz-appearance from msgHdrView-button */
  -moz-appearance: dualbutton !important;
  list-style-image: url("chrome://messenger/skin/icons/mail-toolbar-small.png");
  -moz-image-region: rect(0px 64px 16px 48px);
}

.hdrReplyAllButton {
  list-style-image: url("chrome://messenger/skin/icons/mail-toolbar-small.png");
  -moz-image-region: rect(0px 80px 16px 64px);
}

.hdrReplyListButton {
  list-style-image: url("chrome://messenger/skin/icons/mail-toolbar-small.png");
  -moz-image-region: rect(0px 96px 16px 80px);
}

.hdrReplyButton > .toolbarbutton-menubutton-button {
  -moz-appearance: button;
  min-width: 1em;
  min-height: 1ex;
  margin: 0;
  /* important required to override messenger.css rule */
  padding: 0 !important;
}

.hdrReplyButton > .toolbarbutton-menubutton-dropmarker {
  -moz-margin-start: 2px;
  -moz-margin-end: 2px;
}

.hdrReplyButton > .toolbarbutton-menubutton-dropmarker[open="true"] {
  margin-top: 0px;
  -moz-margin-end: 2px;
}

.hdrForwardButton {
  list-style-image: url("chrome://messenger/skin/icons/mail-toolbar-small.png");
  -moz-image-region: rect(0px 112px 16px 96px);
}

/* This icon isn't that meaningful, and we'd rather save horizontal space */
toolbar:not([mode="full"]) > .hdrArchiveButton {
  list-style-image: url("chrome://messenger/skin/icons/mail-toolbar-small.png");
  -moz-image-region: rect(0px 224px 16px 208px);
}

/* This icon isn't that meaningful, and we'd rather save horizontal space */
toolbar:not([mode="full"]) > .hdrJunkButton {
  list-style-image: url("chrome://messenger/skin/icons/mail-toolbar-small.png");
  -moz-image-region: rect(0px 128px 16px 112px);
}

.hdrJunkButton[disabled="true"] {
  background: none;
  opacity: 0;
}

.hdrTrashButton {
  -moz-box-orient: vertical;
  list-style-image: url("moz-icon://stock/gtk-delete?size=menu");
}

.hdrTrashButton > .toolbarbutton-icon {
  -moz-margin-end: 0px;
}

.msgHeaderView-flat-button {
  min-width: 1px !important;
  -moz-appearance: toolbarbutton;
  background-color: transparent;
  border: 3px solid transparent;
  margin-top: 1px;
  margin-bottom: 2px;
  padding: 0 3px;
  -moz-border-radius: 4px;
  -moz-border-top-colors: none;
  -moz-border-right-colors: none;
  -moz-border-bottom-colors: none;
  -moz-border-left-colors: none;
  min-height: 1ex;
}

.msgHeaderView-flat-button[type="menu-button"] > .button-menubutton-button {
  -moz-appearance: none;
  background-color: transparent;
  -moz-border-radius: 0px;
  border: 0;
  border-right: 2px solid transparent;
  -moz-padding-end: 0.2em;
  margin: 0;
  -moz-border-top-colors: none;
  -moz-border-right-colors: none;
  -moz-border-bottom-colors: none;
  -moz-border-left-colors: none;
}

.msgHeaderView-flat-button[type="menu-button"]:hover > .button-menubutton-button {
  background-color: transparent;
}

.msgHeaderView-flat-button[type="menu-button"] > .button-menubutton-button:hover {
  border-right: 2px solid ButtonShadow;
} 

.msgHeaderView-flat-button[secondary="true"] {
  background: none;
}


.msgHeaderView-flat-button:hover {
  color: -moz-buttonhovertext;
  background-color: -moz-buttonhoverface;
  -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;
}

.headerName {
  color: #888a85; /* lower contrast */
  text-align: right;
  background-color: transparent;
  padding: 0px;
  margin-top: 0;
  -moz-margin-end: 0;
}

.headerValueBox {
  overflow:visible;
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

.headerValue {
  min-width: 50px;
  white-space: normal;
  color: WindowText;
  line-height: 1.4em;

  -moz-appearance: none !important;

  padding: 0px !important;
  margin: 0px !important;
  -moz-margin-start: 3px !important;
  border: none !important;
  background-color: transparent;
}

.headerValue[containsEmail="true"] {
  -moz-margin-start: 0px !important;
}

.headerValueBox[singleline="true"] > .headerValue[containsEmail="true"] {
  white-space: nowrap;
}

.headerValueBox[singleline="true"] {
  height: 1.9em;
  overflow: hidden;
}

.headerValueUrl {
  cursor: pointer;
  color: -moz-nativehyperlinktext;
  text-decoration: underline;
}

.headerValueUrl:hover {
  color: red;
}

.headerField {
  color: inherit;
}

.moreIndicator {
  font-weight: bold;
}

.moreIndicator:hover {
  text-decoration: underline;
  color: darkred;
}

.tagvalue {
  padding: 0 0.5ex;
  -moz-margin-start: 0px;
  background-image: url("chrome://messenger/skin/tagbg.png");
  -moz-border-radius: 3px;
  border-width: 0.5px;
  border-style: outset;
  text-shadow: 0 1px 0 rgba(238,238,236,0.4); /* Tango Alumninum 1 */
  color: #111111;
}

/* ::::: msg header message ids ::::: */

.messageIdDisplayButton {
  cursor: pointer;
  color: -moz-nativehyperlinktext;
  text-decoration: underline;
  margin: 0;
  background-color: transparent;
}

.messageIdDisplayButton:hover {
  color: #FF0000;
}

.messageIdDisplayImage {
  -moz-padding-start: 2px;
  -moz-box-pack: end;
}


/* ::::: msg header email addresses ::::: */

.emailDisplayButton {
  margin: 0;
  -moz-padding-start: 3px !important;
  -moz-padding-end: 3px !important;
  padding-top: .1em;
  padding-bottom: .1em;
  margin-bottom: 3px !important;
  background-color: transparent;
  -moz-border-radius: 2px;
}

.emailDisplayButton:hover {
  cursor: pointer;
  color: HighlightText;
  background-color: Highlight;
}

mail-emailaddress[selected="true"] .emailDisplayButton{
  /* when an email address context menu is selected,
    make sure that the email bubble stays displayed, and
    tweak the bottom to blend in more w/ the menu */
  cursor: pointer;
  -moz-border-radius: 3px;
  color: HighlightText;
  background-color: Highlight;
  -moz-border-radius-bottomleft: 0;
  -moz-border-radius-bottomright: 0;
}

.emailSeparator {
  /* this is for the comma in between email addresses/newsgroups */
  -moz-margin-start: -4px; /* squeeze it inside the bubble, by the star */
}

/* Because there's no star for newsgroups like there is for email addresses,
 * pushing it back the same number of pixels as emailSeparator causes
 * the comma to be drawn too close to the last letter, which looks bad, so
 * using a separate rule here.
 */
.newsgroupSeparator {
  -moz-margin-start: -3px;
}

.emailDisplayButton:focus {
  border: 1px dotted Highlight;
}

.emailStar:focus {
  border: 1px dotted;
}

.emaillabel,
.newsgrouplabel {
  padding: 0px !important;  /* override <label> defaults */
  margin: 0px !important;  /* override <label> defaults */
  overflow: hidden;
}

.emailStar {
  max-width: 1em;
  max-height: 1em;
  -moz-appearance: none;
  -moz-box-orient: vertical;
  padding: 0px;
  -moz-margin-start: -2px !important;
  list-style-image: url("chrome://messenger/skin/starContact.png");
  -moz-image-region: rect(0px, 16px, 16px, 0px);
}

.emailStar:hover {
  -moz-image-region:rect(0px 32px 16px 16px);
}

.emailStar:hover:active {
  -moz-image-region:rect(0px 48px 16px 32px);
}

.emailStar[hascard="true"] {
  list-style-image: url("chrome://messenger/skin/contactStarred.png");
}

.emailPopup {
  font-size: inherit;
  max-height: 7px; /* the height of the image */
  margin: 0.2em 2px 0px; /* 0.2em just to move it off the top of the text */
  list-style-image: url("chrome://messenger/skin/icons/arrow-dn-grey.png");
}

.emailPopup:hover {
  list-style-image: url("chrome://messenger/skin/icons/arrow-dn-blue.png");
}

/* ::::: email address twisty ::::: */

.addresstwisty {
  -moz-padding-end: 0px;
  padding-top: 4px;
  list-style-image:url("chrome://messenger/skin/icons/arrow/arrow-right-dim.png");
}

.addresstwisty:hover {
  list-style-image:url("chrome://messenger/skin/icons/arrow/arrow-right.png");
}

.addresstwisty[open] {
  list-style-image:url("chrome://messenger/skin/icons/arrow/arrow-down-dim.png");
}

.addresstwisty[open]:hover {
  list-style-image:url("chrome://messenger/skin/icons/arrow/arrow-down.png");
}

/* ::::: view expand twisty  ::::: */

.expandHeaderViewButton {
  list-style-image: url("chrome://global/skin/tree/twisty-open.png");
}

mail-multi-emailHeaderField,
mail-headerfield,
mail-newsgroups-headerfield {
  margin: 0;
  padding: 0;
  -moz-box-align: baseline;
}
