/* This Source Code Form is subject to the terms of the Mozilla Public
 * License, v. 2.0. If a copy of the MPL was not distributed with this
 * file, You can obtain one at http://mozilla.org/MPL/2.0/. */

%include ../shared.inc

/* Sidebars */

#bookmarksPanel, 
#history-panel,
#sidebar-search-container,
#tabs-panel {
  -moz-appearance: none !important;
  background-color: transparent !important;
  border-top: none !important;
}

.sidebar-placesTree,
.sidebar-placesTreechildren::-moz-tree-row {
  padding-bottom: 1px;
  margin: 0;
  height: 24px;
  font-size: 12px;
}

.sidebar-placesTree {
  -moz-appearance: -moz-mac-source-list;
}

.sidebar-placesTreechildren {
  border-top: 1px solid #bebebe;
}

.sidebar-placesTreechildren::-moz-tree-separator {
  border-top: 1px solid #505d6d;
  margin: 0 10px;
}

.sidebar-placesTreechildren::-moz-tree-row {
  background-color: transparent;
}

.sidebar-placesTreechildren::-moz-tree-row(selected) {
  -moz-appearance: -moz-mac-source-list-selection;
}

.sidebar-placesTreechildren::-moz-tree-row(selected,focus) {
  -moz-appearance: -moz-mac-active-source-list-selection;
}

.sidebar-placesTreechildren::-moz-tree-cell-text {
  margin-inline-end: 6px;
}

.sidebar-placesTreechildren::-moz-tree-cell-text(selected) {
  color: #fff;
  font-weight: bold;
}

#sidebar-search-label {
  display: none;
}

.sidebar-placesTreechildren::-moz-tree-twisty {
  -moz-appearance: none;
  padding: 0 2px;
  list-style-image: url("chrome://global/skin/tree/arrow-disclosure.svg#arrow-disclosure-collapsed");
}

.sidebar-placesTreechildren::-moz-tree-twisty(closed, selected) {
  list-style-image: url("chrome://global/skin/tree/arrow-disclosure.svg#arrow-disclosure-collapsed-inverted");
}

.sidebar-placesTreechildren::-moz-tree-twisty(open) {
  list-style-image: url("chrome://global/skin/tree/arrow-disclosure.svg#arrow-disclosure-expanded");
}

.sidebar-placesTreechildren::-moz-tree-twisty(open, selected) {
  list-style-image: url("chrome://global/skin/tree/arrow-disclosure.svg#arrow-disclosure-expanded-inverted");
}

.sidebar-placesTreechildren:-moz-locale-dir(rtl)::-moz-tree-twisty(closed) {
  list-style-image: url("chrome://global/skin/tree/arrow-disclosure.svg#arrow-disclosure-collapsed-rtl");
}

.sidebar-placesTreechildren:-moz-locale-dir(rtl)::-moz-tree-twisty(closed, selected) {
  list-style-image: url("chrome://global/skin/tree/arrow-disclosure.svg#arrow-disclosure-collapsed-inverted-rtl");
}

@media (-moz-mac-yosemite-theme) {
  .sidebar-placesTreechildren::-moz-tree-cell-text(selected) {
    color: -moz-dialogtext;
    font-weight: 500;
  }

  .sidebar-placesTreechildren::-moz-tree-cell-text(selected, focus) {
    color: #fff;
  }

  .sidebar-placesTreechildren::-moz-tree-twisty(closed, selected) {
    list-style-image: url("chrome://global/skin/tree/arrow-disclosure.svg#arrow-disclosure-collapsed");
  }

  .sidebar-placesTreechildren::-moz-tree-twisty(closed, selected, focus) {
    list-style-image: url("chrome://global/skin/tree/arrow-disclosure.svg#arrow-disclosure-collapsed-inverted");
  }

  .sidebar-placesTreechildren::-moz-tree-twisty(open, selected) {
    list-style-image: url("chrome://global/skin/tree/arrow-disclosure.svg#arrow-disclosure-expanded");
  }

  .sidebar-placesTreechildren::-moz-tree-twisty(open, selected, focus) {
    list-style-image: url("chrome://global/skin/tree/arrow-disclosure.svg#arrow-disclosure-expanded-inverted");
  }

  .sidebar-placesTreechildren:-moz-locale-dir(rtl)::-moz-tree-twisty(closed, selected) {
    list-style-image: url("chrome://global/skin/tree/arrow-disclosure.svg#arrow-disclosure-collapsed-rtl");
  }

  .sidebar-placesTreechildren:-moz-locale-dir(rtl)::-moz-tree-twisty(closed, selected, focus) {
    list-style-image: url("chrome://global/skin/tree/arrow-disclosure.svg#arrow-disclosure-collapsed-inverted-rtl")
  }
}

#viewButton {
  -moz-appearance: none;
  padding-bottom: 1px;
  padding-inline-start: 5px;
  padding-inline-end: 0px;
  margin: 0;
  margin-inline-end: 4px;
  min-width: 0px;
  min-height: 0px;
  border: 1px solid #a2a9b1;
  border-radius: 10px;
  background-image: linear-gradient(hsla(0,0%,100%,.75),hsla(0,0%,100%,.1));
  box-shadow: inset 0 0 1px hsla(0,0%,100%,.85),
                    0 1px hsla(0,0%,100%,.35);
}

#viewButton:hover:active,
#viewButton[open=true] {
  background-image: linear-gradient(hsla(0,0%,100%,.1),hsla(0,0%,100%,.75));
  box-shadow: @roundButtonPressedShadow@;
  color: -moz-dialogText;
}

#viewButton:-moz-window-inactive {
  border-color: #b6b6b6;
  background-image: linear-gradient(hsla(0,0%,100%,.3),hsla(0,0%,100%,0));
}

#viewButton .button-menu-dropmarker {
  display: -moz-box;
  list-style-image: url("chrome://global/skin/icons/menulist-dropmarker.png");
}

#viewButton:focus {
  box-shadow: 0 1px 0 hsla(0, 0%, 0%, .15),
              0 0 0 1px hsla(210, 100%, 60%, .45) inset,
              0 0 0 2px hsla(210, 100%, 60%, .45);
  border-color: hsla(210, 100%, 60%, 1);
}

#sidebar-search-container {
  margin: 0 4px 6px;
}

/* Trees */

treechildren::-moz-tree-image(title) {
  list-style-image: url("chrome://mozapps/skin/places/defaultFavicon.png");
  padding-inline-end: 2px;
  margin: 0px 2px;
  width: 16px;
  height: 16px;
}

treechildren::-moz-tree-image(title, livemarkItem) {
  list-style-image: url("chrome://browser/skin/places/livemark-item.png");
  -moz-image-region: rect(0px, 16px, 16px, 0px);
}

treechildren::-moz-tree-image(title, livemarkItem, visited) {
  -moz-image-region: rect(0px, 32px, 16px, 16px);
}

treechildren::-moz-tree-image(title, container),
treechildren::-moz-tree-image(title, open) {
  list-style-image: url("chrome://global/skin/tree/folder.png");
  -moz-image-region: rect(0, 16px, 16px, 0);
}

treechildren::-moz-tree-image(title, separator) {
  list-style-image: none;
  width: 0 !important;
  height: 0 !important;
  margin: 0;
}

treechildren::-moz-tree-image(container, OrganizerQuery_AllBookmarks) {
  list-style-image: url("chrome://browser/skin/places/allBookmarks.png");
}

treechildren::-moz-tree-image(container, livemark) {
  list-style-image: url("chrome://browser/skin/page-livemarks.png");
}

treechildren::-moz-tree-image(container, OrganizerQuery_BookmarksToolbar) {
  list-style-image: url("chrome://browser/skin/places/bookmarksToolbar.png");
}

treechildren::-moz-tree-image(container, OrganizerQuery_BookmarksMenu) {
  list-style-image: url("chrome://browser/skin/places/bookmarksMenu.png");
}

treechildren::-moz-tree-image(container, OrganizerQuery_UnfiledBookmarks) {
  list-style-image: url("chrome://browser/skin/places/unfiledBookmarks.png");
}

/* query-nodes should be styled even if they're not expandable */
treechildren::-moz-tree-image(query) {
  list-style-image: url("chrome://browser/skin/places/query.png");
}

treechildren::-moz-tree-image(query, OrganizerQuery_Downloads) {
  list-style-image: url("chrome://browser/skin/places/downloads.png");
}

treechildren::-moz-tree-image(title, query, tagContainer),
treechildren::-moz-tree-image(query, OrganizerQuery_Tags) {
  list-style-image: url("chrome://browser/skin/places/tag.png");
}

/* calendar icon for folders grouping items by date */
treechildren::-moz-tree-image(title, query, dayContainer) {
  list-style-image: url("chrome://browser/skin/places/history.png");
}

treechildren::-moz-tree-image(title, query, hostContainer) {
  list-style-image: url("chrome://global/skin/tree/folder.png");
}

treechildren::-moz-tree-image(title, query, hostContainer, open) {
  list-style-image: url("chrome://global/skin/tree/folder.png");
}

treechildren::-moz-tree-image(query, OrganizerQuery_History) {
  list-style-image: url("chrome://browser/skin/places/history.png");
}

/* We want some queries to look like ordinary folders. This must come
   after the (title, query) selector, or it would get overridden. */
treechildren::-moz-tree-image(title, query, folder),
treechildren::-moz-tree-image(title, query, folder, open) {
  list-style-image: url("chrome://global/skin/tree/folder.png");
  -moz-image-region: rect(0, 16px, 16px, 0);
}

treechildren::-moz-tree-cell-text(title, separator) {
  color: ThreeDShadow;
  margin: 0px 5px;
}

treechildren::-moz-tree-cell-text(title, separator, selected, focus) {
  color: HighlightText;
}

treechildren::-moz-tree-twisty(title, separator) {
  -moz-appearance: none;
  padding: 0px;
}

treechildren::-moz-tree-image(cutting) {
  opacity: 0.5;
}

treechildren::-moz-tree-cell-text(cutting) {
  opacity: 0.7;
}