X-Git-Url: http://git.shiar.net/sheet.git/blobdiff_plain/3afdb629211b357a3760e14b92e9966b2d414a0d..41af4e92ea22b885a6651537e8780d7be6d27287:/common.inc.plp
diff --git a/common.inc.plp b/common.inc.plp
index 6d6a532..4bc68a6 100644
--- a/common.inc.plp
+++ b/common.inc.plp
@@ -181,8 +181,17 @@ sub Html {
say for map { @{$_} } $meta->{raw} || ();
say '' if $Dev;
say "" for join($/,
- "if (m = window.matchMedia('(monochrome)'))",
- "(m.onchange = e => document.documentElement.classList.toggle('s-mono', e.matches))(m);",
+ "docroot = document.documentElement;",
+ "if (docroot.className == '') {",
+ "new Map([",
+ "['s-mono','(monochrome)'],",
+ "['s-dark','(prefers-color-scheme: dark)'],",
+ "['s-circus','(prefers-contrast: more)'],",
+ "]).forEach((q,c) => {",
+ "if (m = window.matchMedia(q))",
+ "(m.onchange = e => docroot.classList.toggle(c, e.matches))(m)",
+ "})",
+ "}",
);
say '';
say '';