/* ----------------------------------
 * HEADERS: default
 * ---------------------------------- */
section[role="region"] > header:first-child {
  position: relative;
  z-index: 10;
  padding: 0;
  height: 5rem;
  color: #fff;
  background: url(headers/images/ui/header.png) repeat-x 0 0;
  background-size: auto 100%;
  border: none;
}

section[role="region"] > header:first-child:after {
  content: "";
  display: block;
  height: 0.3rem;
  position: absolute;
  top: 100%;
  left: 0;
  right: 0;
  background: url(headers/images/ui/shadow.png) repeat-x 0 0;
  background-size: auto 100%;
}

section[role="region"] > header:first-child h1 {
  font: 2.5rem/4.8rem "MozTT", Sans-serif;
  text-align: left;
  color: #fff;
  white-space: nowrap;
  text-overflow: ellipsis;
  display: block;
  overflow: hidden;
  margin: 0 0 0 3rem;
  padding-right: 1rem;
  height: 100%
}

section[role="region"] > header:first-child h1 em {
  font: 400 1.5rem/1em "MozTT", Sans-serif;
}

section[role="region"] > header:first-child form {
  display: block;
  overflow: hidden;
  position: relative;
  padding: 1rem 1rem 0 0.5rem ;
  margin-left: 2.5rem;
}

section[role="region"] > header:first-child input[type="text"] {
  width: 100%;
  height: 3rem;
  -moz-box-sizing: border-box;
  padding: 0 0.8rem;
  border: solid 0.1rem #9d4123;
  border-top-color: #a6501e;
  border-radius: 0.3rem;
  background: #fff url(headers/images/ui/shadow.png) repeat-x left -0.1rem;
  font: 1.5rem/3em "MozTT", Sans-serif;
  box-shadow: none;
}

section[role="region"] > header:first-child form button[type="reset"] {
  font-size: 0;
  overflow: hidden;
  position: absolute;
  right: 1rem;
  top: 1rem;
  bottom: 0;
  width: 3rem;
  height: auto;
  margin: 0;
  display: none;
  border: none;
  background: url(headers/images/icons/clear.png) no-repeat center center / 1.7rem auto;
}

section[role="region"] > header:first-child input[type="text"]:valid + button[type="reset"] {
  display: block;
}

/* Generic set of actions in toolbar */
section[role="region"] > header:first-child menu[type="toolbar"] {
  height: 100%;
  float: right;
}

section[role="region"] > header:first-child menu[type="toolbar"] a,
section[role="region"] > header:first-child menu[type="toolbar"] button {
  -moz-box-sizing: border-box;
  position: relative;
  float: left;
  width: auto;
  min-width: 5rem;
  height: 5rem;
  margin-bottom: 0;
  padding: 0 1rem;
  border-radius: 0;
  line-height: 5rem;
  background: none;
  text-align: center;
  text-shadow: none;
  z-index: 5;
}

section[role="region"] > header:first-child menu[type="toolbar"] a:last-child,
section[role="region"] > header:first-child menu[type="toolbar"] button:last-child {
  background: url(headers/images/ui/separator.png) no-repeat left center / auto 3.4rem;
  margin-left: -0.2rem;
  z-index: 1;
}

section[role="region"] > header:first-child menu[type="toolbar"] {
  padding: 0;
  margin: 0;
}

section[role="region"] > header:first-child a,
section[role="region"] > header:first-child button {
  border: none;
  background: none;
  padding: 0;
  overflow: hidden;
  font: 400 1.5rem/1.1em "MozTT", Sans-serif;
  color: #fff;
  border-radius: 0;
  text-decoration: none;
}


/* Pressed state */
section[role="region"] > header:first-child a::-moz-focus-inner,
section[role="region"] > header:first-child button::-moz-focus-inner,
section[role="region"] > header:first-child a:active,
section[role="region"] > header:first-child button:active,
section[role="region"] > header:first-child a:focus,
section[role="region"] > header:first-child button:focus {
  outline: none !important;
  border: none !important;
}

section[role="region"] > header:first-child a:not([aria-disabled="true"]):active .icon:after,
section[role="region"] > header:first-child button:not(:disabled):active .icon:after,
section[role="region"] > header:first-child menu[type="toolbar"] a:not([aria-disabled="true"]):active,
section[role="region"] > header:first-child menu[type="toolbar"] button:not(:disabled):active  {
  background: #008aaa !important;
  transition: background 0.2s ease;
}

/* Disabled state */
section[role="region"] > header:first-child menu[type="toolbar"] a[aria-disabled="true"],
section[role="region"] > header:first-child menu[type="toolbar"] button[disabled]  {
  opacity: 0.5;
}

section[role="region"] > header:first-child a:first-letter,
section[role="region"] > header:first-child button:first-letter {
  text-transform: uppercase;
}

/* Icon definitions */
section[role="region"] > header:first-child .icon {
  position: relative;
  float: none;
  display: inline-block;
  vertical-align: top;
  width: 3rem;
  height: 4.9rem;
  margin: 0 -1rem;
  background: transparent no-repeat center center / 3rem auto;
  font-size: 0;
  overflow: hidden;
}

section[role="region"] > header:first-child .icon.icon-add {
  background-image: url(headers/images/icons/add.png);
}

section[role="region"] > header:first-child .icon.icon-compose {
  background-image: url(headers/images/icons/compose.png);
}

section[role="region"] > header:first-child .icon.icon-edit {
  background-image: url(headers/images/icons/edit.png);
}

section[role="region"] > header:first-child .icon.icon-send {
  background-image: url(headers/images/icons/send.png);
}

section[role="region"] > header:first-child .icon.icon-close {
  background-image: url(headers/images/icons/close.png);
}

section[role="region"] > header:first-child .icon.icon-back {
  background-image: url(headers/images/icons/back.png);
}

section[role="region"] > header:first-child .icon.icon-menu {
  background-image: url(headers/images/icons/menu.png);
}

section[role="region"] > header:first-child .icon.icon-user {
  background-image: url(headers/images/icons/user.png);
}

section[role="region"] > header:first-child .icon.icon-reply {
  background-image: url(headers/images/icons/reply.png);
}

section[role="region"] > header:first-child .icon.icon-reply-all {
  background-image: url(headers/images/icons/reply-all.png);
}

/* Navigation links (back, cancel, etc) */
section[role="region"] > header:first-child > button,
section[role="region"] > header:first-child > a {
  position: absolute;
  left: 0;
  width: 5rem;
  height: 5rem;
  background: url(headers/images/ui/separator-large.png) no-repeat 2rem center / auto 4.8rem;
  overflow: hidden;
}

section[role="region"] > header:first-child > button::-moz-focus-inner {
  border: 0;
  padding: 0;
}

section[role="region"] > header:first-child > button .icon,
section[role="region"] > header:first-child > a .icon {
  position: static;
  display: block;
  width: 2rem;
  height: 4.9rem;
  margin: 0;
  overflow: visible;
  font-size: 0;
}

section[role="region"] > header:first-child > button .icon:after,
section[role="region"] > header:first-child > a .icon:after {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  z-index: -1;
  width: 2rem;
  height: 4.9rem;
  background: #9d3d26 url(headers/images/ui/negative.png) repeat-x left bottom / auto 100%;
}

section[role="region"] > header > a .icon.icon-menu,
section[role="region"] > header > button .icon.icon-menu {
  background-position: -1.1rem center;
}

/* ----------------------------------
 * HEADERS: subheader
 * ---------------------------------- */

section[role="region"] > header {
  z-index: 0;
  height: auto;
}

section[role="region"] > header:after {
  display: none;
}

section[role="region"] header h2 {
  margin: 0;
  padding: 0.4rem 3rem;
  color: #424242;
  font-family: "MozTT", Sans-serif;
  font-weight: 400;
  font-size: 1.5rem;
  line-height: 1.8rem;
  background: url(headers/images/ui/subheader.png) repeat 0 100% / auto 100%;
  border-bottom: solid 0.1rem #e6e6e6;
}

/* ----------------------------------
 * HEADERS: dark
 * ---------------------------------- */
section[role="region"].skin-dark > header:first-child,
.skin-dark section[role="region"] > header:first-child {
  background-image: url(headers/images/ui/dark/header.png);
}

/* Navigation links (back, cancel, etc) */
section[role="region"].skin-dark > header:first-child > a .icon:after,
.skin-dark section[role="region"] > header:first-child > a .icon:after,
section[role="region"].skin-dark > header:first-child > button .icon:after,
.skin-dark section[role="region"] > header:first-child > button .icon:after {
  background-image:  url(headers/images/ui/dark/negative.png);
  background-color: #26272c;
}

section[role="region"].skin-dark > header:first-child menu[type="toolbar"] a:last-child,
.skin-dark section[role="region"] > header:first-child menu[type="toolbar"] a:last-child,
section[role="region"].skin-dark > header:first-child menu[type="toolbar"] button:last-child,
.skin-dark section[role="region"] > header:first-child menu[type="toolbar"] button:last-child {
  background-image: url(headers/images/ui/dark/separator.png);
}

section[role="region"].skin-dark header h2,
.skin-dark section[role="region"] header h2 {
  background-image: url(headers/images/ui/dark/subheader.png);
  background-color: #7f7f7f;
  color: #c5c5c5;
}

/* ----------------------------------
 * HEADERS: organic
 * ---------------------------------- */

section[role="region"].skin-organic > header:first-child,
.skin-organic section[role="region"] > header:first-child {
  background-image: url(headers/images/ui/organic/header.png),  url(headers/images/ui/organic/pattern.png);
}

section[role="region"].skin-organic > header:first-child:after,
.skin-organic section[role="region"] > header:first-child:after {
  margin-top: -0.1rem;
}

/* Navigation links (back, cancel, etc) */
section[role="region"].skin-organic > header:first-child > a .icon:after,
.skin-organic section[role="region"] > header:first-child > a .icon:after,
section[role="region"].skin-organic > header:first-child > button .icon:after,
.skin-organic section[role="region"] > header > button .icon:after {
  background-image: url(headers/images/ui/organic/negative.png);
  background-size: 3.4rem auto;
  background-color: transparent;
}

section[role="region"].skin-organic > header:first-child menu[type="toolbar"] a:last-child,
.skin-organic section[role="region"] > header:first-child menu[type="toolbar"] a:last-child,
section[role="region"].skin-organic > header:first-child menu[type="toolbar"] button:last-child,
.skin-organic section[role="region"] > header:first-child menu[type="toolbar"] button:last-child {
  background-image: url(headers/images/ui/organic/separator.png);
}

section[role="region"].skin-organic header h2,
.skin-organic section[role="region"] header h2 {
  background-image: url(headers/images/ui/organic/subheader.png);
  background-color: #7f7f7f;
  color: #fff;
}

/* ----------------------------------
 * HEADERS: right-to-left tweaks
 * ---------------------------------- */

html[dir="rtl"] section[role="region"] > header:first-child h1 {
  text-align: right;
  margin: 0 3rem 0 0;
}

html[dir="rtl"] section[role="region"] > header:first-child button,
html[dir="rtl"] section[role="region"] > header:first-child a {
  left: inherit;
  right: 0;
}

html[dir="rtl"] section[role="region"] > header:first-child > button .icon,
html[dir="rtl"] section[role="region"] > header:first-child > a .icon {
  margin-left: 0;
  margin-right: -2rem;
}

html[dir="rtl"] section[role="region"] > header:first-child > button .icon:after,
html[dir="rtl"] section[role="region"] > header:first-child > a .icon:after {
  left: inherit;
  right: 0;
}

html[dir="rtl"] section[role="region"] > header:first-child .icon.icon-back {
  background-image: url(headers/images/icons/back-rtl.png);
}
