// Inline icon set — Lucide-style, 1.75 stroke, matches CoPowr brand book
const Icon = ({ name, size = 22, stroke = 1.75, className = "" }) => {
  const paths = {
    // Service pillar icons
    flow:    <><path d="M4 6h6M4 18h6"/><circle cx="14" cy="6" r="3"/><circle cx="14" cy="18" r="3"/><path d="M17 6h3M17 18h3M14 9v6"/></>,
    plug:    <><path d="M9 3v5M15 3v5M7 8h10v4a5 5 0 0 1-10 0z"/><path d="M12 17v4"/></>,
    spark:   <><path d="M12 3v4M12 17v4M3 12h4M17 12h4M6 6l2.5 2.5M15.5 15.5L18 18M6 18l2.5-2.5M15.5 8.5L18 6"/><circle cx="12" cy="12" r="2.5"/></>,
    people:  <><circle cx="9" cy="9" r="3"/><path d="M3 20c0-3.3 2.7-6 6-6s6 2.7 6 6"/><circle cx="17" cy="10" r="2.5"/><path d="M15 20v-1a4 4 0 0 1 7-2.6"/></>,
    // UI
    arrow:   <><path d="M5 12h14M13 6l6 6-6 6"/></>,
    arrowDown: <><path d="M12 5v14M6 13l6 6 6-6"/></>,
    check:   <><path d="M5 12.5l4 4L19 6"/></>,
    plus:    <><path d="M12 5v14M5 12h14"/></>,
    up:      <><path d="M18 15l-6-6-6 6"/></>,
    menu:    <><path d="M4 7h16M4 12h16M4 17h16"/></>,
    x:       <><path d="M6 6l12 12M18 6L6 18"/></>,
    mail:    <><rect x="3" y="5" width="18" height="14" rx="2"/><path d="M3 7l9 6 9-6"/></>,
    calendar: <><rect x="3" y="5" width="18" height="16" rx="2"/><path d="M8 3v4M16 3v4M3 10h18"/></>,
    // Process steps
    search:  <><circle cx="11" cy="11" r="7"/><path d="M20 20l-4-4"/></>,
    pen:     <><path d="M4 20h4l10-10-4-4L4 16v4z"/><path d="M14 6l4 4"/></>,
    build:   <><path d="M12 2l9 5v10l-9 5-9-5V7z"/><path d="M3 7l9 5 9-5M12 12v10"/></>,
    launch:  <><path d="M5 19c3-1 6-4 9-7l3-3-3-3-3 3c-3 3-6 6-7 9z"/><path d="M11 12l-3 3M5 19l-2 2"/><circle cx="15" cy="9" r="1"/></>,
    // outcomes
    clock:   <><circle cx="12" cy="12" r="9"/><path d="M12 7v5l3 2"/></>,
    shield:  <><path d="M12 3l8 3v6c0 5-3.5 8-8 9-4.5-1-8-4-8-9V6z"/><path d="M9 12l2 2 4-4"/></>,
    chart:   <><path d="M4 19V5M4 19h16M8 15v-4M12 15V8M16 15v-7"/></>,
    users:   <><circle cx="9" cy="9" r="3"/><path d="M3 19c0-3 2.7-5.5 6-5.5s6 2.5 6 5.5"/><circle cx="17" cy="10" r="2.5"/><path d="M15 19v-.5c0-2.3 2-4 4.5-4 .9 0 1.7.2 2.5.6"/></>,
    zap:     <><path d="M13 2L4 14h6l-1 8 9-12h-6l1-8z"/></>,
    book:    <><path d="M4 4h10a4 4 0 0 1 4 4v13H8a4 4 0 0 1-4-4z"/><path d="M4 4v13M18 8h-8M18 12h-8"/></>,
    // Misc
    message: <><path d="M4 5h16v11H8l-4 4z"/></>,
    sparkle: <><path d="M12 3v4M12 17v4M3 12h4M17 12h4"/><path d="M6.5 6.5l2 2M15.5 15.5l2 2M6.5 17.5l2-2M15.5 8.5l2-2"/></>,
    hand:    <><path d="M8 13V5a2 2 0 1 1 4 0v6"/><path d="M12 11V4a2 2 0 1 1 4 0v7"/><path d="M16 11V6a2 2 0 1 1 4 0v10a6 6 0 0 1-6 6H9c-1.5 0-3-.8-4-3l-3-5a2 2 0 0 1 3-3l3 2"/></>,
    eye:     <><path d="M2 12s3-7 10-7 10 7 10 7-3 7-10 7-10-7-10-7z"/><circle cx="12" cy="12" r="3"/></>,
    compass: <><circle cx="12" cy="12" r="9"/><path d="M15.5 8.5l-2 5-5 2 2-5z"/></>,
  };
  return (
    <svg className={className} width={size} height={size} viewBox="0 0 24 24" fill="none"
      stroke="currentColor" strokeWidth={stroke} strokeLinecap="round" strokeLinejoin="round">
      {paths[name]}
    </svg>
  );
};

Object.assign(window, { Icon });
