type OptionButtonProps = { text: string; state: "idle" | "selected" | "disabled" | "correct" | "wrong"; onSelect: () => void; }; export const OptionButton = ({ text, state, onSelect }: OptionButtonProps) => { const base = "group relative w-full overflow-hidden py-3 px-6 rounded-2xl text-lg font-semibold transition-all duration-200 border cursor-pointer text-left"; const styles = { idle: "bg-white text-(--color-primary-dark) border-(--color-primary-light) hover:bg-(--color-surface) hover:-translate-y-0.5 active:translate-y-0", selected: "bg-(--color-surface) text-(--color-primary-dark) border-(--color-primary) ring-2 ring-(--color-primary)", disabled: "bg-(--color-surface) text-(--color-primary-light) border-(--color-primary-light) cursor-default", correct: "bg-emerald-400/90 text-white border-emerald-600 ring-2 ring-emerald-300 scale-[1.01]", wrong: "bg-pink-500/90 text-white border-pink-700 ring-2 ring-pink-300", }; const motion = state === "correct" ? "lila-pop" : state === "wrong" ? "lila-shake" : ""; return ( ); };