make identity box work correctly
[themes.git] / LCARStrek / browser / browser.css
index 8689da24f72f706e91e0bf0e859cf01de93af721..ba7c7eab712daae42363f737c0c5764726c9834c 100644 (file)
@@ -43,7 +43,6 @@ menubar {
 
   --panel-separator-color: #A09090;
 
-  /*--urlbar-separator-color: rgba(0,0,0,.2);*/
   --urlbar-separator-color: #9C9CFF;
 }
 
@@ -513,7 +512,7 @@ menuitem.bookmark-item {
           #preferences-button, #privatebrowsing-button, #save-page-button, #add-ons-button,
           #history-panelmenu, #nav-bar-overflow-button, #PanelUI-menu-button, #characterencoding-button,
           #email-link-button, #sidebar-button, #zoom-out-button, #zoom-reset-button, #zoom-in-button, #cut-button,
-          #copy-button, #paste-button, #e10s-button, #panic-button, #web-apps-button, #webide-button, #loop-button,
+          #copy-button, #paste-button, #e10s-button, #panic-button, #webide-button, #loop-button,
           #pocket-button),
 #bookmarks-menu-button > .toolbarbutton-menubutton-dropmarker > .dropmarker-icon {
   list-style-image: url("chrome://browser/skin/ToolbarFx.png");
@@ -911,14 +910,6 @@ toolbar[brighttext] #pocket-button,
   transform: scaleX(-1);
 }
 
-#web-apps-button[cui-areatype="toolbar"] {
-  -moz-image-region: rect(0, 720px, 18px, 702px);
-}
-
-#web-apps-button[cui-areatype="toolbar"]:hover {
-  -moz-image-region: rect(18px, 720px, 36px, 702px);
-}
-
 #loop-button,
 #loop-button > .toolbarbutton-badge-stack {
   list-style-image: url("chrome://browser/skin/loop/toolbarfx.png");
@@ -993,7 +984,7 @@ toolbaritem[sdkstylewidget="true"] > toolbarbutton,
           #preferences-button, #privatebrowsing-button, #save-page-button, #add-ons-button,
           #history-panelmenu, #nav-bar-overflow-button, #PanelUI-menu-button, #characterencoding-button,
           #email-link-button, #sidebar-button, #zoom-out-button, #zoom-reset-button, #zoom-in-button, #cut-button,
-          #copy-button, #paste-button, #e10s-button, #panic-button, #web-apps-button, #webide-button, #loop-button,
+          #copy-button, #paste-button, #e10s-button, #panic-button, #webide-button, #loop-button,
           #pocket-button)[cui-areatype="menu-panel"],
 toolbarpaletteitem[place="palette"] > :-moz-any(#back-button, #forward-button, #home-button, #print-button, #downloads-button, #bookmarks-menu-button,
           #new-tab-button, #new-window-button, #fullscreen-button, #sync-button, #feed-button, #tabview-button,
@@ -1001,7 +992,7 @@ toolbarpaletteitem[place="palette"] > :-moz-any(#back-button, #forward-button, #
           #preferences-button, #privatebrowsing-button, #save-page-button, #add-ons-button,
           #history-panelmenu, #nav-bar-overflow-button, #PanelUI-menu-button, #characterencoding-button,
           #email-link-button, #sidebar-button, #zoom-out-button, #zoom-reset-button, #zoom-in-button, #cut-button,
-          #copy-button, #paste-button, #e10s-button, #panic-button, #web-apps-button, #webide-button, #loop-button,
+          #copy-button, #paste-button, #e10s-button, #panic-button, #webide-button, #loop-button,
                                                 #pocket-button) {
   list-style-image: var(--menupanel-list-style-image);
 }
@@ -1289,16 +1280,6 @@ toolbarpaletteitem[place="palette"] > #panic-button:hover,
   -moz-image-region: rect(32px, 896px, 64px, 864px);
 }
 
-#web-apps-button[cui-areatype="menu-panel"],
-toolbarpaletteitem[place="palette"] > #web-apps-button {
-  -moz-image-region: rect(0, 928px, 32px, 896px);
-}
-
-#web-apps-button[cui-areatype="menu-panel"]:hover,
-toolbarpaletteitem[place="palette"] > #web-apps-button:hover {
-  -moz-image-region: rect(32px, 928px, 64px, 896px);
-}
-
 #webide-button[cui-areatype="menu-panel"],
 toolbarpaletteitem[place="palette"] > #webide-button {
   -moz-image-region: rect(0px, 960px, 32px, 928px);
@@ -1572,6 +1553,12 @@ toolbarbutton[constrain-size="true"][cui-areatype="toolbar"] > .toolbarbutton-ba
 /*  -moz-padding-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) > .toolbarbutton-icon {
+  /* horizontal padding + border + icon width */
+/*  max-width: 43px;*/
+}
+
 #nav-bar .toolbarbutton-1 > .toolbarbutton-menu-dropmarker {
 }
 
@@ -1943,9 +1930,11 @@ html|*.urlbar-input:-moz-lwtheme::-moz-placeholder,
 
 .urlbar-icon {
   padding: 0 2px;
+  /* 16x16 icon with border-box sizing */
+  width: 20px;
+  height: 16px;
 }
 
-.searchbar-engine-button,
 .search-go-container {
   padding: 2px;
 }
@@ -1954,13 +1943,6 @@ html|*.urlbar-input:-moz-lwtheme::-moz-placeholder,
   padding: 0;
 }
 
-.urlbar-icon:hover {
-}
-
-.urlbar-icon[open="true"],
-.urlbar-icon:hover:active {
-}
-
 #urlbar-search-footer {
   border-top: 1px solid #A09090;
 }
@@ -2028,7 +2010,6 @@ html|*.urlbar-input:-moz-lwtheme::-moz-placeholder,
 
 #PopupAutoCompleteRichResult > hbox[anonid="search-suggestions-notification"] > button {
   -moz-appearance: none;
-  -moz-user-focus: ignore;
   min-width: 80px;
   border-radius: 3px;
   padding: 4px 16px;
@@ -2081,6 +2062,11 @@ html|*.urlbar-input:-moz-lwtheme::-moz-placeholder,
 #urlbar-wrapper > #urlbar > .urlbar-textbox-container > .urlbar-history-dropmarker {
   border: none;
   border-radius: 0px;
+  transition: opacity 0.15s ease;
+}
+
+#navigator-toolbox:not(:hover) .urlbar-history-dropmarker {
+  opacity: 0;
 }
 
 .urlbar-history-dropmarker:hover {
@@ -2095,18 +2081,19 @@ html|*.urlbar-input:-moz-lwtheme::-moz-placeholder,
 /* === BEGIN identity-block.inc.css === */
 
 #identity-box {
-  --identity-box-border-color: #A09090;
   --identity-box-verified-color: #008484;
   /* Default theme does different color per channel, we can't as they do it build-time. */
   --identity-box-chrome-color: #9C9CFF;
 
-  border-inline-end: 1px solid --identity-box-border-color);
+  border-inline-end: 1px solid --urlbar-separator-color);
   font-size: .9em;
   border-radius: 2px;
-  -moz-margin-end: 3px;
-/*  padding: 2px 5px;
-  margin-inline-end: 4px;*/
+  padding: 3px 5px;
+  margin-inline-end: 4px;
   overflow: hidden;
+  /* The latter two properties have a transition to handle the delayed hiding of
+     the forward button when hovered. */
+  transition: background-color 150ms ease, padding-left, padding-right;
 }
 
 #identity-box:-moz-locale-dir(ltr) {
@@ -2130,7 +2117,7 @@ html|*.urlbar-input:-moz-lwtheme::-moz-placeholder,
 }
 
 #notification-popup-box:not([hidden]) + #identity-box {
-  padding-inline-start: 10px !important;
+  padding-inline-start: 10px;
   border-radius: 0;
 }
 
@@ -2141,10 +2128,6 @@ window:not([chromehidden~="toolbar"]) #urlbar-wrapper > #urlbar > #identity-box
   -moz-margin-end: 1px;
 }
 
-window:not([chromehidden~="toolbar"]) #urlbar-wrapper:not([switchingtabs]) > #urlbar > #identity-box {
-  transition: padding-left, padding-right;
-}
-
 window:not([chromehidden~="toolbar"]) #urlbar-wrapper > #forward-button[disabled] + #urlbar >
     #notification-popup-box[hidden] + #identity-box {
   padding-inline-start: 2px;
@@ -2152,8 +2135,10 @@ window:not([chromehidden~="toolbar"]) #urlbar-wrapper > #forward-button[disabled
 
 window:not([chromehidden~="toolbar"]) #urlbar-wrapper:hover:not([switchingtabs]) > #forward-button[disabled] + #urlbar >
     #notification-popup-box[hidden] + #identity-box {
-  /* forward button hiding is delayed when hovered */
-  transition-delay: 100s;
+  /* Forward button hiding is delayed when hovered, so we should use the same
+     delay for the identity box. We handle both horizontal paddings (for LTR and
+     RTL), the latter two delays here are for padding-left and padding-right. */
+  transition-delay: 0s, 100s, 100s;
 }
 
 window:not([chromehidden~="toolbar"]) #urlbar-wrapper:not(:hover) > #forward-button[disabled] + #urlbar >
@@ -2162,95 +2147,6 @@ window:not([chromehidden~="toolbar"]) #urlbar-wrapper:not(:hover) > #forward-but
   padding-inline-start: 2.01px;
 }
 
-/* TRACKING PROTECTION ICON */
-
-#tracking-protection-icon {
-  width: 16px;
-  height: 16px;
-  list-style-image: url("chrome://browser/skin/tracking-protection-16.svg");
-  margin-left: 0;
-  opacity: 1;
-}
-
-#tracking-protection-icon[state="loaded-tracking-content"] {
-  list-style-image: url("chrome://browser/skin/tracking-protection-disabled-16.svg");
-}
-
-#tracking-protection-icon[animate] {
-  transition: margin-left 200ms ease-out;
-}
-
-#tracking-protection-icon:not([state]) {
-  margin-left: -16px;
-  pointer-events: none;
-  opacity: 0;
-  /* Only animate the shield in, when it disappears hide it immediately. */
-  transition: none;
-}
-
-#urlbar[pageproxystate="invalid"] > #identity-box > #identity-icons > #tracking-protection-icon {
-  visibility: collapse;
-}
-
-/* MAIN IDENTITY ICON */
-
-#page-proxy-favicon {
-  width: 16px;
-  height: 16px;
-  list-style-image: url("chrome://browser/skin/identity-not-secure.svg");
-  margin: 2px;
-}
-
-.chromeUI > #identity-icons > #page-proxy-favicon[pageproxystate="valid"] {
-  list-style-image: url("chrome://branding/content/identity-icons-brand.svg");
-}
-
-.verifiedDomain > #identity-icons > #page-proxy-favicon[pageproxystate="valid"],
-.verifiedIdentity > #identity-icons > #page-proxy-favicon[pageproxystate="valid"] {
-  list-style-image: url("chrome://browser/skin/identity-secure.svg");
-}
-
-.mixedActiveContent > #identity-icons > #page-proxy-favicon[pageproxystate="valid"] {
-  list-style-image: url("chrome://browser/skin/identity-mixed-active-loaded.svg");
-}
-
-.weakCipher > #identity-icons > #page-proxy-favicon[pageproxystate="valid"],
-.mixedDisplayContent > #identity-icons > #page-proxy-favicon[pageproxystate="valid"],
-.mixedDisplayContentLoadedActiveBlocked > #identity-icons > #page-proxy-favicon[pageproxystate="valid"] {
-  list-style-image: url("chrome://browser/skin/identity-mixed-passive-loaded.svg");
-}
-
-.mixedActiveBlocked > #identity-icons > #page-proxy-favicon[pageproxystate="valid"] {
-  list-style-image: url("chrome://browser/skin/identity-mixed-active-blocked.svg");
-}
-
-#page-proxy-favicon[pageproxystate="invalid"] {
-  opacity: 0.3;
-}
-
-#identity-popup.chromeUI > #identity-popup-container > #identity-popup-icon {
-  list-style-image: url("chrome://branding/content/icon64.png");
-}
-
-#identity-popup-brandName {
-  font-weight: bold;
-  font-size: 1.25em;
-  margin-top: .5em;
-  margin-bottom: .5em;
-}
-
-#identity-popup-content-box {
-  max-width: 50ch;
-}
-
-#urlbar[actiontype="searchengine"] > #identity-box > #identity-icons > #page-proxy-favicon {
-  -moz-image-region: inherit;
-  list-style-image: url(chrome://global/skin/icons/autocomplete-search.svg#search-icon);
-  width: 16px;
-  height: 16px;
-  opacity: 1;
-}
-
 /* MAIN IDENTITY ICON */
 
 #identity-icon {
@@ -2493,7 +2389,7 @@ richlistitem[type~="action"][actiontype="switchtab"][selected="true"] > .ac-url-
   border-style: none;
   list-style-image: url("chrome://browser/skin/reload-stop-goFx.png");
 /*  padding: 0 9px;*/
-  margin-inline-start: 2px;
+  margin-inline-start: 0px;
   border-inline-start: 1px solid var(--urlbar-separator-color);
   border-image: linear-gradient(transparent 15%,
                                 var(--urlbar-separator-color) 15%,
@@ -2727,11 +2623,7 @@ richlistitem[type~="action"][actiontype="switchtab"][selected="true"] > .ac-url-
   -moz-image-region: rect(0px 32px 16px 16px);
 }
 
-#bookmarks-menu-button.bookmark-item > .toolbarbutton-menubutton-button > .toolbarbutton-icon {
-  -moz-margin-start: 5px;
-}
-
-#bookmarks-menu-button[cui-areatype="toolbar"]:not(.bookmark-item):not([overflowedItem=true]) > .toolbarbutton-menubutton-dropmarker > .dropmarker-icon {
+#nav-bar #bookmarks-menu-button[cui-areatype="toolbar"]:not([overflowedItem=true]) > .toolbarbutton-menubutton-dropmarker > .dropmarker-icon {
   padding-top: 2px;
   padding-bottom: 2px;
 }
@@ -2880,9 +2772,11 @@ richlistitem[type~="action"][actiontype="switchtab"][selected="true"] > .ac-url-
 
 :root {
   /* --tab-toolbar-navbar-overlap: 1px; */
+  /* --navbar-tab-toolbar-highlight-overlap: 1px; */
   /* --tab-min-height: 31px; */
-  /* --tab-curve-width: 30px; */
-  /* --tab-curve-half-width: 15px; */
+}
+#TabsToolbar {
+  /* --tab-stroke-background-size: auto 100%; */
 }
 
 .tabbrowser-tab,
@@ -2945,9 +2839,8 @@ richlistitem[type~="action"][actiontype="switchtab"][selected="true"] > .ac-url-
 .tab-icon-overlay {
   width: 16px;
   height: 16px;
- /* margin-top: -12px; */
-  -moz-margin-start: -16px;
-  display: none;
+  margin-top: -8px;
+  -moz-margin-start: -15px;
   position: relative;
 }
 
@@ -2955,69 +2848,32 @@ richlistitem[type~="action"][actiontype="switchtab"][selected="true"] > .ac-url-
   list-style-image: url("chrome://browser/skin/tabbrowser/crashed.svg");
 }
 
-.tab-icon-overlay[crashed],
-.tab-icon-overlay[soundplaying][pinned],
-.tab-icon-overlay[muted][pinned]:not([crashed]) {
-  display: -moz-box;
-}
-
-.tab-icon-overlay[soundplaying][pinned],
-.tab-icon-overlay[muted][pinned]:not([crashed]) {
-  border-radius: 8px;
+.tab-icon-overlay[soundplaying],
+.tab-icon-overlay[muted]:not([crashed]) {
+  border-radius: 10px;
 }
 
-.tab-icon-overlay[soundplaying][pinned]:hover,
-.tab-icon-overlay[muted][pinned]:hover {
+.tab-icon-overlay[soundplaying]:hover,
+.tab-icon-overlay[muted]:hover {
   background-color: #FFCF00;
 }
 
-.tab-icon-overlay[soundplaying][pinned] {
+.tab-icon-overlay[soundplaying] {
   display: -moz-box;
   list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio-small.svg#tab-audio");
 }
 
-.tab-icon-overlay[soundplaying][pinned]:hover {
-  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio-small.svg#tab-audio-hover");
-}
-
-.tab-icon-overlay[soundplaying][pinned]:hover:active {
-  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio-small.svg#tab-audio-pressed");
-}
-
-.tab-icon-overlay[muted][pinned]:not([crashed]) {
+.tab-icon-overlay[muted]:not([crashed]) {
   list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio-small.svg#tab-audio-muted");
 }
 
-.tab-icon-overlay[muted][pinned]:not([crashed]):hover {
-  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio-small.svg#tab-audio-muted-hover");
+#TabsToolbar[brighttext] .tab-icon-overlay[soundplaying]:not(:hover) {
+  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio-small.svg#tab-audio-white");
 }
 
-.tab-icon-overlay[muted][pinned]:not([crashed]):hover:active {
-  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio-small.svg#tab-audio-muted-pressed");
-}
-
-#TabsToolbar[brighttext] .tab-icon-overlay[soundplaying][pinned] {
-  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio-small.svg#tab-audio-dark");
-}
-
-#TabsToolbar[brighttext] .tab-icon-overlay[soundplaying][pinned]:hover {
-  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio-small.svg#tab-audio-hover");
-}
-
-#TabsToolbar[brighttext] .tab-icon-overlay[soundplaying][pinned]:hover:active {
-  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio-small.svg#tab-audio-pressed");
-}
-
-#TabsToolbar[brighttext] .tab-icon-overlay[muted][pinned]:not([crashed]) {
-  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio-small.svg#tab-audio-muted");
-}
-
-#TabsToolbar[brighttext] .tab-icon-overlay[muted][pinned]:not([crashed]):hover {
-  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio-small.svg#tab-audio-muted-hover");
-}
 
-#TabsToolbar[brighttext] .tab-icon-overlay[muted][pinned]:not([crashed]):hover:active {
-  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio-small.svg#tab-audio-muted-pressed");
+#TabsToolbar[brighttext] .tab-icon-overlay[muted]:not([crashed]):not(:hover) {
+  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio-small.svg#tab-audio-white-muted");
 }
 
 .tab-throbber[busy] {
@@ -3048,11 +2904,6 @@ richlistitem[type~="action"][actiontype="switchtab"][selected="true"] > .ac-url-
   padding: 0;
 }
 
-.tab-icon-sound:not([soundplaying]):not([muted]),
-.tab-icon-sound[pinned] {
-  display: none;
-}
-
 .tab-icon-sound[muted] {
   list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-muted");
 }
@@ -3066,39 +2917,75 @@ richlistitem[type~="action"][actiontype="switchtab"][selected="true"] > .ac-url-
 }
 
 .tab-icon-sound[soundplaying] {
-  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio");
+  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-backgroundTab");
 }
 
 .tab-icon-sound[soundplaying]:hover {
-  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-hover");
+  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-backgroundTab-hover");
 }
 
 .tab-icon-sound[soundplaying]:hover:active {
+  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-backgroundTab-pressed");
+}
+
+.tab-icon-sound[muted] {
+  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-backgroundTab-muted");
+}
+
+.tab-icon-sound[muted]:hover {
+  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-backgroundTab-muted-hover");
+}
+
+.tab-icon-sound[muted]:hover:active {
+  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-backgroundTab-muted-pressed");
+}
+
+.tab-icon-sound[visuallyselected=true][soundplaying] {
+  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio");
+}
+
+.tab-icon-sound[visuallyselected=true][soundplaying]:hover {
+  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-hover");
+}
+
+.tab-icon-sound[visuallyselected=true][soundplaying]:hover:active {
   list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-pressed");
 }
 
+.tab-icon-sound[visuallyselected=true][muted] {
+  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-muted");
+}
+
+.tab-icon-sound[visuallyselected=true][muted]:hover {
+  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-muted-hover");
+}
+
+.tab-icon-sound[visuallyselected=true][muted]:hover:active {
+  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-muted-pressed");
+}
+
 #TabsToolbar[brighttext] .tab-icon-sound[soundplaying] {
-  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-dark");
+  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-white");
 }
 
 #TabsToolbar[brighttext] .tab-icon-sound[soundplaying]:hover {
-  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-dark-hover");
+  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-white-hover");
 }
 
 #TabsToolbar[brighttext] .tab-icon-sound[soundplaying]:hover:active {
-  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-dark-pressed");
+  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-white-pressed");
 }
 
 #TabsToolbar[brighttext] .tab-icon-sound[muted] {
-  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-muted-dark");
+  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-muted-white");
 }
 
 #TabsToolbar[brighttext] .tab-icon-sound[muted]:hover {
-  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-muted-dark-hover");
+  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-muted-white-hover");
 }
 
 #TabsToolbar[brighttext] .tab-icon-sound[muted]:hover:active {
-  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-muted-dark-pressed");
+  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-muted-white-pressed");
 }
 
 .tab-close-button {
@@ -3161,6 +3048,31 @@ richlistitem[type~="action"][actiontype="switchtab"][selected="true"] > .ac-url-
 
 /* End selected tab */
 
+/* User Context UI - change tab decoration depending on userContextId.
+   Defaults to gray for unknown usercontextids. */
+.tabbrowser-tab[usercontextid] {
+  background-image: linear-gradient(to right, transparent 20%, #A09090 30%, #A09090 70%, transparent 80%);
+  background-size: auto 2px;
+  background-repeat: no-repeat;
+}
+
+/* Personal User Context */
+.tabbrowser-tab[usercontextid="1"] {
+  background-image: linear-gradient(to right, transparent 20%, #9C9CFF 30%, #9C9CFF 70%, transparent 80%);
+}
+/* Work User Context */
+.tabbrowser-tab[usercontextid="2"] {
+  background-image: linear-gradient(to right, transparent 20%, #FF9F00 30%, #FF9F00 70%, transparent 80%);
+}
+/* Banking User Context */
+.tabbrowser-tab[usercontextid="3"] {
+  background-image: linear-gradient(to right, transparent 20%, #008484 30%, #008484 70%, transparent 80%);
+}
+/* Shopping User Context */
+.tabbrowser-tab[usercontextid="4"] {
+  background-image: linear-gradient(to right, transparent 20%, #E7ADE7 30%, #E7ADE7 70%, transparent 80%);
+}
+
 /* Tab pointer-events */
 /*
 .tabbrowser-tab {
@@ -3178,15 +3090,50 @@ richlistitem[type~="action"][actiontype="switchtab"][selected="true"] > .ac-url-
 */
 /* Pinned tabs */
 
-.tabbrowser-tab[pinned][titlechanged]:not([selected="true"]) {
+/*
+.tabbrowser-tab:-moz-any([image], [pinned]) > .tab-stack > .tab-content[attention]:not([visuallyselected="true"]),
+.tabbrowser-tab > .tab-stack > .tab-content[pinned][titlechanged]:not([visuallyselected="true"]) {
+*/
+.tabbrowser-tab:-moz-any([image], [pinned]):-moz-any([attention], [titlechanged]):not([visuallyselected="true"]) {
   background-color: #E7ADE7;
 }
 
-.tabbrowser-tab[pinned][titlechanged]:not([selected="true"]):hover {
+.tab-label[attention]:not([visuallyselected="true"]) {
+  font-weight: bold;
+}
+
+.tabbrowser-tab[pinned][titlechanged]:not([visuallyselected="true"]):hover {
   background-color: #3333FF;
   color: #000000;
 }
 
+/* Tab separators */
+/*
+.tabbrowser-tab::after,
+.tabbrowser-tab::before {
+  width: 1px;
+  -moz-margin-start: -1px;
+  background-image: linear-gradient(transparent 5px,
+                                    currentColor 5px,
+                                    currentColor calc(100% - 4px),
+                                    transparent calc(100% - 4px));
+  opacity: 0.2;
+}
+
+#TabsToolbar[brighttext] > #tabbrowser-tabs > .tabbrowser-tab::before,
+#TabsToolbar[brighttext] > #tabbrowser-tabs > .tabbrowser-tab::after {
+  opacity: 0.4;
+}
+*/
+/* Also show separators beside the selected tab when dragging it. */
+/*
+#tabbrowser-tabs[movingtab] > .tabbrowser-tab[beforeselected]:not([last-visible-tab])::after,
+.tabbrowser-tab:not([visuallyselected]):not([afterselected-visible]):not([afterhovered]):not([first-visible-tab]):not(:hover)::before,
+#tabbrowser-tabs:not([overflow]) > .tabbrowser-tab[last-visible-tab]:not([visuallyselected]):not([beforehovered]):not(:hover)::after {
+  content: "";
+  display: -moz-box;
+}
+*/
 /* New tab button */
 
 .tabs-newtab-button {
@@ -3339,6 +3286,14 @@ richlistitem[type~="action"][actiontype="switchtab"][selected="true"] > .ac-url-
   background-color: #402800;
 }
 
+.alltabs-endimage[muted] {
+  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio-muted");
+}
+
+.alltabs-endimage[soundplaying] {
+  list-style-image: url("chrome://browser/skin/tabbrowser/tab-audio.svg#tab-audio");
+}
+
 toolbarbutton.chevron {
   list-style-image: url("chrome://global/skin/toolbar/chevron.gif") !important;
 }
@@ -3407,10 +3362,6 @@ toolbarbutton.bookmark-item[dragover="true"][open="true"] {
   list-style-image: url("chrome://browser/skin/Geolocation-64.png");
 }
 
-.popup-notification-icon[popupid="push"] {
-  list-style-image: url(chrome://browser/skin/Push-64.png);
-}
-
 .popup-notification-icon[popupid="xpinstall-disabled"],
 .popup-notification-icon[popupid="addon-install-blocked"],
 .popup-notification-icon[popupid="addon-install-origin-blocked"] {
@@ -3446,7 +3397,7 @@ toolbarbutton.bookmark-item[dragover="true"][open="true"] {
 }
 
 .popup-notification-icon[popupid="web-notifications"] {
-  list-style-image: url("chrome://browser/skin/notification-64.png");
+  list-style-image: url("chrome://browser/skin/web-notifications-icon.svg");
 }
 
 .popup-notification-icon[popupid="indexedDB-permissions-prompt"],
@@ -3464,15 +3415,6 @@ toolbarbutton.bookmark-item[dragover="true"][open="true"] {
   list-style-image: url("chrome://global/skin/icons/webapps-64.png");
 }
 
-.popup-notification-icon[popupid="bad-content"] {
-  list-style-image: url("chrome://browser/skin/bad-content-blocked-64.png");
-}
-
-.popup-notification-icon[popupid="bad-content"][mixedblockdisabled],
-.popup-notification-icon[popupid="bad-content"][trackingblockdisabled] {
-  list-style-image: url(chrome://browser/skin/bad-content-unblocked-64.png);
-}
-
 .popup-notification-icon[popupid="webRTC-sharingDevices"],
 .popup-notification-icon[popupid="webRTC-shareDevices"] {
   list-style-image: url("chrome://browser/skin/webRTC-shareDevice-64.png");
@@ -3513,11 +3455,20 @@ window:not([chromehidden~="toolbar"]) #urlbar-wrapper > #forward-button[disabled
 /*  padding-left: 7px; */
 }
 
+/* This changes the direction of the main notification box on the url bar. */
 #notification-popup-box:-moz-locale-dir(rtl),
+/* This adds a second flip for the notification anchors, as they don't switch direction
+   for RTL mode. */
 .notification-anchor-icon:-moz-locale-dir(rtl) {
   transform: scaleX(-1);
 }
 
+/* For the anchor icons in the chat window, we don't have the notification popup box,
+   so we need to cancel the RTL transform. */
+.notification-anchor-icon.chat-toolbarbutton:-moz-locale-dir(rtl) {
+  transform: none;
+}
+
 .notification-anchor-icon {
   list-style-image: url("chrome://global/skin/icons/information-16.png");
 
@@ -3540,10 +3491,6 @@ window:not([chromehidden~="toolbar"]) #urlbar-wrapper > #forward-button[disabled
   list-style-image: url("chrome://browser/skin/Geolocation-16.png");
 }
 
-#push-notification-icon {
-  list-style-image: url(chrome://browser/skin/Push-16.png);
-}
-
 #addons-notification-icon {
   list-style-image: url(chrome://browser/skin/addons/addon-install-anchor.svg#default);
 }
@@ -3615,16 +3562,6 @@ window:not([chromehidden~="toolbar"]) #urlbar-wrapper > #forward-button[disabled
   }
 }
 
-.bad-content-blocked-notification-icon,
-#bad-content-blocked-notification-icon {
-  list-style-image: url("chrome://browser/skin/bad-content-blocked-16.png");
-}
-
-.bad-content-unblocked-notification-icon,
-#bad-content-unblocked-notification-icon {
-  list-style-image: url(chrome://browser/skin/bad-content-unblocked-16.png);
-}
-
 .webRTC-shareDevices-notification-icon,
 #webRTC-shareDevices-notification-icon {
   list-style-image: url("chrome://browser/skin/webRTC-shareDevice-16.png");
@@ -3657,7 +3594,18 @@ window:not([chromehidden~="toolbar"]) #urlbar-wrapper > #forward-button[disabled
 
 .web-notifications-notification-icon,
 #web-notifications-notification-icon {
-  list-style-image: url("chrome://browser/skin/notification-16.png");
+  list-style-image: url("chrome://browser/skin/web-notifications-tray.svg");
+  -moz-image-region: rect(0, 16px, 16px, 0);
+}
+
+.web-notifications-notification-icon:hover,
+#web-notifications-notification-icon:hover {
+  -moz-image-region: rect(0, 32px, 16px, 16px);
+}
+
+.web-notifications-notification-icon:hover:active,
+#web-notifications-notification-icon:hover:active {
+  -moz-image-region: rect(0, 48px, 16px, 32px);
 }
 
 #pointerLock-notification-icon {
@@ -3977,16 +3925,14 @@ notification[value="loop-sharing-notification"] .messageImage {
   margin-top: 1em;
 }
 
-#sync-error-panel-title,
 #sync-start-panel-title {
   font-size: 120%;
   font-weight: bold;
   margin-bottom: 5px;
 }
 
-#sync-start-panel-subtitle,
-#sync-error-panel-subtitle {
-  margin: 0;
+#sync-start-panel-subtitle {
+  margin-bottom: 0;
 }
 
 /* Status panel */
@@ -4021,23 +3967,61 @@ notification[value="loop-sharing-notification"] .messageImage {
   background-color: transparent !important;
 }
 
-#full-screen-warning-message {
-  background-color: #000000;
-  color: #FF9F00;
+/* === BEGIN fullscreen/warning.inc.css === */
+
+html|*#fullscreen-warning {
+  align-items: center;
+  background: rgba(0, 0, 0, 0.9);
+  border: 2px solid #A09090;
+  box-shadow: 0px 0px 5px 2px rgba(0, 0, 0, 0.5);
   border-radius: 8px;
-  margin-top: 30px;
-  padding: 30px 50px;
-  box-shadow: 0 0 2px #9C9CFF;
+  padding: 24px 16px;
+  font: 11px "Liberation Sans",Arial,Tahoma,Helvetica,sans-serif;
+}
+
+html|*#fullscreen-warning::before {
+  margin: 0;
+  width: 24px; height: 24px;
 }
 
-.full-screen-description {
-  font-size: 150%;
+html|*#fullscreen-warning.verifiedIdentity::before,
+html|*#fullscreen-warning.verifiedDomain::before {
+  content: url("chrome://browser/skin/fullscreen/secure.svg");
 }
 
-#full-screen-domain-text {
-  font-size: 300%;
+html|*#fullscreen-warning.unknownIdentity::before {
+  content: url("chrome://browser/skin/fullscreen/insecure.svg");
 }
 
+html|*#fullscreen-domain-text,
+html|*#fullscreen-generic-text {
+  font-size: 21px;
+  font-weight: lighter;
+  color: #A09090;
+  margin: 0 16px;
+}
+
+html|*#fullscreen-domain {
+  font-weight: bold;
+  margin: 0;
+}
+
+html|*#fullscreen-exit-button {
+  padding: 5px 30px;
+  font: "Liberation Sans",Arial,Tahoma,Helvetica,sans-serif;
+  font-size: 14px;
+  font-weight: lighter;
+  margin: 0;
+  box-sizing: content-box;
+
+  border-radius: 300px;
+  border: none;
+  background-color: #C09070;
+  color: #000000;
+}
+
+/* === END fullscreen/warning.inc.css === */
+
 /* === BEGIN commandline.inc.css === */
 
 /* NOTE: THESE NEED TO STAY IN SYNC WITH LIGHT-THEME.CSS AND DARK-THEME.CSS.
@@ -4547,12 +4531,14 @@ html|*#gcli-output-frame {
 }
 
 .devtools-responsiveui-home-button {
+  -moz-user-focus: ignore;
   width: 40px;
   height: 30px;
   list-style-image: url("chrome://browser/skin/devtools/responsiveui-home.png");
 }
 
 .devtools-responsiveui-sleep-button {
+  -moz-user-focus: ignore;
   -moz-appearance: none;
   /* compensate browserStack top padding */
   margin-top: -67px;
@@ -4580,6 +4566,7 @@ html|*#gcli-output-frame {
 
 .devtools-responsiveui-volume-up-button,
 .devtools-responsiveui-volume-down-button {
+  -moz-user-focus: ignore;
   -moz-appearance: none;
   border: 1px solid red;
   min-width: 8px;
@@ -4773,14 +4760,6 @@ html|*#gcli-output-frame {
   background: none;
 }
 
-.chat-toolbarbutton:hover {
-/*  background-color: rgba(255,255,255,.35);*/
-}
-
-.chat-toolbarbutton:hover:active {
-/*  background-color: rgba(255,255,255,.5);*/
-}
-
 .chat-toolbarbutton > .toolbarbutton-text {
   display: none;
 }
@@ -4794,7 +4773,11 @@ html|*#gcli-output-frame {
   list-style-image: url("chrome://browser/skin/social/chat-icons.svg#close");
 }
 
-.chat-close-button:-moz-any(:hover,:hover:active) {
+.chat-close-button:hover {
+  list-style-image: url("chrome://browser/skin/social/chat-icons.svg#close-hover");
+}
+
+.chat-close-button:hover:active {
   list-style-image: url("chrome://browser/skin/social/chat-icons.svg#close-active");
 }
 
@@ -4802,7 +4785,11 @@ html|*#gcli-output-frame {
   list-style-image: url("chrome://browser/skin/social/chat-icons.svg#minimize");
 }
 
-.chat-minimize-button:-moz-any(:hover,:hover:active) {
+.chat-minimize-button:hover {
+  list-style-image: url("chrome://browser/skin/social/chat-icons.svg#minimize-hover");
+}
+
+.chat-minimize-button:hover:active {
   list-style-image: url("chrome://browser/skin/social/chat-icons.svg#minimize-active");
 }
 
@@ -4811,7 +4798,11 @@ html|*#gcli-output-frame {
   transform: rotate(180deg);
 }
 
-.chat-swap-button:-moz-any(:hover,:hover:active) {
+.chat-swap-button:hover {
+  list-style-image: url("chrome://browser/skin/social/chat-icons.svg#expand-hover");
+}
+
+.chat-swap-button:hover:active {
   list-style-image: url("chrome://browser/skin/social/chat-icons.svg#expand-active");
 }
 
@@ -4819,24 +4810,65 @@ chatbar > chatbox > .chat-titlebar > .chat-swap-button {
   transform: none;
 }
 
+chatbox[src^="about:loopconversation#"] .chat-minimize-button {
+  list-style-image: url("chrome://browser/skin/social/chat-icons.svg#minimize-white");
+}
+
+chatbox[src^="about:loopconversation#"] .chat-swap-button {
+  list-style-image: url("chrome://browser/skin/social/chat-icons.svg#expand-white");
+}
+
+.chat-loop-hangup {
+  list-style-image: url("chrome://browser/skin/social/chat-icons.svg#exit-white");
+  background-color: #FF0000;
+  border: 1px solid #FFC000;
+  border-top-right-radius: 4px;
+  width: 32px;
+  height: 26px;
+  margin-top: -6px;
+  margin-bottom: -5px;
+  -moz-margin-start: 6px;
+  -moz-margin-end: -5px;
+}
+
+.chat-toolbarbutton.chat-loop-hangup:-moz-any(:hover,:hover:active) {
+  background-color: #FFCF00;
+  border-color: #FF0000;
+}
+
 .chat-title {
-  font-weight: bold;
-  font: 11px "Liberation Sans",Arial,Tahoma,Helvetica,sans-serif;
+  color: #000000;
   text-shadow: none;
   cursor: inherit;
 }
 
+chatbox[src^="about:loopconversation#"] .chat-title {
+/*  color: white;*/
+}
+
 .chat-titlebar {
   background-color: #9C9CFF;
   color: #000000;
-  height: 30px;
-  min-height: 30px;
+  height: 26px;
+  min-height: 26px;
   width: 100%;
   margin: 0;
-  padding: 7px 6px;
-  border: none;
-  border-bottom: 1px solid #008484;
+  padding: 5px 4px;
+  border: 1px solid #008484;
+  border-bottom: 0;
+  border-top-left-radius: 4px;
+  border-top-right-radius: 4px;
   cursor: pointer;
+  background-color: #A09090;
+}
+
+.chat-titlebar[selected] {
+  background-color: #008484;
+}
+
+chatbox[src^="about:loopconversation#"] > .chat-titlebar {
+  background-color: #008484;
+  border-color: #008484;
 }
 
 .chat-titlebar > .notification-anchor-icon {
@@ -4856,18 +4888,6 @@ chatbar > chatbox > .chat-titlebar > .chat-swap-button {
   background-color: #E7ADE7;
 }
 
-chatbox[dark=true] > .chat-titlebar,
-chatbox[dark=true] > .chat-titlebar[selected] {
-/*  border-bottom: none;
-  background-color: #000;
-  background-image: none;*/
-}
-
-chatbox[dark=true] > .chat-titlebar > hbox > .chat-title {
-/*  font-weight: normal;
-  color: #c1c1c1;*/
-}
-
 .chat-frame {
   padding: 0;
   margin: 0;
@@ -4892,6 +4912,17 @@ chatbox[dark=true] > .chat-titlebar > hbox > .chat-title {
   }
 }
 
+.chatbar-button:hover {
+  background-color: #FFCF00;
+}
+.chatbar-button[open="true"] {
+  background-color: #FF9F00;
+}
+
+.chatbar-button[activity]:not([open]) {
+  background-image: radial-gradient(circle farthest-corner at center 2px, rgb(160,144,144) 3%, rgba(160,144,144,0.9) 12%, rgba(156,156,255,0.6) 30%, rgba(156,156,255,0.2) 70%);
+}
+
 .chatbar-button > .toolbarbutton-icon {
   width: 16px;
 }
@@ -4938,15 +4969,19 @@ chatbar {
   -moz-margin-end: 20px;
 }
 
-chatbar > chatbox {
-  height: 285px;
-  width: 260px;
+chatbox {
   -moz-margin-start: 4px;
-  background-color: #000000;
-  border: 1px solid #9C9CFF;
-  border-bottom: none;
-  border-top-left-radius: 2.5px;
-  border-top-right-radius: 2.5px;
+  background-color: transparent;
+}
+
+chatbar > chatbox {
+  /* Apply the same border-radius as the .chat-titlebar to make the box-shadow
+     go round nicely. */
+/*  border-top-left-radius: 4px;
+  border-top-right-radius: 4px;*/
+  /* Offset the chatbox the same amount as the box-shadows' spread, to make it
+     visible. */
+/*  -moz-margin-end: 5px;*/
 }
 
 chatbox[minimized="true"] {
@@ -4963,36 +4998,6 @@ window > chatbox {
 
 /* === END chat.inc.css === */
 
-.chat-titlebar {
-/*  background-color: #c4cfde; */
-}
-
-.chat-titlebar[selected] {
-/*  background-color: #dae3f0; */
-}
-
-.chatbar-button {
-  -moz-appearance: none;
-/*  background-color: #c4cfde; */
-}
-
-.chatbar-button > .toolbarbutton-icon {
-/*  -moz-margin-end: 0; */
-}
-
-.chatbar-button:hover,
-.chatbar-button[open="true"] {
-/*  background-color: #dae3f0; */
-}
-
-.chatbar-button[activity]:not([open="true"]) {
-}
-
-chatbox {
-/*  border-top-left-radius: 2.5px;
-  border-top-right-radius: 2.5px; */
-}
-
 /* === BEGIN plugin-doorhanger.inc.css === */
 
 /**
@@ -5060,32 +5065,6 @@ notification.pluginVulnerable .messageImage {
 
 /* === END plugin-doorhanger.inc.css === */
 
-/* === BEGIN badcontent-doorhanger.inc.css === */
-
-.popup-notification-item-title[popupid="bad-content"] {
-  font-weight: bold;
-}
-
-.popup-notification-item-message[popupid="bad-content"] {
-  width: 17em;
-}
-
-.popup-notification-item-message[popupid="bad-content"][mixedblockdisabled]:not(.popup-notification-item-message-critical),
-.popup-notification-item-message[popupid="bad-content"][trackingblockdisabled]:not(.popup-notification-item-message-critical) {
-  color: #8050B0;
-}
-
-.popup-notification-item-message-critical[popupid="bad-content"] {
-  color: #FF0000;
-  font-style: italic;
-}
-
-.popup-notification-footer[popupid="bad-content"] {
-  padding-top: 1em;
-}
-
-/* === END badcontent-doorhanger.inc.css === */
-
 /* === BEGIN login-doorhanger.inc.css === */
 
 #notification-popup[popupid="login-fill"] > .panel-arrowcontainer > .panel-arrowcontent {
@@ -6198,10 +6177,6 @@ menugroup > .menuitem-iconic[disabled="true"] > .menu-iconic-left {
   list-style-image: url("chrome://browser/skin/drm-icon.svg#chains");
 }
 
-#fill-login {
-  list-style-image: url("chrome://mozapps/skin/passwordmgr/key-16.png");
-}
-
 /* === END contextmenu.inc.css === */
 
 #context-navigation {
@@ -6211,6 +6186,81 @@ menugroup > .menuitem-iconic[disabled="true"] > .menu-iconic-left {
 /*  margin-top: -4px; */
 }
 
-.browser-action-panel > .panel-arrowcontainer > .panel-arrowcontent {
+.browser-extension-panel > .panel-arrowcontainer > .panel-arrowcontent {
   padding: 0;
+  overflow: hidden;
+}
+
+/* === BEGIN usercontext.inc.css === */
+
+/* User Context UI browser styles */
+
+#menu_newUserContextTabPersonal {
+  list-style-image: url("chrome://browser/skin/usercontext/personal.svg");
+}
+
+#menu_newUserContextTabWork {
+  list-style-image: url("chrome://browser/skin/usercontext/work.svg");
+}
+
+#menu_newUserContextTabBanking {
+  list-style-image: url("chrome://browser/skin/usercontext/banking.svg");
+}
+
+#menu_newUserContextTabShopping {
+  list-style-image: url("chrome://browser/skin/usercontext/shopping.svg");
+}
+
+/* URL Bar Decoration */
+
+#userContext-indicator {
+  height: 16px;
+  width: 16px;
+}
+
+#userContext-label {
+  margin-inline-end: 3px;
+  color: #A09090;
 }
+
+#userContext-icons:not([usercontextid]) {
+  display: none;
+}
+
+#userContext-icons {
+  -moz-box-align: center;
+}
+
+/* Personal User Context */
+#userContext-icons[usercontextid="1"] > #userContext-label {
+  color: #9C9CFF;
+}
+#userContext-icons[usercontextid="1"] > #userContext-indicator {
+  list-style-image: url("chrome://browser/skin/usercontext/personal.svg");
+}
+
+/* Work User Context */
+#userContext-icons[usercontextid="2"] > #userContext-label {
+  color: #FF9F00;
+}
+#userContext-icons[usercontextid="2"] > #userContext-indicator {
+  list-style-image: url("chrome://browser/skin/usercontext/work.svg");
+}
+
+/* Banking User Context */
+#userContext-icons[usercontextid="3"] > #userContext-label {
+  color: #008484;
+}
+#userContext-icons[usercontextid="3"] > #userContext-indicator {
+  list-style-image: url("chrome://browser/skin/usercontext/banking.svg");
+}
+
+/* Shopping User Context */
+#userContext-icons[usercontextid="4"] > #userContext-label {
+  color: #E7ADE7;
+}
+#userContext-icons[usercontextid="4"] > #userContext-indicator {
+  list-style-image: url("chrome://browser/skin/usercontext/shopping.svg");
+}
+
+/* === END usercontext.inc.css === */