/* App root — theme + demo modal state */
function App() {
  const [theme, setTheme] = React.useState(() => localStorage.getItem("labsaas-theme") || "light");
  const [demo, setDemo] = React.useState(false);
  React.useEffect(() => {
    document.documentElement.setAttribute("data-theme", theme);
    localStorage.setItem("labsaas-theme", theme);
  }, [theme]);
  const openDemo = React.useCallback(() => setDemo(true), []);
  return (
    <>
      <Nav onDemo={openDemo} theme={theme} onToggleTheme={() => setTheme((t) => (t === "dark" ? "light" : "dark"))} />
      <main>
        <Hero onDemo={openDemo} />
        <Products />
        <Differentials />
        <HowItWorks />
        <Vision />
        <FinalCTA onDemo={openDemo} />
      </main>
      <Footer />
      <DemoModal open={demo} onClose={() => setDemo(false)} />
    </>
  );
}
ReactDOM.createRoot(document.getElementById("root")).render(<App />);
