/* Templated upon: 
 * http://www.mozilla.org/support/firefox/tips
 * http://userstyles.org/styles/1272 
 *
 * Notes:
 * Some things didn't work as expected, and the sollution wasn't immediately
 * obvious.  Those things are:
 *
 * The tab bar scroll box controls:
 * toolbarbutton.scrollbutton-down
 * toolbarbutton.scrollbutton-up
 *  ^- When given a background color value, the right one, "-down", loses its 
 *     borders, and I couldn't manually replace them.
 *
 * thumb[orient="vertical"] > gripper 
 * thumb[orient="horizontal"] > gripper 
 * scrollbar[orient="vertical"] > scrollbarbutton[type="increment"]:hover:active 
 * scrollbarbutton[type="decrement"]:hover:active 
 *  ^- The scrollbars have either changed, or the method of coloring
 *     them is different, now.
 *
 */

@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
@namespace html url("http://www.w3.org/1999/xhtml");


/* Black shadow (top) backgrounds */
 menubar > menu:hover,
 menubar > menuitem:hover,
 #extensionsView richlistitem[selected="true"],
 #fbPanelBar1,
 #fbToolbox
  {
    background-image: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAFCAYAAACEhIafAAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAAeSURBVHjaYmJgYLjBDCSMQYQgiPjO8P//fwaAAAMAJTYFHO3UrGIAAAAASUVORK5CYII=) !important;
    background-repeat: repeat-x !important;
  }


/* Grey gradient backgrounds */
 /* convex */
 menu,
 menubar:not(.cm-stack),
 #toolbar-menubar,
 .noscript-bottom-notify > notification > hbox
  {
    background: #282827 url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAyCAMAAACqJUG4AAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAACEUExURSgoKE5OTjIyMi0sLTU1NUJCQjg4ODo6OkVERCgnKEpKSiwsK1RUVFZVVlJSUkhISFxcWy8vMDMzNGxsbT09PXd3dykpKWNiY0FBQC4uLkdGRioqKWBfXzs8PHJxcVBQT1hXV3t7eisrK4GAgGdoZz8/P15eXn9/fkxLTDY3N1laWjAxMC2wp4EAAABNSURBVHjaNMXJFoEAAADAQaEshRZKhBT5//9z8MxlPAxuchcHndJZLzVqbaxtXU28xBKVpdDRU6axMPcW2Jv62DmZWbmrFf6iX18BBgDjCAOzaVqBHwAAAABJRU5ErkJggg==) !important;
    background-repeat: repeat-x !important;
    color: #fff !important;
  }
 /* concave */
 menuitem,
 searchbar textbox,
 #aiostbx-belowtabs-toolbox > toolbar,
 #urlbar
  {
    background: #848483 url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAyCAMAAACqJUG4AAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAACKUExURYSEg4SDg4SEhISDhDc3NysqK4KBgUNDQ0tKS3l5eXNyckZGRm1tbVNTU2FgYFBQUF5eXigoJy8vL39+fllZWCwrLHV0dGdlZXt6ej4+PjMyMikpKX18fXd2d3FwcGhoaDk6OTs8O1ZVVUFBQIKCg2NjY2tqai0tLYB/f1xbWzExMUhISE1OTTU1NXjW3kgAAABQSURBVHjaDMbZEkIAAADAlU4l6dJFonTg/38vDzuzUlcTB29bPxe9sdLDWW1mqTXXScQqe18bay+Zu8ZKIXKUWzi52fmYegqMhAPDQv4CDADrAwQSEppr/AAAAABJRU5ErkJggg==) !important;
    background-repeat: repeat-x !important;
  }

/* Grey 45degree angle backgrounds */
 tabs.tabbrowser-tabs,
 tabs.tabbrowser-tabs .tabbrowser-arrowscrollbox > scrollbox > box
  {
    background-image:
      url(data:image/gif;base64,R0lGODlhDwAPAIAAAA8PDxcXFyH5BAAAAAAALAAAAAAPAA8AAAIdRGJ4mesKDXtzxkezsvz69mXdNVpaVzopdIqtUgAAOw==)
      !important;
  }

/* Grey backgrounds */
 tooltip > label,
 #fbContentSplitter
  {
    background-color: #666 !important;
  }
 #extensionsView richlistitem[selected="true"],
 #fbPanelBar1,
 #fbToolbox,
 .noscript-bottom-notify > notification > hbox
  {
    background-color: #333 !important;
  }


/* Add/Modify border widths */
 .noscript-bottom-notify > notification > hbox
  {
    border-width: 1px !important;
  }


/* Black borders */
 menupopup,
 menuseparator,
 popup,
 tab.tabbrowser-tab,
 toolbarseparator,
 toolbar,
 #fbContentSplitter,
 #go-button,
 #navigator-toolbox,
 #urlbar,
 .autocomplete-history-dropmarker,
 .noscript-bottom-notify > notification > hbox,
 .searchbar-engine-button-stack > vbox,
 .searchbar-textbox
  {
    border-color: #000 !important;
    -moz-border-bottom-colors: #000 !important;
    -moz-border-left-colors: #000 !important;
    -moz-border-right-colors: #000 !important;
    -moz-border-top-colors: #000 !important;
  }


/* Black border (bottom) */
 sidebarheader,
 #bmHi-toolbar,
 #navigator-toolbox toolbar
  {
    border: none !important;
    border-bottom: 1px solid #000 !important;
  }


/* Black border (top) */
 #navigator-toolbox
  {
    border: none !important;
    border-top: 1px solid #000 !important;
  }


/* Context and Toolbar Menus */
 #toolbar-menubar
  {
    min-height: 32px !important;
  }
 menubar > menu,
 menubar > menuitem
  {
    background: transparent !important;
    -moz-border-bottom-colors: transparent !important;
    -moz-border-left-colors: transparent !important;
    -moz-border-right-colors: transparent !important;
    -moz-border-top-colors: transparent !important;
  }
 menubar > menu:hover,
 menubar > menuitem:hover
  {
    -moz-border-bottom-colors: #000 !important;
    -moz-border-left-colors: #000 !important;
    -moz-border-right-colors: #000 !important;
    -moz-border-top-colors: #000 !important;
  }
 menu:hover
  {
    color: #000 !important;
  }
 menuitem
  {
    color: #aaa !important;
    /* -moz-opacity: .5 !important; */
  }
 menuitem:hover
  {
    color: #fff !important;
    /* -moz-opacity: 1 !important; */
  }
 menu[disabled="true"],
 menuitem[disabled="true"]
  {
    display: none !important;
  }
 menuseparator
  {
    border-bottom-width: 1px !important;
    border-left-width: 0 !important;
    border-right-width: 0 !important;
    border-top-width: 1px !important;
    height: 3px !important;
    margin: 0 !important;
  }
 menupopup,
 popup
  {
    background-color: #333 !important;
    padding: 0 !important;
  }
 menupopup:hover,
 popup:hover
  {
    background-color: #4a4a4a !important;
  }

/* Brown buttons */
 .autocomplete-history-dropmarker,
 .searchbar-engine-button-stack > vbox
  {
    background: #333 url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAyCAMAAACqJUG4AAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAB1UExURSkiHCwlHjQrIyojHEE2LDYtJDAoIGBPQFlKPFZHOjsxKFVGOWpYR3NfTYBqVnlkUTowJzwxKH1nVFRFOEY6Ly8nIE9BNT4zKjcuJVxMPkM3LVBCNmFQQW5bSkk8MVtLPTEpIWRTQ0w/M0g7MCghG4NsWE1ANBGgXocAAABMSURBVHjaNMXZFoFQAEDRHQkpZWgwVAj//4ndpeXsh+Nj76iQ62Se7tYuBhtbOyc3ta+X3ujsKg4aB6lSa2URPCQq0c8y+PeeNwkwALgmAvHai/vBAAAAAElFTkSuQmCC) !important;
    background-repeat: repeat-x !important;
  }


/* Green buttons */
 #go-button,
 .search-go-button
  {
    background: #333 url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAyCAMAAACqJUG4AAAABGdBTUEAAK/INwWK6QAAABl0RVh0U29mdHdhcmUAQWRvYmUgSW1hZ2VSZWFkeXHJZTwAAAB1UExURSgwLys0MykxMDA6OTlFREBNTEFPTktbWi43Nmd9e1BhYDM+PURSUTtHRlFiYVdpaExcWzZBQFtubS44N2J3djVAP2l/fTdCQS02NUJQT01dXDI8O0lYV11xcCcvLkVTUlNkY2V6eUhXVj9MS0pZWDhEQz1KSaBBRdwAAABMSURBVHjaNMXZFoFQAEDRHQkpZWgwVAj//4ndpeXsh6O29XTWOSo87KWuSmtvdy+DzEViZfSVi4OPxkFl52YZnGy0op9F8K+fNwkwALiKAvGLdmzYAAAAAElFTkSuQmCC) !important;
    background-repeat: repeat-x !important;
  }


/* Black text */
 #fbPanelBox panelTab[selected="true"]
  {
    color: #000 !important;
  }


/* White text */
 tooltip > label,
 #fbPanelBox panelTab,
 #urlbar,
 tab.tabbrowser-tab .tab-text,
 .noscript-bottom-notify > notification > hbox
  {
    color: #ddd !important;
  }


/* Search dropdown button border */
 .searchbar-engine-button-stack > vbox > image
  {
    visibility: hidden !important;
  }


/* Tighten Statusbar spacing */
 #fbStatusBar, /* firebug */
 #gm-status    /* greasemonkey */
  { 
    padding: 0 !important;
  }
 #gm-status > #gm-status-image 
  {
    margin: 0 2px !important;
    cursor: auto !important;
  }
 #fbStatusBar > * 
  {
    margin: 0 1px !important;
  }


/* Toolbars */
 toolbar
  {
    background-color: #494949 !important;
  }
 toolbarseparator
  {
    border-left-width: 0 !important;
    border-right-width: 1px !important;
  }


/* Scrollbars */
 scrollbar
  {
    background-color: #333 !important;
  }
 scrollbar gripper,
 scrollbar scrollbarbutton,
 scrollbar slider,
 scrollbar thumb
  {
    background-color: #666 !important;
  }


/* Tooltips */
 tooltip
  {
    padding: 0 !important;
  }
 tooltip > label
  {
    padding: .2em !important;
  }


/* Paintless - multiple row tab browser ( Firefox 2 )
 */

 /* These are the values to change the box height.
  */
 tabs.tabbrowser-tabs
  {
    height: 58px !important;
    max-height: 58px !important;
    min-height: 58px !important;
  }
 tabs.tabbrowser-tabs .tabbrowser-arrowscrollbox,
 tabs.tabbrowser-tabs .tabbrowser-arrowscrollbox > scrollbox,
 tabs.tabbrowser-tabs .tabbrowser-arrowscrollbox > scrollbox > box
  {
    /* Less than height of the tabbrowser,
     * line it up with the bottom of yours.
     */
    height: 54px !important;
    max-height: 54px !important;
    min-height: 54px !important;
  }

 /* hide the scroll arrows and alltabs button */
 .tabs-alltabs-stack,
 tabs.tabbrowser-tabs .scrollbutton-up,
 tabs.tabbrowser-tabs .scrollbutton-down-stack
  {
    display: none !important;
  }

 /* box default */
 tabs.tabbrowser-tabs,
 tabs.tabbrowser-tabs .tabbrowser-arrowscrollbox,
 tabs.tabbrowser-tabs .tabbrowser-arrowscrollbox > scrollbox
  {
    display: -moz-box !important;
    padding: 0 !important;
  }
 tabs.tabbrowser-tabs .tabbrowser-arrowscrollbox > scrollbox > box
  {
    display: block !important;
    min-width: 0 !important;
    margin: 0 !important;
    overflow-y: auto !important;
    padding: 0 0 0 1px !important;
  }

 /* tab default */
 tab.tabbrowser-tab
  {
    display: -moz-box !important;
    height: 25px !important;
    margin-bottom: 0 !important;
    margin-left: 0 !important;
    margin-right: 1px !important;
    margin-top: 1px !important;
    padding: 0 !important;
    -moz-box-sizing: border-box !important;

    border: 2px solid !important;
 /* Already set earlier.
  *
  * -moz-border-top-colors: ThreeDLightShadow ThreeDHighlight !important;
  * -moz-border-right-colors: ThreeDDarkShadow ThreeDShadow !important;
  * -moz-border-bottom-colors: ThreeDDarkShadow ThreeDShadow !important;
  * -moz-border-left-colors: ThreeDLightShadow ThreeDHighlight !important;
  */
    -moz-border-radius: 0 !important;
  }
 tab.tabbrowser-tab .tab-close-button, 
 tab.tabbrowser-tab .tab-image-left, 
 tab.tabbrowser-tab .tab-image-middle, 
 tab.tabbrowser-tab .tab-image-right, 
 tab.tabbrowser-tab .tab-text 
  {
    background: none !important;
    margin: 0 !important;
    padding: 0 !important;
  }
 tab.tabbrowser-tab .tab-text 
  {
    min-width: 100px !important;
  }
 tab.tabbrowser-tab[selected="true"]
  {
    margin-bottom: 0 !important;
    margin-left: 0 !important;
    margin-right: 1px !important;
    margin-top: 1px !important;

    border: 2px solid !important;
    -moz-border-bottom-colors: ThreeDLightShadow ThreeDHighlight !important;
    -moz-border-left-colors: ThreeDDarkShadow ThreeDShadow !important;
    -moz-border-top-colors: ThreeDDarkShadow ThreeDShadow !important;
    -moz-border-right-colors: ThreeDLightShadow ThreeDHighlight !important;
    -moz-border-radius: 0 !important;
  }

/* Paintless - multiple row tab browser ( Firefox 2 )
 * END
 */


/* about: pages */
@-moz-document url-prefix(about:neterror) 
{
 html|html
  {
    background-color: #000 !important;
    background-image: url(resource://gre/res/whatrevolution/red-bg.png) !important;
    background-position: top left !important;
    background-repeat: repeat-x !important;
    margin: 0px !important;
  }
 html|body
  {
    background: transparent !important;
    margin: 0px !important;
  }
 html|div#errorPageContainer 
  {
    background-color: #222 !important;
    border: 2px solid #000 !important;
    color: #ddd !important;
    -moz-opacity: .75 !important;
  } 
}

@-moz-document url("about:blank") {
 html|html
  {
    background-color: #c0c0c0 !important;
    background-image: url() !important;
    background-position: top left !important;
    background-repeat: repeat-x !important;
    margin: 0px !important;
  }
 html|body
  {
    background: transparent !important;
    color: #000 !important;
    margin: 0px !important;
  }
 html|a:link
  {
    color: #999 !important;
  }
 html|a:link:hover
  {
    border-color: #fff !important;
    color: #fff !important;
  }
}

/* All In One Sidebar */
 #aios-toolbar,
 #aios-toggle-toolbar
  {
    border-bottom: 1px solid #000 !important;
    border-right-color: #000 !important;
    border-top: 0 !important;
  }


/* FireBug */
 #fbPanelBar1 > hbox
  {
    margin-top: 2px !important;
  }


/* NoScript */
 .noscript-bottom-notify > notification > hbox
  {
    border-left: 0 !important;
    border-right: 0 !important;
    padding-top: 3px !important;
  }


/* From:
 * http://lifehacker.com/software/ask-the-readers/best-firefox-userchromecss-tweaks-301520.php
 */

 /* Remove Back button when there's nothing to go Back to */
 #back-button[disabled="true"] { display: none; }

 /* Remove Forward button when there's nothing to go Forward to */
 #forward-button[disabled="true"] { display: none; } 

 /* Remove Go button from address bar */
 #go-button-stack, .search-go-button-stack { display: none !important; }

 /*Remove magnifying glass button from search box*/
 .search-go-button-stack { display: none !important; } 

 /*remove some space around bookmarks in the toolbar*/
 #personal-bookmarks toolbarseparator
  {
    margin: 0px 1px !important;
    padding: 0 !important;
  }
 #personal-bookmarks toolbarbutton
  {
    margin: 0px 1px !important;
    padding: 1px !important;
  }