<speculation>It seems to be impossible to change the way a XUL control blends with the chrome of the window it lives within. All XUL elements appear to be composited on an intermediary surface, which in turn is composited with the window's surface using normal alpha blending. In PM, the root <window> element's background seems to be the lowest "layer" on that intermediary surface.</speculation> This is demonstrated by the gif below. If someone knowledgeable can confirm/correct this, that would be great.
I would like to know if it possible for PM to skip the intermediary surface and draw directly to the window's surface, including over the window chrome. The intended effect is to allow individual XUL elements to make use of mix-blend-mode to always blend with whatever is below them, which may or may not include part of the window's caption area. Given that the toolbars and buttons in the default PM theme are already half transparent, that the XUL <window> already extends into the window caption, and that PM already draws over the caption area with the appbutton and with Tabs on Top mode, it looks like maybe most or all the pieces of the puzzle already exist for this to be achieved.
Demo of the behavior outlined by the first paragraph
I couldn't find any way to inline a proper media format, like a video, into these forum posts, so please excuse the utterly massive gif. As far as gifs go, it's actually exceptionally optimized


In this demonstration, I set the home button to use the difference blend mode. The blend mode does not produce the intended result until I disable 3 specific CSS properties on the root XUL <window>. Re-enabling any one or any combination of those properties nullifies the difference blend mode. When the <window> has background: transparent, we can presume that the intermediary surface is filled with float4(?, ?, ?, 0) pixels, which of course results in no effective blending due to the destination alpha of 0. What puzzles me is when the other two properties are set (-moz-appearance: -moz-win-glass and -moz-appearance: -moz-win-borderless-glass). When set alone, they cause the <window> to acquire an off-white background, yet the elements on higher layers fail to blend with that off-white background. My best guess is that there is a distinct draw operation that draws that off-white color to the window surface immediately before drawing the intermediary surface to the window surface, and so the XUL elements continue to (not) blend with an intermediary surface that is always fully transparent at the top of each frame. What really puzzles me is when one of those -moz-appearances is set AND background: transparent is also set, as shown as the very end of the gif. Even through the background is not fully transparent background, the blend mode defies expectation and fails to have any visual effect. Perhaps there is a second intermediary surface at play here?
This demo is applicable to 7 and 8. I haven't tested PM on other OSes.
Background
I am working on a theme for PM that, in its intended form, needs control over how certain toolbar elements are blended with the underlying window chrome. For example, some elements require the multiply or screen blend mode to ensure they maintain contrast against the user's chosen window chrome color and opacity level. As far as I can tell, this is unfortunately impossible, due to the way PM effectively "atomically" blends the entire XUL <window> with the window chrome using strictly normal alpha blending. I figured it made the most sense to post this as new topic in this subforum, as opposed to in the thread I created earlier with general questions on themeing. This subject matter seems like it needs its own topic in order to be properly explored and hopefully stir up some ideas or solutions.