// Minimal stroke icon set — 24x24 viewBox, 1.6 stroke, rounded

const Icon = ({ name, size = 22, color = 'currentColor', strokeWidth = 1.6 }) => {
  const paths = {
    home: <><path d="M3 11l9-7 9 7v9a2 2 0 0 1-2 2h-4v-7h-6v7H5a2 2 0 0 1-2-2v-9z"/></>,
    check: <><path d="M4 12l5 5 11-12"/></>,
    plus: <><path d="M12 5v14M5 12h14"/></>,
    chevronRight: <><path d="M9 5l7 7-7 7"/></>,
    chevronLeft: <><path d="M15 5l-7 7 7 7"/></>,
    chevronDown: <><path d="M5 9l7 7 7-7"/></>,
    arrowUp: <><path d="M12 19V5M5 12l7-7 7 7"/></>,
    arrowDown: <><path d="M12 5v14M5 12l7 7 7-7"/></>,
    arrowRight: <><path d="M5 12h14M12 5l7 7-7 7"/></>,
    tasks: <><rect x="3" y="3" width="18" height="18" rx="4"/><path d="M8 12l2.5 2.5L16 9"/></>,
    money: <><rect x="2" y="6" width="20" height="13" rx="2.5"/><circle cx="12" cy="12.5" r="2.6"/><path d="M2 10h20"/></>,
    flame: <><path d="M12 3s4 5 4 9a4 4 0 0 1-8 0c0-1.5.6-2.5 1.5-3.3C9 7 12 3 12 3z"/><path d="M12 13a2 2 0 1 0 0 4"/></>,
    target: <><circle cx="12" cy="12" r="9"/><circle cx="12" cy="12" r="5"/><circle cx="12" cy="12" r="1.5" fill={color}/></>,
    sparkle: <><path d="M12 3l1.8 5.2L19 10l-5.2 1.8L12 17l-1.8-5.2L5 10l5.2-1.8L12 3z"/></>,
    calendar: <><rect x="3" y="5" width="18" height="16" rx="3"/><path d="M3 10h18M8 3v4M16 3v4"/></>,
    bell: <><path d="M6 16V11a6 6 0 0 1 12 0v5l1.5 2H4.5L6 16z"/><path d="M10 21a2 2 0 0 0 4 0"/></>,
    trophy: <><path d="M8 4h8v6a4 4 0 0 1-8 0V4z"/><path d="M4 5h4v3a2 2 0 0 1-4 0V5zM16 5h4v3a2 2 0 0 1-4 0V5z"/><path d="M9 14v2.5L7 20h10l-2-3.5V14"/></>,
    user: <><circle cx="12" cy="8" r="4"/><path d="M4 21c0-4.4 3.6-8 8-8s8 3.6 8 8"/></>,
    mic: <><rect x="9" y="3" width="6" height="12" rx="3"/><path d="M5 11a7 7 0 0 0 14 0M12 18v3"/></>,
    send: <><path d="M3 11l18-7-7 18-3-8-8-3z"/></>,
    settings: <><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 0 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 0 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 0 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 0 1 0-4h.1a1.7 1.7 0 0 0 1.5-1.1 1.7 1.7 0 0 0-.3-1.8l-.1-.1a2 2 0 0 1 2.8-2.8l.1.1a1.7 1.7 0 0 0 1.8.3h0a1.7 1.7 0 0 0 1-1.5V3a2 2 0 0 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 0 1 2.8 2.8l-.1.1a1.7 1.7 0 0 0-.3 1.8h0a1.7 1.7 0 0 0 1.5 1H21a2 2 0 0 1 0 4h-.1a1.7 1.7 0 0 0-1.5 1z"/></>,
    moon: <><path d="M21 13A9 9 0 1 1 11 3a7 7 0 0 0 10 10z"/></>,
    sun: <><circle cx="12" cy="12" r="4"/><path d="M12 2v2M12 20v2M4 12H2M22 12h-2M5 5l1.4 1.4M17.6 17.6L19 19M5 19l1.4-1.4M17.6 6.4L19 5"/></>,
    search: <><circle cx="11" cy="11" r="7"/><path d="M21 21l-4.3-4.3"/></>,
    filter: <><path d="M3 5h18l-7 9v6l-4-2v-4L3 5z"/></>,
    edit: <><path d="M11 4H4v16h16v-7"/><path d="M18 2l4 4-11 11H7v-4L18 2z"/></>,
    trash: <><path d="M4 7h16M9 7V4h6v3M6 7l1 13a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2l1-13"/></>,
    lock: <><rect x="5" y="11" width="14" height="10" rx="2.5"/><path d="M8 11V8a4 4 0 0 1 8 0v3"/></>,
    shield: <><path d="M12 3l8 3v6c0 5-3.5 8.5-8 9.5-4.5-1-8-4.5-8-9.5V6l8-3z"/></>,
    star: <><path d="M12 3l2.7 5.5 6.1.9-4.4 4.3 1 6.1L12 17l-5.4 2.8 1-6.1L3.2 9.4l6.1-.9L12 3z"/></>,
    diamond: <><path d="M6 3h12l4 6-10 12L2 9l4-6z"/><path d="M2 9h20M9 9l3 12M15 9l-3 12M6 3l3 6M18 3l-3 6"/></>,
    crown: <><path d="M3 8l4 4 5-7 5 7 4-4-2 12H5L3 8z"/></>,
    wallet: <><path d="M3 7h15a3 3 0 0 1 3 3v8a3 3 0 0 1-3 3H3V7z"/><path d="M3 7V5a2 2 0 0 1 2-2h11"/><circle cx="17" cy="14" r="1.4" fill={color}/></>,
    pin: <><path d="M12 22v-7M8 4h8l-1 4 2 3v2H7v-2l2-3-1-4z"/></>,
    clock: <><circle cx="12" cy="12" r="9"/><path d="M12 7v5l3 2"/></>,
    play: <><path d="M6 4l14 8-14 8V4z" fill={color}/></>,
    pause: <><rect x="6" y="4" width="4" height="16" rx="1" fill={color}/><rect x="14" y="4" width="4" height="16" rx="1" fill={color}/></>,
    drop: <><path d="M12 3s7 8 7 13a7 7 0 1 1-14 0c0-5 7-13 7-13z"/></>,
    book: <><path d="M4 4h7v16H4zM13 4h7v16h-7z"/></>,
    dumbbell: <><path d="M3 9v6M6 6v12M18 6v12M21 9v6M6 12h12"/></>,
    meditate: <><circle cx="12" cy="6" r="2.5"/><path d="M5 21c2-5 4-7 7-7s5 2 7 7M5 17l4-2M19 17l-4-2"/></>,
    car: <><path d="M5 17h14M6 17v2M18 17v2M4 13l2-6h12l2 6v4H4v-4z"/><circle cx="8" cy="14.5" r="1.2" fill={color}/><circle cx="16" cy="14.5" r="1.2" fill={color}/></>,
    plane: <><path d="M3 12l18-7-3 18-5-7-10-4z"/></>,
    apple: <><path d="M12 7c0-2 2-4 4-4 0 2-2 4-4 4z"/><path d="M16 8c2 0 4 2 4 5 0 4-3 8-5 8-1 0-2-1-3-1s-2 1-3 1c-2 0-5-4-5-8 0-3 2-5 4-5 1 0 2 1 3 1s2-1 3-1z"/></>,
    google: <><path d="M21 12.2c0-.7-.1-1.4-.2-2H12v3.8h5.1c-.2 1.2-.9 2.2-1.9 2.9v2.4h3.1c1.8-1.7 2.7-4.1 2.7-7.1z" fill="#4285F4" stroke="none"/><path d="M12 21c2.6 0 4.7-.9 6.3-2.3l-3.1-2.4c-.9.6-2 1-3.2 1-2.5 0-4.6-1.7-5.3-3.9H3.5v2.4C5.1 18.9 8.3 21 12 21z" fill="#34A853" stroke="none"/><path d="M6.7 13.3c-.2-.5-.3-1.1-.3-1.6s.1-1.1.3-1.7V7.6H3.5C2.5 9 2 10.4 2 12s.5 3 1.5 4.4l3.2-2.4z" fill="#FBBC04" stroke="none"/><path d="M12 6.5c1.4 0 2.7.5 3.7 1.4l2.7-2.7C16.6 3.6 14.6 2.5 12 2.5 8.3 2.5 5.1 4.6 3.5 7.6l3.2 2.4c.7-2.2 2.8-3.9 5.3-3.9z" fill="#EA4335" stroke="none"/></>,
    voice: <><path d="M3 12h2M19 12h2M7 8v8M11 4v16M15 7v10M19 9v6"/></>,
    grid: <><rect x="3" y="3" width="7" height="7" rx="1.5"/><rect x="14" y="3" width="7" height="7" rx="1.5"/><rect x="3" y="14" width="7" height="7" rx="1.5"/><rect x="14" y="14" width="7" height="7" rx="1.5"/></>,
    list: <><path d="M3 6h18M3 12h18M3 18h18"/></>,
    eye: <><path d="M2 12s4-7 10-7 10 7 10 7-4 7-10 7-10-7-10-7z"/><circle cx="12" cy="12" r="3"/></>,
    eyeOff: <><path d="M3 3l18 18M10 6c.6-.1 1.3-.2 2-.2 6 0 10 7 10 7s-1 1.8-2.8 3.5M6.8 7C3.6 9 2 12 2 12s4 7 10 7c1.3 0 2.5-.3 3.6-.8M9.5 9.5a3 3 0 0 0 4.2 4.2"/></>,
    headphones: <><path d="M4 14a8 8 0 0 1 16 0v4a2 2 0 0 1-2 2h-2v-7h4M4 14v4a2 2 0 0 0 2 2h2v-7H4"/></>,
    pdf: <><path d="M6 2h9l5 5v15H6z"/><path d="M15 2v5h5"/><path d="M9 14h1.5a1.5 1.5 0 0 1 0 3H9zM13 14v3M13 14h2M13 15.5h1.5M17 14h2M17 14v3"/></>,
    pomodoro: <><circle cx="12" cy="13" r="8"/><path d="M12 13V8M10 3h4M19 6l-1.5 1.5"/></>,
    insight: <><path d="M9 21h6M10 18h4M7 4l3 3M17 4l-3 3M12 2v4M12 6a6 6 0 0 1 4 10.5V18H8v-1.5A6 6 0 0 1 12 6z"/></>,
    palette: <><path d="M12 3a9 9 0 1 0 1 18c1.5 0 2-1 2-2s-1-1-1-2 1-1.5 2-1.5h2a4 4 0 0 0 4-4c0-4.5-4.4-8.5-10-8.5z"/><circle cx="7.5" cy="11" r="1.2" fill={color}/><circle cx="11" cy="7.5" r="1.2" fill={color}/><circle cx="15.5" cy="8" r="1.2" fill={color}/><circle cx="17.5" cy="12" r="1.2" fill={color}/></>,
    cup: <><path d="M5 8h12v6a5 5 0 0 1-10 0L7 14"/><path d="M17 9h2a3 3 0 0 1 0 6h-2M5 4l1 2M9 4l1 2M13 4l1 2"/></>,
    info: <><circle cx="12" cy="12" r="9"/><path d="M12 11v6M12 8v.5"/></>,
    arrowUpRight: <><path d="M7 17L17 7M9 7h8v8"/></>,
    horizontal: <><path d="M5 12h14"/></>,
    fingerprint: <><path d="M9 6a5 5 0 0 1 9 4v3M6 9a8 8 0 0 1 12 1v4a4 4 0 0 1-1 3M9 11v3a3 3 0 0 0 6 0M12 11v6"/></>,
    paperclip: <><path d="M21 11l-9 9a5 5 0 0 1-7-7l9-9a3.5 3.5 0 0 1 5 5l-9 9a2 2 0 0 1-3-3l8-8"/></>,
    refresh: <><path d="M21 12a9 9 0 1 1-3-6.7M21 4v5h-5"/></>,
  };

  return (
    <svg width={size} height={size} viewBox="0 0 24 24" fill="none"
      stroke={color} strokeWidth={strokeWidth} strokeLinecap="round" strokeLinejoin="round">
      {paths[name]}
    </svg>
  );
};

Object.assign(window, { Icon });
