+ #customization-titlebar-visibility-button[checked] {
+ -moz-image-region: rect(0, 96px, 48px, 48px);
+ }
+
+ #customization-titlebar-visibility-button[checked]:hover {
+ -moz-image-region: rect(48px, 96px, 96px, 48px);
+ }
+}
+
+#main-window[customize-entered] #customization-panel-container {
+ background-image: url("chrome://browser/skin/customizableui/customizeMode-gridTexture.png");
+ background-position: left top;
+ background-repeat: repeat;
+ background-size: auto;
+ background-attachment: fixed;
+}
+
+toolbarpaletteitem[place="toolbar"] {
+ transition: border-width 250ms ease-in-out;
+}
+
+toolbarpaletteitem[mousedown] {
+ outline: 1px solid #008484;
+ cursor: -moz-grabbing;
+ opacity: 0.8;
+}
+
+.panel-customization-placeholder,
+toolbarpaletteitem[place="palette"],
+toolbarpaletteitem[place="panel"] {
+ transition: transform .3s ease-in-out;
+}
+
+#customization-palette {
+ transition: opacity .3s ease-in-out;
+ opacity: 0;
+}
+
+#customization-palette[showing="true"] {
+ opacity: 1;
+}
+
+toolbarpaletteitem[notransition].panel-customization-placeholder,
+toolbarpaletteitem[notransition][place="toolbar"],
+toolbarpaletteitem[notransition][place="palette"],
+toolbarpaletteitem[notransition][place="panel"] {
+ transition: none;
+}
+
+toolbarpaletteitem > toolbarbutton > .toolbarbutton-icon,
+toolbarpaletteitem > toolbarbutton > .toolbarbutton-badge-stack > .toolbarbutton-icon,
+toolbarpaletteitem > toolbaritem.panel-wide-item,
+toolbarpaletteitem > toolbarbutton[type="menu-button"] {
+ transition: transform .3s cubic-bezier(.6, 2, .75, 1.5) !important;
+}
+
+toolbarpaletteitem[mousedown] > toolbarbutton > .toolbarbutton-icon,
+toolbarpaletteitem[mousedown] > toolbarbutton > .toolbarbutton-badge-stack > .toolbarbutton-icon {
+ transform: scale(1.3);
+}
+
+toolbarpaletteitem[mousedown] > toolbaritem.panel-wide-item,
+toolbarpaletteitem[mousedown] > toolbarbutton[type="menu-button"] {
+ transform: scale(1.1);
+}
+
+/* Override the toolkit styling for items being dragged over. */
+toolbarpaletteitem[place="toolbar"] {
+ border-left-width: 0;
+ border-right-width: 0;
+ margin-right: 0;
+ margin-left: 0;
+}
+
+#customization-palette:not([hidden]) {
+ margin-bottom: 25px;
+}
+
+#wrapper-edit-controls[place="palette"] > #edit-controls > toolbarbutton,
+#wrapper-edit-controls[place="palette"] > #edit-controls > separator,
+#wrapper-zoom-controls[place="palette"] > #zoom-controls > toolbarbutton,
+#wrapper-zoom-controls[place="palette"] > #zoom-controls > separator {
+ margin-top: 20px;
+}
+
+#wrapper-edit-controls[place="palette"] > #edit-controls > toolbarbutton,
+#wrapper-zoom-controls[place="palette"] > #zoom-controls > toolbarbutton {
+ margin-left: 0;
+ margin-right: 0;
+ max-width: 24px;
+ min-width: 24px;
+ max-height: 24px;
+ min-height: 24px;
+ padding: 4px;
+}
+
+#wrapper-edit-controls[place="palette"] > #edit-controls > toolbarbutton > .toolbarbutton-icon,
+#wrapper-zoom-controls[place="palette"] > #zoom-controls > toolbarbutton > .toolbarbutton-icon {
+ width: 16px;
+}
+
+#wrapper-edit-controls > #edit-controls > toolbarbutton > .toolbarbutton-icon {
+ opacity: 1; /* To ensure these buttons always look enabled in customize mode */
+}
+
+#wrapper-zoom-controls[place="palette"] > #zoom-controls > #zoom-reset-button,
+#wrapper-zoom-controls[place="palette"] > #zoom-controls > #zoom-reset-button + separator {
+ display: none;
+}
+
+#wrapper-personal-bookmarks:not([place="toolbar"]) > #personal-bookmarks {
+ -moz-box-pack: center;
+ min-height: 48px;
+}
+
+#personal-bookmarks[cui-areatype="toolbar"]:not([overflowedItem=true]) > #bookmarks-toolbar-placeholder > .toolbarbutton-icon {
+ -moz-margin-end: 5px;
+}
+
+#customization-palette > toolbarpaletteitem > label {
+ text-align: center;
+ margin-left: 0;
+ margin-right: 0;
+}
+
+#customization-lwtheme-menu > .panel-arrowcontainer > .panel-arrowcontent {
+ -moz-box-orient: vertical;
+ /* Make the panel padding uniform across all platforms due to the
+ styling of the section headers and footer. */
+ padding: 10px;
+}
+
+.customization-lwtheme-menu-theme > .toolbarbutton-icon {
+ width: 32px;
+ height: 32px;
+}
+
+.customization-lwtheme-menu-theme {
+ -moz-appearance: none;
+ margin: 0 -5px 5px;
+ padding-top: 0;
+ -moz-padding-end: 5px;
+ padding-bottom: 0;
+ -moz-padding-start: 0;
+}
+
+.customization-lwtheme-menu-theme[defaulttheme] {
+ list-style-image: url(chrome://browser/skin/Fxtheme-switcher-icon.png);
+}
+
+.customization-lwtheme-menu-theme[active="true"] {
+ background-color: #008484;
+}
+
+.customization-lwtheme-menu-theme > .toolbarbutton-icon {
+ margin: 5px;
+}
+
+.customization-lwtheme-menu-theme > .toolbarbutton-text {
+ text-align: start;
+}
+
+#customization-lwtheme-menu-header,
+#customization-lwtheme-menu-recommended {
+ padding: 10px;
+ margin-bottom: 5px;
+}
+
+#customization-lwtheme-menu-header,
+#customization-lwtheme-menu-recommended,
+#customization-lwtheme-menu-footer {
+ background-color: #A09090;
+ color: #000000;
+ margin-right: -10px;
+ margin-left: -10px;
+}
+
+#customization-lwtheme-menu-header {
+ margin-top: -10px;
+ border-top-right-radius: 3px;
+ border-top-left-radius: 3px;
+}
+
+#customization-lwtheme-menu-recommended {
+}
+
+#customization-lwtheme-menu-footer {
+ margin-bottom: -10px;
+ border-bottom-right-radius: 3px;
+ border-bottom-left-radius: 3px;
+}
+
+.customization-lwtheme-menu-footeritem {
+ -moz-appearance: none;
+ -moz-box-flex: 1;
+ background-color: #C09070;
+ color: #000000;
+ border: 1px solid transparent;
+ padding: 10px;
+ margin-left: 0;
+ margin-right: 0;
+}
+
+.customization-lwtheme-menu-footeritem:hover {
+ background-color: #FFCF00;
+}
+
+.customization-lwtheme-menu-footeritem:first-child {
+}
+
+/* === END customizeMode.inc.css === */
+
+/* === BEGIN customizeTip.inc.css === */
+
+#customization-tipPanel > .panel-arrowcontainer > .panel-arrowcontent {
+ padding: 0;
+ margin: 0;
+ min-width: 400px;
+ max-width: 1000px;
+ min-height: 200px;
+ border-radius: 3px;
+/* background-image: linear-gradient(90deg, #a0dfff 0%, #ceeeff 100%);*/
+ border: 1px solid #9C9CFF;
+ color: #FF9F00;
+}
+
+#customization-tipPanel > .panel-arrowcontainer > .panel-arrowcontent:-moz-locale-dir(rtl) {
+/* background-image: linear-gradient(90deg, #ceeeff 0%, #a0dfff 100%);*/
+}
+
+.customization-tipPanel-infoBox {
+ margin: 20px 25px 25px;
+ width: 25px;
+ background-image: url("chrome://browser/skin/customizableui/info-icon-customizeTip.png");
+ background-repeat: no-repeat;
+}
+
+.customization-tipPanel-content {
+ margin: 25px 0;
+ font-size: 12px;
+ line-height: 18px;
+}
+
+.customization-tipPanel-em {
+ margin: 0;
+ font-weight: bold;
+}
+
+.customization-tipPanel-contentImage {
+ margin-top: 25px;
+ list-style-image: url("chrome://browser/skin/customizableui/customize-illustration.png");
+ min-width: 300px;
+ max-width: 300px;
+ min-height: 190px;
+ max-height: 190px;
+ display: -moz-box;
+}
+
+.customization-tipPanel-contentImage:-moz-locale-dir(rtl) {
+ list-style-image: url("chrome://browser/skin/customizableui/customize-illustration-rtl.png");
+}
+
+.customization-tipPanel-link {
+ -moz-appearance: none;
+ background: transparent;
+ border: none;
+ box-shadow: none;
+ color: #3333FF;
+ margin: 0;
+ cursor: pointer;
+}
+
+.customization-tipPanel-link > .button-box > .button-text {
+ margin: 0 !important;
+}
+
+.customization-tipPanel-closeBox > .close-icon {
+ -moz-appearance: none;
+ border: 0;
+ -moz-margin-end: -25px;
+}
+
+#customization-tipPanel > .panel-arrowcontainer > .panel-arrowbox > .panel-arrow[side="left"],
+#customization-tipPanel > .panel-arrowcontainer > .panel-arrowbox > .panel-arrow[side="right"] {
+ list-style-image: url("chrome://browser/skin/customizableui/panelarrow-customizeTip.png");
+}
+
+/* === END customizeTip.inc.css === */
+
+/**
+ * This next rule is a hack to disable subpixel anti-aliasing on all
+ * labels during the customize mode transition. Subpixel anti-aliasing
+ * on Windows with Direct2D layers acceleration is particularly slow to
+ * paint, so this hack is how we sidestep that performance bottleneck.
+ */
+#main-window:-moz-any([customize-entering],[customize-exiting]) label {
+ transform: perspective(0.01px);
+}
+
+#main-window[customize-entered] > #tab-view-deck {
+ background-image: url("chrome://browser/skin/customizableui/customizeMode-gridTexture.png");
+ background-attachment: fixed;
+}
+
+#main-window[customization-lwtheme] > #tab-view-deck:-moz-lwtheme {
+ background-repeat: no-repeat;
+ background-position: right top;
+ background-attachment: fixed;
+ /* The image will get set from CustomizeMode.jsm */
+ background-image: none;
+ background-color: transparent;
+}
+
+#main-window[customization-lwtheme]:-moz-lwtheme {
+ background-image: url("chrome://browser/skin/customizableui/customizeMode-gridTexture.png");
+ background-repeat: repeat;
+ background-attachment: fixed;
+ background-position: left top;
+}
+
+#main-window[customize-entered] #browser-bottombox,
+#main-window[customize-entered] #customization-container {
+ border-left: 1px solid #9C9CFF;
+ border-right: 1px solid #9C9CFF;
+ background-clip: padding-box;
+}
+
+#main-window[customize-entered] #browser-bottombox {
+ border-bottom: 1px solid #9C9CFF;
+}
+
+#customization-tipPanel > .panel-arrowcontainer > .panel-arrowbox > .panel-arrow[side="left"] {
+ margin-right: -2px;
+}
+
+#customization-tipPanel > .panel-arrowcontainer > .panel-arrowbox > .panel-arrow[side="right"] {
+ margin-left: -2px;
+}
+
+/* End customization mode */
+
+/* Private browsing indicators */
+
+/**
+ * Currently, we have two places where we put private browsing indicators on
+ * Windows. When tabsintitlebar is enabled, we draw the indicator in the titlebar.
+ * When tabsintitlebar is disabled, we draw the indicator at the end of the
+ * tabstrip. The titlebar indicator is the fiddliest of the bunch, since we
+ * want the bottom border of the image to line up with the bottom of the window
+ * caption buttons. That's why there's so much special-casing going on in here.
+ */
+.private-browsing-indicator {
+ display: none;
+ pointer-events: none;
+}
+
+#private-browsing-indicator-titlebar {
+ display: block;
+ position: absolute;
+}
+
+#main-window[privatebrowsingmode=temporary][tabsintitlebar] #private-browsing-indicator-titlebar > .private-browsing-indicator {
+ display: block;
+}
+
+#main-window[privatebrowsingmode=temporary]:-moz-any([inFullscreen],:not([tabsintitlebar])) #TabsToolbar > .private-browsing-indicator {
+ display: -moz-box;
+}
+
+#TabsToolbar > .private-browsing-indicator {
+ background: url("chrome://browser/skin/privatebrowsing-mask-tabstrip.png") no-repeat center -3px;
+ -moz-margin-start: 4px;
+ width: 48px;
+}
+
+/* Bug 1008183: We're intentionally using the titlebar asset here for fullscreen
+ * mode, since the tabstrip "mimics" the titlebar in that case with its own
+ * min/max/close window buttons.
+ */
+#private-browsing-indicator-titlebar > .private-browsing-indicator,
+#main-window[inFullscreen] #TabsToolbar > .private-browsing-indicator {
+ background: url("chrome://browser/skin/privatebrowsing-mask-titlebar.png") no-repeat center 0px;
+ -moz-margin-end: 4px;
+ width: 40px;
+ height: 20px;
+ position: relative;
+}
+
+/* This one is for Linux */
+#main-window[privatebrowsingmode=temporary] #private-browsing-indicator {
+ background: url("chrome://browser/skin/privatebrowsing-mask-tabstrip.png") center no-repeat;
+ width: 48px;
+}
+
+/* End private browsing indicators */
+
+/* === BEGIN UITour.inc.css === */
+
+/* UI Tour */
+
+#UITourHighlightContainer {
+ -moz-appearance: none;
+ border: none;
+ background-color: transparent;
+ /* This is a buffer to compensate for the movement in the "wobble" effect */
+ padding: 4px;
+}
+
+#UITourHighlight {
+ background-image: radial-gradient(50% 100%, rgba(0,132,132,0.4) 50%, rgba(0,132,132,0.6) 100%);
+ border-radius: 40px;
+ border: 1px solid #9C9CFF;
+ /* The box-shadow opacity needs to be < 0.5 so it doesn't appear at 100% opacity
+ on Linux without an X compositor where opacity is either 0 or 1. */
+ box-shadow: 0 0 3px 0 rgba(0,0,0,0.49);
+ min-height: 32px;