/*
 * Outline inactive tabs
 * Added: 2021-06-02 89.0
 */
@media (-moz-proton) {
  /* Add darker border around tabs so more visiable */
  .tab-background:not([selected=true]):not([multiselected=true]) {
    border: 1px solid rgba(0, 0, 0, .30) !important;
  }

  /* Add color line to active tab */
  .tab-background:is([selected],[multiselected]) {
        background: linear-gradient(var(--focus-outline-color), hsla(0, 0%, 90%, .2) 10%) !important; /* Gradiant */
    }
}
/*
 */


/*
 * Based on Technetium (https://github.com/edo0/Technetium)
 * Version: 2.1.1
 */

@media (-moz-proton) {
  /** Darkmode - Color lighter ************************************************/
  :root[lwtheme-mozlightdark][lwthemetextcolor="bright"] {
    --toolbar-bgcolor: rgba(43, 42, 51, 5) !important; /* Original: rgba(43, 42, 51, 1) */
  }

  /* Theme - Compatibility ****************************************************/
  /* Header Image */
  :root[lwtheme-image] {
      background-image: var(--lwt-header-image)  !important; /* Original: var(--lwt-header-image) */
      background-repeat: no-repeat !important;
      background-position: right top !important;
  }
  :root[lwtheme-image] #navigator-toolbox:-moz-lwtheme {
      background-image:    var(--lwt-additional-images) !important; /* Original: var(--lwt-header-image), var(--lwt-additional-images); */
      background-repeat:   var(--lwt-background-tiling) !important;
      background-position: var(--lwt-background-alignment) !important;
      background-color:    unset !important; /* Original:  var(--lwt-accent-color) */
  }

  /* Navbar Border */
  #navigator-toolbox:-moz-lwtheme {
    --tabs-border-color: rgba(0,0,0,.3);
  }

  /** Windows 7 - Compatibility ***********************************************/
  @media (-moz-os-version: windows-win7) {
    /* Header Color */
    :root:not([lwtheme-image]) #navigator-toolbox:-moz-lwtheme {
      background-color: var(--lwt-accent-color) !important;
    }
    #TabsToolbar:-moz-lwtheme {
      color: var(--lwt-text-color) !important;

      /* Remove Aero */
      /* Original: radial-gradient(eclipse at bottom, rgba(255, 255, 255, 0.8), rgba(255, 255, 255, 0.5) 80%, transparent) */
      background-image: unset !important;
    }
  }

  /** Windows System Default Theme - Use acccent color ************************/
  @media (-moz-windows-accent-color-in-titlebar) {
    /* Tab Bar */
    :root[tabsintitlebar]:not(:-moz-window-inactive, :-moz-lwtheme) .titlebar-color,
    :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) .titlebar-color {
      color: -moz-accent-color-foreground;
      background-color: -moz-accent-color;
    }

    :root[tabsintitlebar]:not(:-moz-window-inactive, :-moz-lwtheme) .toolbar-items,
    :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) .toolbar-items {
      --toolbarbutton-icon-fill: -moz-accent-color-foreground;
      --toolbarbutton-hover-background: color-mix(in srgb, -moz-accent-color-foreground 10%, transparent);
      --toolbarbutton-active-background: color-mix(in srgb, -moz-accent-color-foreground 15%, transparent);
    }

    /* URL Bar */
    :root[tabsintitlebar]:not(:-moz-window-inactive, :-moz-lwtheme),
    :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) {
      --focus-outline-color: -moz-accent-color !important;
    }

    :root[tabsintitlebar]:not(:-moz-window-inactive, :-moz-lwtheme) #urlbar[open] > #urlbar-background,
    :root[tabsintitlebar][lwt-default-theme-in-dark-mode]:not(:-moz-window-inactive) #urlbar[open] > #urlbar-background {
      border-color: color-mix(in srgb, -moz-accent-color 50%, transparent) !important; /* Like: --toolbar-field-focus-border-color */
    }
  }

  /** Reduce Padding **********************************************************/
  /*= Root - Reduce Padding ==================================================*/
  :root {
    /* Tab Bar */
    --inline-tab-padding:      6px !important; /* Original: 8px */

    /* Panel */
    --arrowpanel-menuicon-padding: 8px;
    --arrowpanel-menuitem-margin: 0 var(--arrowpanel-menuicon-padding) !important; /* Original: 0 8px */
    --arrowpanel-menuitem-padding: 5px !important; /* Original: 8px */
    --arrowpanel-padding:        0.8em !important; /* Original: 16px or .cui-widget-panel, .cui-widget-panel::part(arrowcontent) => 4px 0 */
  }

  :root[uidensity=compact] {
    /* Tool Bar */
    --toolbarbutton-outer-padding: 2px !important; /* Original: 3px, General is 2px */

    /* Panel */
    --arrowpanel-menuitem-padding: 3px  !important; /* Original: 8px */
  }

  :root[uidensity=touch] {
    /* Tab Bar - Like Original */
    --proton-tab-block-margin: 4px !important; /* Original: 4px */
    --tab-block-margin:        4px !important; /* New version of --proton-tab-block-margin */
    --inline-tab-padding:      8px !important; /* Original: 8px */

    /* Panel - Like Original */
    --arrowpanel-menuitem-padding: 8px  !important; /* Original: 8px */
  }

  /*= Tab Bar - Reduce Width, Show more tabs =================================*/
  .titlebar-spacer[type="pre-tabs"] {
    width: 30px !important; /* Original: 40px */
  }
  .titlebar-spacer[type="post-tabs"] {
    width: 25px !important; /* Original: 40px */
  }

  :root {
    --newtab-button-minus-width-padding: 2px;
    --newtab-button-width-padding: calc(var(--toolbarbutton-inner-padding) - var(--newtab-button-minus-width-padding));
  }
  #new-tab-button     > .toolbarbutton-icon,
  #alltabs-button     > .toolbarbutton-badge-stack {
    /* Original: calc(2 * var(--toolbarbutton-inner-padding) + 16px) */
    width: calc(2 * var(--newtab-button-width-padding) + 16px) !important;

    /* Original: --toolbarbutton-inner-padding */
    padding-left:  var(--newtab-button-width-padding) !important;
    padding-right: var(--newtab-button-width-padding) !important;
  }

  #tabbrowser-tabs[haspinnedtabs]:not([positionpinnedtabs]) > #tabbrowser-arrowscrollbox > .tabbrowser-tab[first-visible-unpinned-tab] {
    margin-inline-start: 1px !important;
  }

  :root:not([uidensity=touch]) #tabbrowser-arrowscrollbox {
    --scrollbtn-inner-padding: 1px;
    --scrollbtn-outer-padding: 3px;
  }
  #scrollbutton-up {
    padding-left:  var(--scrollbtn-inner-padding, 4px) !important; /* Original: 4px */
    padding-right: var(--scrollbtn-outer-padding, 4px) !important;
  }
  #scrollbutton-down {
    padding-left:  var(--scrollbtn-outer-padding, 4px) !important; /* Original: 4px */
    padding-right: var(--scrollbtn-inner-padding, 4px) !important;
  }

  :root:not([uidensity=touch]) #new-tab-button, #alltabs-button {
    --toolbarbutton-outer-padding: 1px; /* Original: 2px*/
  }

  /* Tab - Max Size */
  .tabbrowser-tab[fadein]:not([pinned]):not([style*="max-width"]) {
    max-width: 225px !important; /* Lepton: 240px */
  }

  /* neighbouring tabs should "pinch" together */
  .tabbrowser-tab {
    padding-inline: 1px !important;
  }

  .tabbrowser-tab:not([last-visible-tab]) {
    margin-inline-end: -.5px !important;
  }

  /*= Tab Bar - Reduce Height, Show more contents ============================*/
  /* Toolbar Height */
  :root:not([uidensity=touch]) #TabsToolbar {
    --toolbarbutton-inner-padding: 9px; /* Original: calc((var(--tab-min-height) - 16px) / 2) = 10px */
  }

  :root:not([uidensity]) #TabsToolbar {
    --tab-min-height: 38px !important;
  }
  :root[uidensity=compact] #TabsToolbar {
    --tab-min-height: 29px !important;
  }

  /* Scroll Button - Size Fix */
  :root:not([uidensity=touch]) #tabbrowser-arrowscrollbox {
    --scrollbtn-vertical-padding: 3px;
    --scrollbtn-vertical-border:  2px;
    --scrollbtn-border-radius:    7px;
  }
  #scrollbutton-up,
  #scrollbutton-down {
    /* Original: var(--toolbarbutton-inner-padding) calc(var(--toolbarbutton-inner-padding) - 6px) = 9px */
    /* https://github.com/mozilla/gecko-dev/blob/71b1259afd1cdaf41871ae675c2dadb967ea5b34/browser/themes/shared/toolbarbuttons.inc.css#L142 */
    padding-top:    var(--scrollbtn-vertical-padding, var(--toolbarbutton-inner-padding)) !important;
    padding-bottom: var(--scrollbtn-vertical-padding, var(--toolbarbutton-inner-padding)) !important;

    /* Original: 4px */
    border-top-width:    var(--scrollbtn-vertical-border, 4px) !important;
    border-bottom-width: var(--scrollbtn-vertical-border, 4px) !important;
    /* Original: calc(var(--tab-border-radius) + 4px) = 8px */
    border-radius: var(--scrollbtn-border-radius, calc(var(--tab-border-radius) + 4px)) !important;
  }

  :root[tabsintitlebar]:not([uidensity=compact]) #toolbar-menubar[autohide="true"] {
    height: calc(var(--tab-min-height) - var(--tabs-navbar-shadow-size) - 2px); /* Compact: 28px, Normal: 33px, Touch: 38px */
  }

  /* Pinned Tab - Titlechanged Indicator position fix */
  :root:not([uidensity=touch]) .tabbrowser-tab:is([image], [pinned]) > .tab-stack > .tab-content[attention]:not([selected="true"]),
  :root:not([uidensity=touch]) .tabbrowser-tab > .tab-stack > .tab-content[pinned][titlechanged]:not([selected="true"]) {
    /* Original: center bottom calc(6.5px + var(--tabs-navbar-shadow-size)); */
    background-position-y: bottom calc(4.5px + var(--tabs-navbar-shadow-size)) !important;
  }
  :root[uidensity=compact] .tabbrowser-tab:is([image], [pinned]) > .tab-stack > .tab-content[attention]:not([selected="true"]),
  :root[uidensity=compact] .tabbrowser-tab > .tab-stack > .tab-content[pinned][titlechanged]:not([selected="true"]) {
    /* Original: center bottom calc(6.5px + var(--tabs-navbar-shadow-size)); */
    background-position-y: bottom calc(.5px + var(--tabs-navbar-shadow-size)) !important;
  }

  /*= URL Bar - Reduce Padding ===============================================*/
  :root:not([uidensity=touch]) #urlbar-container, #search-container {
    padding-block: 2px; /* Original: 4px */
    margin-inline: 5px; /* Original: 5px */
  }

  /* spread menu */
  :root[uidensity=compact] .urlbarView-row:not([type=tip], [type=dynamic]) {
    padding-block: 1px; /* [Compact, General]: 2px, Touch: 11px */
  }
  :root[uidensity=compact] #urlbar .search-one-offs:not([hidden]) {
    padding-block: 2px; /* [Compact, General]: 4px, Touch 11px */
  }

  /*= BookMark Bar - Reduce Height ===========================================*/
  :root[uidensity=compact] #PersonalToolbar toolbarbutton {
      margin-top: 0px; /* Original: 2px */
  }

  /*= Menu - Reduce Padding ==================================================*/
  :root {
    --menu-padding: 0.35em;
  }
  :root[uidensity=compact] {
    --menu-padding: 0.25em;
  }
  :root[uidensity=touch] {
    --menu-padding: 0.5em;
  }
  menupopup > menuitem, menupopup > menu {
    /* Original: 0.5em */
    padding-block: var(--menu-padding) !important;
  }

  @supports not -moz-bool-pref("layout.css.osx-font-smoothing.enabled") {
    :root:not([uidensity=touch]) .menu-text, .menu-iconic-text {
      padding-inline-end: 0 !important; /* Original: 2px */
    }
    :root:not([uidensity=touch]) .menupopup-arrowscrollbox {
      padding-block: 1px !important;    /* Original: 4px*/
    }
    :root:not([uidensity=touch]) #context-navigation:not([hidden]) {
      padding: 0 0 1px !important;      /* Original: 0 0 4px*/
    }
    :root:not([uidensity=touch]) .menu-right {
      margin-right: 6px !important;     /* Original: 12px */
    }
  }

  /*= Popup Panel - Reduce padding ============================================*/
  #protections-popup-main-header-label {
    height: unset !important; /* Original: 37.6px */
  }

  #identity-popup,
  #permission-popup,
  #protections-popup {
    --vertical-section-padding: 0.8em; /* Original: 0.9em */
  }

  .protections-popup-footer-button,
  .protections-popup-category {
    min-height: 24px; /* Original: 32px */
    height: unset !important;
  }

  /** Popup panel - Compact mode  */
  /* Footer Button Height */
  :root[uidensity=compact] .panel-footer.panel-footer-menulike > button {
    padding: 3px 8px !important;
  }
  /* Footer Button Height */
  :root[uidensity=compact] #protections-popup-trackersView-settings-button {
    margin: 4px 8px 0 !important;
  }
  /* not cut off for Protection popup Footer on windows */
  :root[uidensity=compact] #protections-popup-multiView #protections-popup-footer {
    padding: 3px 0 20px !important;
  }
  /* Button and disabed category in Protection popup */
  :root[uidensity=compact] #protections-popup-multiView .protections-popup-footer-button,
  :root[uidensity=compact] #protections-popup-multiView .protections-popup-category {
    height: 20px !important;
    min-height: 20px !important;
  }
  /* Footer Button in Tracking Content Panel */
  :root[uidensity=compact] #protections-popup-multiView .panel-footer.panel-footer-menulike {
    margin: 0 0 3px !important;
  }
  /* Identity popup header padding */
  :root[uidensity=compact] #identity-popup-multiView #identity-popup-mainView-panel-header {
    padding: 2px 5px !important;
  }
  /* Text When There is no trackers */
  :root[uidensity=compact] #protections-popup-no-trackers-found-description {
    margin: 2em 4em !important;
  }
  /* Download Item margin */
  :root[uidensity=compact] #downloadsListBox {
    margin: 0 !important;
  }

  /** Multi Selected Color - More Contrast ************************************/
  #tabbrowser-tabs:not([movingtab]) > #tabbrowser-arrowscrollbox > .tabbrowser-tab > .tab-stack > .tab-background[multiselected]:not([selected]):-moz-lwtheme {
    background-image: linear-gradient(var(--toolbar-bgcolor, transparent), var(--toolbar-bgcolor, transparent)),
                      linear-gradient(var(--toolbar-bgcolor), var(--toolbar-bgcolor)),
                      var(--lwt-header-image, none) !important;
  }

  .tab-background[multiselected="true"]:not([selected="true"]) > .tab-loading-burst:not([bursting]) {
    background: color-mix(in srgb, currentColor 65%, transparent);
    opacity: .3;
  }
  #TabsToolbar[brighttext] .tab-background[multiselected="true"]:not([selected="true"]) > .tab-loading-burst:not([bursting]) {
    opacity: .15;
  }

  .tab-background::before {
    transform: translateX(-2.5px) translateY(calc(-50% + 1px)) !important;
  }
  .tabbrowser-tab[last-visible-tab] .tab-background::after {
    right: 0;
    transform: translateX(1.5px) translateY(calc(-50% + 1px)) !important;
  }

  .tabbrowser-tab:is([visuallyselected], [multiselected], :hover) + .tabbrowser-tab:not([visuallyselected]) .tab-background::before,
  .tabbrowser-tab[first-visible-unpinned-tab]:is([visuallyselected], [multiselected], :hover) .tab-background::before,
  #tabbrowser-arrowscrollbox[overflowing] tab.tabbrowser-tab[first-visible-unpinned-tab] .tab-background::before {
    opacity: 0 !important;
  }

  /* Latest Tab & New tab margin */
  #tabbrowser-arrowscrollbox:not([overflowing]) .tabbrowser-tab[last-visible-tab] {
    margin-inline-end: 1px !important;
  }

  /* New tab button - Smaller button ******************************************/
  :root:not([uidensity=touch]) #tabs-newtab-button > .toolbarbutton-icon {
    --toolbarbutton-inner-padding: calc((var(--tab-min-height) - 16px) / 2 - 1px);
  }

  :root:not([uidensity=compact]) #tabs-newtab-button > .toolbarbutton-icon {
    margin-left: 2px;
  }
  :root[uidensity=compact] #tabs-newtab-button > .toolbarbutton-icon {
    margin-left: 1px;
  }

  /** Clipped tabs - Letters cleary *******************************************/
  #tabbrowser-tabs[closebuttons=activetab] .tab-content:not([pinned]) {
    padding-inline-start: 8px !important;
  }

  #tabbrowser-tabs[closebuttons="activetab"] > #tabbrowser-arrowscrollbox > .tabbrowser-tab:not([pinned]) > .tab-stack > .tab-content > .tab-close-button:not([selected="true"]) {
    display: -moz-inline-box !important;
  }

  #tabbrowser-tabs[closebuttons=activetab] .tabbrowser-tab:not([visuallyselected], :hover) .tab-close-button {
    visibility: collapse !important;
  }

  #tabbrowser-tabs[closebuttons=activetab] .tab-label-container[textoverflow][labeldirection="ltr"]:not([pinned]),
  #tabbrowser-tabs[closebuttons=activetab] .tab-label-container[textoverflow]:not([labeldirection]):-moz-locale-dir(ltr):not([pinned]) {
    mask-image: linear-gradient(to right, black 70%, transparent) !important;
  }

  #tabbrowser-tabs[closebuttons=activetab] .tab-label-container[textoverflow][labeldirection="rtl"]:not([pinned]),
  #tabbrowser-tabs[closebuttons=activetab] .tab-label-container[textoverflow]:not([labeldirection]):-moz-locale-dir(rtl):not([pinned]) {
    mask-image: linear-gradient(to left, black 70%, transparent) !important;
  }

  /** Sound Tab - Hide Label **************************************************/
  .tab-secondary-label:is([soundplaying], [muted], [activemedia-blocked], [pictureinpicture]){
    display: none !important;
  }

  /** Sound Tab - Show with Favicons ******************************************/
  /* Makes the favicons always visible (also on hover) */
  .tab-icon-image:not([pinned]){
    opacity: 1 !important
  }

  /* Makes the speaker icon to always appear if the tab is playing (not only on hover) */
  .tab-icon-overlay:not([crashed]),
  .tab-icon-overlay[pinned][crashed][selected] {
    /* Position */
    top: -3.5px !important;
    inset-inline-end: -9px !important;
    z-index: 1 !important;

    /* Shape */
    padding: 1.5px !important;
    border-radius: 10px !important;
    width:  17px !important;
    height: 17px !important;
  }
  .tab-icon-overlay:not([sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked]) {
    /* Color */
    color:  currentColor !important;
    stroke: transparent !important;
    background: transparent !important;
    fill-opacity: 0.8 !important;
    opacity: 1 !important;
  }
  .tab-icon-overlay:not([pinned], [sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked]) {
    margin-inline-end: 9.5px !important;
  }

  /* None exist favicon */
  .tabbrowser-tab:not([image]) .tab-icon-overlay:not([pinned], [sharing],[crashed]) {
    top: 0 !important;
    inset-inline-end: 0 !important;
    margin-inline-end: 5.5px !important;
    padding: 2px 0 !important;
  }

  /* Busy - Show */
  .tab-throbber[busy], .tab-icon-pending[busy] {
    opacity: 1 !important;
  }

  /* Busy - Overlay Position */
  .tabbrowser-tab:not([pinned])[busy] .tab-icon-overlay:is([soundplaying], [muted], [activemedia-blocked]) {
    transform: translateX(-.5px) translateY(-2.5px);
  }
  .tabbrowser-tab:not([image]) .tab-icon-overlay:not([pinned], [sharing],[crashed])[busy] {
    top: -3.5px !important;
    inset-inline-end: -9px !important;
    margin-inline-end: 9.5px !important;
    padding: 1.5px !important;
  }

  /* Hover */
  .tab-icon-overlay:not([crashed])[soundplaying]:hover,
  .tab-icon-overlay:not([crashed])[muted]:hover,
  .tab-icon-overlay:not([crashed])[activemedia-blocked]:hover {
    color:  var(--toolbar-bgcolor, white) !important;
    stroke: var(--lwt-tab-text, var(--toolbar-color)) !important;
    background-color: var(--lwt-tab-text, var(--toolbar-color)) !important;
    fill-opacity: 0.95 !important;
  }

  #TabsToolbar[brighttext] .tab-icon-overlay:not([crashed])[soundplaying]:hover,
  #TabsToolbar[brighttext] .tab-icon-overlay:not([crashed])[muted]:hover,
  #TabsToolbar[brighttext] .tab-icon-overlay:not([crashed])[activemedia-blocked]:hover {
    color: var(--toolbar-bgcolor, black) !important;
  }

  .tabbrowser-tab:not([image]) .tab-icon-overlay:not([pinned], [sharing],[crashed]):hover {
    padding: 0 !important;
  }

  /** PictureInPicture Tab - Show PIP Icon ************************************/
  .tab-icon-sound[pictureinpicture]:not([pinned]) {
    /* Shape */
    display: -moz-inline-box !important;
    width:  14px;
    height: 14px;
    -moz-box-ordinal-group: 2 !important;

    /* Color */
    fill: currentColor;
    opacity: 0.8;
    -moz-context-properties: fill;

    /* Icon */
    list-style-image: url(chrome://global/skin/media/picture-in-picture-open.svg);
  }
  .tab-icon-sound[pictureinpicture]:not([pinned])[selected] {
    opacity: 0.95;
  }

  .tabbrowser-tab[pictureinpicture]:not([pinned]):hover .tab-close-button {
    margin-left: 0px !important;
  }

  /** Container Tab - Color line at icon's bottom *****************************/
  .tab-context-line {
    display: none;
  }

  .tab-icon-image {
    box-sizing: content-box;
    padding: 3px 0;

    border-bottom: 2px solid var(--identity-icon-color);
  }

  /* None exist favicon - With Sound */
  .tabbrowser-tab:not([image]) .tab-icon-overlay:not([pinned], [sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked]) {
    box-sizing: content-box;
    padding: 3px 0;

    border-radius: 0 !important;
    border-bottom: 2px solid var(--identity-icon-color);
  }
  .tabbrowser-tab:not([image]) .tab-icon-overlay:not([pinned], [sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked]):hover {
    padding: 0;

    border-radius: 10px !important;
    border-bottom: none;
  }

  /* Pinned Tab - Titlechanged Indicator override */
  .tabbrowser-tab:is([image], [pinned]) > .tab-stack > .tab-content[attention]:not([selected="true"]) .tab-icon-image,
  .tabbrowser-tab > .tab-stack > .tab-content[pinned][titlechanged]:not([selected="true"]) .tab-icon-image {
    border-bottom: 2px solid transparent !important;
  }

  .tabbrowser-tab:is([image], [pinned])[usercontextid] > .tab-stack > .tab-content[attention]:not([selected="true"]),
  .tabbrowser-tab[usercontextid] > .tab-stack > .tab-content[pinned][titlechanged]:not([selected="true"]) {
    /* Original: radial-gradient(circle, var(--attention-icon-color), var(--attention-icon-color) 2px, transparent 2px); */
    --dotted-identity-image: radial-gradient(circle, var(--identity-icon-color), var(--identity-icon-color) 2px, transparent 2px);
    background-image: var(--dotted-identity-image), var(--dotted-identity-image), var(--dotted-identity-image) !important;
    background-position-x: 32%, 50%, 70% !important;
  }
  :root[uidensity=compact] .tabbrowser-tab:is([image], [pinned])[usercontextid] > .tab-stack > .tab-content[attention]:not([selected="true"]),
  :root[uidensity=compact] .tabbrowser-tab[usercontextid] > .tab-stack > .tab-content[pinned][titlechanged]:not([selected="true"]) {
    /* Original: radial-gradient(circle, var(--attention-icon-color), var(--attention-icon-color) 2px, transparent 2px); */
    var(--dotted-identity-image) !important;
    background-position-x: 30%, 50%, 70% !important;
  }

  /* Pinned Tab - Titlechanged & soundplaying */
  .tabbrowser-tab:is([image], [pinned])[usercontextid]:is([soundplaying], [muted], [activemedia-blocked]) > .tab-stack > .tab-content[attention]:not([selected="true"]),
  .tabbrowser-tab[usercontextid]:is([soundplaying], [muted], [activemedia-blocked]) > .tab-stack > .tab-content[pinned][titlechanged]:not([selected="true"]) {
    background-position-x: calc(32% - 1px), calc(50% - 1px), calc(70% - 1px) !important;
  }
  :root[uidensity=compact] .tabbrowser-tab:is([image], [pinned])[usercontextid]:is([soundplaying], [muted], [activemedia-blocked]) > .tab-stack > .tab-content[attention]:not([selected="true"]),
  :root[uidensity=compact] .tabbrowser-tab[usercontextid]:is([soundplaying], [muted], [activemedia-blocked]) > .tab-stack > .tab-content[pinned][titlechanged]:not([selected="true"]) {
    var(--dotted-identity-image) !important;
    background-position-x: calc(30% - 1px), calc(50% - 1px), calc(70% - 1px) !important;
  }

  /** Crashed Tab - Don't show Favicons ***************************************/
  .tab-icon-image[crashed] {
    display: none !important;
  }

  /** Panel - Icons ***********************************************************/
  /*= Padding ================================================================*/
  :root {
    --arrowpanel-menublank-padding: calc(var(--arrowpanel-menuicon-padding) * 2 + 8px) !important;
    --arrowpanel-menuimageblank-padding: calc(var(--arrowpanel-menuitem-padding) - 2px) !important;
  }

  #downloadsHistory .button-text,
  .subviewbutton > .toolbarbutton-text {
    padding-inline-start: var(--arrowpanel-menuicon-padding) !important;
  }
  .toolbaritem-combined-buttons > .subviewbutton:not(.subviewbutton-iconic) > .toolbarbutton-text {
    padding-inline-start: 0 !important;
  }
  #panelMenu_bookmarksMenu .subviewbutton[disabled=true] .toolbarbutton-text,
  #appMenu_historyMenu     .subviewbutton[disabled=true] .toolbarbutton-text {
    padding-inline-start: var(--arrowpanel-menublank-padding) !important;
  }
  #appMenu-proton-update-banner .toolbarbutton-text {
    margin-inline-start: 0 !important;
  }

  #appMenu-multiView .subviewbutton::before,
  #appMenu-proton-update-banner::before {
    display: -moz-inline-box;
    margin-inline-end: var(--arrowpanel-menuicon-padding);
    width:  16px !important;
    height: 16px !important;
  }
  #appMenu-proton-update-banner {
    margin-bottom: 2px !important;
  }
  #appMenu-proton-update-banner::before {
    margin-inline-start: var(--arrowpanel-menuitem-padding) !important;
  }
  #appMenu-fxa-status2,
  #appMenu-zoom-controls2 {
    align-items: center;
    padding-top:    var(--arrowpanel-menuimageblank-padding) !important;
    padding-bottom: var(--arrowpanel-menuimageblank-padding) !important;
  }
  #appMenu-zoom-controls2::before {
    margin-inline-end: 0 !important;
  }

  /* Icons Color */
  #appMenu-multiView .subviewbutton::before,
  #appMenu-proton-update-banner::before,
  #downloadsHistory .button-icon,
  .subviewbutton > image {
    fill: currentColor !important;
    fill-opacity: var(--toolbarbutton-icon-fill-opacity) !important;
    -moz-context-properties: fill !important;
  }
  #appMenu-zoomReduce-button2 > .toolbarbutton-icon,
  #appMenu-zoomEnlarge-button2 > .toolbarbutton-icon {
    stroke: var(--zoom-controls-bgcolor, var(--button-bgcolor, ButtonFace)) !important;
    -moz-context-properties: fill, stroke !important;
  }
  #appMenu-zoomReduce-button2:not([disabled], [open], :active):is(:hover) > .toolbarbutton-icon, #appMenu-zoomEnlarge-button2:not([disabled], [open], :active):is(:hover) > .toolbarbutton-icon {
    stroke: var(--button-hover-bgcolor) !important;
  }

  .subviewbutton[disabled=true] > image {
    /* Ghost icons when disabled */
    opacity: 0.4;
  }

  /*= Panel - Main ===========================================================*/
  #appMenu-proton-addon-banners > .addon-banner-item > .toolbarbutton-icon {
    display: -moz-inline-box !important;
    margin-inline-start: var(--arrowpanel-menuicon-padding);
    -moz-box-ordinal-group: 0 !important;
  }

  #appMenu-proton-update-banner::before {
    content: url(chrome://browser/skin/whatsnew.svg);
  }
  #appMenu-fxa-status2::before { /* Don't exist img tag */
    content: url(chrome://browser/skin/fxa/avatar-empty.svg);
  }
  #appMenu-fxa-status2:is([fxastatus=signedin], [fxastatus=unverified], [fxastatus=login-failed])::before {
    display: none;
  }
  #appMenu-fxa-status2:is([fxastatus=signedin], [fxastatus=unverified], [fxastatus=login-failed]) #appMenu-fxa-label2::before {
    /* url("https://profile.accounts.firefox.com/v1/avatar/a") */
    content: '';
    border-radius: 50% !important;
    background-size: 16px !important;
    background-image: var(--avatar-image-url) !important;
  }

  #appMenu-new-tab-button2 {
    list-style-image: url(chrome://browser/skin/new-tab.svg);
  }
  #appMenu-new-window-button2 {
    list-style-image: url(chrome://browser/skin/window.svg);
  }
  #appMenu-new-private-window-button2 {
    list-style-image: url(chrome://browser/skin/privateBrowsing.svg);
  }

  #appMenu-bookmarks-button{
    list-style-image: url(chrome://browser/skin/bookmark.svg);
  }
  #appMenu-history-button {
    list-style-image: url(chrome://browser/skin/history.svg);
  }
  #appMenu-downloads-button {
    list-style-image: url(chrome://browser/skin/downloads/downloads.svg);
  }
  #appMenu-passwords-button {
    list-style-image: url(chrome://browser/skin/login.svg);
  }
  #appMenu-extensions-themes-button {
    list-style-image: url(chrome://mozapps/skin/extensions/extension.svg);
  }

  #appMenu-print-button2 {
    list-style-image: url(chrome://global/skin/icons/print.svg);
  }
  #appMenu-save-file-button2 {
    list-style-image: url(chrome://browser/skin/save.svg);
  }
  #appMenu-find-button2 {
    list-style-image: url(chrome://global/skin/icons/search-glass.svg);
  }
  #appMenu-zoom-controls2::before {
    content: url(./icons/screenshot.svg);
  }

  #appMenu-settings-button {
    list-style-image: url(chrome://global/skin/icons/settings.svg);
  }
  #appMenu-more-button2 {
    list-style-image: url(chrome://browser/skin/ion.svg);
  }
  #appMenu-help-button2 {
    list-style-image: url(chrome://global/skin/icons/help.svg);
  }

  #appMenu-quit-button2 {
    list-style-image: url(./icons/quit.svg);
  }

  /*= Panel - Account ========================================================*/
  #PanelUI-fxa-menu-connect-device-button  .toolbarbutton-icon,
  #PanelUI-fxa-menu-account-signout-button .toolbarbutton-icon {
    width:  16px !important;
    height: 16px !important;
  }

  /* Default */
  #fxa-menu-avatar {
    display: -moz-inline-box !important;
    margin-inline-end: var(--arrowpanel-menuicon-padding);
  }

  .syncNowBtn {
    visibility: visible !important;
    -moz-box-ordinal-group: 1 !important;
    margin-inline-end: var(--arrowpanel-menuicon-padding);
  }
  #PanelUI-fxa-menu-setup-sync-button {
    list-style-image: url(chrome://browser/skin/sync.svg);
  }

  #PanelUI-fxa-menu-connect-device-button {
    list-style-image: url(chrome://browser/skin/fxa/add-device.svg);
  }
  #PanelUI-fxa-menu-sendtab-button {
    list-style-image: url(./icons/send-to-device.svg);
  }
  #PanelUI-fxa-menu-sync-prefs-button,
  #PanelUI-remotetabs-view-managedevices {
    list-style-image: url(chrome://global/skin/icons/settings.svg);
  }
  #PanelUI-fxa-menu-account-signout-button {
    list-style-image: url(./icons/sign-out.svg);
  }

  .PanelUI-remotetabs-notabsforclient-label {
    margin-inline-start: calc(var(--arrowpanel-menuicon-padding) + var(--arrowpanel-menuitem-padding)) !important;
    padding-inline-start: var(--arrowpanel-menublank-padding) !important;
  }

  /* Change Separator */
  #PanelUI-fxa-menu::before{
    content: "";
    display: -moz-box;
    border-bottom: 1px solid var(--panel-separator-color);
    margin: var(--panel-separator-margin);
    padding: 0;
  }
  #PanelUI-fxa-menu > :first-child{
    -moz-box-ordinal-group: 0;
  }
  #PanelUI-sign-out-separator {
    display: none;
  }
  .pageAction-sendToDevice-device.subviewbutton.sync-menuitem.sendtab-target[clientType=""] {
    list-style-image: url(./icons/send-to-device.svg);
  }
  .pageAction-sendToDevice-device.subviewbutton.sync-menuitem.sendtab-target:not([clientType]) {
    list-style-image: url(chrome://global/skin/icons/settings.svg);
  }

  /*= Panel - Bookmark =======================================================*/
  #panelMenuBookmarkThisPage {
    list-style-image: url(chrome://browser/skin/bookmark-hollow.svg);
  }
  panelMenuBookmarkThisPage[starred] {
    list-style-image: url(chrome://browser/skin/bookmark.svg);
  }

  #panelMenu_searchBookmarks {
    list-style-image: url(chrome://global/skin/icons/search-glass.svg);
  }
  #panelMenu_viewBookmarksToolbar {
    list-style-image: url(chrome://browser/skin/bookmarks-toolbar.svg);
  }

  #panelMenu_showAllBookmarks {
    list-style-image: url(chrome://browser/skin/bookmark-star-on-tray.svg);
  }

  /*= Panel - History ========================================================*/
  #appMenuRecentlyClosedTabs {
    list-style-image: url(chrome://browser/skin/tab.svg);
  }
  #appMenuRecentlyClosedWindows {
    list-style-image: url(chrome://browser/skin/window.svg);
  }
  #appMenuRestoreSession {
    list-style-image: url(./icons/restore-session.svg);
  }
  #appMenuClearRecentHistory {
    list-style-image: url(chrome://browser/skin/forget.svg);
  }

  #PanelUI-historyMore {
    list-style-image: url(chrome://browser/skin/history.svg);
  }

  #appMenu-library-recentlyClosedTabs {
    list-style-image: url(./icons/movetowindow-16.svg);
  }
  #appMenu-library-recentlyClosedWindows {
    list-style-image: url(./icons/restore-session.svg);
  }

  /*= Panel - More tools =====================================================*/
  #appmenu-moreTools-button {
    list-style-image: url(chrome://browser/skin/customize.svg);
  }

  #appmenu-developer-tools-view  .subviewbutton:nth-child(1) {  /* Web Developer Tools */
    list-style-image: url(chrome://browser/skin/developer.svg);
  }
  #appmenu-developer-tools-view  .subviewbutton:nth-child(2) {  /* Task Manager */
    list-style-image: url(./icons/performance.svg);
  }
  #appmenu-developer-tools-view  .subviewbutton:nth-child(3) {  /* Remote Debugging - Edge bug.svg */
    list-style-image: url(./icons/bug.svg);
  }
  #appmenu-developer-tools-view  .subviewbutton:nth-child(4) {  /* Browser Toolbox - Edge webdeveloper.svg */
    list-style-image: url(./icons/webdeveloper.svg);
  }
  #appmenu-developer-tools-view  .subviewbutton:nth-child(5) {  /* Browser Content Toolbaox -  */
    list-style-image: url(./icons/command-frames.svg);
  }
  #appmenu-developer-tools-view  .subviewbutton:nth-last-child(5) {  /* Browser Console */
    list-style-image: url(chrome://devtools/skin/images/command-console.svg);
  }
  #appmenu-developer-tools-view  .subviewbutton:nth-last-child(4) {  /* Responsive Design Mode */
    list-style-image: url(./icons/command-responsivemode.svg);
  }
  #appmenu-developer-tools-view  .subviewbutton:nth-last-child(3) {  /* Eyedropper */
    list-style-image: url(chrome://devtools/skin/images/command-eyedropper.svg);
  }
  #appmenu-developer-tools-view  .subviewbutton:nth-last-child(2) {  /* Page Source - Edge file-search.svg */
    list-style-image: url(./icons/search-file.svg);
  }
  #appmenu-developer-tools-view  .subviewbutton:nth-last-child(1) { /* Extensions for Devel */
    list-style-image: url(chrome://devtools/skin/images/debugging-addons.svg);
  }
  #appmenu-developer-tools-view .subviewbutton:last-child {
    margin-bottom: 6px !important;
  }

  /*= Panel - Help ===========================================================*/
  #appMenu_menu_openHelp {
    list-style-image: url(chrome://global/skin/icons/help.svg);
  }
  #appMenu_feedbackPage {
    list-style-image: url(./icons/send.svg);
  }
  #appMenu_helpSafeMode {
    list-style-image: url(chrome://devtools/skin/images/debugging-workers.svg);
  }
  #appMenu_troubleShooting {
    list-style-image: url(chrome://global/skin/icons/more.svg);
  }
  #appMenu_help_reportSiteIssue {
    list-style-image: url(chrome://global/skin/icons/lightbulb.svg);
  }
  #appMenu_menu_HelpPopup_reportPhishingtoolmenu {
    list-style-image: url(chrome://global/skin/icons/warning.svg);
  }
  #appMenu_aboutName{
    list-style-image: url(chrome://global/skin/icons/info.svg);
  }

  /*= Panel - Library ========================================================*/
  #appMenu-library-bookmarks-button {
    list-style-image: url(chrome://browser/skin/bookmark.svg);
  }
  #appMenu-library-history-button {
    list-style-image: url(chrome://browser/skin/history.svg);
  }
  #appMenu-library-downloads-button{
    list-style-image: url(chrome://browser/skin/downloads/downloads.svg);
  }

  /*= Panel - Downloads ======================================================*/
  #downloadsHistory {
    list-style-image: url(chrome://browser/skin/downloads/downloads.svg);
  }
  #downloadsHistory .box-inherit.button-box {
    display: -moz-inline-box !important;
  }

  /*= Toolbar - Overflow Menu ================================================*/
  #overflowMenu-customize-button {
    list-style-image: url(chrome://browser/skin/customize.svg);
  }

  /*= Tabbar - All Tab Menu ==================================================*/
  #allTabsMenu-undoCloseTab {
    list-style-image: url(chrome://global/skin/icons/undo.svg);
  }
  #allTabsMenu-searchTabs {
    list-style-image: url(chrome://global/skin/icons/search-glass.svg);
  }
  #allTabsMenu-containerTabsButton {
    list-style-image: url(./icons/container-openin-16.svg);
  }

  #allTabsMenu-hiddenTabsButton {
    list-style-image: url(./icons/password-hide.svg);
  }

  #allTabsMenu-containerTabsView .subviewbutton:last-child {
    list-style-image: url(chrome://global/skin/icons/settings.svg);
  }

  /** Sound Tab - Show with Favicons */
  /* Makes the favicons always visible (also on hover) */
  .tab-icon-image:not([pinned]){
    opacity: 1 !important
  }

  /* Makes the speaker icon to always appear if the tab is playing (not only on hover) */
  .tab-icon-overlay:not([crashed]),
  .tab-icon-overlay[pinned][crashed][selected] {
    /* Position */
    top: -3.5px !important;
    inset-inline-end: -9px !important;
    z-index: 1 !important;

    /* Shape */
    padding: 1.5px !important;
    border-radius: 10px !important;
    width:  17px !important;
    height: 17px !important;
  }
  .tab-icon-overlay:not([sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked]) {
    /* Color */
    color:  currentColor !important;
    stroke: transparent !important;
    background: transparent !important;
    fill-opacity: 0.8 !important;
    opacity: 1 !important;
  }
  .tab-icon-overlay:not([pinned], [sharing], [crashed]):is([soundplaying], [muted], [activemedia-blocked]) {
    margin-inline-end: 9.5px !important;
  }

  /* None exist favicon */
  .tabbrowser-tab:not([image]) .tab-icon-overlay:not([pinned], [sharing],[crashed]) {
    top: 0 !important;
    inset-inline-end: 0 !important;
    margin-inline-end: 5.5px !important;
    padding: 2px 0 !important;
  }

  /* Busy - Show */
  .tab-throbber[busy], .tab-icon-pending[busy] {
    opacity: 1 !important;
  }

  /* Busy - Overlay Position */
  .tabbrowser-tab:not([pinned])[busy] .tab-icon-overlay:is([soundplaying], [muted], [activemedia-blocked]) {
    transform: translateX(-.5px) translateY(-2.5px);
  }
  .tabbrowser-tab:not([image]) .tab-icon-overlay:not([pinned], [sharing],[crashed])[busy] {
    top: -3.5px !important;
    inset-inline-end: -9px !important;
    margin-inline-end: 9.5px !important;
    padding: 1.5px !important;
  }

  /* Hover */
  .tab-icon-overlay:not([crashed])[soundplaying]:hover,
  .tab-icon-overlay:not([crashed])[muted]:hover,
  .tab-icon-overlay:not([crashed])[activemedia-blocked]:hover {
    color:  var(--toolbar-bgcolor, white) !important;
    stroke: var(--lwt-tab-text, var(--toolbar-color)) !important;
    background-color: var(--lwt-tab-text, var(--toolbar-color)) !important;
    fill-opacity: 0.95 !important;
  }

  #TabsToolbar[brighttext] .tab-icon-overlay:not([crashed])[soundplaying]:hover,
  #TabsToolbar[brighttext] .tab-icon-overlay:not([crashed])[muted]:hover,
  #TabsToolbar[brighttext] .tab-icon-overlay:not([crashed])[activemedia-blocked]:hover {
    color: var(--toolbar-bgcolor, black) !important;
  }

  .tabbrowser-tab:not([image]) .tab-icon-overlay:not([pinned], [sharing],[crashed]):hover {
    padding: 0 !important;
  }


  /** Context Menu - Icons ****************************************************/
  /*= Layout =================================================================*/
  menupopup menuitem:not([type="checkbox"]),
  menupopup menu:not([type="checkbox"]) {
    -moz-appearance: none !important;  /* Linux: menulist */
  }

  /* Icon */
  :not(menu, #ContentSelectDropdown) > menupopup > menuitem:not(.menuitem-iconic, [type="checkbox"], .in-menulist),
  :not(menu, #ContentSelectDropdown) > menupopup > menu:not(.menu-iconic, [type="checkbox"], .in-menulist),
  #blockedPopupDontShowMessage {
    /* Color */
    -moz-context-properties: fill, fill-opacity !important;
    fill: currentColor !important;

    /* Layout */
    background-size: 16px !important;
    background-repeat: no-repeat !important;
    background-image: var(--menuitem-image);
  }

  /* For native context menus on macOS */
  @supports -moz-bool-pref("widget.macos.native-context-menus") {
    :not(menu, #ContentSelectDropdown) > menupopup > menuitem:not(.menuitem-iconic, [type="checkbox"], .in-menulist),
    :not(menu, #ContentSelectDropdown) > menupopup > menu:not(.menu-iconic, [type="checkbox"], .in-menulist) {
      list-style-image: var(--menuitem-image) !important;
    }
  }

  /* Padding */
  :root {
    --context-menu-background-padding-default: 5px;
    --context-menu-background-padding: var(--context-menu-background-padding-default);
  }
  :not(menu, #ContentSelectDropdown, #context-navigation) > menupopup > menuitem,
  :not(menu, #ContentSelectDropdown, #context-navigation) > menupopup > menu,
  #blockedPopupDontShowMessage {
    background-position: left var(--context-menu-background-padding) center !important;
    padding-inline-start: var(--context-menu-background-padding) !important;
  }

  /* Padding - Windows */
  @media (-moz-os-version: windows-win7 ),
         (-moz-os-version: windows-win8 ),
         (-moz-os-version: windows-win10) {
    :root {
      --context-menu-background-padding: 1em;
      --context-menu-text-padding: calc(var(--menu-padding) + var(--context-menu-background-padding-default) + 16px);
    }

    :not(menu, #ContentSelectDropdown, #context-navigation) > menupopup > menuitem:not(.menuitem-iconic, [type="checkbox"], .in-menulist),
    :not(menu, #ContentSelectDropdown, #context-navigation) > menupopup > menu:not(.menu-iconic, [type="checkbox"], .in-menulist),
    #blockedPopupDontShowMessage {
      padding-inline-start: calc(var(--context-menu-background-padding) + var(--context-menu-text-padding)) !important;
    }

    /* Checkbox */
    :not(menu, #ContentSelectDropdown, #context-navigation) > menupopup > menuitem[type="checkbox"][checked="false"] > .menu-iconic-left {
        padding-inline-start: var(--context-menu-text-padding);
    }
  }

  /* Padding Mac */
  @supports -moz-bool-pref("layout.css.osx-font-smoothing.enabled") {
    :root {
      --context-menu-background-padding-default: 10px;
      --context-menu-mac-padding: 21px;
    }

    /* context menu width */
    :not(menu, #ContentSelectDropdown, #context-navigation) > menupopup > menuitem:not(.menuitem-iconic, [type="checkbox"], .in-menulist),
    :not(menu, #ContentSelectDropdown, #context-navigation) > menupopup > menu:not(.menu-iconic, [type="checkbox"], .in-menulist),
    #blockedPopupDontShowMessage {
      padding-inline-end: var(--context-menu-background-padding) !important;
    }

    /* text position */
    :not(menu, #ContentSelectDropdown, #context-navigation) > menupopup > menuitem > .menu-text,
    :not(menu, #ContentSelectDropdown, #context-navigation) > menupopup > menu > menu-text {
      padding-inline-start: var(--context-menu-mac-padding) !important;
    }

    /* Checkbox menuitem, None iconic menu */
    :not(menu, #ContentSelectDropdown, #context-navigation) > menupopup > menuitem[type="checkbox"],
    :not(menu, #ContentSelectDropdown, #context-navigation) > menupopup > menu:not(.menu-iconic) {
      padding-inline-start: calc(var(--context-menu-background-padding) + var(--context-menu-mac-padding)) !important;
    }
  }

  /*= tabContextMenu =========================================================*/
  #context_openANewTab {
    --menuitem-image: url(chrome://browser/skin/new-tab.svg);
  }

  #context_reloadTab,
  #context_reloadSelectedTabs {
    --menuitem-image: url(chrome://browser/skin/reload.svg);
  }
  #context_toggleMuteTab,
  #context_toggleMuteSelectedTabs {
    --menuitem-image: url(chrome://browser/skin/tabbrowser/tab-audio-muted-small.svg);
  }
  #context_toggleMuteTab[muted],
  #context_toggleMuteSelectedTabs[muted] {
    --menuitem-image: url(chrome://browser/skin/tabbrowser/tab-audio-playing-small.svg);
  }
  #context_pinTab,
  #context_pinSelectedTabs {
    --menuitem-image: url(./icons/pin-tab.svg);
  }
  #context_unpinTab,
  #context_unpinSelectedTabs {
    --menuitem-image: url(./icons/unpin-tab.svg);
  }
  #context_duplicateTab,
  #context_duplicateTabs {
    --menuitem-image: url(./icons/tab-copy.svg);
  }

  #context_bookmarkTab,
  #context_bookmarkSelectedTabs {
    --menuitem-image: url(chrome://browser/skin/bookmark.svg);
  }
  #context_moveTabOptions {
    --menuitem-image: url(./icons/arrow-swap.svg);
  }
  #context_sendTabToDevice {
    --menuitem-image: url(./icons/send-to-device.svg);
  }
  #context_shareTabURL { /* At windows */
    --menuitem-image: url(./icons/share.svg);
  }
  #context_reopenInContainer {
    --menuitem-image: url(./icons/container-openin-16.svg);
  }
  #context_selectAllTabs {
    --menuitem-image: url(./icons/tab-multiple.svg);
  }

  #context_closeTab {
    --menuitem-image: url(chrome://global/skin/icons/close.svg);
  }
  #context_closeTabOptions {
  }
  #context_undoCloseTab {
    --menuitem-image: url(chrome://global/skin/icons/undo.svg);
  }

  /*= new-tab-button-popup ===================================================*/
  #new-tab-button-popup > menuitem[command="Browser:OpenAboutContainers"] {
    --menuitem-image: url(chrome://global/skin/icons/settings.svg);
  }

  /*= toolbar-context-menu ===================================================*/
  .customize-context-manageExtension {
    --menuitem-image: url(chrome://global/skin/icons/settings.svg);
  }
  .customize-context-removeExtension {
    --menuitem-image: url(chrome://global/skin/icons/delete.svg);
  }
  .customize-context-reportExtension {
    --menuitem-image: url(./icons/send.svg);
  }

  .customize-context-moveToPanel {
    --menuitem-image: url(chrome://browser/skin/pin-12.svg);
  }
  .toolbar-context-autohide-downloads-button {
    --menuitem-image: url(./icons/password-hide.svg);
  }
  .customize-context-removeFromToolbar {
    --menuitem-image: url(chrome://global/skin/icons/delete.svg);
  }
  #toolbar-context-openANewTab {
    --menuitem-image: url(chrome://browser/skin/new-tab.svg);
  }

  #toolbar-context-reloadSelectedTab,
  #toolbar-context-reloadSelectedTabs {
    --menuitem-image: url(chrome://browser/skin/reload.svg);
  }
  #toolbar-context-bookmarkSelectedTab,
  #toolbar-context-bookmarkSelectedTabs {
    --menuitem-image: url(chrome://browser/skin/bookmark.svg);
  }
  #toolbar-context-selectAllTabs {
    --menuitem-image: url(./icons/tab-multiple.svg);
  }
  #toolbar-context-undoCloseTab {
    --menuitem-image: url(chrome://global/skin/icons/undo.svg);
  }

  #toggle_toolbar-menubar { /* checkbox */
    /* --menuitem-image: url(./icons/calendar-agenda.svg); */
  }
  #toggle_PersonalToolbar { /* Also placeContext */
    --menuitem-image: url(chrome://browser/skin/bookmarks-toolbar.svg);
  }

  menuitem.viewCustomizeToolbar {
    --menuitem-image: url(chrome://browser/skin/customize.svg);
  }

  /*= blockedPopupOptions ====================================================*/
  #blockedPopupAllowSite {
    --menuitem-image: url("chrome://global/skin/icons/check.svg");
  }
  #blockedPopupOptions > menuitem[oncommand="gPopupBlockerObserver.editPopupSettings();"] {
    --menuitem-image: url("chrome://global/skin/icons/edit.svg");
  }
  #blockedPopupDontShowMessage { /* checkbox */
    --menuitem-image: url("chrome://global/skin/icons/blocked.svg");
  }

  /*= autohide-context =======================================================*/
  #autohide-context > menuitem[data-l10n-id="full-screen-autohide"] {  /* checkbox */
  }

  #autohide-context > menuitem[data-l10n-id="full-screen-exit"] {
    --menuitem-image: url(chrome://browser/skin/fullscreen-exit.svg);
  }

  /*= contentAreaContextMenu =================================================*/
  #context-viewsource-goToLine {
    --menuitem-image: url(./icons/text-number-format.svg);
  }
  #context-viewsource-wrapLongLines { /* checkbox */
    /* --menuitem-image: url(./icons/arrow-sort-down-lines.svg); */
  }

  #context-viewsource-highlightSyntax { /* checkbox */
    /* --menuitem-image: url(./icons/code.svg); */
  }

  #spell-no-suggestions {
    --menuitem-image: url(./icons/text-proofing-tools.svg);
  }
  #spell-add-to-dictionary {
    --menuitem-image: url(./icons/book-add.svg);
  }
  #spell-undo-add-to-dictionary {
    --menuitem-image: url(chrome://global/skin/icons/undo.svg);
  }

  #context-openlinkincurrent {
    --menuitem-image: url(./icons/link-square.svg);
  }
  #context-openlinkincontainertab {
    --menuitem-image: url(chrome://browser/skin/new-tab.svg);
  }
  #context-openlinkintab {
    --menuitem-image: url(chrome://browser/skin/new-tab.svg);
  }
  #context-openlinkinusercontext-menu {
    --menuitem-image: url(./icons/container-openin-16.svg);
  }
  #context-openlink {
    --menuitem-image: url(chrome://browser/skin/window.svg);
  }
  #context-openlinkprivate {
    --menuitem-image: url(chrome://browser/skin/privateBrowsing.svg);
  }

  #context-bookmarklink {
    --menuitem-image: url(chrome://browser/skin/bookmark.svg);
  }
  #context-savelink {
    --menuitem-image: url(chrome://browser/skin/save.svg);
  }
  #context-savelinktopocket {
    --menuitem-image: url(chrome://browser/skin/pocket-outline.svg);
  }
  #context-copyemail {
    --menuitem-image: url(chrome://browser/skin/mail.svg);
  }
  #context-copylink {
    --menuitem-image: url(chrome://browser/skin/link.svg);
  }
  #context-sendlinktodevice {
    --menuitem-image: url(./icons/send-to-device.svg);
  }

  #context-media-play {
    --menuitem-image: url(chrome://global/skin/media/play-fill.svg);
  }
  #context-media-pause {
    --menuitem-image: url(chrome://global/skin/media/pause-fill.svg);
  }
  #context-media-mute {
    --menuitem-image: url(chrome://global/skin/media/audio-muted.svg);
  }
  #context-media-unmute {
    --menuitem-image: url(chrome://global/skin/media/audio.svg);
  }
  #context-media-playbackrate {
    --menuitem-image: url(./icons/time-picker.svg);
  }
  #context-media-loop { /* checkbox */
    /* --menuitem-image: url(./icons/arrow-repeat-all.svg); */
  }
  #context-leave-dom-fullscreen {
    --menuitem-image: url(chrome://global/skin/media/fullscreenExitButton.svg);
  }
  #context-video-fullscreen {
    --menuitem-image: url(chrome://global/skin/media/fullscreenEnterButton.svg);
  }
  #context-media-hidecontrols {
    --menuitem-image: url(./icons/eye-hide.svg);
  }
  #context-media-showcontrols {
    --menuitem-image: url(./icons/eye-show.svg);
  }

  #context-viewvideo {
    --menuitem-image: url(./icons/video.svg);
  }
  #context-video-pictureinpicture { /* checkbox */
    /* --menuitem-image: url(chrome://global/skin/media/picture-in-picture-open.svg); */
  }

  #context-reloadimage {
    --menuitem-image: url(./icons/image-arrow-counterclockwise.svg);
  }
  #context-viewimage {
    --menuitem-image: url(./icons/image-add.svg);
  }
  #context-saveimage {
    --menuitem-image: url(./icons/image.svg);
  }
  #context-video-saveimage {
    --menuitem-image: url(./icons/video-snapshot.svg);
  }
  #context-savevideo {
    --menuitem-image: url(./icons/video.svg);
  }
  #context-saveaudio {
    --menuitem-image: url(chrome://global/skin/media/audio.svg);
  }
  #context-copyimage-contents {
    --menuitem-image: url(./icons/image-copy.svg);
  }
  #context-copyimage,
  #context-copyvideourl,
  #context-copyaudiourl {
    --menuitem-image: url(chrome://browser/skin/link.svg);
  }
  #context-sendimage,
  #context-sendvideo,
  #context-sendaudio {
    --menuitem-image: url(chrome://browser/skin/mail.svg);
  }
  #context-viewimageinfo {
    --menuitem-image: url(chrome://global/skin/icons/info.svg);
  }
  #context-viewimagedesc {
    --menuitem-image: url(./icons/image-alt-text.svg);
  }
  #context-setDesktopBackground {
    --menuitem-image: url(./icons/resize-image.svg);
  }
  #context-ctp-play {
    --menuitem-image: url(chrome://global/skin/icons/plugin.svg);
  }
  #context-ctp-hide {
    --menuitem-image: url(chrome://global/skin/icons/plugin-blocked.svg);
  }

  #context-savepage {
    --menuitem-image: url(chrome://browser/skin/save.svg);
  }
  #context-pocket {
    --menuitem-image: url(chrome://browser/skin/pocket-outline.svg);
  }
  #context-sendpagetodevice {
    --menuitem-image: url(./icons/send-to-device.svg);
  }
  #fill-login {
    --menuitem-image: url(./icons/password.svg);
  }
  #fill-login-generated-password {
    --menuitem-image: url(chrome://browser/skin/login.svg);
  }
  #manage-saved-logins {
    --menuitem-image: url(./icons/key-multiple.svg);
  }

  #context-undo {
    --menuitem-image: url(chrome://global/skin/icons/undo.svg);
  }
  #context-redo {
  }

  #context-cut {
    --menuitem-image: url(chrome://browser/skin/edit-cut.svg);
  }
  #context-copy {
    --menuitem-image: url(chrome://browser/skin/edit-copy.svg);
  }
  #context-paste {
    --menuitem-image: url(chrome://browser/skin/edit-paste.svg);
  }
  #context-delete {
    --menuitem-image: url(chrome://global/skin/icons/delete.svg);
  }
  #context-selectall {
    --menuitem-image: url(./icons/select-all-on.svg);
  }
  #context-print-selection {
    --menuitem-image: url(chrome://global/skin/icons/print.svg);
  }

  #context-take-screenshot {
    --menuitem-image: url(chrome://browser/skin/screenshot.svg);
  }

  #context-keywordfield {
    --menuitem-image: url(chrome://browser/skin/bookmark.svg);
  }
  #context-searchselect,
  #context-searchselect-private {
    --menuitem-image: url(chrome://global/skin/icons/search-glass.svg);
  }

  #frame {
    --menuitem-image: url(./icons/command-frames.svg);
  }

  #spell-check-enabled { /* checkbox */
  }
  #spell-add-dictionaries-main {
    --menuitem-image: url(./icons/book-add.svg);
  }
  #spell-dictionaries {
    --menuitem-image: url(./icons/book.svg);
  }

  #context-bidi-text-direction-toggle {
    --menuitem-image: url(./icons/text-direction-horizontal-ltr.svg);
  }
  #context-bidi-page-direction-toggle {
    --menuitem-image: url(./icons/document-landscape-split-hint.svg);
  }

  #context-viewpartialsource-selection,
  #context-viewsource {
    --menuitem-image: url(./icons/search-file.svg);
  }
  #context-inspect-a11y {
    --menuitem-image: url(chrome://devtools/skin/images/tool-accessibility.svg);
  }
  #context-inspect {
    --menuitem-image: url(chrome://devtools/skin/images/command-pick.svg)
  }

  #context-media-eme-learnmore { /* iconic */
  }

  @supports -moz-bool-pref("layout.css.osx-font-smoothing.enabled") {
    #context-back {
      --menuitem-image: url(chrome://browser/skin/back.svg);
    }
    #context-forward {
      --menuitem-image: url(chrome://browser/skin/forward.svg);
    }
    #context-reload {
      --menuitem-image: url(chrome://browser/skin/reload.svg);
    }
    #context-stop {
      --menuitem-image: url(chrome://global/skin/icons/close.svg);
    }

    #context-bookmarkpage {
      --menuitem-image: url(chrome://browser/skin/bookmark.svg);
    }
  }

  /*= pictureInPictureToggleContextMenu ======================================*/
  #pictureInPictureToggleContextMenu > menuitem[oncommand="PictureInPicture.hideToggle();"] {
    --menuitem-image: url(./icons/eye-hide.svg);
  }

  /*= placeContext ===========================================================*/
  #placesContext_open {
    --menuitem-image: url(./icons/link-square.svg);
  }
  #placesContext_openBookmarkContainer\:tabs,
  #placesContext_openBookmarkLinks\:tabs      {
    --menuitem-image: url(./icons/movetowindow-16.svg);
  }
  #placesContext_open\:newtab,
  #placesContext_openContainer\:tabs,
  #placesContext_openLinks\:tabs {
    --menuitem-image: url(chrome://browser/skin/new-tab.svg);
  }
  #placesContext_open\:newwindow {
    --menuitem-image: url(chrome://browser/skin/window.svg);
  }
  #placesContext_open\:newprivatewindow {
    --menuitem-image: url(chrome://browser/skin/privateBrowsing.svg);
  }

  #placesContext_show_bookmark\:info,
  #placesContext_show\:info,
  #placesContext_show_folder\:info {
    --menuitem-image: url(chrome://global/skin/icons/edit.svg);
  }
  #placesContext_deleteBookmark,
  #placesContext_deleteFolder,
  #placesContext_delete,
  #placesContext_delete_history {
    --menuitem-image: url(chrome://global/skin/icons/delete.svg);
  }
  #placesContext_deleteHost {
    --menuitem-image: url(./icons/eye-hide.svg);
  }
  #placesContext_sortBy\:name {
    --menuitem-image: url(./icons/text-sort-ascending.svg);
  }

  #placesContext_cut {
    --menuitem-image: url(chrome://browser/skin/edit-cut.svg);
  }
  #placesContext_copy {
    --menuitem-image: url(chrome://browser/skin/edit-copy.svg);
  }
  #placesContext_paste_group {
    --menuitem-image: url(chrome://browser/skin/edit-paste.svg);
  }

  #placesContext_new\:bookmark {
    --menuitem-image: url(chrome://browser/skin/bookmark.svg);
  }
  #placesContext_new\:folder {
    --menuitem-image: url(chrome://global/skin/icons/folder.svg);
  }
  #placesContext_new\:separator {
    --menuitem-image: url(./icons/vertical-line.svg);
  }

  #placesContext_paste {
    --menuitem-image: url(chrome://browser/skin/edit-paste.svg);
  }

  #placesContext_createBookmark {
    --menuitem-image: url(chrome://browser/skin/bookmark.svg);
  }
  #show-other-bookmarks_PersonalToolbar { /* checkbox */
    /* --menuitem-image: url(./icons/star-line-horizontal.svg); */
  }
  #placesContext_showAllBookmarks {
    --menuitem-image: url(chrome://browser/skin/bookmark-star-on-tray.svg);
  }

  menupopup[context="placesContext"]  > .openintabs-menuitem {
    --menuitem-image: url(./icons/movetowindow-16.svg);
  }

  /*= pageActionContextMenu ==================================================*/
  .pageActionContextMenuItem.extensionPinned.extensionUnpinned.manageExtensionItem {
    --menuitem-image: url(chrome://global/skin/icons/settings.svg);
  }
  .pageActionContextMenuItem.extensionPinned.extensionUnpinned.removeExtensionItem {
    --menuitem-image: url(chrome://global/skin/icons/delete.svg);
  }

  /*= customizationPanelItemContextMenu ======================================*/
  #customizationPanelItemContextMenuUnpin {
    --menuitem-image: url(./icons/unpin-tab.svg);
  }
  .customize-context-removeFromPanel {
    --menuitem-image: url(chrome://global/skin/icons/delete.svg);
  }

  /*= customizationPaletteItemContextMenu ====================================*/
  .customize-context-addToToolbar {
    --menuitem-image: url(chrome://devtools/skin/images/dock-bottom.svg);
  }
  .customize-context-addToPanel {
    --menuitem-image: url(chrome://browser/skin/menu.svg);
  }

  /*= customizationPanelContextMenu ==========================================*/
  #customizationPanelContextMenu > menuitem[command="cmd_CustomizeToolbars"] {
    --menuitem-image: url(chrome://browser/skin/customize.svg);
  }

  /*= downloads-button-autohide-panel ========================================*/
  #downloads-button-autohide-checkbox { /* checkbox */
  }

  /*= downloadsContextMenu ===================================================*/
  .downloadPauseMenuItem {
    --menuitem-image: url(chrome://global/skin/media/pause-fill.svg);
  }
  .downloadResumeMenuItem {
    --menuitem-image: url(chrome://global/skin/media/play-fill.svg);
  }
  .downloadUnblockMenuItem {
    --menuitem-image: url(./icons/checkmark-circle.svg);
  }
  .downloadUseSystemDefaultMenuItem {
    --menuitem-image: url(chrome://browser/skin/open.svg);
  }
  .downloadAlwaysUseSystemDefaultMenuItem { /* checkbox */
  }
  .downloadShowMenuItem {
    --menuitem-image: url(chrome://global/skin/icons/folder.svg);
  }

  #downloadsContextMenu > menuitem[command="downloadsCmd_openReferrer"] {
    --menuitem-image: url(./icons/link-square.svg);
  }
  #downloadsContextMenu > menuitem[command="downloadsCmd_copyLocation"] {
    --menuitem-image: url(chrome://browser/skin/link.svg);
  }

  .downloadRemoveFromHistoryMenuItem {
    --menuitem-image: url(chrome://global/skin/icons/delete.svg);
  }
  #downloadsContextMenu > menuitem[command="downloadsCmd_clearList"],
  #downloadsContextMenu > menuitem[command="downloadsCmd_clearDownloads"] {
    --menuitem-image: url(./icons/broom.svg);
  }

  /*= SyncedTabsSidebarContext ===============================================*/
  #syncedTabsOpenSelected {
    --menuitem-image: url(./icons/link-square.svg);
  }
  #syncedTabsOpenSelectedInTab {
    --menuitem-image: url(chrome://browser/skin/new-tab.svg);
  }
  #syncedTabsOpenSelectedInWindow {
    --menuitem-image: url(chrome://browser/skin/window.svg);
  }
  #syncedTabsOpenSelectedInPrivateWindow {
    --menuitem-image: url(chrome://browser/skin/privateBrowsing.svg);
  }

  #syncedTabsBookmarkSelected {
    --menuitem-image: url(chrome://browser/skin/bookmark.svg);
  }
  #syncedTabsCopySelected {
    --menuitem-image: url(chrome://browser/skin/link.svg);
  }

  #syncedTabsOpenAllInTabs {
    --menuitem-image: url(./icons/movetowindow-16.svg);
  }
  #syncedTabsManageDevices {
    --menuitem-image: url(chrome://global/skin/icons/settings.svg);
  }
  #syncedTabsRefresh {
    --menuitem-image: url(chrome://browser/skin/sync.svg);
  }

  /*= SyncedTabsSidebarTabsFilterContext =====================================*/
  #SyncedTabsSidebarTabsFilterContext > menuitem[cmd="cmd_undo"] {
    --menuitem-image: url(chrome://global/skin/icons/undo.svg);
  }
  #SyncedTabsSidebarTabsFilterContext > menuitem[cmd="cmd_cut"] {
    --menuitem-image: url(chrome://browser/skin/edit-cut.svg);
  }
  #SyncedTabsSidebarTabsFilterContext > menuitem[cmd="cmd_copy"]{
    --menuitem-image: url(chrome://browser/skin/edit-copy.svg);
  }
  #SyncedTabsSidebarTabsFilterContext > menuitem[cmd="cmd_paste"]{
    --menuitem-image: url(chrome://browser/skin/edit-paste.svg);
  }
  #SyncedTabsSidebarTabsFilterContext > menuitem[cmd="cmd_delete"]{
    --menuitem-image: url(chrome://global/skin/icons/delete.svg);
  }

  #SyncedTabsSidebarTabsFilterContext > menuitem[cmd="cmd_selectAll"]{
    --menuitem-image: url(./icons/select-all-on.svg);
  }

  #syncedTabsRefreshFilter {
    --menuitem-image: url(chrome://browser/skin/sync.svg);
  }

  /*= urlbar-input-container =================================================*/
  #urlbar-input-container .textbox-contextmenu menuitem[cmd="cmd_undo"]  {
    --menuitem-image: url(chrome://global/skin/icons/undo.svg);
  }
  #urlbar-input-container .textbox-contextmenu menuitem[cmd="cmd_redo"]  {
  }

  #urlbar-input-container .textbox-contextmenu menuitem[cmd="cmd_cut"]  {
    --menuitem-image: url(chrome://browser/skin/edit-cut.svg);
  }
  #urlbar-input-container .textbox-contextmenu menuitem[cmd="cmd_copy"]  {
    --menuitem-image: url(chrome://browser/skin/edit-copy.svg);
  }
  #urlbar-input-container .textbox-contextmenu menuitem[cmd="cmd_paste"]  {
    --menuitem-image: url(chrome://browser/skin/edit-paste.svg);
  }
  #paste-and-go {
  }
  #urlbar-input-container .textbox-contextmenu menuitem[cmd="cmd_delete"]  {
    --menuitem-image:  url(chrome://global/skin/icons/delete.svg);
  }
  #urlbar-input-container .textbox-contextmenu menuitem[cmd="cmd_selectAll"]  {
    --menuitem-image: url(./icons/select-all-on.svg);
  }
}