Odoo 18 draws the unchecked checkboxes, radios and switches of the backend
with the separator gray (`--border-color`, gray-300): 1.3:1 on white, and
1.1:1 on readonly fields and list cells, which are dimmed to 50% on top.
CSS-only addon that redefines `--border-color` on `.form-check-input`:
gray-600 (4.7:1) when editable, gray-900 (3.1:1 after the dimming) when
disabled. Bootstrap reads the property only in the base border of the
control, so the checked, indeterminate, focus and hover states keep their
stock colours whatever the load order.
Closes#20
Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>