export type Theme = "light" | "dark" export const STORAGE_KEY = "theme" function getSystemTheme(): Theme { return window.matchMedia("(prefers-color-scheme: dark)").matches ? "dark" : "light" } export function getInitialTheme(): Theme { const stored = localStorage.getItem(STORAGE_KEY) if (stored === "light" || stored === "dark") { return stored } return getSystemTheme() } export function useTheme() { document.documentElement.dataset.theme = getInitialTheme() }