Firefox has historically allowed extensive UI customization through userChrome.css, but this mechanism is neither a supported API nor a reliably documented one. It is powerful enough that many users depend on it, yet unstable enough that UI redesigns can silently break customizations or force users to reverse-engineer Firefox’s internal CSS.
The current situation creates the worst of both worlds:
Mozilla should choose a clear and user-respectful path by introducing a supported Firefox UI customization API.
At minimum, this should provide:
This does not require Mozilla to freeze the entire Firefox UI or preserve every internal CSS selector forever. It simply requires Mozilla to define and maintain a stable layer for the parts of the interface users are intentionally allowed to customize.
If Mozilla does not want to support arbitrary userChrome.css, it should either replace it with a documented customization system or clearly retire it. Leaving users with a functioning but officially unsupported modding layer makes Firefox appear customizable while shifting all maintenance costs onto users and volunteers.
Firefox’s openness is a major advantage. A documented UI customization API would make that advantage practical rather than forcing users to reverse-engineer the browser after every redesign.
Please consider this for Firefox desktop, especially in light of the Nova redesign.