"use client"; import { useRouter } from "next/navigation"; import { useState } from "react"; import { track } from "@/lib/analytics"; export function CustomForm() { const router = useRouter(); const [worldSetting, setWorldSetting] = useState(""); const [styleGuide, setStyleGuide] = useState(""); const [submitting, setSubmitting] = useState(false); const canSubmit = worldSetting.trim().length > 10 && styleGuide.trim().length > 5 && !submitting; function handleSubmit(e: React.FormEvent) { e.preventDefault(); if (!canSubmit) return; setSubmitting(true); sessionStorage.setItem( "infiplot:custom", JSON.stringify({ worldSetting, styleGuide }), ); track("game_start", { source: "custom" }); router.push("/play?custom=1"); } return (