summaryrefslogtreecommitdiffstats
path: root/application/basilisk/themes/shared/customizableui
diff options
context:
space:
mode:
authorwolfbeast <mcwerewolf@gmail.com>2018-06-04 13:17:38 +0200
committerwolfbeast <mcwerewolf@gmail.com>2018-06-04 13:17:38 +0200
commita1be17c1cea81ebb1e8b131a662c698d78f3f7f2 (patch)
treea92f7de513be600cc07bac458183e9af40e00c06 /application/basilisk/themes/shared/customizableui
parentbf11fdd304898ac675e39b01b280d39550e419d0 (diff)
downloadUXP-a1be17c1cea81ebb1e8b131a662c698d78f3f7f2.tar
UXP-a1be17c1cea81ebb1e8b131a662c698d78f3f7f2.tar.gz
UXP-a1be17c1cea81ebb1e8b131a662c698d78f3f7f2.tar.lz
UXP-a1be17c1cea81ebb1e8b131a662c698d78f3f7f2.tar.xz
UXP-a1be17c1cea81ebb1e8b131a662c698d78f3f7f2.zip
Issue #303 Part 1: Move basilisk files from /browser to /application/basilisk
Diffstat (limited to 'application/basilisk/themes/shared/customizableui')
-rw-r--r--application/basilisk/themes/shared/customizableui/customize-illustration-rtl.pngbin0 -> 7592 bytes
-rw-r--r--application/basilisk/themes/shared/customizableui/customize-illustration-rtl@2x.pngbin0 -> 16521 bytes
-rw-r--r--application/basilisk/themes/shared/customizableui/customize-illustration.pngbin0 -> 7609 bytes
-rw-r--r--application/basilisk/themes/shared/customizableui/customize-illustration@2x.pngbin0 -> 16465 bytes
-rw-r--r--application/basilisk/themes/shared/customizableui/customizeFavicon.icobin0 -> 1084 bytes
-rw-r--r--application/basilisk/themes/shared/customizableui/customizeMode.inc.css459
-rw-r--r--application/basilisk/themes/shared/customizableui/info-icon-customizeTip.pngbin0 -> 286 bytes
-rw-r--r--application/basilisk/themes/shared/customizableui/info-icon-customizeTip@2x.pngbin0 -> 501 bytes
-rw-r--r--application/basilisk/themes/shared/customizableui/menuPanel-customizeFinish.pngbin0 -> 337 bytes
-rw-r--r--application/basilisk/themes/shared/customizableui/menuPanel-customizeFinish@2x.pngbin0 -> 625 bytes
-rw-r--r--application/basilisk/themes/shared/customizableui/panelUI.inc.css1706
-rw-r--r--application/basilisk/themes/shared/customizableui/panelarrow-customizeTip.pngbin0 -> 243 bytes
-rw-r--r--application/basilisk/themes/shared/customizableui/panelarrow-customizeTip@2x.pngbin0 -> 260 bytes
-rw-r--r--application/basilisk/themes/shared/customizableui/subView-arrow-back-inverted-rtl.pngbin0 -> 190 bytes
-rw-r--r--application/basilisk/themes/shared/customizableui/subView-arrow-back-inverted-rtl@2x.pngbin0 -> 465 bytes
-rw-r--r--application/basilisk/themes/shared/customizableui/subView-arrow-back-inverted.pngbin0 -> 307 bytes
-rw-r--r--application/basilisk/themes/shared/customizableui/subView-arrow-back-inverted@2x.pngbin0 -> 667 bytes
17 files changed, 2165 insertions, 0 deletions
diff --git a/application/basilisk/themes/shared/customizableui/customize-illustration-rtl.png b/application/basilisk/themes/shared/customizableui/customize-illustration-rtl.png
new file mode 100644
index 000000000..12005095c
--- /dev/null
+++ b/application/basilisk/themes/shared/customizableui/customize-illustration-rtl.png
Binary files differ
diff --git a/application/basilisk/themes/shared/customizableui/customize-illustration-rtl@2x.png b/application/basilisk/themes/shared/customizableui/customize-illustration-rtl@2x.png
new file mode 100644
index 000000000..c1af12990
--- /dev/null
+++ b/application/basilisk/themes/shared/customizableui/customize-illustration-rtl@2x.png
Binary files differ
diff --git a/application/basilisk/themes/shared/customizableui/customize-illustration.png b/application/basilisk/themes/shared/customizableui/customize-illustration.png
new file mode 100644
index 000000000..9131951b0
--- /dev/null
+++ b/application/basilisk/themes/shared/customizableui/customize-illustration.png
Binary files differ
diff --git a/application/basilisk/themes/shared/customizableui/customize-illustration@2x.png b/application/basilisk/themes/shared/customizableui/customize-illustration@2x.png
new file mode 100644
index 000000000..50c0d1949
--- /dev/null
+++ b/application/basilisk/themes/shared/customizableui/customize-illustration@2x.png
Binary files differ
diff --git a/application/basilisk/themes/shared/customizableui/customizeFavicon.ico b/application/basilisk/themes/shared/customizableui/customizeFavicon.ico
new file mode 100644
index 000000000..c7bd84339
--- /dev/null
+++ b/application/basilisk/themes/shared/customizableui/customizeFavicon.ico
Binary files differ
diff --git a/application/basilisk/themes/shared/customizableui/customizeMode.inc.css b/application/basilisk/themes/shared/customizableui/customizeMode.inc.css
new file mode 100644
index 000000000..d99933388
--- /dev/null
+++ b/application/basilisk/themes/shared/customizableui/customizeMode.inc.css
@@ -0,0 +1,459 @@
+/* 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/. */
+
+/* Customization mode */
+
+:root {
+ --drag-drop-transition-duration: .3s;
+}
+
+#main-window:-moz-any([customize-entering],[customize-entered]) #browser-bottombox {
+ margin-bottom: 2em;
+}
+
+#main-window:-moz-any([customize-entering],[customize-entered]) #content-deck,
+#main-window:-moz-any([customize-entering],[customize-entered]) #browser-bottombox,
+#main-window:-moz-any([customize-entering],[customize-entered]) #navigator-toolbox {
+ margin-left: 2em;
+ margin-right: 2em;
+}
+
+#main-window:-moz-any([customize-entering],[customize-exiting]) #tab-view-deck {
+ pointer-events: none;
+}
+
+#main-window[customize-entered] .customization-target:not(:-moz-any(#PanelUI-contents, #TabsToolbar, #toolbar-menubar))::before,
+#PanelUI-contents > .panel-customization-placeholder {
+ -moz-outline-radius: 2.5px;
+ outline: 1px dashed transparent;
+}
+
+#main-window[customize-entered] .customization-target:not(:-moz-any(#PanelUI-contents, #TabsToolbar, #toolbar-menubar))::before {
+ /* Prevent jumping of tabs when switching a window between inactive and active (bug 853415). */
+ -moz-box-ordinal-group: 0;
+ content: "";
+ display: -moz-box;
+ height: 100%;
+ left: 0;
+ outline-offset: -2px;
+ pointer-events: none;
+ position: absolute;
+ top: 0;
+ width: 100%;
+}
+
+/* Shift the TabsToolbar outline up 2px since the #nav-bar is shifted up by 1px and the
+ #TabsToolbar::after is a pixel higher to draw the bottom border of the tabstrip so this makes the
+ offset from the bottom effectively the same as other targets (-2px). */
+#main-window[customize-entered] #TabsToolbar.customization-target::before {
+ top: -2px;
+}
+
+/* The parents of the outline pseudo-elements need to be positioned so that the outline is positioned relative to it. */
+#main-window[customize-entered] .customization-target:not(:-moz-any(#PanelUI-contents, #TabsToolbar, #toolbar-menubar)):hover,
+#main-window[customize-entered] .customization-target[customizing-dragovertarget]:not(:-moz-any(#PanelUI-contents, #TabsToolbar, #toolbar-menubar)),
+#main-window[customize-entered] #nav-bar-customization-target.customization-target {
+ position: relative;
+}
+
+/* Most target outlines are shown on hover and drag over but the panel menu uses
+ placeholders instead. */
+#main-window[customize-entered] .customization-target:not(:-moz-any(#PanelUI-contents, #TabsToolbar, #toolbar-menubar)):hover::before,
+#main-window[customize-entered] .customization-target[customizing-dragovertarget]:not(:-moz-any(#PanelUI-contents, #TabsToolbar, #toolbar-menubar))::before,
+/* nav-bar and panel outlines are always shown */
+#nav-bar[showoutline=true] > #nav-bar-customization-target.customization-target::before {
+ outline-color: currentColor;
+}
+
+#nav-bar[showoutline=true] > #nav-bar-customization-target.customization-target::before {
+ transition: outline-color 250ms linear;
+}
+
+#PanelUI-contents[showoutline=true] > .panel-customization-placeholder {
+ transition: outline-color 250ms linear;
+ outline-color: var(--panel-separator-color);
+}
+
+#PanelUI-contents > .panel-customization-placeholder {
+ cursor: auto;
+ outline-offset: -5px;
+}
+
+#main-window[customizing] .customization-target:not(#PanelUI-contents) {
+ min-width: 100px;
+ padding-left: 10px;
+ padding-right: 10px;
+}
+
+#customization-container {
+ background-color: -moz-field;
+ color: -moz-fieldText;
+ text-shadow: none;
+}
+
+#customization-palette,
+#customization-empty {
+ padding: 5px 25px 25px;
+}
+
+#customization-header {
+ font-size: 1.75em;
+ line-height: 1.75em;
+ color: GrayText;
+ font-weight: 200;
+ margin: 25px 25px 12px;
+ padding-bottom: 12px;
+ border-bottom: 1px solid ThreeDLightShadow;
+}
+
+#customization-panel-container {
+ padding: 15px 25px 25px;
+ background-image: linear-gradient(to bottom, #3e86ce, #3878ba);
+}
+
+#main-window:-moz-any([customize-entering],[customize-entered]) #browser-bottombox,
+#customization-footer {
+ background-color: -moz-dialog;
+}
+
+#customization-footer {
+ border-top: 1px solid ThreeDLightShadow;
+ padding: 10px;
+}
+
+%if defined(XP_MACOSX) || defined(XP_WIN)
+%ifdef XP_WIN
+@media (-moz-windows-default-theme) {
+%endif
+
+.customizationmode-button {
+ border: 1px solid rgb(192,192,192);
+ border-radius: 3px;
+ margin: 5px;
+ padding: 2px 10px;
+ background-color: rgb(251,251,251);
+ color: rgb(71,71,71);
+ box-shadow: 0 1px rgba(255, 255, 255, 0.5),
+ inset 0 1px rgba(255, 255, 255, 0.5);
+ -moz-appearance: none;
+}
+
+.customizationmode-button > .box-inherit {
+ border-width: 0;
+ padding-inline-start: 0;
+ padding-inline-end: 0;
+}
+
+.customizationmode-button > .button-icon {
+ margin-inline-start: 0;
+}
+
+.customizationmode-button:not([type=menu]) > .button-text {
+ margin-inline-end: 0;
+}
+
+.customizationmode-button > .button-menu-dropmarker {
+ margin-inline-end: 0;
+ padding-inline-end: 0;
+}
+
+.customizationmode-button:hover:active:not([disabled]),
+.customizationmode-button[open],
+.customizationmode-button[checked] {
+ background-color: rgb(218, 218, 218);
+ border-color: rgb(168, 168, 168);
+ text-shadow: 0 1px rgb(236, 236, 236);
+ box-shadow: 0 1px rgba(255, 255, 255, 0.5),
+ inset 0 1px rgb(196, 196, 196);
+}
+
+.customizationmode-button[disabled="true"] {
+ opacity: .5;
+}
+
+%ifdef XP_WIN
+} /* @media (-moz-windows-default-theme) */
+%endif
+%endif /* defined(XP_MACOSX) || defined(XP_WIN) */
+
+.customizationmode-button > .box-inherit > .box-inherit > .button-icon,
+.customizationmode-button > .button-box > .button-icon {
+ height: 24px;
+}
+
+%ifdef CAN_DRAW_IN_TITLEBAR
+#customization-titlebar-visibility-button > .button-box > .button-text,
+%endif
+#customization-lwtheme-button > .box-inherit > .box-inherit > .button-text {
+ /* Sadly, button.css thinks its margins are perfect for everyone. */
+ margin-inline-start: 6px !important;
+}
+
+#customization-lwtheme-button > .box-inherit > .box-inherit > .button-icon {
+ width: 20px;
+ height: 20px;
+ border-radius: 2px;
+ background-image: url("chrome://browser/skin/theme-switcher-icon.png");
+ background-size: contain;
+}
+
+%ifdef CAN_DRAW_IN_TITLEBAR
+#customization-titlebar-visibility-button {
+ list-style-image: url("chrome://browser/skin/customizableui/customize-titleBar-toggle.png");
+ -moz-image-region: rect(0, 24px, 24px, 0);
+}
+
+#customization-titlebar-visibility-button > .button-box > .button-icon {
+ vertical-align: middle;
+}
+
+#customization-titlebar-visibility-button[checked] {
+ -moz-image-region: rect(0, 48px, 24px, 24px);
+}
+
+@media (min-resolution: 1.1dppx) {
+ #customization-titlebar-visibility-button {
+ list-style-image: url("chrome://browser/skin/customizableui/customize-titleBar-toggle@2x.png");
+ -moz-image-region: rect(0, 48px, 48px, 0);
+ }
+
+ #customization-titlebar-visibility-button[checked] {
+ -moz-image-region: rect(0, 96px, 48px, 48px);
+ }
+}
+%endif /* CAN_DRAW_IN_TITLEBAR */
+
+#main-window[customize-entered] #customization-panel-container {
+ background-image: url("chrome://browser/skin/customizableui/customizeMode-separatorHorizontal.png"),
+ url("chrome://browser/skin/customizableui/customizeMode-separatorVertical.png"),
+ url("chrome://browser/skin/customizableui/customizeMode-gridTexture.png"),
+ url("chrome://browser/skin/customizableui/background-noise-toolbar.png"),
+ linear-gradient(to bottom, #3e86ce, #3878ba);
+ background-position: center top, left center, left top, left top, left top;
+ background-repeat: no-repeat, no-repeat, repeat, repeat, no-repeat;
+ background-size: auto 12px, 12px 100%, auto, auto, auto;
+ background-attachment: scroll, scroll, fixed, fixed, scroll;
+}
+
+toolbarpaletteitem[place="toolbar"] {
+ transition: border-width 250ms ease-in-out;
+}
+
+toolbarpaletteitem[mousedown] {
+ cursor: -moz-grabbing;
+}
+
+.panel-customization-placeholder,
+toolbarpaletteitem[place="palette"],
+toolbarpaletteitem[place="panel"] {
+ transition: transform var(--drag-drop-transition-duration) ease-in-out;
+}
+
+#customization-palette {
+ transition: opacity .3s ease-in-out;
+ opacity: 0;
+}
+
+#customization-palette[showing="true"] {
+ opacity: 1;
+}
+
+toolbarpaletteitem toolbarbutton[disabled] {
+ color: inherit !important;
+}
+
+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 var(--drag-drop-transition-duration) 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;
+}
+
+toolbarpaletteitem[place="palette"]:-moz-focusring,
+toolbarpaletteitem[place="panel"]:-moz-focusring,
+toolbarpaletteitem[place="toolbar"]:-moz-focusring {
+ outline-width: 0;
+}
+
+toolbarpaletteitem[place="palette"]:not([mousedown="true"]):-moz-focusring,
+toolbarpaletteitem[place="panel"]:not([mousedown="true"]):-moz-focusring,
+toolbarpaletteitem[place="toolbar"]:not([mousedown="true"]):-moz-focusring {
+ /* Delay adding the focusring back until after the transform transition completes. */
+ transition: outline-width .01s linear var(--drag-drop-transition-duration);
+ outline: 1px dotted;
+ -moz-outline-radius: 2.5px;
+}
+
+toolbarpaletteitem[place="toolbar"]:not([mousedown="true"]):-moz-focusring {
+ outline-offset: -5px;
+}
+
+#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 {
+ margin-inline-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;
+ border: 1px solid transparent;
+ margin: 0 -5px 5px;
+ padding-top: 0;
+ padding-inline-end: 5px;
+ padding-bottom: 0;
+ padding-inline-start: 0;
+}
+
+.customization-lwtheme-menu-theme[defaulttheme] {
+ list-style-image: url(chrome://browser/skin/theme-switcher-icon.png);
+}
+
+.customization-lwtheme-menu-theme[active="true"],
+.customization-lwtheme-menu-theme:hover {
+ background-color: var(--arrowpanel-dimmed);
+ border-color: var(--panel-separator-color);
+}
+
+.customization-lwtheme-menu-theme[active="true"],
+.customization-lwtheme-menu-theme:hover:active {
+ background-color: var(--arrowpanel-dimmed-further);
+}
+
+.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: var(--arrowpanel-dimmed);
+ margin-right: -10px;
+ margin-left: -10px;
+}
+
+#customization-lwtheme-menu-header {
+ margin-top: -10px;
+ border-bottom: 1px solid var(--arrowpanel-dimmed);
+}
+
+#customization-lwtheme-menu-recommended {
+ border-top: 1px solid var(--arrowpanel-dimmed);
+ border-bottom: 1px solid var(--arrowpanel-dimmed);
+}
+
+#customization-lwtheme-menu-footer {
+ background: linear-gradient(var(--arrowpanel-dimmed) 60%, transparent) border-box;
+ border-top: 1px solid var(--arrowpanel-dimmed);
+ margin-bottom: -10px;
+}
+
+.customization-lwtheme-menu-footeritem {
+ -moz-appearance: none;
+ -moz-box-flex: 1;
+ color: inherit;
+ border-style: none;
+ padding: 10px;
+ margin-left: 0;
+ margin-right: 0;
+}
+
+.customization-lwtheme-menu-footeritem:hover {
+ background: linear-gradient(var(--arrowpanel-dimmed) 40%, transparent) padding-box;
+}
+
+.customization-lwtheme-menu-footeritem:first-child {
+ border-inline-end: 1px solid var(--panel-separator-color);
+}
diff --git a/application/basilisk/themes/shared/customizableui/info-icon-customizeTip.png b/application/basilisk/themes/shared/customizableui/info-icon-customizeTip.png
new file mode 100644
index 000000000..0dfbbce5d
--- /dev/null
+++ b/application/basilisk/themes/shared/customizableui/info-icon-customizeTip.png
Binary files differ
diff --git a/application/basilisk/themes/shared/customizableui/info-icon-customizeTip@2x.png b/application/basilisk/themes/shared/customizableui/info-icon-customizeTip@2x.png
new file mode 100644
index 000000000..7a87fac20
--- /dev/null
+++ b/application/basilisk/themes/shared/customizableui/info-icon-customizeTip@2x.png
Binary files differ
diff --git a/application/basilisk/themes/shared/customizableui/menuPanel-customizeFinish.png b/application/basilisk/themes/shared/customizableui/menuPanel-customizeFinish.png
new file mode 100644
index 000000000..07be6a76a
--- /dev/null
+++ b/application/basilisk/themes/shared/customizableui/menuPanel-customizeFinish.png
Binary files differ
diff --git a/application/basilisk/themes/shared/customizableui/menuPanel-customizeFinish@2x.png b/application/basilisk/themes/shared/customizableui/menuPanel-customizeFinish@2x.png
new file mode 100644
index 000000000..7562e138c
--- /dev/null
+++ b/application/basilisk/themes/shared/customizableui/menuPanel-customizeFinish@2x.png
Binary files differ
diff --git a/application/basilisk/themes/shared/customizableui/panelUI.inc.css b/application/basilisk/themes/shared/customizableui/panelUI.inc.css
new file mode 100644
index 000000000..ba36da995
--- /dev/null
+++ b/application/basilisk/themes/shared/customizableui/panelUI.inc.css
@@ -0,0 +1,1706 @@
+/* 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/. */
+
+%filter substitution
+
+%define menuPanelWidth 22.35em
+%define standaloneSubviewWidth 30em
+% XXXgijs This is the ugliest bit of code I think I've ever written for Mozilla.
+% Basically, the 0.1px is there to avoid CSS rounding errors causing buttons to wrap.
+% For gory details, refer to https://bugzilla.mozilla.org/show_bug.cgi?id=963365#c11
+% There's no calc() here (and therefore lots of calc() where this is used) because
+% we don't support nested calc(): https://bugzilla.mozilla.org/show_bug.cgi?id=968761
+%define menuPanelButtonWidth (@menuPanelWidth@ / 3 - 0.1px)
+%define buttonStateHover :not(:-moz-any([disabled],[open],:active)):hover
+%define menuStateHover :not(:-moz-any([disabled],:active))[_moz-menuactive]
+%define buttonStateActive :not([disabled]):-moz-any([open],:hover:active)
+%define menuStateActive :not([disabled])[_moz-menuactive]:active
+%define menuStateMenuActive :not([disabled])[_moz-menuactive]
+
+%include ../browser.inc
+
+:root {
+ --panel-ui-exit-subview-gutter-width: 38px;
+}
+
+#PanelUI-popup #PanelUI-contents:empty {
+ height: 128px;
+}
+
+#PanelUI-button {
+ margin-inline-start: 2px;
+ border-inline-start: 1px solid;
+ border-image: linear-gradient(transparent, rgba(0,0,0,.1) 20%, rgba(0,0,0,.1) 80%, transparent);
+ border-image-slice: 1;
+}
+
+#nav-bar[brighttext] > #PanelUI-button {
+ border-image-source: linear-gradient(transparent, rgba(100%,100%,100%,.2) 20%, rgba(100%,100%,100%,.2) 80%, transparent);
+}
+
+#PanelUI-menu-button[badge-status] > .toolbarbutton-badge-stack > .toolbarbutton-badge {
+ display: -moz-box;
+ height: 10px;
+ width: 10px;
+ background-size: contain;
+ border: none;
+}
+
+#PanelUI-menu-button[badge-status="download-success"] > .toolbarbutton-badge-stack > .toolbarbutton-badge {
+ display: none;
+}
+
+#PanelUI-menu-button[badge-status="update-succeeded"] > .toolbarbutton-badge-stack > .toolbarbutton-badge {
+ background: #74BF43 url(chrome://browser/skin/update-badge.svg) no-repeat center;
+ height: 13px;
+}
+
+#PanelUI-menu-button[badge-status="update-failed"] > .toolbarbutton-badge-stack > .toolbarbutton-badge {
+ background: #D90000 url(chrome://browser/skin/update-badge-failed.svg) no-repeat center;
+ height: 13px;
+}
+
+#PanelUI-menu-button[badge-status="download-warning"] > .toolbarbutton-badge-stack > .toolbarbutton-badge,
+#PanelUI-menu-button[badge-status="fxa-needs-authentication"] > .toolbarbutton-badge-stack > .toolbarbutton-badge {
+ box-shadow: none;
+ filter: drop-shadow(0 1px 0 hsla(206, 50%, 10%, .15));
+}
+
+#PanelUI-menu-button[badge-status="download-warning"] > .toolbarbutton-badge-stack > .toolbarbutton-badge,
+#PanelUI-menu-button[badge-status="download-severe"] > .toolbarbutton-badge-stack > .toolbarbutton-badge {
+ width: 7px;
+ height: 7px;
+ min-width: 0;
+ border-radius: 50%;
+ /* "!important" is necessary to override the rule in toolbarbutton.css */
+ margin-top: -1px !important;
+ margin-right: -2px !important;
+}
+
+#PanelUI-menu-button[badge-status="download-warning"] > .toolbarbutton-badge-stack > .toolbarbutton-badge {
+ background: #FFBF00;
+}
+
+#PanelUI-menu-button[badge-status="download-severe"] > .toolbarbutton-badge-stack > .toolbarbutton-badge {
+ background: #D90000;
+}
+
+#PanelUI-menu-button[badge-status="fxa-needs-authentication"] > .toolbarbutton-badge-stack > .toolbarbutton-badge {
+ height: 13px;
+ background: transparent url(chrome://browser/skin/warning.svg) no-repeat center;
+}
+
+#PanelUI-menu-button[badge-status="download-warning"] > .toolbarbutton-badge-stack > .toolbarbutton-badge:-moz-window-inactive,
+#PanelUI-menu-button[badge-status="fxa-needs-authentication"] > .toolbarbutton-badge-stack > .toolbarbutton-badge:-moz-window-inactive {
+ filter: none;
+}
+
+.panel-subviews {
+ padding: 4px;
+ background-clip: padding-box;
+ border-left: 1px solid var(--arrowpanel-border-color);
+ box-shadow: 0 3px 5px hsla(210,4%,10%,.1),
+ 0 0 7px hsla(210,4%,10%,.1);
+ margin-inline-start: var(--panel-ui-exit-subview-gutter-width);
+}
+
+.panel-viewstack[viewtype="main"] > .panel-subviews {
+ transform: translateX(@menuPanelWidth@);
+}
+
+.panel-viewstack[viewtype="main"] > .panel-subviews:-moz-locale-dir(rtl) {
+ transform: translateX(-@menuPanelWidth@);
+}
+
+panelmultiview[nosubviews=true] > .panel-viewcontainer > .panel-viewstack > .panel-subviews {
+ display: none;
+}
+
+.panel-viewstack:not([viewtype="main"]) > .panel-mainview > #PanelUI-mainView {
+ -moz-box-flex: 1;
+}
+
+.panel-subview-body {
+ overflow-y: auto;
+ overflow-x: hidden;
+ -moz-box-flex: 1;
+}
+
+#PanelUI-popup .panel-subview-body {
+ margin: -4px;
+ padding: 4px 4px;
+}
+
+.panel-subview-header,
+.subviewbutton.panel-subview-footer {
+ box-sizing: border-box;
+ min-height: 41px;
+ padding: 11px 12px;
+}
+
+.panel-subview-header {
+ margin: -4px -4px 4px;
+ border-bottom: 1px solid var(--panel-separator-color);
+ color: GrayText;
+ font-variant: small-caps;
+}
+
+.cui-widget-panelview .panel-subview-header {
+ display: none;
+}
+
+.cui-widget-panelview .subviewbutton.panel-subview-footer {
+ margin: 4px 0 0;
+ -moz-box-pack: center;
+}
+
+#PanelUI-mainView {
+ display: flex;
+ flex-direction: column;
+}
+
+#PanelUI-popup > arrowscrollbox > autorepeatbutton {
+ display: none;
+}
+#PanelUI-popup > arrowscrollbox > scrollbox {
+ overflow: visible;
+}
+
+#PanelUI-popup > .panel-arrowcontainer > .panel-arrowcontent {
+ overflow: hidden;
+}
+
+#PanelUI-popup > .panel-arrowcontainer > .panel-arrowcontent,
+.cui-widget-panel > .panel-arrowcontainer > .panel-arrowcontent > .popup-internal-box {
+ padding: 0;
+}
+
+.panelUI-grid .toolbarbutton-1 > .toolbarbutton-menubutton-button > .toolbarbutton-multiline-text,
+.panelUI-grid .toolbarbutton-1 > .toolbarbutton-multiline-text {
+ line-height: 1.2;
+ max-height: 2.4em;
+}
+
+.panelUI-grid .toolbarbutton-1:not([auto-hyphens="off"]) > .toolbarbutton-menubutton-button > .toolbarbutton-multiline-text,
+.panelUI-grid .toolbarbutton-1:not([auto-hyphens="off"]) > .toolbarbutton-multiline-text {
+ -moz-hyphens: auto;
+}
+
+.panelUI-grid:not([customize-transitioning]) .toolbarbutton-1 > .toolbarbutton-menubutton-button > .toolbarbutton-multiline-text,
+.panelUI-grid:not([customize-transitioning]) .toolbarbutton-1 > .toolbarbutton-multiline-text {
+ position: absolute;
+ clip: rect(-0.1em, auto, 2.6em, auto);
+}
+
+.panelUI-grid .toolbarbutton-1 > .toolbarbutton-text,
+.panelUI-grid .toolbarbutton-1 > .toolbarbutton-multiline-text {
+ text-align: center;
+ /* Need to override toolkit theming which sets margin: 0 !important; */
+ margin: 2px 0 0 !important;
+}
+
+.panelUI-grid .toolbarbutton-1 > .toolbarbutton-menubutton-button > .toolbarbutton-multiline-text {
+ text-align: center;
+ margin: -1px 0 0;
+}
+
+#wrapper-edit-controls:-moz-any([place="palette"],[place="panel"]) > #edit-controls,
+#wrapper-zoom-controls:-moz-any([place="palette"],[place="panel"]) > #zoom-controls {
+ margin-inline-start: 0;
+}
+
+#PanelUI-contents {
+ max-width: @menuPanelWidth@;
+}
+
+#BMB_bookmarksPopup,
+.panel-mainview:not([panelid="PanelUI-popup"]) {
+ max-width: @standaloneSubviewWidth@;
+}
+
+/* Give WebExtension stand-alone panels extra width for Chrome compatibility */
+.cui-widget-panel[viewId^=PanelUI-webext-] .panel-mainview {
+ max-width: 800px;
+}
+
+.cui-widget-panel[viewId^=PanelUI-webext-] > .panel-arrowcontainer > .panel-arrowcontent {
+ padding: 0;
+}
+
+panelview[id^=PanelUI-webext-] {
+ overflow: hidden;
+}
+
+panelview:not([mainview]) .toolbarbutton-text,
+.cui-widget-panel toolbarbutton > .toolbarbutton-text {
+ text-align: start;
+ display: -moz-box;
+}
+
+.cui-widget-panel > .panel-arrowcontainer > .panel-arrowcontent {
+ padding: 4px 0;
+}
+
+.cui-widget-panel.cui-widget-panelWithFooter > .panel-arrowcontainer > .panel-arrowcontent {
+ padding-bottom: 0;
+}
+
+#PanelUI-contents {
+ display: block;
+ flex: 1 0 auto;
+ margin-left: auto;
+ margin-right: auto;
+ padding: .5em 0;
+ max-width: @menuPanelWidth@;
+}
+
+#PanelUI-contents-scroller {
+ overflow-y: auto;
+ overflow-x: hidden;
+ width: @menuPanelWidth@;
+ padding-left: 5px;
+ padding-right: 5px;
+ flex: auto;
+}
+
+.toolbaritem-combined-buttons@inAnyPanel@ > toolbarbutton > .toolbarbutton-icon {
+ min-width: 0;
+ min-height: 0;
+ margin: 0;
+}
+
+toolbaritem[cui-areatype="menu-panel"][sdkstylewidget="true"]:not(.panel-wide-item),
+.panelUI-grid .toolbarbutton-1,
+.panel-customization-placeholder-child {
+ -moz-appearance: none;
+ -moz-box-orient: vertical;
+ width: calc(@menuPanelButtonWidth@);
+ height: calc(51px + 2.2em);
+}
+
+/* In order to have button labels constrained appropriately, items inside the toolbarpaletteitem
+ * should have a min-width set so they abide by the width set above (which they do outside of
+ * customize mode because they're in a flexed container) */
+toolbarpaletteitem[place="panel"]:not([haswideitem=true]) > .toolbarbutton-1 {
+ min-width: 0.01px;
+}
+
+/* Help SDK buttons fit in. */
+toolbarpaletteitem[place="palette"] > toolbarbutton[constrain-size="true"] > .toolbarbutton-icon,
+toolbarpaletteitem[place="palette"] > toolbarbutton[constrain-size="true"] > .toolbarbutton-badge-stack > .toolbarbutton-icon,
+toolbarbutton[constrain-size="true"][cui-areatype="menu-panel"] > .toolbarbutton-icon,
+toolbarbutton[constrain-size="true"][cui-areatype="menu-panel"] > .toolbarbutton-badge-stack > .toolbarbutton-icon {
+ height: 32px;
+ width: 32px;
+}
+
+toolbarpaletteitem:-moz-any([place="palette"], [place="panel"]) > toolbaritem[sdkstylewidget="true"] > .toolbarbutton-1 > .toolbarbutton-icon {
+ width: 32px;
+ height: 32px;
+}
+
+.customization-palette .toolbarbutton-1 {
+ -moz-appearance: none;
+ -moz-box-orient: vertical;
+}
+
+.panelUI-grid .toolbarbutton-1 > .toolbarbutton-menubutton-button {
+ -moz-appearance: none;
+ -moz-box-orient: vertical;
+ width: calc(@menuPanelButtonWidth@ - 2px);
+ height: calc(49px + 2.2em);
+ border: 0;
+}
+
+.panelUI-grid .toolbarbutton-1 > .toolbarbutton-menubutton-button > .toolbarbutton-text,
+.panelUI-grid .toolbarbutton-1 > .toolbarbutton-menubutton-button > .toolbarbutton-multiline-text {
+ margin-top: 2px; /* Hack needed to get the label of type=menu-button aligned with other buttons */
+}
+
+.panel-customization-placeholder-child {
+ margin: 6px 0 0;
+ padding: 2px 6px;
+ border: 1px solid transparent;
+}
+
+.panelUI-grid .toolbarbutton-1[type="menu"] {
+ background-image: url("chrome://browser/skin/toolbarbutton-dropdown-arrow.png");
+ background-position: right 3px top 16px;
+ background-repeat: no-repeat;
+}
+
+.panelUI-grid .toolbarbutton-1[type="menu"]:-moz-locale-dir(rtl) {
+ background-position: left 3px top 16px;
+}
+
+.panelUI-grid .toolbarbutton-1 > .toolbarbutton-menu-dropmarker {
+ display: none;
+}
+
+.panelUI-grid .toolbarbutton-1 > .toolbarbutton-menubutton-dropmarker {
+ -moz-box-align: center;
+ width: 16px;
+ margin-inline-start: -16px;
+ height: 51px;
+ margin-bottom: 2.2em;
+ padding: 0;
+}
+
+.panelUI-grid .toolbarbutton-1:not([buttonover])@buttonStateHover@ > .toolbarbutton-menubutton-dropmarker {
+ background-color: var(--arrowpanel-dimmed) !important;
+ border-radius: 0 0 0 2px;
+}
+
+.panelUI-grid .toolbarbutton-1:not([buttonover])@buttonStateHover@ > .toolbarbutton-menubutton-dropmarker:-moz-locale-dir(rtl) {
+ border-radius: 0 0 2px 0;
+}
+
+#main-window:not([customizing]) .panel-combined-button[disabled] > .toolbarbutton-icon {
+ opacity: .5;
+}
+
+toolbaritem[cui-areatype="menu-panel"][sdkstylewidget="true"]:not(.panel-wide-item) {
+ width: calc(@menuPanelButtonWidth@);
+ margin: 0 !important;
+}
+
+toolbaritem[cui-areatype="menu-panel"][sdkstylewidget="true"]:not(.panel-wide-item) {
+ -moz-box-align: center;
+ -moz-box-pack: center;
+}
+
+toolbaritem[cui-areatype="menu-panel"][sdkstylewidget="true"] > iframe {
+ margin: 4px auto;
+}
+
+#PanelUI-multiView[viewtype="subview"] > .panel-viewcontainer > .panel-viewstack > .panel-mainview > #PanelUI-mainView {
+ background-color: var(--arrowpanel-dimmed);
+}
+
+#PanelUI-multiView[viewtype="subview"] #PanelUI-mainView > #PanelUI-contents-scroller > #PanelUI-contents > .panel-wide-item,
+#PanelUI-multiView[viewtype="subview"] #PanelUI-mainView > #PanelUI-contents-scroller > #PanelUI-contents > .toolbarbutton-1:not([panel-multiview-anchor="true"]),
+#PanelUI-multiView[viewtype="subview"] #PanelUI-mainView > #PanelUI-footer > #PanelUI-update-status,
+#PanelUI-multiView[viewtype="subview"] #PanelUI-mainView > #PanelUI-footer > #PanelUI-footer-fxa > #PanelUI-fxa-status > #PanelUI-fxa-avatar,
+#PanelUI-multiView[viewtype="subview"] #PanelUI-mainView > #PanelUI-footer > #PanelUI-footer-fxa > #PanelUI-fxa-status > #PanelUI-fxa-label,
+#PanelUI-multiView[viewtype="subview"] #PanelUI-mainView > #PanelUI-footer > #PanelUI-footer-fxa > #PanelUI-fxa-icon,
+#PanelUI-multiView[viewtype="subview"] #PanelUI-mainView > #PanelUI-footer > #PanelUI-footer-inner > toolbarseparator,
+#PanelUI-multiView[viewtype="subview"] #PanelUI-mainView > #PanelUI-footer > #PanelUI-footer-inner > #PanelUI-customize,
+#PanelUI-multiView[viewtype="subview"] #PanelUI-mainView > #PanelUI-footer > #PanelUI-footer-inner > #PanelUI-help:not([panel-multiview-anchor="true"]) {
+ opacity: .5;
+}
+
+/*
+ * XXXgijs: this is a workaround for a layout issue that was caused by these iframes,
+ * which was affecting subview display. Because of this, we're hiding the iframe *only*
+ * when displaying a subview. The discerning user might notice this, but it's not nearly
+ * as bad as the brokenness.
+ * This hack should be removed once https://bugzilla.mozilla.org/show_bug.cgi?id=975375
+ * is addressed.
+ */
+#PanelUI-multiView[viewtype="subview"] toolbaritem[cui-areatype="menu-panel"][sdkstylewidget="true"]:not(.panel-wide-item) > iframe {
+ visibility: hidden;
+}
+
+toolbaritem[cui-areatype="menu-panel"][sdkstylewidget="true"]:not(.panel-wide-item) > .toolbarbutton-text {
+ text-align: center;
+}
+
+.panelUI-grid .toolbarbutton-1 > .toolbarbutton-menubutton-button > .toolbarbutton-icon,
+.panelUI-grid .toolbarbutton-1 > .toolbarbutton-icon,
+.panelUI-grid .toolbarbutton-1 > .toolbarbutton-badge-stack,
+.customization-palette .toolbarbutton-1 > .toolbarbutton-menubutton-button > .toolbarbutton-icon,
+.customization-palette .toolbarbutton-1 > .toolbarbutton-icon,
+.customization-palette .toolbarbutton-1 > .toolbarbutton-badge-stack,
+.panelUI-grid #bookmarks-toolbar-placeholder > .toolbarbutton-icon,
+.customization-palette #bookmarks-toolbar-placeholder > .toolbarbutton-icon,
+.panel-customization-placeholder-child > .toolbarbutton-icon {
+ width: 32px;
+ height: 32px;
+ min-width: 32px;
+ min-height: 32px;
+ /* Explanation for the below formula (A / B - C)
+ A
+ Each button is @menuPanelButtonWidth@ wide
+ B
+ Each button has two margins.
+ C (46px / 2 = 23px)
+ The button icon is 32 pixels wide.
+ The button has 12px of horizontal padding (6 on each side).
+ The button has 2px of horizontal border (1 on each side).
+ Total width of button's icon + button padding should therefore be 46px,
+ which means each horizontal margin should be the half the button's width - (46/2) px.
+ */
+ margin: 4px calc(@menuPanelButtonWidth@ / 2 - 23px);
+}
+
+/* above we treat the container as the icon for the margins, that is so the
+/* badge itself is positioned correctly. Here we make sure that the icon itself
+/* has the minimum size we want, but no padding/margin. */
+.panelUI-grid .toolbarbutton-1 > .toolbarbutton-badge-stack > .toolbarbutton-icon,
+.customization-palette .toolbarbutton-1 > .toolbarbutton-badge-stack > .toolbarbutton-icon {
+ width: 32px;
+ height: 32px;
+ min-width: 32px;
+ min-height: 32px;
+ margin: 0;
+ padding: 0;
+}
+
+toolbarpaletteitem[place="palette"] > toolbaritem > toolbarbutton {
+ -moz-box-flex: 1;
+}
+
+#personal-bookmarks[overflowedItem=true] > #bookmarks-toolbar-placeholder {
+ -moz-box-flex: 1;
+}
+
+#personal-bookmarks[cui-areatype="toolbar"][overflowedItem=true] > #bookmarks-toolbar-placeholder > .toolbarbutton-icon {
+ margin-inline-end: 2px;
+}
+
+#edit-controls@inAnyPanel@ > #copy-button,
+#zoom-controls@inAnyPanel@ > #zoom-reset-button {
+ border-left: none;
+ border-right: none;
+ border-radius: 0;
+}
+
+#zoom-in-button > .toolbarbutton-text,
+#zoom-out-button > .toolbarbutton-text,
+#zoom-reset-button > .toolbarbutton-icon {
+ display: none;
+}
+
+#PanelUI-footer {
+ display: flex;
+ flex-shrink: 0;
+ flex-direction: column;
+ background-color: var(--arrowpanel-dimmed);
+ padding: 0;
+ margin: 0;
+}
+
+#main-window[customizing] #PanelUI-footer-fxa {
+ display: none;
+}
+
+#PanelUI-footer-fxa:not([fxastatus="signedin"]) > toolbarseparator,
+#PanelUI-footer-fxa:not([fxastatus="signedin"]) > #PanelUI-fxa-icon,
+#PanelUI-footer-fxa:not([fxaprofileimage]) > #PanelUI-fxa-status > #PanelUI-fxa-avatar {
+ display: none;
+}
+
+#PanelUI-footer-fxa[fxastatus="error"] > #PanelUI-fxa-status::after {
+ content: url(chrome://browser/skin/warning.svg);
+ filter: drop-shadow(0 1px 0 hsla(206,50%,10%,.15));
+ width: 47px;
+ padding-top: 1px;
+ display: block;
+ text-align: center;
+ position: relative;
+ top: 25%;
+}
+
+#PanelUI-update-status[update-status]::after {
+ content: "";
+ width: 14px;
+ height: 14px;
+ margin-inline-end: 16.5px;
+ box-shadow: 0px 1px 0px rgba(255,255,255,.2) inset, 0px -1px 0px rgba(0,0,0,.1) inset, 0px 1px 0px rgba(12,27,38,.2);
+ border-radius: 2px;
+ background-size: contain;
+ display: -moz-box;
+}
+
+#PanelUI-update-status[update-status="succeeded"]::after {
+ background-image: url(chrome://browser/skin/update-badge.svg);
+ background-color: #74BF43;
+}
+
+#PanelUI-update-status[update-status="failed"]::after {
+ background-image: url(chrome://browser/skin/update-badge-failed.svg);
+ background-color: #D90000;
+}
+
+#PanelUI-fxa-status {
+ display: flex;
+ flex: 1 1 0%;
+ width: 1px;
+}
+
+#PanelUI-footer-inner,
+#PanelUI-footer-fxa:not([hidden]) {
+ display: flex;
+ border-top: 1px solid var(--panel-separator-color);
+}
+
+#PanelUI-multiView[viewtype="subview"] #PanelUI-footer-inner,
+#PanelUI-multiView[viewtype="subview"] #PanelUI-footer-fxa {
+ position: relative;
+}
+
+#PanelUI-footer-inner > toolbarseparator,
+#PanelUI-footer-fxa > toolbarseparator {
+ border: 0;
+ border-left: 1px solid var(--panel-separator-color);
+ margin: 7px 0 7px;
+ -moz-appearance: none;
+}
+
+#PanelUI-footer-inner:hover > toolbarseparator,
+#PanelUI-footer-fxa:hover > toolbarseparator {
+ margin: 0;
+}
+
+#PanelUI-update-status,
+#PanelUI-help,
+#PanelUI-fxa-label,
+#PanelUI-fxa-icon,
+#PanelUI-customize,
+#PanelUI-quit {
+ margin: 0;
+ padding: 11px 0;
+ box-sizing: border-box;
+ min-height: 40px;
+ -moz-appearance: none;
+ box-shadow: none;
+ border: none;
+ border-radius: 0;
+ transition: background-color;
+ -moz-box-orient: horizontal;
+}
+
+#PanelUI-update-status {
+ border-top: 1px solid var(--panel-separator-color);
+}
+
+#PanelUI-update-status {
+ border-bottom: 1px solid transparent;
+ margin-bottom: -1px;
+}
+
+#PanelUI-update-status > .toolbarbutton-text {
+ width: 0; /* Fancy cropping solution for flexbox. */
+}
+
+#PanelUI-help,
+#PanelUI-quit {
+ min-width: 46px;
+}
+
+#PanelUI-update-status > .toolbarbutton-text,
+#PanelUI-fxa-label > .toolbarbutton-text,
+#PanelUI-customize > .toolbarbutton-text {
+ margin: 0;
+ padding: 0 6px;
+ text-align: start;
+}
+
+#PanelUI-help > .toolbarbutton-text,
+#PanelUI-quit > .toolbarbutton-text,
+#PanelUI-fxa-avatar > .toolbarbutton-text {
+ display: none;
+}
+
+#PanelUI-update-status > .toolbarbutton-icon,
+#PanelUI-fxa-label > .toolbarbutton-icon,
+#PanelUI-fxa-icon > .toolbarbutton-icon,
+#PanelUI-customize > .toolbarbutton-icon,
+#PanelUI-help > .toolbarbutton-icon,
+#PanelUI-quit > .toolbarbutton-icon {
+ margin-inline-end: 0;
+}
+
+#PanelUI-fxa-icon {
+ padding-inline-start: 15px;
+ padding-inline-end: 15px;
+}
+
+#PanelUI-fxa-label,
+#PanelUI-customize {
+ flex: 1;
+ padding-inline-start: 15px;
+ border-inline-start-style: none;
+}
+
+#PanelUI-footer-fxa[fxaprofileimage="set"] > #PanelUI-fxa-status > #PanelUI-fxa-label,
+#PanelUI-footer-fxa[fxaprofileimage="enabled"]:not([fxastatus="error"]) > #PanelUI-fxa-status > #PanelUI-fxa-label {
+ padding-inline-start: 0px;
+}
+
+#PanelUI-update-status {
+ width: calc(@menuPanelWidth@ + 30px);
+ padding-inline-start: 15px;
+ border-inline-start-style: none;
+}
+
+#PanelUI-update-status {
+ list-style-image: url(chrome://branding/content/icon16.png);
+}
+
+#PanelUI-fxa-label,
+#PanelUI-fxa-icon {
+ list-style-image: url(chrome://browser/skin/sync-horizontalbar.png);
+}
+
+#PanelUI-remotetabs {
+ --panel-ui-sync-illustration-height: 157.5px;
+}
+
+.PanelUI-remotetabs-instruction-title,
+.PanelUI-remotetabs-instruction-label,
+#PanelUI-remotetabs-mobile-promo {
+ /* If you change the margin here, the min-height of the synced tabs panel
+ (e.g. #PanelUI-remotetabs[mainview] #PanelUI-remotetabs-setupsync, etc) may
+ need adjusting (see bug 1248506) */
+ margin: 15px;
+ text-align: center;
+ text-shadow: none;
+ max-width: 15em;
+ color: GrayText;
+}
+
+.PanelUI-remotetabs-instruction-title {
+ font-size: 1.3em;
+}
+
+/* The boxes with "instructions" get extra top and bottom padding for space
+ around the illustration and buttons */
+.PanelUI-remotetabs-instruction-box {
+ /* If you change the padding here, the min-height of the synced tabs panel
+ (e.g. #PanelUI-remotetabs[mainview] #PanelUI-remotetabs-setupsync, etc) may
+ need adjusting (see bug 1248506) */
+ padding-bottom: 30px;
+ padding-top: 15px;
+}
+
+.PanelUI-remotetabs-prefs-button {
+ -moz-appearance: none;
+ background-color: #0096dd;
+ /* !important for the color as an OSX specific rule when a lightweight theme
+ is used for buttons in the toolbox overrides. See bug 1238531 for details */
+ color: white !important;
+ border-radius: 2px;
+ /* If you change the margin or padding below, the min-height of the synced tabs
+ panel (e.g. #PanelUI-remotetabs[mainview] #PanelUI-remotetabs-setupsync,
+ etc) may need adjusting (see bug 1248506) */
+ margin-top: 10px;
+ margin-bottom: 10px;
+ padding: 8px;
+ text-shadow: none;
+ min-width: 200px;
+}
+
+.PanelUI-remotetabs-prefs-button:hover,
+.PanelUI-remotetabs-prefs-button:hover:active {
+ background-color: #018acb;
+}
+
+.remotetabs-promo-link {
+ margin: 0;
+}
+
+.PanelUI-remotetabs-notabsforclient-label {
+ color: GrayText;
+ /* This margin is to line this label up with the labels in toolbarbuttons. */
+ margin-left: 28px;
+}
+
+.fxaSyncIllustration {
+ height: var(--panel-ui-sync-illustration-height);
+ list-style-image: url(chrome://browser/skin/fxa/sync-illustration.svg);
+}
+
+.PanelUI-remotetabs-prefs-button > .toolbarbutton-text {
+ /* !important to override ".cui-widget-panel toolbarbutton > .toolbarbutton-text" above. */
+ text-align: center !important;
+ text-shadow: none;
+}
+
+#PanelUI-remotetabs[mainview] { /* panel anchored to toolbar button might be too skinny */
+ min-width: 19em;
+}
+
+/* Work around bug 1224412 - these boxes will cause scrollbars to appear when
+ the panel is anchored to a toolbar button.
+*/
+#PanelUI-remotetabs[mainview] #PanelUI-remotetabs-setupsync,
+#PanelUI-remotetabs[mainview] #PanelUI-remotetabs-reauthsync,
+#PanelUI-remotetabs[mainview] #PanelUI-remotetabs-nodevicespane,
+#PanelUI-remotetabs[mainview] #PanelUI-remotetabs-tabsdisabledpane {
+ min-height: calc(var(--panel-ui-sync-illustration-height) +
+ 20px + /* margin of .PanelUI-remotetabs-prefs-button */
+ 16px + /* padding of .PanelUI-remotetabs-prefs-button */
+ 30px + /* margin of .PanelUI-remotetabs-instruction-label */
+ 30px + 15px + /* padding of .PanelUI-remotetabs-instruction-box */
+ 11em);
+}
+
+#PanelUI-remotetabs-tabslist > label[itemtype="client"] {
+ color: GrayText;
+}
+
+/* Collapse the non-active vboxes in the remotetabs deck to use only the
+ height the active box needs */
+#PanelUI-remotetabs-deck:not([selectedIndex="1"]) > #PanelUI-remotetabs-tabsdisabledpane,
+#PanelUI-remotetabs-deck:not([selectedIndex="2"]) > #PanelUI-remotetabs-fetching,
+#PanelUI-remotetabs-deck:not([selectedIndex="3"]) > #PanelUI-remotetabs-nodevicespane {
+ visibility: collapse;
+}
+
+#PanelUI-remotetabs-main[devices-status="single"] > #PanelUI-remotetabs-buttons {
+ display: none;
+}
+
+#PanelUI-fxa-icon[syncstatus="active"]:not([disabled]) {
+ list-style-image: url(chrome://browser/skin/syncProgress-horizontalbar.png);
+}
+
+#PanelUI-footer-fxa[fxastatus="migrate-signup"] > #PanelUI-fxa-status > #PanelUI-fxa-label,
+#PanelUI-footer-fxa[fxastatus="migrate-verify"] > #PanelUI-fxa-status > #PanelUI-fxa-label {
+ list-style-image: url(chrome://browser/skin/warning.svg);
+ -moz-image-region: auto;
+}
+
+#PanelUI-customize {
+ list-style-image: url(chrome://browser/skin/menuPanel-customize.png);
+}
+
+#customization-panelHolder #PanelUI-customize {
+ list-style-image: url(chrome://browser/skin/customizableui/menuPanel-customizeFinish.png);
+}
+
+#PanelUI-help {
+ list-style-image: url(chrome://browser/skin/menuPanel-help.png);
+}
+
+#PanelUI-quit {
+ border-inline-end-style: none;
+ list-style-image: url(chrome://browser/skin/menuPanel-exit.png);
+}
+
+#PanelUI-fxa-label,
+#PanelUI-fxa-icon,
+#PanelUI-customize,
+#PanelUI-help,
+#PanelUI-quit {
+ -moz-image-region: rect(0, 16px, 16px, 0);
+}
+
+#PanelUI-footer-fxa[fxastatus="signedin"] > #PanelUI-fxa-status > #PanelUI-fxa-label > .toolbarbutton-icon,
+#PanelUI-footer-fxa[fxastatus="error"][fxaprofileimage="set"] > #PanelUI-fxa-status > #PanelUI-fxa-label > .toolbarbutton-icon {
+ display: none;
+}
+
+#PanelUI-footer-fxa[fxastatus="error"]:not([fxaprofileimage="set"]) > #PanelUI-fxa-status > #PanelUI-fxa-avatar {
+ display: none;
+}
+
+#PanelUI-fxa-status[disabled],
+#PanelUI-fxa-icon[disabled] {
+ pointer-events: none;
+}
+
+#PanelUI-fxa-avatar {
+ width: 32px;
+ height: 32px;
+ border-radius: 50%;
+ background-repeat: no-repeat;
+ background-position: 0 0;
+ background-size: contain;
+ align-self: center;
+ margin: 0px 7px;
+ padding: 0px;
+ border: 0px none;
+ margin-inline-end: 0;
+}
+
+#PanelUI-footer-fxa[fxaprofileimage="enabled"] > #PanelUI-fxa-status > #PanelUI-fxa-avatar {
+ list-style-image: url(chrome://browser/skin/fxa/default-avatar.svg);
+}
+
+#PanelUI-customize:hover,
+#PanelUI-help:not([disabled]):hover,
+#PanelUI-quit:not([disabled]):hover {
+ -moz-image-region: rect(0, 32px, 16px, 16px);
+}
+
+#PanelUI-customize:hover:active,
+#PanelUI-help:not([disabled]):hover:active,
+#PanelUI-quit:not([disabled]):hover:active {
+ -moz-image-region: rect(0, 48px, 16px, 32px);
+}
+
+#PanelUI-help[panel-multiview-anchor="true"] {
+ -moz-image-region: rect(0, 64px, 16px, 48px);
+}
+
+#PanelUI-help[disabled],
+#PanelUI-quit[disabled],
+#PanelUI-fxa-icon[disabled],
+#PanelUI-fxa-avatar[disabled],
+#PanelUI-fxa-label[disabled] > .toolbarbutton-icon,
+#PanelUI-fxa-status::after {
+ opacity: 0.4;
+}
+
+#PanelUI-fxa-status:not([disabled]):hover,
+#PanelUI-fxa-icon:not([disabled]):hover,
+#PanelUI-help:not([disabled]):hover,
+#PanelUI-customize:hover,
+#PanelUI-quit:not([disabled]):hover {
+ outline: 1px solid var(--arrowpanel-dimmed);
+ background-color: var(--arrowpanel-dimmed);
+}
+
+#PanelUI-fxa-status:not([disabled]):hover:active,
+#PanelUI-fxa-icon:not([disabled]):hover:active,
+#PanelUI-help:not([disabled]):hover:active,
+#PanelUI-customize:hover:active,
+#PanelUI-quit:not([disabled]):hover:active {
+ outline: 1px solid var(--arrowpanel-dimmed-further);
+ background-color: var(--arrowpanel-dimmed-further);
+ box-shadow: 0 1px 0 hsla(210,4%,10%,.05) inset;
+}
+
+#PanelUI-fxa-status:not([disabled]):hover,
+#PanelUI-fxa-status:not([disabled]):hover:active,
+#PanelUI-fxa-icon:not([disabled]):hover,
+#PanelUI-fxa-icon:not([disabled]):hover:active {
+ outline: none;
+}
+
+#PanelUI-footer-fxa[fxastatus="error"] {
+ background-color: hsl(42,94%,88%);
+ border-top: 1px solid hsl(42,94%,70%);
+}
+
+#PanelUI-footer-fxa[fxastatus="error"] > #PanelUI-fxa-status:hover {
+ background-color: hsl(42,94%,85%);
+}
+
+#PanelUI-footer-fxa[fxastatus="error"] > #PanelUI-fxa-status:hover:active {
+ background-color: hsl(42,94%,82%);
+ box-shadow: 0 1px 0 hsla(210,4%,10%,.05) inset;
+}
+
+#PanelUI-update-status {
+ color: black;
+}
+
+#PanelUI-update-status[update-status="succeeded"] {
+ background-color: hsla(96,65%,75%,.5);
+}
+
+#PanelUI-update-status[update-status="succeeded"]:not([disabled]):hover {
+ background-color: hsla(96,65%,75%,.8);
+}
+
+#PanelUI-update-status[update-status="succeeded"]:not([disabled]):hover:active {
+ background-color: hsl(96,65%,75%);
+}
+
+#PanelUI-update-status[update-status="failed"] {
+ background-color: hsla(359,69%,84%,.5);
+}
+
+#PanelUI-update-status[update-status="failed"]:not([disabled]):hover {
+ background-color: hsla(359,69%,84%,.8);
+}
+
+#PanelUI-update-status[update-status="failed"]:not([disabled]):hover:active {
+ background-color: hsl(359,69%,84%);
+}
+
+#PanelUI-quit:not([disabled]):hover {
+ background-color: #d94141;
+ outline-color: #c23a3a;
+}
+
+#PanelUI-quit:not([disabled]):hover:active {
+ background-color: #ad3434;
+ outline-color: #992e2e;
+}
+
+#customization-panelHolder #PanelUI-customize {
+ color: white;
+ background-color: hsl(108,66%,30%);
+ text-shadow: none;
+ margin-top: -1px;
+}
+
+#customization-panelHolder #PanelUI-customize + toolbarseparator {
+ display: none;
+}
+
+#customization-panelHolder #PanelUI-customize:hover {
+ background-color: hsl(109,65%,26%);
+}
+
+#customization-panelHolder #PanelUI-customize:hover:active {
+ background-color: hsl(109,65%,22%);
+}
+
+#customization-palette .toolbarbutton-multiline-text,
+#customization-palette .toolbarbutton-text {
+ display: none;
+}
+
+panelview .toolbarbutton-1,
+.subviewbutton,
+.widget-overflow-list .toolbarbutton-1,
+.panelUI-grid .toolbarbutton-1 > .toolbarbutton-menubutton-button,
+.toolbaritem-combined-buttons@inAnyPanel@ > toolbarbutton {
+ -moz-appearance: none;
+ padding: 0 6px;
+ background-color: transparent;
+ border-radius: 2px;
+ border-style: solid;
+ border-color: transparent;
+}
+
+panelview .toolbarbutton-1,
+.subviewbutton,
+.widget-overflow-list .toolbarbutton-1,
+.toolbaritem-combined-buttons@inAnyPanel@ > toolbarbutton {
+ border-width: 1px;
+}
+
+.subviewbutton.panel-subview-footer {
+ border-radius: 0;
+ border: none;
+}
+
+.subviewbutton.panel-subview-footer > .menu-text {
+ -moz-appearance: none;
+ margin-inline-start: 0px !important;
+ padding-inline-start: 6px;
+ padding-inline-end: 6px;
+ -moz-box-flex: 0;
+ text-align: center;
+}
+
+.subviewbutton.panel-subview-footer > .toolbarbutton-icon {
+ margin: 0;
+}
+
+.subviewbutton.panel-subview-footer > .toolbarbutton-text {
+ text-align: center;
+ padding: 0;
+}
+
+.subviewbutton.panel-subview-footer > .menu-accel-container {
+ padding-inline-start: 6px;
+}
+
+.subviewbutton:not(.panel-subview-footer) {
+ margin: 0;
+}
+
+.subviewbutton:not(.panel-subview-footer) > .toolbarbutton-text,
+/* Bookmark items need a more specific selector. */
+.PanelUI-subView .subviewbutton:not(.panel-subview-footer) > .menu-text,
+.PanelUI-subView .subviewbutton:not(.panel-subview-footer) > .menu-iconic-text {
+ font: menu;
+}
+
+.PanelUI-subView .subviewbutton[shortcut]::after {
+ content: attr(shortcut);
+ float: right;
+ color: GrayText;
+}
+
+.PanelUI-subView.cui-widget-panelview .subviewbutton[shortcut]::after {
+ margin-inline-start: 10px;
+}
+
+/* This is a <label> but it should fit in with the menu font- and colorwise. */
+#PanelUI-characterEncodingView-autodetect-label {
+ font: menu;
+ color: inherit;
+}
+
+.cui-widget-panelview .subviewbutton:not(.panel-subview-footer) {
+ margin-left: 4px;
+ margin-right: 4px;
+}
+
+panelview .toolbarbutton-1,
+.widget-overflow-list > .toolbarbutton-1:not(:first-child),
+.widget-overflow-list > toolbaritem:not(:first-child) {
+ margin-top: 6px;
+}
+
+panelview .toolbarbutton-1@buttonStateHover@,
+toolbarbutton.subviewbutton@buttonStateHover@,
+menu.subviewbutton@menuStateHover@,
+menuitem.subviewbutton@menuStateHover@,
+.widget-overflow-list .toolbarbutton-1@buttonStateHover@,
+.toolbaritem-combined-buttons@inAnyPanel@ > toolbarbutton@buttonStateHover@ {
+ background-color: var(--arrowpanel-dimmed);
+ border-color: var(--panel-separator-color);
+}
+
+.toolbaritem-combined-buttons@inAnyPanel@@buttonStateHover@ {
+ border-color: var(--panel-separator-color);
+}
+
+panelview .toolbarbutton-1:-moz-any(@buttonStateActive@,[checked=true]),
+toolbarbutton.subviewbutton@buttonStateActive@,
+menu.subviewbutton@menuStateActive@,
+menuitem.subviewbutton@menuStateActive@,
+.widget-overflow-list .toolbarbutton-1@buttonStateActive@,
+.toolbaritem-combined-buttons@inAnyPanel@ > toolbarbutton@buttonStateActive@ {
+ background-color: var(--arrowpanel-dimmed-further);
+ border-color: var(--panel-separator-color);
+ box-shadow: 0 1px 0 hsla(210,4%,10%,.03) inset;
+}
+
+.subviewbutton.panel-subview-footer {
+ margin: 4px -4px -4px;
+ background-color: var(--arrowpanel-dimmed);
+ border-top: 1px solid var(--panel-separator-color);
+ border-radius: 0;
+}
+
+menuitem.panel-subview-footer@menuStateHover@,
+.subviewbutton.panel-subview-footer@buttonStateHover@ {
+ background-color: var(--arrowpanel-dimmed-further);
+}
+
+menuitem.panel-subview-footer@menuStateActive@,
+.subviewbutton.panel-subview-footer@buttonStateActive@ {
+ background-color: var(--arrowpanel-dimmed-even-further);
+ box-shadow: 0 1px 0 hsla(210,4%,10%,.05) inset;
+}
+
+#BMB_bookmarksPopup .subviewbutton {
+ font: menu;
+ font-weight: normal;
+}
+
+#BMB_bookmarksPopup .subviewbutton:not([disabled="true"]) {
+ color: inherit;
+}
+
+#BMB_bookmarksPopup .panel-arrowcontainer > .panel-arrowcontent > .popup-internal-box > .autorepeatbutton-up,
+#BMB_bookmarksPopup .panel-arrowcontainer > .panel-arrowcontent > .popup-internal-box > .autorepeatbutton-down {
+ -moz-appearance: none;
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+/* Remove padding on xul:arrowscrollbox to avoid extra padding on footer */
+#BMB_bookmarksPopup arrowscrollbox {
+ padding-bottom: 0px;
+}
+
+#BMB_bookmarksPopup menupopup > .bookmarks-actions-menuseparator {
+ /* Hide bottom separator as the styled footer includes a top border serving the same purpose */
+ display: none;
+}
+
+/* Popups with only one item don't have a footer */
+#BMB_bookmarksPopup menupopup[placespopup=true][singleitempopup=true] > hbox > .popup-internal-box > .arrowscrollbox-scrollbox > .scrollbox-innerbox,
+/* These popups never have a footer */
+#BMB_bookmarksToolbarPopup > hbox > .popup-internal-box > .arrowscrollbox-scrollbox > .scrollbox-innerbox,
+#BMB_unsortedBookmarksPopup > hbox > .popup-internal-box > .arrowscrollbox-scrollbox > .scrollbox-innerbox {
+ /* And so they need some bottom padding: */
+ padding-bottom: 4px;
+}
+
+/* Disabled (empty) item is always alone and never has an icon, so fix its left padding */
+#BMB_bookmarksPopup menupopup[emptyplacesresult] .bookmark-item.subviewbutton {
+ padding-left: 6px;
+}
+
+.PanelUI-subView menuseparator,
+.PanelUI-subView toolbarseparator,
+.cui-widget-panelview menuseparator {
+ -moz-appearance: none;
+ min-height: 0;
+ border-top: 1px solid var(--panel-separator-color);
+ border-bottom: none;
+ margin: 6px 0;
+ padding: 0;
+}
+
+.PanelUI-subView menuseparator,
+.PanelUI-subView toolbarseparator {
+ margin-inline-start: -5px;
+ margin-inline-end: -4px;
+}
+
+.PanelUI-subView menuseparator.small-separator,
+.PanelUI-subView toolbarseparator.small-separator {
+ margin-left: 5px;
+ margin-right: 5px;
+}
+
+.cui-widget-panelview menuseparator.small-separator {
+ margin-left: 10px;
+ margin-right: 10px;
+}
+
+.subviewbutton > .menu-accel-container {
+ -moz-box-pack: start;
+ margin-inline-start: 10px;
+ margin-inline-end: auto;
+ color: GrayText;
+}
+
+#PanelUI-remotetabs-tabslist > toolbarbutton,
+#PanelUI-historyItems > toolbarbutton {
+ list-style-image: url("chrome://mozapps/skin/places/defaultFavicon.png");
+}
+
+@media (min-resolution: 1.1dppx) {
+ #PanelUI-remotetabs-tabslist > toolbarbutton,
+ #PanelUI-historyItems > toolbarbutton {
+ list-style-image: url("chrome://mozapps/skin/places/defaultFavicon@2x.png");
+ }
+}
+
+#PanelUI-remotetabs-tabslist > toolbarbutton > .toolbarbutton-icon,
+#PanelUI-recentlyClosedWindows > toolbarbutton > .toolbarbutton-icon,
+#PanelUI-recentlyClosedTabs > toolbarbutton > .toolbarbutton-icon,
+#PanelUI-historyItems > toolbarbutton > .toolbarbutton-icon {
+ width: 16px;
+ height: 16px;
+}
+
+toolbarbutton[panel-multiview-anchor="true"],
+toolbarbutton[panel-multiview-anchor="true"] > .toolbarbutton-menubutton-button {
+ color: HighlightText;
+ background-color: Highlight;
+}
+
+#PanelUI-help[panel-multiview-anchor="true"] + toolbarseparator {
+ display: none;
+}
+
+#PanelUI-help[panel-multiview-anchor="true"] {
+ background-image: linear-gradient(rgba(255,255,255,0.3), transparent);
+ background-position: 0;
+}
+
+#PanelUI-help[panel-multiview-anchor="true"]::after {
+ content: "";
+ position: absolute;
+ top: 0;
+ height: 100%;
+ width: var(--panel-ui-exit-subview-gutter-width);
+ background-image: url(chrome://browser/skin/customizableui/subView-arrow-back-inverted.png),
+ linear-gradient(rgba(255,255,255,0.3), transparent);
+ background-repeat: no-repeat;
+ background-color: Highlight;
+ background-position: left 10px center, 0;
+}
+
+#PanelUI-help[panel-multiview-anchor="true"]:-moz-locale-dir(rtl)::after {
+ background-image: url(chrome://browser/skin/customizableui/subView-arrow-back-inverted-rtl.png),
+ linear-gradient(rgba(255,255,255,0.3), transparent);
+ background-position: right 10px center, 0;
+}
+
+toolbarbutton[panel-multiview-anchor="true"] {
+ background-image: url(chrome://browser/skin/customizableui/subView-arrow-back-inverted.png),
+ linear-gradient(rgba(255,255,255,0.3), transparent);
+ background-position: right calc(@menuPanelButtonWidth@ / 2 - var(--panel-ui-exit-subview-gutter-width) + 2px) center;
+ background-repeat: no-repeat, repeat;
+}
+
+toolbarbutton[panel-multiview-anchor="true"]:-moz-locale-dir(rtl) {
+ background-image: url(chrome://browser/skin/customizableui/subView-arrow-back-inverted-rtl.png),
+ linear-gradient(rgba(255,255,255,0.3), transparent);
+ background-position: left calc(@menuPanelButtonWidth@ / 2 - var(--panel-ui-exit-subview-gutter-width) + 2px) center;
+}
+
+toolbarpaletteitem[place="palette"] > .toolbarbutton-1 > .toolbarbutton-menubutton-dropmarker,
+#bookmarks-menu-button[cui-areatype="menu-panel"] > .toolbarbutton-menubutton-dropmarker {
+ display: none;
+}
+
+#search-container[cui-areatype="menu-panel"],
+#wrapper-search-container[place="panel"] {
+ width: @menuPanelWidth@;
+}
+
+#search-container[cui-areatype="menu-panel"] {
+ margin-top: 6px;
+ margin-bottom: 6px;
+}
+
+toolbarpaletteitem[place="palette"] > #search-container {
+ min-width: 7em;
+ width: 7em;
+}
+
+.toolbaritem-combined-buttons@inAnyPanel@ {
+ background-color: transparent;
+ border-radius: 2px;
+ border: 1px solid;
+ border-color: transparent;
+ border-bottom-color: var(--panel-separator-color);
+ padding: 0;
+ transition-property: background-color, border-color;
+ transition-duration: 150ms;
+}
+
+/* Make direct siblings overlap borders: */
+.toolbaritem-combined-buttons + .toolbaritem-combined-buttons@inAnyPanel@ {
+ border-top-color: transparent !important;
+}
+
+.toolbaritem-combined-buttons + .toolbaritem-combined-buttons@inAnyPanel@,
+toolbarpaletteitem[haswideitem][place="panel"] + toolbarpaletteitem[haswideitem][place="panel"] {
+ margin-top: -1px;
+}
+
+.toolbaritem-combined-buttons@inAnyPanel@ > toolbarbutton {
+ border: 0;
+ padding: .5em;
+ margin: 0;
+ -moz-box-flex: 1;
+ min-width: calc(@menuPanelButtonWidth@);
+ max-width: calc(@menuPanelButtonWidth@);
+ /* We'd prefer to use height: auto here but it leads to layout bugs in the panel. Cope:
+ 1.2em for line height + 2 * .5em padding + margin on the label (2 * 2px) */
+ height: calc(2.2em + 4px);
+ max-height: none;
+ -moz-box-orient: horizontal;
+}
+
+#edit-controls@inAnyPanel@ > #copy-button,
+#zoom-controls@inAnyPanel@ > #zoom-reset-button {
+ /* reduce the width with 2px for this button to compensate for two separators
+ of 1px. */
+ min-width: calc(@menuPanelButtonWidth@ - 2px);
+ max-width: calc(@menuPanelButtonWidth@ - 2px);
+}
+
+#main-window:not([customizing]) .toolbaritem-combined-buttons@inAnyPanel@ > toolbarbutton[disabled] > .toolbarbutton-icon {
+ opacity: .25;
+}
+
+#zoom-controls[cui-areatype="toolbar"] > #zoom-reset-button > .toolbarbutton-text {
+%ifdef XP_MACOSX
+ min-width: 6ch;
+%else
+ min-width: 7ch;
+%endif
+}
+
+#edit-controls@inAnyPanel@ > #cut-button:-moz-locale-dir(ltr),
+#edit-controls@inAnyPanel@ > #paste-button:-moz-locale-dir(rtl),
+#zoom-controls@inAnyPanel@ > #zoom-out-button:-moz-locale-dir(ltr),
+#zoom-controls@inAnyPanel@ > #zoom-in-button:-moz-locale-dir(rtl) {
+ border-top-right-radius: 0;
+ border-bottom-right-radius: 0;
+}
+
+#edit-controls@inAnyPanel@ > #cut-button:-moz-locale-dir(rtl),
+#edit-controls@inAnyPanel@ > #paste-button:-moz-locale-dir(ltr),
+#zoom-controls@inAnyPanel@ > #zoom-out-button:-moz-locale-dir(rtl),
+#zoom-controls@inAnyPanel@ > #zoom-in-button:-moz-locale-dir(ltr) {
+ border-top-left-radius: 0;
+ border-bottom-left-radius: 0;
+}
+
+.toolbaritem-combined-buttons@inAnyPanel@ > separator {
+ -moz-appearance: none;
+ -moz-box-align: stretch;
+ margin: .5em 0;
+ width: 1px;
+ height: auto;
+ background: var(--panel-separator-color);
+ transition-property: margin;
+ transition-duration: 10ms;
+ transition-timing-function: ease;
+}
+
+.toolbaritem-combined-buttons@inAnyPanel@:hover > separator {
+ margin: 0;
+}
+
+#widget-overflow > .panel-arrowcontainer > .panel-arrowcontent {
+ padding: 0;
+}
+
+.cui-widget-panelview,
+#widget-overflow-scroller {
+ overflow-y: auto;
+ overflow-x: hidden;
+}
+
+#widget-overflow-scroller {
+ max-height: 30em;
+ margin-top: 10px;
+ margin-bottom: 10px;
+}
+
+#widget-overflow-list {
+ width: @menuPanelWidth@;
+ padding-left: 10px;
+ padding-right: 10px;
+}
+
+toolbaritem[overflowedItem=true],
+.widget-overflow-list .toolbarbutton-1 {
+ width: 100%;
+ max-width: @menuPanelWidth@;
+ min-height: 36px;
+ background-repeat: no-repeat;
+ background-position: 0 center;
+}
+
+.widget-overflow-list .toolbarbutton-1,
+.widget-overflow-list .toolbarbutton-1 > .toolbarbutton-menubutton-button {
+ -moz-box-align: center;
+ -moz-box-orient: horizontal;
+}
+
+.widget-overflow-list .toolbarbutton-1:not(.toolbarbutton-combined) > .toolbarbutton-text,
+.widget-overflow-list .toolbarbutton-1 > .toolbarbutton-menubutton-button > .toolbarbutton-text {
+ text-align: start;
+ padding-inline-start: .5em;
+}
+
+#widget-overflow-list > .toolbaritem-combined-buttons {
+ min-height: 28px;
+}
+
+.widget-overflow-list .toolbarbutton-1 > .toolbarbutton-menubutton-button::after {
+ content: "";
+ display: -moz-box;
+ width: 1px;
+ height: 18px;
+ margin-inline-end: -1px;
+ background-image: linear-gradient(hsla(210,54%,20%,.2) 0, hsla(210,54%,20%,.2) 18px);
+ background-clip: padding-box;
+ background-position: center;
+ background-repeat: no-repeat;
+ background-size: 1px 18px;
+ box-shadow: 0 0 0 1px hsla(0,0%,100%,.2);
+}
+
+.subviewbutton[checked="true"] {
+ background: url("chrome://global/skin/menu/shared-menu-check.png") center left 7px / 11px 11px no-repeat transparent;
+}
+
+.subviewbutton[checked="true"]:-moz-locale-dir(rtl) {
+ background-position: center right 7px;
+}
+
+.subviewbutton > .menu-iconic-left {
+ -moz-appearance: none;
+ margin-inline-end: 3px;
+}
+
+menuitem[checked="true"].subviewbutton > .menu-iconic-left {
+ visibility: hidden;
+}
+
+#PanelUI-containersItems > .subviewbutton > .toolbarbutton-icon {
+ width: 16px;
+ height: 16px;
+}
+
+.panel-mainview[panelid=customizationui-widget-panel],
+#customizationui-widget-multiview > .panel-viewcontainer,
+#customizationui-widget-multiview > .panel-viewcontainer > .panel-viewstack,
+#PanelUI-panicView > .panel-subview-body,
+#PanelUI-panicView {
+ overflow: visible;
+}
+
+#PanelUI-panicView.cui-widget-panelview {
+ min-width: 280px;
+}
+
+#PanelUI-panic-timeframe {
+ padding: 15px;
+ border-bottom: 1px solid var(--panel-separator-color);
+}
+
+#panic-button-success-icon,
+#PanelUI-panic-timeframe-icon,
+#PanelUI-panic-timeframe-icon-small {
+ background-color: transparent;
+ margin-inline-end: 10px;
+}
+
+#panic-button-success-icon,
+#PanelUI-panic-timeframe-icon {
+ list-style-image: url(chrome://browser/skin/panic-panel/header.png);
+ max-height: 48px;
+ width: 48px;
+}
+
+#PanelUI-panic-timeframe-icon-small {
+ list-style-image: url(chrome://browser/skin/panic-panel/header-small.png);
+ max-height: 32px;
+ width: 32px;
+}
+
+/* current attribute is only set when in use as a subview instead of a main view */
+#PanelUI-panicView[current] #PanelUI-panic-timeframe-icon {
+ display: none;
+}
+
+#PanelUI-panicView.cui-widget-panelview #PanelUI-panic-timeframe-icon-small {
+ display: none;
+}
+
+#panic-button-success-header,
+#PanelUI-panic-header {
+ -moz-box-align: center;
+ margin-bottom: 5px;
+}
+
+#PanelUI-panicView.cui-widget-panelview #PanelUI-panic-header {
+ margin-bottom: 0;
+}
+
+#PanelUI-panic-timeframe-icon-small:-moz-locale-dir(rtl),
+#PanelUI-panic-timeframe-icon:-moz-locale-dir(rtl) {
+ transform: scaleX(-1);
+}
+
+.subviewradio {
+ -moz-binding: url(chrome://global/content/bindings/radio.xml#radio);
+ -moz-appearance: none;
+ -moz-box-align: center;
+ padding: 1px;
+ margin: 0 0 2px;
+ background-color: transparent;
+ border-radius: 2px;
+ border: 1px solid transparent;
+}
+
+.subviewradio@buttonStateHover@ {
+ background-color: var(--arrowpanel-dimmed);
+ border-color: var(--panel-separator-color);
+}
+
+.subviewradio[selected],
+.subviewradio[selected]:hover,
+.subviewradio@buttonStateActive@ {
+ background-color: var(--arrowpanel-dimmed-further);
+ border-color: var(--panel-separator-color);
+ box-shadow: 0 1px 0 hsla(210,4%,10%,.03) inset;
+}
+
+.subviewradio > .radio-check {
+ -moz-appearance: none;
+ width: 16px;
+ height: 16px;
+ border: 1px solid #e7e7e7;
+ border-radius: 50%;
+ margin: 1px 5px;
+ background-color: #f1f1f1;
+}
+
+.subviewradio > .radio-check[selected] {
+ background-color: #fff;
+ border: 4px solid #177ee6;
+}
+
+#PanelUI-panic-explanations {
+ padding: 10px 10px 0;
+}
+
+#PanelUI-panic-actionlist-main-label {
+ color: GrayText;
+ font-size: 0.9em;
+}
+
+.PanelUI-panic-actionlist {
+ padding-inline-start: 20px;
+ padding-top: 2px;
+ padding-bottom: 2px;
+ background-size: 16px 16px;
+ background-repeat: no-repeat;
+ background-color: transparent;
+ background-position: center left;
+}
+
+.PanelUI-panic-actionlist:-moz-locale-dir(rtl) {
+ background-position: center right;
+}
+
+#PanelUI-panic-actionlist-cookies {
+ background-image: -moz-image-rect(url(chrome://browser/skin/panic-panel/icons.png), 0, 16, 16, 0);
+}
+
+#PanelUI-panic-actionlist-history {
+ background-image: -moz-image-rect(url(chrome://browser/skin/panic-panel/icons.png), 0, 32, 16, 16);
+}
+
+#PanelUI-panic-actionlist-windows {
+ background-image: -moz-image-rect(url(chrome://browser/skin/panic-panel/icons.png), 0, 48, 16, 32);
+}
+
+#PanelUI-panic-actionlist-newwindow {
+ background-image: -moz-image-rect(url(chrome://browser/skin/panic-panel/icons.png), 0, 64, 16, 48);
+}
+
+#PanelUI-panic-warning {
+ color: #C11F14;
+ text-align: center;
+ width: 100%;
+ margin-top: 20px;
+}
+
+#PanelUI-panic-view-button {
+ -moz-appearance: none;
+ background-color: #d92316;
+ color: white;
+ margin: 5px 15px 11px;
+ border: 1px solid #c92014;
+ border-radius: 3px;
+ padding: 10px;
+}
+
+#PanelUI-panic-view-button:hover {
+ background-color: #bf1f13;
+ border-color: #b81d12;
+}
+
+#PanelUI-panic-view-button:hover:active {
+ background-color: #99180f;
+ border-color: #91170f;
+}
+
+#PanelUI-panic-view-button > .toolbarbutton-text {
+ text-align: center;
+ text-shadow: none;
+}
+
+#panic-button-success-closebutton {
+ background-color: #e5e5e5;
+ color: black;
+ margin: 5px 0 0;
+ border: 1px solid #ccc;
+ border-radius: 3px;
+ padding: 10px;
+ -moz-appearance: none;
+}
+
+#panic-button-success-closebutton:hover {
+ background-color: #dedede;
+ border-color: #bbb;
+}
+
+#panic-button-success-closebutton:hover:active {
+ background-color: #d0d0d0;
+ border-color: #aaa;
+}
+
+@media (min-resolution: 1.1dppx) {
+ #PanelUI-help[panel-multiview-anchor="true"]::after,
+ toolbarbutton[panel-multiview-anchor="true"] {
+ background-image: url(chrome://browser/skin/customizableui/subView-arrow-back-inverted@2x.png),
+ linear-gradient(rgba(255,255,255,0.3), transparent);
+ background-size: 16px, auto;
+ }
+
+ #PanelUI-help[panel-multiview-anchor="true"]:-moz-locale-dir(rtl)::after,
+ toolbarbutton[panel-multiview-anchor="true"]:-moz-locale-dir(rtl) {
+ background-image: url(chrome://browser/skin/customizableui/subView-arrow-back-inverted-rtl@2x.png),
+ linear-gradient(rgba(255,255,255,0.3), transparent);
+ }
+
+ #PanelUI-update-status {
+ list-style-image: url(chrome://branding/content/icon32.png);
+ }
+
+ #PanelUI-fxa-label,
+ #PanelUI-fxa-icon {
+ list-style-image: url(chrome://browser/skin/sync-horizontalbar@2x.png);
+ }
+
+ #PanelUI-fxa-icon[syncstatus="active"]:not([disabled]) {
+ list-style-image: url(chrome://browser/skin/syncProgress-horizontalbar@2x.png);
+ }
+
+ #PanelUI-customize {
+ list-style-image: url(chrome://browser/skin/menuPanel-customize@2x.png);
+ }
+
+ #customization-panelHolder #PanelUI-customize {
+ list-style-image: url(chrome://browser/skin/customizableui/menuPanel-customizeFinish@2x.png);
+ }
+
+ #PanelUI-help {
+ list-style-image: url(chrome://browser/skin/menuPanel-help@2x.png);
+ }
+
+ #PanelUI-quit {
+ list-style-image: url(chrome://browser/skin/menuPanel-exit@2x.png);
+ }
+
+ #PanelUI-fxa-label,
+ #PanelUI-fxa-icon,
+ #PanelUI-customize,
+ #PanelUI-help,
+ #PanelUI-quit {
+ -moz-image-region: rect(0, 32px, 32px, 0);
+ }
+
+ #PanelUI-update-status > .toolbarbutton-icon,
+ #PanelUI-fxa-label > .toolbarbutton-icon,
+ #PanelUI-fxa-icon > .toolbarbutton-icon,
+ #PanelUI-customize > .toolbarbutton-icon,
+ #PanelUI-help > .toolbarbutton-icon,
+ #PanelUI-quit > .toolbarbutton-icon {
+ width: 16px;
+ }
+
+ #PanelUI-customize:hover,
+ #PanelUI-help:not([disabled]):hover,
+ #PanelUI-quit:not([disabled]):hover {
+ -moz-image-region: rect(0, 64px, 32px, 32px);
+ }
+
+ #PanelUI-customize:hover:active,
+ #PanelUI-help:not([disabled]):hover:active,
+ #PanelUI-quit:not([disabled]):hover:active {
+ -moz-image-region: rect(0, 96px, 32px, 64px);
+ }
+
+ #PanelUI-help[panel-multiview-anchor="true"] {
+ -moz-image-region: rect(0, 128px, 32px, 96px);
+ background-size: auto;
+ }
+
+ .subviewbutton[checked="true"] {
+ background-image: url("chrome://global/skin/menu/shared-menu-check@2x.png");
+ }
+
+ #panic-button-success-icon,
+ #PanelUI-panic-timeframe-icon {
+ list-style-image: url(chrome://browser/skin/panic-panel/header@2x.png);
+ }
+
+ #PanelUI-panic-timeframe-icon-small {
+ list-style-image: url(chrome://browser/skin/panic-panel/header-small@2x.png);
+ }
+
+ #PanelUI-panic-actionlist-cookies {
+ background-image: -moz-image-rect(url(chrome://browser/skin/panic-panel/icons@2x.png), 0, 32, 32, 0);
+ }
+
+ #PanelUI-panic-actionlist-history {
+ background-image: -moz-image-rect(url(chrome://browser/skin/panic-panel/icons@2x.png), 0, 64, 32, 32);
+ }
+
+ #PanelUI-panic-actionlist-windows {
+ background-image: -moz-image-rect(url(chrome://browser/skin/panic-panel/icons@2x.png), 0, 96, 32, 64);
+ }
+
+ #PanelUI-panic-actionlist-newwindow {
+ background-image: -moz-image-rect(url(chrome://browser/skin/panic-panel/icons@2x.png), 0, 128, 32, 96);
+ }
+}
diff --git a/application/basilisk/themes/shared/customizableui/panelarrow-customizeTip.png b/application/basilisk/themes/shared/customizableui/panelarrow-customizeTip.png
new file mode 100644
index 000000000..cbdf4692b
--- /dev/null
+++ b/application/basilisk/themes/shared/customizableui/panelarrow-customizeTip.png
Binary files differ
diff --git a/application/basilisk/themes/shared/customizableui/panelarrow-customizeTip@2x.png b/application/basilisk/themes/shared/customizableui/panelarrow-customizeTip@2x.png
new file mode 100644
index 000000000..cfd7ba966
--- /dev/null
+++ b/application/basilisk/themes/shared/customizableui/panelarrow-customizeTip@2x.png
Binary files differ
diff --git a/application/basilisk/themes/shared/customizableui/subView-arrow-back-inverted-rtl.png b/application/basilisk/themes/shared/customizableui/subView-arrow-back-inverted-rtl.png
new file mode 100644
index 000000000..cf4198c60
--- /dev/null
+++ b/application/basilisk/themes/shared/customizableui/subView-arrow-back-inverted-rtl.png
Binary files differ
diff --git a/application/basilisk/themes/shared/customizableui/subView-arrow-back-inverted-rtl@2x.png b/application/basilisk/themes/shared/customizableui/subView-arrow-back-inverted-rtl@2x.png
new file mode 100644
index 000000000..bb250403d
--- /dev/null
+++ b/application/basilisk/themes/shared/customizableui/subView-arrow-back-inverted-rtl@2x.png
Binary files differ
diff --git a/application/basilisk/themes/shared/customizableui/subView-arrow-back-inverted.png b/application/basilisk/themes/shared/customizableui/subView-arrow-back-inverted.png
new file mode 100644
index 000000000..86178abfe
--- /dev/null
+++ b/application/basilisk/themes/shared/customizableui/subView-arrow-back-inverted.png
Binary files differ
diff --git a/application/basilisk/themes/shared/customizableui/subView-arrow-back-inverted@2x.png b/application/basilisk/themes/shared/customizableui/subView-arrow-back-inverted@2x.png
new file mode 100644
index 000000000..1c8e86db3
--- /dev/null
+++ b/application/basilisk/themes/shared/customizableui/subView-arrow-back-inverted@2x.png
Binary files differ