function BetModal({ pick, onClose }) {
if (!pick) return null;
const isParlay = Array.isArray(pick.legs) && pick.legs.length > 0;
// ESPN win % (utils/winprob.js) only while the bet is still open; graded bets keep their result line
const open = !["won", "lost", "void", "push", "graded", "settled", "closed", "canceled", "cancelled"].includes(String(pick.status || pick.state || "open").toLowerCase());
return (