It took longer than it should have, mostly because it kept getting deprioritized in quarterly planning. And the annoying part is: the longer you wait on dark mode, the bigger it gets. More components to adjust, more edge cases, more workflows to test.
So we stopped debating it. No justification, no comparisons. We just shipped it.