"use client"; import { useEffect, useState } from "react"; import Link from "next/link"; import { Button } from "../ui/button"; import { HugeiconsIcon } from "@hugeicons/react"; import { ArrowLeft01Icon, ArrowRight01Icon } from "@hugeicons/core-free-icons"; import { useRouter } from "next/navigation"; const STORAGE_KEY = "mobile-acknowledged"; interface MobileGateProps { children: React.ReactNode; } export function MobileGate({ children }: MobileGateProps) { const router = useRouter(); const [show, setShow] = useState(null); useEffect(() => { const isMobile = window.innerWidth < 1024; const acknowledged = localStorage.getItem(STORAGE_KEY) === "true"; setShow(isMobile && !acknowledged); }, []); if (show === null) return null; if (!show) return <>{children}; const handleContinue = () => { localStorage.setItem(STORAGE_KEY, "true"); setShow(false); }; const handleGoBack = () => { router.back(); }; return (

Desktop only (for now)

NeuralCut isn't optimized for mobile or iPad yet. Things will break and the layout will be a mess. Come back on a desktop for the real experience.

); }