/* ***** 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 Mobile Browser.
 *
 * The Initial Developer of the Original Code is
 * Mozilla Corporation.
 * Portions created by the Initial Developer are Copyright (C) 2008
 * the Initial Developer. All Rights Reserved.
 *
 * Contributor(s):
 *   Mark Finkle <mfinkle@mozilla.com>
 *   Kantha Kanchiraju <kkanchir@sta.samsung.com>
 *
 * 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 ***** */

@import url("chrome://browser/skin/browser-high.css");
@import url("chrome://browser/skin/browser-low.css");

/* browser area -------------------------------------------------- */
#tile-container {
  background-image: url("chrome://browser/content/checkerboard.png");
}

/* main toolbar (URL bar) -------------------------------------------------- */
#toolbar-main {
  -moz-appearance: none;
  -moz-box-align: center;
  padding: 1.1mm; /* core spacing */
  border: none;
}

#toolbar-moveable-container {
  display: block;
}

#toolbar-moveable-container[top="0"] {
  position: fixed;
  left: 0;
  z-index: 1000;
}

/* main toolbar buttons */
toolbarbutton.urlbar-button {
  /* space out the buttons a bit horizontally */
  margin-left: 1.1mm; /* core spacing */
}

/* URL bar cap buttons */
toolbarbutton.urlbar-cap-button {
  margin: 0;
  padding: 0;
  min-width: 0 !important;
  min-height: 0 !important;
  -moz-box-flex: 1;
}

#urlbar-icons[mode="loading"] > #tool-go,
#urlbar-icons[mode="loading"] > #tool-reload {
  visibility: collapse;
}

#urlbar-icons[mode="view"] > #tool-go,
#urlbar-icons[mode="view"] > #tool-stop {
  visibility: collapse;
}

#urlbar-icons[mode="edit"] > #tool-reload,
#urlbar-icons[mode="edit"] > #tool-stop {
  visibility: collapse;
}

/* URL bar ----------------------------------------------------------------- */
#urlbar-container {
  color: #000;
  -moz-box-align: center;
}

#urlbar-edit {
  -moz-appearance: none !important;
  padding: 0px !important;
  border: none !important;
}

/* right toolbar (browser controls) ---------------------------------------- */
#browser-controls {
  -moz-box-align: start;
  padding: 0 1.1mm; /* core spacing + tiny bit for a rounding issue? */
  border-left: 3px solid #262629; /* keep pixels */
}

toolbarbutton.browser-control-button,
toolbarbutton.panel-button,
toolbarbutton.page-button {
  /* space out the buttons a bit vertically */
  margin-bottom: 1.1mm; /* core spacing */
}

/* browser tools panel UI   ------------------------------------------------ */
@media (min-width: 500px) {
  #panel-container {
    -moz-box-orient: horizontal;
    -moz-box-direction: normal;
  }

  #panel-controls {
    -moz-box-orient: vertical;
    -moz-box-direction: normal;
  }
}

@media (max-width: 500px) {
  #panel-container {
    -moz-box-orient: vertical;
    -moz-box-direction: reverse;
  }

  #panel-controls {
    -moz-box-orient: horizontal;
    -moz-box-direction: reverse;
    padding-top: 1.1mm; /* core spacing */
  }

  #tool-panel-close {
    margin-right: 1.1mm; /* core spacing */
  }

  toolbarbutton.panel-button {
    margin-right: 1.1mm; /* core spacing */
  }
}

#panel-controls {
  /* match #browser-controls end padding */
  padding-left: 1.1mm; /* core spacing */
  padding-right: 1.1mm; /* core spacing */
  -moz-box-align: end;
  -moz-box-pack: end;
}

.panel-header {
  padding: 1.1mm; /* core spacing */
}

/* addons panel UI   ------------------------------------------------------- */
@media (min-width: 500px) {
  #addons-repo {
    -moz-box-orient: horizontal;
    -moz-box-align: center;
  }
}

@media (max-width: 500px) {
  #addons-repo {
    -moz-box-orient: vertical;
    -moz-box-pack: center;
  }

  /* let the buttons in a selected addon wrap */
  #addons-list > richlistitem .buttons-box {
    display: block;
  }
}

.addon-showmore-image {
  width: 32px;
  height: 32px;
  list-style-image: url("chrome://browser/skin/images/addons-32.png");
}

richlistitem[isDisabled="true"] .title {
  color: gray;
}

richlistitem[isDisabled="true"] .normal {
  color: lightgray;
}

richlistitem[isDisabled="true"] image {
  opacity: 0.25;
}

/* downloads panel UI   ---------------------------------------------------- */
.download-retry-failed {
  color: red !important;
}

/* special "no downloads" items */
#dl-empty-message {
  margin-top: 12mm; /* 2 times row height */
  font-style: italic;
  border-bottom: none;
}

#dl-empty-message:active {
  background-color: white;
}

#dl-empty-message > label {
  text-align: center;
  color: grey;
}

/* console panel UI   ------------------------------------------------------ */
@media (min-width: 500px) {
  #console-filter-warnings,
  #console-filter-messages {
    visibility: visible;
  }
}

@media (max-width: 500px) {
  #console-filter-warnings,
  #console-filter-messages {
    visibility: collapse;
  }
}

/* bookmark list panel UI   ------------------------------------------------ */
#bookmarklist-container {
  padding: 0;
}

#bookmarklist-header {
  -moz-box-align: center;
  padding: 1.1mm; /* core spacing */
}

#bookmark-items {
  -moz-appearance: none !important;
  padding: 0;
}

/* folders navigation row */
.place-list-parents placelabel {
  visibility: collapse;
}

.place-list-parents placelabel:last-child:not(:only-child) {
  visibility: visible;
}

/* be consistent with the size of placeitem */
placelabel {
  -moz-box-align: center;
  padding-right: 6mm;
  background: rgb(207,207,207) url(images/arrowup-16.png) no-repeat 98% 50%;
  color: #000;
  min-height: 7.2mm; /* row size */
}

/* folder bookmarks row */
placeitem[type="folder"] {
  -moz-box-pack: center;
  padding-right: 4mm;
  background: url("images/arrowright-16.png") no-repeat 98% 50%;
}

placelist[ui="manage"] placeitem[type="folder"] {
  background-image: none;
}

placeitem[type="folder"] .bookmark-item-url {
  display: none;
}

/* use a smaller font size for the manage buttons */
placeitem > .bookmark-manage .button-text {
  font-size: 9pt !important;
}

/* bookmark manage controls */
placeitem > .bookmark-manage .bookmark-controls {
  padding-top: 0.55mm;
}

/* bookmark popup for star button */
placeitem[ui="manage"] {
  border-bottom: 0;
}

placeitem[ui="manage"] > .bookmark-manage > image {
  visibility: collapse;
}

.searchengine {
  -moz-box-orient: horizontal;
  min-width: 7.2mm;
}

#autocomplete_navbuttons {
  padding: 0.5mm 0; /* half core spacing & none (autorepeat arrows compensate) */
  min-height: 7.2mm; /* row size */
}

/* same images used for high and low */
#autocomplete_navbuttons .autorepeatbutton-down {
  list-style-image: url(images/arrowrightdark-16.png);
}

#autocomplete_navbuttons .autorepeatbutton-up {
  list-style-image: url(images/arrowleftdark-16.png);
}

/* force the autorepeat buttons to create a 'padding' when collapsed */
#autocomplete_navbuttons autorepeatbutton[collapsed="true"],
#autocomplete_navbuttons autorepeatbutton[disabled="true"] {
  visibility: hidden;
}

.autocomplete-items {
  background-color: white;
}

autocompleteresult,
placeitem {
  color: black;
  background-color: white;
  padding: 1.25mm 0.5mm;
  border-bottom: 0.05mm solid rgb(207,207,207);
  min-height: 9.2mm; /* row size */
}

autocompleteresult:active,
placelist placeitem:active:not([selected="true"]),
.autocompleteresult-selected {
  background-color: #8db8d8;
}

.autocomplete-item-label,
.bookmark-item-label {
  margin: 0;
  padding: 0;
  font-size: 9pt !important;
  font-weight: normal;
  margin-right: 2mm;
}

.autocomplete-item-label > image,
.bookmark-item-label > image {
  /* margin-top = (1 - title's line-height) * title's font-size */
  margin: 0.4mm 2.5mm 0mm 2mm;
}

placeitem[type="folder"] > .bookmark-item-label > image {
  margin-top: 0;
}

.autocomplete-item-label > vbox > label,
.bookmark-item-label > vbox > label {
  -moz-margin-start: 1px;
}

.autocomplete-item-label[favorite="true"] {
  padding-right: 30px;
  background: url(images/star-24.png) no-repeat 100% 0.2mm;
}

.autocomplete-item-label:not([tags=""]):after,
.bookmark-item-label:not([tags=""]):after {
  float: right;
  content: attr(tags);
  font-size: 8pt !important;
  font-weight: lighter;
  padding-top: 1.1mm; /* core spacing */
  margin-left: 2mm;
}

.autocomplete-item-url,
.bookmark-item-url {
  margin: 0;
  padding: 0;
  color: blue;
  font-size: 8pt !important;
  margin-left: inherit;
}

/* special "no results" and "all bookmarks" items */
autocompleteresult.noresults {
  font-style: italic;
  border-bottom: none;
}

autocompleteresult.noresults:active {
  background-color: white;
}

autocompleteresult.noresults > .autocomplete-item-label {
  text-align: center;
  color: grey;
}

autocompleteresult.allbookmarks {
  -moz-box-pack: center;
  background: #E9E9E9 url("images/arrowright-16.png") no-repeat 98% 50%;
}

autocompleteresult.allbookmarks:active,
autocompleteresult.allbookmarks.autocompleteresult-selected {
  background-color: #8db8d8;
}

autocompleteresult.allbookmarks > .autocomplete-item-label {
  font-size: 9pt !important;
  margin: 0 1.5mm;
}

autocompleteresult.allbookmarks > .autocomplete-item-url {
  display: none;
}

/* Left sidebar (tabs)  ---------------------------------------------------- */
#tabs-container {
  -moz-padding-start: 0.6mm; /* allow the thumbnails to get close to the edge */
  -moz-padding-end: 1.1mm; /* core spacing */
  padding-bottom: 1.1mm; /* core spacing */
  border-right: 3px solid #262629; /* keep pixels */
}

#tabs {
   display: block;
  -moz-column-width: 128px;
  -moz-column-gap: 0;
  -moz-user-focus: ignore;
  margin: 0;
  padding: 0;
  background-color: transparent;
}

#tabs-controls {
  margin-top: 1.1mm; /* core spacing */
  -moz-box-pack: start;
}

box[type="documenttab"] .documenttab-canvas {
  background-color: white;
}

box[type="documenttab"]:only-child .documenttab-close {
  display: none;
}

/* bookmark editor   ------------------------------------------------------- */
#bookmark-container {
  padding: 1.1mm; /* core spacing */
  background-image: url("chrome://browser/skin/images/panel-shadow.png");
  background-repeat: repeat-x;
  -moz-box-shadow: black 0 0.25mm 0.25mm;
}

#bookmark-form {
  padding: 1.1mm; /* core spacing */
}

#bookmark-form .bookmark-controls {
  display: none;
}

/* Identity popup   -------------------------------------------------------- */
#identity-container {
  background-image: url("chrome://browser/skin/images/panel-shadow.png");
  background-repeat: repeat-x;
  -moz-box-shadow: black 0 0.25mm 0.25mm;
}

#identity-container[hasmenu="true"] {
  -moz-border-radius-bottomleft: 1.1mm;
  -moz-border-radius-bottomright: 1.1mm;
}

#identity-popup-container {
  padding: 1.1mm; /* core spacing */
}

#identity-container[hasmenu="true"] > #identity-popup-container {
  background-image: -moz-linear-gradient(bottom, rgb(94,95,99) 0%, rgb(54,55,59) 25%, transparent);
  padding-bottom: 2.2mm;
}

/* Popup Body Text */
#identity-popup-content-box {
  -moz-padding-start: 1.1mm; /* core spacing */
}

/* let the text flow into a second row, if needed */
#identity-popup-runBy-box {
  display: block;
}

#identity-popup-content-box.unknownIdentity > hbox > #identity-popup-connectedToLabel,
#identity-popup-content-box.unknownIdentity > hbox > #identity-popup-runByLabel,
#identity-popup-content-box.unknownIdentity > hbox > #identity-popup-content-host,
#identity-popup-content-box.unknownIdentity > hbox > #identity-popup-content-owner,
#identity-popup-content-box.verifiedIdentity > hbox > #identity-popup-connectedToLabel2,
#identity-popup-content-box.verifiedDomain > hbox > #identity-popup-connectedToLabel2 {
  display: none;
}

#identity-popup-content-box > hbox > description,
#identity-popup-content-box > hbox > label {
  font-size: 9pt !important;
  white-space: pre-wrap;
}

#identity-popup-encryption-label,
#identity-popup-content-verifier {
  font-size: 8pt !important;
}

#identity-popup-content-host,
#identity-popup-content-owner {
  font-weight: bold;
}

/* Page Actions popup   ----------------------------------------------------- */
#identity-container[hasmenu="false"] > #pageactions-container {
  display: none;
}

.prompt-buttons,
#pageactions-container {
  background: rgb(210, 210, 210) -moz-linear-gradient(top, rgba(255,255,255,0.4) 0%, rgba(235,235,235,0.4) 90%, rgba(185,185,185,0.4) 100%);
  border: none;
  padding: 0;
  -moz-user-focus: ignore;
  display: inline-block;
  -moz-border-radius-bottomleft: 1.1mm;
  -moz-border-radius-bottomright: 1.1mm;
}

.prompt-buttons > button,
pageaction {
  -moz-border-top-colors: rgb(255, 255, 255);
  -moz-border-right-colors: rgb(215, 215, 215);
  -moz-border-bottom-colors: rgb(215, 215, 215);
  -moz-border-left-colors: rgb(255, 255, 255);
  background-color: rgb(235,235,235);
  border-style: solid;
  border-width: 1px !important;
  height: 64px;
  width: 100%;
}

/* Override buttons style */
.prompt-buttons > button {
  margin: 0;
  -moz-border-image: none !important;
}

.prompt-buttons > button > .button-box {
  padding: 0 4px 1px 3px !important;
}

@media all and (orientation: landscape) {
  .prompt-buttons > button,
  pageaction {
    width: 50%;
  }

  .prompt-buttons > button:nth-last-child(2):not(:nth-child(even)),
  pageaction:nth-last-child(2):not(:nth-child(even)) {
    background-image: -moz-linear-gradient(top, rgb(235,235,235) 0%, rgb(215,215,215) 90%);
    border-bottom: 1px solid #fff;
    -moz-border-radius-bottomleft: 1.1mm;
  }

  .prompt-buttons > button:first-child,
  .prompt-buttons > button:nth-child(2),
  pageaction:first-child,
  pageaction:nth-child(2) {
    background-image: -moz-linear-gradient(top, rgb(255,255,255) 0%, rgb(235,235,235) 90%) !important;
  }

  .prompt-buttons > button:last-child:not(:nth-child(even)),
  pageaction:last-child:not(:nth-child(even)) {
    border-bottom: 1px solid #fff;
    -moz-border-radius-bottomleft: 1.1mm;
    -moz-border-radius-bottomright: 1.1mm;
    width: 100%;
  }

  .prompt-buttons > button:last-child:not(:nth-child(odd)),
  pageaction:last-child:not(:nth-child(odd)) {
    border-bottom: 1px solid #fff;
    -moz-border-radius-bottomright: 1.1mm;
  }
}

@media all and (orientation: portrait) {
  .prompt-buttons > button:last-child,
  pageaction:last-child {
    -moz-border-radius-bottomleft: 1.1mm;
    -moz-border-radius-bottomright: 1.1mm;
  }
}

.prompt-buttons > button:last-child,
pageaction:last-child {
  background-image: -moz-linear-gradient(top, rgb(235,235,235) 0%, rgb(215,215,215) 90%);
}

.prompt-buttons > button:first-child,
pageaction:first-child {
  background-image: -moz-linear-gradient(top, rgb(255,255,255) 0%, rgba(235,235,235) 90%);
}

.prompt-buttons > button:hover:active,
pageaction:hover:active {
  background-image: none !important;
  background-color: #8db8d8 !important;
}

pageaction .pageaction-image {
  width: 32px;
  height: 32px;
  -moz-margin-end: 8px;
}

pageaction:not([image]) .pageaction-image {
  width: 0;
}

.prompt-buttons > button,
pageaction .pageaction-title {
  font-size: 9pt !important;
  color: #414141 !important;
}

pageaction .pageaction-desc {
  font-size: 8pt !important;
  color: #414141;
}

pageaction:hover:active .pageaction-desc {
  color: white;
}

pageaction .pageaction-desc[value=""] {
  display: none;
}

/* Preferences window   ---------------------------------------------------- */
.settings-title {
  font-weight: bold;
  color: black;
  background-color: lightgray;
  margin: 0;
  padding: 0.25mm;
}

/* XXX should be a richlistitem */
.prefbox {
  padding: 0.25mm 1.1mm;
  border-bottom: 0.05mm solid rgb(207,207,207);
  min-height: 7.2mm; /* row size */
}

.options-box setting:last-child .prefbox {
  border-bottom: 0;
}

/* XXX should be a richlistitem description.title */
.preftitle {
  font-size: 9pt !important;
}

/* XXX should be a richlistitem description.normal */
.prefdesc {
  font-size: 8pt !important;
  color: grey;
  background-color: white;
}

/* alerts popup ----------------------------------------------------------- */
/* not dependent on high and low */
@media (min-width: 500px) {
  #alerts-container {
    width: 300px;
  }
}

@media (max-width: 500px) {
  #alerts-container {
    width: 200px;
  }
}

#alerts-text {
  font-size: 8pt !important;
  white-space: pre-wrap;
}

/* helperapp (save-as) popup ----------------------------------------------- */
#helperapp-target {
  font-size: 8pt !important;
}

/* form popup -------------------------------------------------------------- */
#form-helper-container > #select-container > #select-container-inner {
  -moz-border-radius-topleft: 1mm;
  -moz-border-radius-topright: 1mm;
  -moz-border-radius-bottomright: 0;
  -moz-border-radius-bottomleft: 0;
  padding: 0.75mm 0.25mm 0.75mm 0.25mm;
  border-bottom: 0;
  -moz-box-flex: 0;
}

#form-helper-container > #select-container > #select-container-inner > scrollbox {
  min-height: 64px;
}

#form-helper-container > #select-container > spacer {
  display: none;
}

#form-helper-container > #select-container > #select-container-inner,
#form-buttons {
  border: 0.25mm solid gray;
  border-bottom: 0;
}

#form-buttons,
#select-buttons {
  padding: 0.25mm 0.5mm; /* row size & core spacing */
}

#form-buttons > button,
#select-buttons > button {
  -moz-user-focus: ignore;
  -moz-user-select: none;
}

#form-helper-container #select-buttons {
  display: none;
}

#select-container:not([hidden=true]) + #form-buttons {
  border-top: 0;
}

#form-helper-autofill {
  padding: 0.25mm 0; /* half core spacing & none (autorepeat arrows compensate) */
  border-top: 0.1mm solid #36373b;
  background-color: rgb(235,235,235);
  background-image: -moz-linear-gradient(top, rgb(255,255,255) 0%, rgb(235,235,235) 90%);
}

#form-helper-autofill .autorepeatbutton-down {
  list-style-image: url(images/arrowright-16.png);
}

#form-helper-autofill .autorepeatbutton-up {
  list-style-image: url(images/arrowleft-16.png);
}

/* force the autorepeat buttons to create a 'padding' when collapsed */
#form-helper-autofill autorepeatbutton[collapsed="true"],
#form-helper-autofill autorepeatbutton[disabled="true"] {
  visibility: hidden;
}

#form-helper-autofill > label {
  padding: 0.75mm 0.5mm; /* 0.75 helps get row size for the labels */
  margin: 0;
  border-color: transparent rgb(215,215,215) transparent rgb(255,255,255);
  border-style: solid;
  border-width: 1px;
}

#form-helper-autofill > label:first-child {
  padding-left: -moz-initial; /* the arrowscrollbox creates enough left padding */
  border-left: none;
}

#form-helper-autofill > label:last-child {
  border-right: none;
}

#form-helper-autofill > label:active {
  background-color: #8db8d8;
}

/* select popup ------------------------------------------------------------ */
#stack > #select-container {
  padding: 1.5mm;
}

#select-list {
  border: 0.1mm solid gray;
  background-color: #fff;
}

#select-list > option {
  color: #000;
  background-color: #fff;
  padding: 5px;
  border-bottom: 1px solid rgb(207,207,207);
  min-height: 7.2mm; /* row size */
  max-height: 7.2mm; /* row size */
  -moz-box-align: center;
}

#select-list > option[selected="true"] {
  background-color: #8db8d8;
}

#select-list > option.optgroup {
  font-weight: bold;
  font-style: italic;
}

#select-list > option.optgroup > image {
  display: none;
}

#select-list > option.in-optgroup {
  -moz-padding-start: 4.4mm;
}

#select-list > option > image {
  min-width: 30px;
}

/* context popup ----------------------------------------------------------- */
#context-popup {
  /* Remove some dialog-dark styles */
  padding: 0.5mm 0 0 0;
  border: none;
}

#context-header > label {
  font-size: 8pt;
  padding: 0.25mm;
}

#context-commands {
  border: 1px solid rgb(207,207,207);
  -moz-border-radius: 0 0 0.5mm 0.5mm;
}

#context-commands > richlistitem {
  -moz-box-align: center;
  background-color: rgb(245,245,245);
  min-width: 200px; /* keep the command from being too narrow */
}

#context-commands > richlistitem[selector="first-child"] {
  background: -moz-linear-gradient(top, rgb(255,255,255), rgb(245,245,245));
}

#context-commands > richlistitem[selector="last-child"] {
  background: -moz-linear-gradient(top, rgb(245,245,245), rgb(215,215,215));
  -moz-border-radius: 0 0 8px 8px !important;
}

/* Force any command tap to highlight */
#context-commands > richlistitem:hover:active {
  background: #8db8d8;
}

.modal-block {
  -moz-box-align: center;
  -moz-box-pack: center;
  background-color: rgba(128, 128, 128, 0.5);
}
