/* Carelon Passport — icon set. Outline, rounded, 1.7 stroke, inherits currentColor. */
const Icon = ({ name, size = 20, stroke = 1.7, fill = "none", style = {}, className = "" }) => {
  const p = ICONS[name] || null;
  return (
    <svg
      className={className}
      width={size}
      height={size}
      viewBox="0 0 24 24"
      fill={fill}
      stroke="currentColor"
      strokeWidth={stroke}
      strokeLinecap="round"
      strokeLinejoin="round"
      style={{ display: "block", flexShrink: 0, ...style }}
      aria-hidden="true"
    >
      {p}
    </svg>
  );
};

const ICONS = {
  search: <><circle cx="11" cy="11" r="7" /><path d="M21 21l-4.3-4.3" /></>,
  bell: <><path d="M18 8a6 6 0 1 0-12 0c0 7-3 9-3 9h18s-3-2-3-9" /><path d="M13.7 21a2 2 0 0 1-3.4 0" /></>,
  message: <path d="M21 11.5a8.5 8.5 0 0 1-12.3 7.6L3 21l1.9-5.7A8.5 8.5 0 1 1 21 11.5z" />,
  chat: <><path d="M21 15a2 2 0 0 1-2 2H8l-4 3V6a2 2 0 0 1 2-2h13a2 2 0 0 1 2 2z" /></>,
  send: <><path d="M21 4 11 14" /><path d="M21 4 14.5 21 11 14 4 10.5 21 4z" /></>,
  calendar: <><rect x="3.5" y="4.5" width="17" height="16" rx="2.5" /><path d="M3.5 9h17M8 3v3M16 3v3" /></>,
  phone: <path d="M16.9 19.5A16 16 0 0 1 4.5 7.1 2 2 0 0 1 6.5 5h2.2a1.5 1.5 0 0 1 1.5 1.3l.5 2.4a1.5 1.5 0 0 1-.5 1.5l-1 .9a13 13 0 0 0 5 5l.9-1a1.5 1.5 0 0 1 1.5-.5l2.4.5a1.5 1.5 0 0 1 1.3 1.5v2.2a2 2 0 0 1-2.1 2 16 16 0 0 1-1.8-.3z" />,
  doc: <><path d="M14 3H7a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h10a2 2 0 0 0 2-2V8z" /><path d="M14 3v5h5" /><path d="M9 13h6M9 17h4" /></>,
  pill: <><rect x="3.2" y="9.5" width="17.5" height="8.5" rx="4.25" transform="rotate(-45 12 12)" /><path d="M8.7 8.7l6.6 6.6" /></>,
  shield: <><path d="M12 3l7 3v5c0 4.5-3 8-7 10-4-2-7-5.5-7-10V6z" /><path d="M9.2 12l2 2 3.6-3.8" /></>,
  suitcase: <><rect x="3.5" y="7.5" width="17" height="12" rx="2.5" /><path d="M8.5 7.5V6a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v1.5M12 11.5v4" /></>,
  pin: <><path d="M12 21s-6.5-5.3-6.5-10.5a6.5 6.5 0 0 1 13 0C18.5 15.7 12 21 12 21z" /><circle cx="12" cy="10.5" r="2.4" /></>,
  cross: <><rect x="4" y="4" width="16" height="16" rx="5" /><path d="M12 8.5v7M8.5 12h7" /></>,
  steth: <><path d="M5 4v4a4 4 0 0 0 8 0V4" /><path d="M9 16a5 5 0 0 0 10 0v-1.5" /><circle cx="19" cy="11.5" r="2.2" /></>,
  layers: <><path d="M12 3l8 4.5-8 4.5-8-4.5z" /><path d="M4 12l8 4.5 8-4.5M4 16.5L12 21l8-4.5" /></>,
  chevronDown: <path d="M6 9.5l6 6 6-6" />,
  chevronRight: <path d="M9.5 6l6 6-6 6" />,
  arrowRight: <><path d="M5 12h14" /><path d="M13 6l6 6-6 6" /></>,
  globe: <><circle cx="12" cy="12" r="8.5" /><path d="M3.5 12h17M12 3.5c2.5 2.4 2.5 14.6 0 17M12 3.5c-2.5 2.4-2.5 14.6 0 17" /></>,
  check: <path d="M5 12.5l4.5 4.5L19 7" />,
  checkCircle: <><circle cx="12" cy="12" r="8.5" /><path d="M8.5 12.2l2.5 2.5 4.5-4.8" /></>,
  sparkle: <path d="M12 3l1.8 5.2L19 10l-5.2 1.8L12 17l-1.8-5.2L5 10l5.2-1.8z" />,
  download: <><path d="M12 4v10" /><path d="M8 11l4 4 4-4" /><path d="M5 19.5h14" /></>,
  eye: <><path d="M2.5 12S6 5.5 12 5.5 21.5 12 21.5 12 18 18.5 12 18.5 2.5 12 2.5 12z" /><circle cx="12" cy="12" r="3" /></>,
  user: <><circle cx="12" cy="8.5" r="3.8" /><path d="M5 20c.8-3.6 3.6-5.5 7-5.5s6.2 1.9 7 5.5" /></>,
  clock: <><circle cx="12" cy="12" r="8.5" /><path d="M12 7.5V12l3 1.8" /></>,
  share: <><circle cx="6" cy="12" r="2.4" /><circle cx="17.5" cy="6" r="2.4" /><circle cx="17.5" cy="18" r="2.4" /><path d="M8.1 11l7.3-3.8M8.1 13l7.3 3.8" /></>,
  close: <path d="M6 6l12 12M18 6L6 18" />,
  video: <><rect x="3" y="6" width="12.5" height="12" rx="2.5" /><path d="M15.5 10l5-3v10l-5-3z" /></>,
  dots: <><circle cx="6" cy="12" r="1.3" /><circle cx="12" cy="12" r="1.3" /><circle cx="18" cy="12" r="1.3" /></>,
  idCard: <><rect x="3" y="5.5" width="18" height="13" rx="2.5" /><circle cx="8.5" cy="11" r="2" /><path d="M13.5 9.5h4M13.5 13h3M5.5 15.2c.5-1.4 1.6-2 3-2s2.5.6 3 2" /></>,
  heartPulse: <><path d="M12 20s-7-4.5-7-9.5A4.2 4.2 0 0 1 12 7a4.2 4.2 0 0 1 7 3.5c0 .5-.1 1-.2 1.5" /><path d="M12.5 12.5H15l1.2-2 1.5 3.5 1.3-2.2h3" /></>,
  alert: <><path d="M12 4l9 15.5H3z" /><path d="M12 10v4M12 17.2v.1" /></>,
  plus: <path d="M12 6v12M6 12h12" />,
  refresh: <><path d="M20 12a8 8 0 1 1-2.3-5.6" /><path d="M20 4v3.5h-3.5" /></>,
  mapTrail: <><path d="M9 4.5 4.5 6.5v13L9 17.5l6 2 4.5-2v-13l-4.5 2-6-2z" /><path d="M9 4.5v13M15 6.5v13" /></>,
  route: <><circle cx="6" cy="18" r="2.4" /><circle cx="18" cy="6" r="2.4" /><path d="M8.4 18H14a3 3 0 0 0 0-6H10a3 3 0 0 1 0-6h5.6" /></>,
  briefcaseHeart: <><rect x="3.5" y="7.5" width="17" height="12" rx="2.5" /><path d="M8.5 7.5V6a2 2 0 0 1 2-2h3a2 2 0 0 1 2 2v1.5" /></>,
  star: <path d="M12 4l2.3 4.8 5.2.7-3.8 3.6.9 5.1-4.6-2.5-4.6 2.5.9-5.1L4.5 9.5l5.2-.7z" />,
  lock: <><rect x="5" y="10.5" width="14" height="9.5" rx="2.5" /><path d="M8 10.5V8a4 4 0 0 1 8 0v2.5" /></>,
};

window.Icon = Icon;
