// Three-way theme choice (system, light, dark), stored per browser. // Loaded in so the saved theme applies before first paint. (function () { var KEY = "intent-theme"; var root = document.documentElement; function read() { try { return localStorage.getItem(KEY); } catch (e) { return null; } } function write(value) { try { if (value === "system") localStorage.removeItem(KEY); else localStorage.setItem(KEY, value); } catch (e) {} } function apply(value) { if (value === "light" || value === "dark") root.dataset.theme = value; else delete root.dataset.theme; } apply(read()); document.addEventListener("DOMContentLoaded", function () { var form = document.getElementById("theme-form"); var select = document.getElementById("theme-select"); if (!form || !select) return; select.value = root.dataset.theme || "system"; select.addEventListener("change", function () { apply(select.value); write(select.value); }); form.hidden = false; }); })();