function Icon({ name, size = 18 }) {
  const common = { width: size, height: size, viewBox: '0 0 24 24', fill: 'none', stroke: 'currentColor', strokeWidth: 1.8, strokeLinecap: 'round', strokeLinejoin: 'round' };
  const paths = {
    home: <><path d="M3 11.5 12 4l9 7.5"/><path d="M5.5 10.5V20h13v-9.5"/></>,
    search: <><circle cx="11" cy="11" r="7"/><path d="m20 20-3.5-3.5"/></>,
    users: <><path d="M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2"/><circle cx="9" cy="7" r="4"/><path d="M22 21v-2a4 4 0 0 0-3-3.87"/><path d="M16 3.13a4 4 0 0 1 0 7.75"/></>,
    user: <><circle cx="12" cy="8" r="4"/><path d="M4 21v-1a6 6 0 0 1 6-6h4a6 6 0 0 1 6 6v1"/></>,
    chat: <><path d="M4 5h16v11H8l-4 4Z"/></>,
    pipeline: <><rect x="3" y="4" width="5" height="16" rx="1.5"/><rect x="10" y="4" width="5" height="11" rx="1.5"/><rect x="17" y="4" width="4" height="7" rx="1.5"/></>,
    activity: <><path d="M3 12h4l3-8 4 16 3-8h4"/></>,
    segment: <><circle cx="7" cy="7" r="4"/><circle cx="17" cy="17" r="4"/><path d="M11 11h6v6"/></>,
    bell: <><path d="M18 8a6 6 0 0 0-12 0c0 7-3 7-3 9h18c0-2-3-2-3-9"/><path d="M10 21h4"/></>,
    mail: <><rect x="3" y="5" width="18" height="14" rx="2"/><path d="m3 7 9 6 9-6"/></>,
    ticket: <><path d="M4 8a2 2 0 0 1 2-2h12a2 2 0 0 1 2 2v2a2 2 0 0 0 0 4v2a2 2 0 0 1-2 2H6a2 2 0 0 1-2-2v-2a2 2 0 0 0 0-4Z"/><path d="M14 6v12"/></>,
    chart: <><path d="M4 19V5"/><path d="M4 19h16"/><rect x="7" y="12" width="3" height="5"/><rect x="12" y="8" width="3" height="9"/><rect x="17" y="5" width="3" height="12"/></>,
    plus: <><path d="M12 5v14"/><path d="M5 12h14"/></>,
    filter: <><path d="M3 5h18"/><path d="M6 12h12"/><path d="M10 19h4"/></>,
    chevr: <path d="m9 18 6-6-6-6"/>,
    chevd: <path d="m6 9 6 6 6-6"/>,
    check: <path d="M5 12.5 9.5 17 19 7.5"/>,
    clock: <><circle cx="12" cy="12" r="9"/><path d="M12 7v5l3 2"/></>,
    phone: <path d="M6 4h3l2 5-3 2a12 12 0 0 0 5 5l2-3 5 2v3a2 2 0 0 1-2 2A16 16 0 0 1 4 6a2 2 0 0 1 2-2Z"/>,
    wa: <><path d="M3 21l1.5-4.5a8 8 0 1 1 3 3Z"/><path d="M8.5 9c0 4 3 6.5 6.5 6.5l1.5-1.5-2-1-1.5 1c-1.5-.5-2.5-1.5-3-3l1-1.5-1-2Z"/></>,
    meeting: <><rect x="2" y="6" width="14" height="12" rx="2"/><path d="m22 8-6 4 6 4Z"/></>,
    note: <><path d="M5 4h11l3 3v13H5z"/><path d="M8 10h8M8 14h6"/></>,
    pin: <><path d="M12 2v6"/><path d="M5 9h14l-2 5H7Z"/><path d="M12 14v8"/></>,
    star: <path d="m12 3 2.6 5.6 6.1.6-4.6 4.2 1.3 6.1L12 16.8 6.6 19.5l1.3-6.1-4.6-4.2 6.1-.6Z"/>,
    arrow: <><path d="M5 12h14"/><path d="m13 6 6 6-6 6"/></>,
    settings: <><circle cx="12" cy="12" r="3"/><path d="M19 12a7 7 0 0 0-.1-1.4l2-1.5-2-3.4-2.3.9a7 7 0 0 0-2.4-1.4L13.8 3h-3.6l-.4 2.2a7 7 0 0 0-2.4 1.4l-2.3-.9-2 3.4 2 1.5A7 7 0 0 0 5 12c0 .5 0 .9.1 1.4l-2 1.5 2 3.4 2.3-.9a7 7 0 0 0 2.4 1.4l.4 2.2h3.6l.4-2.2a7 7 0 0 0 2.4-1.4l2.3.9 2-3.4-2-1.5c.1-.5.1-.9.1-1.4Z"/></>,
    inbox: <><path d="M3 13h5l1 3h6l1-3h5"/><path d="M3 13V6a2 2 0 0 1 2-2h14a2 2 0 0 1 2 2v7v5a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2Z"/></>,
    target: <><circle cx="12" cy="12" r="9"/><circle cx="12" cy="12" r="5"/><circle cx="12" cy="12" r="1.5"/></>,
    money: <><rect x="3" y="6" width="18" height="12" rx="2"/><circle cx="12" cy="12" r="2.5"/><path d="M6 12h.01M18 12h.01"/></>,
    trend: <><path d="M3 17 9 11l4 4 8-8"/><path d="M14 7h7v7"/></>,
    download: <><path d="M12 4v11"/><path d="m7 11 5 5 5-5"/><path d="M5 20h14"/></>,
    edit: <><path d="M4 20h4l11-11-4-4L4 16Z"/><path d="m14 6 4 4"/></>,
    flag: <><path d="M4 21V4"/><path d="M4 4h13l-2 4 2 4H4"/></>,
    sparkle: <><path d="M12 3v6"/><path d="M12 15v6"/><path d="M3 12h6"/><path d="M15 12h6"/></>,
    building: <><rect x="4" y="3" width="16" height="18" rx="1.5"/><path d="M8 7h2M8 11h2M8 15h2M14 7h2M14 11h2M14 15h2"/></>,
    link: <><path d="M10 14a4 4 0 0 0 5.6 0l3-3a4 4 0 0 0-5.6-5.6l-1.5 1.5"/><path d="M14 10a4 4 0 0 0-5.6 0l-3 3a4 4 0 0 0 5.6 5.6l1.5-1.5"/></>,
  };
  return <svg {...common}>{paths[name] || paths.sparkle}</svg>;
}
Object.assign(window, { Icon });
