import { Button } from "./ui/button"; import { useEffect, useState } from "react"; import { MoonIcon, SunIcon } from "lucide-react"; export function ThemeToggle() { const [darkMode, setDarkMode] = useState(() => { try { const stored = localStorage.getItem("theme"); if (stored) return stored === "dark"; return ( typeof window !== "undefined" && window.matchMedia?.("(prefers-color-scheme: dark)")?.matches ); } catch { return false; } }); useEffect(() => { try { const root = document.documentElement; if (darkMode) root.classList.add("dark"); else root.classList.remove("dark"); localStorage.setItem("theme", darkMode ? "dark" : "light"); } catch {} }, [darkMode]); return ( ); }