browser[remote="false"] {
  -moz-binding: url("chrome://browser/content/bindings/browser.xml#local-browser");
}

browser[remote="true"] {
  -moz-binding: url("chrome://browser/content/bindings/browser.xml#remote-browser");
}

#urlbar-edit {
  -moz-binding: url("chrome://browser/content/bindings.xml#autocomplete-aligned");
}

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

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

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

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

setting[type="bool"] {
  -moz-binding: url("chrome://browser/content/bindings/setting.xml#setting-bool");
}

setting[type="bool"][localized="true"] {
  -moz-binding: url("chrome://browser/content/bindings/setting.xml#setting-localized-bool");
}

setting[type="boolint"] {
  -moz-binding: url("chrome://browser/content/bindings/setting.xml#setting-boolint");
}

setting[type="integer"] {
  -moz-binding: url("chrome://browser/content/bindings/setting.xml#setting-integer");
}

setting[type="control"] {
  -moz-binding: url("chrome://browser/content/bindings/setting.xml#setting-control");
}

setting[type="string"] {
  -moz-binding: url("chrome://browser/content/bindings/setting.xml#setting-string");
}

#browsers > notificationbox {
  -moz-binding: url("chrome://browser/content/notification.xml#stacked-notificationbox");
  overflow: -moz-hidden-unscrollable;
}

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

notification[type="geo"] {
    -moz-binding: url("chrome://browser/content/notification.xml#geo-notification");
}

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

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

/* visibility: hidden rather than display:none the first child, since it needs a
   height for the 'No results' row to be properly positioned */
autocompleteresult[value=""]:first-child {
  visibility: hidden;
}

autocompleteresult[value=""]:not(:first-child) {
  display: none;
}

placeitem {
  -moz-binding: url("chrome://browser/content/bindings.xml#place-item");
  background-color: transparent;
}

placeitem[type="folder"] {
  -moz-binding: url("chrome://browser/content/bindings.xml#place-folder");
}

placelist {
  -moz-binding: url("chrome://browser/content/bindings.xml#place-list");
}

historylist {
  -moz-binding: url("chrome://browser/content/bindings.xml#history-list");
}

remotetabslist {
  -moz-binding: url("chrome://browser/content/bindings.xml#remotetabs-list");
}

placelabel {
  -moz-binding: url("chrome://browser/content/bindings.xml#place-label");
}

radio {
  -moz-binding: url("chrome://global/content/bindings/radio.xml#radio");
}

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

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

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

/* richlist defaults ------------------------------------------------------- */
richlistbox[batch] {
  -moz-binding: url("chrome://browser/content/bindings.xml#richlistbox-batch");
}

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

richlistitem[typeName="local"] {
  -moz-binding: url("chrome://browser/content/bindings/extensions.xml#extension-local");
}

richlistitem[typeName="searchplugin"] {
  -moz-binding: url("chrome://browser/content/bindings/extensions.xml#extension-searchplugin");
}

richlistitem[typeName="search"] {
  -moz-binding: url("chrome://browser/content/bindings/extensions.xml#extension-search");
}

richlistitem[typeName="search"] hbox.addon-type-or-rating {
  -moz-binding: url("chrome://browser/content/bindings/extensions.xml#extension-search-recommended");
}

richlistitem[typeName="search"] hbox.addon-type-or-rating[rating] {
  -moz-binding: url("chrome://browser/content/bindings/extensions.xml#extension-search-rating");
}

richlistitem[typeName="search"] hbox.addon-type-or-rating[rating="-1"] {
  -moz-binding: url("chrome://browser/content/bindings/extensions.xml#extension-search-no-rating");
}

richlistitem[typeName="message"] {
  -moz-binding: url("chrome://browser/content/bindings/extensions.xml#extension-message");
}

richlistitem[typeName="showmore"] {
  -moz-binding: url("chrome://browser/content/bindings/extensions.xml#extension-search-showmore");
}

richlistitem[typeName="banner"] {
  -moz-binding: url("chrome://browser/content/bindings/extensions.xml#extension-search-banner");
}

richlistitem[typeName="download"][state="-1"] {
  -moz-binding: url("chrome://browser/content/bindings/downloads.xml#download-not-started");
}

richlistitem[typeName="download"] {
  -moz-binding: url("chrome://browser/content/bindings/downloads.xml#download-downloading");
}

richlistitem[typeName="download"][state="1"] {
  -moz-binding: url("chrome://browser/content/bindings/downloads.xml#download-done");
}

richlistitem[typeName="download"][state="2"],
richlistitem[typeName="download"][state="3"] {
  -moz-binding: url("chrome://browser/content/bindings/downloads.xml#download-retry");
}

richlistitem[typeName="download"][state="4"] {
  -moz-binding: url("chrome://browser/content/bindings/downloads.xml#download-paused");
}

/* addons states ----------------------------------------------------------- */
.hide-on-enable,
.show-on-error,
.show-on-uninstall,
.show-on-install,
.show-on-restart,
richlistitem[isDisabled="true"] .hide-on-disable {
  display: none;
}

richlistitem[error] .show-on-error,
richlistitem[opType="needs-restart"] .show-on-restart,
richlistitem[opType="needs-uninstall"] .show-on-uninstall,
richlistitem[opType="needs-install"] .show-on-install,
richlistitem[opType="needs-enable"] .show-on-enable,
richlistitem[opType="needs-disable"] .show-on-disable,
richlistitem[isDisabled="true"] .show-on-disable {
  display: -moz-box;
}

richlistitem[opType="needs-restart"] .hide-on-restart,
richlistitem[opType="needs-uninstall"] .hide-on-uninstall,
richlistitem[isDisabled="true"][opType="needs-uninstall"],
richlistitem[opType="needs-install"] .hide-on-install,
richlistitem[opType="needs-enable"] .hide-on-enable,
richlistitem[opType="needs-disable"] .hide-on-disable {
  display: none;
}

richlistitem[type="error"],
richlistitem[type="warning"] {
  -moz-binding: url("chrome://browser/content/bindings/console.xml#error");
}

richlistitem[type="message"]{
  -moz-binding: url("chrome://browser/content/bindings/console.xml#message");
}

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

/* Do not allow these to inherit from the toolkit binding */
dialog.content-dialog {
  -moz-binding: none;
}

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

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

/* Disable context menus in textboxes */
.textbox-input-box,
.textbox-input-box[spellcheck="true"] {
  -moz-binding: url("chrome://browser/content/bindings.xml#input-box");
}

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

textbox[multiline="true"] {
  -moz-binding: url("chrome://browser/content/bindings.xml#textarea");
}

textbox[type="timed"] {
  -moz-binding: url("chrome://browser/content/bindings.xml#timed-textbox");
}

textbox[type="search"] {
  -moz-binding: url("chrome://browser/content/bindings.xml#search-textbox");
}

textbox[type="number"] {
  -moz-binding: url("chrome://browser/content/bindings.xml#numberbox");
}
