I don't know what ogx does, but normally the checkmarks in this context have appearance: auto
and -moz-default-appearance: checkbox
and as such are painted using special checkbox rendering rules. In particular, the checkmark color is derived directly from the accent-color
property, which itself controls the color of the checkbox. For example, if you set accent-color: #f58
then the checkmark is near-white, but as soon as you set accent-color: #f59
it turns dark-grey.
To get around that, you need to wholly remove the appearance with appearance: none
- of course, doing so will remove all aspects of checkbox rendering that come from appearance, so you need to manually style all their states.
Incomplete, but the idea would go something like this:
@-moz-document url-prefix("about:preferences"){
.checkbox-check{
appearance: none !important;
background: #f00;
}
.checkbox-check[checked]{
background-image: url("chrome://global/skin/icons/menu-check.svg");
}
}