(function () { try { var root = document.documentElement; var fallback = root.getAttribute('data-server-theme') || 'light'; var defaultAccent = root.getAttribute('data-server-accent') || '#A47148'; var stored = localStorage.getItem('theme-preference'); var raw = stored || fallback; if (raw === 'slate') raw = 'light'; var allowed = { light: 1, dark: 1, auto: 1, sepia: 1, midnight: 1, rose: 1, green: 1, lavender: 1, sand: 1, ocean: 1, sunset: 1, blue: 1, }; var theme = allowed[raw] ? raw : 'light'; root.classList.remove('dark'); root.removeAttribute('data-theme'); if (theme === 'auto') { if (window.matchMedia('(prefers-color-scheme: dark)').matches) root.classList.add('dark'); } else if (theme === 'dark') { root.classList.add('dark'); } else if (theme === 'light') { /* :root papier */ } else { root.setAttribute('data-theme', theme); if (theme === 'midnight') root.classList.add('dark'); } var accentStored = localStorage.getItem('accent-color'); var effectiveAccent = accentStored || defaultAccent; root.style.setProperty('--color-brand-accent', effectiveAccent); } catch (e) { console.error('Theme script error', e); } })();