export function prefersReducedMotion() { return typeof window.matchMedia === "function" && window.matchMedia("(prefers-reduced-motion: reduce)").matches; } export function prefersColorSchemeDark() { return typeof window.matchMedia === "function" && window.matchMedia("(prefers-color-scheme: dark)").matches; } export function subscribePrefersColorSchemeChange(handler) { const mq = window.matchMedia?.("(prefers-color-scheme: dark)"); if (!mq) return; if (typeof mq.addEventListener === "function") { mq.addEventListener("change", handler); } else if (typeof mq.addListener === "function") { mq.addListener(handler); } }