'use client' import { createContext, useContext, useEffect, useState } from 'react' type Theme = 'light' | 'dark' const ThemeContext = createContext<{ theme: Theme toggle: () => void }>({ theme: 'light', toggle: () => {} }) export function ThemeProvider({ children }: { children: React.ReactNode }) { const [theme, setTheme] = useState('light') useEffect(() => { const stored = localStorage.getItem('flockoff-theme') as Theme | null if (stored === 'dark') { setTheme('dark') document.documentElement.classList.add('dark') } }, []) const toggle = () => { setTheme(prev => { const next = prev === 'light' ? 'dark' : 'light' localStorage.setItem('flockoff-theme', next) document.documentElement.classList.toggle('dark', next === 'dark') return next }) } return ( {children} ) } export function useTheme() { return useContext(ThemeContext) }