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

searchbar {
  -moz-binding: url("chrome://browser/content/search/search.xml#searchbar");
}

tabbrowser {
  -moz-binding: url("chrome://browser/content/tabbrowser.xml#tabbrowser");
}

.tabbrowser-tabs {
  -moz-binding: url("chrome://browser/content/tabbrowser.xml#tabbrowser-tabs");
}

#tabbrowser-tabs:not([overflow="true"]) + #new-tab-button,
#tabbrowser-tabs[overflow="true"] > .tabbrowser-arrowscrollbox > .tabs-newtab-button,
#TabsToolbar[currentset]:not([currentset*="tabbrowser-tabs,new-tab-button"]) > #tabbrowser-tabs > .tabbrowser-arrowscrollbox > .tabs-newtab-button,
#navigator-toolbox[customizing="true"] > #TabsToolbar > #tabbrowser-tabs > .tabbrowser-arrowscrollbox > .tabs-newtab-button {
  visibility: collapse;
}

.tabbrowser-tab {
  -moz-binding: url("chrome://browser/content/tabbrowser.xml#tabbrowser-tab");
}

.tabbrowser-tab:not([pinned]) {
  -moz-box-flex: 100;
  max-width: 250px;
  min-width: 100px;
  width: 0;
  -moz-transition: min-width .2s ease-out, max-width .25s ease-out;
}

.tabbrowser-tab:not([pinned]):not([fadein]) {
  max-width: 1px;
  min-width: 1px;
}

.tab-throbber:not([fadein]):not([pinned]),
.tab-label:not([fadein]):not([pinned]),
.tab-icon-image:not([fadein]):not([pinned]),
.tab-close-button:not([fadein]):not([pinned]) {
  opacity: 0 !important;
}

.tab-throbber,
.tab-label,
.tab-icon-image,
.tab-close-button {
  -moz-transition: opacity .25s;
}

.tabbrowser-tab[pinned] {
  position: fixed;
  display: block; /* position:fixed already does this (bug 579776), but let's be explicit */
}

#alltabs-popup {
  -moz-binding: url("chrome://browser/content/tabbrowser.xml#tabbrowser-alltabs-popup");
}

toolbar[printpreview="true"] {
  -moz-binding: url("chrome://global/content/printPreviewBindings.xml#printpreviewtoolbar");
}

#toolbar-menubar {
  -moz-box-ordinal-group: 5;
}

#navigator-toolbox > toolbar:not(#toolbar-menubar):not(#TabsToolbar) {
  -moz-box-ordinal-group: 50;
}

#TabsToolbar {
  -moz-box-ordinal-group: 100;
}

#TabsToolbar[tabsontop="true"] {
  -moz-box-ordinal-group: 10;
}


toolbarpaletteitem[place="palette"] > toolbaritem > hbox[type="places"] {
  display: none;
}

#wrapper-urlbar-container #urlbar-container > #urlbar > toolbarbutton,
#urlbar-container:not([combined]) > #urlbar > toolbarbutton,
#urlbar-container[combined] + #reload-button + #stop-button,
#urlbar-container[combined] + #reload-button,
toolbar:not([mode="icons"]) > #urlbar-container > #urlbar > toolbarbutton,
toolbar[mode="icons"] > #urlbar-container > #urlbar > #urlbar-reload-button:not([displaystop]) + #urlbar-stop-button,
toolbar[mode="icons"] > #urlbar-container > #urlbar > #urlbar-reload-button[displaystop],
toolbar[mode="icons"] > #reload-button:not([displaystop]) + #stop-button,
toolbar[mode="icons"] > #reload-button[displaystop] {
  visibility: collapse;
}

#feed-button > .toolbarbutton-menu-dropmarker {
  display: none;
}

#feed-menu > .feed-menuitem:-moz-locale-dir(rtl) {
  direction: rtl;
}

#main-window:-moz-lwtheme {
  background-repeat: no-repeat;
  background-position: top right;
}


#browser-bottombox[lwthemefooter="true"] {
  background-repeat: no-repeat;
  background-position: bottom left;
}

.split-menuitem-menu > .menu-text,
.split-menuitem-menu > .menu-accel-container {
  display: none;
}

.menuitem-tooltip {
  -moz-binding: url("chrome://browser/content/urlbarBindings.xml#menuitem-tooltip");
}

.menuitem-iconic-tooltip,
.menuitem-tooltip[type="checkbox"],
.menuitem-tooltip[type="radio"] {
  -moz-binding: url("chrome://browser/content/urlbarBindings.xml#menuitem-iconic-tooltip");
}

#appmenu_offlineModeRecovery:not([checked=true]) {
  display: none;
}

/* ::::: location bar ::::: */
#urlbar {
  -moz-binding: url(chrome://browser/content/urlbarBindings.xml#urlbar);
}

/* Some child nodes want to be ordered based on the locale's direction, while
   everything else should be ltr. */
.urlbar-input-box:-moz-locale-dir(rtl) {
  direction: rtl;
}

html|*.urlbar-input {
  direction: ltr;
}

/* over-link in location bar */

.urlbar-over-link-layer[overlinkstate="fade-in"],
.urlbar-textbox-container:not([overlinkstate]) {
  -moz-transition-property: color;
  -moz-transition-duration: 150ms;
  -moz-transition-timing-function: cubic-bezier(0.0, 0.6, 1.0, 1.0);
}

.urlbar-textbox-container[overlinkstate="fade-in"],
.urlbar-over-link-layer:not([overlinkstate]) {
  -moz-transition-property: color;
  -moz-transition-duration: 150ms;
  -moz-transition-timing-function: linear;
  color: transparent;
}

.urlbar-over-link-box[overlinkstate="fade-in"],
.urlbar-textbox-container-children:not([overlinkstate]) {
  -moz-transition-property: opacity;
  -moz-transition-duration: 150ms;
  opacity: 1;
}

.urlbar-textbox-container-children[overlinkstate="fade-in"],
.urlbar-over-link-box:not([overlinkstate]) {
  -moz-transition-property: opacity;
  -moz-transition-duration: 150ms;
  opacity: 0;
}

.urlbar-textbox-container[overlinkstate="showing"] {
  color: transparent;
}

.urlbar-over-link-box[overlinkstate="showing"] {
  opacity: 1;
}

.urlbar-textbox-container-children[overlinkstate="showing"] {
  opacity: 0;
}

/* For results that are actions, their description text is shown instead of
   the URL - this needs to follow the locale's direction, unlike URLs. */
richlistitem[type~="action"]:-moz-locale-dir(rtl) > .ac-url-box {
  direction: rtl;
}

#urlbar:not([actiontype]) > #urlbar-display {
  display: none;
}

#wrapper-urlbar-container > #urlbar-container > #urlbar {
  -moz-user-input: disabled;
  cursor: -moz-grab;
}

#PopupAutoComplete {
  -moz-binding: url("chrome://browser/content/urlbarBindings.xml#browser-autocomplete-result-popup");
}

#PopupAutoCompleteRichResult {
  -moz-binding: url("chrome://browser/content/urlbarBindings.xml#urlbar-rich-result-popup");
}

#urlbar-throbber:not([busy="true"]),
#urlbar-throbber[busy="true"] + #page-proxy-favicon {
  display: none;
}

#urlbar-container[combined] > #urlbar > #urlbar-icons > #go-button,
#urlbar[pageproxystate="invalid"] > #urlbar-icons > .urlbar-icon:not(#go-button),
#urlbar[pageproxystate="valid"] > #urlbar-icons > #go-button,
#urlbar[pageproxystate="invalid"][focused="true"] > #urlbar-go-button ~ toolbarbutton,
#urlbar[pageproxystate="valid"] > #urlbar-go-button,
#urlbar:not([focused="true"]) > #urlbar-go-button {
  visibility: collapse;
}

#identity-icon-labels {
  max-width: 18em;
}

#identity-icon-country-label {
  direction: ltr;
}

#identity-box.verifiedIdentity > #identity-box-inner > #identity-icon-labels > #identity-icon-label {
  -moz-margin-end: 0.25em !important;
}

#wrapper-search-container > #search-container > #searchbar > .searchbar-textbox > .autocomplete-textbox-container > .textbox-input-box > html|*.textbox-input {
  visibility: hidden;
}

/* ::::: Unified Back-/Forward Button ::::: */
#back-button > .toolbarbutton-menu-dropmarker,
#forward-button > .toolbarbutton-menu-dropmarker {
  display: none;
}
.unified-nav-current {
  font-weight: bold;
}

toolbarbutton.bookmark-item {
  max-width: 13em;
}


#editBMPanel_tagsSelector {
  /* override default listbox width from xul.css */
  width: auto;
}

menupopup[emptyplacesresult="true"] > .hide-if-empty-places-result {
  display: none;
}

menuitem.spell-suggestion {
  font-weight: bold;
}

#sidebar-header > .tabs-closebutton {
  -moz-user-focus: normal;
}

/* apply Fitts' law to the notification bar's close button */
window[sizemode="maximized"] #content .notification-inner {
  border-right: 0px !important;
}

/* Hide extension toolbars that neglected to set the proper class */
window[chromehidden~="location"][chromehidden~="toolbar"] toolbar:not(.chromeclass-menubar),
window[chromehidden~="toolbar"] toolbar:not(.toolbar-primary):not(.chromeclass-menubar) {
  display: none;
}

#navigator-toolbox ,
#status-bar ,
#mainPopupSet {
  min-width: 1px;
}

/* Sync notification UI */
#sync-notifications {
  -moz-binding: url("chrome://browser/content/syncNotification.xml#notificationbox");
  overflow-y: visible !important;
}

#sync-notifications notification {
  -moz-binding: url("chrome://browser/content/syncNotification.xml#notification");
}

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

/*  Full Screen UI */

#fullscr-toggler {
  height: 1px;
  background: black;
}

#nav-bar[mode="text"] > #window-controls > toolbarbutton > .toolbarbutton-icon {
  display: -moz-box;
}

#nav-bar[mode="text"] > #window-controls > toolbarbutton > .toolbarbutton-text {
  display: none;
}

/* ::::: Keyboard UI Panel ::::: */
.KUI-panel-closebutton {
  -moz-binding: url("chrome://global/content/bindings/toolbarbutton.xml#toolbarbutton-image");
}

.ctrlTab-preview > html|canvas,
.allTabs-preview > html|canvas {
  min-width: inherit;
  max-width: inherit;
  min-height: inherit;
  max-height: inherit;
}

.ctrlTab-favicon-container,
.allTabs-favicon-container {
  -moz-box-align: start;
  -moz-box-pack: start;
}

.ctrlTab-favicon,
.allTabs-favicon {
  width: 16px;
  height: 16px;
}

/* ::::: Ctrl-Tab Panel ::::: */
.ctrlTab-preview {
  -moz-binding: url("chrome://browser/content/browser-tabPreviews.xml#ctrlTab-preview");
}

/* ::::: All Tabs Panel ::::: */
.allTabs-preview {
  -moz-binding: url("chrome://browser/content/browser-tabPreviews.xml#allTabs-preview");
}

#allTabs-tab-close-button {
  -moz-binding: url("chrome://global/content/bindings/toolbarbutton.xml#toolbarbutton-image");
  margin: 0;
}


/* notification anchors should only be visible when their associated
   notifications are */
.notification-anchor-icon {
  display: none;
  -moz-user-focus: normal;
}

#notification-popup-box[anchorid="geo-notification-icon"] > #geo-notification-icon,
#notification-popup-box[anchorid="indexedDB-notification-icon"] > #indexedDB-notification-icon,
#notification-popup-box[anchorid="addons-notification-icon"] > #addons-notification-icon,
#notification-popup-box[anchorid="password-notification-icon"] > #password-notification-icon {
  display: -moz-box;
}

#invalid-form-popup {
  max-width: 280px;
}

#geolocation-notification {
  -moz-binding: url("chrome://browser/content/urlbarBindings.xml#geolocation-notification");
}

/* override hidden="true" for the status bar compatibility shim
   in case it was persisted for the real status bar */
#status-bar {
  display: -moz-box;
}

/* Remove the resizer from the statusbar compatibility shim */
#status-bar > .statusbar-resizerpanel {
  display: none;
}
