(function () { var key = 'docidava-maintenance-theme'; var root = document.documentElement; var button = document.querySelector('[data-theme-toggle]'); var media = window.matchMedia ? window.matchMedia('(prefers-color-scheme: dark)') : null; function read() { try { return window.localStorage.getItem(key); } catch (error) { return null; } } function save(theme) { try { window.localStorage.setItem(key, theme); } catch (error) { /* storage can be unavailable */ } } function apply(theme, persist) { root.setAttribute('data-theme', theme); var dark = theme === 'dark'; if (button) { button.setAttribute('aria-checked', dark ? 'true' : 'false'); button.setAttribute('aria-label', 'Dark theme'); button.setAttribute('title', dark ? 'Switch to light theme' : 'Switch to dark theme'); } if (persist) save(theme); } if (button) { button.addEventListener('click', function () { apply(root.getAttribute('data-theme') === 'dark' ? 'light' : 'dark', true); }); } if (media && media.addEventListener) { media.addEventListener('change', function (event) { if (read() !== 'dark' && read() !== 'light') apply(event.matches ? 'dark' : 'light', false); }); } apply(root.getAttribute('data-theme') === 'dark' ? 'dark' : 'light', false); var year = document.getElementById('year'); if (year) year.textContent = String(new Date().getFullYear()); })();