color-scheme toggle

js CSS
function toggleColorScheme() {
  let cs = getComputedStyle(document.querySelector(":root")).getPropertyValue("color-scheme")
  switch (cs) {
    case "light": // light => dark
      document.querySelector(":root").style.setProperty("color-scheme", "dark");
      break;
    case "dark": // dark => light
      document.querySelector(":root").style.setProperty("color-scheme", "light");
      break;
    default: // normal or other
      if (window.matchMedia) {
        if(window.matchMedia("(prefers-color-scheme: dark)").matches) { // normal (probably light) => dark
          document.querySelector(":root").style.setProperty("color-scheme", "dark");
        } else { // light => dark
          document.querySelector(":root").style.setProperty("color-scheme", "dark");
        }
      } else { // default (probably light) => dark
        document.querySelector(":root").style.setProperty("color-scheme", "dark");
      }
  }
}