// Inline SVG icon set — stroke-based, lucide-style, all 1.5 stroke
const Icon = ({ d, size = 20, stroke = 1.5, fill = "none", className = "" }) => (
  <svg width={size} height={size} viewBox="0 0 24 24" fill={fill} stroke="currentColor"
       strokeWidth={stroke} strokeLinecap="round" strokeLinejoin="round" className={className}>
    {d}
  </svg>
);

const I = {
  Arrow: (p) => <Icon {...p} d={<><line x1="5" y1="12" x2="19" y2="12"/><polyline points="12 5 19 12 12 19"/></>} />,
  ArrowUpRight: (p) => <Icon {...p} d={<><line x1="7" y1="17" x2="17" y2="7"/><polyline points="7 7 17 7 17 17"/></>} />,
  Globe: (p) => <Icon {...p} d={<><circle cx="12" cy="12" r="9"/><line x1="3" y1="12" x2="21" y2="12"/><path d="M12 3a14 14 0 0 1 0 18M12 3a14 14 0 0 0 0 18"/></>} />,
  Sparkles: (p) => <Icon {...p} d={<><path d="M12 3l1.8 5.2L19 10l-5.2 1.8L12 17l-1.8-5.2L5 10l5.2-1.8z"/><path d="M19 17l.7 2 2 .7-2 .7-.7 2-.7-2-2-.7 2-.7z"/></>} />,
  Play: (p) => <Icon {...p} d={<polygon points="6 4 20 12 6 20 6 4"/>} />,
  Plus: (p) => <Icon {...p} d={<><line x1="12" y1="5" x2="12" y2="19"/><line x1="5" y1="12" x2="19" y2="12"/></>} />,
  Minus: (p) => <Icon {...p} d={<line x1="5" y1="12" x2="19" y2="12"/>} />,
  Instagram: (p) => <Icon {...p} d={<><rect x="3" y="3" width="18" height="18" rx="5"/><circle cx="12" cy="12" r="4"/><circle cx="17.5" cy="6.5" r="0.6" fill="currentColor"/></>} />,
  Twitter: (p) => <Icon {...p} d={<path d="M4 4l7.5 9.5L4.5 20H7l5.6-6 4.4 6H21l-7.8-10.4L20 4h-2.5l-4.8 5.2L9 4H4z"/>} />,
  Linkedin: (p) => <Icon {...p} d={<><rect x="3" y="3" width="18" height="18" rx="3"/><line x1="8" y1="10" x2="8" y2="17"/><circle cx="8" cy="7" r="1" fill="currentColor"/><path d="M12 17v-4a2 2 0 0 1 4 0v4"/><line x1="12" y1="10" x2="12" y2="17"/></>} />,
  Dribbble: (p) => <Icon {...p} d={<><circle cx="12" cy="12" r="9"/><path d="M3.5 10c5 0 11 1 16.5 6"/><path d="M9 3.2c2.5 3 4.5 7 5.5 17.5"/><path d="M21 11c-5 1.5-12 1-16.5 8"/></>} />,
  Bento: (p) => <Icon {...p} d={<><rect x="3" y="3" width="7" height="7" rx="1.4"/><rect x="14" y="3" width="7" height="7" rx="1.4"/><rect x="3" y="14" width="7" height="7" rx="1.4"/><rect x="14" y="14" width="7" height="7" rx="1.4"/></>} />,
  Compass: (p) => <Icon {...p} d={<><circle cx="12" cy="12" r="9"/><polygon points="16 8 14 14 8 16 10 10"/></>} />,
  Megaphone: (p) => <Icon {...p} d={<><path d="M3 11v2l10 5V6L3 11z"/><path d="M13 8.5c2 0 4 1.5 4 3.5s-2 3.5-4 3.5"/><path d="M7 13v5"/></>} />,
  Layers: (p) => <Icon {...p} d={<><polygon points="12 3 21 8 12 13 3 8 12 3"/><polyline points="3 13 12 18 21 13"/><polyline points="3 18 12 22 21 18"/></>} />,
  Camera: (p) => <Icon {...p} d={<><path d="M5 7h3l2-2h4l2 2h3a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V9a2 2 0 0 1 2-2z"/><circle cx="12" cy="13" r="3.5"/></>} />,
  Code: (p) => <Icon {...p} d={<><polyline points="9 7 4 12 9 17"/><polyline points="15 7 20 12 15 17"/><line x1="13" y1="5" x2="11" y2="19"/></>} />,
  Mail: (p) => <Icon {...p} d={<><rect x="3" y="5" width="18" height="14" rx="2"/><polyline points="3 7 12 13 21 7"/></>} />,
  Phone: (p) => <Icon {...p} d={<path d="M5 4h3l2 5-2.5 1.5a11 11 0 0 0 6 6L15 14l5 2v3a2 2 0 0 1-2 2A16 16 0 0 1 3 6a2 2 0 0 1 2-2z"/>} />,
  Pin: (p) => <Icon {...p} d={<><path d="M12 22s7-7 7-12a7 7 0 0 0-14 0c0 5 7 12 7 12z"/><circle cx="12" cy="10" r="2.5"/></>} />,
  Check: (p) => <Icon {...p} d={<polyline points="4 12 10 18 20 6"/>} />,
  Send: (p) => <Icon {...p} d={<><line x1="21" y1="3" x2="11" y2="13"/><polygon points="21 3 14 21 11 13 3 10 21 3"/></>} />,
  Star: (p) => <Icon {...p} d={<polygon points="12 3 14.5 9 21 9.5 16 14 17.5 21 12 17.5 6.5 21 8 14 3 9.5 9.5 9 12 3"/>} />,
  ChevronDown: (p) => <Icon {...p} d={<polyline points="6 9 12 15 18 9"/>} />,
  Menu: (p) => <Icon {...p} d={<><line x1="4" y1="7" x2="20" y2="7"/><line x1="4" y1="12" x2="20" y2="12"/><line x1="4" y1="17" x2="20" y2="17"/></>} />,
  Close: (p) => <Icon {...p} d={<><line x1="6" y1="6" x2="18" y2="18"/><line x1="6" y1="18" x2="18" y2="6"/></>} />,
  Cursor: (p) => <Icon {...p} d={<><path d="M5 3l5 17 3-7 7-3z"/></>} />,
};

window.I = I;
