А вот тут я буду настаивать: именно что не нужна. И буду аргументировать.

Решать, как отображать страницу — дело браузера, и только его. И только его же дело — учитывать при этом пожелания юзера (это, собственно, в его, браузера, интересах; чтобы его не снесли и не заменили на более вменяемый). Дело страницы — дать контент для отображения и предложить способ этого отображения, шрифты, кегли, цвета, вот это вот всё. Дело браузера — соотнести эти предложения с пожеланиями пользователя (причём последние, разумеется, в приоритере) и нарисовать результат.

Логика должна быть что-то вроде: «здесь заголовок, страница говорит что лучше 24-м кеглем, но юзер не хочет видеть кегли крупнее 16-го вообще, поэтому рисуем 16-м» или «здесь картинка, но пользователь в терминале и не хочет картинок, поэтому пишем альт (а если б хотел, мы б ему ASCII-артом эту картинку того)».

Соответственно, если юзер хочет видеть сайты в тёмном варианте, браузер должен их в тёмном варианте рисовать — всегда!

Браузер должен это делать автоматически, причём не простой инверсией цветов, конечно (глаза ж вытекут), а подставляя более-менее разумные значения. К сожалению, современный браузер для этого слишком туп, хотя по размеру он и больше на несколько порядков, чем вся операционка на моём первом компе, и это — проблема. Проблема, из-за которой и приходится колхозить тёмную тему.

Ещё раз: тёмная тема не нужна. И светлая тема не нужна. Браузер должен делать эти вещи сам. С помощью, мать его, ИИ.

Не, я согласен, автор страницы имеет право считать этот самый ИИ тупым и хотеть ему подсказать, как правильно рисовать светлый и тёмный варианты — собственно, я уже написал, как это может быть устроено. И только в этом смысле тёмные/светлые темы в вебе вообще имеют право на существование.