import { useState, useCallback, useEffect } from 'react' const KEY = 'careless-v2-theme' export function useTheme() { const [theme, setTheme] = useState<'dark' | 'light'>(() => { try { return (localStorage.getItem(KEY) as 'dark' | 'light') || 'dark' } catch { return 'dark' } }) useEffect(() => { document.documentElement.setAttribute('data-theme', theme) try { localStorage.setItem(KEY, theme) } catch {} }, [theme]) const toggleTheme = useCallback(() => { setTheme(t => t === 'dark' ? 'light' : 'dark') }, []) return { theme, toggleTheme, setTheme } }