/* Inline icon set — minimal, stroke-based, 24x24 viewBox */

const Icon = ({ d, size = 18, stroke = 'currentColor', fill = 'none', strokeWidth = 1.8, ...rest }) => (
  <svg width={size} height={size} viewBox="0 0 24 24" fill={fill} stroke={stroke}
    strokeWidth={strokeWidth} strokeLinecap="round" strokeLinejoin="round" {...rest}>
    {typeof d === 'string' ? <path d={d} /> : d}
  </svg>
);

const Icons = {
  Dashboard: (p) => <Icon {...p} d={<><rect x="3" y="3" width="7" height="9" rx="1.5"/><rect x="14" y="3" width="7" height="5" rx="1.5"/><rect x="14" y="12" width="7" height="9" rx="1.5"/><rect x="3" y="16" width="7" height="5" rx="1.5"/></>}/>,
  Kanban: (p) => <Icon {...p} d={<><rect x="3" y="3" width="5" height="18" rx="1.5"/><rect x="10" y="3" width="5" height="12" rx="1.5"/><rect x="17" y="3" width="4" height="8" rx="1.5"/></>}/>,
  Chat: (p) => <Icon {...p} d={<><path d="M21 12a8 8 0 1 1-3.2-6.4L21 5l-1 3.5A8 8 0 0 1 21 12Z"/><circle cx="9" cy="12" r="0.8" fill="currentColor"/><circle cx="13" cy="12" r="0.8" fill="currentColor"/><circle cx="17" cy="12" r="0.8" fill="currentColor"/></>}/>,
  Users: (p) => <Icon {...p} d={<><circle cx="9" cy="8" r="3.5"/><path d="M2.5 20a6.5 6.5 0 0 1 13 0"/><circle cx="17" cy="9" r="2.5"/><path d="M22 19a5 5 0 0 0-5-5"/></>}/>,
  Sparkles: (p) => <Icon {...p} d={<><path d="M12 3l1.6 4.4L18 9l-4.4 1.6L12 15l-1.6-4.4L6 9l4.4-1.6Z"/><path d="M19 14l.7 2 2 .7-2 .7-.7 2-.7-2-2-.7 2-.7Z"/><path d="M5 4l.5 1.4L7 6l-1.4.5L5 8l-.5-1.5L3 6l1.5-.5Z"/></>}/>,
  Radar: (p) => <Icon {...p} d={<><circle cx="12" cy="12" r="9"/><circle cx="12" cy="12" r="5.5"/><circle cx="12" cy="12" r="2"/><path d="M12 12 L18.5 7.5"/></>}/>,
  Book: (p) => <Icon {...p} d={<><path d="M4 4.5A1.5 1.5 0 0 1 5.5 3H19v17H6a2 2 0 0 0-2 2V4.5Z"/><path d="M4 19a2 2 0 0 1 2-2h13"/></>}/>,
  Settings: (p) => <Icon {...p} d={<><circle cx="12" cy="12" r="3"/><path d="M19.4 15a1.7 1.7 0 0 0 .3 1.8l.1.1a2 2 0 1 1-2.8 2.8l-.1-.1a1.7 1.7 0 0 0-1.8-.3 1.7 1.7 0 0 0-1 1.5V21a2 2 0 1 1-4 0v-.1a1.7 1.7 0 0 0-1.1-1.5 1.7 1.7 0 0 0-1.8.3l-.1.1a2 2 0 1 1-2.8-2.8l.1-.1a1.7 1.7 0 0 0 .3-1.8 1.7 1.7 0 0 0-1.5-1H3a2 2 0 1 1 0-4h.1A1.7 1.7 0 0 0 4.6 9 1.7 1.7 0 0 0 4.3 7.2l-.1-.1a2 2 0 1 1 2.8-2.8l.1.1a1.7 1.7 0 0 0 1.8.3H9a1.7 1.7 0 0 0 1-1.5V3a2 2 0 1 1 4 0v.1a1.7 1.7 0 0 0 1 1.5 1.7 1.7 0 0 0 1.8-.3l.1-.1a2 2 0 1 1 2.8 2.8l-.1.1a1.7 1.7 0 0 0-.3 1.8V9a1.7 1.7 0 0 0 1.5 1H21a2 2 0 1 1 0 4h-.1a1.7 1.7 0 0 0-1.5 1Z"/></>}/>,
  Search: (p) => <Icon {...p} d={<><circle cx="11" cy="11" r="7"/><path d="m20 20-3.5-3.5"/></>}/>,
  Filter: (p) => <Icon {...p} d="M3 5h18l-7 9v6l-4-2v-4Z"/>,
  Plus: (p) => <Icon {...p} d="M12 5v14M5 12h14"/>,
  Send: (p) => <Icon {...p} d={<><path d="M22 2 11 13"/><path d="m22 2-7 20-4-9-9-4 20-7Z"/></>}/>,
  Mic: (p) => <Icon {...p} d={<><rect x="9" y="3" width="6" height="12" rx="3"/><path d="M5 11a7 7 0 0 0 14 0M12 18v3"/></>}/>,
  Phone: (p) => <Icon {...p} d="M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6A19.8 19.8 0 0 1 2 4.2 2 2 0 0 1 4 2h3a2 2 0 0 1 2 1.7c.1.9.3 1.8.6 2.6a2 2 0 0 1-.5 2.1L7.9 9.7a16 16 0 0 0 6 6l1.3-1.2a2 2 0 0 1 2.1-.5c.8.3 1.7.5 2.6.6a2 2 0 0 1 1.7 2Z"/>,
  Video: (p) => <Icon {...p} d={<><rect x="2" y="6" width="14" height="12" rx="2"/><path d="m22 8-6 4 6 4Z"/></>}/>,
  More: (p) => <Icon {...p} d={<><circle cx="12" cy="12" r="1.2" fill="currentColor" stroke="none"/><circle cx="5" cy="12" r="1.2" fill="currentColor" stroke="none"/><circle cx="19" cy="12" r="1.2" fill="currentColor" stroke="none"/></>}/>,
  Bell: (p) => <Icon {...p} d={<><path d="M6 8a6 6 0 1 1 12 0c0 7 3 7 3 9H3c0-2 3-2 3-9Z"/><path d="M10 21a2 2 0 0 0 4 0"/></>}/>,
  Check: (p) => <Icon {...p} d="m5 12 5 5L20 7"/>,
  CheckDouble: (p) => <Icon {...p} d={<><path d="m2 12 5 5L17 7"/><path d="m12 17 10-10"/></>}/>,
  Clock: (p) => <Icon {...p} d={<><circle cx="12" cy="12" r="9"/><path d="M12 7v5l3 2"/></>}/>,
  TrendUp: (p) => <Icon {...p} d={<><path d="m3 17 7-7 4 4 8-8"/><path d="M15 6h7v7"/></>}/>,
  TrendDown: (p) => <Icon {...p} d={<><path d="m3 7 7 7 4-4 8 8"/><path d="M15 18h7v-7"/></>}/>,
  Fire: (p) => <Icon {...p} d="M12 3s4 3 4 7a4 4 0 0 1-8 0c0-1.5.7-2.8 1.5-3.5C9 8.5 9 11 11 11.5 11 9 11 6 12 3Zm-5 12.5C7 18 9 21 12 21s5-3 5-5.5c0-1.5-1-3-2-3.5-.5 1.5-1.5 2-3 2s-2.5-.5-3-2c-1 .5-2 2-2 3.5Z"/>,
  Lightning: (p) => <Icon {...p} d="M13 2 4 14h7l-1 8 9-12h-7Z"/>,
  Power: (p) => <Icon {...p} d={<><path d="M12 2v10"/><path d="M18.4 6.6a9 9 0 1 1-12.8 0"/></>}/>,
  Whatsapp: (p) => <Icon {...p} fill="currentColor" stroke="none" d="M12 2a10 10 0 0 0-8.6 15L2 22l5.1-1.3A10 10 0 1 0 12 2Zm5.4 14.2c-.2.6-1.2 1.2-1.7 1.3-.4 0-.9.1-1.5-.1l-1.4-.4a10 10 0 0 1-4.6-4.1c-.3-.5-1-1.4-1-2.7s.7-1.9 1-2.2c.2-.2.5-.3.7-.3h.5c.2 0 .4 0 .6.5l.8 2c.1.1.1.3 0 .5l-.3.4-.3.4c-.1.1-.2.3-.1.5.1.3.6 1.1 1.3 1.7.9.8 1.6 1 1.8 1.1.3.1.5.1.6-.1l.7-.9c.2-.2.3-.2.6 0l1.8 1c.3.1.4.2.5.3.1.2.1.7-.1 1.1Z"/>,
  X: (p) => <Icon {...p} d="M18 6 6 18M6 6l12 12"/>,
  Tag: (p) => <Icon {...p} d={<><path d="M20 12 12 4H4v8l8 8Z"/><circle cx="8" cy="8" r="1.2" fill="currentColor"/></>}/>,
  Note: (p) => <Icon {...p} d={<><path d="M4 4h12l4 4v12H4Z"/><path d="M8 12h8M8 16h5"/></>}/>,
  Calendar: (p) => <Icon {...p} d={<><rect x="3" y="5" width="18" height="16" rx="2"/><path d="M16 3v4M8 3v4M3 10h18"/></>}/>,
  Money: (p) => <Icon {...p} d={<><path d="M12 2v20"/><path d="M17 6a4 4 0 0 0-3.5-2H10a3 3 0 0 0 0 6h4a3 3 0 0 1 0 6h-4A4 4 0 0 1 7 14"/></>}/>,
  Heart: (p) => <Icon {...p} d="M12 21s-8-5-8-11a5 5 0 0 1 8-4 5 5 0 0 1 8 4c0 6-8 11-8 11Z"/>,
  Brain: (p) => <Icon {...p} d="M9 4a3 3 0 0 1 3 0 3 3 0 0 1 3 0 3 3 0 0 1 2.5 5 3 3 0 0 1-.5 5 3 3 0 0 1-5 1 3 3 0 0 1-5-1 3 3 0 0 1-.5-5A3 3 0 0 1 9 4Z"/>,
  Logout: (p) => <Icon {...p} d={<><path d="M16 17l5-5-5-5"/><path d="M21 12H9"/><path d="M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4"/></>}/>,
  Plug: (p) => <Icon {...p} d={<><path d="M9 2v6M15 2v6"/><rect x="7" y="8" width="10" height="6" rx="2"/><path d="M12 14v4a2 2 0 0 0 2 2h2"/></>}/>,
  Mail: (p) => <Icon {...p} d={<><rect x="3" y="5" width="18" height="14" rx="2"/><path d="m3 7 9 7 9-7"/></>}/>,
  ArrowRight: (p) => <Icon {...p} d="M5 12h14m-6-6 6 6-6 6"/>,
  ArrowLeft: (p) => <Icon {...p} d="M19 12H5m6 6-6-6 6-6"/>,
  ArrowUp: (p) => <Icon {...p} d="M12 19V5m-6 6 6-6 6 6"/>,
  Star: (p) => <Icon {...p} d="m12 3 2.6 5.6 6.1.5-4.7 4 1.5 6L12 16l-5.5 3.1 1.5-6L3.3 9l6.1-.5Z"/>,
  Document: (p) => <Icon {...p} d={<><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8Z"/><path d="M14 2v6h6M8 13h8M8 17h5"/></>}/>,
  Upload: (p) => <Icon {...p} d={<><path d="M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4"/><path d="m7 9 5-5 5 5"/><path d="M12 4v12"/></>}/>,
  Globe: (p) => <Icon {...p} d={<><circle cx="12" cy="12" r="9"/><path d="M3 12h18M12 3a14 14 0 0 1 0 18M12 3a14 14 0 0 0 0 18"/></>}/>,
  Bot: (p) => <Icon {...p} d={<><rect x="4" y="8" width="16" height="12" rx="3"/><circle cx="9" cy="14" r="1" fill="currentColor"/><circle cx="15" cy="14" r="1" fill="currentColor"/><path d="M12 4v4M8 4h8"/></>}/>,
  Sun: (p) => <Icon {...p} d={<><circle cx="12" cy="12" r="5"/><path d="M12 1v2m0 18v2M4.2 4.2l1.4 1.4m12.8 12.8 1.4 1.4M1 12h2m18 0h2M4.2 19.8l1.4-1.4M18.4 5.6l1.4-1.4"/></>}/>,
  Moon: (p) => <Icon {...p} d="M21 12.8A9 9 0 1 1 11.2 3 7 7 0 0 0 21 12.8Z"/>,
  Trash: (p) => <Icon {...p} d={<><path d="M3 6h18M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6m3 0V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2"/><path d="M10 11v6M14 11v6"/></>}/>,
  Lock: (p) => <Icon {...p} d={<><rect x="5" y="11" width="14" height="10" rx="2"/><path d="M7 11V7a5 5 0 0 1 10 0v4"/></>}/>,
  ShieldAlert: (p) => <Icon {...p} d={<><path d="M12 22s8-4 8-10V5l-8-3-8 3v7c0 6 8 10 8 10z"/><path d="M12 8v4"/><path d="M12 16h.01"/></>}/>,
};

window.Icon = Icon;
window.Icons = Icons;
