summaryrefslogtreecommitdiffstats
path: root/browser/themes/windows
diff options
context:
space:
mode:
authorMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
committerMatt A. Tobin <mattatobin@localhost.localdomain>2018-02-02 04:16:08 -0500
commit5f8de423f190bbb79a62f804151bc24824fa32d8 (patch)
tree10027f336435511475e392454359edea8e25895d /browser/themes/windows
parent49ee0794b5d912db1f95dce6eb52d781dc210db5 (diff)
downloadUXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.gz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.lz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.tar.xz
UXP-5f8de423f190bbb79a62f804151bc24824fa32d8.zip
Add m-esr52 at 52.6.0
Diffstat (limited to 'browser/themes/windows')
-rw-r--r--browser/themes/windows/Info-XP.pngbin0 -> 590 bytes
-rw-r--r--browser/themes/windows/Info.pngbin0 -> 577 bytes
-rw-r--r--browser/themes/windows/Privacy-16-XP.pngbin0 -> 799 bytes
-rw-r--r--browser/themes/windows/Privacy-16.pngbin0 -> 789 bytes
-rw-r--r--browser/themes/windows/Toolbar-XP.pngbin0 -> 19638 bytes
-rw-r--r--browser/themes/windows/Toolbar-aero.pngbin0 -> 18276 bytes
-rw-r--r--browser/themes/windows/Toolbar-aero@2x.pngbin0 -> 47581 bytes
-rw-r--r--browser/themes/windows/Toolbar-inverted.pngbin0 -> 12933 bytes
-rw-r--r--browser/themes/windows/Toolbar-inverted@2x.pngbin0 -> 29813 bytes
-rw-r--r--browser/themes/windows/Toolbar-lunaSilver.pngbin0 -> 19034 bytes
-rw-r--r--browser/themes/windows/Toolbar-win8.pngbin0 -> 7239 bytes
-rw-r--r--browser/themes/windows/Toolbar-win8@2x.pngbin0 -> 16482 bytes
-rw-r--r--browser/themes/windows/Toolbar.pngbin0 -> 7308 bytes
-rw-r--r--browser/themes/windows/Toolbar@2x.pngbin0 -> 16636 bytes
-rw-r--r--browser/themes/windows/aboutSessionRestore-window-icon.pngbin0 -> 307 bytes
-rw-r--r--browser/themes/windows/aboutSyncTabs.css101
-rw-r--r--browser/themes/windows/actionicon-tab-XPVista7.pngbin0 -> 421 bytes
-rw-r--r--browser/themes/windows/actionicon-tab.pngbin0 -> 194 bytes
-rw-r--r--browser/themes/windows/actionicon-tab@2x.pngbin0 -> 324 bytes
-rw-r--r--browser/themes/windows/browser-aero.css473
-rw-r--r--browser/themes/windows/browser-lightweightTheme.css39
-rw-r--r--browser/themes/windows/browser.css2711
-rw-r--r--browser/themes/windows/caption-buttons.svg100
-rw-r--r--browser/themes/windows/click-to-play-warning-stripes.pngbin0 -> 1266 bytes
-rw-r--r--browser/themes/windows/communicator/communicator.css6
-rw-r--r--browser/themes/windows/communicator/jar.mn7
-rw-r--r--browser/themes/windows/communicator/moz.build7
-rw-r--r--browser/themes/windows/content-contextmenu.svg46
-rw-r--r--browser/themes/windows/controlcenter/panel.css13
-rw-r--r--browser/themes/windows/customizableui/background-noise-toolbar.pngbin0 -> 15601 bytes
-rw-r--r--browser/themes/windows/customizableui/customize-titleBar-toggle.pngbin0 -> 540 bytes
-rw-r--r--browser/themes/windows/customizableui/customize-titleBar-toggle@2x.pngbin0 -> 1273 bytes
-rw-r--r--browser/themes/windows/customizableui/customizeMode-gridTexture.pngbin0 -> 115 bytes
-rw-r--r--browser/themes/windows/customizableui/customizeMode-separatorHorizontal.pngbin0 -> 1426 bytes
-rw-r--r--browser/themes/windows/customizableui/customizeMode-separatorVertical.pngbin0 -> 1649 bytes
-rw-r--r--browser/themes/windows/customizableui/menu-arrow.svg26
-rw-r--r--browser/themes/windows/customizableui/panelUI.css151
-rw-r--r--browser/themes/windows/devedition.css321
-rw-r--r--browser/themes/windows/downloads/allDownloadsViewOverlay.css49
-rw-r--r--browser/themes/windows/downloads/download-glow-XPVista7.pngbin0 -> 494 bytes
-rw-r--r--browser/themes/windows/downloads/download-glow-menuPanel-XPVista7.pngbin0 -> 893 bytes
-rw-r--r--browser/themes/windows/downloads/download-glow-menuPanel.pngbin0 -> 405 bytes
-rw-r--r--browser/themes/windows/downloads/download-glow.pngbin0 -> 175 bytes
-rw-r--r--browser/themes/windows/downloads/download-notification-finish.pngbin0 -> 3880 bytes
-rw-r--r--browser/themes/windows/downloads/download-notification-start.pngbin0 -> 1478 bytes
-rw-r--r--browser/themes/windows/downloads/downloads.css56
-rw-r--r--browser/themes/windows/downloads/indicator.css225
-rw-r--r--browser/themes/windows/feeds/feedIcon-XP.pngbin0 -> 1770 bytes
-rw-r--r--browser/themes/windows/feeds/feedIcon.pngbin0 -> 1838 bytes
-rw-r--r--browser/themes/windows/feeds/feedIcon16-XP.pngbin0 -> 762 bytes
-rw-r--r--browser/themes/windows/feeds/feedIcon16.pngbin0 -> 780 bytes
-rw-r--r--browser/themes/windows/feeds/subscribe-ui.css7
-rw-r--r--browser/themes/windows/feeds/subscribe.css184
-rw-r--r--browser/themes/windows/jar.mn268
-rw-r--r--browser/themes/windows/keyhole-forward-mask.svg14
-rw-r--r--browser/themes/windows/livemark-folder-XP.pngbin0 -> 667 bytes
-rw-r--r--browser/themes/windows/livemark-folder.pngbin0 -> 619 bytes
-rw-r--r--browser/themes/windows/loop/toolbar-win10.pngbin0 -> 768 bytes
-rw-r--r--browser/themes/windows/loop/toolbar-win10@2x.pngbin0 -> 1599 bytes
-rw-r--r--browser/themes/windows/menu-back-XP.pngbin0 -> 341 bytes
-rw-r--r--browser/themes/windows/menu-back.pngbin0 -> 433 bytes
-rw-r--r--browser/themes/windows/menu-forward-XP.pngbin0 -> 342 bytes
-rw-r--r--browser/themes/windows/menu-forward.pngbin0 -> 434 bytes
-rw-r--r--browser/themes/windows/menuPanel-customize.pngbin0 -> 874 bytes
-rw-r--r--browser/themes/windows/menuPanel-customize@2x.pngbin0 -> 2193 bytes
-rw-r--r--browser/themes/windows/menuPanel-exit.pngbin0 -> 568 bytes
-rw-r--r--browser/themes/windows/menuPanel-exit@2x.pngbin0 -> 1139 bytes
-rw-r--r--browser/themes/windows/menuPanel-help.pngbin0 -> 1967 bytes
-rw-r--r--browser/themes/windows/menuPanel-help@2x.pngbin0 -> 5300 bytes
-rw-r--r--browser/themes/windows/monitor.pngbin0 -> 5476 bytes
-rw-r--r--browser/themes/windows/monitor_16-10.pngbin0 -> 6055 bytes
-rw-r--r--browser/themes/windows/moz.build13
-rw-r--r--browser/themes/windows/newtab/newTab.css20
-rw-r--r--browser/themes/windows/pageInfo-XP.pngbin0 -> 7739 bytes
-rw-r--r--browser/themes/windows/pageInfo.css262
-rw-r--r--browser/themes/windows/pageInfo.pngbin0 -> 8062 bytes
-rw-r--r--browser/themes/windows/places/allBookmarks-XP.pngbin0 -> 504 bytes
-rw-r--r--browser/themes/windows/places/allBookmarks.pngbin0 -> 556 bytes
-rw-r--r--browser/themes/windows/places/autocomplete-star-XPVista7.pngbin0 -> 813 bytes
-rw-r--r--browser/themes/windows/places/autocomplete-star.pngbin0 -> 493 bytes
-rw-r--r--browser/themes/windows/places/autocomplete-star@2x.pngbin0 -> 870 bytes
-rw-r--r--browser/themes/windows/places/bookmarks-notification-finish.pngbin0 -> 3417 bytes
-rw-r--r--browser/themes/windows/places/bookmarksMenu-XP.pngbin0 -> 334 bytes
-rw-r--r--browser/themes/windows/places/bookmarksMenu.pngbin0 -> 307 bytes
-rw-r--r--browser/themes/windows/places/bookmarksToolbar-XP.pngbin0 -> 229 bytes
-rw-r--r--browser/themes/windows/places/bookmarksToolbar-menuPanel-XP.pngbin0 -> 689 bytes
-rw-r--r--browser/themes/windows/places/bookmarksToolbar-menuPanel.pngbin0 -> 843 bytes
-rw-r--r--browser/themes/windows/places/bookmarksToolbar.pngbin0 -> 343 bytes
-rw-r--r--browser/themes/windows/places/calendar-XP.pngbin0 -> 559 bytes
-rw-r--r--browser/themes/windows/places/calendar.pngbin0 -> 567 bytes
-rw-r--r--browser/themes/windows/places/downloads.pngbin0 -> 622 bytes
-rw-r--r--browser/themes/windows/places/editBookmarkOverlay.css80
-rw-r--r--browser/themes/windows/places/history-XP.pngbin0 -> 821 bytes
-rw-r--r--browser/themes/windows/places/history.pngbin0 -> 806 bytes
-rw-r--r--browser/themes/windows/places/libraryToolbar-XP.pngbin0 -> 2037 bytes
-rw-r--r--browser/themes/windows/places/libraryToolbar.pngbin0 -> 1194 bytes
-rw-r--r--browser/themes/windows/places/livemark-item.pngbin0 -> 862 bytes
-rw-r--r--browser/themes/windows/places/organizer.css222
-rw-r--r--browser/themes/windows/places/places.css176
-rw-r--r--browser/themes/windows/places/query-XP.pngbin0 -> 612 bytes
-rw-r--r--browser/themes/windows/places/query.pngbin0 -> 601 bytes
-rw-r--r--browser/themes/windows/places/starred48-XP.pngbin0 -> 1848 bytes
-rw-r--r--browser/themes/windows/places/starred48.pngbin0 -> 1849 bytes
-rw-r--r--browser/themes/windows/places/tag-XP.pngbin0 -> 480 bytes
-rw-r--r--browser/themes/windows/places/tag.pngbin0 -> 639 bytes
-rw-r--r--browser/themes/windows/places/toolbarDropMarker-XP.pngbin0 -> 219 bytes
-rw-r--r--browser/themes/windows/places/toolbarDropMarker.pngbin0 -> 186 bytes
-rw-r--r--browser/themes/windows/places/unsortedBookmarks-XP.pngbin0 -> 712 bytes
-rw-r--r--browser/themes/windows/places/unsortedBookmarks.pngbin0 -> 692 bytes
-rw-r--r--browser/themes/windows/places/unstarred48.pngbin0 -> 477 bytes
-rw-r--r--browser/themes/windows/preferences/alwaysAsk-XP.pngbin0 -> 408 bytes
-rw-r--r--browser/themes/windows/preferences/alwaysAsk.pngbin0 -> 392 bytes
-rw-r--r--browser/themes/windows/preferences/application-XP.pngbin0 -> 388 bytes
-rw-r--r--browser/themes/windows/preferences/application.pngbin0 -> 370 bytes
-rw-r--r--browser/themes/windows/preferences/applications.css64
-rw-r--r--browser/themes/windows/preferences/in-content/dialog.css19
-rw-r--r--browser/themes/windows/preferences/in-content/preferences.css64
-rw-r--r--browser/themes/windows/preferences/preferences.css103
-rw-r--r--browser/themes/windows/preferences/saveFile-XP.pngbin0 -> 740 bytes
-rw-r--r--browser/themes/windows/preferences/saveFile.pngbin0 -> 716 bytes
-rw-r--r--browser/themes/windows/privatebrowsing-mask-tabstrip-XPVista7.pngbin0 -> 949 bytes
-rw-r--r--browser/themes/windows/privatebrowsing-mask-tabstrip.pngbin0 -> 403 bytes
-rw-r--r--browser/themes/windows/privatebrowsing-mask-titlebar-XPVista7-tall.pngbin0 -> 940 bytes
-rw-r--r--browser/themes/windows/privatebrowsing-mask-titlebar-XPVista7.pngbin0 -> 860 bytes
-rw-r--r--browser/themes/windows/privatebrowsing-mask-titlebar.pngbin0 -> 370 bytes
-rw-r--r--browser/themes/windows/reload-stop-go-XPVista7.pngbin0 -> 1944 bytes
-rw-r--r--browser/themes/windows/reload-stop-go-XPVista7@2x.pngbin0 -> 3661 bytes
-rw-r--r--browser/themes/windows/reload-stop-go.pngbin0 -> 966 bytes
-rw-r--r--browser/themes/windows/reload-stop-go@2x.pngbin0 -> 1574 bytes
-rw-r--r--browser/themes/windows/sanitizeDialog.css93
-rw-r--r--browser/themes/windows/searchbar.css328
-rw-r--r--browser/themes/windows/setDesktopBackground.css18
-rw-r--r--browser/themes/windows/slowStartup-16.pngbin0 -> 511 bytes
-rw-r--r--browser/themes/windows/social/services-16.pngbin0 -> 876 bytes
-rw-r--r--browser/themes/windows/social/services-64.pngbin0 -> 5612 bytes
-rw-r--r--browser/themes/windows/sync-128.pngbin0 -> 15515 bytes
-rw-r--r--browser/themes/windows/sync-16.pngbin0 -> 923 bytes
-rw-r--r--browser/themes/windows/sync-32.pngbin0 -> 2496 bytes
-rw-r--r--browser/themes/windows/sync-bg.pngbin0 -> 21309 bytes
-rw-r--r--browser/themes/windows/sync-horizontalbar-XPVista7.pngbin0 -> 719 bytes
-rw-r--r--browser/themes/windows/sync-horizontalbar-XPVista7@2x.pngbin0 -> 1702 bytes
-rw-r--r--browser/themes/windows/sync-horizontalbar.pngbin0 -> 535 bytes
-rw-r--r--browser/themes/windows/sync-horizontalbar@2x.pngbin0 -> 1376 bytes
-rw-r--r--browser/themes/windows/sync-notification-24.pngbin0 -> 1117 bytes
-rw-r--r--browser/themes/windows/syncCommon.css55
-rw-r--r--browser/themes/windows/syncProgress-horizontalbar-XPVista7.pngbin0 -> 11892 bytes
-rw-r--r--browser/themes/windows/syncProgress-horizontalbar-XPVista7@2x.pngbin0 -> 27608 bytes
-rw-r--r--browser/themes/windows/syncProgress-horizontalbar.pngbin0 -> 5469 bytes
-rw-r--r--browser/themes/windows/syncProgress-horizontalbar@2x.pngbin0 -> 9668 bytes
-rw-r--r--browser/themes/windows/syncProgress-menuPanel.pngbin0 -> 25426 bytes
-rw-r--r--browser/themes/windows/syncProgress-menuPanel@2x.pngbin0 -> 55953 bytes
-rw-r--r--browser/themes/windows/syncProgress-toolbar-XPVista7.pngbin0 -> 13293 bytes
-rw-r--r--browser/themes/windows/syncProgress-toolbar-XPVista7@2x.pngbin0 -> 33662 bytes
-rw-r--r--browser/themes/windows/syncProgress-toolbar-inverted.pngbin0 -> 14382 bytes
-rw-r--r--browser/themes/windows/syncProgress-toolbar-inverted@2x.pngbin0 -> 32029 bytes
-rw-r--r--browser/themes/windows/syncProgress-toolbar.pngbin0 -> 5535 bytes
-rw-r--r--browser/themes/windows/syncProgress-toolbar@2x.pngbin0 -> 10387 bytes
-rw-r--r--browser/themes/windows/syncQuota.css26
-rw-r--r--browser/themes/windows/syncSetup.css145
-rw-r--r--browser/themes/windows/syncedtabs/sidebar.css132
-rw-r--r--browser/themes/windows/tabbrowser/newtab-XPVista7.svg16
-rw-r--r--browser/themes/windows/tabbrowser/newtab-inverted-XPVista7.svg13
-rw-r--r--browser/themes/windows/tabbrowser/newtab-inverted.svg13
-rw-r--r--browser/themes/windows/tabbrowser/newtab.svg7
-rw-r--r--browser/themes/windows/tabbrowser/tab-active-middle.pngbin0 -> 92 bytes
-rw-r--r--browser/themes/windows/tabbrowser/tab-active-middle@2x.pngbin0 -> 120 bytes
-rw-r--r--browser/themes/windows/tabbrowser/tab-arrow-left-XPVista7.svg13
-rw-r--r--browser/themes/windows/tabbrowser/tab-arrow-left-inverted.svg7
-rw-r--r--browser/themes/windows/tabbrowser/tab-arrow-left.svg6
-rw-r--r--browser/themes/windows/tabbrowser/tab-background-end-preWin10.pngbin0 -> 802 bytes
-rw-r--r--browser/themes/windows/tabbrowser/tab-background-end-preWin10@2x.pngbin0 -> 2823 bytes
-rw-r--r--browser/themes/windows/tabbrowser/tab-background-end.pngbin0 -> 256 bytes
-rw-r--r--browser/themes/windows/tabbrowser/tab-background-end@2x.pngbin0 -> 400 bytes
-rw-r--r--browser/themes/windows/tabbrowser/tab-background-middle-preWin10.pngbin0 -> 122 bytes
-rw-r--r--browser/themes/windows/tabbrowser/tab-background-middle-preWin10@2x.pngbin0 -> 782 bytes
-rw-r--r--browser/themes/windows/tabbrowser/tab-background-middle.pngbin0 -> 75 bytes
-rw-r--r--browser/themes/windows/tabbrowser/tab-background-middle@2x.pngbin0 -> 86 bytes
-rw-r--r--browser/themes/windows/tabbrowser/tab-background-start-preWin10.pngbin0 -> 814 bytes
-rw-r--r--browser/themes/windows/tabbrowser/tab-background-start-preWin10@2x.pngbin0 -> 2940 bytes
-rw-r--r--browser/themes/windows/tabbrowser/tab-background-start.pngbin0 -> 257 bytes
-rw-r--r--browser/themes/windows/tabbrowser/tab-background-start@2x.pngbin0 -> 417 bytes
-rw-r--r--browser/themes/windows/tabbrowser/tab-stroke-end.pngbin0 -> 652 bytes
-rw-r--r--browser/themes/windows/tabbrowser/tab-stroke-end@2x.pngbin0 -> 1467 bytes
-rw-r--r--browser/themes/windows/tabbrowser/tab-stroke-start.pngbin0 -> 658 bytes
-rw-r--r--browser/themes/windows/tabbrowser/tab-stroke-start@2x.pngbin0 -> 1477 bytes
-rw-r--r--browser/themes/windows/tabbrowser/tabDragIndicator.pngbin0 -> 404 bytes
-rw-r--r--browser/themes/windows/toolbarbutton-dropdown-arrow-XPVista7.pngbin0 -> 208 bytes
-rw-r--r--browser/themes/windows/toolbarbutton-dropdown-arrow-inverted.pngbin0 -> 144 bytes
-rw-r--r--browser/themes/windows/urlbar-history-dropmarker-XPVista7.pngbin0 -> 479 bytes
-rw-r--r--browser/themes/windows/urlbar-history-dropmarker-XPVista7@2x.pngbin0 -> 788 bytes
-rw-r--r--browser/themes/windows/urlbar-history-dropmarker.pngbin0 -> 293 bytes
-rw-r--r--browser/themes/windows/urlbar-history-dropmarker@2x.pngbin0 -> 375 bytes
-rw-r--r--browser/themes/windows/urlbar-popup-blocked.pngbin0 -> 744 bytes
-rw-r--r--browser/themes/windows/webRTC-indicator.css116
-rw-r--r--browser/themes/windows/windowsShared.inc13
195 files changed, 6828 insertions, 0 deletions
diff --git a/browser/themes/windows/Info-XP.png b/browser/themes/windows/Info-XP.png
new file mode 100644
index 000000000..c20f66ce6
--- /dev/null
+++ b/browser/themes/windows/Info-XP.png
Binary files differ
diff --git a/browser/themes/windows/Info.png b/browser/themes/windows/Info.png
new file mode 100644
index 000000000..f5dfb65a3
--- /dev/null
+++ b/browser/themes/windows/Info.png
Binary files differ
diff --git a/browser/themes/windows/Privacy-16-XP.png b/browser/themes/windows/Privacy-16-XP.png
new file mode 100644
index 000000000..335febbb3
--- /dev/null
+++ b/browser/themes/windows/Privacy-16-XP.png
Binary files differ
diff --git a/browser/themes/windows/Privacy-16.png b/browser/themes/windows/Privacy-16.png
new file mode 100644
index 000000000..ff0c565a8
--- /dev/null
+++ b/browser/themes/windows/Privacy-16.png
Binary files differ
diff --git a/browser/themes/windows/Toolbar-XP.png b/browser/themes/windows/Toolbar-XP.png
new file mode 100644
index 000000000..dff60911f
--- /dev/null
+++ b/browser/themes/windows/Toolbar-XP.png
Binary files differ
diff --git a/browser/themes/windows/Toolbar-aero.png b/browser/themes/windows/Toolbar-aero.png
new file mode 100644
index 000000000..b191ce2aa
--- /dev/null
+++ b/browser/themes/windows/Toolbar-aero.png
Binary files differ
diff --git a/browser/themes/windows/Toolbar-aero@2x.png b/browser/themes/windows/Toolbar-aero@2x.png
new file mode 100644
index 000000000..033d87dff
--- /dev/null
+++ b/browser/themes/windows/Toolbar-aero@2x.png
Binary files differ
diff --git a/browser/themes/windows/Toolbar-inverted.png b/browser/themes/windows/Toolbar-inverted.png
new file mode 100644
index 000000000..2311803d8
--- /dev/null
+++ b/browser/themes/windows/Toolbar-inverted.png
Binary files differ
diff --git a/browser/themes/windows/Toolbar-inverted@2x.png b/browser/themes/windows/Toolbar-inverted@2x.png
new file mode 100644
index 000000000..289c57380
--- /dev/null
+++ b/browser/themes/windows/Toolbar-inverted@2x.png
Binary files differ
diff --git a/browser/themes/windows/Toolbar-lunaSilver.png b/browser/themes/windows/Toolbar-lunaSilver.png
new file mode 100644
index 000000000..30c425c26
--- /dev/null
+++ b/browser/themes/windows/Toolbar-lunaSilver.png
Binary files differ
diff --git a/browser/themes/windows/Toolbar-win8.png b/browser/themes/windows/Toolbar-win8.png
new file mode 100644
index 000000000..7e06de7f1
--- /dev/null
+++ b/browser/themes/windows/Toolbar-win8.png
Binary files differ
diff --git a/browser/themes/windows/Toolbar-win8@2x.png b/browser/themes/windows/Toolbar-win8@2x.png
new file mode 100644
index 000000000..6b205ea6f
--- /dev/null
+++ b/browser/themes/windows/Toolbar-win8@2x.png
Binary files differ
diff --git a/browser/themes/windows/Toolbar.png b/browser/themes/windows/Toolbar.png
new file mode 100644
index 000000000..4ae11be4d
--- /dev/null
+++ b/browser/themes/windows/Toolbar.png
Binary files differ
diff --git a/browser/themes/windows/Toolbar@2x.png b/browser/themes/windows/Toolbar@2x.png
new file mode 100644
index 000000000..33c63fdbb
--- /dev/null
+++ b/browser/themes/windows/Toolbar@2x.png
Binary files differ
diff --git a/browser/themes/windows/aboutSessionRestore-window-icon.png b/browser/themes/windows/aboutSessionRestore-window-icon.png
new file mode 100644
index 000000000..c2d15ad7b
--- /dev/null
+++ b/browser/themes/windows/aboutSessionRestore-window-icon.png
Binary files differ
diff --git a/browser/themes/windows/aboutSyncTabs.css b/browser/themes/windows/aboutSyncTabs.css
new file mode 100644
index 000000000..4cedad649
--- /dev/null
+++ b/browser/themes/windows/aboutSyncTabs.css
@@ -0,0 +1,101 @@
+/* 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/. */
+
+#tabs-display,
+#tabsList {
+ background-color: transparent;
+ -moz-appearance: none;
+ margin: 0;
+}
+
+#tabsList {
+ width: 100%;
+}
+
+#tabs-display {
+ background: #fff url(chrome://browser/skin/sync-bg.png) repeat-x center -80px;
+}
+
+#headers {
+ background: url(chrome://browser/skin/sync-32.png) no-repeat;
+ margin-top: 4px;
+ width: 45em;
+ height: 32px;
+ margin-inline-start: 2em;
+ margin-inline-end: 2em;
+}
+
+#tabsListHeading {
+ font-size: 140%;
+ font-weight: bold;
+ margin-inline-start: 40px;
+}
+
+richlistitem {
+ margin-inline-end: 2em;
+}
+
+richlistitem[selected="true"],
+richlistitem:focus {
+ outline-style: none;
+}
+
+richlistitem[type="tab"] {
+ min-height: 3em;
+ border: #999999 1px solid !important;
+ padding: 2px 5px;
+ margin-bottom: 4px;
+ margin-inline-start: 4em;
+ border-radius: 6px;
+ background-color: menu;
+ width: 44em;
+ opacity: 0.9;
+ box-shadow:
+ inset rgba(255, 255, 255, 0.5) 0 1px 0px,
+ inset rgba(0, 0, 0, 0.1) 0 -2px 0px,
+ rgba(0, 0, 0, 0.1) 0px 1px 0px;
+}
+
+richlistitem[type="tab"][selected="true"] {
+ background-color: -moz-MenuHover;
+}
+
+richlistitem[type="client"] {
+ min-height: 2em;
+ color: #000000;
+ margin-inline-start: 2em;
+ margin-top: 2px;
+ margin-bottom: 3px;
+ width: 42em;
+ border-radius: 6px;
+ background-color: transparent;
+ -moz-user-focus: ignore !important;
+}
+richlistitem.mobile[type="client"] {
+ list-style-image: url("chrome://browser/skin/sync-mobileIcon.svg#icon");
+}
+richlistitem.desktop[type="client"] {
+ list-style-image: url("chrome://browser/skin/sync-desktopIcon.svg#icon");
+}
+
+.title,
+.clientName {
+ color: #000000;
+ font-size: 1.1em;
+}
+
+.title[selected="true"],
+.url[selected="true"] {
+ color: inherit;
+}
+
+.url {
+ color: -moz-nativehyperlinktext;
+ font-size: 0.95em;
+}
+
+.tabIcon {
+ padding-inline-start: 2px;
+ padding-top: 2px;
+}
diff --git a/browser/themes/windows/actionicon-tab-XPVista7.png b/browser/themes/windows/actionicon-tab-XPVista7.png
new file mode 100644
index 000000000..8437c7655
--- /dev/null
+++ b/browser/themes/windows/actionicon-tab-XPVista7.png
Binary files differ
diff --git a/browser/themes/windows/actionicon-tab.png b/browser/themes/windows/actionicon-tab.png
new file mode 100644
index 000000000..52169a480
--- /dev/null
+++ b/browser/themes/windows/actionicon-tab.png
Binary files differ
diff --git a/browser/themes/windows/actionicon-tab@2x.png b/browser/themes/windows/actionicon-tab@2x.png
new file mode 100644
index 000000000..6a4be3741
--- /dev/null
+++ b/browser/themes/windows/actionicon-tab@2x.png
Binary files differ
diff --git a/browser/themes/windows/browser-aero.css b/browser/themes/windows/browser-aero.css
new file mode 100644
index 000000000..5ff9d8250
--- /dev/null
+++ b/browser/themes/windows/browser-aero.css
@@ -0,0 +1,473 @@
+/* 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/. */
+
+%define glassActiveBorderColor rgb(37, 44, 51)
+%define glassInactiveBorderColor rgb(102, 102, 102)
+
+@media not all and (-moz-windows-classic) {
+ #main-window[sizemode="normal"] > #tab-view-deck > #browser-panel > #navigator-toolbox > #toolbar-menubar {
+ margin-top: 1px;
+ }
+}
+
+@media (-moz-windows-default-theme) {
+ .sidebar-header,
+ #sidebar-header {
+ -moz-appearance: none;
+ border-bottom: none;
+ text-shadow: none;
+ }
+
+ .sidebar-title,
+ #sidebar-title {
+ font-weight: bold;
+ }
+
+ .sidebar-splitter {
+ border: 0;
+ border-inline-end: 1px solid ThreeDLightShadow;
+ min-width: 0;
+ width: 3px;
+ background-color: transparent;
+ margin-inline-start: -3px;
+ position: relative;
+ }
+
+ #appcontent ~ .sidebar-splitter {
+ border-inline-start: 1px solid ThreeDLightShadow;
+ border-inline-end: none;
+ margin-inline-start: 0;
+ margin-inline-end: -3px;
+ }
+
+ .menu-accel,
+ .menu-iconic-accel {
+ color: graytext;
+ }
+
+ @media (-moz-os-version: windows-vista),
+ (-moz-os-version: windows-win7) {
+ .sidebar-header:not(:-moz-lwtheme),
+ #sidebar-header:not(:-moz-lwtheme) {
+ background-color: #EEF3FA;
+ }
+
+ .sidebar-splitter,
+ #appcontent ~ .sidebar-splitter {
+ border-color: #A9B7C9;
+ }
+
+ #navigator-toolbox > toolbar:not(#toolbar-menubar):not(#TabsToolbar):not(:-moz-lwtheme),
+ #browser-bottombox:not(:-moz-lwtheme),
+ .browserContainer > findbar {
+ background-color: @customToolbarColor@;
+ }
+
+ .tab-background-middle[selected=true]:not(:-moz-lwtheme) {
+ background-color: @customToolbarColor@;
+ }
+ }
+}
+
+@media (-moz-windows-compositor) {
+ #main-window {
+ -moz-appearance: -moz-win-glass;
+ }
+
+
+ /* On win10, if we don't set this on the entire browser container including
+ * the sidebar, if the sidebar is open the accent color bleeds through in
+ * the titlebar */
+ #browser {
+ -moz-appearance: -moz-win-exclude-glass;
+ }
+
+ @media not all and (-moz-os-version: windows-vista) {
+ @media not all and (-moz-os-version: windows-win7) {
+ @media not all and (-moz-os-version: windows-win8) {
+ @media (-moz-windows-default-theme) {
+ #main-window {
+ background-color: hsl(0, 0%, 78%);
+ }
+
+ :root[tabsintitlebar] .tab-label:-moz-window-inactive {
+ /* Calculated to match the opacity change of Windows Explorer
+ titlebar text change for inactive windows. */
+ opacity: .6;
+ }
+ }
+
+ @media not all and (-moz-windows-default-theme) {
+ #main-window {
+ background-color: transparent;
+ }
+ }
+
+ #titlebar-buttonbox,
+ .titlebar-button {
+ -moz-appearance: none !important;
+ }
+
+ .titlebar-button {
+ border: none;
+ margin: 0 !important;
+ padding: 10px 17px;
+ }
+
+ #main-window[sizemode=maximized] .titlebar-button {
+ padding-top: 8px;
+ padding-bottom: 8px;
+ }
+
+ .titlebar-button > .toolbarbutton-icon {
+ width: 12px;
+ height: 12px;
+ }
+
+ #titlebar-min {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#minimize);
+ }
+
+ #titlebar-max {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#maximize);
+ }
+
+ #main-window[sizemode="maximized"] #titlebar-max {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#restore);
+ }
+
+ #titlebar-close {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#close);
+ }
+ #titlebar-close:hover {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#close-white);
+ }
+
+ #titlebar-min:-moz-lwtheme {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#minimize-themes);
+ }
+ #titlebar-max:-moz-lwtheme {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#maximize-themes);
+ }
+ #main-window[sizemode="maximized"] #titlebar-max:-moz-lwtheme {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#restore-themes);
+ }
+ #titlebar-close:-moz-lwtheme {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#close-themes);
+ }
+
+
+ /* the 12px image renders a 10px icon, and the 10px upscaled gets rounded to 12.5, which
+ * rounds up to 13px, which makes the icon one pixel too big on 1.25dppx. Fix: */
+ @media (min-resolution: 1.20dppx) and (max-resolution: 1.45dppx) {
+ .titlebar-button > .toolbarbutton-icon {
+ width: 11.5px;
+ height: 11.5px;
+ }
+ }
+
+ /* 175% dpi should result in the same device pixel sizes as 150% dpi. */
+ @media (min-resolution: 1.70dppx) and (max-resolution: 1.95dppx) {
+ .titlebar-button {
+ padding-left: 14.1px;
+ padding-right: 14.1px;
+ }
+
+ .titlebar-button > .toolbarbutton-icon {
+ width: 10.8px;
+ height: 10.8px;
+ }
+ }
+
+ /* 225% dpi should result in the same device pixel sizes as 200% dpi. */
+ @media (min-resolution: 2.20dppx) and (max-resolution: 2.45dppx) {
+ .titlebar-button {
+ padding-left: 15.3333px;
+ padding-right: 15.3333px;
+ }
+
+ .titlebar-button > .toolbarbutton-icon {
+ width: 10.8px;
+ height: 10.8px;
+ }
+ }
+
+ /* 275% dpi should result in the same device pixel sizes as 250% dpi. */
+ @media (min-resolution: 2.70dppx) and (max-resolution: 2.95dppx) {
+ /* NB: todo: this should also change padding on the buttons
+ * themselves, but without a device to test this on, it's
+ * impossible to know by how much. */
+ .titlebar-button > .toolbarbutton-icon {
+ width: 10.8px;
+ height: 10.8px;
+ }
+ }
+
+ @media (-moz-windows-default-theme) {
+ .titlebar-button:hover {
+ background-color: hsla(0, 0%, 0%, .12);
+ }
+
+ .titlebar-button:hover:active {
+ background-color: hsla(0, 0%, 0%, .22);
+ }
+
+ .titlebar-button:not(:hover) > .toolbarbutton-icon:-moz-window-inactive {
+ opacity: 0.5;
+ }
+
+ #titlebar-close:hover {
+ background-color: hsl(355, 86%, 49%);
+ }
+
+ #titlebar-close:hover:active {
+ background-color: hsl(355, 82%, 69%);
+ }
+ }
+ @media not all and (-moz-windows-default-theme) {
+ .titlebar-button {
+ background-color: -moz-field;
+ }
+ .titlebar-button:hover {
+ background-color: Highlight;
+ }
+
+ #titlebar-min {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#minimize-highcontrast);
+ }
+ #titlebar-min:hover {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#minimize-highcontrast-hover);
+ }
+
+ #titlebar-max {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#maximize-highcontrast);
+ }
+ #titlebar-max:hover {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#maximize-highcontrast-hover);
+ }
+
+ #main-window[sizemode="maximized"] #titlebar-max {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#restore-highcontrast);
+ }
+ #main-window[sizemode="maximized"] #titlebar-max:hover {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#restore-highcontrast-hover);
+ }
+
+ #titlebar-close {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#close-highcontrast);
+ }
+ #titlebar-close:hover {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#close-highcontrast-hover);
+ }
+ }
+ }
+ }
+ }
+
+ @media (-moz-os-version: windows-vista),
+ (-moz-os-version: windows-win7),
+ (-moz-os-version: windows-win8) {
+ #main-window[sizemode="maximized"] #titlebar-buttonbox {
+ margin-inline-end: 3px;
+ }
+
+ #main-window {
+ background-color: transparent;
+ -moz-appearance: -moz-win-borderless-glass;
+ }
+
+ /* These should be hidden w/ glass enabled. Windows draws its own buttons. */
+ .titlebar-button {
+ display: none;
+ }
+
+ /* The borders on the glass frame are ours, and inside #browser, and on
+ * vista and win7 we want to make sure they are "glassy", so we can't use
+ * #browser as the exclude-glass container. We use #appcontent instead. */
+ #browser {
+ -moz-appearance: none;
+ }
+
+ #appcontent {
+ -moz-appearance: -moz-win-exclude-glass;
+ }
+ }
+
+ @media (-moz-os-version: windows-win8) {
+ /* Artificially draw window borders that are covered by lwtheme, see bug 591930.
+ * Borders for vista/win7 are below, win10 doesn't need them. */
+ #main-window[sizemode="normal"] > #tab-view-deck > #browser-panel:-moz-lwtheme {
+ border-top: 1px solid @toolbarShadowColor@;
+ }
+ }
+
+ @media (-moz-windows-default-theme) {
+ #toolbar-menubar:not(:-moz-lwtheme),
+ #TabsToolbar:not(:-moz-lwtheme) {
+ color: black;
+ }
+
+ #main-menubar > menu:not(:-moz-lwtheme) {
+ color: inherit;
+ }
+
+ /* Use a different color only on Windows 8 and higher for inactive windows.
+ * On aero, the menubar fog disappears for inactive windows, and renders gray
+ * illegible.
+ */
+ @media not all and (-moz-os-version: windows-vista) {
+ @media not all and (-moz-os-version: windows-win7) {
+ #toolbar-menubar:not(:-moz-lwtheme):-moz-window-inactive {
+ color: ThreeDShadow;
+ }
+ }
+ }
+ }
+
+ #main-window[darkwindowframe="true"] #toolbar-menubar:not(:-moz-lwtheme):not(:-moz-window-inactive),
+ #main-window[darkwindowframe="true"] #TabsToolbar:not(:-moz-lwtheme):not(:-moz-window-inactive) {
+ color: white;
+ }
+
+ /* Show borders on vista through win8, but not on win10 and later: */
+ @media (-moz-os-version: windows-vista),
+ (-moz-os-version: windows-win7),
+ (-moz-os-version: windows-win8) {
+ /* Vertical toolbar border */
+ #main-window:not([customizing])[sizemode=normal] #navigator-toolbox > toolbar:not(#toolbar-menubar):not(#TabsToolbar):not(:-moz-lwtheme),
+ #main-window:not([customizing])[sizemode=normal] #navigator-toolbox:-moz-lwtheme,
+ #main-window[customizing] #navigator-toolbox > toolbar:not(#toolbar-menubar):not(#TabsToolbar) {
+ border-left: 1px solid @toolbarShadowColor@;
+ border-right: 1px solid @toolbarShadowColor@;
+ background-clip: padding-box;
+ }
+
+ #main-window:not([customizing])[sizemode=normal] #navigator-toolbox:not(:-moz-lwtheme)::after,
+ #main-window[customizing] #navigator-toolbox::after {
+ box-shadow: 1px 0 0 @toolbarShadowColor@, -1px 0 0 @toolbarShadowColor@;
+ margin-left: 1px;
+ margin-right: 1px;
+ }
+
+ #main-window[sizemode=normal] #browser-border-start,
+ #main-window[sizemode=normal] #browser-border-end {
+ display: -moz-box;
+ background-color: @toolbarShadowColor@;
+ width: 1px;
+ }
+
+ #main-window[sizemode=normal] #browser-bottombox {
+ border: 1px solid @toolbarShadowColor@;
+ border-top-style: none;
+ background-clip: padding-box;
+ }
+ }
+
+ #main-window[sizemode=normal] #TabsToolbar {
+ padding-left: 1px;
+ padding-right: 1px;
+ }
+
+ #appcontent:not(:-moz-lwtheme) {
+ background-color: -moz-dialog;
+ }
+}
+
+@media (-moz-windows-glass) {
+ #main-window[sizemode=normal] #nav-bar {
+ border-top-left-radius: 2.5px;
+ border-top-right-radius: 2.5px;
+ }
+
+ #main-window[sizemode=fullscreen]:not(:-moz-lwtheme) {
+ -moz-appearance: none;
+ background-color: #556;
+ }
+
+ #toolbar-menubar:not(:-moz-lwtheme) {
+ text-shadow: 0 0 .5em white, 0 0 .5em white, 0 1px 0 rgba(255,255,255,.4);
+ }
+
+ #main-menubar:not(:-moz-lwtheme):not(:-moz-window-inactive) {
+ background-color: rgba(255,255,255,.5);
+ color: black;
+ border-radius: 4px;
+ }
+
+ /* Artificially draw window borders that are covered by lwtheme, see bug 591930.
+ * We use a different border for win8, and this is not necessary on win10+ */
+ #main-window[sizemode="normal"] > #tab-view-deck > #browser-panel:-moz-lwtheme {
+ border-top: 2px solid;
+ -moz-border-top-colors: @glassActiveBorderColor@ rgba(255,255,255,.6);
+ }
+
+ #main-window[sizemode="normal"] > #tab-view-deck > #browser-panel:-moz-lwtheme:-moz-window-inactive {
+ -moz-border-top-colors: @glassInactiveBorderColor@ rgba(255,255,255,.6);
+ }
+
+ /* Glass Fog */
+
+ #TabsToolbar:not(:-moz-lwtheme) {
+ position: relative;
+ }
+
+ #TabsToolbar:not(:-moz-lwtheme)::after {
+ /* Because we use placeholders for window controls etc. in the tabstrip,
+ * and position those with ordinal attributes, and because our layout code
+ * expects :before/:after nodes to come first/last in the frame list,
+ * we have to reorder this element to come last, hence the
+ * ordinal group value (see bug 853415). */
+ -moz-box-ordinal-group: 1001;
+ box-shadow: 0 0 30px 30px rgba(174,189,204,0.85);
+ content: "";
+ display: -moz-box;
+ height: 0;
+ margin: 0 60px; /* (30px + 30px) from box-shadow */
+ position: absolute;
+ pointer-events: none;
+ top: 50%;
+ width: -moz-available;
+ z-index: -1;
+ }
+
+ /* Need to constrain the glass fog to avoid overlapping layers, see bug 886281. */
+ #navigator-toolbox:not(:-moz-lwtheme) {
+ overflow: -moz-hidden-unscrollable;
+ }
+
+ #main-window[sizemode=normal] .tabbrowser-arrowscrollbox > .arrowscrollbox-scrollbox > .scrollbox-innerbox:not(:-moz-lwtheme) {
+ position: relative;
+ }
+
+ /* End Glass Fog */
+}
+
+/* Aero Basic */
+@media not all and (-moz-windows-compositor) {
+ @media (-moz-windows-default-theme) {
+ #main-window {
+ background-color: rgb(185,209,234);
+ }
+ #main-window:-moz-window-inactive {
+ background-color: rgb(215,228,242);
+ }
+
+ /* Render a window top border for lwthemes: */
+ #main-window[tabsintitlebar][sizemode="normal"] > #tab-view-deck > #browser-panel:-moz-lwtheme {
+ background-image: linear-gradient(to bottom,
+ @glassActiveBorderColor@ 0, @glassActiveBorderColor@ 1px,
+ rgba(255,255,255,.6) 1px, rgba(255,255,255,.6) 2px, transparent 2px);
+ }
+
+ #main-window[tabsintitlebar][sizemode="normal"] > #tab-view-deck > #browser-panel:-moz-lwtheme:-moz-window-inactive {
+ background-image: linear-gradient(to bottom,
+ @glassInactiveBorderColor@ 0, @glassInactiveBorderColor@ 1px,
+ rgba(255,255,255,.6) 1px, rgba(255,255,255,.6) 2px, transparent 2px);
+ }
+ }
+
+ #print-preview-toolbar:not(:-moz-lwtheme) {
+ -moz-appearance: -moz-win-browsertabbar-toolbox;
+ }
+}
diff --git a/browser/themes/windows/browser-lightweightTheme.css b/browser/themes/windows/browser-lightweightTheme.css
new file mode 100644
index 000000000..d2a1b840c
--- /dev/null
+++ b/browser/themes/windows/browser-lightweightTheme.css
@@ -0,0 +1,39 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+%include windowsShared.inc
+%filter substitution
+
+/*
+ * LightweightThemeListener will append the current lightweight theme's header
+ * image to the background-image for each of the following rulesets.
+ */
+
+/* Lightweight theme on tabs */
+#tabbrowser-tabs:not([movingtab]) > .tabbrowser-tab > .tab-stack > .tab-background > .tab-background-start[selected=true]:-moz-lwtheme::before,
+#tabbrowser-tabs:not([movingtab]) > .tabbrowser-tab > .tab-stack > .tab-background > .tab-background-end[selected=true]:-moz-lwtheme::before {
+ background-attachment: scroll, fixed;
+ background-color: transparent;
+ background-image: @fgTabTextureLWT@;/*, lwtHeader;*/
+ background-position: 0 0, right top;
+ background-repeat: repeat-x, no-repeat;
+}
+
+#tabbrowser-tabs:not([movingtab]) > .tabbrowser-tab > .tab-stack > .tab-background > .tab-background-middle[selected=true]:-moz-lwtheme {
+ background-attachment: scroll, scroll, fixed;
+ background-color: transparent;
+ background-image: url(chrome://browser/skin/tabbrowser/tab-active-middle.png),
+ @fgTabTextureLWT@;/*,
+ lwtHeader;*/
+ background-position: 0 0, 0 0, right top;
+ background-repeat: repeat-x, repeat-x, no-repeat;
+}
+
+@media (min-resolution: 1.25dppx) {
+ #tabbrowser-tabs:not([movingtab]) > .tabbrowser-tab > .tab-stack > .tab-background > .tab-background-middle[selected=true]:-moz-lwtheme {
+ background-image: url(chrome://browser/skin/tabbrowser/tab-active-middle@2x.png),
+ @fgTabTextureLWT@;/*,
+ lwtHeader;*/
+ }
+}
diff --git a/browser/themes/windows/browser.css b/browser/themes/windows/browser.css
new file mode 100644
index 000000000..2de5a6545
--- /dev/null
+++ b/browser/themes/windows/browser.css
@@ -0,0 +1,2711 @@
+/* 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/. */
+
+@import url("chrome://global/skin/");
+
+@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
+@namespace html url("http://www.w3.org/1999/xhtml");
+@namespace svg url("http://www.w3.org/2000/svg");
+
+%include ../shared/browser.inc
+%include windowsShared.inc
+%filter substitution
+%define toolbarShadowColor hsla(209,67%,12%,0.35)
+%define forwardTransitionLength 150ms
+%define conditionalForwardWithUrlbar window:not([chromehidden~="toolbar"]) #urlbar-wrapper
+
+:root {
+ --space-above-tabbar: 15px;
+
+ --backbutton-urlbar-overlap: 6px;
+
+ /* icon width + border + horizontal padding (without the overlap from backbutton-urlbar-overlap) */
+ --forwardbutton-width: 25px;
+
+ --toolbarbutton-vertical-inner-padding: 2px;
+ --toolbarbutton-vertical-outer-padding: 8px;
+
+ --toolbarbutton-hover-background: rgba(0,0,0,.1);
+ --toolbarbutton-hover-bordercolor: rgba(0,0,0,.2);
+ --toolbarbutton-hover-boxshadow: none;
+
+ --toolbarbutton-active-background: rgba(0,0,0,.15);
+ --toolbarbutton-active-bordercolor: rgba(0,0,0,.3);
+ --toolbarbutton-active-boxshadow: 0 0 0 1px rgba(0,0,0,.15) inset;
+
+ --toolbarbutton-checkedhover-backgroundcolor: rgba(0,0,0,.1);
+
+ --urlbar-dropmarker-url: url("chrome://browser/skin/urlbar-history-dropmarker.png");
+ --urlbar-dropmarker-region: rect(0px, 11px, 14px, 0px);
+ --urlbar-dropmarker-hover-region: rect(0px, 22px, 14px, 11px);
+ --urlbar-dropmarker-active-region: rect(0px, 33px, 14px, 22px);
+ --urlbar-dropmarker-2x-url: url("chrome://browser/skin/urlbar-history-dropmarker@2x.png");
+ --urlbar-dropmarker-2x-region: rect(0, 22px, 28px, 0);
+ --urlbar-dropmarker-hover-2x-region: rect(0, 44px, 28px, 22px);
+ --urlbar-dropmarker-active-2x-region: rect(0, 66px, 28px, 44px);
+
+ --panel-separator-color: ThreeDLightShadow;
+ --arrowpanel-dimmed: hsla(0,0%,80%,.3);
+ --arrowpanel-dimmed-further: hsla(0,0%,80%,.45);
+ --arrowpanel-dimmed-even-further: hsla(0,0%,80%,.8);
+
+ --urlbar-separator-color: ThreeDLightShadow;
+}
+
+@media (-moz-windows-default-theme) {
+ :root {
+ --panel-separator-color: hsla(210,4%,10%,.14);
+ }
+}
+
+toolbar[brighttext] {
+ --toolbarbutton-hover-background: rgba(255,255,255,.25);
+ --toolbarbutton-hover-bordercolor: rgba(255,255,255,.5);
+
+ --toolbarbutton-active-background: rgba(255,255,255,.4);
+ --toolbarbutton-active-bordercolor: rgba(255,255,255,.7);
+ --toolbarbutton-active-boxshadow: 0 0 0 1px rgba(255,255,255,.4) inset;
+
+ --toolbarbutton-checkedhover-backgroundcolor: rgba(255,255,255,.3);
+}
+
+toolbar:-moz-lwtheme {
+ --toolbarbutton-hover-background: rgba(255,255,255,.25);
+ --toolbarbutton-hover-bordercolor: rgba(0,0,0,.2);
+
+ --toolbarbutton-active-background: rgba(70%,70%,70%,.25);
+ --toolbarbutton-active-bordercolor: rgba(0,0,0,.3);
+ --toolbarbutton-active-boxshadow: 0 0 2px rgba(0,0,0,.6) inset;
+
+ --toolbarbutton-checkedhover-backgroundcolor: rgba(85%,85%,85%,.25);
+}
+
+#menubar-items {
+ -moz-box-orient: vertical; /* for flex hack */
+}
+
+#main-menubar {
+ -moz-box-flex: 1; /* make menu items expand to fill toolbar height */
+}
+
+/* Hides the titlebar-placeholder underneath the window caption buttons when we
+ are not autohiding the menubar. */
+#toolbar-menubar:not([autohide="true"]) + #TabsToolbar > .titlebar-placeholder[type="caption-buttons"] {
+ display: none;
+}
+
+/* We want a 4px gap between the TabsToolbar and the toolbar-menubar when the
+ toolbar-menu is displayed, and a 16px gap when it is not. 1px is taken care
+ of by the (light) outer shadow of the tab, the remaining 3/15 are these margins. */
+#toolbar-menubar:not([autohide=true]) ~ #TabsToolbar:not([inFullscreen]),
+#toolbar-menubar[autohide=true]:not([inactive]) ~ #TabsToolbar:not([inFullscreen]) {
+ margin-top: 3px;
+}
+
+#main-window[tabsintitlebar][sizemode="normal"]:not([inFullscreen])[chromehidden~="menubar"] #toolbar-menubar ~ #TabsToolbar,
+#main-window[tabsintitlebar][sizemode="normal"]:not([inFullscreen]) #toolbar-menubar[autohide="true"][inactive] ~ #TabsToolbar {
+ margin-top: var(--space-above-tabbar);
+}
+
+#main-window[customize-entered][tabsintitlebar]:not([inFullscreen]) #toolbar-menubar[customizing-dragovertarget].customization-target::before,
+#main-window[customize-entered][tabsintitlebar]:not([inFullscreen]) #TabsToolbar[customizing-dragovertarget].customization-target::before,
+#main-window[customize-entered][tabsintitlebar]:not([inFullscreen]) #toolbar-menubar.customization-target:hover::before,
+#main-window[customize-entered][tabsintitlebar]:not([inFullscreen]) #TabsToolbar.customization-target:hover::before {
+ outline-color: CaptionText;
+}
+
+#navigator-toolbox {
+ -moz-appearance: none;
+ background-color: transparent;
+ border-top: none;
+}
+
+#navigator-toolbox::after {
+ content: "";
+ display: -moz-box;
+ -moz-box-ordinal-group: 101; /* tabs toolbar is 100 */
+ border-bottom: 1px solid ThreeDShadow;
+}
+
+@media (-moz-windows-default-theme) {
+ @media (-moz-os-version: windows-vista),
+ (-moz-os-version: windows-win7) {
+ #navigator-toolbox::after {
+ border-bottom-color: #aabccf;
+ }
+ }
+
+ @media (-moz-os-version: windows-win8),
+ (-moz-os-version: windows-win10) {
+ #navigator-toolbox::after {
+ border-bottom-color: #c2c2c2;
+ }
+ }
+}
+
+#navigator-toolbox:-moz-lwtheme::after {
+ border-bottom-color: rgba(0,0,0,.3);
+}
+
+#navigator-toolbox > toolbar {
+ -moz-appearance: none;
+ border-style: none;
+}
+
+#navigator-toolbox > toolbar:not(#toolbar-menubar):not(#TabsToolbar) {
+ background-clip: padding-box;
+ background-image: linear-gradient(@toolbarHighlight@, @toolbarHighlight@);
+}
+
+@media (-moz-os-version: windows-xp),
+ (-moz-os-version: windows-vista),
+ (-moz-os-version: windows-win7) {
+ #nav-bar {
+ background-image: linear-gradient(@toolbarHighlight@, transparent) !important;
+ }
+
+ #navigator-toolbox > toolbar:not(#toolbar-menubar):not(#TabsToolbar):not(#nav-bar) {
+ background-image: none;
+ }
+}
+
+#navigator-toolbox > toolbar:not(#toolbar-menubar):not(#TabsToolbar):not(:-moz-lwtheme) {
+ background-color: -moz-Dialog;
+}
+
+#navigator-toolbox > toolbar:not(#toolbar-menubar):not(#TabsToolbar):not(#nav-bar):not(#addon-bar) {
+ overflow: -moz-hidden-unscrollable;
+ max-height: 4em;
+ transition: min-height 170ms ease-out, max-height 170ms ease-out;
+ padding: 0 5px;
+}
+
+#navigator-toolbox > toolbar:not(#toolbar-menubar):not(#TabsToolbar):not(#nav-bar):not(#addon-bar)[collapsed=true] {
+ min-height: 0.1px;
+ max-height: 0;
+ transition: min-height 170ms ease-out, max-height 170ms ease-out, visibility 170ms linear;
+}
+
+@media not all and (-moz-windows-compositor),
+ not all and (-moz-windows-default-theme) {
+ /* Please keep the menu text colors in this media block in sync with
+ * devedition.css, minus the :not(:-moz-lwtheme) condition - see Bug 1165718.
+ */
+ #main-window[tabsintitlebar]:not([inFullscreen]) #toolbar-menubar:not(:-moz-lwtheme),
+ #main-window[tabsintitlebar]:not([inFullscreen]) #TabsToolbar:not(:-moz-lwtheme) {
+ color: CaptionText;
+ }
+
+ #main-window[tabsintitlebar]:not([inFullscreen]) #toolbar-menubar:not(:-moz-lwtheme):-moz-window-inactive,
+ #main-window[tabsintitlebar]:not([inFullscreen]) #TabsToolbar:not(:-moz-lwtheme):-moz-window-inactive {
+ color: InactiveCaptionText;
+ }
+}
+
+@media not all and (-moz-windows-compositor) {
+ #main-window[tabsintitlebar] #titlebar:-moz-lwtheme {
+ visibility: hidden;
+ }
+
+ #main-window[tabsintitlebar] #titlebar-content:-moz-lwtheme {
+ -moz-binding: url("chrome://global/content/bindings/general.xml#windowdragbox");
+ visibility: visible;
+ }
+
+ /* Top-level menu appearance has transparent background, so the text color
+ needs to be inherited from our custom menubar too. */
+ #main-window[tabsintitlebar] #main-menubar > menu:not(:-moz-lwtheme) {
+ color: inherit;
+ }
+}
+
+/**
+ * In the classic themes, the titlebar has a horizontal gradient, which is
+ * problematic for reading the text of background tabs when they're in the
+ * titlebar. We side-step this issue by layering our own background underneath
+ * the tabs. Unfortunately, this requires a bunch of positioning in order to get
+ * text and icons to not appear fuzzy.
+ */
+@media (-moz-windows-classic) {
+ /**
+ * We need to bump up the z-index of the tabbrowser-tabs so that they appear
+ * over top of the fog we're applying for classic themes, as well as the nav-bar.
+ */
+ #main-window[tabsintitlebar]:not([sizemode=fullscreen]) #tabbrowser-tabs {
+ position: relative;
+ z-index: 2;
+ }
+
+ #main-window[tabsintitlebar] #TabsToolbar:not(:-moz-lwtheme) {
+ position: relative;
+ }
+
+ #main-window[tabsintitlebar]:not([sizemode=fullscreen]) #TabsToolbar:not(:-moz-lwtheme)::after {
+ /* Because we use placeholders for window controls etc. in the tabstrip,
+ * and position those with ordinal attributes, and because our layout code
+ * expects :before/:after nodes to come first/last in the frame list,
+ * we have to reorder this element to come last, hence the
+ * ordinal group value (see bug 853415). */
+ -moz-box-ordinal-group: 1001;
+ box-shadow: 0 0 50px 8px ActiveCaption;
+ content: "";
+ display: -moz-box;
+ height: 0;
+ margin: 0 50px;
+ position: absolute;
+ pointer-events: none;
+ top: 100%;
+ width: -moz-available;
+ }
+
+ #main-window[tabsintitlebar]:not([sizemode=fullscreen]) #TabsToolbar:not(:-moz-lwtheme):-moz-window-inactive::after {
+ box-shadow: 0 0 50px 8px InactiveCaption;
+ }
+
+ #main-window[tabsintitlebar]:not([sizemode=fullscreen]) toolbar[customindex]:not(:-moz-lwtheme),
+ #main-window[tabsintitlebar]:not([sizemode=fullscreen]) #PersonalToolbar:not(:-moz-lwtheme) {
+ position: relative;
+ }
+
+ /* Need to constrain the box shadow fade to avoid overlapping layers, see bug 886281. */
+ #main-window[tabsintitlebar]:not([sizemode=fullscreen]) #navigator-toolbox:not(:-moz-lwtheme) {
+ overflow: -moz-hidden-unscrollable;
+ }
+
+ /**
+ * When the tabstrip is overflowed, pinned tab separators get position: absolute,
+ * which makes the pinned tab separators leak over the nav-bar highlight. Forcing
+ * the element to snap to the bottom of the client rect works around the issue.
+ */
+ #main-window[tabsintitlebar] #tabbrowser-tabs[positionpinnedtabs] > .tabbrowser-tab[pinned]::before {
+ bottom: 0px;
+ }
+
+ #main-window[tabsintitlebar]:not([sizemode=fullscreen]) #TabsToolbar .toolbarbutton-1 {
+ position: relative;
+ z-index: 1;
+ }
+
+ /**
+ * With the tabbrowser-tabs element z-index'd above the nav-bar, we now get the
+ * scrollbox button borders leaking over the nav-bar highlight. This transparent bottom
+ * border forces the scrollbox button borders to terminate a pixel early, working
+ * around the issue.
+ */
+ #main-window[tabsintitlebar]:not([sizemode=fullscreen]) .tabbrowser-arrowscrollbox > .scrollbutton-up,
+ #main-window[tabsintitlebar]:not([sizemode=fullscreen]) .tabbrowser-arrowscrollbox > .scrollbutton-down {
+ border-bottom: 1px solid transparent;
+ }
+
+ #main-window[tabsintitlebar][sizemode="normal"] > #tab-view-deck > #browser-panel:-moz-lwtheme {
+ /* Render a window top border: */
+ background-image: linear-gradient(to bottom,
+ ThreeDLightShadow 0, ThreeDLightShadow 1px,
+ ThreeDHighlight 1px, ThreeDHighlight 2px,
+ ActiveBorder 2px, ActiveBorder 4px, transparent 4px);
+ }
+
+ /* End classic titlebar gradient */
+
+ #main-window[tabsintitlebar]:not([inFullscreen]) :-moz-any(#TabsToolbar, #toolbar-menubar) toolbarbutton:not(:-moz-lwtheme) {
+ color: inherit;
+ }
+}
+
+/* Render a window top border for lwthemes on WinXP modern themes: */
+@media (-moz-windows-theme: luna-blue) {
+ #main-window[tabsintitlebar][sizemode="normal"] > #tab-view-deck > #browser-panel:-moz-lwtheme {
+ background-image: linear-gradient(to bottom,
+ rgb(8, 49, 216) 0, rgb(8, 49, 216) 1px,
+ rgb(15, 77, 227) 1px, rgb(15, 77, 227) 2px,
+ rgb(22, 106, 238) 2px, rgb(22, 106, 238) 3px,
+ rgb(8, 85, 221) 3px, rgb(8, 85, 221) 4px,
+ transparent 4px);
+ }
+
+ #main-window[tabsintitlebar][sizemode="normal"] > #tab-view-deck > #browser-panel:-moz-lwtheme:-moz-window-inactive {
+ background-image: linear-gradient(to bottom,
+ rgb(91, 104, 205) 0, rgb(91, 104, 205) 1px,
+ rgb(116, 128, 220) 1px, rgb(116, 128, 220) 2px,
+ rgb(117, 140, 221) 2px, rgb(117, 140, 221) 4px,
+ transparent 4px);
+ }
+}
+
+@media (-moz-windows-theme: luna-silver) {
+ #main-window[tabsintitlebar][sizemode="normal"] > #tab-view-deck > #browser-panel:-moz-lwtheme {
+ background-image: linear-gradient(to bottom,
+ rgb(102,102,126) 0, rgb(102,102,126) 1px,
+ rgb(168,167,191) 1px, rgb(168,167,191) 2px,
+ white 2px, white 3px,
+ rgb(188,188,207) 3px, rgb(188,188,207) 4px,
+ transparent 4px);
+ }
+
+ #main-window[tabsintitlebar][sizemode="normal"] > #tab-view-deck > #browser-panel:-moz-lwtheme:-moz-window-inactive {
+ background-image: linear-gradient(to bottom,
+ rgb(186,186,197) 0, rgb(186,186,197) 1px,
+ rgb(236,238,245) 1px, rgb(236,238,245) 2px,
+ white 2px, white 3px,
+ rgb(215,215,227) 3px, rgb(215,215,227) 4px,
+ transparent 4px);
+ }
+}
+
+@media (-moz-windows-theme: luna-olive) {
+ #main-window[tabsintitlebar][sizemode="normal"] > #tab-view-deck > #browser-panel:-moz-lwtheme {
+ background-image: linear-gradient(to bottom,
+ rgb(139,161,105) 0, rgb(139,161,105) 1px,
+ rgb(171, 189, 133) 1px, rgb(171, 189, 133) 2px,
+ rgb(164,178,127) 2px, rgb(164,178,127) 3px,
+ transparent 3px);
+ }
+
+ #main-window[tabsintitlebar][sizemode="normal"] > #tab-view-deck > #browser-panel:-moz-lwtheme:-moz-window-inactive {
+ background-image: linear-gradient(to bottom,
+ rgb(207, 214, 188) 0, rgb(207, 214, 188) 1px,
+ rgb(224, 226, 200) 1px, rgb(224, 226, 200) 2px,
+ rgb(214, 216, 190) 2px, rgb(214, 216, 190) 3px,
+ transparent 3px);
+ }
+}
+
+#TabsToolbar:not([collapsed="true"]) + #nav-bar {
+ /* Move up into the TabsToolbar for the inner highlight at the top of the nav-bar */
+ margin-top: calc(-1 * var(--navbar-tab-toolbar-highlight-overlap));
+ /* Position the toolbar above the bottom of background tabs */
+ position: relative;
+ z-index: 1;
+}
+
+#nav-bar {
+ border-top: 1px solid @toolbarShadowColor@ !important;
+ box-shadow: 0 1px 0 @toolbarHighlight@ inset;
+}
+@media not all and (-moz-windows-compositor) {
+ #TabsToolbar[collapsed="true"] + #nav-bar {
+ border-top-style: none !important;
+ }
+}
+
+#personal-bookmarks {
+ min-height: 24px;
+}
+
+#print-preview-toolbar:not(:-moz-lwtheme) {
+ -moz-appearance: toolbox;
+}
+
+#browser-bottombox:not(:-moz-lwtheme) {
+ background-color: -moz-dialog;
+}
+
+@media (-moz-os-version: windows-xp) and (-moz-windows-default-theme) {
+ #main-window[tabsintitlebar][sizemode="normal"] #toolbar-menubar {
+ margin-top: 4px;
+ }
+}
+
+/* ::::: titlebar ::::: */
+
+#main-window[sizemode="normal"] > #titlebar {
+ -moz-appearance: -moz-window-titlebar;
+}
+
+#main-window[sizemode="maximized"] > #titlebar {
+ -moz-appearance: -moz-window-titlebar-maximized;
+}
+
+@media (-moz-windows-classic) {
+ #main-window[tabsintitlebar][sizemode="normal"] > #tab-view-deck > #browser-panel > #navigator-toolbox > #toolbar-menubar {
+ margin-top: 4px;
+ }
+}
+
+/* The button box must appear on top of the navigator-toolbox in order for
+ * click and hover mouse events to work properly for the button in the restored
+ * window state. Otherwise, elements in the navigator-toolbox, like the menubar,
+ * can swallow those events. It will also place the buttons above the fog on
+ * themes with Aero Glass.
+ */
+#titlebar-buttonbox {
+ z-index: 1;
+}
+
+.titlebar-placeholder[type="caption-buttons"] {
+ margin-left: 22px; /* space needed for Aero Snap */
+}
+
+@media (-moz-os-version: windows-xp) {
+ .titlebar-placeholder[type="caption-buttons"] {
+ margin-left: 10px; /* less space needed on XP because there's no Aero Snap */
+ }
+}
+
+/* titlebar command buttons */
+
+#titlebar-min {
+ -moz-appearance: -moz-window-button-minimize;
+}
+
+#titlebar-max {
+ -moz-appearance: -moz-window-button-maximize;
+}
+
+#main-window[sizemode="maximized"] #titlebar-max {
+ -moz-appearance: -moz-window-button-restore;
+}
+
+#titlebar-close {
+ -moz-appearance: -moz-window-button-close;
+}
+
+@media not all and (-moz-windows-classic) {
+ #titlebar-min {
+ margin-inline-end: 2px;
+ }
+}
+
+/* ::::: bookmark buttons ::::: */
+
+toolbarbutton.bookmark-item:not(.subviewbutton),
+#personal-bookmarks[cui-areatype="toolbar"]:not([overflowedItem=true]) > #bookmarks-toolbar-placeholder {
+ margin: 0;
+ padding: 2px 3px;
+ -moz-appearance: none;
+ border: 1px solid transparent;
+ border-radius: 1px;
+ background-origin: padding-box !important;
+ background-clip: padding-box !important;
+ transition-property: background-color, border-color, box-shadow;
+ transition-duration: 150ms;
+}
+
+toolbarbutton.bookmark-item:not(.subviewbutton):hover:not([disabled="true"]):not([open]) {
+ border-color: var(--toolbarbutton-hover-bordercolor);
+ background: var(--toolbarbutton-hover-background);
+}
+
+toolbarbutton.bookmark-item:not(.subviewbutton):hover:active:not([disabled="true"]),
+toolbarbutton.bookmark-item[open="true"] {
+ border-color: var(--toolbarbutton-active-bordercolor);
+ box-shadow: var(--toolbarbutton-active-boxshadow);
+ background: var(--toolbarbutton-active-background);
+}
+
+.bookmark-item > .toolbarbutton-icon,
+#personal-bookmarks[cui-areatype="toolbar"] > #bookmarks-toolbar-placeholder > .toolbarbutton-icon {
+ width: 16px;
+ height: 16px;
+}
+
+/* Force the display of the label for bookmarks */
+.bookmark-item > .toolbarbutton-text,
+#personal-bookmarks[cui-areatype="toolbar"] > #bookmarks-toolbar-placeholder > .toolbarbutton-text {
+ display: -moz-box !important;
+}
+
+.bookmark-item > .toolbarbutton-menu-dropmarker {
+ display: none;
+}
+
+#bookmarks-toolbar-placeholder {
+ list-style-image: url("chrome://browser/skin/places/bookmarksToolbar.png") !important;
+}
+
+toolbarpaletteitem[place="palette"] > #personal-bookmarks > #bookmarks-toolbar-placeholder,
+#personal-bookmarks[cui-areatype="menu-panel"] > #bookmarks-toolbar-placeholder {
+ list-style-image: url("chrome://browser/skin/places/bookmarksToolbar-menuPanel.png") !important;
+}
+
+/* ----- BOOKMARK STAR ANIMATION ----- */
+
+@keyframes animation-bookmarkAdded {
+ from { transform: rotate(0deg) translateX(-16px) rotate(0deg) scale(1); opacity: 0; }
+ 60% { transform: rotate(180deg) translateX(-16px) rotate(-180deg) scale(2.2); opacity: 1; }
+ 80% { opacity: 1; }
+ to { transform: rotate(180deg) translateX(-16px) rotate(-180deg) scale(1); opacity: 0; }
+}
+
+@keyframes animation-bookmarkPulse {
+ from { transform: scale(1); }
+ 50% { transform: scale(1.3); }
+ to { transform: scale(1); }
+}
+
+#bookmarked-notification-container {
+ min-height: 1px;
+ min-width: 1px;
+ height: 1px;
+ margin-bottom: -1px;
+ z-index: 5;
+ position: relative;
+}
+
+#bookmarked-notification {
+ background-size: 16px;
+ background-position: center;
+ background-repeat: no-repeat;
+ width: 16px;
+ height: 16px;
+ opacity: 0;
+}
+
+#bookmarked-notification-dropmarker-anchor {
+ z-index: -1;
+ position: relative;
+}
+
+#bookmarked-notification-dropmarker-icon {
+ width: 18px;
+ height: 18px;
+ visibility: hidden;
+}
+
+#bookmarked-notification-anchor[notification="finish"] > #bookmarked-notification {
+ background-image: url("chrome://browser/skin/places/bookmarks-notification-finish.png");
+ animation: animation-bookmarkAdded 800ms;
+ animation-timing-function: ease, ease, ease;
+}
+
+#bookmarks-menu-button[notification="finish"] > .toolbarbutton-menubutton-dropmarker > .dropmarker-icon {
+ list-style-image: none !important;
+}
+
+#bookmarked-notification-dropmarker-anchor[notification="finish"] > #bookmarked-notification-dropmarker-icon {
+ visibility: visible;
+ animation: animation-bookmarkPulse 300ms;
+ animation-delay: 600ms;
+ animation-timing-function: ease-out;
+}
+
+/* ::::: bookmark menus ::::: */
+
+menu.bookmark-item,
+menuitem.bookmark-item {
+ min-width: 0;
+ max-width: 32em;
+}
+
+.bookmark-item:not(.subviewbutton) > .menu-iconic-left {
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+.bookmark-item > .menu-iconic-left > .menu-iconic-icon {
+ padding-inline-start: 0px;
+}
+
+/* ::::: bookmark items ::::: */
+
+.bookmark-item {
+ list-style-image: url("chrome://mozapps/skin/places/defaultFavicon.png");
+}
+
+.bookmark-item[container] {
+ list-style-image: url("chrome://global/skin/icons/folder-item.png");
+ -moz-image-region: rect(0px, 32px, 16px, 16px);
+}
+
+.bookmark-item[container][open] {
+ -moz-image-region: rect(16px, 32px, 32px, 16px);
+}
+
+.bookmark-item[container][livemark] {
+ list-style-image: url("chrome://browser/skin/livemark-folder.png");
+ -moz-image-region: auto;
+}
+
+.bookmark-item[container][livemark] .bookmark-item {
+ list-style-image: url("chrome://browser/skin/places/livemark-item.png");
+ -moz-image-region: rect(0px, 16px, 16px, 0px);
+}
+
+.bookmark-item[container][livemark] .bookmark-item[visited] {
+ -moz-image-region: rect(0px, 32px, 16px, 16px);
+}
+
+.bookmark-item[container][query] {
+ list-style-image: url("chrome://browser/skin/places/query.png");
+ -moz-image-region: auto;
+}
+
+.bookmark-item[query][tagContainer] {
+ list-style-image: url("chrome://browser/skin/places/tag.png");
+ -moz-image-region: auto;
+}
+
+.bookmark-item[query][dayContainer] {
+ list-style-image: url("chrome://browser/skin/places/calendar.png");
+ -moz-image-region: auto;
+}
+
+.bookmark-item[query][hostContainer] {
+ list-style-image: url("chrome://global/skin/icons/folder-item.png");
+ -moz-image-region: rect(0px, 32px, 16px, 16px);
+}
+
+.bookmark-item[query][hostContainer][open] {
+ list-style-image: url("chrome://global/skin/icons/folder-item.png");
+ -moz-image-region: rect(16px, 32px, 32px, 16px);
+}
+
+.bookmark-item[cutting] > .toolbarbutton-icon,
+.bookmark-item[cutting] > .menu-iconic-left > .menu-iconic-icon {
+ opacity: 0.5;
+}
+
+.bookmark-item[cutting] > .toolbarbutton-text,
+.bookmark-item[cutting] > .menu-iconic-left > .menu-iconic-text {
+ opacity: 0.7;
+}
+
+/* ::::: primary toolbar buttons ::::: */
+
+%include ../shared/toolbarbuttons.inc.css
+
+@media (-moz-windows-theme: luna-silver) and (max-resolution: 1dppx) {
+ :-moz-any(@primaryToolbarButtons@),
+ #bookmarks-menu-button.toolbarbutton-1 > .toolbarbutton-menubutton-dropmarker > .dropmarker-icon {
+ list-style-image: url("chrome://browser/skin/Toolbar-lunaSilver.png");
+ }
+}
+
+#main-window:not([customizing]) .toolbarbutton-1[disabled=true] > .toolbarbutton-icon,
+#main-window:not([customizing]) .toolbarbutton-1[disabled=true] > .toolbarbutton-menu-dropmarker,
+#main-window:not([customizing]) .toolbarbutton-1[disabled=true] > .toolbarbutton-menubutton-dropmarker,
+#main-window:not([customizing]) .toolbarbutton-1[disabled=true] > .toolbarbutton-menubutton-button > .toolbarbutton-icon,
+#main-window:not([customizing]) .toolbarbutton-1 > .toolbarbutton-menubutton-button[disabled=true] > .toolbarbutton-icon {
+ opacity: .4;
+}
+
+.toolbarbutton-1 > .toolbarbutton-menu-dropmarker,
+.toolbarbutton-1 > .toolbarbutton-menubutton-dropmarker {
+ list-style-image: url("chrome://browser/skin/toolbarbutton-dropdown-arrow.png");
+}
+
+toolbar[brighttext] .toolbarbutton-1 > .toolbarbutton-menu-dropmarker,
+toolbar[brighttext] .toolbarbutton-1 > .toolbarbutton-menubutton-dropmarker {
+ list-style-image: url("chrome://browser/skin/toolbarbutton-dropdown-arrow-inverted.png");
+}
+
+.toolbarbutton-1 > .toolbarbutton-icon,
+.toolbarbutton-1 > .toolbarbutton-menubutton-button > .toolbarbutton-icon {
+ margin-inline-end: 0;
+}
+
+:-moz-any(toolbar, .widget-overflow-list) .toolbarbutton-1 > .toolbarbutton-icon,
+:-moz-any(toolbar, .widget-overflow-list) .toolbarbutton-1 > :-moz-any(.toolbarbutton-menubutton-button, .toolbarbutton-badge-stack) > .toolbarbutton-icon {
+ max-width: 16px;
+}
+
+:-moz-any(toolbar, .widget-overflow-list) .toolbarbutton-1:-moz-any(@primaryToolbarButtons@, .toolbarbutton-legacy-addon) > .toolbarbutton-icon,
+:-moz-any(toolbar, .widget-overflow-list) .toolbarbutton-1:-moz-any(@primaryToolbarButtons@, .toolbarbutton-legacy-addon) > :-moz-any(.toolbarbutton-menubutton-button, .toolbarbutton-badge-stack) > .toolbarbutton-icon,
+#bookmarks-menu-button[cui-areatype="toolbar"] > .toolbarbutton-menubutton-dropmarker > .dropmarker-icon {
+ max-width: 18px;
+}
+
+%include ../shared/menupanel.inc.css
+
+.findbar-button,
+#nav-bar .toolbarbutton-1,
+#nav-bar .toolbarbutton-1 > .toolbarbutton-menubutton-button {
+ -moz-appearance: none;
+ border: none;
+ padding: 0;
+ background: none;
+}
+
+#nav-bar .toolbarbutton-1:not([type=menu-button]),
+#nav-bar .toolbarbutton-1 > .toolbarbutton-menubutton-button,
+#nav-bar .toolbarbutton-1 > .toolbarbutton-menubutton-dropmarker {
+ padding: var(--toolbarbutton-vertical-outer-padding) 2px;
+ -moz-box-pack: center;
+}
+
+#nav-bar #PanelUI-menu-button {
+ padding-inline-start: 5px;
+ padding-inline-end: 5px;
+}
+
+#nav-bar .toolbarbutton-1[type=panel],
+#nav-bar .toolbarbutton-1[type=menu]:not(#back-button):not(#forward-button):not(#feed-button):not(#PanelUI-menu-button) {
+ padding-left: 5px;
+ padding-right: 5px;
+}
+
+#nav-bar .toolbarbutton-1 > menupopup {
+ margin-top: -3px;
+}
+
+#nav-bar .toolbarbutton-1 > menupopup.cui-widget-panel {
+ margin-top: -8px;
+}
+
+#nav-bar .toolbarbutton-1 > .toolbarbutton-menubutton-button {
+ padding-inline-end: 0;
+}
+
+#nav-bar .toolbarbutton-1 > .toolbarbutton-menubutton-dropmarker {
+ padding-inline-start: 0;
+ -moz-box-align: center;
+}
+
+.findbar-button > .toolbarbutton-text,
+#nav-bar .toolbarbutton-1 > .toolbarbutton-icon,
+#nav-bar .toolbarbutton-1 > .toolbarbutton-text,
+#nav-bar .toolbarbutton-1 > .toolbarbutton-badge-stack,
+#nav-bar .toolbarbutton-1 > .toolbarbutton-menubutton-button > .toolbarbutton-icon,
+#nav-bar .toolbarbutton-1 > .toolbarbutton-menubutton-dropmarker > .dropmarker-icon,
+@conditionalForwardWithUrlbar@ > .toolbarbutton-1:-moz-any([disabled],:not([open]):not([disabled]):not(:active)) > .toolbarbutton-icon {
+ padding: var(--toolbarbutton-vertical-inner-padding) 6px;
+ background-origin: padding-box !important;
+ background-clip: padding-box !important;
+ border: 1px solid transparent;
+ border-radius: 1px;
+ transition-property: background-color, border-color, box-shadow;
+ transition-duration: 150ms;
+}
+
+#nav-bar .toolbarbutton-1 > .toolbarbutton-icon,
+#nav-bar .toolbarbutton-1 > .toolbarbutton-menubutton-button > .toolbarbutton-icon,
+#nav-bar #bookmarks-menu-button[cui-areatype="toolbar"] > .toolbarbutton-menubutton-dropmarker > .dropmarker-icon {
+ /* horizontal padding + border + actual icon width */
+ max-width: 32px;
+}
+
+@media (-moz-os-version: windows-xp),
+ (-moz-os-version: windows-vista),
+ (-moz-os-version: windows-win7) {
+ /* < Win8 */
+ :root {
+ --toolbarbutton-hover-background: linear-gradient(hsla(0,0%,100%,.6), hsla(0,0%,100%,.1));
+ --toolbarbutton-hover-bordercolor: hsla(210,54%,20%,.15) hsla(210,54%,20%,.2) hsla(210,54%,20%,.25);
+ --toolbarbutton-hover-boxshadow: 0 1px hsla(0,0%,100%,.3) inset,
+ 0 1px hsla(210,54%,20%,.03),
+ 0 0 2px hsla(210,54%,20%,.1);
+
+ --toolbarbutton-active-background: hsla(210,54%,20%,.15) linear-gradient(hsla(0,0%,100%,.6), hsla(0,0%,100%,.1));
+ --toolbarbutton-active-bordercolor: hsla(210,54%,20%,.3) hsla(210,54%,20%,.35) hsla(210,54%,20%,.4);
+ --toolbarbutton-active-boxshadow: 0 1px 1px hsla(210,54%,20%,.1) inset,
+ 0 0 1px hsla(210,54%,20%,.2) inset,
+/* allows keyhole-forward-clip-path to be used for non-hover as well as hover: */
+ 0 1px 0 hsla(210,54%,20%,0),
+ 0 0 2px hsla(210,54%,20%,0);
+
+ --toolbarbutton-checkedhover-backgroundcolor: rgba(90%,90%,90%,.4);
+ }
+}
+
+#nav-bar .toolbarbutton-1 > .toolbarbutton-menubutton-button > .toolbarbutton-icon:-moz-locale-dir(ltr),
+#nav-bar .toolbarbutton-1 > .toolbarbutton-menubutton-dropmarker > .dropmarker-icon:-moz-locale-dir(rtl) {
+ border-top-right-radius: 0;
+ border-bottom-right-radius: 0;
+}
+
+#nav-bar .toolbarbutton-1 > .toolbarbutton-menubutton-button > .toolbarbutton-icon:-moz-locale-dir(rtl),
+#nav-bar .toolbarbutton-1 > .toolbarbutton-menubutton-dropmarker > .dropmarker-icon:-moz-locale-dir(ltr) {
+ border-top-left-radius: 0;
+ border-bottom-left-radius: 0;
+}
+
+#nav-bar .toolbarbutton-1 > .toolbarbutton-menubutton-button > .toolbarbutton-icon {
+ border-inline-end-style: none;
+}
+
+#nav-bar .toolbarbutton-1:not(:-moz-any(@primaryToolbarButtons@, .toolbarbutton-legacy-addon)) > .toolbarbutton-icon,
+#nav-bar .toolbarbutton-1:not(:-moz-any(@primaryToolbarButtons@, .toolbarbutton-legacy-addon)) > .toolbarbutton-badge-stack,
+#nav-bar .toolbarbutton-1:not(:-moz-any(@primaryToolbarButtons@, .toolbarbutton-legacy-addon)) > .toolbarbutton-menubutton-button > .toolbarbutton-icon {
+ padding: calc(var(--toolbarbutton-vertical-inner-padding) + 1px) 7px;
+}
+
+#nav-bar .toolbarbutton-1[type=panel] > .toolbarbutton-icon,
+#nav-bar .toolbarbutton-1[type=panel] > .toolbarbutton-badge-stack,
+#nav-bar .toolbarbutton-1[type=menu]:not(#PanelUI-menu-button):not(#back-button):not(#forward-button):not(#new-tab-button) > .toolbarbutton-icon,
+#nav-bar .toolbarbutton-1[type=menu]:not(#PanelUI-menu-button) > .toolbarbutton-badge-stack,
+#nav-bar .toolbarbutton-1[type=menu] > .toolbarbutton-text /* hack for add-ons that forcefully display the label */ {
+ padding-inline-end: 17px;
+}
+
+#nav-bar .toolbarbutton-1[type=panel] > .toolbarbutton-icon,
+#nav-bar .toolbarbutton-1[type=menu]:not(#PanelUI-menu-button):not(#back-button):not(#forward-button):not(#new-tab-button) > .toolbarbutton-icon {
+ /* horizontal padding + border + icon width */
+ max-width: 43px;
+}
+
+#nav-bar .toolbarbutton-1 > .toolbarbutton-menu-dropmarker {
+ margin-inline-start: -15px;
+}
+
+#nav-bar #bookmarks-menu-button[cui-areatype="toolbar"] > .toolbarbutton-menubutton-button > .toolbarbutton-icon {
+ /* horizontal padding + border + actual icon width */
+ max-width: 31px;
+}
+
+#nav-bar .toolbarbutton-1 > .toolbarbutton-menubutton-dropmarker > .dropmarker-icon {
+ padding-top: calc(var(--toolbarbutton-vertical-inner-padding) + 6px);
+ padding-bottom: calc(var(--toolbarbutton-vertical-inner-padding) + 6px);
+}
+
+#nav-bar .toolbaritem-combined-buttons {
+ margin-left: 2px;
+ margin-right: 2px;
+}
+
+#nav-bar .toolbaritem-combined-buttons > .toolbarbutton-1 {
+ padding-left: 0;
+ padding-right: 0;
+}
+
+#nav-bar .toolbaritem-combined-buttons:not(:hover) > separator,
+#nav-bar .toolbarbutton-1:not(:hover):not(:active):not([open]) > .toolbarbutton-menubutton-dropmarker::before {
+ content: "";
+ display: -moz-box;
+ width: 1px;
+ height: 16px;
+ margin-inline-end: -1px;
+ background-image: linear-gradient(currentColor 0, currentColor 100%);
+ background-position: center;
+ background-repeat: no-repeat;
+ background-size: 1px 16px;
+ opacity: .2;
+}
+
+#nav-bar[brighttext] .toolbaritem-combined-buttons > separator,
+#nav-bar[brighttext] .toolbarbutton-1:not(:hover):not(:active):not([open]) > .toolbarbutton-menubutton-dropmarker::before {
+ opacity: .3;
+}
+
+.findbar-button:not(:-moz-any([checked="true"],[disabled="true"])):hover > .toolbarbutton-text,
+#nav-bar .toolbarbutton-1:not([disabled=true]) > .toolbarbutton-menubutton-button[open] + .toolbarbutton-menubutton-dropmarker > .dropmarker-icon,
+#nav-bar .toolbarbutton-1:not([disabled=true]):-moz-any(:hover,[open]) > .toolbarbutton-menubutton-button > .toolbarbutton-icon,
+#nav-bar .toolbarbutton-1:not([disabled=true]):-moz-any(:hover,[open]) > .toolbarbutton-menubutton-dropmarker > .dropmarker-icon,
+#nav-bar .toolbarbutton-1:not([disabled=true]):not([checked]):not([open]):not(:active):hover > .toolbarbutton-icon,
+#nav-bar .toolbarbutton-1:not([disabled=true]):not([checked]):not([open]):not(:active):hover > .toolbarbutton-text,
+#nav-bar .toolbarbutton-1:not([disabled=true]):not([checked]):not([open]):not(:active):hover > .toolbarbutton-badge-stack,
+@conditionalForwardWithUrlbar@ > #forward-button:not([open]):not(:active):not([disabled]):hover > .toolbarbutton-icon,
+#nav-bar .toolbarbutton-1:not([buttonover]):not([open]):not(:active):hover > .toolbarbutton-menubutton-dropmarker:not([disabled]) > .dropmarker-icon {
+ background: var(--toolbarbutton-hover-background);
+ border-color: var(--toolbarbutton-hover-bordercolor);
+ box-shadow: var(--toolbarbutton-hover-boxshadow);
+}
+
+.findbar-button:not([disabled=true]):-moz-any([checked="true"],:hover:active) > .toolbarbutton-text,
+#nav-bar .toolbarbutton-1 > .toolbarbutton-menubutton-button:not([disabled=true]):-moz-any(:hover:active, [open]) > .toolbarbutton-icon,
+#nav-bar .toolbarbutton-1[open] > .toolbarbutton-menubutton-dropmarker:not([disabled=true]) > .dropmarker-icon,
+#nav-bar .toolbarbutton-1:not([disabled=true]):-moz-any([open],[checked],:hover:active) > .toolbarbutton-icon,
+#nav-bar .toolbarbutton-1:not([disabled=true]):-moz-any([open],[checked],:hover:active) > .toolbarbutton-text,
+#nav-bar .toolbarbutton-1:not([disabled=true]):-moz-any([open],[checked],:hover:active) > .toolbarbutton-badge-stack {
+ background: var(--toolbarbutton-active-background);
+ border-color: var(--toolbarbutton-active-bordercolor);
+ box-shadow: var(--toolbarbutton-active-boxshadow);
+ transition-duration: 10ms;
+}
+
+#nav-bar .toolbarbutton-1[checked]:not(:active):hover > .toolbarbutton-icon {
+ background-color: var(--toolbarbutton-checkedhover-backgroundcolor);
+ transition: background-color .4s;
+}
+
+#TabsToolbar .toolbarbutton-1,
+#TabsToolbar .toolbarbutton-1 > .toolbarbutton-menubutton-button,
+.tabbrowser-arrowscrollbox > .scrollbutton-up,
+.tabbrowser-arrowscrollbox > .scrollbutton-down {
+ -moz-appearance: none;
+ border-style: none;
+ padding: 0 3px;
+}
+
+#TabsToolbar .toolbarbutton-1 {
+ margin-bottom: var(--tab-toolbar-navbar-overlap);
+}
+
+#TabsToolbar .toolbarbutton-1:not([disabled=true]):hover,
+#TabsToolbar .toolbarbutton-1[open],
+#TabsToolbar .toolbarbutton-1 > .toolbarbutton-menubutton-button:not([disabled=true]):hover,
+.tabbrowser-arrowscrollbox > .scrollbutton-up:not([disabled=true]):hover,
+.tabbrowser-arrowscrollbox > .scrollbutton-down:not([disabled=true]):hover {
+ background-image: linear-gradient(transparent, rgba(255,255,255,.5)),
+ linear-gradient(transparent, rgba(0,0,0,.25) 30%),
+ linear-gradient(transparent, rgba(0,0,0,.25) 30%);
+ background-position: 1px -1px, 0 -1px, 100% -1px;
+ background-size: calc(100% - 2px) 100%, 1px 100%, 1px 100%;
+ background-repeat: no-repeat;
+}
+
+/* unified back/forward button */
+
+:-moz-any(#back-button, #forward-button) > .toolbarbutton-icon {
+ border-color: var(--urlbar-border-color-hover) !important;
+}
+
+:-moz-any(#back-button, #forward-button):not(:hover):not(:active):not([open=true]) > .toolbarbutton-icon,
+:-moz-any(#back-button, #forward-button)[disabled=true] > .toolbarbutton-icon {
+ background-color: rgba(255,255,255,.15) !important;
+}
+
+#forward-button {
+ -moz-box-align: stretch; /* let the button shape grow vertically with the location bar */
+ padding: 0 !important;
+}
+
+#forward-button > menupopup {
+ margin-top: 1px !important;
+}
+
+#forward-button > .toolbarbutton-icon {
+ border-left-style: none !important;
+ border-radius: 0 !important;
+ padding-left: calc(var(--backbutton-urlbar-overlap) + 3px) !important;
+ padding-right: 3px !important;
+ max-width: calc(var(--forwardbutton-width) + var(--backbutton-urlbar-overlap)) !important;
+}
+
+@conditionalForwardWithUrlbar@:not([switchingtabs]) > #forward-button {
+ transition: margin-left @forwardTransitionLength@ ease-out;
+}
+
+@conditionalForwardWithUrlbar@ > #forward-button[disabled] {
+ margin-left: calc(0px - var(--forwardbutton-width) - var(--backbutton-urlbar-overlap));
+}
+
+@conditionalForwardWithUrlbar@:hover:not([switchingtabs]) > #forward-button[disabled] {
+ /* delay the hiding of the forward button when hovered to avoid accidental clicks on the url bar */
+ transition-delay: 100s;
+}
+
+@conditionalForwardWithUrlbar@:not(:hover) > #forward-button[disabled] {
+ /* when not hovered anymore, trigger a new transition to hide the forward button immediately */
+ margin-left: calc(-0.01px - var(--forwardbutton-width) - var(--backbutton-urlbar-overlap));
+}
+
+#back-button {
+ padding-top: 3px !important;
+ padding-bottom: 3px !important;
+ padding-inline-start: 5px !important;
+ padding-inline-end: 0 !important;
+ position: relative !important;
+ z-index: 1 !important;
+ border-radius: 0 10000px 10000px 0 !important;
+}
+
+#back-button:-moz-locale-dir(rtl) {
+ border-radius: 10000px 0 0 10000px !important;
+}
+
+#back-button > menupopup {
+ margin-top: -1px !important;
+}
+
+#back-button > .toolbarbutton-icon {
+ border-radius: 10000px !important;
+ padding: 6px !important;
+ max-width: 32px !important; /* icon width + horizontal padding + border */
+}
+
+#back-button:-moz-locale-dir(rtl) > .toolbarbutton-icon {
+ transform: scaleX(-1);
+}
+
+.unified-nav-back[_moz-menuactive]:-moz-locale-dir(ltr),
+.unified-nav-forward[_moz-menuactive]:-moz-locale-dir(rtl) {
+ list-style-image: url("chrome://browser/skin/menu-back.png") !important;
+}
+
+.unified-nav-forward[_moz-menuactive]:-moz-locale-dir(ltr),
+.unified-nav-back[_moz-menuactive]:-moz-locale-dir(rtl) {
+ list-style-image: url("chrome://browser/skin/menu-forward.png") !important;
+}
+
+/* undo close tab menu item */
+#alltabs_undoCloseTab {
+ list-style-image: url(chrome://browser/skin/undoCloseTab.png);
+}
+
+@media (min-resolution: 1.1dppx) {
+ #alltabs_undoCloseTab {
+ list-style-image: url(chrome://browser/skin/undoCloseTab@2x.png);
+ }
+ #alltabs_undoCloseTab > .toolbarbutton-icon {
+ width: 16px;
+ }
+}
+
+/* zoom control text (reset) button special case: */
+
+#nav-bar #zoom-reset-button > .toolbarbutton-text {
+ /* To make this line up with the icons, it needs the same height (18px) +
+ * padding (2 * 2px) + border (2 * 1px), but as a minimum because otherwise
+ * increase in text sizes would break things...
+ */
+ min-height: 24px;
+}
+
+/* ::::: fullscreen window controls ::::: */
+
+#minimize-button,
+#restore-button,
+#close-button {
+ -moz-appearance: none;
+ border: none;
+ margin: 0 !important;
+ padding: 6px 12px;
+}
+
+#minimize-button {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#minimize);
+}
+
+#restore-button {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#restore);
+}
+
+#minimize-button:hover,
+#restore-button:hover {
+ background-color: hsla(0, 0%, 0%, .12);
+}
+
+#minimize-button:hover:active,
+#restore-button:hover:active {
+ background-color: hsla(0, 0%, 0%, .22);
+}
+
+#close-button {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#close);
+}
+
+#close-button:hover {
+ background-color: hsl(355, 86%, 49%);
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#close-white);
+}
+
+#close-button:hover:active {
+ background-color: hsl(355, 82%, 69%);
+}
+
+toolbar[brighttext] #minimize-button {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#minimize-white);
+}
+
+toolbar[brighttext] #restore-button {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#restore-white);
+}
+
+toolbar[brighttext] #close-button {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#close-white);
+}
+
+@media (-moz-os-version: windows-xp),
+ (-moz-os-version: windows-vista),
+ (-moz-os-version: windows-win7) {
+ #window-controls {
+ margin-inline-start: 4px;
+ }
+
+ #minimize-button,
+ #restore-button,
+ #close-button {
+ /* Important to ensure this applies even on toolbar[brighttext] */
+ list-style-image: url("chrome://global/skin/icons/windowControls.png") !important;
+ /* Also override background color to a avoid hover background styling
+ * leaking through around the image. */
+ background-color: transparent !important;
+ padding: 0;
+ }
+
+ #minimize-button {
+ -moz-image-region: rect(0, 16px, 16px, 0);
+ }
+
+ #minimize-button:hover {
+ -moz-image-region: rect(16px, 16px, 32px, 0);
+ }
+
+ #minimize-button:hover:active {
+ -moz-image-region: rect(32px, 16px, 48px, 0);
+ }
+
+ #restore-button {
+ -moz-image-region: rect(0, 32px, 16px, 16px);
+ }
+
+ #restore-button:hover {
+ -moz-image-region: rect(16px, 32px, 32px, 16px);
+ }
+
+ #restore-button:hover:active {
+ -moz-image-region: rect(32px, 32px, 48px, 16px);
+ }
+
+ #close-button {
+ -moz-image-region: rect(0, 48px, 16px, 32px);
+ -moz-appearance: none;
+ border-style: none;
+ margin: 2px;
+ }
+
+ #close-button:hover {
+ -moz-image-region: rect(16px, 48px, 32px, 32px);
+ }
+
+ #close-button:hover:active {
+ -moz-image-region: rect(32px, 48px, 48px, 32px);
+ }
+}
+
+@media (-moz-os-version: windows-vista),
+ (-moz-os-version: windows-win7) {
+ #window-controls {
+ -moz-box-align: start;
+ }
+
+ #minimize-button,
+ #restore-button,
+ #close-button {
+ -moz-appearance: none;
+ border-style: none;
+ margin: 0;
+ }
+
+ #close-button {
+ -moz-image-region: rect(0, 49px, 16px, 32px);
+ }
+
+ #close-button:hover {
+ -moz-image-region: rect(16px, 49px, 32px, 32px);
+ }
+
+ #close-button:hover:active {
+ -moz-image-region: rect(32px, 49px, 48px, 32px);
+ }
+
+ #minimize-button:-moz-locale-dir(rtl),
+ #restore-button:-moz-locale-dir(rtl),
+ #close-button:-moz-locale-dir(rtl) {
+ transform: scaleX(-1);
+ }
+}
+
+/* ::::: Location Bar ::::: */
+
+#main-window {
+ --urlbar-border-color: ThreeDShadow;
+ --urlbar-border-color-hover: var(--urlbar-border-color);
+}
+
+#navigator-toolbox:-moz-lwtheme {
+ --urlbar-border-color: var(--toolbarbutton-hover-bordercolor);
+}
+
+@media (-moz-windows-default-theme) {
+ @media (-moz-os-version: windows-vista),
+ (-moz-os-version: windows-win7),
+ (-moz-os-version: windows-win8) {
+ #main-window:not(:-moz-lwtheme) {
+ --urlbar-border-color: hsla(210,54%,20%,.25) hsla(210,54%,20%,.27) hsla(210,54%,20%,.3);
+ --urlbar-border-color-hover: hsla(210,54%,20%,.35) hsla(210,54%,20%,.37) hsla(210,54%,20%,.4);
+ }
+ }
+
+ @media (-moz-os-version: windows-win10) {
+ #main-window:not(:-moz-lwtheme) {
+ --urlbar-border-color: hsl(0,0%,90%);
+ --urlbar-border-color-hover: hsl(0,0%,80%);
+ }
+ }
+}
+
+#urlbar,
+.searchbar-textbox {
+ -moz-appearance: none;
+ margin: 0 3px;
+ padding: 0;
+ background-clip: padding-box;
+ border: 1px solid;
+ border-color: var(--urlbar-border-color);
+}
+
+#urlbar:hover,
+.searchbar-textbox:hover {
+ border-color: var(--urlbar-border-color-hover);
+}
+
+@media (-moz-windows-default-theme) {
+ #urlbar,
+ .searchbar-textbox {
+ border-radius: 1px;
+ }
+
+ @media (-moz-os-version: windows-vista),
+ (-moz-os-version: windows-win7),
+ (-moz-os-version: windows-win8) {
+ #urlbar:not(:-moz-lwtheme),
+ .searchbar-textbox:not(:-moz-lwtheme) {
+ box-shadow: 0 1px 0 hsla(0,0%,0%,.01) inset,
+ 0 1px 0 hsla(0,0%,100%,.1);
+ }
+ }
+
+ @media (-moz-os-version: windows-win10) {
+ #urlbar:not(:-moz-lwtheme),
+ .searchbar-textbox:not(:-moz-lwtheme) {
+ padding: 1px;
+ transition-property: border-color, box-shadow;
+ transition-duration: .1s;
+ }
+
+ #urlbar:not(:-moz-lwtheme)[focused],
+ .searchbar-textbox:not(:-moz-lwtheme)[focused] {
+ box-shadow: 0 0 0 1px Highlight inset;
+ }
+ }
+
+ @media not all and (-moz-os-version: windows-xp) {
+ #urlbar:not(:-moz-lwtheme)[focused],
+ .searchbar-textbox:not(:-moz-lwtheme)[focused] {
+ border-color: Highlight;
+ }
+ }
+}
+
+@media (-moz-os-version: windows-win10) {
+ #urlbar,
+ .searchbar-textbox {
+ font-size: 1.15em;
+ min-height: 28px;
+ }
+
+ :root {
+ /* let toolbar buttons match the location and search bar's minimum height */
+ --toolbarbutton-vertical-inner-padding: 4px;
+ --toolbarbutton-vertical-outer-padding: 5px;
+ }
+}
+
+#urlbar:-moz-lwtheme,
+.searchbar-textbox:-moz-lwtheme {
+ background-color: rgba(255,255,255,.8);
+ color: black;
+}
+
+#urlbar:-moz-lwtheme:hover:not([readonly]),
+.searchbar-textbox:-moz-lwtheme:hover {
+ background-color: rgba(255,255,255,.9);
+}
+
+#urlbar:-moz-lwtheme[focused]:not([readonly]),
+.searchbar-textbox:-moz-lwtheme[focused] {
+ background-color: white;
+}
+
+@conditionalForwardWithUrlbar@ > #urlbar {
+ border-inline-start: none;
+ padding-inline-start: 0;
+ margin-left: 0;
+}
+
+@conditionalForwardWithUrlbar@ > #urlbar:-moz-locale-dir(ltr) {
+ border-top-left-radius: 0;
+ border-bottom-left-radius: 0;
+}
+
+@conditionalForwardWithUrlbar@ > #urlbar:-moz-locale-dir(rtl) {
+ border-top-right-radius: 0;
+ border-bottom-right-radius: 0;
+}
+
+@conditionalForwardWithUrlbar@ {
+ clip-path: url("chrome://browser/content/browser.xul#urlbar-back-button-clip-path");
+ margin-inline-start: calc(-1 * var(--backbutton-urlbar-overlap));
+}
+
+@media (-moz-os-version: windows-win10) {
+ @conditionalForwardWithUrlbar@ {
+ clip-path: url("chrome://browser/content/browser.xul#urlbar-back-button-clip-path-win10");
+ }
+
+ :root {
+ --backbutton-urlbar-overlap: 9px;
+ }
+}
+
+@conditionalForwardWithUrlbar@:-moz-locale-dir(rtl),
+@conditionalForwardWithUrlbar@ > #urlbar:-moz-locale-dir(rtl) {
+ /* let urlbar-back-button-clip-path clip the urlbar's right side for RTL */
+ transform: scaleX(-1);
+}
+
+@conditionalForwardWithUrlbar@:-moz-locale-dir(rtl) {
+ -moz-box-direction: reverse;
+}
+
+html|*.urlbar-input:-moz-lwtheme::placeholder,
+.searchbar-textbox:-moz-lwtheme > .autocomplete-textbox-container > .textbox-input-box > html|*.textbox-input::placeholder {
+ opacity: 1.0;
+ color: #777;
+}
+
+#urlbar-container {
+ -moz-box-align: center;
+}
+
+.urlbar-textbox-container {
+ -moz-box-align: stretch;
+}
+
+.urlbar-input-box {
+ margin-inline-start: 0;
+}
+
+.urlbar-input-box,
+#urlbar-display-box {
+ padding-inline-start: 4px;
+ border-inline-start: 1px solid var(--urlbar-separator-color);
+ border-image: linear-gradient(transparent 15%, var(--urlbar-separator-color) 15%, var(--urlbar-separator-color) 85%, transparent 85%);
+ border-image-slice: 1;
+}
+
+#urlbar-icons {
+ -moz-box-align: center;
+}
+
+.urlbar-icon {
+ padding: 0 3px;
+ /* 16x16 icon with border-box sizing */
+ width: 22px;
+ height: 16px;
+}
+
+/* ::::: URL Bar Zoom Reset Button ::::: */
+@keyframes urlbar-zoom-reset-pulse {
+ 0% {
+ transform: scale(0);
+ }
+ 75% {
+ transform: scale(1.5);
+ }
+ 100% {
+ transform: scale(1.0);
+ }
+}
+
+#urlbar-zoom-button {
+ -moz-appearance: none;
+ margin: 0 3px;
+ font-size: .8em;
+ padding: 0 8px;
+ border-radius: 1em;
+ background-color: hsla(0,0%,0%,.05);
+ color: inherit;
+ border: 1px solid ThreeDLightShadow;
+}
+
+#urlbar-zoom-button[animate="true"] {
+ animation-name: urlbar-zoom-reset-pulse;
+ animation-duration: 250ms;
+}
+
+#urlbar-zoom-button:hover {
+ background-color: hsla(0,0%,0%,.1);
+}
+
+#urlbar-zoom-button:hover:active {
+ background-color: hsla(0,0%,0%,.15);
+}
+
+#urlbar-zoom-button > .toolbarbutton-text {
+ display: -moz-box;
+}
+
+#urlbar-zoom-button > .toolbarbutton-icon {
+ display: none;
+}
+
+.search-go-container {
+ padding: 2px 2px;
+}
+
+#urlbar-search-footer {
+ border-top: 1px solid var(--panel-separator-color);
+ background-color: var(--arrowpanel-dimmed);
+}
+
+#urlbar-search-settings {
+ -moz-appearance: none;
+ -moz-user-focus: ignore;
+ color: GrayText;
+ margin: 0;
+ border: 0;
+ padding: 8px 20px;
+ background: transparent;
+}
+
+#urlbar-search-settings:hover {
+ background-color: var(--arrowpanel-dimmed);
+}
+
+#urlbar-search-settings:hover:active {
+ background-color: var(--arrowpanel-dimmed-further);
+}
+
+#urlbar-search-splitter {
+ min-width: 6px;
+ margin-inline-start: -3px;
+ border: none;
+ background: transparent;
+}
+
+#urlbar-search-splitter + #search-container > #searchbar > .searchbar-textbox {
+ margin-inline-start: 0;
+}
+
+.urlbar-display {
+ margin-top: 0;
+ margin-bottom: 0;
+ margin-inline-start: 0;
+ color: GrayText;
+}
+
+%include ../shared/urlbarSearchSuggestionsNotification.inc.css
+
+#search-container {
+ min-width: calc(54px + 11ch);
+}
+
+/* identity box */
+
+#identity-box:-moz-focusring {
+ outline: 1px dotted;
+ outline-offset: -3px;
+}
+
+/* Location bar dropmarker */
+
+.urlbar-history-dropmarker {
+ -moz-appearance: none;
+ padding: 0 3px;
+ background-color: transparent;
+ border: none;
+ width: auto;
+ list-style-image: var(--urlbar-dropmarker-url);
+ -moz-image-region: var(--urlbar-dropmarker-region);
+ transition: opacity 0.15s ease;
+}
+
+#urlbar-wrapper[switchingtabs] > #urlbar > .urlbar-textbox-container > .urlbar-history-dropmarker {
+ transition: none;
+}
+
+#navigator-toolbox:not(:hover) #nav-bar:not([customizing="true"]) #urlbar:not([focused]) > .urlbar-textbox-container > .urlbar-history-dropmarker {
+ opacity: 0;
+}
+
+.urlbar-history-dropmarker:hover {
+ -moz-image-region: var(--urlbar-dropmarker-hover-region);
+}
+
+.urlbar-history-dropmarker:hover:active,
+.urlbar-history-dropmarker[open="true"] {
+ -moz-image-region: var(--urlbar-dropmarker-active-region);
+}
+
+@media (min-resolution: 1.1dppx) {
+ .urlbar-history-dropmarker {
+ list-style-image: var(--urlbar-dropmarker-2x-url);
+ -moz-image-region: var(--urlbar-dropmarker-2x-region);
+ }
+
+ .urlbar-history-dropmarker:hover {
+ -moz-image-region: var(--urlbar-dropmarker-hover-2x-region);
+ }
+
+ .urlbar-history-dropmarker[open="true"],
+ .urlbar-history-dropmarker:hover:active {
+ -moz-image-region: var(--urlbar-dropmarker-active-2x-region);
+ }
+
+ .urlbar-history-dropmarker > .dropmarker-icon {
+ width: 11px;
+ }
+}
+
+/* page proxy icon */
+
+%include ../shared/identity-block/identity-block.inc.css
+
+/* autocomplete */
+
+%include ../shared/autocomplete.inc.css
+
+#PopupAutoComplete > richlistbox > richlistitem[originaltype~="datalist-first"] {
+ border-top: 1px solid ThreeDShadow;
+}
+
+#treecolAutoCompleteImage {
+ max-width: 36px;
+}
+
+.autocomplete-richlistbox {
+ padding: 4px;
+}
+
+.autocomplete-richlistitem {
+ height: 30px;
+ min-height: 30px;
+ font: message-box;
+ border-radius: 2px;
+ border: 1px solid transparent;
+}
+
+.autocomplete-richlistitem[selected=true] {
+ background-color: hsl(210, 80%, 52%);
+}
+
+.ac-title {
+ font-size: 14px;
+ color: hsl(0, 0%, 0%);
+}
+
+.ac-tags {
+ font-size: 12px;
+}
+
+html|span.ac-tag {
+ background-color: hsl(216, 0%, 88%);
+ color: hsl(0, 0%, 0%);
+ border-radius: 2px;
+ border: 1px solid transparent;
+ padding: 0 1px;
+}
+
+.ac-separator,
+.ac-url,
+.ac-action {
+ font-size: 12px;
+}
+
+.ac-separator {
+ color: hsl(0, 0%, 50%);
+}
+
+.ac-url {
+ color: hsl(210, 77%, 47%);
+}
+
+.ac-action {
+ color: hsl(178, 100%, 28%);
+}
+
+.ac-title[selected=true],
+.ac-separator[selected],
+.ac-url[selected=true],
+.ac-action[selected=true] {
+ color: hsl(0, 0%, 100%);
+}
+
+.ac-tags-text[selected] > html|span.ac-tag {
+ background-color: hsl(0, 0%, 100%);
+ color: hsl(210, 80%, 40%);
+}
+
+html|span.ac-emphasize-text-title,
+html|span.ac-emphasize-text-tag,
+html|span.ac-emphasize-text-url {
+ font-weight: 600;
+}
+
+@media not all and (-moz-windows-default-theme) {
+ .autocomplete-richlistitem[selected=true] {
+ background-color: Highlight;
+ }
+
+ .ac-title {
+ color: inherit;
+ }
+
+ html|span.ac-tag {
+ background-color: -moz-FieldText;
+ color: -moz-Field;
+ }
+
+ .ac-separator,
+ .ac-url,
+ .ac-action {
+ color: -moz-nativehyperlinktext;
+ }
+
+ .ac-tags-text[selected] > html|span.ac-tag {
+ background-color: HighlightText;
+ color: Highlight;
+ }
+}
+
+.ac-type-icon[type=bookmark] {
+ list-style-image: url("chrome://browser/skin/urlbar-star.svg#star");
+}
+
+.ac-type-icon[type=bookmark][selected][current] {
+ list-style-image: url("chrome://browser/skin/urlbar-star.svg#star-inverted");
+}
+
+.autocomplete-treebody::-moz-tree-image(bookmark, treecolAutoCompleteImage) {
+ list-style-image: url("chrome://browser/skin/places/autocomplete-star.png");
+ -moz-image-region: rect(0 16px 16px 0);
+ width: 16px;
+ height: 16px;
+}
+
+@media (min-resolution: 1.1dppx) {
+ .autocomplete-treebody::-moz-tree-image(bookmark, treecolAutoCompleteImage) {
+ list-style-image: url("chrome://browser/skin/places/autocomplete-star@2x.png");
+ -moz-image-region: rect(0 32px 32px 0);
+ }
+}
+
+@media not all and (-moz-os-version: windows-vista) and (-moz-windows-default-theme) {
+ @media not all and (-moz-os-version: windows-win7) and (-moz-windows-default-theme) {
+ .autocomplete-treebody::-moz-tree-image(selected, current, bookmark, treecolAutoCompleteImage) {
+ -moz-image-region: rect(0 32px 16px 16px);
+ }
+
+ @media (min-resolution: 1.1dppx) {
+ .autocomplete-treebody::-moz-tree-image(selected, current, bookmark, treecolAutoCompleteImage) {
+ -moz-image-region: rect(0 64px 32px 32px);
+ }
+ }
+
+ .autocomplete-treebody::-moz-tree-image(keyword, treecolAutoCompleteImage, selected) {
+ list-style-image: url(chrome://global/skin/icons/autocomplete-search.svg#search-icon-inverted);
+ }
+ }
+}
+
+.ac-type-icon[type=keyword],
+.ac-site-icon[type=searchengine],
+.autocomplete-treebody::-moz-tree-image(keyword, treecolAutoCompleteImage) {
+ list-style-image: url(chrome://global/skin/icons/autocomplete-search.svg#search-icon);
+}
+
+.ac-type-icon[type=keyword][selected],
+.ac-site-icon[type=searchengine][selected],
+.autocomplete-treebody::-moz-tree-image(keyword, treecolAutoCompleteImage, selected) {
+ list-style-image: url(chrome://global/skin/icons/autocomplete-search.svg#search-icon-inverted);
+}
+
+.autocomplete-treebody::-moz-tree-image(tag, treecolAutoCompleteImage) {
+ list-style-image: url("chrome://browser/skin/places/tag.png");
+ width: 16px;
+ height: 16px;
+}
+
+.ac-type-icon[type=switchtab],
+.ac-type-icon[type=remotetab] {
+ list-style-image: url("chrome://browser/skin/urlbar-tab.svg#tab");
+}
+
+.ac-type-icon[type=switchtab][selected],
+.ac-type-icon[type=remotetab][selected] {
+ list-style-image: url("chrome://browser/skin/urlbar-tab.svg#tab-inverted");
+}
+
+.autocomplete-treebody::-moz-tree-cell-text(treecolAutoCompleteComment) {
+ color: GrayText;
+}
+
+.autocomplete-treebody::-moz-tree-cell-text(suggesthint, treecolAutoCompleteComment),
+.autocomplete-treebody::-moz-tree-cell-text(suggestfirst, treecolAutoCompleteComment)
+{
+ color: GrayText;
+ font-size: smaller;
+}
+
+.autocomplete-treebody::-moz-tree-cell(suggesthint) {
+ border-top: 1px solid GrayText;
+}
+
+/* combined go/reload/stop button in location bar */
+
+#urlbar-go-button,
+#urlbar-reload-button,
+#urlbar-stop-button {
+ -moz-appearance: none;
+ border-style: none;
+ list-style-image: url("chrome://browser/skin/reload-stop-go.png");
+ padding: 0 9px;
+ margin-inline-start: 5px;
+ border-inline-start: 1px solid var(--urlbar-separator-color);
+ border-image: linear-gradient(transparent 15%,
+ var(--urlbar-separator-color) 15%,
+ var(--urlbar-separator-color) 85%,
+ transparent 85%);
+ border-image-slice: 1;
+}
+
+#urlbar-reload-button {
+ -moz-image-region: rect(0, 14px, 14px, 0);
+}
+
+#urlbar-reload-button:not([disabled]):hover {
+ -moz-image-region: rect(14px, 14px, 28px, 0);
+}
+
+#urlbar-reload-button:not([disabled]):hover:active {
+ -moz-image-region: rect(28px, 14px, 42px, 0);
+}
+
+#urlbar-reload-button:-moz-locale-dir(rtl) > .toolbarbutton-icon {
+ transform: scaleX(-1);
+}
+
+#urlbar-go-button {
+ -moz-image-region: rect(0, 42px, 14px, 28px);
+}
+
+#urlbar-go-button:hover {
+ -moz-image-region: rect(14px, 42px, 28px, 28px);
+}
+
+#urlbar-go-button:hover:active {
+ -moz-image-region: rect(28px, 42px, 42px, 28px);
+}
+
+#urlbar-go-button:-moz-locale-dir(rtl) > .toolbarbutton-icon {
+ transform: scaleX(-1);
+}
+
+#urlbar-stop-button {
+ -moz-image-region: rect(0, 28px, 14px, 14px);
+}
+
+#urlbar-stop-button:not([disabled]):hover {
+ -moz-image-region: rect(14px, 28px, 28px, 14px);
+}
+
+#urlbar-stop-button:hover:active {
+ -moz-image-region: rect(28px, 28px, 42px, 14px);
+}
+
+@media (min-resolution: 1.1dppx) {
+ #urlbar-go-button,
+ #urlbar-reload-button,
+ #urlbar-stop-button {
+ list-style-image: url("chrome://browser/skin/reload-stop-go@2x.png");
+ }
+
+ #urlbar-go-button > .toolbarbutton-icon,
+ #urlbar-reload-button > .toolbarbutton-icon,
+ #urlbar-stop-button > .toolbarbutton-icon {
+ width: 14px;
+ }
+
+ #urlbar-go-button {
+ -moz-image-region: rect(0, 84px, 28px, 56px);
+ }
+
+ #urlbar-go-button:hover {
+ -moz-image-region: rect(28px, 84px, 56px, 56px);
+ }
+
+ #urlbar-go-button:hover:active {
+ -moz-image-region: rect(56px, 84px, 84px, 56px);
+ }
+
+ #urlbar-reload-button {
+ -moz-image-region: rect(0, 28px, 28px, 0);
+ }
+
+ #urlbar-reload-button:not([disabled]):hover {
+ -moz-image-region: rect(28px, 28px, 56px, 0);
+ }
+
+ #urlbar-reload-button:not([disabled]):hover:active {
+ -moz-image-region: rect(56px, 28px, 84px, 0);
+ }
+
+ #urlbar-stop-button {
+ -moz-image-region: rect(0, 56px, 28px, 28px);
+ }
+
+ #urlbar-stop-button:not([disabled]):hover {
+ -moz-image-region: rect(28px, 56px, 56px, 28px);
+ }
+
+ #urlbar-stop-button:hover:active {
+ -moz-image-region: rect(56px, 56px, 84px, 28px);
+ }
+}
+
+/* popup blocker button */
+
+#page-report-button {
+ list-style-image: url("chrome://browser/skin/urlbar-popup-blocked.png");
+ -moz-image-region: rect(0, 16px, 16px, 0);
+}
+
+#page-report-button:hover {
+ -moz-image-region: rect(0, 32px, 16px, 16px);
+}
+
+#page-report-button:hover:active,
+#page-report-button[open="true"] {
+ -moz-image-region: rect(0, 48px, 16px, 32px);
+}
+
+/* Reader mode button */
+
+#reader-mode-button {
+ list-style-image: url("chrome://browser/skin/readerMode.svg");
+ -moz-image-region: rect(0, 16px, 16px, 0);
+}
+
+#reader-mode-button:hover,
+#reader-mode-button[readeractive]:hover {
+ -moz-image-region: rect(0, 32px, 16px, 16px);
+}
+
+#reader-mode-button:hover:active,
+#reader-mode-button[readeractive] {
+ -moz-image-region: rect(0, 48px, 16px, 32px);
+}
+
+/* social share panel */
+%include ../shared/social/social.inc.css
+
+.social-panel-frame {
+ border-radius: inherit;
+}
+
+.social-share-frame {
+ min-width: 756px;
+ height: 150px;
+}
+#share-container {
+ min-width: 756px;
+ background-color: white;
+ background-repeat: no-repeat;
+ background-position: center center;
+}
+#share-container[loading] {
+ background-image: url(chrome://browser/skin/tabbrowser/pendingpaint.png);
+}
+#share-container > browser {
+ transition: opacity 150ms ease-in-out;
+ opacity: 1;
+}
+#share-container[loading] > browser {
+ opacity: 0;
+}
+
+.social-share-toolbar {
+ border-bottom: 1px solid #e2e5e8;
+ padding: 2px;
+}
+
+#social-share-provider-buttons {
+ padding: 0;
+ margin: 0;
+}
+
+.share-provider-button {
+ padding: 5px;
+ margin: 2px;
+}
+
+.share-provider-button > .toolbarbutton-text {
+ display: none;
+}
+.share-provider-button > .toolbarbutton-icon {
+ width: 16px;
+ min-height: 16px;
+ max-height: 16px;
+}
+
+#social-share-panel {
+ min-height: 100px;
+ min-width: 766px;
+}
+
+#share-container,
+.social-share-frame {
+ border-top-left-radius: 0;
+ border-bottom-left-radius: inherit;
+ border-top-right-radius: 0;
+ border-bottom-right-radius: inherit;
+}
+
+#social-share-panel > .social-share-toolbar {
+ border-top-left-radius: inherit;
+ border-top-right-radius: inherit;
+}
+
+#social-share-provider-buttons {
+ border-top-left-radius: inherit;
+ border-top-right-radius: inherit;
+}
+
+/* bookmarks menu-button */
+
+#nav-bar #bookmarks-menu-button[cui-areatype="toolbar"]:not([overflowedItem=true]) > .toolbarbutton-menubutton-dropmarker > .dropmarker-icon {
+ padding-top: var(--toolbarbutton-vertical-inner-padding);
+ padding-bottom: var(--toolbarbutton-vertical-inner-padding);
+}
+
+#BMB_bookmarksPopup[side="top"],
+#BMB_bookmarksPopup[side="bottom"] {
+ margin-left: -20px;
+ margin-right: -20px;
+}
+
+#BMB_bookmarksPopup[side="left"],
+#BMB_bookmarksPopup[side="right"] {
+ margin-top: -20px;
+ margin-bottom: -20px;
+}
+
+/* bookmarking panel */
+
+#editBookmarkPanelStarIcon {
+ list-style-image: url("chrome://browser/skin/places/starred48.png");
+ width: 48px;
+ height: 48px;
+}
+
+#editBookmarkPanelStarIcon[unstarred] {
+ list-style-image: url("chrome://browser/skin/places/unstarred48.png");
+}
+
+#editBookmarkPanelTitle {
+ font-size: 130%;
+}
+
+#editBookmarkPanelHeader,
+#editBookmarkPanelContent {
+ margin-bottom: .5em;
+}
+
+/* Implements editBookmarkPanel resizing on folderTree un-collapse. */
+#editBMPanel_folderTree {
+ min-width: 27em;
+}
+
+/* ::::: content area ::::: */
+
+#sidebar {
+ background-color: Window;
+}
+
+#sidebar-title {
+ padding-inline-start: 0px;
+}
+
+#sidebar-header > .close-icon {
+ -moz-appearance: none;
+ padding: 2px;
+ margin: 0;
+ border: none;
+}
+
+@media not all and (min-resolution: 1.1dppx) {
+ #sidebar-header > .close-icon:-moz-lwtheme-brighttext {
+ list-style-image: url("chrome://global/skin/icons/close-inverted.png");
+ }
+}
+
+@media (min-resolution: 1.1dppx) {
+ #sidebar-header > .close-icon:-moz-lwtheme-brighttext {
+ list-style-image: url("chrome://global/skin/icons/close-inverted@2x.png");
+ }
+}
+
+@media (-moz-os-version: windows-xp),
+ (-moz-os-version: windows-vista),
+ (-moz-os-version: windows-win7) {
+ #sidebar-header > .close-icon {
+ padding-top: 4px;
+ padding-bottom: 4px;
+ }
+}
+
+.browserContainer > findbar {
+ background-color: -moz-dialog;
+ color: -moz-DialogText;
+ text-shadow: none;
+}
+
+/* Tabstrip */
+
+#TabsToolbar {
+ min-height: 0;
+ padding: 0;
+ margin-bottom: calc(-1 * var(--tab-toolbar-navbar-overlap)); /* overlap the nav-bar's top border */
+}
+
+@media (-moz-os-version: windows-xp) and (-moz-windows-default-theme) {
+ #main-window[sizemode=normal] #TabsToolbar {
+ padding-left: 2px;
+ padding-right: 2px;
+ }
+}
+
+%include ../shared/tabs.inc.css
+
+/* Remove border between tab strip and navigation toolbar on Windows 10+ */
+@media not all and (-moz-os-version: windows-xp) {
+ @media not all and (-moz-os-version: windows-vista) {
+ @media not all and (-moz-os-version: windows-win7) {
+ @media not all and (-moz-os-version: windows-win8) {
+ @media (-moz-windows-default-theme) {
+ .tab-background-end[selected=true]::after,
+ .tab-background-start[selected=true]::after {
+ content: none;
+ }
+
+ #TabsToolbar {
+ --tab-stroke-background-size: 0 0;
+ }
+
+ :root {
+ --tab-toolbar-navbar-overlap: 0px;
+ }
+
+ #nav-bar {
+ border-top-style: none !important;
+ box-shadow: none;
+ }
+ }
+ }
+ }
+ }
+}
+
+/* Invert the unhovered close tab icons on bright-text tabs */
+@media not all and (min-resolution: 1.1dppx) {
+ .tab-close-button:-moz-lwtheme-brighttext,
+ #TabsToolbar[brighttext] .tab-close-button:not([selected="true"]) {
+ list-style-image: url("chrome://global/skin/icons/close-inverted.png");
+ }
+}
+
+@media (min-resolution: 1.1dppx) {
+ .tab-close-button:-moz-lwtheme-brighttext,
+ #TabsToolbar[brighttext] .tab-close-button:not([selected="true"]) {
+ list-style-image: url("chrome://global/skin/icons/close-inverted@2x.png");
+ }
+}
+
+/* tabbrowser-tab focus ring */
+.tabbrowser-tab:focus > .tab-stack > .tab-content {
+ outline: 1px dotted;
+ outline-offset: -6px;
+}
+
+/* Tab DnD indicator */
+.tab-drop-indicator {
+ list-style-image: url(chrome://browser/skin/tabbrowser/tabDragIndicator.png);
+ margin-bottom: -9px;
+ z-index: 3;
+}
+
+/* Tab close button */
+.tab-close-button {
+ -moz-appearance: none;
+ border: none;
+}
+
+/* Tab scrollbox arrow, tabstrip new tab and all-tabs buttons */
+
+.tabbrowser-arrowscrollbox > .scrollbutton-up,
+.tabbrowser-arrowscrollbox > .scrollbutton-down {
+ list-style-image: url("chrome://browser/skin/tabbrowser/tab-arrow-left.svg");
+ margin: 0 0 var(--tab-toolbar-navbar-overlap);
+}
+
+#TabsToolbar[brighttext] > #tabbrowser-tabs > .tabbrowser-arrowscrollbox > .scrollbutton-up,
+#TabsToolbar[brighttext] > #tabbrowser-tabs > .tabbrowser-arrowscrollbox > .scrollbutton-down {
+ list-style-image: url(chrome://browser/skin/tabbrowser/tab-arrow-left-inverted.svg);
+}
+
+.tabbrowser-arrowscrollbox > .scrollbutton-up[disabled],
+.tabbrowser-arrowscrollbox > .scrollbutton-down[disabled] {
+ opacity: .4;
+}
+
+.tabbrowser-arrowscrollbox > .scrollbutton-up:-moz-locale-dir(rtl),
+.tabbrowser-arrowscrollbox > .scrollbutton-down:-moz-locale-dir(ltr) {
+ transform: scaleX(-1);
+}
+
+.tabbrowser-arrowscrollbox > .scrollbutton-down {
+ transition: 1s background-color ease-out;
+}
+
+.tabbrowser-arrowscrollbox > .scrollbutton-down[notifybgtab] {
+ background-color: Highlight;
+ transition: none;
+}
+
+.tabs-newtab-button > .toolbarbutton-icon {
+ margin-top: -1px;
+ margin-bottom: -1px;
+}
+
+.tabs-newtab-button,
+#TabsToolbar > #new-tab-button,
+#TabsToolbar > toolbarpaletteitem > #new-tab-button {
+ list-style-image: url(chrome://browser/skin/tabbrowser/newtab.svg);
+ -moz-image-region: auto;
+}
+
+#TabsToolbar[brighttext] .tabs-newtab-button,
+#TabsToolbar[brighttext] > #new-tab-button,
+#TabsToolbar[brighttext] > toolbarpaletteitem > #new-tab-button {
+ list-style-image: url(chrome://browser/skin/tabbrowser/newtab-inverted.svg);
+}
+
+.tabs-newtab-button > .toolbarbutton-icon,
+#TabsToolbar > #new-tab-button > .toolbarbutton-icon,
+#TabsToolbar > toolbarpaletteitem > #new-tab-button > .toolbarbutton-icon {
+ width: 16px;
+}
+
+#TabsToolbar > #new-tab-button {
+ width: 26px;
+}
+
+#alltabs-button {
+ list-style-image: url("chrome://browser/skin/toolbarbutton-dropdown-arrow.png");
+}
+
+#TabsToolbar[brighttext] > #alltabs-button,
+#TabsToolbar[brighttext] > toolbarpaletteitem > #alltabs-button {
+ list-style-image: url("chrome://browser/skin/toolbarbutton-dropdown-arrow-inverted.png");
+}
+
+#alltabs-button > .toolbarbutton-icon {
+ margin: 0 2px;
+}
+
+#alltabs-button > .toolbarbutton-menu-dropmarker {
+ display: none;
+}
+
+/* All tabs menupopup */
+.alltabs-item > .menu-iconic-left > .menu-iconic-icon {
+ list-style-image: url("chrome://mozapps/skin/places/defaultFavicon.png");
+}
+
+.alltabs-item[selected="true"] {
+ font-weight: bold;
+}
+
+.alltabs-item[busy] > .menu-iconic-left > .menu-iconic-icon {
+ list-style-image: url("chrome://global/skin/icons/loading.png");
+}
+
+@media (min-resolution: 1.1dppx) {
+ .alltabs-item[busy] > .menu-iconic-left > .menu-iconic-icon {
+ list-style-image: url("chrome://global/skin/icons/loading@2x.png");
+ }
+}
+
+toolbarbutton.chevron {
+ list-style-image: url("chrome://global/skin/toolbar/chevron.gif") !important;
+}
+
+toolbar[brighttext] toolbarbutton.chevron {
+ list-style-image: url("chrome://global/skin/toolbar/chevron-inverted.png") !important;
+}
+
+toolbarbutton.chevron:-moz-locale-dir(rtl) > .toolbarbutton-icon {
+ transform: scaleX(-1);
+}
+
+toolbarbutton.chevron > .toolbarbutton-text,
+toolbarbutton.chevron > .toolbarbutton-menu-dropmarker {
+ display: none;
+}
+
+toolbarbutton.chevron > .toolbarbutton-icon {
+ margin: 0;
+}
+
+#sidebar-throbber[loading="true"] {
+ list-style-image: url("chrome://global/skin/icons/loading.png");
+ margin-inline-end: 4px;
+}
+
+@media (min-resolution: 1.1dppx) {
+ #sidebar-throbber[loading="true"] {
+ list-style-image: url("chrome://global/skin/icons/loading@2x.png");
+ width: 16px;
+ }
+}
+
+/* Bookmarks toolbar */
+#PlacesToolbarDropIndicator {
+ list-style-image: url(chrome://browser/skin/places/toolbarDropMarker.png);
+}
+
+toolbarbutton.bookmark-item[dragover="true"][open="true"] {
+ -moz-appearance: none;
+ background: Highlight !important;
+ color: HighlightText !important;
+}
+
+/* rules for menupopup drop indicators */
+.menupopup-drop-indicator-bar {
+ position: relative;
+ /* these two margins must together compensate the indicator's height */
+ margin-top: -1px;
+ margin-bottom: -1px;
+}
+
+.menupopup-drop-indicator {
+ list-style-image: none;
+ height: 2px;
+ margin-inline-end: -4em;
+ background-color: Highlight;
+}
+
+%include ../shared/notification-icons.inc.css
+
+.popup-notification-body[popupid="addon-progress"],
+.popup-notification-body[popupid="addon-install-confirmation"] {
+ width: 28em;
+ max-width: 28em;
+}
+
+.addon-install-confirmation-name {
+ font-weight: bold;
+}
+
+/* Notification icon box */
+
+.notification-anchor-icon:-moz-focusring {
+ outline: 1px dotted -moz-DialogText;
+}
+
+/* Translation infobar */
+
+%include ../shared/translation/infobar.inc.css
+
+notification[value="translation"] {
+ min-height: 40px;
+}
+
+@media (-moz-windows-default-theme) {
+ notification[value="translation"],
+ notification[value="translation"] button,
+ notification[value="translation"] menulist {
+ min-height: 30px;
+ color: #545454;
+ }
+
+ notification[value="translation"] {
+ background-color: #EEE;
+ }
+
+ notification[value="translation"] button,
+ notification[value="translation"] menulist {
+ padding-inline-end: 1ch;
+ }
+
+ notification[value="translation"] menulist {
+ border: 1px solid #C1C1C1;
+ background-color: #FFF;
+ }
+
+ notification[value="translation"] button {
+ border: 1px solid #C1C1C1;
+ background-color: #FBFBFB;
+ }
+
+ notification[value="translation"] button,
+ notification[value="translation"] menulist,
+ notification[value="translation"] menulist > .menulist-label-box {
+ margin-inline-start: 1ch;
+ margin-inline-end: 1ch;
+ }
+
+ notification[value="translation"] button:hover,
+ notification[value="translation"] button:active,
+ notification[value="translation"] menulist:hover,
+ notification[value="translation"] menulist:active {
+ background-color: #EBEBEB;
+ }
+
+ notification[value="translation"] button[anonid="translate"] {
+ color: #FFF;
+ background-color: #0095DD;
+ box-shadow: none;
+ border: 1px solid #006B9D;
+ }
+
+ notification[value="translation"] button[anonid="translate"]:hover,
+ notification[value="translation"] button[anonid="translate"]:active {
+ background-color: #008ACB;
+ }
+
+ notification[value="translation"] button[type="menu"] > .button-box > .button-menu-dropmarker,
+ notification[value="translation"] menulist > .menulist-dropmarker {
+ list-style-image: url("chrome://browser/skin/toolbarbutton-dropdown-arrow.png");
+ }
+
+ notification[value="translation"] button > .button-box,
+ notification[value="translation"] button[type="menu"] > .button-box > .button-menu-dropmarker {
+ padding: 0;
+ margin-inline-start: 3ch;
+ }
+
+ notification[value="translation"] button:not([type="menu"]) > .button-box {
+ margin-inline-end: 3ch;
+ }
+}
+
+.translation-menupopup {
+ -moz-appearance: none;
+}
+
+/* Bookmarks roots menu-items */
+#subscribeToPageMenuitem:not([disabled]),
+#subscribeToPageMenupopup {
+ list-style-image: url("chrome://browser/skin/feeds/feedIcon16.png");
+}
+
+#bookmarksToolbarFolderMenu,
+#BMB_bookmarksToolbar,
+#panelMenu_bookmarksToolbar {
+ list-style-image: url("chrome://browser/skin/places/bookmarksToolbar.png");
+ -moz-image-region: auto;
+}
+
+#menu_unsortedBookmarks,
+#BMB_unsortedBookmarks,
+#panelMenu_unsortedBookmarks {
+ list-style-image: url("chrome://browser/skin/places/unsortedBookmarks.png");
+ -moz-image-region: auto;
+}
+
+/* Status panel */
+
+.statuspanel-label {
+ margin: 0;
+ padding: 2px 4px;
+ background: -moz-dialog;
+ border: 1px none ThreeDShadow;
+ border-top-style: solid;
+ color: -moz-dialogText;
+ text-shadow: none;
+}
+
+@media (-moz-windows-default-theme) {
+ .statuspanel-label {
+ background: linear-gradient(#fff, #ddd);
+ border-color: #ccc;
+ color: #333;
+ }
+}
+
+.statuspanel-label:-moz-locale-dir(ltr):not([mirror]),
+.statuspanel-label:-moz-locale-dir(rtl)[mirror] {
+ border-right-style: solid;
+ /* disabled for triggering grayscale AA (bug 659213)
+ border-top-right-radius: .3em;
+ */
+ margin-right: 1em;
+}
+
+.statuspanel-label:-moz-locale-dir(rtl):not([mirror]),
+.statuspanel-label:-moz-locale-dir(ltr)[mirror] {
+ border-left-style: solid;
+ /* disabled for triggering grayscale AA (bug 659213)
+ border-top-left-radius: .3em;
+ */
+ margin-left: 1em;
+}
+
+%include ../shared/fullscreen/warning.inc.css
+%include ../shared/ctrlTab.inc.css
+%include ../../../devtools/client/themes/responsivedesign.inc.css
+%include ../../../devtools/client/themes/commandline.inc.css
+%include ../shared/plugin-doorhanger.inc.css
+
+notification.pluginVulnerable > .notification-inner > .messageCloseButton {
+ list-style-image: url("chrome://global/skin/icons/close-inverted.png");
+}
+
+@media (min-resolution: 1.1dppx) {
+ notification.pluginVulnerable > .notification-inner > .messageCloseButton {
+ list-style-image: url("chrome://global/skin/icons/close-inverted@2x.png");
+ }
+}
+
+
+%include downloads/indicator.css
+
+/* Error counter */
+
+#developer-toolbar-toolbox-button[error-count]:before {
+ color: #FDF3DE;
+ min-width: 16px;
+ text-shadow: none;
+ background-image: linear-gradient(#B4211B, #8A1915);
+ border-radius: 1px;
+ margin-inline-end: 5px;
+}
+
+/* Customization mode */
+
+%include ../shared/customizableui/customizeMode.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 @toolbarShadowColor@;
+ border-right: 1px solid @toolbarShadowColor@;
+ background-clip: padding-box;
+}
+
+#main-window[customize-entered] #browser-bottombox {
+ border-bottom: 1px solid @toolbarShadowColor@;
+}
+
+#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;
+ margin-inline-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;
+ margin-inline-end: 4px;
+ width: 40px;
+ height: 20px;
+ position: relative;
+}
+
+@media (-moz-os-version: windows-xp) {
+ @media not all and (-moz-windows-classic) {
+ #private-browsing-indicator-titlebar > .private-browsing-indicator {
+ background-image: url("chrome://browser/skin/privatebrowsing-mask-titlebar-XPVista7-tall.png");
+ height: 28px;
+ }
+
+ #main-window[sizemode="maximized"] > #titlebar > #titlebar-content > #titlebar-buttonbox-container > #private-browsing-indicator-titlebar > .private-browsing-indicator {
+ top: -5px;
+ }
+ #main-window[sizemode="normal"] > #titlebar > #titlebar-content > #titlebar-buttonbox-container > #private-browsing-indicator-titlebar > .private-browsing-indicator {
+ top: -1px;
+ }
+ }
+}
+
+@media (-moz-windows-classic) {
+ /**
+ * We have to use top instead of background-position in this case, otherwise
+ * the bottom of the indicator would get cut off by the bounds of the
+ * private-browsing-indicator element.
+ */
+ #main-window[sizemode="normal"] > #titlebar > #titlebar-content > #titlebar-buttonbox-container > #private-browsing-indicator-titlebar > .private-browsing-indicator {
+ top: 4px;
+ }
+}
+
+@media (-moz-os-version: windows-vista),
+ (-moz-os-version: windows-win7) {
+ @media (-moz-windows-glass) {
+ #main-window[sizemode="normal"] > #titlebar > #titlebar-content > #titlebar-buttonbox-container > #private-browsing-indicator-titlebar > .private-browsing-indicator {
+ top: 1px;
+ }
+ #main-window[sizemode="maximized"] > #titlebar > #titlebar-content > #titlebar-buttonbox-container > #private-browsing-indicator-titlebar > .private-browsing-indicator {
+ top: -1px;
+ }
+ }
+
+ /**
+ * This next block targets Aero Basic, which has different positioning for the
+ * window caption buttons, and therefore needs to be special-cased.
+ */
+ @media (-moz-windows-default-theme) {
+ @media not all and (-moz-windows-compositor) {
+ #main-window[sizemode="normal"] > #titlebar > #titlebar-content > #titlebar-buttonbox-container > #private-browsing-indicator-titlebar > .private-browsing-indicator {
+ background-image: url("chrome://browser/skin/privatebrowsing-mask-titlebar-XPVista7-tall.png");
+ height: 28px;
+ }
+ }
+ }
+}
+
+/* End private browsing indicators */
+
+%include ../shared/UITour.inc.css
+
+#UITourTooltipButtons {
+ /**
+ * Override the --arrowpanel-padding so the background extends
+ * to the sides and bottom of the panel.
+ */
+ margin-left: -10px;
+ margin-right: -10px;
+ margin-bottom: -10px;
+}
+
+%include ../shared/contextmenu.inc.css
+
+#context-navigation {
+ background-color: menu;
+ padding-bottom: 4px;
+}
+
+#context-sep-navigation {
+ margin-inline-start: -28px;
+ margin-top: -4px;
+}
+
+
+@media not all and (-moz-os-version: windows-xp) {
+%include browser-aero.css
+}
+
+.browser-extension-panel > .panel-arrowcontainer > .panel-arrowcontent {
+ padding: 0;
+ overflow: hidden;
+}
+
+@media (-moz-os-version: windows-xp),
+ (-moz-os-version: windows-vista),
+ (-moz-os-version: windows-win7) {
+ .cui-widget-panelview[id^=PanelUI-webext-] {
+ border-radius: 4px;
+ }
+}
+
+.webextension-popup-browser {
+ border-radius: inherit;
+}
+
+.contentSelectDropdown-ingroup > .menu-iconic-text {
+ padding-inline-start: 20px;
+}
+
+#ContentSelectDropdown > menupopup {
+ background-color: -moz-field;
+ -moz-border-top-colors: GrayText;
+ -moz-border-right-colors: GrayText;
+ -moz-border-bottom-colors: GrayText;
+ -moz-border-left-colors: GrayText;
+}
+
+#ContentSelectDropdown > menupopup > menucaption,
+#ContentSelectDropdown > menupopup > menuitem {
+ padding: 0 6px;
+ border-width: 0;
+ font: -moz-list;
+}
+
+#ContentSelectDropdown > menupopup > menucaption > .menu-iconic-text,
+#ContentSelectDropdown > menupopup > menuitem > .menu-iconic-text {
+ /* Padding should follow the 4/12 ratio, where 12px is the default font-size
+ with 4px being the preferred padding size. */
+ padding-top: .3333em;
+ padding-bottom: .3333em;
+}
+
+#ContentSelectDropdown > menupopup > menucaption > .menu-iconic-text {
+ font-weight: bold;
+}
+
+#ContentSelectDropdown > menupopup > menuitem[_moz-menuactive="true"][disabled="true"] {
+ color: GrayText;
+ background-color: unset;
+}
+
+#ContentSelectDropdown > menupopup > menucaption {
+ background-color: buttonface;
+}
+
+#ContentSelectDropdown > menupopup > menucaption[disabled="true"] {
+ color: GrayText;
+}
+
+#ContentSelectDropdown > .isOpenedViaTouch > menucaption > .menu-iconic-text,
+#ContentSelectDropdown > .isOpenedViaTouch > menuitem > .menu-iconic-text {
+ /* Touch padding should follow the 11/12 ratio, where 12px is the default
+ font-size with 11px being the preferred padding size. */
+ padding-top: .9167em;
+ padding-bottom: .9167em;
+}
diff --git a/browser/themes/windows/caption-buttons.svg b/browser/themes/windows/caption-buttons.svg
new file mode 100644
index 000000000..3ba4f95a1
--- /dev/null
+++ b/browser/themes/windows/caption-buttons.svg
@@ -0,0 +1,100 @@
+<!-- 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/. -->
+<svg width="12" height="12" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
+ <style>
+ g:not(:target) {
+ display: none;
+ }
+ use:target > g {
+ display: initial;
+ }
+
+ g {
+ stroke: ButtonText;
+ stroke-width: 0.9px;
+ fill: none;
+ }
+ g:not([id|="close"]) {
+ shape-rendering: crispEdges;
+ }
+
+ .highcontrast {
+ stroke-width: 1.9px;
+ }
+ .highcontrast-hover > g {
+ stroke: HighlightText;
+ }
+ .white > g {
+ stroke: #fff;
+ }
+ .themes {
+ stroke: #fff;
+ stroke-width: 1.9px;
+ }
+
+ .outer-stroke {
+ stroke: #000;
+ stroke-width: 3.6;
+ opacity: .75;
+ }
+ .restore-background-window {
+ stroke-width: .9;
+ }
+ </style>
+ <g id="close">
+ <path d="M1,1 l 10,10 M1,11 l 10,-10"/>
+ </g>
+ <g id="maximize">
+ <rect x="1.5" y="1.5" width="9" height="9"/>
+ </g>
+ <g id="minimize">
+ <line x1="1" y1="5.5" x2="11" y2="5.5"/>
+ </g>
+ <g id="restore">
+ <rect x="1.5" y="3.5" width="7" height="7"/>
+ <polyline points="3.5,3.5 3.5,1.5 10.5,1.5 10.5,8.5 8.5,8.5"/>
+ </g>
+
+ <use id="close-white" class="white" xlink:href="#close"/>
+ <use id="maximize-white" class="white" xlink:href="#maximize"/>
+ <use id="minimize-white" class="white" xlink:href="#minimize"/>
+ <use id="restore-white" class="white" xlink:href="#restore"/>
+
+ <g id="close-highcontrast" class="highcontrast">
+ <path d="M1,1 l 10,10 M1,11 l 10,-10"/>
+ </g>
+ <g id="maximize-highcontrast" class="highcontrast">
+ <rect x="2" y="2" width="8" height="8"/>
+ </g>
+ <g id="minimize-highcontrast" class="highcontrast">
+ <line x1="1" y1="6" x2="11" y2="6"/>
+ </g>
+ <g id="restore-highcontrast" class="highcontrast">
+ <rect x="2" y="4" width="6" height="6"/>
+ <polyline points="3.5,1.5 10.5,1.5 10.5,8.5" class="restore-background-window"/>
+ </g>
+
+ <use id="close-highcontrast-hover" class="highcontrast-hover" xlink:href="#close-highcontrast"/>
+ <use id="maximize-highcontrast-hover" class="highcontrast-hover" xlink:href="#maximize-highcontrast"/>
+ <use id="minimize-highcontrast-hover" class="highcontrast-hover" xlink:href="#minimize-highcontrast"/>
+ <use id="restore-highcontrast-hover" class="highcontrast-hover" xlink:href="#restore-highcontrast"/>
+
+ <g id="close-themes" class="themes">
+ <path d="M1,1 l 10,10 M1,11 l 10,-10" class="outer-stroke" />
+ <path d="M1.75,1.75 l 8.5,8.5 M1.75,10.25 l 8.5,-8.5"/>
+ </g>
+ <g id="maximize-themes" class="themes">
+ <rect x="2" y="2" width="8" height="8" class="outer-stroke"/>
+ <rect x="2" y="2" width="8" height="8"/>
+ </g>
+ <g id="minimize-themes" class="themes">
+ <line x1="0" y1="6" x2="12" y2="6" class="outer-stroke"/>
+ <line x1="1" y1="6" x2="11" y2="6"/>
+ </g>
+ <g id="restore-themes" class="themes">
+ <path d="M2,4 l 6,0 l 0,6 l -6,0z M2.5,1.5 l 8,0 l 0,8" class="outer-stroke"/>
+ <rect x="2" y="4" width="6" height="6"/>
+ <polyline points="3.5,1.5 10.5,1.5 10.5,8.5" class="restore-background-window"/>
+ </g>
+</svg>
diff --git a/browser/themes/windows/click-to-play-warning-stripes.png b/browser/themes/windows/click-to-play-warning-stripes.png
new file mode 100644
index 000000000..cb4b71e50
--- /dev/null
+++ b/browser/themes/windows/click-to-play-warning-stripes.png
Binary files differ
diff --git a/browser/themes/windows/communicator/communicator.css b/browser/themes/windows/communicator/communicator.css
new file mode 100644
index 000000000..0b57574fd
--- /dev/null
+++ b/browser/themes/windows/communicator/communicator.css
@@ -0,0 +1,6 @@
+/* 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/. */
+
+@import url("chrome://global/skin/");
+
diff --git a/browser/themes/windows/communicator/jar.mn b/browser/themes/windows/communicator/jar.mn
new file mode 100644
index 000000000..dfd20c523
--- /dev/null
+++ b/browser/themes/windows/communicator/jar.mn
@@ -0,0 +1,7 @@
+# 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/.
+
+browser.jar:
+% skin communicator classic/1.0 %skin/classic/communicator/
+ skin/classic/communicator/communicator.css
diff --git a/browser/themes/windows/communicator/moz.build b/browser/themes/windows/communicator/moz.build
new file mode 100644
index 000000000..eb4454d28
--- /dev/null
+++ b/browser/themes/windows/communicator/moz.build
@@ -0,0 +1,7 @@
+# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
+# vim: set filetype=python:
+# 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/.
+
+JAR_MANIFESTS += ['jar.mn'] \ No newline at end of file
diff --git a/browser/themes/windows/content-contextmenu.svg b/browser/themes/windows/content-contextmenu.svg
new file mode 100644
index 000000000..b72b24708
--- /dev/null
+++ b/browser/themes/windows/content-contextmenu.svg
@@ -0,0 +1,46 @@
+<?xml version="1.0"?>
+<!-- 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/. -->
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 16 16">
+ <style>
+ use:not(:target) {
+ display: none;
+ }
+ use {
+ fill: menutext;
+ }
+ use[id$="-active"] {
+ fill: -moz-menuhovertext;
+ }
+ use[id$="-disabled"] {
+ fill: graytext;
+ }
+ </style>
+ <defs>
+ <path id="back-shape" fill-rule="evenodd" d="M1.192,8.893L2.21,9.964c0.064,0.065,0.136,0.117,0.214,0.159 l5.199,5.301c0.607,0.63,1.465,0.764,1.915,0.297l1.02-1.082c0.449-0.467,0.32-1.357-0.288-1.99l-2.116-2.158h5.705 c0.671,0,1.215-0.544,1.215-1.215v-2.43c0-0.671-0.544-1.215-1.215-1.215H8.094l2.271-2.309c0.609-0.626,0.737-1.512,0.288-1.974 L9.635,0.278C9.184-0.188,8.327-0.055,7.718,0.575L2.479,5.901C2.38,5.946,2.289,6.008,2.21,6.089L1.192,7.171 c-0.21,0.219-0.293,0.53-0.26,0.864C0.899,8.367,0.981,8.676,1.192,8.893z"/>
+ <path id="forward-shape" fill-rule="evenodd" d="M14.808,7.107L13.79,6.036c-0.064-0.065-0.136-0.117-0.214-0.159 L8.377,0.576C7.77-0.054,6.912-0.189,6.461,0.278L5.441,1.36c-0.449,0.467-0.32,1.357,0.288,1.99l2.116,2.158H2.14 c-0.671,0-1.215,0.544-1.215,1.215v2.43c0,0.671,0.544,1.215,1.215,1.215h5.765l-2.271,2.309c-0.609,0.626-0.737,1.512-0.288,1.974 l1.019,1.072c0.451,0.465,1.308,0.332,1.917-0.297l5.238-5.326c0.1-0.045,0.191-0.107,0.269-0.188l1.019-1.082 c0.21-0.219,0.293-0.53,0.26-0.864C15.101,7.633,15.019,7.324,14.808,7.107z"/>
+ <path id="reload-shape" fill-rule="evenodd" d="M15.429,8h-8l3.207-3.207C9.889,4.265,8.986,3.947,8,3.947 c-2.554,0-4.625,2.071-4.625,4.625S5.446,13.196,8,13.196c1.638,0,3.069-0.857,3.891-2.141l2.576,1.104 C13.199,14.439,10.794,16,8,16c-4.103,0-7.429-3.326-7.429-7.429S3.897,1.143,8,1.143c1.762,0,3.366,0.624,4.631,1.654L15.429,0V8z"/>
+ <polygon id="stop-shape" points="16,2.748 13.338,0.079 8.038,5.391 2.661,0 0,2.669 5.377,8.059 0.157,13.292 2.819,15.961 8.039,10.728 13.298,16 15.959,13.331 10.701,8.06"/>
+ <path id="bookmark-shape" d="M8.008,3.632l0.986,2.012l0.452,0.922l1.014,0.169l2.326,0.389l-1.719,1.799l-0.676,0.708l0.145,0.967 L10.896,13l-1.959-1.039l-0.937-0.497l-0.937,0.497l-1.957,1.038L5.468,10.6l0.146-0.968L4.937,8.924L3.219,7.126l2.351-0.39 l1.023-0.17l0.45-0.934L8.008,3.632 M8,0C7.72,0,7.44,0.217,7.228,0.65L5.242,4.766L0.907,5.485c-0.958,0.159-1.195,0.861-0.53,1.56 l3.113,3.258l-0.69,4.583c-0.105,0.689,0.172,1.092,0.658,1.092c0.185,0,0.399-0.058,0.635-0.181l3.906-2.072l3.906,2.072 c0.236,0.123,0.45,0.181,0.635,0.181c0.486,0,0.762-0.403,0.659-1.092l-0.687-4.583l3.109-3.255c0.666-0.702,0.428-1.404-0.53-1.564 l-4.303-0.719L8.772,0.65C8.56,0.217,8.28,0,8,0L8,0z"/>
+ <path id="bookmarked-shape" d="M8,0C7.719,0,7.438,0.217,7.225,0.651L5.233,4.773l-4.35,0.72c-0.961,0.159-1.199,0.862-0.531,1.562 l3.124,3.262l-0.692,4.589C2.679,15.596,2.957,16,3.444,16c0.185,0,0.401-0.058,0.637-0.181L8,13.744l3.919,2.075 C12.156,15.942,12.372,16,12.557,16c0.487,0,0.764-0.404,0.661-1.094l-0.69-4.589l3.12-3.259c0.668-0.703,0.43-1.406-0.532-1.566 l-4.317-0.72L8.775,0.651C8.562,0.217,8.281,0,8,0L8,0z"/>
+ </defs>
+ <use id="back" xlink:href="#back-shape"/>
+ <use id="back-active" xlink:href="#back-shape"/>
+ <use id="back-disabled" xlink:href="#back-shape"/>
+ <use id="forward" xlink:href="#forward-shape"/>
+ <use id="forward-active" xlink:href="#forward-shape"/>
+ <use id="forward-disabled" xlink:href="#forward-shape"/>
+ <use id="reload" xlink:href="#reload-shape"/>
+ <use id="reload-active" xlink:href="#reload-shape"/>
+ <use id="reload-disabled" xlink:href="#reload-shape"/>
+ <use id="stop" xlink:href="#stop-shape"/>
+ <use id="stop-active" xlink:href="#stop-shape"/>
+ <use id="stop-disabled" xlink:href="#stop-shape"/>
+ <use id="bookmark" xlink:href="#bookmark-shape"/>
+ <use id="bookmark-active" xlink:href="#bookmark-shape"/>
+ <use id="bookmark-disabled" xlink:href="#bookmark-shape"/>
+ <use id="bookmarked" xlink:href="#bookmarked-shape"/>
+ <use id="bookmarked-active" xlink:href="#bookmarked-shape"/>
+ <use id="bookmarked-disabled" xlink:href="#bookmarked-shape"/>
+</svg>
diff --git a/browser/themes/windows/controlcenter/panel.css b/browser/themes/windows/controlcenter/panel.css
new file mode 100644
index 000000000..fab9aa3a4
--- /dev/null
+++ b/browser/themes/windows/controlcenter/panel.css
@@ -0,0 +1,13 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+%include ../../shared/controlcenter/panel.inc.css
+
+.identity-popup-expander:-moz-focusring {
+ padding: 1px;
+}
+
+.identity-popup-expander:-moz-focusring > .button-box {
+ outline: 1px -moz-dialogtext dotted;
+}
diff --git a/browser/themes/windows/customizableui/background-noise-toolbar.png b/browser/themes/windows/customizableui/background-noise-toolbar.png
new file mode 100644
index 000000000..d09ba9daf
--- /dev/null
+++ b/browser/themes/windows/customizableui/background-noise-toolbar.png
Binary files differ
diff --git a/browser/themes/windows/customizableui/customize-titleBar-toggle.png b/browser/themes/windows/customizableui/customize-titleBar-toggle.png
new file mode 100644
index 000000000..3cf9f163d
--- /dev/null
+++ b/browser/themes/windows/customizableui/customize-titleBar-toggle.png
Binary files differ
diff --git a/browser/themes/windows/customizableui/customize-titleBar-toggle@2x.png b/browser/themes/windows/customizableui/customize-titleBar-toggle@2x.png
new file mode 100644
index 000000000..8e1beaec5
--- /dev/null
+++ b/browser/themes/windows/customizableui/customize-titleBar-toggle@2x.png
Binary files differ
diff --git a/browser/themes/windows/customizableui/customizeMode-gridTexture.png b/browser/themes/windows/customizableui/customizeMode-gridTexture.png
new file mode 100644
index 000000000..ca6c1196c
--- /dev/null
+++ b/browser/themes/windows/customizableui/customizeMode-gridTexture.png
Binary files differ
diff --git a/browser/themes/windows/customizableui/customizeMode-separatorHorizontal.png b/browser/themes/windows/customizableui/customizeMode-separatorHorizontal.png
new file mode 100644
index 000000000..5e17cb4db
--- /dev/null
+++ b/browser/themes/windows/customizableui/customizeMode-separatorHorizontal.png
Binary files differ
diff --git a/browser/themes/windows/customizableui/customizeMode-separatorVertical.png b/browser/themes/windows/customizableui/customizeMode-separatorVertical.png
new file mode 100644
index 000000000..dc4caee81
--- /dev/null
+++ b/browser/themes/windows/customizableui/customizeMode-separatorVertical.png
Binary files differ
diff --git a/browser/themes/windows/customizableui/menu-arrow.svg b/browser/themes/windows/customizableui/menu-arrow.svg
new file mode 100644
index 000000000..8437779fd
--- /dev/null
+++ b/browser/themes/windows/customizableui/menu-arrow.svg
@@ -0,0 +1,26 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- 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/. -->
+<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" height="16" width="16" viewBox="0 0 16 16">
+ <style>
+ use:not(:target) {
+ display: none;
+ }
+ use {
+ fill: MenuText;
+ }
+ use[id$="-disabled"] {
+ fill: GrayText;
+ }
+ use[id$="-hover"] {
+ fill: HighlightText;
+ }
+ </style>
+ <defs>
+ <path id="arrow-shape" d="m 6,4 0,8 5,-4 z"/>
+ </defs>
+ <use id="arrow" xlink:href="#arrow-shape"/>
+ <use id="arrow-disabled" xlink:href="#arrow-shape"/>
+ <use id="arrow-hover" xlink:href="#arrow-shape"/>
+</svg>
diff --git a/browser/themes/windows/customizableui/panelUI.css b/browser/themes/windows/customizableui/panelUI.css
new file mode 100644
index 000000000..92080d599
--- /dev/null
+++ b/browser/themes/windows/customizableui/panelUI.css
@@ -0,0 +1,151 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+%include ../../shared/customizableui/panelUI.inc.css
+
+.panel-subviews {
+ background-color: var(--arrowpanel-background);
+}
+
+#PanelUI-contents #zoom-out-btn {
+ padding-left: 12px;
+ padding-right: 12px;
+}
+
+#PanelUI-contents #zoom-in-btn {
+ padding-left: 12px;
+ padding-right: 12px;
+}
+
+/* bookmark panel submenus */
+
+#BMB_bookmarksPopup menupopup[placespopup=true] {
+ -moz-appearance: none;
+ background: transparent;
+ border: none;
+ padding: 6px;
+}
+
+#BMB_bookmarksPopup menupopup[placespopup=true] > hbox {
+ /* emulating chrome://browser/content/places/menu.xml#places-popup-arrow but without the arrow */
+ box-shadow: 0 0 4px rgba(0,0,0,0.2);
+ background: var(--arrowpanel-background);
+ color: var(--arrowpanel-color);
+ border: 1px solid var(--arrowpanel-border-color);
+ border-radius: 3.5px;
+ margin-top: -4px;
+}
+
+#BMB_bookmarksPopup menupopup {
+ padding-top: 2px;
+}
+
+/* Add some space at the top because there are no headers: */
+#BMB_bookmarksPopup menupopup[placespopup=true] > hbox > .popup-internal-box > .arrowscrollbox-scrollbox > .scrollbox-innerbox {
+ padding-top: 4px;
+}
+
+/* bookmark panel separator */
+#BMB_bookmarksPopup menuseparator {
+ padding-top: 0;
+ padding-bottom: 0;
+}
+
+.subviewbutton > .menu-right,
+.subviewbutton > .menu-iconic-left {
+ padding-top: 1px;
+ margin-top: 1px;
+ margin-bottom: 2px;
+}
+
+/* Disabled empty item looks too small otherwise, because it has no icon. */
+menuitem.subviewbutton[disabled]:not(.menuitem-iconic),
+/* Same for checkbox menu items, whose icons lose size due to -moz-appearance: none: */
+menuitem[type="checkbox"].subviewbutton {
+ /* This is 16px for an icon + 3px for its margins + 1px for its padding +
+ * 2px for its border, see above */
+ min-height: 22px;
+}
+
+.subviewbutton > .toolbarbutton-text {
+ padding-top: 3px;
+ padding-bottom: 3px;
+}
+
+.widget-overflow-list .toolbarbutton-1 > .toolbarbutton-menubutton-button {
+ -moz-appearance: none;
+ border: 0;
+ margin-inline-start: 3px;
+}
+
+.widget-overflow-list .toolbarbutton-1 > .toolbarbutton-menubutton-dropmarker {
+ padding: 0 2px;
+ padding-inline-start: 0;
+ height: 18px;
+}
+
+.widget-overflow-list .toolbarbutton-1 > .toolbarbutton-menubutton-dropmarker > .dropmarker-icon {
+ padding: 0 6px;
+}
+
+.subviewbutton > .toolbarbutton-text {
+ padding-inline-start: 16px;
+}
+
+.subviewbutton:-moz-any([image],[targetURI],.cui-withicon, .restoreallitem, .bookmark-item) > .toolbarbutton-text {
+ padding-inline-start: 0;
+}
+
+/* subviewbutton entries for social sidebars have images that come from external
+/* sources, and are not guaranteed to be the size we want, so force the size on
+/* those icons. */
+toolbarbutton.social-provider-menuitem > .toolbarbutton-icon {
+ width: 16px;
+ height: 16px;
+}
+
+.subviewbutton:-moz-any([image],[targetURI],.cui-withicon, .restoreallitem, .bookmark-item)[checked="true"] > .toolbarbutton-icon {
+ visibility: hidden;
+}
+
+menu.subviewbutton > .menu-right {
+ -moz-appearance: none;
+ list-style-image: url(chrome://browser/skin/customizableui/menu-arrow.svg#arrow);
+ /* Reset the rect we inherit from the button: */
+ -moz-image-region: auto;
+}
+
+menu[disabled="true"].subviewbutton > .menu-right {
+ list-style-image: url(chrome://browser/skin/customizableui/menu-arrow.svg#arrow-disabled);
+}
+
+@media not all and (-moz-windows-default-theme) {
+ menu[_moz-menuactive].subviewbutton > .menu-right {
+ list-style-image: url(chrome://browser/skin/customizableui/menu-arrow.svg#arrow-hover);
+ }
+}
+
+menu.subviewbutton > .menu-right:-moz-locale-dir(rtl) {
+ transform: scaleX(-1);
+}
+
+/* Win8 and beyond. */
+@media not all and (-moz-os-version: windows-xp) {
+ @media not all and (-moz-os-version: windows-vista) {
+ @media not all and (-moz-os-version: windows-win7) {
+ panelview .toolbarbutton-1,
+ .subviewbutton,
+ .widget-overflow-list .toolbarbutton-1,
+ .panelUI-grid .toolbarbutton-1 > .toolbarbutton-menubutton-button,
+ #BMB_bookmarksPopup menupopup[placespopup=true] > hbox,
+ #edit-controls@inAnyPanel@,
+ #zoom-controls@inAnyPanel@,
+ #edit-controls@inAnyPanel@ > toolbarbutton,
+ #zoom-controls@inAnyPanel@ > toolbarbutton {
+ border-radius: 0;
+ }
+ }
+ }
+}
+
diff --git a/browser/themes/windows/devedition.css b/browser/themes/windows/devedition.css
new file mode 100644
index 000000000..4c25f33a1
--- /dev/null
+++ b/browser/themes/windows/devedition.css
@@ -0,0 +1,321 @@
+% This Source Code Form is subject to the terms of the Mozilla Public
+% License, v. 2.0. If a copy of the MPL was not distributed with this
+% file, You can obtain one at http://mozilla.org/MPL/2.0/.
+
+%include ../shared/devedition.inc.css
+
+:root {
+ --forwardbutton-width: 29px;
+}
+
+:root[devtoolstheme="dark"],
+:root[devtoolstheme="light"] {
+ /* Matches the #browser-border-start, #browser-border-end color */
+ --chrome-nav-bar-separator-color: rgba(10, 31, 51, 0.35);
+}
+
+/* The window background is white due to no accentcolor in the lightweight
+ theme. It can't be changed to transparent when there is no compositor
+ (Win XP or 7 in classic / basic theme), or else dragging and focus become
+ broken. So instead just show the normal titlebar in that case, and override
+ the window color as transparent when the compositor is available. */
+@media not all and (-moz-windows-compositor) {
+ #main-window[tabsintitlebar] #titlebar:-moz-lwtheme {
+ visibility: visible;
+ }
+
+ #main-window {
+ background: var(--chrome-background-color) !important;
+ }
+}
+
+@media (-moz-windows-compositor) {
+ #main-window {
+ background: transparent !important;
+ }
+}
+
+#TabsToolbar::after {
+ display: none;
+}
+
+#back-button > .toolbarbutton-icon,
+#forward-button > .toolbarbutton-icon {
+ background: var(--chrome-nav-buttons-background) !important;
+ border-radius: 0 !important;
+ height: auto !important;
+ padding: var(--toolbarbutton-vertical-inner-padding) 5px !important;
+ margin: 0 !important;
+ border: 1px solid var(--chrome-nav-bar-controls-border-color) !important;
+ box-shadow: none !important;
+}
+
+#back-button > .toolbarbutton-icon {
+ /* 18px icon + 2 * 5px padding + 2 * 1px border */
+ width: 30px !important;
+}
+
+#forward-button > .toolbarbutton-icon {
+ /* 18px icon + 2 * 5px padding + 1 * 1px border */
+ width: 29px !important;
+}
+
+/* the normal theme adds box-shadow: <stuff> !important when the back-button is [open]. Fix: */
+#back-button[open="true"] > .toolbarbutton-icon {
+ box-shadow: none !important;
+}
+
+#forward-button > .toolbarbutton-icon {
+ border-inline-start: none !important;
+}
+
+/* Override a box shadow for disabled back button */
+#main-window:not([customizing]) #back-button[disabled] > .toolbarbutton-icon {
+ box-shadow: none !important;
+}
+
+/* Override !important properties for hovered back button */
+#main-window #back-button:hover:not([disabled="true"]) > .toolbarbutton-icon,
+#main-window #forward-button:hover:not([disabled="true"]) > .toolbarbutton-icon {
+ background: var(--chrome-nav-buttons-hover-background) !important;
+ box-shadow: none !important;
+}
+
+#back-button > .toolbarbutton-icon {
+ border-radius: 2px 0 0 2px !important;
+}
+
+#nav-bar .toolbarbutton-1:not([type=menu-button]),
+#nav-bar .toolbarbutton-1 > .toolbarbutton-menubutton-button,
+#nav-bar .toolbarbutton-1 > .toolbarbutton-menubutton-dropmarker {
+ padding-top: 2px;
+ padding-bottom: 2px;
+}
+
+.tabbrowser-tab {
+ background-color: var(--tab-background-color);
+}
+
+#toolbar-menubar {
+ text-shadow: none !important;
+}
+
+:root[devtoolstheme="dark"] .findbar-closebutton,
+:root[devtoolstheme="dark"] #sidebar-header > .close-icon,
+/* Tab styling - make sure to use an inverted icon for the selected tab
+ (brighttext only covers the unselected tabs) */
+.tab-close-button[selected=true] {
+ list-style-image: url("chrome://global/skin/icons/close-inverted.png");
+}
+
+@media (min-resolution: 1.1dppx) {
+ :root[devtoolstheme="dark"] .findbar-closebutton,
+ :root[devtoolstheme="dark"] #sidebar-header > .close-icon,
+ .tab-close-button[selected=true] {
+ list-style-image: url("chrome://global/skin/icons/close-inverted@2x.png");
+ }
+}
+
+@media (-moz-os-version: windows-xp),
+ (-moz-os-version: windows-vista),
+ (-moz-os-version: windows-win7),
+ (-moz-os-version: windows-win8) {
+ :root {
+ --space-above-tabbar: 15px;
+ }
+
+ /* It'd be nice if there was an element in the scrollbox's inner content
+ that collapsed to the current width of the tabs. Since there isn't we
+ need to handle overflowing and non-overflowing tabs separately.
+
+ In the case of overflowing tabs, set a border-top on the entire container,
+ otherwise we need to set it on each element individually */
+ #main-window[sizemode=normal] .tabbrowser-tabs[overflow="true"] {
+ background-clip: padding-box;
+ border-top: 1px solid var(--chrome-nav-bar-separator-color);
+ border-inline-end: 1px solid var(--chrome-nav-bar-separator-color);
+ background-color: var(--tab-background-color); /* Make sure there is no transparent gap during tab close animation */
+ }
+
+ /* Add a border to the left of the first tab (or scroll arrow). Using .tabbrowser-tabs
+ instead of #TabsToolbar because it will work even in customize mode. */
+ #main-window[sizemode=normal] .tabbrowser-tabs {
+ background-clip: padding-box;
+ border-inline-start: 1px solid var(--chrome-nav-bar-separator-color);
+ border-inline-end: 1px solid transparent;
+ }
+
+ #main-window[sizemode=normal] .tabbrowser-tabs:not([overflow="true"]) .tabbrowser-tab,
+ #main-window[sizemode=normal] .tabbrowser-tabs:not([overflow="true"]) .tabbrowser-arrowscrollbox > .scrollbutton-down,
+ #main-window[sizemode=normal] .tabbrowser-tabs:not([overflow="true"]) .tabbrowser-arrowscrollbox > .scrollbutton-up,
+ #main-window[sizemode=normal] .tabbrowser-tabs:not([overflow="true"]) .tabs-newtab-button {
+ background-clip: padding-box;
+ border-top: 1px solid var(--chrome-nav-bar-separator-color);
+ }
+
+ /* Allow the border-top rule to take effect */
+ #main-window[sizemode=normal] .tabbrowser-tabs:not([overflow="true"]) .tabbrowser-tab {
+ -moz-border-top-colors: none;
+ }
+
+ #main-window[sizemode=normal] .tabbrowser-tabs:not([overflow="true"]) .closing-tabs-spacer {
+ background-clip: padding-box;
+ border-inline-start: 1px solid var(--chrome-nav-bar-separator-color);
+ }
+
+ .tabs-newtab-button {
+ background: var(--tab-background-color);
+ }
+
+ /* Use default window colors when in non-maximized mode */
+ #tabbrowser-tabs,
+ #TabsToolbar,
+ #browser-panel,
+ #titlebar-content {
+ background: transparent;
+ }
+
+ /* Ensure that the entire background is styled when maximized/fullscreen */
+ #main-window:not([sizemode="normal"]):not([customizing]) #browser-panel {
+ background: var(--chrome-background-color) !important;
+ }
+
+ /* The menu items need to be visible when the entire background is styled */
+ #main-window:not([sizemode="normal"]) #main-menubar {
+ color: var(--chrome-color);
+ background-color: transparent;
+ }
+
+ #main-window[sizemode="maximized"] #main-menubar > menu:not(:-moz-window-inactive) {
+ color: inherit;
+ }
+
+ /* Use proper menu text styling in Win7 classic mode (copied from browser.css) */
+ @media not all and (-moz-windows-compositor),
+ not all and (-moz-windows-default-theme) {
+ #main-window[tabsintitlebar]:not([inFullscreen]) #toolbar-menubar,
+ #main-window[tabsintitlebar]:not([inFullscreen]) #TabsToolbar {
+ color: CaptionText;
+ }
+
+ #main-window[tabsintitlebar]:not([inFullscreen]) #toolbar-menubar:-moz-window-inactive,
+ #main-window[tabsintitlebar]:not([inFullscreen]) #TabsToolbar:-moz-window-inactive {
+ color: InactiveCaptionText;
+ }
+
+ #main-window[tabsintitlebar] #main-menubar > menu {
+ color: inherit;
+ }
+ }
+
+ /* Use less opacity than normal since this is very dark, and on top of the default toolbar color */
+ .tabbrowser-arrowscrollbox > .scrollbutton-up[disabled],
+ .tabbrowser-arrowscrollbox > .scrollbutton-down[disabled] {
+ opacity: .6;
+ }
+
+ /* Override scrollbutton gradients in normal and hover state */
+ .tabbrowser-arrowscrollbox > .scrollbutton-down,
+ .tabbrowser-arrowscrollbox > .scrollbutton-up {
+ background-image: none !important;
+ transition: none; /* scrollbutton-down has an unwanted transition on background color */
+ }
+
+ /* Restore draggable space on the sides of tabs when maximized */
+ #main-window[sizemode="maximized"] .tabbrowser-arrowscrollbox > .arrowscrollbox-scrollbox {
+ padding-left: 15px;
+ padding-right: 15px;
+ }
+
+ /* Override the padding that's intended to compensate for tabs that can overlap border-radius on nav-bar in default theme. */
+ #main-window[sizemode=normal]:not([customizing]) #TabsToolbar {
+ padding-left: 0;
+ padding-right: 0;
+ }
+}
+
+/* Restored windows get an artificial border on windows, because the lwtheme background
+ * overlaps the regular window border. That isn't the case for us, so we avoid painting
+ * over the native border with our custom borders: */
+#browser-panel {
+ /* These are !important to avoid specificity-wars with the selectors that add borders here. */
+ background-image: none !important;
+ border-top: none !important;
+}
+
+#navigator-toolbox {
+ /* The side borders on the toolbox also look out-of-place because we don't paint over
+ * the native background color at all, and these are !important for the same reason as above. */
+ border-left: none !important;
+ border-right: none !important;
+}
+
+/* Disable dragging like in the default theme: */
+#main-window[tabsintitlebar] #navigator-toolbox > toolbar:not(#toolbar-menubar):not(#TabsToolbar):-moz-lwtheme {
+ -moz-window-dragging: no-drag;
+}
+
+/* The sidebar header has no background now that the background of the #browser-panel
+ * has no image and is transparent. Fix: */
+.sidebar-header:-moz-lwtheme,
+#sidebar-header {
+ background-color: var(--chrome-background-color);
+ color: var(--chrome-color);
+}
+
+@media (-moz-os-version: windows-vista),
+ (-moz-os-version: windows-win7),
+ (-moz-os-version: windows-win8) {
+ /* And then we add them back on toolbars so that they don't look borderless: */
+ #main-window:not([customizing])[sizemode=normal] #navigator-toolbox::after,
+ #main-window:not([customizing])[sizemode=normal] #navigator-toolbox > toolbar:not(#toolbar-menubar):not(#TabsToolbar) {
+ border-left: 1px solid hsla(209,67%,12%,0.35);
+ border-right: 1px solid hsla(209,67%,12%,0.35);
+ }
+}
+
+@media (-moz-os-version: windows-win10) {
+ /* Always keep draggable space on the sides of tabs since there is no top margin on Win10 */
+ #main-window .tabbrowser-arrowscrollbox > .arrowscrollbox-scrollbox {
+ padding-left: 15px;
+ padding-right: 15px;
+ }
+
+ /* Force white caption buttons for the dark theme on Windows 10 */
+ :root[devtoolstheme="dark"] #titlebar-min {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#minimize-white);
+ }
+ :root[devtoolstheme="dark"] #titlebar-max {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#maximize-white);
+ }
+ #main-window[devtoolstheme="dark"][sizemode="maximized"] #titlebar-max {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#restore-white);
+ }
+ :root[devtoolstheme="dark"] #titlebar-close {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#close-white);
+ }
+
+ /* ... and normal ones for the light theme on Windows 10 */
+ :root[devtoolstheme="light"] #titlebar-min {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#minimize);
+ }
+ :root[devtoolstheme="light"] #titlebar-max {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#maximize);
+ }
+ #main-window[devtoolstheme="light"][sizemode="maximized"] #titlebar-max {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#restore);
+ }
+ :root[devtoolstheme="light"] #titlebar-close {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#close);
+ }
+
+ :root[devtoolstheme="light"] #titlebar-close:hover {
+ list-style-image: url(chrome://browser/skin/caption-buttons.svg#close-white);
+ }
+}
+
+.ac-type-icon {
+ /* Left-align the type icon in awesomebar popup results with the icon in the
+ urlbar. */
+ margin-inline-start: 13px;
+}
diff --git a/browser/themes/windows/downloads/allDownloadsViewOverlay.css b/browser/themes/windows/downloads/allDownloadsViewOverlay.css
new file mode 100644
index 000000000..e288f1e90
--- /dev/null
+++ b/browser/themes/windows/downloads/allDownloadsViewOverlay.css
@@ -0,0 +1,49 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+%include ../../shared/downloads/allDownloadsViewOverlay.inc.css
+
+/*** List items ***/
+
+:root {
+ --downloads-item-height: 6em;
+}
+
+@media (-moz-windows-default-theme) {
+ .downloadProgress > .progress-bar {
+ background-color: #3c9af8;
+ }
+}
+
+/*** Highlighted list items ***/
+
+@media not all and (-moz-os-version: windows-xp) {
+ @media (-moz-windows-default-theme) {
+ /*
+ -moz-appearance: menuitem is almost right, but the hover effect is not
+ transparent and is lighter than desired.
+
+ Copied from the autocomplete richlistbox styling in
+ toolkit/themes/windows/global/autocomplete.css
+
+ This styling should be kept in sync with the style from the above file.
+ */
+ @itemFocused@ {
+ color: inherit;
+ background-color: transparent;
+ /* four gradients for the bevel highlights on each edge, one for blue background */
+ background-image:
+ linear-gradient(to bottom, rgba(255,255,255,0.9) 3px, transparent 3px),
+ linear-gradient(to right, rgba(255,255,255,0.5) 3px, transparent 3px),
+ linear-gradient(to left, rgba(255,255,255,0.5) 3px, transparent 3px),
+ linear-gradient(to top, rgba(255,255,255,0.4) 3px, transparent 3px),
+ linear-gradient(to bottom, rgba(163,196,247,0.3), rgba(122,180,246,0.3));
+ background-clip: content-box;
+ border-radius: 6px;
+ outline: 1px solid rgb(124,163,206);
+ -moz-outline-radius: 3px;
+ outline-offset: -2px;
+ }
+ }
+}
diff --git a/browser/themes/windows/downloads/download-glow-XPVista7.png b/browser/themes/windows/downloads/download-glow-XPVista7.png
new file mode 100644
index 000000000..e7415e83d
--- /dev/null
+++ b/browser/themes/windows/downloads/download-glow-XPVista7.png
Binary files differ
diff --git a/browser/themes/windows/downloads/download-glow-menuPanel-XPVista7.png b/browser/themes/windows/downloads/download-glow-menuPanel-XPVista7.png
new file mode 100644
index 000000000..7ff7e6a03
--- /dev/null
+++ b/browser/themes/windows/downloads/download-glow-menuPanel-XPVista7.png
Binary files differ
diff --git a/browser/themes/windows/downloads/download-glow-menuPanel.png b/browser/themes/windows/downloads/download-glow-menuPanel.png
new file mode 100644
index 000000000..d05b07b57
--- /dev/null
+++ b/browser/themes/windows/downloads/download-glow-menuPanel.png
Binary files differ
diff --git a/browser/themes/windows/downloads/download-glow.png b/browser/themes/windows/downloads/download-glow.png
new file mode 100644
index 000000000..1239ada52
--- /dev/null
+++ b/browser/themes/windows/downloads/download-glow.png
Binary files differ
diff --git a/browser/themes/windows/downloads/download-notification-finish.png b/browser/themes/windows/downloads/download-notification-finish.png
new file mode 100644
index 000000000..2ef1420ad
--- /dev/null
+++ b/browser/themes/windows/downloads/download-notification-finish.png
Binary files differ
diff --git a/browser/themes/windows/downloads/download-notification-start.png b/browser/themes/windows/downloads/download-notification-start.png
new file mode 100644
index 000000000..a2fca743b
--- /dev/null
+++ b/browser/themes/windows/downloads/download-notification-start.png
Binary files differ
diff --git a/browser/themes/windows/downloads/downloads.css b/browser/themes/windows/downloads/downloads.css
new file mode 100644
index 000000000..4b60da149
--- /dev/null
+++ b/browser/themes/windows/downloads/downloads.css
@@ -0,0 +1,56 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+%include ../../shared/downloads/downloads.inc.css
+
+/*** Panel and outer controls ***/
+
+@keyfocus@ #downloadsSummary:focus,
+@keyfocus@ .downloadsPanelFooterButton:focus {
+ outline: 1px -moz-dialogtext dotted;
+ outline-offset: -1px;
+}
+
+@keyfocus@ #downloadsSummary:focus {
+ outline-offset: -5px;
+}
+
+/*** List items and similar elements in the summary ***/
+
+:root {
+ --downloads-item-height: 5.5em;
+ --downloads-item-font-size-factor: 0.9;
+ --downloads-item-details-opacity: 0.6;
+}
+
+.downloadButton > .button-box {
+ border: 1px solid transparent;
+}
+
+@keyfocus@ .downloadButton:focus > .button-box {
+ border: 1px dotted ThreeDDarkShadow;
+}
+
+@media (-moz-windows-default-theme) {
+ @item@[verdict="Malware"] {
+ color: #aa1b08;
+ }
+
+ /* Use unified color for the progressbar on default theme */
+ .downloadProgress > .progress-bar {
+ background-color: #3c9af8;
+ }
+
+ .downloadProgress[paused="true"] > .progress-bar {
+ background-color: #a6a6a6;
+ }
+
+}
+
+/*** Highlighted list items ***/
+
+@keyfocus@ @itemFocused@ {
+ outline: 1px -moz-dialogtext dotted;
+ outline-offset: -1px;
+}
diff --git a/browser/themes/windows/downloads/indicator.css b/browser/themes/windows/downloads/indicator.css
new file mode 100644
index 000000000..627265088
--- /dev/null
+++ b/browser/themes/windows/downloads/indicator.css
@@ -0,0 +1,225 @@
+/* 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/. */
+
+/*** Status and progress indicator ***/
+
+#downloads-animation-container {
+ min-height: 1px;
+ min-width: 1px;
+ height: 1px;
+ margin-bottom: -1px;
+ /* Makes the outermost animation container element positioned, so that its
+ contents are rendered over the main browser window in the Z order.
+ This is required by the animated event notification. */
+ position: relative;
+ /* The selected tab may overlap #downloads-indicator-notification */
+ z-index: 5;
+}
+
+/*** Main indicator icon ***/
+
+@media not all and (min-resolution: 1.1dppx) {
+ #downloads-button {
+ --downloads-indicator-icon: -moz-image-rect(url("chrome://browser/skin/Toolbar.png"), 0, 198, 18, 180);
+ --downloads-indicator-icon-attention: -moz-image-rect(url("chrome://browser/skin/Toolbar.png"), 18, 198, 36, 180);
+ --downloads-indicator-icon-inverted: -moz-image-rect(url("chrome://browser/skin/Toolbar-inverted.png"), 0, 198, 18, 180);
+ --downloads-indicator-icon-attention-inverted: -moz-image-rect(url("chrome://browser/skin/Toolbar-inverted.png"), 18, 198, 36, 180);
+ }
+}
+
+@media (min-resolution: 1.1dppx) {
+ #downloads-button {
+ --downloads-indicator-icon: -moz-image-rect(url("chrome://browser/skin/Toolbar@2x.png"), 0, 396, 36, 360);
+ --downloads-indicator-icon-attention: -moz-image-rect(url("chrome://browser/skin/Toolbar@2x.png"), 36, 396, 72, 360);
+ --downloads-indicator-icon-inverted: -moz-image-rect(url("chrome://browser/skin/Toolbar-inverted@2x.png"), 0, 396, 36, 360);
+ --downloads-indicator-icon-attention-inverted: -moz-image-rect(url("chrome://browser/skin/Toolbar-inverted@2x.png"), 36, 396, 72, 360);
+ }
+}
+
+#downloads-indicator-icon {
+ background: var(--downloads-indicator-icon) center no-repeat;
+ width: 18px;
+ height: 18px;
+ background-size: 18px;
+}
+
+toolbar[brighttext] #downloads-button:not([attention="success"]) > #downloads-indicator-anchor > #downloads-indicator-icon {
+ background-image: var(--downloads-indicator-icon-inverted);
+}
+
+#downloads-button[attention="warning"] > .toolbarbutton-badge-stack > .toolbarbutton-badge,
+#downloads-button[attention="severe"] > .toolbarbutton-badge-stack > .toolbarbutton-badge {
+ display: -moz-box;
+ height: 8px;
+ width: 8px;
+ min-width: 0;
+ border-radius: 50%;
+ /* "!important" is necessary to override the rule in toolbarbutton.css */
+ margin-top: -1px !important;
+ margin-right: -2px !important;
+}
+
+#downloads-button[cui-areatype="toolbar"] > .toolbarbutton-badge-stack > .toolbarbutton-badge {
+ height: 7px;
+ width: 7px;
+}
+
+#downloads-button[attention="severe"] > .toolbarbutton-badge-stack > .toolbarbutton-badge {
+ background: #D90000;
+}
+
+#downloads-button[attention="warning"] > .toolbarbutton-badge-stack > .toolbarbutton-badge {
+ background: #FFBF00;
+}
+
+#downloads-button[attention="severe"] > .toolbarbutton-badge-stack > .toolbarbutton-badge:-moz-window-inactive,
+#downloads-button[attention="warning"] > .toolbarbutton-badge-stack > .toolbarbutton-badge:-moz-window-inactive {
+ filter: none;
+}
+
+#downloads-button[attention="success"] > #downloads-indicator-anchor > #downloads-indicator-icon {
+ background-image: var(--downloads-indicator-icon-attention);
+}
+
+toolbar[brighttext] #downloads-button[attention="success"] > #downloads-indicator-anchor > #downloads-indicator-icon {
+ background-image: var(--downloads-indicator-icon-attention-inverted);
+}
+
+#downloads-button[cui-areatype="menu-panel"][attention="success"] {
+ list-style-image: url("chrome://browser/skin/downloads/download-glow-menuPanel.png");
+ -moz-image-region: auto;
+}
+
+/* In the next few rules, we use :not([counter]) as a shortcut that is
+ equivalent to -moz-any([progress], [paused]). */
+
+#downloads-button:not([counter]) > #downloads-indicator-anchor > #downloads-indicator-progress-area > #downloads-indicator-counter {
+ background: var(--downloads-indicator-icon) center no-repeat;
+ background-size: 12px;
+}
+
+toolbar[brighttext] #downloads-button:not([counter]):not([attention="success"]) > #downloads-indicator-anchor > #downloads-button-progress-area > #downloads-indicator-counter {
+ background-image: var(--downloads-indicator-icon-inverted);
+}
+
+#downloads-button:not([counter])[attention="success"] > #downloads-indicator-anchor > #downloads-indicator-progress-area > #downloads-indicator-counter {
+ background-image: var(--downloads-indicator-icon-attention);
+}
+
+toolbar[brighttext] #downloads-button:not([counter])[attention="success"] > #downloads-indicator-anchor > #downloads-indicator-progress-area > #downloads-indicator-counter {
+ background-image: var(--downloads-indicator-icon-attention-inverted);
+}
+
+/*** Download notifications ***/
+
+#downloads-indicator-notification {
+ opacity: 0;
+ background-size: 16px;
+ background-position: center;
+ background-repeat: no-repeat;
+ width: 16px;
+ height: 16px;
+}
+
+@keyframes downloadsIndicatorNotificationStartRight {
+ from { opacity: 0; transform: translate(-128px, 128px) scale(8); }
+ 20% { opacity: .85; animation-timing-function: ease-out; }
+ to { opacity: 0; transform: translate(0) scale(1); }
+}
+
+@keyframes downloadsIndicatorNotificationStartLeft {
+ from { opacity: 0; transform: translate(128px, 128px) scale(8); }
+ 20% { opacity: .85; animation-timing-function: ease-out; }
+ to { opacity: 0; transform: translate(0) scale(1); }
+}
+
+#downloads-notification-anchor[notification="start"] > #downloads-indicator-notification {
+ background-image: url("chrome://browser/skin/downloads/download-notification-start.png");
+ animation-name: downloadsIndicatorNotificationStartRight;
+ animation-duration: 1s;
+}
+
+#downloads-notification-anchor[notification="start"]:-moz-locale-dir(rtl) > #downloads-indicator-notification {
+ animation-name: downloadsIndicatorNotificationStartLeft;
+}
+
+@keyframes downloadsIndicatorNotificationFinish {
+ from { opacity: 0; transform: scale(1); }
+ 20% { opacity: .65; animation-timing-function: ease-in; }
+ to { opacity: 0; transform: scale(8); }
+}
+
+#downloads-notification-anchor[notification="finish"] > #downloads-indicator-notification {
+ background-image: url("chrome://browser/skin/downloads/download-notification-finish.png");
+ animation-name: downloadsIndicatorNotificationFinish;
+ animation-duration: 1s;
+}
+
+/*** Progress bar and text ***/
+
+#downloads-indicator-counter {
+ height: 9px;
+ margin: -3px 0px 0px 0px;
+ color: hsl(0,0%,30%);
+ text-shadow: hsla(0,0%,100%,.5) 0 1px;
+ font-size: 9px;
+ line-height: 9px;
+ text-align: center;
+}
+
+@media not all and (-moz-os-version: windows-xp) {
+ #downloads-indicator-counter {
+ /* Bug 812345 added this... */
+ margin-bottom: -1px;
+ }
+}
+
+toolbar[brighttext] #downloads-indicator-counter {
+ color: white;
+ text-shadow: 0 0 1px rgba(0,0,0,.7),
+ 0 1px 1.5px rgba(0,0,0,.5);
+}
+
+#downloads-indicator-progress {
+ width: 16px;
+ height: 5px;
+ min-width: 0;
+ min-height: 0;
+ margin-top: 1px;
+ margin-bottom: 2px;
+ border-radius: 2px;
+ box-shadow: 0 1px 0 hsla(0,0%,100%,.4);
+}
+
+#downloads-indicator-progress > .progress-bar {
+ -moz-appearance: none;
+ min-width: 0;
+ min-height: 0;
+ /* The background-clip: border-box; and background-image: none; are there to expand the background-color behind the border */
+ background-clip: padding-box, border-box;
+ background-color: rgb(90, 201, 66);
+ background-image: linear-gradient(transparent 1px, rgba(255, 255, 255, 0.4) 1px, rgba(255, 255, 255, 0.4) 2px, transparent 2px), none;
+ border: 1px solid;
+ border-color: rgba(0,43,86,.6) rgba(0,43,86,.4) rgba(0,43,86,.4);
+ border-radius: 2px 0 0 2px;
+}
+
+#downloads-indicator-progress > .progress-remainder {
+ -moz-appearance: none;
+ min-width: 0;
+ min-height: 0;
+ background-image: linear-gradient(#505050, #575757);
+ border: 1px solid;
+ border-color: hsla(0,0%,0%,.6) hsla(0,0%,0%,.4) hsla(0,0%,0%,.4);
+ border-inline-start: none;
+ border-radius: 0 2px 2px 0;
+}
+
+#downloads-button[paused] > #downloads-indicator-anchor > #downloads-indicator-progress-area > #downloads-indicator-progress > .progress-bar {
+ background-color: rgb(220, 230, 81);
+}
+
+#downloads-button[paused] > #downloads-indicator-anchor > #downloads-indicator-progress-area > #downloads-indicator-progress > .progress-remainder {
+ background-image: linear-gradient(#4b5000, #515700);
+}
diff --git a/browser/themes/windows/feeds/feedIcon-XP.png b/browser/themes/windows/feeds/feedIcon-XP.png
new file mode 100644
index 000000000..d0cafb1d4
--- /dev/null
+++ b/browser/themes/windows/feeds/feedIcon-XP.png
Binary files differ
diff --git a/browser/themes/windows/feeds/feedIcon.png b/browser/themes/windows/feeds/feedIcon.png
new file mode 100644
index 000000000..59b22d8a2
--- /dev/null
+++ b/browser/themes/windows/feeds/feedIcon.png
Binary files differ
diff --git a/browser/themes/windows/feeds/feedIcon16-XP.png b/browser/themes/windows/feeds/feedIcon16-XP.png
new file mode 100644
index 000000000..dd7821f8d
--- /dev/null
+++ b/browser/themes/windows/feeds/feedIcon16-XP.png
Binary files differ
diff --git a/browser/themes/windows/feeds/feedIcon16.png b/browser/themes/windows/feeds/feedIcon16.png
new file mode 100644
index 000000000..071979903
--- /dev/null
+++ b/browser/themes/windows/feeds/feedIcon16.png
Binary files differ
diff --git a/browser/themes/windows/feeds/subscribe-ui.css b/browser/themes/windows/feeds/subscribe-ui.css
new file mode 100644
index 000000000..f1650036e
--- /dev/null
+++ b/browser/themes/windows/feeds/subscribe-ui.css
@@ -0,0 +1,7 @@
+/* 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/. */
+
+.alwaysUse {
+ padding: 5px;
+}
diff --git a/browser/themes/windows/feeds/subscribe.css b/browser/themes/windows/feeds/subscribe.css
new file mode 100644
index 000000000..81168a144
--- /dev/null
+++ b/browser/themes/windows/feeds/subscribe.css
@@ -0,0 +1,184 @@
+/* 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/. */
+
+html {
+ background: -moz-Dialog;
+ font: 3mm tahoma,arial,helvetica,sans-serif;
+}
+
+#subscribeUsingDescription,
+#subscribeButton {
+ display: block;
+}
+
+#subscribeUsingDescription {
+ margin-bottom: 0.5em;
+}
+
+#subscribeButton {
+ margin-top: 0.5em;
+ margin-inline-start: auto;
+}
+
+#feedBody {
+ border: 1px solid THreeDShadow;
+ padding: 3em;
+ padding-inline-start: 30px;
+ margin: 2em auto;
+ background: -moz-Field;
+}
+
+#feedHeaderContainer {
+ border: 1px solid ThreeDShadow;
+ border-radius: 10px;
+ margin: -4em auto 0 auto;
+ background-color: InfoBackground;
+ display: flex;
+}
+
+#feedHeaderContainerSpacer {
+ flex-grow: 1;
+}
+
+#feedHeader {
+ margin-top: 4.9em;
+ margin-bottom: 1em;
+ margin-inline-start: 1.4em;
+ margin-inline-end: 1em;
+ padding-inline-start: 2.9em;
+ font-size: 110%;
+ color: InfoText;
+}
+
+#feedIntroText {
+ display: none;
+}
+
+.feedBackground {
+ background: url("chrome://browser/skin/feeds/feedIcon.png") 0% 10% no-repeat InfoBackground;
+}
+
+.videoPodcastBackground {
+ background: url("chrome://browser/skin/feeds/videoFeedIcon.png") 0% 10% no-repeat InfoBackground;
+}
+
+.audioPodcastBackground {
+ background: url("chrome://browser/skin/feeds/audioFeedIcon.png") 0% 10% no-repeat InfoBackground;
+}
+
+#feedHeader[dir="rtl"] {
+ background-position: 100% 10%;
+}
+
+#feedHeader[firstrun="true"] #feedIntroText {
+ padding-top: 0.1em;
+ padding-inline-start: 0.6em;
+ display: block;
+}
+
+#feedHeader[firstrun="true"] > #feedSubscribeLine {
+ padding-inline-start: 1.8em;
+}
+
+#feedSubscribeLine {
+ padding-top: 0.2em;
+ padding-inline-start: 0.5em;
+}
+
+/* Don't print subscription UI */
+@media print {
+ #feedHeaderContainer {
+ display: none;
+ }
+}
+
+body {
+ margin: 0;
+ padding: 0 3em;
+ color: -moz-fieldText;
+ font: message-box;
+}
+
+h1 {
+ font-size: 160%;
+ border-bottom: 2px solid ThreeDLightShadow;
+ margin: 0 0 .2em 0;
+}
+
+h2 {
+ color: GrayText;
+ font-size: 110%;
+ font-weight: normal;
+ margin: 0 0 .6em 0;
+}
+
+#feedTitleLink {
+ float: right;
+ margin-inline-start: .6em;
+ margin-inline-end: 0;
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+a[href] img {
+ border: none;
+}
+
+#feedTitleContainer {
+ margin-inline-start: 0;
+ margin-inline-end: .6em;
+ margin-top: 0;
+ margin-bottom: 0;
+}
+
+#feedTitleImage {
+ margin-inline-start: .6em;
+ margin-inline-end: 0;
+ margin-top: 0;
+ margin-bottom: 0;
+ max-width: 300px;
+ max-height: 150px;
+}
+
+.feedEntryContent {
+ font-size: 110%;
+}
+
+.link {
+ color: #0000FF;
+ text-decoration: underline;
+ cursor: pointer;
+}
+
+.link:hover:active {
+ color: #FF0000;
+}
+
+.lastUpdated {
+ font-size: 85%;
+ font-weight: normal;
+}
+
+.type-icon {
+ vertical-align: bottom;
+ height: 16px;
+ width: 16px;
+}
+
+.enclosures {
+ border: 1px solid THreeDShadow;
+ padding: 1em;
+ margin: 1em auto;
+ background: -moz-Dialog;
+}
+
+.enclosure {
+ vertical-align: middle;
+ margin-left: 2px;
+}
+
+.handlersMenuList > .menulist-label-box > .menulist-icon {
+ max-width: 16px;
+ max-height: 16px;
+}
diff --git a/browser/themes/windows/jar.mn b/browser/themes/windows/jar.mn
new file mode 100644
index 000000000..89c589aba
--- /dev/null
+++ b/browser/themes/windows/jar.mn
@@ -0,0 +1,268 @@
+# 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/.
+
+browser.jar:
+% skin browser classic/1.0 %skin/classic/browser/
+#include ../shared/jar.inc.mn
+ skin/classic/browser/sanitizeDialog.css
+ skin/classic/browser/aboutSessionRestore-window-icon.png
+ skin/classic/browser/aboutSyncTabs.css
+* skin/classic/browser/syncedtabs/sidebar.css (syncedtabs/sidebar.css)
+ skin/classic/browser/actionicon-tab.png
+ skin/classic/browser/actionicon-tab@2x.png
+ skin/classic/browser/actionicon-tab-XPVista7.png
+* skin/classic/browser/browser.css
+* skin/classic/browser/devedition.css
+* skin/classic/browser/browser-lightweightTheme.css
+ skin/classic/browser/caption-buttons.svg
+ skin/classic/browser/click-to-play-warning-stripes.png
+ skin/classic/browser/Info.png
+ skin/classic/browser/Info-XP.png
+ skin/classic/browser/keyhole-forward-mask.svg
+ skin/classic/browser/livemark-folder.png
+ skin/classic/browser/livemark-folder-XP.png
+ skin/classic/browser/menu-back.png
+ skin/classic/browser/menu-back-XP.png
+ skin/classic/browser/menu-forward.png
+ skin/classic/browser/menu-forward-XP.png
+ skin/classic/browser/menuPanel-customize.png
+ skin/classic/browser/menuPanel-customize@2x.png
+ skin/classic/browser/menuPanel-exit.png
+ skin/classic/browser/menuPanel-exit@2x.png
+ skin/classic/browser/menuPanel-help.png
+ skin/classic/browser/menuPanel-help@2x.png
+ skin/classic/browser/monitor.png
+ skin/classic/browser/monitor_16-10.png
+ skin/classic/browser/pageInfo.css
+ skin/classic/browser/pageInfo.png
+ skin/classic/browser/pageInfo-XP.png
+ skin/classic/browser/privatebrowsing-mask-tabstrip.png
+ skin/classic/browser/privatebrowsing-mask-tabstrip-XPVista7.png
+ skin/classic/browser/privatebrowsing-mask-titlebar.png
+ skin/classic/browser/privatebrowsing-mask-titlebar-XPVista7.png
+ skin/classic/browser/privatebrowsing-mask-titlebar-XPVista7-tall.png
+ skin/classic/browser/reload-stop-go.png
+ skin/classic/browser/reload-stop-go@2x.png
+ skin/classic/browser/reload-stop-go-XPVista7.png
+ skin/classic/browser/reload-stop-go-XPVista7@2x.png
+ skin/classic/browser/searchbar.css
+ skin/classic/browser/setDesktopBackground.css
+ skin/classic/browser/slowStartup-16.png
+ skin/classic/browser/Toolbar.png
+ skin/classic/browser/Toolbar@2x.png
+ skin/classic/browser/Toolbar-aero.png
+ skin/classic/browser/Toolbar-aero@2x.png
+ skin/classic/browser/Toolbar-inverted.png
+ skin/classic/browser/Toolbar-inverted@2x.png
+ skin/classic/browser/Toolbar-lunaSilver.png
+ skin/classic/browser/Toolbar-win8.png
+ skin/classic/browser/Toolbar-win8@2x.png
+ skin/classic/browser/Toolbar-XP.png
+ skin/classic/browser/toolbarbutton-dropdown-arrow-XPVista7.png
+ skin/classic/browser/toolbarbutton-dropdown-arrow-inverted.png
+ skin/classic/browser/urlbar-popup-blocked.png
+ skin/classic/browser/urlbar-history-dropmarker.png
+ skin/classic/browser/urlbar-history-dropmarker@2x.png
+ skin/classic/browser/urlbar-history-dropmarker-XPVista7.png
+ skin/classic/browser/urlbar-history-dropmarker-XPVista7@2x.png
+ skin/classic/browser/webRTC-indicator.css
+* skin/classic/browser/controlcenter/panel.css (controlcenter/panel.css)
+ skin/classic/browser/customizableui/background-noise-toolbar.png (customizableui/background-noise-toolbar.png)
+ skin/classic/browser/customizableui/customize-titleBar-toggle.png (customizableui/customize-titleBar-toggle.png)
+ skin/classic/browser/customizableui/customize-titleBar-toggle@2x.png (customizableui/customize-titleBar-toggle@2x.png)
+ skin/classic/browser/customizableui/customizeMode-gridTexture.png (customizableui/customizeMode-gridTexture.png)
+ skin/classic/browser/customizableui/customizeMode-separatorHorizontal.png (customizableui/customizeMode-separatorHorizontal.png)
+ skin/classic/browser/customizableui/customizeMode-separatorVertical.png (customizableui/customizeMode-separatorVertical.png)
+ skin/classic/browser/customizableui/menu-arrow.svg (customizableui/menu-arrow.svg)
+* skin/classic/browser/customizableui/panelUI.css (customizableui/panelUI.css)
+* skin/classic/browser/downloads/allDownloadsViewOverlay.css (downloads/allDownloadsViewOverlay.css)
+ skin/classic/browser/downloads/download-glow-menuPanel.png (downloads/download-glow-menuPanel.png)
+ skin/classic/browser/downloads/download-glow-menuPanel-XPVista7.png (downloads/download-glow-menuPanel-XPVista7.png)
+ skin/classic/browser/downloads/download-notification-finish.png (downloads/download-notification-finish.png)
+ skin/classic/browser/downloads/download-notification-start.png (downloads/download-notification-start.png)
+* skin/classic/browser/downloads/downloads.css (downloads/downloads.css)
+ skin/classic/browser/feeds/feedIcon.png (feeds/feedIcon.png)
+ skin/classic/browser/feeds/feedIcon16.png (feeds/feedIcon16.png)
+ skin/classic/browser/feeds/feedIcon-XP.png (feeds/feedIcon-XP.png)
+ skin/classic/browser/feeds/feedIcon16-XP.png (feeds/feedIcon16-XP.png)
+ skin/classic/browser/feeds/subscribe.css (feeds/subscribe.css)
+ skin/classic/browser/feeds/subscribe-ui.css (feeds/subscribe-ui.css)
+* skin/classic/browser/newtab/newTab.css (newtab/newTab.css)
+ skin/classic/browser/places/autocomplete-star.png (places/autocomplete-star.png)
+ skin/classic/browser/places/autocomplete-star@2x.png (places/autocomplete-star@2x.png)
+ skin/classic/browser/places/autocomplete-star-XPVista7.png (places/autocomplete-star-XPVista7.png)
+ skin/classic/browser/places/places.css (places/places.css)
+* skin/classic/browser/places/organizer.css (places/organizer.css)
+ skin/classic/browser/places/query.png (places/query.png)
+ skin/classic/browser/places/query-XP.png (places/query-XP.png)
+ skin/classic/browser/places/bookmarksMenu.png (places/bookmarksMenu.png)
+ skin/classic/browser/places/bookmarksMenu-XP.png (places/bookmarksMenu-XP.png)
+ skin/classic/browser/places/bookmarksToolbar.png (places/bookmarksToolbar.png)
+ skin/classic/browser/places/bookmarksToolbar-XP.png (places/bookmarksToolbar-XP.png)
+ skin/classic/browser/places/bookmarksToolbar-menuPanel.png (places/bookmarksToolbar-menuPanel.png)
+ skin/classic/browser/places/bookmarksToolbar-menuPanel-XP.png (places/bookmarksToolbar-menuPanel-XP.png)
+ skin/classic/browser/places/bookmarks-notification-finish.png (places/bookmarks-notification-finish.png)
+ skin/classic/browser/places/calendar.png (places/calendar.png)
+ skin/classic/browser/places/calendar-XP.png (places/calendar-XP.png)
+ skin/classic/browser/places/toolbarDropMarker.png (places/toolbarDropMarker.png)
+ skin/classic/browser/places/toolbarDropMarker-XP.png (places/toolbarDropMarker-XP.png)
+ skin/classic/browser/places/editBookmarkOverlay.css (places/editBookmarkOverlay.css)
+ skin/classic/browser/places/libraryToolbar.png (places/libraryToolbar.png)
+ skin/classic/browser/places/libraryToolbar-XP.png (places/libraryToolbar-XP.png)
+ skin/classic/browser/places/starred48.png (places/starred48.png)
+ skin/classic/browser/places/starred48-XP.png (places/starred48-XP.png)
+ skin/classic/browser/places/unstarred48.png (places/unstarred48.png)
+ skin/classic/browser/places/tag.png (places/tag.png)
+ skin/classic/browser/places/tag-XP.png (places/tag-XP.png)
+ skin/classic/browser/places/history.png (places/history.png)
+ skin/classic/browser/places/history-XP.png (places/history-XP.png)
+ skin/classic/browser/places/allBookmarks.png (places/allBookmarks.png)
+ skin/classic/browser/places/allBookmarks-XP.png (places/allBookmarks-XP.png)
+ skin/classic/browser/places/unsortedBookmarks.png (places/unsortedBookmarks.png)
+ skin/classic/browser/places/unsortedBookmarks-XP.png (places/unsortedBookmarks-XP.png)
+ skin/classic/browser/places/downloads.png (places/downloads.png)
+ skin/classic/browser/places/livemark-item.png (places/livemark-item.png)
+ skin/classic/browser/preferences/alwaysAsk.png (preferences/alwaysAsk.png)
+ skin/classic/browser/preferences/alwaysAsk-XP.png (preferences/alwaysAsk-XP.png)
+ skin/classic/browser/preferences/application.png (preferences/application.png)
+ skin/classic/browser/preferences/application-XP.png (preferences/application-XP.png)
+ skin/classic/browser/preferences/saveFile.png (preferences/saveFile.png)
+ skin/classic/browser/preferences/saveFile-XP.png (preferences/saveFile-XP.png)
+ skin/classic/browser/preferences/preferences.css (preferences/preferences.css)
+* skin/classic/browser/preferences/in-content/preferences.css (preferences/in-content/preferences.css)
+* skin/classic/browser/preferences/in-content/dialog.css (preferences/in-content/dialog.css)
+ skin/classic/browser/preferences/applications.css (preferences/applications.css)
+ skin/classic/browser/social/services-16.png (social/services-16.png)
+ skin/classic/browser/social/services-64.png (social/services-64.png)
+ skin/classic/browser/tabbrowser/newtab.svg (tabbrowser/newtab.svg)
+ skin/classic/browser/tabbrowser/newtab-XPVista7.svg (tabbrowser/newtab-XPVista7.svg)
+ skin/classic/browser/tabbrowser/newtab-inverted.svg (tabbrowser/newtab-inverted.svg)
+ skin/classic/browser/tabbrowser/newtab-inverted-XPVista7.svg (tabbrowser/newtab-inverted-XPVista7.svg)
+ skin/classic/browser/tabbrowser/tab-active-middle.png (tabbrowser/tab-active-middle.png)
+ skin/classic/browser/tabbrowser/tab-active-middle@2x.png (tabbrowser/tab-active-middle@2x.png)
+ skin/classic/browser/tabbrowser/tab-arrow-left.svg (tabbrowser/tab-arrow-left.svg)
+ skin/classic/browser/tabbrowser/tab-arrow-left-XPVista7.svg (tabbrowser/tab-arrow-left-XPVista7.svg)
+ skin/classic/browser/tabbrowser/tab-arrow-left-inverted.svg (tabbrowser/tab-arrow-left-inverted.svg)
+ skin/classic/browser/tabbrowser/tab-background-start.png (tabbrowser/tab-background-start.png)
+ skin/classic/browser/tabbrowser/tab-background-start@2x.png (tabbrowser/tab-background-start@2x.png)
+ skin/classic/browser/tabbrowser/tab-background-middle.png (tabbrowser/tab-background-middle.png)
+ skin/classic/browser/tabbrowser/tab-background-middle@2x.png (tabbrowser/tab-background-middle@2x.png)
+ skin/classic/browser/tabbrowser/tab-background-end.png (tabbrowser/tab-background-end.png)
+ skin/classic/browser/tabbrowser/tab-background-end@2x.png (tabbrowser/tab-background-end@2x.png)
+ skin/classic/browser/tabbrowser/tab-background-start-preWin10.png (tabbrowser/tab-background-start-preWin10.png)
+ skin/classic/browser/tabbrowser/tab-background-start-preWin10@2x.png (tabbrowser/tab-background-start-preWin10@2x.png)
+ skin/classic/browser/tabbrowser/tab-background-middle-preWin10.png (tabbrowser/tab-background-middle-preWin10.png)
+ skin/classic/browser/tabbrowser/tab-background-middle-preWin10@2x.png (tabbrowser/tab-background-middle-preWin10@2x.png)
+ skin/classic/browser/tabbrowser/tab-background-end-preWin10.png (tabbrowser/tab-background-end-preWin10.png)
+ skin/classic/browser/tabbrowser/tab-background-end-preWin10@2x.png (tabbrowser/tab-background-end-preWin10@2x.png)
+
+# NOTE: The following two files (tab-selected-end.svg, tab-selected-start.svg) get pre-processed in
+# Makefile.in with a non-default marker of "%" and the result of that gets packaged.
+ skin/classic/browser/tabbrowser/tab-selected-end.svg (tab-selected-end.svg)
+ skin/classic/browser/tabbrowser/tab-selected-start.svg (tab-selected-start.svg)
+
+ skin/classic/browser/tabbrowser/tab-stroke-end.png (tabbrowser/tab-stroke-end.png)
+ skin/classic/browser/tabbrowser/tab-stroke-end@2x.png (tabbrowser/tab-stroke-end@2x.png)
+ skin/classic/browser/tabbrowser/tab-stroke-start.png (tabbrowser/tab-stroke-start.png)
+ skin/classic/browser/tabbrowser/tab-stroke-start@2x.png (tabbrowser/tab-stroke-start@2x.png)
+ skin/classic/browser/tabbrowser/tabDragIndicator.png (tabbrowser/tabDragIndicator.png)
+ skin/classic/browser/sync-16.png
+ skin/classic/browser/sync-32.png
+ skin/classic/browser/sync-128.png
+ skin/classic/browser/sync-bg.png
+ skin/classic/browser/sync-desktopIcon.svg (../shared/sync-desktopIcon.svg)
+ skin/classic/browser/sync-horizontalbar.png
+ skin/classic/browser/sync-horizontalbar@2x.png
+ skin/classic/browser/sync-horizontalbar-XPVista7.png
+ skin/classic/browser/sync-horizontalbar-XPVista7@2x.png
+ skin/classic/browser/sync-mobileIcon.svg (../shared/sync-mobileIcon.svg)
+ skin/classic/browser/sync-notification-24.png
+ skin/classic/browser/syncSetup.css
+ skin/classic/browser/syncCommon.css
+ skin/classic/browser/syncQuota.css
+ skin/classic/browser/syncProgress-horizontalbar.png
+ skin/classic/browser/syncProgress-horizontalbar@2x.png
+ skin/classic/browser/syncProgress-horizontalbar-XPVista7.png
+ skin/classic/browser/syncProgress-horizontalbar-XPVista7@2x.png
+ skin/classic/browser/syncProgress-menuPanel.png
+ skin/classic/browser/syncProgress-menuPanel@2x.png
+ skin/classic/browser/syncProgress-toolbar.png
+ skin/classic/browser/syncProgress-toolbar@2x.png
+ skin/classic/browser/syncProgress-toolbar-inverted.png
+ skin/classic/browser/syncProgress-toolbar-inverted@2x.png
+ skin/classic/browser/syncProgress-toolbar-XPVista7.png
+ skin/classic/browser/syncProgress-toolbar-XPVista7@2x.png
+#ifdef E10S_TESTING_ONLY
+ skin/classic/browser/e10s-64@2x.png (../shared/e10s-64@2x.png)
+#endif
+
+[extensions/{972ce4c6-7e08-4474-a285-3208198ce6fd}] chrome.jar:
+% override chrome://browser/skin/page-livemarks.png chrome://browser/skin/feeds/feedIcon16.png
+% override chrome://browser/skin/feeds/audioFeedIcon.png chrome://browser/skin/feeds/feedIcon.png
+% override chrome://browser/skin/feeds/audioFeedIcon16.png chrome://browser/skin/feeds/feedIcon16.png
+% override chrome://browser/skin/feeds/videoFeedIcon.png chrome://browser/skin/feeds/feedIcon.png
+% override chrome://browser/skin/feeds/videoFeedIcon16.png chrome://browser/skin/feeds/feedIcon16.png
+
+% override chrome://browser/skin/aboutSessionRestore-window-icon.png chrome://browser/skin/preferences/application.png os!=WINNT
+% override chrome://browser/skin/aboutSessionRestore-window-icon.png chrome://browser/skin/preferences/application.png os=WINNT osversion<6
+
+% override chrome://browser/skin/Info.png chrome://browser/skin/Info-XP.png os=WINNT osversion<6
+% override chrome://browser/skin/livemark-folder.png chrome://browser/skin/livemark-folder-XP.png os=WINNT osversion<6
+% override chrome://browser/skin/menu-back.png chrome://browser/skin/menu-back-XP.png os=WINNT osversion<6
+% override chrome://browser/skin/menu-forward.png chrome://browser/skin/menu-forward-XP.png os=WINNT osversion<6
+% override chrome://browser/skin/pageInfo.png chrome://browser/skin/pageInfo-XP.png os=WINNT osversion<6
+% override chrome://browser/skin/feeds/feedIcon.png chrome://browser/skin/feeds/feedIcon-XP.png os=WINNT osversion<6
+% override chrome://browser/skin/feeds/feedIcon16.png chrome://browser/skin/feeds/feedIcon16-XP.png os=WINNT osversion<6
+% override chrome://browser/skin/places/query.png chrome://browser/skin/places/query-XP.png os=WINNT osversion<6
+% override chrome://browser/skin/places/bookmarksMenu.png chrome://browser/skin/places/bookmarksMenu-XP.png os=WINNT osversion<6
+% override chrome://browser/skin/places/bookmarksToolbar.png chrome://browser/skin/places/bookmarksToolbar-XP.png os=WINNT osversion<6
+% override chrome://browser/skin/places/bookmarksToolbar-menuPanel.png chrome://browser/skin/places/bookmarksToolbar-menuPanel-XP.png os=WINNT osversion<6
+% override chrome://browser/skin/places/calendar.png chrome://browser/skin/places/calendar-XP.png os=WINNT osversion<6
+% override chrome://browser/skin/places/toolbarDropMarker.png chrome://browser/skin/places/toolbarDropMarker-XP.png os=WINNT osversion<6
+% override chrome://browser/skin/places/libraryToolbar.png chrome://browser/skin/places/libraryToolbar-XP.png os=WINNT osversion<6
+% override chrome://browser/skin/places/starred48.png chrome://browser/skin/places/starred48-XP.png os=WINNT osversion<6
+% override chrome://browser/skin/places/tag.png chrome://browser/skin/places/tag-XP.png os=WINNT osversion<6
+% override chrome://browser/skin/places/history.png chrome://browser/skin/places/history-XP.png os=WINNT osversion<6
+% override chrome://browser/skin/places/allBookmarks.png chrome://browser/skin/places/allBookmarks-XP.png os=WINNT osversion<6
+% override chrome://browser/skin/places/unsortedBookmarks.png chrome://browser/skin/places/unsortedBookmarks-XP.png os=WINNT osversion<6
+% override chrome://browser/skin/preferences/alwaysAsk.png chrome://browser/skin/preferences/alwaysAsk-XP.png os=WINNT osversion<6
+% override chrome://browser/skin/preferences/application.png chrome://browser/skin/preferences/application-XP.png os=WINNT osversion<6
+% override chrome://browser/skin/preferences/saveFile.png chrome://browser/skin/preferences/saveFile-XP.png os=WINNT osversion<6
+
+% override chrome://browser/skin/actionicon-tab.png chrome://browser/skin/actionicon-tab-XPVista7.png os=WINNT osversion<=6.1
+% override chrome://browser/skin/privatebrowsing-mask-tabstrip.png chrome://browser/skin/privatebrowsing-mask-tabstrip-XPVista7.png os=WINNT osversion<=6.1
+% override chrome://browser/skin/privatebrowsing-mask-titlebar.png chrome://browser/skin/privatebrowsing-mask-titlebar-XPVista7.png os=WINNT osversion<=6.1
+% override chrome://browser/skin/reload-stop-go.png chrome://browser/skin/reload-stop-go-XPVista7.png os=WINNT osversion<=6.1
+% override chrome://browser/skin/reload-stop-go@2x.png chrome://browser/skin/reload-stop-go-XPVista7@2x.png os=WINNT osversion<=6.1
+% override chrome://browser/skin/sync-horizontalbar.png chrome://browser/skin/sync-horizontalbar-XPVista7.png os=WINNT osversion<=6.1
+% override chrome://browser/skin/sync-horizontalbar@2x.png chrome://browser/skin/sync-horizontalbar-XPVista7@2x.png os=WINNT osversion<=6.1
+% override chrome://browser/skin/syncProgress-horizontalbar.png chrome://browser/skin/syncProgress-horizontalbar-XPVista7.png os=WINNT osversion<=6.1
+% override chrome://browser/skin/syncProgress-horizontalbar@2x.png chrome://browser/skin/syncProgress-horizontalbar-XPVista7@2x.png os=WINNT osversion<=6.1
+% override chrome://browser/skin/syncProgress-toolbar.png chrome://browser/skin/syncProgress-toolbar-XPVista7.png os=WINNT osversion<=6.1
+% override chrome://browser/skin/syncProgress-toolbar@2x.png chrome://browser/skin/syncProgress-toolbar-XPVista7@2x.png os=WINNT osversion<=6.1
+% override chrome://browser/skin/toolbarbutton-dropdown-arrow.png chrome://browser/skin/toolbarbutton-dropdown-arrow-XPVista7.png os=WINNT osversion<=6.1
+% override chrome://browser/skin/urlbar-history-dropmarker.png chrome://browser/skin/urlbar-history-dropmarker-XPVista7.png os=WINNT osversion<=6.1
+% override chrome://browser/skin/urlbar-history-dropmarker@2x.png chrome://browser/skin/urlbar-history-dropmarker-XPVista7@2x.png os=WINNT osversion<=6.1
+% override chrome://browser/skin/downloads/download-glow-menuPanel.png chrome://browser/skin/downloads/download-glow-menuPanel-XPVista7.png os=WINNT osversion<=6.1
+% override chrome://browser/skin/places/autocomplete-star.png chrome://browser/skin/places/autocomplete-star-XPVista7.png os=WINNT osversion<=6.1
+% override chrome://browser/skin/tabbrowser/newtab.svg chrome://browser/skin/tabbrowser/newtab-XPVista7.svg os=WINNT osversion<=6.1
+% override chrome://browser/skin/tabbrowser/newtab-inverted.svg chrome://browser/skin/tabbrowser/newtab-inverted-XPVista7.svg os=WINNT osversion<=6.1
+% override chrome://browser/skin/tabbrowser/tab-arrow-left.svg chrome://browser/skin/tabbrowser/tab-arrow-left-XPVista7.svg os=WINNT osversion<=6.1
+
+% override chrome://browser/skin/Toolbar@2x.png chrome://browser/skin/Toolbar-aero@2x.png os=WINNT osversion=6
+% override chrome://browser/skin/Toolbar@2x.png chrome://browser/skin/Toolbar-aero@2x.png os=WINNT osversion=6.1
+% override chrome://browser/skin/Toolbar@2x.png chrome://browser/skin/Toolbar-win8@2x.png os=WINNT osversion=6.2
+% override chrome://browser/skin/Toolbar@2x.png chrome://browser/skin/Toolbar-win8@2x.png os=WINNT osversion=6.3
+% override chrome://browser/skin/Toolbar.png chrome://browser/skin/Toolbar-XP.png os=WINNT osversion<6
+% override chrome://browser/skin/Toolbar.png chrome://browser/skin/Toolbar-aero.png os=WINNT osversion=6
+% override chrome://browser/skin/Toolbar.png chrome://browser/skin/Toolbar-aero.png os=WINNT osversion=6.1
+% override chrome://browser/skin/Toolbar.png chrome://browser/skin/Toolbar-win8.png os=WINNT osversion=6.2
+% override chrome://browser/skin/Toolbar.png chrome://browser/skin/Toolbar-win8.png os=WINNT osversion=6.3
+
+% override chrome://browser/skin/tabbrowser/tab-background-start.png chrome://browser/skin/tabbrowser/tab-background-start-preWin10.png os=WINNT osversion<=6.3
+% override chrome://browser/skin/tabbrowser/tab-background-start@2x.png chrome://browser/skin/tabbrowser/tab-background-start-preWin10@2x.png os=WINNT osversion<=6.3
+% override chrome://browser/skin/tabbrowser/tab-background-middle.png chrome://browser/skin/tabbrowser/tab-background-middle-preWin10.png os=WINNT osversion<=6.3
+% override chrome://browser/skin/tabbrowser/tab-background-middle@2x.png chrome://browser/skin/tabbrowser/tab-background-middle-preWin10@2x.png os=WINNT osversion<=6.3
+% override chrome://browser/skin/tabbrowser/tab-background-end.png chrome://browser/skin/tabbrowser/tab-background-end-preWin10.png os=WINNT osversion<=6.3
+% override chrome://browser/skin/tabbrowser/tab-background-end@2x.png chrome://browser/skin/tabbrowser/tab-background-end-preWin10@2x.png os=WINNT osversion<=6.3
diff --git a/browser/themes/windows/keyhole-forward-mask.svg b/browser/themes/windows/keyhole-forward-mask.svg
new file mode 100644
index 000000000..051f6d87c
--- /dev/null
+++ b/browser/themes/windows/keyhole-forward-mask.svg
@@ -0,0 +1,14 @@
+<?xml version="1.0"?>
+<!-- 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/. -->
+<svg xmlns="http://www.w3.org/2000/svg">
+ <mask id="mask" maskContentUnits="objectBoundingBox">
+ <rect x="0" y="0" width="1" height="1" fill="#fff"/>
+ <circle cx="-0.46" cy="0.5" r="0.63"/>
+ </mask>
+ <mask id="mask-hover" maskContentUnits="objectBoundingBox">
+ <rect x="0" y="0" width="1" height="1" fill="#fff"/>
+ <circle cx="-0.35" cy="0.5" r="0.58"/>
+ </mask>
+</svg>
diff --git a/browser/themes/windows/livemark-folder-XP.png b/browser/themes/windows/livemark-folder-XP.png
new file mode 100644
index 000000000..00aa0364d
--- /dev/null
+++ b/browser/themes/windows/livemark-folder-XP.png
Binary files differ
diff --git a/browser/themes/windows/livemark-folder.png b/browser/themes/windows/livemark-folder.png
new file mode 100644
index 000000000..0be774e63
--- /dev/null
+++ b/browser/themes/windows/livemark-folder.png
Binary files differ
diff --git a/browser/themes/windows/loop/toolbar-win10.png b/browser/themes/windows/loop/toolbar-win10.png
new file mode 100644
index 000000000..59337608d
--- /dev/null
+++ b/browser/themes/windows/loop/toolbar-win10.png
Binary files differ
diff --git a/browser/themes/windows/loop/toolbar-win10@2x.png b/browser/themes/windows/loop/toolbar-win10@2x.png
new file mode 100644
index 000000000..b87e1ffa3
--- /dev/null
+++ b/browser/themes/windows/loop/toolbar-win10@2x.png
Binary files differ
diff --git a/browser/themes/windows/menu-back-XP.png b/browser/themes/windows/menu-back-XP.png
new file mode 100644
index 000000000..ecb8ccd1a
--- /dev/null
+++ b/browser/themes/windows/menu-back-XP.png
Binary files differ
diff --git a/browser/themes/windows/menu-back.png b/browser/themes/windows/menu-back.png
new file mode 100644
index 000000000..7c1d4620a
--- /dev/null
+++ b/browser/themes/windows/menu-back.png
Binary files differ
diff --git a/browser/themes/windows/menu-forward-XP.png b/browser/themes/windows/menu-forward-XP.png
new file mode 100644
index 000000000..a7460dc27
--- /dev/null
+++ b/browser/themes/windows/menu-forward-XP.png
Binary files differ
diff --git a/browser/themes/windows/menu-forward.png b/browser/themes/windows/menu-forward.png
new file mode 100644
index 000000000..82cd87483
--- /dev/null
+++ b/browser/themes/windows/menu-forward.png
Binary files differ
diff --git a/browser/themes/windows/menuPanel-customize.png b/browser/themes/windows/menuPanel-customize.png
new file mode 100644
index 000000000..161426f89
--- /dev/null
+++ b/browser/themes/windows/menuPanel-customize.png
Binary files differ
diff --git a/browser/themes/windows/menuPanel-customize@2x.png b/browser/themes/windows/menuPanel-customize@2x.png
new file mode 100644
index 000000000..5ce3b766a
--- /dev/null
+++ b/browser/themes/windows/menuPanel-customize@2x.png
Binary files differ
diff --git a/browser/themes/windows/menuPanel-exit.png b/browser/themes/windows/menuPanel-exit.png
new file mode 100644
index 000000000..8daaffe95
--- /dev/null
+++ b/browser/themes/windows/menuPanel-exit.png
Binary files differ
diff --git a/browser/themes/windows/menuPanel-exit@2x.png b/browser/themes/windows/menuPanel-exit@2x.png
new file mode 100644
index 000000000..d48426546
--- /dev/null
+++ b/browser/themes/windows/menuPanel-exit@2x.png
Binary files differ
diff --git a/browser/themes/windows/menuPanel-help.png b/browser/themes/windows/menuPanel-help.png
new file mode 100644
index 000000000..2f2b010bc
--- /dev/null
+++ b/browser/themes/windows/menuPanel-help.png
Binary files differ
diff --git a/browser/themes/windows/menuPanel-help@2x.png b/browser/themes/windows/menuPanel-help@2x.png
new file mode 100644
index 000000000..b8f0a80fa
--- /dev/null
+++ b/browser/themes/windows/menuPanel-help@2x.png
Binary files differ
diff --git a/browser/themes/windows/monitor.png b/browser/themes/windows/monitor.png
new file mode 100644
index 000000000..3c26d2674
--- /dev/null
+++ b/browser/themes/windows/monitor.png
Binary files differ
diff --git a/browser/themes/windows/monitor_16-10.png b/browser/themes/windows/monitor_16-10.png
new file mode 100644
index 000000000..06d91ea37
--- /dev/null
+++ b/browser/themes/windows/monitor_16-10.png
Binary files differ
diff --git a/browser/themes/windows/moz.build b/browser/themes/windows/moz.build
new file mode 100644
index 000000000..b787ab08e
--- /dev/null
+++ b/browser/themes/windows/moz.build
@@ -0,0 +1,13 @@
+# -*- Mode: python; indent-tabs-mode: nil; tab-width: 40 -*-
+# vim: set filetype=python:
+# 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/.
+
+DIRS += ['communicator']
+
+JAR_MANIFESTS += ['jar.mn']
+
+DEFINES['CAN_DRAW_IN_TITLEBAR'] = 1
+
+include('../tab-svgs.mozbuild')
diff --git a/browser/themes/windows/newtab/newTab.css b/browser/themes/windows/newtab/newTab.css
new file mode 100644
index 000000000..0f7aae6de
--- /dev/null
+++ b/browser/themes/windows/newtab/newTab.css
@@ -0,0 +1,20 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+%include ../../shared/newtab/newTab.inc.css
+
+
+.newtab-undo-button {
+ color: rgb(0,102,204);
+}
+
+.newtab-undo-button > .button-box {
+ padding: 0;
+}
+
+.newtab-title {
+ font: message-box;
+ font-size: 13px;
+ line-height: 30px;
+}
diff --git a/browser/themes/windows/pageInfo-XP.png b/browser/themes/windows/pageInfo-XP.png
new file mode 100644
index 000000000..bbf257237
--- /dev/null
+++ b/browser/themes/windows/pageInfo-XP.png
Binary files differ
diff --git a/browser/themes/windows/pageInfo.css b/browser/themes/windows/pageInfo.css
new file mode 100644
index 000000000..97d7615c1
--- /dev/null
+++ b/browser/themes/windows/pageInfo.css
@@ -0,0 +1,262 @@
+/* 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/. */
+
+@import "chrome://global/skin/";
+
+/* View buttons */
+#viewGroup {
+ padding-inline-start: 10px;
+}
+
+#viewGroup > radio {
+ list-style-image: url("chrome://browser/skin/pageInfo.png");
+ -moz-box-orient: vertical;
+ -moz-box-align: center;
+ -moz-appearance: none;
+ padding: 5px 3px 1px 3px;
+ margin: 0 1px;
+ min-width: 4.5em;
+}
+
+#viewGroup > radio:hover {
+ background-color: #E0E8F6;
+ color: black;
+}
+
+#viewGroup > radio[selected="true"] {
+ background-color: #C1D2EE;
+ color: black;
+}
+
+#topBar {
+ border-bottom: 2px groove ThreeDFace;
+ padding-inline-start: 10px;
+ background-color: -moz-Field;
+ color: -moz-FieldText;
+}
+
+#generalTab {
+ -moz-image-region: rect(0px, 32px, 32px, 0px)
+}
+
+#generalTab:hover, #generalTab[selected="true"] {
+ -moz-image-region: rect(32px, 32px, 64px, 0px)
+}
+
+#mediaTab {
+ -moz-image-region: rect(0px, 64px, 32px, 32px)
+}
+
+#mediaTab:hover, #mediaTab[selected="true"] {
+ -moz-image-region: rect(32px, 64px, 64px, 32px)
+}
+
+#feedTab {
+ -moz-image-region: rect(0px, 96px, 32px, 64px)
+}
+
+#feedTab:hover, #feedTab[selected="true"] {
+ -moz-image-region: rect(32px, 96px, 64px, 64px)
+}
+
+#permTab {
+ -moz-image-region: rect(0px, 128px, 32px, 96px)
+}
+
+#permTab:hover, #permTab[selected="true"] {
+ -moz-image-region: rect(32px, 128px, 64px, 96px)
+}
+
+#securityTab {
+ -moz-image-region: rect(0px, 160px, 32px, 128px)
+}
+
+#securityTab:hover, #securityTab[selected="true"] {
+ -moz-image-region: rect(32px, 160px, 64px, 128px)
+}
+
+deck {
+ padding: 10px 10px 10px 10px;
+}
+
+/* Misc */
+tree {
+ margin: .5em;
+}
+
+.gridSeparator {
+ width: .5em;
+}
+
+textbox {
+ background: transparent !important;
+ border: none;
+ padding: 0px;
+ margin-top: 1px;
+ -moz-appearance: none;
+}
+
+textbox.header {
+ margin-inline-start: 0;
+}
+
+.iframe {
+ margin: .5em;
+ background: white;
+ overflow: auto;
+}
+
+.fixedsize {
+ height: 8.5em;
+}
+
+textbox[disabled] {
+ font-style: italic;
+}
+
+/* General Tab */
+groupbox.collapsable caption .caption-icon {
+ width: 9px;
+ height: 9px;
+ background-repeat: no-repeat;
+ background-position: center;
+ margin-inline-start: 2px;
+ margin-inline-end: 2px;
+ background-image: url("chrome://global/skin/tree/twisty.svg#open");
+}
+
+groupbox.collapsable[closed="true"] {
+ border: none;
+ margin-bottom: 9px;
+ -moz-appearance: none;
+}
+
+groupbox.collapsable[closed="true"] caption .caption-icon {
+ background-image: url("chrome://global/skin/tree/twisty.svg#clsd");
+}
+
+groupbox tree {
+ margin: 0 3px;
+ border: none;
+}
+
+#securityBox description {
+ margin-inline-start: 10px;
+}
+
+#general-security-identity {
+ white-space: pre-wrap;
+ line-height: 2em;
+}
+
+/* Media Tab */
+#imagetree {
+ min-height: 10em;
+ margin-bottom: 0;
+}
+
+#mediaSplitter {
+ border-style: none;
+ background: none;
+ height: .8em;
+}
+
+#mediaGrid {
+ min-height: 9em;
+}
+
+#mediaLabelColumn {
+ min-width: 10em;
+}
+
+#thepreviewimage {
+ margin: 1em;
+}
+
+treechildren::-moz-tree-cell-text(broken) {
+ font-style: italic;
+ color: graytext;
+}
+
+/* Feeds Tab */
+#feedtree {
+ margin-bottom: 0px;
+}
+
+#feedListbox richlistitem {
+ padding-top: 6px;
+ padding-bottom: 6px;
+ padding-inline-start: 7px;
+ padding-inline-end: 7px;
+ min-height: 25px;
+ border-bottom: 1px dotted #C0C0C0;
+}
+
+#feedListbox richlistitem[selected="true"] {
+ background-color: -moz-Dialog;
+ color: -moz-DialogText;
+}
+
+#feedListbox {
+ border: 2px solid;
+ -moz-border-top-colors: ThreeDShadow ThreeDDarkShadow;
+ -moz-border-right-colors: ThreeDHighlight ThreeDLightShadow;
+ -moz-border-bottom-colors: ThreeDHighlight ThreeDLightShadow;
+ -moz-border-left-colors: ThreeDShadow ThreeDDarkShadow;
+}
+
+.feedTitle {
+ font-weight: bold;
+}
+
+/* Permissions Tab */
+#permList {
+ margin-top: .5em;
+ overflow: auto;
+ border: 2px solid;
+ -moz-border-top-colors: ThreeDShadow ThreeDDarkShadow;
+ -moz-border-right-colors: ThreeDHighlight ThreeDLightShadow;
+ -moz-border-bottom-colors: ThreeDHighlight ThreeDLightShadow;
+ -moz-border-left-colors: ThreeDShadow ThreeDDarkShadow;
+ background-color: -moz-field;
+}
+
+.permission {
+ padding-top: 6px;
+ padding-bottom: 6px;
+ padding-inline-start: 7px;
+ padding-inline-end: 7px;
+ min-height: 25px;
+ border-bottom: 1px dotted #C0C0C0;
+}
+
+.permissionLabel {
+ font-weight: bold;
+}
+
+.permission:hover {
+ background-color: -moz-dialog;
+}
+
+/* Security Tab */
+#securityPanel .caption-icon {
+ display: none;
+}
+
+#securityPanel .header {
+ font-size: 120%;
+}
+
+#securityPanel .fieldLabel {
+ margin: 2px 10px 3px;
+}
+
+#securityPanel .fieldValue {
+ font-weight: bold;
+ margin: 2px 10px 3px;
+}
+
+#securityPanel row {
+ -moz-box-align: center;
+}
diff --git a/browser/themes/windows/pageInfo.png b/browser/themes/windows/pageInfo.png
new file mode 100644
index 000000000..bc1b97c55
--- /dev/null
+++ b/browser/themes/windows/pageInfo.png
Binary files differ
diff --git a/browser/themes/windows/places/allBookmarks-XP.png b/browser/themes/windows/places/allBookmarks-XP.png
new file mode 100644
index 000000000..f7903cc5f
--- /dev/null
+++ b/browser/themes/windows/places/allBookmarks-XP.png
Binary files differ
diff --git a/browser/themes/windows/places/allBookmarks.png b/browser/themes/windows/places/allBookmarks.png
new file mode 100644
index 000000000..5331798e3
--- /dev/null
+++ b/browser/themes/windows/places/allBookmarks.png
Binary files differ
diff --git a/browser/themes/windows/places/autocomplete-star-XPVista7.png b/browser/themes/windows/places/autocomplete-star-XPVista7.png
new file mode 100644
index 000000000..af694e91c
--- /dev/null
+++ b/browser/themes/windows/places/autocomplete-star-XPVista7.png
Binary files differ
diff --git a/browser/themes/windows/places/autocomplete-star.png b/browser/themes/windows/places/autocomplete-star.png
new file mode 100644
index 000000000..9ba69f727
--- /dev/null
+++ b/browser/themes/windows/places/autocomplete-star.png
Binary files differ
diff --git a/browser/themes/windows/places/autocomplete-star@2x.png b/browser/themes/windows/places/autocomplete-star@2x.png
new file mode 100644
index 000000000..f30523e3d
--- /dev/null
+++ b/browser/themes/windows/places/autocomplete-star@2x.png
Binary files differ
diff --git a/browser/themes/windows/places/bookmarks-notification-finish.png b/browser/themes/windows/places/bookmarks-notification-finish.png
new file mode 100644
index 000000000..1e3f565f9
--- /dev/null
+++ b/browser/themes/windows/places/bookmarks-notification-finish.png
Binary files differ
diff --git a/browser/themes/windows/places/bookmarksMenu-XP.png b/browser/themes/windows/places/bookmarksMenu-XP.png
new file mode 100644
index 000000000..8f0c8bf58
--- /dev/null
+++ b/browser/themes/windows/places/bookmarksMenu-XP.png
Binary files differ
diff --git a/browser/themes/windows/places/bookmarksMenu.png b/browser/themes/windows/places/bookmarksMenu.png
new file mode 100644
index 000000000..84032e1f0
--- /dev/null
+++ b/browser/themes/windows/places/bookmarksMenu.png
Binary files differ
diff --git a/browser/themes/windows/places/bookmarksToolbar-XP.png b/browser/themes/windows/places/bookmarksToolbar-XP.png
new file mode 100644
index 000000000..9e988de20
--- /dev/null
+++ b/browser/themes/windows/places/bookmarksToolbar-XP.png
Binary files differ
diff --git a/browser/themes/windows/places/bookmarksToolbar-menuPanel-XP.png b/browser/themes/windows/places/bookmarksToolbar-menuPanel-XP.png
new file mode 100644
index 000000000..0e4247adb
--- /dev/null
+++ b/browser/themes/windows/places/bookmarksToolbar-menuPanel-XP.png
Binary files differ
diff --git a/browser/themes/windows/places/bookmarksToolbar-menuPanel.png b/browser/themes/windows/places/bookmarksToolbar-menuPanel.png
new file mode 100644
index 000000000..7cbe93d7a
--- /dev/null
+++ b/browser/themes/windows/places/bookmarksToolbar-menuPanel.png
Binary files differ
diff --git a/browser/themes/windows/places/bookmarksToolbar.png b/browser/themes/windows/places/bookmarksToolbar.png
new file mode 100644
index 000000000..70bba1457
--- /dev/null
+++ b/browser/themes/windows/places/bookmarksToolbar.png
Binary files differ
diff --git a/browser/themes/windows/places/calendar-XP.png b/browser/themes/windows/places/calendar-XP.png
new file mode 100644
index 000000000..7645af5cd
--- /dev/null
+++ b/browser/themes/windows/places/calendar-XP.png
Binary files differ
diff --git a/browser/themes/windows/places/calendar.png b/browser/themes/windows/places/calendar.png
new file mode 100644
index 000000000..4127e5988
--- /dev/null
+++ b/browser/themes/windows/places/calendar.png
Binary files differ
diff --git a/browser/themes/windows/places/downloads.png b/browser/themes/windows/places/downloads.png
new file mode 100644
index 000000000..f21a170cf
--- /dev/null
+++ b/browser/themes/windows/places/downloads.png
Binary files differ
diff --git a/browser/themes/windows/places/editBookmarkOverlay.css b/browser/themes/windows/places/editBookmarkOverlay.css
new file mode 100644
index 000000000..3d67cd3f4
--- /dev/null
+++ b/browser/themes/windows/places/editBookmarkOverlay.css
@@ -0,0 +1,80 @@
+/* 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/. */
+
+/**** folder menulist ****/
+.folder-icon > .menulist-label-box > .menulist-icon {
+ width: 16px;
+ height: 16px;
+}
+
+.folder-icon > .menu-iconic-left {
+ display: -moz-box;
+}
+
+.folder-icon {
+ list-style-image: url("chrome://global/skin/icons/folder-item.png") !important;
+ -moz-image-region: rect(0px, 32px, 16px, 16px) !important;
+}
+
+
+/**** expanders ****/
+
+.expander-up,
+.expander-down {
+ min-width: 0;
+ margin: 0;
+ margin-inline-end: 4px;
+}
+
+.expander-up > .button-box,
+.expander-down > .button-box {
+ padding: 0;
+}
+
+.expander-up {
+ list-style-image: url("chrome://global/skin/icons/collapse.png");
+}
+
+.expander-down {
+ list-style-image: url("chrome://global/skin/icons/expand.png");
+}
+
+#editBookmarkPanelContent {
+ min-width: 23em;
+}
+
+#editBMPanel_folderTree {
+ margin-top: 2px;
+ margin-bottom: 2px;
+}
+
+/* Hide the value column of the tag autocomplete popup
+ * leaving only the comment column visible. This is
+ * so that only the tag being edited is shown in the
+ * popup.
+ */
+#editBMPanel_tagsField #treecolAutoCompleteValue {
+ visibility: collapse;
+}
+
+
+/* ::::: bookmark panel dropdown icons ::::: */
+
+#editBMPanel_folderMenuList[selectedIndex="0"],
+#editBMPanel_toolbarFolderItem {
+ list-style-image: url("chrome://browser/skin/places/bookmarksToolbar.png") !important;
+ -moz-image-region: auto !important;
+}
+
+#editBMPanel_folderMenuList[selectedIndex="1"],
+#editBMPanel_bmRootItem {
+ list-style-image: url("chrome://browser/skin/places/bookmarksMenu.png") !important;
+ -moz-image-region: auto !important;
+}
+
+#editBMPanel_folderMenuList[selectedIndex="2"],
+#editBMPanel_unfiledRootItem {
+ list-style-image: url("chrome://browser/skin/places/unsortedBookmarks.png") !important;
+ -moz-image-region: auto !important;
+}
diff --git a/browser/themes/windows/places/history-XP.png b/browser/themes/windows/places/history-XP.png
new file mode 100644
index 000000000..fcc89bbbf
--- /dev/null
+++ b/browser/themes/windows/places/history-XP.png
Binary files differ
diff --git a/browser/themes/windows/places/history.png b/browser/themes/windows/places/history.png
new file mode 100644
index 000000000..656626930
--- /dev/null
+++ b/browser/themes/windows/places/history.png
Binary files differ
diff --git a/browser/themes/windows/places/libraryToolbar-XP.png b/browser/themes/windows/places/libraryToolbar-XP.png
new file mode 100644
index 000000000..75b390ff6
--- /dev/null
+++ b/browser/themes/windows/places/libraryToolbar-XP.png
Binary files differ
diff --git a/browser/themes/windows/places/libraryToolbar.png b/browser/themes/windows/places/libraryToolbar.png
new file mode 100644
index 000000000..31cee7a49
--- /dev/null
+++ b/browser/themes/windows/places/libraryToolbar.png
Binary files differ
diff --git a/browser/themes/windows/places/livemark-item.png b/browser/themes/windows/places/livemark-item.png
new file mode 100644
index 000000000..4522a20ae
--- /dev/null
+++ b/browser/themes/windows/places/livemark-item.png
Binary files differ
diff --git a/browser/themes/windows/places/organizer.css b/browser/themes/windows/places/organizer.css
new file mode 100644
index 000000000..4de603b9f
--- /dev/null
+++ b/browser/themes/windows/places/organizer.css
@@ -0,0 +1,222 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+%include ../windowsShared.inc
+%filter substitution
+
+/* Toolbar */
+#placesToolbar {
+ padding: 3px;
+ padding-inline-end: 6px;
+}
+
+#placesToolbar > toolbarbutton[disabled] > .toolbarbutton-icon {
+ opacity: .4;
+}
+
+#back-button,
+#forward-button {
+ list-style-image: url("chrome://browser/skin/Toolbar.png");
+}
+
+@media (-moz-windows-theme: luna-silver) {
+ #back-button,
+ #forward-button {
+ list-style-image: url("chrome://browser/skin/Toolbar-lunaSilver.png");
+ }
+}
+
+#back-button {
+ -moz-image-region: rect(0, 54px, 18px, 36px);
+}
+
+#forward-button {
+ -moz-image-region: rect(0, 72px, 18px, 54px);
+}
+
+#back-button:-moz-locale-dir(rtl) > .toolbarbutton-icon,
+#forward-button:-moz-locale-dir(rtl) > .toolbarbutton-icon {
+ transform: scaleX(-1);
+}
+
+/* Menu */
+#placesMenu {
+ margin-inline-start: 6px;
+ -moz-appearance: none;
+ border: none;
+}
+
+#placesMenu > menu {
+ padding-inline-start: 4px;
+ padding-inline-end: 1px;
+ padding-top: 2px;
+ padding-bottom: 2px;
+ -moz-appearance: toolbarbutton;
+%ifdef XP_WIN
+% use standard menu colors on OS/2
+ color: -moz-DialogText;
+%endif
+ border: 1px solid transparent;
+}
+
+#placesMenu > menu[_moz-menuactive="true"] {
+ background-color: transparent;
+}
+
+#placesMenu > menu:hover {
+ border-color: ThreeDHighlight ThreeDShadow ThreeDShadow ThreeDHighlight;
+}
+
+#placesMenu > menu[open="true"] {
+ border-color: ThreeDShadow ThreeDHighlight ThreeDHighlight ThreeDShadow;
+ padding-inline-start: 5px;
+ padding-inline-end: 0px;
+ padding-top: 3px;
+ padding-bottom: 1px;
+}
+
+#placesMenu > menu > .menubar-text {
+ padding-inline-end: 8px;
+ background: url(chrome://global/skin/arrow/arrow-dn.gif) right center no-repeat;
+}
+
+#placesMenu > menu > .menubar-text:-moz-locale-dir(rtl) {
+ background-position: left center;
+}
+
+/* organize, view and maintenance buttons icons */
+#organizeButton,
+#viewMenu,
+#maintenanceButton {
+ list-style-image: url("chrome://browser/skin/places/libraryToolbar.png");
+}
+
+/* organize button */
+#organizeButton {
+ -moz-image-region: rect(0px, 16px, 16px, 0px);
+}
+#organizeButton:hover,
+#organizeButton[open="true"] {
+ -moz-image-region: rect(16px, 16px, 32px, 0px);
+}
+
+/* view button */
+#viewMenu {
+ -moz-image-region: rect(0px, 32px, 16px, 16px);
+}
+#viewMenu:hover,
+#viewMenu[open="true"] {
+ -moz-image-region: rect(16px, 32px, 32px, 16px);
+}
+
+/* maintenance button */
+#maintenanceButton {
+ -moz-image-region: rect(0px, 48px, 16px, 32px);
+}
+#maintenanceButton:hover,
+#maintenanceButton[open="true"] {
+ -moz-image-region: rect(16px, 48px, 32px, 32px);
+}
+
+/* Root View */
+#placesView {
+ border-top: 1px solid ThreeDDarkShadow;
+}
+
+/* Info box */
+#detailsDeck {
+ border-top: 1px solid ThreeDShadow;
+ padding: 5px;
+}
+
+#infoBoxExpanderLabel {
+ padding-inline-start: 2px;
+}
+
+#searchFilter {
+ margin: 0;
+}
+
+/**
+ * Downloads pane
+ */
+
+#clearDownloadsButton > .toolbarbutton-icon {
+ display: none;
+}
+
+#clearDownloadsButton {
+ padding-inline-start: 9px;
+ padding-inline-end: 9px;
+}
+
+
+@media not all and (-moz-os-version: windows-xp) {
+ #placesView {
+ border-top: none;
+ }
+
+ @media not all and (-moz-windows-classic) {
+ #placesToolbox {
+ -moz-appearance: none;
+ background-color: transparent;
+ }
+
+ #placesToolbar {
+ -moz-appearance: none;
+ background-color: -moz-Dialog;
+ color: -moz-dialogText;
+ }
+ }
+
+ @media (-moz-windows-default-theme) {
+ #placesView > splitter {
+ border: 0;
+ border-inline-end: 1px solid #A9B7C9;
+ min-width: 0;
+ width: 3px;
+ background-color: transparent;
+ margin-inline-start: -3px;
+ position: relative;
+ }
+ }
+}
+
+@media (-moz-windows-glass) {
+ #placesToolbox {
+ border-top: none;
+ }
+
+ #placesToolbar {
+ background-image: linear-gradient(@toolbarHighlight@, transparent);
+ }
+}
+
+@media (-moz-windows-default-theme) and (-moz-os-version: windows-vista),
+ (-moz-windows-default-theme) and (-moz-os-version: windows-win7) {
+ #placesView,
+ #infoPane,
+ #placesList,
+ #placeContent {
+ background-color: #EEF3FA;
+ }
+
+ #placesToolbar {
+ background-color: @customToolbarColor@;
+ color: black;
+ }
+
+ #detailsDeck {
+ border-top-color: #A9B7C9;
+ }
+
+ #searchFilter {
+ -moz-appearance: none;
+ padding: 2px;
+ padding-inline-start: 4px;
+ background-clip: padding-box;
+ border: 1px solid rgba(0,0,0,.32);
+ border-radius: 2px;
+ }
+}
diff --git a/browser/themes/windows/places/places.css b/browser/themes/windows/places/places.css
new file mode 100644
index 000000000..4ec8f6555
--- /dev/null
+++ b/browser/themes/windows/places/places.css
@@ -0,0 +1,176 @@
+/* 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/. */
+
+/* Sidebars */
+.sidebar-placesTree {
+ -moz-appearance: none;
+ border: 0;
+ margin: 0;
+ border-top: 1px solid ThreeDShadow;
+}
+
+.sidebar-placesTreechildren::-moz-tree-cell(leaf) ,
+.sidebar-placesTreechildren::-moz-tree-image(leaf) {
+ cursor: pointer;
+}
+
+.sidebar-placesTreechildren::-moz-tree-cell-text(leaf, hover) {
+ cursor: pointer;
+ text-decoration: underline;
+}
+
+.sidebar-placesTreechildren::-moz-tree-cell(separator) {
+ cursor: default;
+}
+
+/* Style Places sidebars as Vista media collection */
+@media (-moz-windows-default-theme) {
+ @media not all and (-moz-os-version: windows-xp) {
+ .sidebar-placesTree {
+ background-color: transparent;
+ border-top: none;
+ }
+
+ .sidebar-placesTreechildren::-moz-tree-cell-text(leaf, hover) {
+ text-decoration: none;
+ }
+ }
+
+ @media (-moz-os-version: windows-vista),
+ (-moz-os-version: windows-win7) {
+ #bookmarksPanel,
+ #history-panel,
+ #tabs-panel {
+ background-color: #EEF3FA;
+ }
+ }
+}
+
+/* Trees */
+treechildren::-moz-tree-image(title) {
+ list-style-image: url("chrome://mozapps/skin/places/defaultFavicon.png");
+ padding-right: 2px;
+ margin: 0px 2px;
+ width: 16px;
+ height: 16px;
+}
+
+treechildren::-moz-tree-image(title, livemarkItem) {
+ list-style-image: url("chrome://browser/skin/places/livemark-item.png");
+ -moz-image-region: rect(0px, 16px, 16px, 0px);
+}
+
+treechildren::-moz-tree-image(title, livemarkItem, visited) {
+ -moz-image-region: rect(0px, 32px, 16px, 16px);
+}
+
+treechildren::-moz-tree-image(title, separator) {
+ list-style-image: none;
+ width: 0;
+ height: 0;
+}
+
+treechildren::-moz-tree-image(title, container) {
+ list-style-image: url("chrome://global/skin/icons/folder-item.png");
+ -moz-image-region: rect(0px, 32px, 16px, 16px);
+}
+
+treechildren::-moz-tree-image(title, open) {
+ -moz-image-region: rect(16px, 32px, 32px, 16px);
+}
+
+treechildren::-moz-tree-image(title, container, livemark) {
+ list-style-image: url("chrome://browser/skin/livemark-folder.png");
+ -moz-image-region: auto;
+}
+
+treechildren::-moz-tree-image(container, OrganizerQuery_AllBookmarks) {
+ list-style-image: url("chrome://browser/skin/places/allBookmarks.png");
+ -moz-image-region: auto;
+}
+
+treechildren::-moz-tree-image(container, OrganizerQuery_BookmarksToolbar) {
+ list-style-image: url("chrome://browser/skin/places/bookmarksToolbar.png");
+ -moz-image-region: auto;
+}
+
+treechildren::-moz-tree-image(container, OrganizerQuery_BookmarksMenu) {
+ list-style-image: url("chrome://browser/skin/places/bookmarksMenu.png");
+ -moz-image-region: auto;
+}
+
+treechildren::-moz-tree-image(container, OrganizerQuery_UnfiledBookmarks) {
+ list-style-image: url("chrome://browser/skin/places/unsortedBookmarks.png");
+ -moz-image-region: auto;
+}
+
+/* query-nodes should be styled even if they're not expandable */
+treechildren::-moz-tree-image(title, query) {
+ list-style-image: url("chrome://browser/skin/places/query.png");
+ -moz-image-region: auto;
+}
+
+treechildren::-moz-tree-image(title, query, tagContainer),
+treechildren::-moz-tree-image(query, OrganizerQuery_Tags) {
+ list-style-image: url("chrome://browser/skin/places/tag.png");
+ -moz-image-region: auto;
+}
+
+treechildren::-moz-tree-image(query, OrganizerQuery_Downloads) {
+ list-style-image: url("chrome://browser/skin/places/downloads.png");
+ -moz-image-region: auto;
+}
+
+/* calendar icon for folders grouping items by date */
+treechildren::-moz-tree-image(title, query, dayContainer) {
+ list-style-image: url("chrome://browser/skin/places/calendar.png");
+ -moz-image-region: auto;
+}
+
+treechildren::-moz-tree-image(title, query, hostContainer) {
+ list-style-image: url("chrome://global/skin/icons/folder-item.png");
+ -moz-image-region: rect(0px, 32px, 16px, 16px);
+}
+
+treechildren::-moz-tree-image(title, query, hostContainer, open) {
+ list-style-image: url("chrome://global/skin/icons/folder-item.png");
+ -moz-image-region: rect(16px, 32px, 32px, 16px);
+}
+
+treechildren::-moz-tree-image(title, query, OrganizerQuery_History) {
+ list-style-image: url("chrome://browser/skin/places/history.png");
+}
+
+/* We want some queries to look like ordinary folders. This must come
+ after the (title, query) selector, or it would get overridden. */
+treechildren::-moz-tree-image(title, query, folder) {
+ list-style-image: url("chrome://global/skin/icons/folder-item.png");
+ -moz-image-region: rect(0px, 32px, 16px, 16px);
+}
+
+treechildren::-moz-tree-image(title, query, folder, open) {
+ -moz-image-region: rect(16px, 32px, 32px, 16px);
+}
+
+treechildren::-moz-tree-image(cutting) {
+ opacity: 0.5;
+}
+
+treechildren::-moz-tree-cell-text(cutting) {
+ opacity: 0.7;
+}
+
+/* Browser Sidebars */
+
+/* Default button vert. margins are 1px/2px, and this can cause misalignment */
+#viewButton {
+ margin-top: 2px;
+ margin-bottom: 2px;
+}
+
+#viewButton > .button-box > .button-menu-dropmarker {
+ height: auto;
+ width: auto;
+ margin-inline-end: -3px;
+}
diff --git a/browser/themes/windows/places/query-XP.png b/browser/themes/windows/places/query-XP.png
new file mode 100644
index 000000000..9e79fc791
--- /dev/null
+++ b/browser/themes/windows/places/query-XP.png
Binary files differ
diff --git a/browser/themes/windows/places/query.png b/browser/themes/windows/places/query.png
new file mode 100644
index 000000000..18b65bd71
--- /dev/null
+++ b/browser/themes/windows/places/query.png
Binary files differ
diff --git a/browser/themes/windows/places/starred48-XP.png b/browser/themes/windows/places/starred48-XP.png
new file mode 100644
index 000000000..1cb7bc57d
--- /dev/null
+++ b/browser/themes/windows/places/starred48-XP.png
Binary files differ
diff --git a/browser/themes/windows/places/starred48.png b/browser/themes/windows/places/starred48.png
new file mode 100644
index 000000000..be9afdf3f
--- /dev/null
+++ b/browser/themes/windows/places/starred48.png
Binary files differ
diff --git a/browser/themes/windows/places/tag-XP.png b/browser/themes/windows/places/tag-XP.png
new file mode 100644
index 000000000..4b4a13e66
--- /dev/null
+++ b/browser/themes/windows/places/tag-XP.png
Binary files differ
diff --git a/browser/themes/windows/places/tag.png b/browser/themes/windows/places/tag.png
new file mode 100644
index 000000000..ebe70a6b9
--- /dev/null
+++ b/browser/themes/windows/places/tag.png
Binary files differ
diff --git a/browser/themes/windows/places/toolbarDropMarker-XP.png b/browser/themes/windows/places/toolbarDropMarker-XP.png
new file mode 100644
index 000000000..9173b7a7a
--- /dev/null
+++ b/browser/themes/windows/places/toolbarDropMarker-XP.png
Binary files differ
diff --git a/browser/themes/windows/places/toolbarDropMarker.png b/browser/themes/windows/places/toolbarDropMarker.png
new file mode 100644
index 000000000..6c1b61d30
--- /dev/null
+++ b/browser/themes/windows/places/toolbarDropMarker.png
Binary files differ
diff --git a/browser/themes/windows/places/unsortedBookmarks-XP.png b/browser/themes/windows/places/unsortedBookmarks-XP.png
new file mode 100644
index 000000000..cf73f9464
--- /dev/null
+++ b/browser/themes/windows/places/unsortedBookmarks-XP.png
Binary files differ
diff --git a/browser/themes/windows/places/unsortedBookmarks.png b/browser/themes/windows/places/unsortedBookmarks.png
new file mode 100644
index 000000000..b8d3e69ab
--- /dev/null
+++ b/browser/themes/windows/places/unsortedBookmarks.png
Binary files differ
diff --git a/browser/themes/windows/places/unstarred48.png b/browser/themes/windows/places/unstarred48.png
new file mode 100644
index 000000000..c287f0c4a
--- /dev/null
+++ b/browser/themes/windows/places/unstarred48.png
Binary files differ
diff --git a/browser/themes/windows/preferences/alwaysAsk-XP.png b/browser/themes/windows/preferences/alwaysAsk-XP.png
new file mode 100644
index 000000000..8693211ac
--- /dev/null
+++ b/browser/themes/windows/preferences/alwaysAsk-XP.png
Binary files differ
diff --git a/browser/themes/windows/preferences/alwaysAsk.png b/browser/themes/windows/preferences/alwaysAsk.png
new file mode 100644
index 000000000..b2ee5c0ce
--- /dev/null
+++ b/browser/themes/windows/preferences/alwaysAsk.png
Binary files differ
diff --git a/browser/themes/windows/preferences/application-XP.png b/browser/themes/windows/preferences/application-XP.png
new file mode 100644
index 000000000..7d279ff84
--- /dev/null
+++ b/browser/themes/windows/preferences/application-XP.png
Binary files differ
diff --git a/browser/themes/windows/preferences/application.png b/browser/themes/windows/preferences/application.png
new file mode 100644
index 000000000..e4b09204e
--- /dev/null
+++ b/browser/themes/windows/preferences/application.png
Binary files differ
diff --git a/browser/themes/windows/preferences/applications.css b/browser/themes/windows/preferences/applications.css
new file mode 100644
index 000000000..96ddb7ed0
--- /dev/null
+++ b/browser/themes/windows/preferences/applications.css
@@ -0,0 +1,64 @@
+/* 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/. */
+
+/**
+ * Line up the actions menu with action labels above and below it.
+ * Equalize the distance from the left side of the action box to the left side
+ * of the icon for both the menu and the non-menu versions of the action box.
+ * Also make sure the labels are the same distance away from the icons.
+ */
+.actionsMenu {
+ margin-top: 0;
+ margin-bottom: 0;
+ margin-inline-start: -2px;
+ margin-inline-end: 0;
+}
+
+.typeIcon,
+.actionIcon {
+ margin-inline-start: 3px;
+ margin-inline-end: 3px;
+}
+
+#handlersView > richlistitem label {
+ margin-inline-start: 1px;
+ margin-top: 2px;
+}
+
+#handlersView > richlistitem {
+ min-height: 22px;
+}
+
+richlistitem[appHandlerIcon="ask"],
+menuitem[appHandlerIcon="ask"] {
+ list-style-image: url("chrome://browser/skin/preferences/alwaysAsk.png");
+}
+
+richlistitem[appHandlerIcon="save"],
+menuitem[appHandlerIcon="save"] {
+ list-style-image: url("chrome://browser/skin/preferences/application.png");
+}
+
+richlistitem[appHandlerIcon="feed"],
+menuitem[appHandlerIcon="feed"] {
+ list-style-image: url("chrome://browser/skin/page-livemarks.png");
+}
+
+richlistitem[appHandlerIcon="plugin"],
+menuitem[appHandlerIcon="plugin"] {
+ list-style-image: url("chrome://mozapps/skin/plugins/pluginGeneric-16.png");
+}
+
+.actionsMenu .menulist-icon {
+ margin-inline-end: 3px;
+}
+
+.actionsMenu > menupopup > menuitem > .menu-iconic-left {
+ padding-inline-start: 0px;
+ padding-inline-end: 2px;
+}
+
+.actionsMenu > menupopup > menuitem {
+ padding-inline-start: 4px;
+}
diff --git a/browser/themes/windows/preferences/in-content/dialog.css b/browser/themes/windows/preferences/in-content/dialog.css
new file mode 100644
index 000000000..3b1ae45e0
--- /dev/null
+++ b/browser/themes/windows/preferences/in-content/dialog.css
@@ -0,0 +1,19 @@
+/* - This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this file,
+ - You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+%include ../../../shared/incontentprefs/dialog.inc.css
+
+label:not(.menu-text),
+textbox,
+description,
+.tab-text,
+caption > label {
+ font-size: 1.2em;
+}
+
+/* Create a separate rule to unset these styles on .tree-input instead of
+ using :not(.tree-input) so the selector specifity doesn't change. */
+textbox.tree-input {
+ font-size: unset;
+}
diff --git a/browser/themes/windows/preferences/in-content/preferences.css b/browser/themes/windows/preferences/in-content/preferences.css
new file mode 100644
index 000000000..5ba7c49a4
--- /dev/null
+++ b/browser/themes/windows/preferences/in-content/preferences.css
@@ -0,0 +1,64 @@
+/* - This Source Code Form is subject to the terms of the Mozilla Public
+ - License, v. 2.0. If a copy of the MPL was not distributed with this file,
+ - You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+%include ../../../shared/incontentprefs/preferences.inc.css
+
+@media not all and (-moz-windows-default-theme) {
+ #category-general > .category-icon {
+ list-style-image: url("chrome://browser/skin/preferences/in-content/icons.svg#general-native");
+ }
+
+ #category-search > .category-icon {
+ list-style-image: url("chrome://browser/skin/preferences/in-content/icons.svg#search-native");
+ }
+
+ #category-content > .category-icon {
+ list-style-image: url("chrome://browser/skin/preferences/in-content/icons.svg#content-native");
+ }
+
+ #category-application > .category-icon {
+ list-style-image: url("chrome://browser/skin/preferences/in-content/icons.svg#applications-native");
+ }
+
+ #category-privacy > .category-icon {
+ list-style-image: url("chrome://browser/skin/preferences/in-content/icons.svg#privacy-native");
+ }
+
+ #category-security > .category-icon {
+ list-style-image: url("chrome://browser/skin/preferences/in-content/icons.svg#security-native");
+ }
+
+ #category-sync > .category-icon {
+ list-style-image: url("chrome://browser/skin/preferences/in-content/icons.svg#sync-native");
+ }
+
+ #category-advanced > .category-icon {
+ list-style-image: url("chrome://browser/skin/preferences/in-content/icons.svg#advanced-native");
+ }
+}
+
+.actionsMenu > .menulist-label-box > .menulist-icon {
+ margin-inline-end: 9px;
+}
+
+textbox + button,
+filefield + button {
+ margin-inline-start: -4px;
+}
+
+#advancedPrefs {
+ padding-bottom: 0; /* override padding from normal preferences.css */
+}
+
+#fxaProfileImage {
+ -moz-user-focus: normal;
+}
+
+/**
+ * Dialog
+ */
+
+#dialogTitle {
+ font-size: 1em;
+}
diff --git a/browser/themes/windows/preferences/preferences.css b/browser/themes/windows/preferences/preferences.css
new file mode 100644
index 000000000..bd1ec3083
--- /dev/null
+++ b/browser/themes/windows/preferences/preferences.css
@@ -0,0 +1,103 @@
+/*
+# -*- Mode: Java; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*-
+# 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/.
+*/
+
+/* General Pane */
+
+#useFirefoxSync,
+#getStarted {
+ font-size: 90%;
+}
+
+#isNotDefaultLabel {
+ font-weight: bold;
+}
+
+/* Content Pane */
+#translationAttributionImage {
+ width: 70px;
+ cursor: pointer;
+}
+
+/* Modeless Window Dialogs */
+.windowDialog,
+.windowDialog prefpane {
+ padding: 0;
+}
+
+.contentPane {
+ margin: 9px 8px 5px;
+}
+
+.actionButtons {
+ margin: 0 3px 6px !important;
+}
+
+/* Cookies Manager */
+#cookiesChildren::-moz-tree-image(domainCol) {
+ width: 16px;
+ height: 16px;
+ margin: 0 2px;
+ list-style-image: url("chrome://mozapps/skin/places/defaultFavicon.png") !important;
+}
+
+#cookiesChildren::-moz-tree-image(domainCol, container) {
+ list-style-image: url("chrome://global/skin/icons/folder-item.png") !important;
+ -moz-image-region: rect(0, 32px, 16px, 16px);
+}
+
+#cookiesChildren::-moz-tree-image(domainCol, container, open) {
+ -moz-image-region: rect(16px, 32px, 32px, 16px);
+}
+
+#cookieInfoBox {
+ border: 1px solid ThreeDShadow;
+ border-radius: 0;
+ margin: 4px;
+ padding: 0;
+}
+
+/* Advanced Pane */
+
+/* Adding padding-bottom prevents the bottom of the tabpanel from being cutoff
+ when browser.preferences.animateFadeIn = true */
+#advancedPrefs {
+ padding-bottom: 8px;
+}
+
+/* bottom-most box containing a groupbox in a prefpane. Prevents the bottom
+ of the groupbox from being cutoff */
+.bottomBox {
+ padding-bottom: 4px;
+}
+
+/* Sync Pane */
+
+#syncDesc {
+ padding: 0 8em;
+}
+
+.syncGroupBox {
+ padding: 10px;
+}
+
+#accountCaptionImage {
+ list-style-image: url("chrome://mozapps/skin/profile/profileicon.png");
+}
+
+#syncAddDeviceLabel {
+ margin-top: 1em;
+ margin-bottom: 1em;
+}
+
+#noFxaAccount {
+ margin: 6px;
+ line-height: 1.2em;
+}
+
+#noFxaAccount > label:first-child {
+ margin-bottom: 0.6em;
+}
diff --git a/browser/themes/windows/preferences/saveFile-XP.png b/browser/themes/windows/preferences/saveFile-XP.png
new file mode 100644
index 000000000..e115eaa9f
--- /dev/null
+++ b/browser/themes/windows/preferences/saveFile-XP.png
Binary files differ
diff --git a/browser/themes/windows/preferences/saveFile.png b/browser/themes/windows/preferences/saveFile.png
new file mode 100644
index 000000000..ca4b12589
--- /dev/null
+++ b/browser/themes/windows/preferences/saveFile.png
Binary files differ
diff --git a/browser/themes/windows/privatebrowsing-mask-tabstrip-XPVista7.png b/browser/themes/windows/privatebrowsing-mask-tabstrip-XPVista7.png
new file mode 100644
index 000000000..bd5d46a76
--- /dev/null
+++ b/browser/themes/windows/privatebrowsing-mask-tabstrip-XPVista7.png
Binary files differ
diff --git a/browser/themes/windows/privatebrowsing-mask-tabstrip.png b/browser/themes/windows/privatebrowsing-mask-tabstrip.png
new file mode 100644
index 000000000..e2eba8b89
--- /dev/null
+++ b/browser/themes/windows/privatebrowsing-mask-tabstrip.png
Binary files differ
diff --git a/browser/themes/windows/privatebrowsing-mask-titlebar-XPVista7-tall.png b/browser/themes/windows/privatebrowsing-mask-titlebar-XPVista7-tall.png
new file mode 100644
index 000000000..4a723c54e
--- /dev/null
+++ b/browser/themes/windows/privatebrowsing-mask-titlebar-XPVista7-tall.png
Binary files differ
diff --git a/browser/themes/windows/privatebrowsing-mask-titlebar-XPVista7.png b/browser/themes/windows/privatebrowsing-mask-titlebar-XPVista7.png
new file mode 100644
index 000000000..835912b53
--- /dev/null
+++ b/browser/themes/windows/privatebrowsing-mask-titlebar-XPVista7.png
Binary files differ
diff --git a/browser/themes/windows/privatebrowsing-mask-titlebar.png b/browser/themes/windows/privatebrowsing-mask-titlebar.png
new file mode 100644
index 000000000..111dc7d04
--- /dev/null
+++ b/browser/themes/windows/privatebrowsing-mask-titlebar.png
Binary files differ
diff --git a/browser/themes/windows/reload-stop-go-XPVista7.png b/browser/themes/windows/reload-stop-go-XPVista7.png
new file mode 100644
index 000000000..3ef32c3ce
--- /dev/null
+++ b/browser/themes/windows/reload-stop-go-XPVista7.png
Binary files differ
diff --git a/browser/themes/windows/reload-stop-go-XPVista7@2x.png b/browser/themes/windows/reload-stop-go-XPVista7@2x.png
new file mode 100644
index 000000000..38b27bf0c
--- /dev/null
+++ b/browser/themes/windows/reload-stop-go-XPVista7@2x.png
Binary files differ
diff --git a/browser/themes/windows/reload-stop-go.png b/browser/themes/windows/reload-stop-go.png
new file mode 100644
index 000000000..8b3f398c0
--- /dev/null
+++ b/browser/themes/windows/reload-stop-go.png
Binary files differ
diff --git a/browser/themes/windows/reload-stop-go@2x.png b/browser/themes/windows/reload-stop-go@2x.png
new file mode 100644
index 000000000..f116eb98f
--- /dev/null
+++ b/browser/themes/windows/reload-stop-go@2x.png
Binary files differ
diff --git a/browser/themes/windows/sanitizeDialog.css b/browser/themes/windows/sanitizeDialog.css
new file mode 100644
index 000000000..58e1f2983
--- /dev/null
+++ b/browser/themes/windows/sanitizeDialog.css
@@ -0,0 +1,93 @@
+/* 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/. */
+
+#sanitizeDurationChoice {
+ margin-inline-end: 0;
+}
+
+/* Align the duration label with the warning box and item list */
+#sanitizeDurationLabel {
+ margin-inline-start: 3px;
+}
+
+
+/* Hide the duration dropdown suffix label if it's empty. Otherwise it
+ takes up a little space, causing the end of the dropdown to not be aligned
+ with the warning box. */
+#sanitizeDurationSuffixLabel[value=""] {
+ display: none;
+}
+
+
+/* Places tree */
+#placesTreechildren::-moz-tree-row(selected),
+#placesTreechildren::-moz-tree-row(grippyRow) {
+ background: #999;
+}
+
+#placesTreechildren::-moz-tree-cell-text(selected) {
+ color: #111;
+}
+
+
+/* Sanitize everything warning box */
+#sanitizeEverythingWarningBox {
+ background-color: Window;
+ border: 1px solid ThreeDDarkShadow;
+ border-radius: 5px;
+ padding: 16px;
+}
+
+#sanitizeEverythingWarningIcon {
+ list-style-image: url("chrome://global/skin/icons/warning-large.png");
+ padding: 0;
+ margin: 0;
+}
+
+#sanitizeEverythingWarningDescBox {
+ padding: 0 16px;
+ margin: 0;
+}
+
+
+/* Progressive disclosure button */
+#detailsExpanderWrapper {
+ padding: 0;
+ margin: 6px 0;
+}
+
+.expander-up,
+.expander-down {
+ min-width: 0;
+ margin: 0;
+}
+
+.expander-up > .button-box,
+.expander-down > .button-box {
+ padding: 0;
+}
+
+.expander-up {
+ list-style-image: url("chrome://global/skin/icons/collapse.png");
+}
+
+.expander-down {
+ list-style-image: url("chrome://global/skin/icons/expand.png");
+}
+
+
+/* Make the item list the same width as the warning box */
+#itemList {
+ margin-inline-start: 0;
+ margin-inline-end: 0;
+}
+
+
+/* Align the last dialog button with the end of the warning box */
+.prefWindow-dlgbuttons {
+ margin-inline-end: 0;
+}
+.dialog-button[dlgtype="cancel"] {
+ margin-inline-end: 0;
+}
diff --git a/browser/themes/windows/searchbar.css b/browser/themes/windows/searchbar.css
new file mode 100644
index 000000000..ef24f7c5e
--- /dev/null
+++ b/browser/themes/windows/searchbar.css
@@ -0,0 +1,328 @@
+/* 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/. */
+
+#PopupSearchAutoComplete {
+ /* JS code forces the panel to have the width of the searchbar rather than
+ * the width of the textfield. Alignment of the panel with the searchbar is
+ * obtained with negative margins here: margin-inline-start when the text
+ * field is in the same direction as the rest of the UI, margin-inline-end
+ * when the textfield's direction has been reversed.
+ * (eg. using ctrl+shift+X) */
+ margin-inline-start: -25px;
+ margin-inline-end: -18px;
+}
+
+.autocomplete-textbox-container {
+ -moz-box-align: stretch;
+}
+
+.textbox-input-box {
+ margin: 0;
+}
+
+/* ::::: searchbar-engine-button ::::: */
+
+.searchbar-engine-image {
+ height: 16px;
+ width: 16px;
+ list-style-image: url("chrome://mozapps/skin/places/defaultFavicon.png");
+ margin-inline-start: -1px;
+}
+
+/* ::::: search-go-button ::::: */
+
+.search-go-container {
+ -moz-box-align: center;
+}
+
+.search-go-button {
+ padding: 1px;
+ list-style-image: url("chrome://browser/skin/reload-stop-go.png");
+ -moz-image-region: rect(0, 42px, 14px, 28px);
+ width: 14px;
+}
+
+.search-go-button:-moz-locale-dir(rtl) {
+ transform: scaleX(-1);
+}
+
+.search-go-button:hover {
+ -moz-image-region: rect(14px, 42px, 28px, 28px);
+}
+
+.search-go-button:hover:active {
+ -moz-image-region: rect(28px, 42px, 42px, 28px);
+}
+
+
+.searchbar-search-button-container {
+ -moz-box-align: center;
+}
+
+.searchbar-search-button {
+ list-style-image: url("chrome://browser/skin/search-indicator.png");
+ -moz-image-region: rect(0, 20px, 20px, 0);
+ margin-top: 1px;
+ margin-bottom: 1px;
+ margin-inline-start: 4px;
+ width: 20px;
+}
+
+.searchbar-search-button[addengines="true"] {
+ list-style-image: url("chrome://browser/skin/search-indicator-badge-add.png");
+}
+
+.searchbar-search-button:hover {
+ -moz-image-region: rect(0, 40px, 20px, 20px);
+}
+
+.searchbar-search-button:hover:active {
+ -moz-image-region: rect(0, 60px, 20px, 40px);
+}
+
+@media (min-resolution: 1.1dppx) {
+ .searchbar-engine-image {
+ list-style-image: url("chrome://mozapps/skin/places/defaultFavicon@2x.png");
+ }
+
+ .searchbar-search-button {
+ list-style-image: url("chrome://browser/skin/search-indicator@2x.png");
+ -moz-image-region: rect(0, 40px, 40px, 0);
+ }
+
+ .searchbar-search-button[addengines="true"] {
+ list-style-image: url("chrome://browser/skin/search-indicator-badge-add@2x.png");
+ }
+
+ .searchbar-search-button:hover {
+ -moz-image-region: rect(0, 80px, 40px, 40px);
+ }
+
+ .searchbar-search-button:hover:active {
+ -moz-image-region: rect(0, 120px, 40px, 80px);
+ }
+
+ .search-go-button {
+ list-style-image: url("chrome://browser/skin/reload-stop-go@2x.png");
+ -moz-image-region: rect(0, 84px, 28px, 56px);
+ }
+
+ .search-go-button:hover {
+ -moz-image-region: rect(28px, 84px, 56px, 56px);
+ }
+
+ .search-go-button:hover:active {
+ -moz-image-region: rect(56px, 84px, 84px, 56px);
+ }
+}
+
+.search-panel-current-engine {
+ -moz-box-align: center;
+}
+
+/**
+ * The borders of the various elements are specified as follows.
+ *
+ * The current engine always has a bottom border.
+ * The search results never have a border.
+ *
+ * When the search results are not collapsed:
+ * - The elements underneath the search results all have a top border.
+ *
+ * When the search results are collapsed:
+ * - The elements underneath the search results all have a bottom border, except
+ * the lowest one: search-setting-button.
+ */
+
+.search-panel-current-engine {
+ border-top: none !important;
+ border-bottom: 1px solid var(--panel-separator-color) !important;
+}
+
+.search-panel-tree[collapsed=true] + .search-one-offs > .search-panel-header,
+.search-panel-tree[collapsed=true] + .search-one-offs > .search-panel-one-offs,
+.search-panel-tree[collapsed=true] + .search-one-offs > vbox > .addengine-item:first-of-type {
+ border-top: none !important;
+}
+
+.search-panel-tree[collapsed=true] + .search-one-offs > .searchbar-engine-one-off-item,
+.search-panel-tree[collapsed=true] + .search-one-offs > .search-panel-current-input,
+.search-panel-tree[collapsed=true] + .search-one-offs > .search-panel-one-offs,
+.search-panel-tree[collapsed=true] + .search-one-offs > vbox > .addengine-item:last-of-type {
+ border-bottom: 1px solid var(--panel-separator-color) !important;
+}
+
+.search-panel-header {
+ font-weight: normal;
+ background-color: var(--arrowpanel-dimmed);
+ border: none;
+ border-top: 1px solid var(--panel-separator-color);
+ margin: 0;
+ padding: 3px 6px;
+ color: GrayText;
+}
+
+.search-panel-header > label {
+ margin-top: 2px !important;
+ margin-bottom: 1px !important;
+}
+
+.search-panel-current-input > label {
+ margin: 2px 0 1px !important;
+}
+
+.search-panel-input-value {
+ color: -moz-fieldtext;
+}
+
+.search-panel-one-offs {
+ margin: 0 !important;
+ border-top: 1px solid var(--panel-separator-color);
+ line-height: 0;
+}
+
+.searchbar-engine-one-off-item {
+ -moz-appearance: none;
+ display: inline-block;
+ border: none;
+ min-width: 48px;
+ height: 32px;
+ margin: 0;
+ padding: 0;
+ background: linear-gradient(transparent 15%, var(--panel-separator-color) 15%, var(--panel-separator-color) 85%, transparent 85%);
+ background-size: 1px auto;
+ background-repeat: no-repeat;
+ background-position: right center;
+ color: GrayText;
+}
+
+.searchbar-engine-one-off-item:-moz-locale-dir(rtl) {
+ background-position: left center;
+}
+
+.searchbar-engine-one-off-item:not(.last-row) {
+ box-sizing: content-box;
+ border-bottom: 1px solid var(--panel-separator-color);
+}
+
+.search-setting-button-compact {
+ border-bottom: none !important;
+}
+
+.search-panel-one-offs:not([compact=true]) > .searchbar-engine-one-off-item.last-of-row,
+.search-panel-one-offs[compact=true] > .searchbar-engine-one-off-item.last-of-row:not(.dummy),
+.search-panel-one-offs[compact=true] > .searchbar-engine-one-off-item.dummy:not(.last-of-row),
+.search-panel-one-offs[compact=true] > .searchbar-engine-one-off-item.last-engine,
+.search-setting-button-compact {
+ background-image: none;
+}
+
+.searchbar-engine-one-off-item[selected] {
+ background-color: Highlight;
+ background-image: none;
+ color: HighlightText;
+}
+
+.searchbar-engine-one-off-item > .button-box {
+ border: none;
+ padding: 0;
+}
+
+.searchbar-engine-one-off-item > .button-box > .button-text {
+ display: none;
+}
+
+.searchbar-engine-one-off-item > .button-box > .button-icon {
+ width: 16px;
+ height: 16px;
+}
+
+.addengine-item {
+ -moz-appearance: none;
+ border: none;
+ height: 32px;
+ margin: 0;
+ padding: 0 10px;
+}
+
+.addengine-item > .button-box {
+ -moz-box-pack: start;
+}
+
+.addengine-item:first-of-type {
+ border-top: 1px solid var(--panel-separator-color);
+}
+
+.addengine-item[selected] {
+ background-color: Highlight;
+ color: HighlightText;
+}
+
+.addengine-icon {
+ width: 16px;
+}
+
+.addengine-badge {
+ width: 16px;
+ height: 16px;
+ margin: -7px -9px 7px 9px;
+ list-style-image: url("chrome://browser/skin/badge-add-engine.png");
+}
+
+.addengine-item > .button-box > .button-text {
+ -moz-box-flex: 1;
+ text-align: start;
+ padding-inline-start: 10px;
+}
+
+.addengine-item:not([image]) {
+ list-style-image: url("chrome://browser/skin/search-engine-placeholder.png");
+}
+
+@media (min-resolution: 1.1dppx) {
+ .addengine-badge {
+ list-style-image: url("chrome://browser/skin/badge-add-engine@2x.png");
+ }
+
+ .addengine-item:not([image]) {
+ list-style-image: url("chrome://browser/skin/search-engine-placeholder@2x.png");
+ }
+}
+
+.search-panel-tree > .autocomplete-treebody::-moz-tree-cell {
+ border-top: none !important;
+}
+
+.search-panel-tree > .autocomplete-treebody::-moz-tree-cell-text {
+ padding-inline-start: 4px;
+}
+
+.search-panel-tree > .autocomplete-treebody::-moz-tree-image {
+ padding-inline-start: 5px;
+ width: 14px;
+ height: 14px;
+}
+
+.search-panel-tree > .autocomplete-treebody::-moz-tree-image(fromhistory) {
+ list-style-image: url("chrome://browser/skin/search-history-icon.svg#search-history-icon");
+}
+
+.search-panel-tree > .autocomplete-treebody::-moz-tree-image(fromhistory, selected) {
+ list-style-image: url("chrome://browser/skin/search-history-icon.svg#search-history-icon-active");
+}
+
+.search-setting-button {
+ -moz-appearance: none;
+ min-height: 32px;
+}
+
+.search-setting-button[selected] {
+ background-color: var(--arrowpanel-dimmed-further);
+}
+
+.search-setting-button-compact > .button-box > .button-icon {
+ list-style-image: url("chrome://browser/skin/gear.svg");
+ filter: url(chrome://browser/skin/filters.svg#fill);
+ fill: currentColor;
+}
diff --git a/browser/themes/windows/setDesktopBackground.css b/browser/themes/windows/setDesktopBackground.css
new file mode 100644
index 000000000..585284c7b
--- /dev/null
+++ b/browser/themes/windows/setDesktopBackground.css
@@ -0,0 +1,18 @@
+/* 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/. */
+
+@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul");
+@namespace html url("http://www.w3.org/1999/xhtml");
+
+html|canvas#screen {
+ margin: 12px 11px 32px;
+}
+
+#monitor {
+ list-style-image: url("chrome://browser/skin/monitor.png");
+}
+
+#monitor[aspectratio="16:10"] {
+ list-style-image: url("chrome://browser/skin/monitor_16-10.png");
+}
diff --git a/browser/themes/windows/slowStartup-16.png b/browser/themes/windows/slowStartup-16.png
new file mode 100644
index 000000000..6d09fa99d
--- /dev/null
+++ b/browser/themes/windows/slowStartup-16.png
Binary files differ
diff --git a/browser/themes/windows/social/services-16.png b/browser/themes/windows/social/services-16.png
new file mode 100644
index 000000000..a5f40b21d
--- /dev/null
+++ b/browser/themes/windows/social/services-16.png
Binary files differ
diff --git a/browser/themes/windows/social/services-64.png b/browser/themes/windows/social/services-64.png
new file mode 100644
index 000000000..c42c27826
--- /dev/null
+++ b/browser/themes/windows/social/services-64.png
Binary files differ
diff --git a/browser/themes/windows/sync-128.png b/browser/themes/windows/sync-128.png
new file mode 100644
index 000000000..0647fb080
--- /dev/null
+++ b/browser/themes/windows/sync-128.png
Binary files differ
diff --git a/browser/themes/windows/sync-16.png b/browser/themes/windows/sync-16.png
new file mode 100644
index 000000000..63cd02a8b
--- /dev/null
+++ b/browser/themes/windows/sync-16.png
Binary files differ
diff --git a/browser/themes/windows/sync-32.png b/browser/themes/windows/sync-32.png
new file mode 100644
index 000000000..0e9c0dfd3
--- /dev/null
+++ b/browser/themes/windows/sync-32.png
Binary files differ
diff --git a/browser/themes/windows/sync-bg.png b/browser/themes/windows/sync-bg.png
new file mode 100644
index 000000000..893a27d76
--- /dev/null
+++ b/browser/themes/windows/sync-bg.png
Binary files differ
diff --git a/browser/themes/windows/sync-horizontalbar-XPVista7.png b/browser/themes/windows/sync-horizontalbar-XPVista7.png
new file mode 100644
index 000000000..2c97ce6db
--- /dev/null
+++ b/browser/themes/windows/sync-horizontalbar-XPVista7.png
Binary files differ
diff --git a/browser/themes/windows/sync-horizontalbar-XPVista7@2x.png b/browser/themes/windows/sync-horizontalbar-XPVista7@2x.png
new file mode 100644
index 000000000..ee117ab73
--- /dev/null
+++ b/browser/themes/windows/sync-horizontalbar-XPVista7@2x.png
Binary files differ
diff --git a/browser/themes/windows/sync-horizontalbar.png b/browser/themes/windows/sync-horizontalbar.png
new file mode 100644
index 000000000..cabbb7bce
--- /dev/null
+++ b/browser/themes/windows/sync-horizontalbar.png
Binary files differ
diff --git a/browser/themes/windows/sync-horizontalbar@2x.png b/browser/themes/windows/sync-horizontalbar@2x.png
new file mode 100644
index 000000000..fadb57586
--- /dev/null
+++ b/browser/themes/windows/sync-horizontalbar@2x.png
Binary files differ
diff --git a/browser/themes/windows/sync-notification-24.png b/browser/themes/windows/sync-notification-24.png
new file mode 100644
index 000000000..fa2476c7b
--- /dev/null
+++ b/browser/themes/windows/sync-notification-24.png
Binary files differ
diff --git a/browser/themes/windows/syncCommon.css b/browser/themes/windows/syncCommon.css
new file mode 100644
index 000000000..862cc404d
--- /dev/null
+++ b/browser/themes/windows/syncCommon.css
@@ -0,0 +1,55 @@
+/* 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/. */
+
+/* The following are used by both sync/setup.xul and sync/genericChange.xul */
+.status {
+ color: -moz-dialogtext;
+}
+
+.statusIcon {
+ margin-inline-start: 4px;
+ max-height: 16px;
+ max-width: 16px;
+}
+
+.statusIcon[status="active"] {
+ list-style-image: url("chrome://global/skin/icons/loading.png");
+}
+
+@media (min-resolution: 1.1dppx) {
+ .statusIcon[status="active"] {
+ list-style-image: url("chrome://global/skin/icons/loading@2x.png");
+ }
+}
+
+.statusIcon[status="error"] {
+ list-style-image: url("chrome://global/skin/icons/error-16.png");
+}
+
+.statusIcon[status="success"] {
+ list-style-image: url("chrome://global/skin/icons/information-16.png");
+}
+
+/* .data is only used by sync/genericChange.xul, but it seems unnecessary to have
+ a separate stylesheet for it. */
+.data {
+ font-size: 90%;
+ font-weight: bold;
+}
+
+dialog#change-dialog {
+ width: 40em;
+}
+
+image#syncIcon {
+ list-style-image: url("chrome://browser/skin/sync-32.png");
+}
+
+#introText {
+ margin-top: 2px;
+}
+
+#feedback {
+ height: 2em;
+}
diff --git a/browser/themes/windows/syncProgress-horizontalbar-XPVista7.png b/browser/themes/windows/syncProgress-horizontalbar-XPVista7.png
new file mode 100644
index 000000000..48cd11055
--- /dev/null
+++ b/browser/themes/windows/syncProgress-horizontalbar-XPVista7.png
Binary files differ
diff --git a/browser/themes/windows/syncProgress-horizontalbar-XPVista7@2x.png b/browser/themes/windows/syncProgress-horizontalbar-XPVista7@2x.png
new file mode 100644
index 000000000..741dd2ed4
--- /dev/null
+++ b/browser/themes/windows/syncProgress-horizontalbar-XPVista7@2x.png
Binary files differ
diff --git a/browser/themes/windows/syncProgress-horizontalbar.png b/browser/themes/windows/syncProgress-horizontalbar.png
new file mode 100644
index 000000000..79d972389
--- /dev/null
+++ b/browser/themes/windows/syncProgress-horizontalbar.png
Binary files differ
diff --git a/browser/themes/windows/syncProgress-horizontalbar@2x.png b/browser/themes/windows/syncProgress-horizontalbar@2x.png
new file mode 100644
index 000000000..e1de4763d
--- /dev/null
+++ b/browser/themes/windows/syncProgress-horizontalbar@2x.png
Binary files differ
diff --git a/browser/themes/windows/syncProgress-menuPanel.png b/browser/themes/windows/syncProgress-menuPanel.png
new file mode 100644
index 000000000..6fd6f9c16
--- /dev/null
+++ b/browser/themes/windows/syncProgress-menuPanel.png
Binary files differ
diff --git a/browser/themes/windows/syncProgress-menuPanel@2x.png b/browser/themes/windows/syncProgress-menuPanel@2x.png
new file mode 100644
index 000000000..04b2cae00
--- /dev/null
+++ b/browser/themes/windows/syncProgress-menuPanel@2x.png
Binary files differ
diff --git a/browser/themes/windows/syncProgress-toolbar-XPVista7.png b/browser/themes/windows/syncProgress-toolbar-XPVista7.png
new file mode 100644
index 000000000..49e224f0d
--- /dev/null
+++ b/browser/themes/windows/syncProgress-toolbar-XPVista7.png
Binary files differ
diff --git a/browser/themes/windows/syncProgress-toolbar-XPVista7@2x.png b/browser/themes/windows/syncProgress-toolbar-XPVista7@2x.png
new file mode 100644
index 000000000..fd2038725
--- /dev/null
+++ b/browser/themes/windows/syncProgress-toolbar-XPVista7@2x.png
Binary files differ
diff --git a/browser/themes/windows/syncProgress-toolbar-inverted.png b/browser/themes/windows/syncProgress-toolbar-inverted.png
new file mode 100644
index 000000000..4ede4387d
--- /dev/null
+++ b/browser/themes/windows/syncProgress-toolbar-inverted.png
Binary files differ
diff --git a/browser/themes/windows/syncProgress-toolbar-inverted@2x.png b/browser/themes/windows/syncProgress-toolbar-inverted@2x.png
new file mode 100644
index 000000000..eee4a5dd0
--- /dev/null
+++ b/browser/themes/windows/syncProgress-toolbar-inverted@2x.png
Binary files differ
diff --git a/browser/themes/windows/syncProgress-toolbar.png b/browser/themes/windows/syncProgress-toolbar.png
new file mode 100644
index 000000000..05078a9c8
--- /dev/null
+++ b/browser/themes/windows/syncProgress-toolbar.png
Binary files differ
diff --git a/browser/themes/windows/syncProgress-toolbar@2x.png b/browser/themes/windows/syncProgress-toolbar@2x.png
new file mode 100644
index 000000000..4493d7c74
--- /dev/null
+++ b/browser/themes/windows/syncProgress-toolbar@2x.png
Binary files differ
diff --git a/browser/themes/windows/syncQuota.css b/browser/themes/windows/syncQuota.css
new file mode 100644
index 000000000..1577de8a3
--- /dev/null
+++ b/browser/themes/windows/syncQuota.css
@@ -0,0 +1,26 @@
+/* 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/. */
+
+#quotaDialog {
+ width: 33em;
+ height: 25em;
+}
+
+treechildren::-moz-tree-checkbox {
+ list-style-image: none;
+}
+treechildren::-moz-tree-checkbox(checked) {
+ list-style-image: url("chrome://global/skin/checkbox/cbox-check.gif");
+}
+treechildren::-moz-tree-checkbox(disabled) {
+ list-style-image: url("chrome://global/skin/checkbox/cbox-check-dis.gif");
+}
+
+#treeCaption {
+ height: 4em;
+}
+
+.captionWarning {
+ font-weight: bold;
+}
diff --git a/browser/themes/windows/syncSetup.css b/browser/themes/windows/syncSetup.css
new file mode 100644
index 000000000..67335d87d
--- /dev/null
+++ b/browser/themes/windows/syncSetup.css
@@ -0,0 +1,145 @@
+/* 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/. */
+
+wizard {
+ -moz-appearance: none;
+ width: 55em;
+ height: 45em;
+ padding: 0;
+ background-color: Window;
+}
+
+.wizard-page-box {
+ -moz-appearance: none;
+ padding-left: 0;
+ padding-right: 0;
+ margin: 0;
+}
+
+wizardpage {
+ -moz-box-pack: center;
+ -moz-box-align: center;
+ margin: 0;
+ padding: 0 6em;
+ background-color: Window;
+}
+
+.wizard-header {
+ -moz-appearance: none;
+ border: none;
+ padding: 2em 0 1em 0;
+ text-align: center;
+}
+.wizard-header-label {
+ font-size: 24pt;
+ font-weight: normal;
+}
+
+.wizard-buttons {
+ background-color: rgba(0,0,0,0.1);
+ padding: 1em;
+}
+
+.wizard-buttons-separator {
+ visibility: collapse;
+}
+
+.wizard-header-icon {
+ visibility: collapse;
+}
+
+.accountChoiceButton {
+ font: menu;
+}
+
+.confirm {
+ border: 1px solid black;
+ padding: 1em;
+ border-radius: 5px;
+}
+
+/* Override the text-link style from global.css */
+description > .text-link,
+description > .text-link:focus {
+ margin: 0px;
+ padding: 0px;
+ border: 0px;
+}
+
+
+.success,
+.error {
+ padding: 2px;
+ border-radius: 2px;
+}
+
+.error {
+ background-color: #FF0000 !important;
+ color: #FFFFFF !important;
+}
+
+.success {
+ background-color: #00FF00 !important;
+}
+
+.warning {
+ font-weight: bold;
+ font-size: 100%;
+ color: red;
+}
+
+.mainDesc {
+ font-weight: bold;
+ font-size: 100%;
+}
+
+.normal {
+ font-size: 100%;
+}
+
+.inputColumn {
+ margin-inline-end: 2px
+}
+
+.pin {
+ font-size: 18pt;
+ width: 4em;
+ text-align: center;
+}
+
+#passphraseHelpSpacer {
+ width: 0.5em;
+}
+
+#pairDeviceThrobber,
+#login-throbber {
+ -moz-box-align: center;
+}
+
+#pairDeviceThrobber > image,
+#login-throbber > image {
+ width: 16px;
+ list-style-image: url("chrome://global/skin/icons/loading.png");
+}
+
+@media (min-resolution: 1.1dppx) {
+ #pairDeviceThrobber > image,
+ #login-throbber > image {
+ list-style-image: url("chrome://global/skin/icons/loading@2x.png");
+ }
+}
+
+#captchaFeedback {
+ visibility: hidden;
+}
+
+#successPageIcon {
+ /* TODO replace this with a 128px version (bug 591122) */
+ list-style-image: url("chrome://browser/skin/sync-32.png");
+}
+
+#tosDesc {
+ margin-left: -7px;
+ margin-bottom: 3px;
+} \ No newline at end of file
diff --git a/browser/themes/windows/syncedtabs/sidebar.css b/browser/themes/windows/syncedtabs/sidebar.css
new file mode 100644
index 000000000..6473206bc
--- /dev/null
+++ b/browser/themes/windows/syncedtabs/sidebar.css
@@ -0,0 +1,132 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+%include ../../shared/syncedtabs/sidebar.inc.css
+
+/* These styles are intended to mimic XUL trees and the XUL search box. */
+
+html {
+ background-color: #EEF3FA;
+}
+
+.item {
+ padding-inline-end: 0;
+}
+
+.item-title {
+ margin: 1px 0 0;
+}
+
+.item-title {
+ margin-inline-end: 6px;
+}
+
+.search-box {
+ -moz-appearance: textfield;
+ cursor: text;
+ margin: 2px 4px;
+ padding: 2px 2px 3px;
+ padding-inline-start: 4px;
+ color: -moz-FieldText;
+}
+
+.textbox-search-icon {
+ width: 16px;
+ height: 16px;
+ background-image: url(chrome://global/skin/icons/Search-glass.png);
+ background-repeat: no-repeat;
+ display: block;
+}
+
+.textbox-search-icon:-moz-locale-dir(rtl) {
+ transform: scaleX(-1);
+}
+
+.textbox-search-icon[searchbutton]:not([disabled]) {
+ cursor: pointer;
+}
+
+.textbox-search-clear {
+ width: 16px;
+ height: 16px;
+ background-image: url(chrome://global/skin/icons/Search-close.png);
+ background-repeat: no-repeat;
+}
+
+.textbox-search-clear:not([disabled]) {
+ cursor: default;
+}
+
+.textbox-search-icon:not([disabled]) {
+ cursor: text;
+}
+
+.textbox-search-clear:not([disabled]):hover ,
+.textbox-search-icon:not([disabled]):hover {
+ background-position: -16px 0;
+}
+
+.textbox-search-clear:not([disabled]):hover:active ,
+.textbox-search-icon:not([disabled]):hover:active {
+ background-position: -32px 0;
+}
+
+.client .item.tab > .item-title-container {
+ padding-inline-start: 26px;
+}
+.item.tab > .item-title-container {
+ padding-inline-start: 14px;
+}
+
+.item-icon-container {
+ min-width: 16px;
+ max-width: 16px;
+ min-height: 16px;
+ max-height: 16px;
+ margin-right: 5px;
+ background-size: 16px 16px;
+ background-repeat: no-repeat;
+ background-position: center;
+}
+
+.item-twisty-container {
+ background-size: contain;
+ background-repeat: no-repeat;
+ background-position: center;
+ padding-top: 5px;
+ min-width: 9px; /* The image's width is 9 pixels */
+ height: 9px;
+}
+
+.item.client .item-twisty-container {
+ background-image: url("chrome://global/skin/tree/twisty.svg#open");
+}
+
+.item.client.closed .item-twisty-container {
+ background-image: url("chrome://global/skin/tree/twisty.svg#clsd");
+}
+
+.item.client .item-twisty-container:hover {
+ background-image: url("chrome://global/skin/tree/twisty.svg#open-hover");
+}
+
+.item.client.closed .item-twisty-container:hover {
+ background-image: url("chrome://global/skin/tree/twisty.svg#clsd-hover");
+}
+
+.item.client .item-twisty-container:dir(rtl) {
+ background-image: url("chrome://global/skin/tree/twisty.svg#open-rtl");
+}
+
+.item.client.closed .item-twisty-container:dir(rtl) {
+ background-image: url("chrome://global/skin/tree/twisty.svg#clsd-rtl");
+}
+
+.item.client .item-twisty-container:hover:dir(rtl) {
+ background-image: url("chrome://global/skin/tree/twisty.svg#open-hover-rtl");
+}
+
+.item.client.closed .item-twisty-container:hover:dir(rtl) {
+ background-image: url("chrome://global/skin/tree/twisty.svg#clsd-hover-rtl");
+}
diff --git a/browser/themes/windows/tabbrowser/newtab-XPVista7.svg b/browser/themes/windows/tabbrowser/newtab-XPVista7.svg
new file mode 100644
index 000000000..3f431c9db
--- /dev/null
+++ b/browser/themes/windows/tabbrowser/newtab-XPVista7.svg
@@ -0,0 +1,16 @@
+<!-- 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/. -->
+<svg width="16" height="18" xmlns="http://www.w3.org/2000/svg">
+ <defs>
+ <linearGradient id="gradient" x1="0%" x2="0%" y1="0%" y2="100%">
+ <stop offset="0%" stop-color="#1c2835"/>
+ <stop offset="60%" stop-color="#606e7b"/>
+ <stop offset="100%" stop-color="#465765"/>
+ </linearGradient>
+ </defs>
+ <g fill="url(#gradient)">
+ <rect width="10" height="2" x="3" y="8"/>
+ <rect width="2" height="10" x="7" y="4"/>
+ </g>
+</svg>
diff --git a/browser/themes/windows/tabbrowser/newtab-inverted-XPVista7.svg b/browser/themes/windows/tabbrowser/newtab-inverted-XPVista7.svg
new file mode 100644
index 000000000..10ffbc745
--- /dev/null
+++ b/browser/themes/windows/tabbrowser/newtab-inverted-XPVista7.svg
@@ -0,0 +1,13 @@
+<!-- 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/. -->
+<svg width="16" height="18" xmlns="http://www.w3.org/2000/svg">
+ <g stroke="#666" stroke-width="2" fill="none">
+ <rect x="7" y="4" width="2" height="10" rx="0.25" ry="0.25"/>
+ <rect x="3" y="8" width="10" height="2" rx="0.25" ry="0.25"/>
+ </g>
+ <g fill="#fff">
+ <rect width="2" height="10" x="7" y="4"/>
+ <rect width="10" height="2" x="3" y="8"/>
+ </g>
+</svg>
diff --git a/browser/themes/windows/tabbrowser/newtab-inverted.svg b/browser/themes/windows/tabbrowser/newtab-inverted.svg
new file mode 100644
index 000000000..2728cda5c
--- /dev/null
+++ b/browser/themes/windows/tabbrowser/newtab-inverted.svg
@@ -0,0 +1,13 @@
+<!-- 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/. -->
+<svg width="16" height="18" xmlns="http://www.w3.org/2000/svg">
+ <g stroke="#666" stroke-width="2" fill="none">
+ <rect x="7" y="3" width="2" height="12" rx="0.25" ry="0.25"/>
+ <rect x="2" y="8" width="12" height="2" rx="0.25" ry="0.25"/>
+ </g>
+ <g fill="#fff">
+ <rect x="7" y="3" width="2" height="12"/>
+ <rect x="2" y="8" width="12" height="2"/>
+ </g>
+</svg>
diff --git a/browser/themes/windows/tabbrowser/newtab.svg b/browser/themes/windows/tabbrowser/newtab.svg
new file mode 100644
index 000000000..40548da4a
--- /dev/null
+++ b/browser/themes/windows/tabbrowser/newtab.svg
@@ -0,0 +1,7 @@
+<!-- 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/. -->
+<svg width="16" height="18" xmlns="http://www.w3.org/2000/svg" fill="#4c4c4c">
+ <rect x="7" y="3" width="2" height="12"/>
+ <rect x="2" y="8" width="12" height="2"/>
+</svg>
diff --git a/browser/themes/windows/tabbrowser/tab-active-middle.png b/browser/themes/windows/tabbrowser/tab-active-middle.png
new file mode 100644
index 000000000..b7e6d6f77
--- /dev/null
+++ b/browser/themes/windows/tabbrowser/tab-active-middle.png
Binary files differ
diff --git a/browser/themes/windows/tabbrowser/tab-active-middle@2x.png b/browser/themes/windows/tabbrowser/tab-active-middle@2x.png
new file mode 100644
index 000000000..1e92acbda
--- /dev/null
+++ b/browser/themes/windows/tabbrowser/tab-active-middle@2x.png
Binary files differ
diff --git a/browser/themes/windows/tabbrowser/tab-arrow-left-XPVista7.svg b/browser/themes/windows/tabbrowser/tab-arrow-left-XPVista7.svg
new file mode 100644
index 000000000..41bb5ab13
--- /dev/null
+++ b/browser/themes/windows/tabbrowser/tab-arrow-left-XPVista7.svg
@@ -0,0 +1,13 @@
+<!-- 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/. -->
+<svg width="15" height="17" xmlns="http://www.w3.org/2000/svg">
+ <defs>
+ <linearGradient id="gradient" x1="0%" x2="0%" y1="0%" y2="100%">
+ <stop offset="0%" stop-color="#1c2835"/>
+ <stop offset="60%" stop-color="#606e7b"/>
+ <stop offset="100%" stop-color="#465765"/>
+ </linearGradient>
+ </defs>
+ <path d="M11 4L9.5 2.5l-5.875 6 5.875 6L11 13 6.625 8.5z" fill="url(#gradient)"/>
+</svg>
diff --git a/browser/themes/windows/tabbrowser/tab-arrow-left-inverted.svg b/browser/themes/windows/tabbrowser/tab-arrow-left-inverted.svg
new file mode 100644
index 000000000..13d3beb95
--- /dev/null
+++ b/browser/themes/windows/tabbrowser/tab-arrow-left-inverted.svg
@@ -0,0 +1,7 @@
+<!-- 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/. -->
+<svg width="15" height="17" xmlns="http://www.w3.org/2000/svg">
+ <path fill="#666" stroke-width="1.5" stroke="#666" d="M11 4L9.5 2.5l-5.875 6 5.875 6L11 13 6.625 8.5z"/>
+ <path fill="#fff" d="M11 4L9.5 2.5l-5.875 6 5.875 6L11 13 6.625 8.5z"/>
+</svg>
diff --git a/browser/themes/windows/tabbrowser/tab-arrow-left.svg b/browser/themes/windows/tabbrowser/tab-arrow-left.svg
new file mode 100644
index 000000000..9bd59ddd3
--- /dev/null
+++ b/browser/themes/windows/tabbrowser/tab-arrow-left.svg
@@ -0,0 +1,6 @@
+<!-- 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/. -->
+<svg width="15" height="17" xmlns="http://www.w3.org/2000/svg">
+ <path d="M11 4L9.5 2.5l-5.875 6 5.875 6L11 13 6.625 8.5z" fill="#4c4c4c"/>
+</svg>
diff --git a/browser/themes/windows/tabbrowser/tab-background-end-preWin10.png b/browser/themes/windows/tabbrowser/tab-background-end-preWin10.png
new file mode 100644
index 000000000..fb353b17e
--- /dev/null
+++ b/browser/themes/windows/tabbrowser/tab-background-end-preWin10.png
Binary files differ
diff --git a/browser/themes/windows/tabbrowser/tab-background-end-preWin10@2x.png b/browser/themes/windows/tabbrowser/tab-background-end-preWin10@2x.png
new file mode 100644
index 000000000..eefb6ac47
--- /dev/null
+++ b/browser/themes/windows/tabbrowser/tab-background-end-preWin10@2x.png
Binary files differ
diff --git a/browser/themes/windows/tabbrowser/tab-background-end.png b/browser/themes/windows/tabbrowser/tab-background-end.png
new file mode 100644
index 000000000..d68ea6da6
--- /dev/null
+++ b/browser/themes/windows/tabbrowser/tab-background-end.png
Binary files differ
diff --git a/browser/themes/windows/tabbrowser/tab-background-end@2x.png b/browser/themes/windows/tabbrowser/tab-background-end@2x.png
new file mode 100644
index 000000000..8ed84ab37
--- /dev/null
+++ b/browser/themes/windows/tabbrowser/tab-background-end@2x.png
Binary files differ
diff --git a/browser/themes/windows/tabbrowser/tab-background-middle-preWin10.png b/browser/themes/windows/tabbrowser/tab-background-middle-preWin10.png
new file mode 100644
index 000000000..51e066c2e
--- /dev/null
+++ b/browser/themes/windows/tabbrowser/tab-background-middle-preWin10.png
Binary files differ
diff --git a/browser/themes/windows/tabbrowser/tab-background-middle-preWin10@2x.png b/browser/themes/windows/tabbrowser/tab-background-middle-preWin10@2x.png
new file mode 100644
index 000000000..b26cb95de
--- /dev/null
+++ b/browser/themes/windows/tabbrowser/tab-background-middle-preWin10@2x.png
Binary files differ
diff --git a/browser/themes/windows/tabbrowser/tab-background-middle.png b/browser/themes/windows/tabbrowser/tab-background-middle.png
new file mode 100644
index 000000000..faaf7e38e
--- /dev/null
+++ b/browser/themes/windows/tabbrowser/tab-background-middle.png
Binary files differ
diff --git a/browser/themes/windows/tabbrowser/tab-background-middle@2x.png b/browser/themes/windows/tabbrowser/tab-background-middle@2x.png
new file mode 100644
index 000000000..c9d245f4f
--- /dev/null
+++ b/browser/themes/windows/tabbrowser/tab-background-middle@2x.png
Binary files differ
diff --git a/browser/themes/windows/tabbrowser/tab-background-start-preWin10.png b/browser/themes/windows/tabbrowser/tab-background-start-preWin10.png
new file mode 100644
index 000000000..cf0dc852a
--- /dev/null
+++ b/browser/themes/windows/tabbrowser/tab-background-start-preWin10.png
Binary files differ
diff --git a/browser/themes/windows/tabbrowser/tab-background-start-preWin10@2x.png b/browser/themes/windows/tabbrowser/tab-background-start-preWin10@2x.png
new file mode 100644
index 000000000..bbfc77dd1
--- /dev/null
+++ b/browser/themes/windows/tabbrowser/tab-background-start-preWin10@2x.png
Binary files differ
diff --git a/browser/themes/windows/tabbrowser/tab-background-start.png b/browser/themes/windows/tabbrowser/tab-background-start.png
new file mode 100644
index 000000000..d1f0b5561
--- /dev/null
+++ b/browser/themes/windows/tabbrowser/tab-background-start.png
Binary files differ
diff --git a/browser/themes/windows/tabbrowser/tab-background-start@2x.png b/browser/themes/windows/tabbrowser/tab-background-start@2x.png
new file mode 100644
index 000000000..e860275a6
--- /dev/null
+++ b/browser/themes/windows/tabbrowser/tab-background-start@2x.png
Binary files differ
diff --git a/browser/themes/windows/tabbrowser/tab-stroke-end.png b/browser/themes/windows/tabbrowser/tab-stroke-end.png
new file mode 100644
index 000000000..2aa5711f8
--- /dev/null
+++ b/browser/themes/windows/tabbrowser/tab-stroke-end.png
Binary files differ
diff --git a/browser/themes/windows/tabbrowser/tab-stroke-end@2x.png b/browser/themes/windows/tabbrowser/tab-stroke-end@2x.png
new file mode 100644
index 000000000..a87002a83
--- /dev/null
+++ b/browser/themes/windows/tabbrowser/tab-stroke-end@2x.png
Binary files differ
diff --git a/browser/themes/windows/tabbrowser/tab-stroke-start.png b/browser/themes/windows/tabbrowser/tab-stroke-start.png
new file mode 100644
index 000000000..4e4e41f63
--- /dev/null
+++ b/browser/themes/windows/tabbrowser/tab-stroke-start.png
Binary files differ
diff --git a/browser/themes/windows/tabbrowser/tab-stroke-start@2x.png b/browser/themes/windows/tabbrowser/tab-stroke-start@2x.png
new file mode 100644
index 000000000..13bd6add1
--- /dev/null
+++ b/browser/themes/windows/tabbrowser/tab-stroke-start@2x.png
Binary files differ
diff --git a/browser/themes/windows/tabbrowser/tabDragIndicator.png b/browser/themes/windows/tabbrowser/tabDragIndicator.png
new file mode 100644
index 000000000..63c4eccad
--- /dev/null
+++ b/browser/themes/windows/tabbrowser/tabDragIndicator.png
Binary files differ
diff --git a/browser/themes/windows/toolbarbutton-dropdown-arrow-XPVista7.png b/browser/themes/windows/toolbarbutton-dropdown-arrow-XPVista7.png
new file mode 100644
index 000000000..5f892f532
--- /dev/null
+++ b/browser/themes/windows/toolbarbutton-dropdown-arrow-XPVista7.png
Binary files differ
diff --git a/browser/themes/windows/toolbarbutton-dropdown-arrow-inverted.png b/browser/themes/windows/toolbarbutton-dropdown-arrow-inverted.png
new file mode 100644
index 000000000..af4c7af0b
--- /dev/null
+++ b/browser/themes/windows/toolbarbutton-dropdown-arrow-inverted.png
Binary files differ
diff --git a/browser/themes/windows/urlbar-history-dropmarker-XPVista7.png b/browser/themes/windows/urlbar-history-dropmarker-XPVista7.png
new file mode 100644
index 000000000..b03338822
--- /dev/null
+++ b/browser/themes/windows/urlbar-history-dropmarker-XPVista7.png
Binary files differ
diff --git a/browser/themes/windows/urlbar-history-dropmarker-XPVista7@2x.png b/browser/themes/windows/urlbar-history-dropmarker-XPVista7@2x.png
new file mode 100644
index 000000000..bff2997f8
--- /dev/null
+++ b/browser/themes/windows/urlbar-history-dropmarker-XPVista7@2x.png
Binary files differ
diff --git a/browser/themes/windows/urlbar-history-dropmarker.png b/browser/themes/windows/urlbar-history-dropmarker.png
new file mode 100644
index 000000000..01432f7e9
--- /dev/null
+++ b/browser/themes/windows/urlbar-history-dropmarker.png
Binary files differ
diff --git a/browser/themes/windows/urlbar-history-dropmarker@2x.png b/browser/themes/windows/urlbar-history-dropmarker@2x.png
new file mode 100644
index 000000000..6e710139a
--- /dev/null
+++ b/browser/themes/windows/urlbar-history-dropmarker@2x.png
Binary files differ
diff --git a/browser/themes/windows/urlbar-popup-blocked.png b/browser/themes/windows/urlbar-popup-blocked.png
new file mode 100644
index 000000000..56dbd2d0d
--- /dev/null
+++ b/browser/themes/windows/urlbar-popup-blocked.png
Binary files differ
diff --git a/browser/themes/windows/webRTC-indicator.css b/browser/themes/windows/webRTC-indicator.css
new file mode 100644
index 000000000..c22f942ec
--- /dev/null
+++ b/browser/themes/windows/webRTC-indicator.css
@@ -0,0 +1,116 @@
+/* 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/. */
+
+window {
+ border: 1px solid #ff9500;
+}
+
+#audioVideoButton,
+#screenShareButton,
+#firefoxButton {
+ height: 29px;
+ margin: 0;
+ -moz-appearance: none;
+ border-style: none;
+}
+
+#firefoxButton {
+ background-image: url("chrome://branding/content/icon48.png");
+ background-repeat: no-repeat;
+ background-size: 22px;
+ background-position: center center;
+ min-width: 29px;
+ background-color: white;
+}
+
+#firefoxButton:hover {
+ background-color: #f2f2f2;
+}
+
+#screenShareButton {
+ background-image: url("webRTC-screen-white-16.png");
+ background-position: center center;
+ background-repeat: no-repeat;
+ background-size: 16px;
+ min-width: 27px;
+ display: none;
+}
+
+window[sharingscreen] > #screenShareButton {
+ display: -moz-box;
+}
+
+#audioVideoButton {
+ display: none;
+ background-repeat: no-repeat;
+}
+
+/* When screen sharing, need to pull in the separator: */
+window[sharingscreen] > #audioVideoButton {
+ margin-right: -1px;
+}
+
+/* Single icon button: */
+window[sharingvideo] > #audioVideoButton,
+window[sharingaudio] > #audioVideoButton {
+ display: -moz-box;
+ background-position: center center;
+ background-size: 16px;
+ min-width: 26px;
+}
+
+window[sharingvideo] > #audioVideoButton {
+ background-image: url("webRTC-camera-white-16.png");
+}
+
+window[sharingaudio] > #audioVideoButton {
+ background-image: url("webRTC-microphone-white-16.png");
+}
+
+/* Multi-icon button: */
+window[sharingaudio][sharingvideo] > #audioVideoButton {
+ background-image: url("webRTC-camera-white-16.png"),
+ url("webRTC-microphone-white-16.png");
+ background-position: 6px center, 26px center;
+ background-size: 16px, 16px;
+ min-width: 46px;
+}
+
+/* Hover styles */
+#audioVideoButton,
+#screenShareButton {
+ background-color: #ffaa33;
+}
+
+#audioVideoButton:hover,
+#screenShareButton:hover {
+ background-color: #ff9500;
+}
+
+/* Don't show the dropmarker for the type="menu" case */
+#audioVideoButton > .box-inherit > .button-menu-dropmarker,
+#screenShareButton > .box-inherit > .button-menu-dropmarker {
+ display: none;
+}
+
+/* Separator in case of screen sharing + video/audio sharing */
+#shareSeparator {
+ width: 1px;
+ margin: 4px -1px 4px 0;
+ background-color: #FFCA80;
+ /* Separator needs to show above either button when they're hovered: */
+ position: relative;
+ z-index: 1;
+ display: none;
+}
+
+window[sharingscreen][sharingvideo] > #shareSeparator,
+window[sharingscreen][sharingaudio] > #shareSeparator {
+ display: -moz-box;
+}
+
+:-moz-any(#audioVideoButton, #screenShareButton,
+ #firefoxButton):-moz-focusring > .button-box {
+ border: none;
+}
diff --git a/browser/themes/windows/windowsShared.inc b/browser/themes/windows/windowsShared.inc
new file mode 100644
index 000000000..0cb2ab163
--- /dev/null
+++ b/browser/themes/windows/windowsShared.inc
@@ -0,0 +1,13 @@
+/* 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 toolbarHighlight rgba(255,255,255,.4)
+%define fgTabTexture linear-gradient(transparent 2px, @toolbarHighlight@ 2px, @toolbarHighlight@)
+%define fgTabBackgroundColor -moz-dialog
+%define fgTabTextureLWT @fgTabTexture@
+
+% Aero-only defines
+%define customToolbarColor hsl(210,75%,92%)