// Marketing OS — Icons (stroke-based, minimal)
const Icon = ({ name, size = 16, strokeWidth = 1.6, ...rest }) => {
  const common = {
    width: size, height: size,
    viewBox: '0 0 24 24',
    fill: 'none', stroke: 'currentColor',
    strokeWidth, strokeLinecap: 'round', strokeLinejoin: 'round',
    ...rest
  };
  const paths = {
    dashboard:  <><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"/></>,
    plus:       <><path d="M12 5v14M5 12h14"/></>,
    entry:      <><path d="M3 6h18M3 12h18M3 18h12"/></>,
    team:       <><circle cx="9" cy="8" r="3"/><path d="M3 21v-1a5 5 0 015-5h2a5 5 0 015 5v1"/><circle cx="17" cy="6" r="2.5"/><path d="M15 13h2a4 4 0 014 4v1"/></>,
    settings:   <><circle cx="12" cy="12" r="3"/><path d="M19.4 15a1.7 1.7 0 00.3 1.8l.1.1a2 2 0 11-2.8 2.8l-.1-.1a1.7 1.7 0 00-1.8-.3 1.7 1.7 0 00-1 1.5V21a2 2 0 11-4 0v-.1a1.7 1.7 0 00-1-1.5 1.7 1.7 0 00-1.8.3l-.1.1a2 2 0 11-2.8-2.8l.1-.1a1.7 1.7 0 00.3-1.8 1.7 1.7 0 00-1.5-1H3a2 2 0 110-4h.1a1.7 1.7 0 001.5-1 1.7 1.7 0 00-.3-1.8L4.2 7a2 2 0 112.8-2.8l.1.1a1.7 1.7 0 001.8.3H9a1.7 1.7 0 001-1.5V3a2 2 0 114 0v.1a1.7 1.7 0 001 1.5 1.7 1.7 0 001.8-.3l.1-.1a2 2 0 112.8 2.8l-.1.1a1.7 1.7 0 00-.3 1.8V9a1.7 1.7 0 001.5 1H21a2 2 0 110 4h-.1a1.7 1.7 0 00-1.5 1z"/></>,
    chart:      <><path d="M3 3v18h18"/><path d="M7 14l4-4 3 3 5-6"/></>,
    filter:     <><path d="M3 5h18l-7 9v6l-4-2v-4z"/></>,
    search:     <><circle cx="11" cy="11" r="7"/><path d="M21 21l-4.3-4.3"/></>,
    download:   <><path d="M12 3v12M7 10l5 5 5-5M5 21h14"/></>,
    check:      <><path d="M5 12l5 5L20 7"/></>,
    x:          <><path d="M6 6l12 12M18 6L6 18"/></>,
    alert:      <><circle cx="12" cy="12" r="9"/><path d="M12 8v4M12 16h.01"/></>,
    info:       <><circle cx="12" cy="12" r="9"/><path d="M12 8h.01M11 12h1v4h1"/></>,
    calendar:   <><rect x="3" y="5" width="18" height="16" rx="2"/><path d="M16 3v4M8 3v4M3 11h18"/></>,
    link:       <><path d="M10 14a5 5 0 007 0l3-3a5 5 0 00-7-7l-1 1"/><path d="M14 10a5 5 0 00-7 0l-3 3a5 5 0 007 7l1-1"/></>,
    money:      <><rect x="2" y="6" width="20" height="12" rx="2"/><circle cx="12" cy="12" r="3"/><path d="M6 12h.01M18 12h.01"/></>,
    arrowUp:    <><path d="M7 14l5-5 5 5"/></>,
    arrowDown:  <><path d="M7 10l5 5 5-5"/></>,
    arrowRight: <><path d="M5 12h14M13 6l6 6-6 6"/></>,
    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"/></>,
    user:       <><circle cx="12" cy="8" r="4"/><path d="M4 21v-1a6 6 0 016-6h4a6 6 0 016 6v1"/></>,
    crown:      <><path d="M3 17h18l-2-9-4 3-4-6-4 6-4-3z"/></>,
    shield:     <><path d="M12 3l8 3v5c0 5-3.5 8.5-8 10-4.5-1.5-8-5-8-10V6l8-3z"/></>,
    star:       <><path d="M12 3l2.6 5.4 6 .9-4.3 4.2 1 6-5.3-2.8L6.7 19.5l1-6L3.4 9.3l6-.9z"/></>,
    save:       <><path d="M5 3h11l3 3v15H5z"/><path d="M8 3v6h8V3M8 21v-7h8v7"/></>,
    upload:     <><path d="M12 21V9M7 14l5-5 5 5M5 3h14"/></>,
    trash:      <><path d="M4 7h16M9 7V4h6v3M6 7l1 13h10l1-13"/></>,
    edit:       <><path d="M16 4l4 4-11 11H5v-4z"/></>,
    refresh:    <><path d="M3 12a9 9 0 0115-6.7L21 8M21 3v5h-5M21 12a9 9 0 01-15 6.7L3 16M3 21v-5h5"/></>,
    sparkle:    <><path d="M12 3v4M12 17v4M3 12h4M17 12h4M6 6l2 2M16 16l2 2M6 18l2-2M16 8l2-2"/></>,
    chevronDown:<><path d="M6 9l6 6 6-6"/></>,
    chevronUp:  <><path d="M6 15l6-6 6 6"/></>,
    sort:       <><path d="M8 4v16M4 8l4-4 4 4M16 20V4M12 16l4 4 4-4"/></>,
    menu:       <><path d="M3 6h18M3 12h18M3 18h18"/></>,
    bell:       <><path d="M6 8a6 6 0 1112 0c0 7 3 8 3 8H3s3-1 3-8M10 21a2 2 0 004 0"/></>,
    flag:       <><path d="M4 21V4h13l-2 4 2 4H4"/></>,
    target:     <><circle cx="12" cy="12" r="9"/><circle cx="12" cy="12" r="5"/><circle cx="12" cy="12" r="1.5"/></>,
    play:       <><path d="M6 4l14 8-14 8z" fill="currentColor" stroke="none"/></>,
    organic:    <><path d="M12 22s8-4 8-12V4H4v6c0 8 8 12 8 12z"/><path d="M12 22V8M8 11l4 4M16 11l-4 4"/></>,
    facebook:   <><path d="M14 7h2V4h-2c-2 0-3 1-3 3v2H9v3h2v8h3v-8h2.4l.6-3H14V7.5c0-.3.2-.5.5-.5z" fill="currentColor" stroke="none"/></>,
    tiktok:     <><path d="M16 8v3a4 4 0 01-3 3.9M16 8c-1 0-3-1-3-3v8a4 4 0 11-4-4" /></>,
    youtube:    <><rect x="3" y="6" width="18" height="12" rx="2"/><path d="M10 9.5l5 2.5-5 2.5z" fill="currentColor" stroke="none"/></>,
    google:     <><circle cx="12" cy="12" r="9"/><path d="M12 12h5a5 5 0 11-1.4-4"/></>,
    instagram:  <><rect x="3" y="3" width="18" height="18" rx="5"/><circle cx="12" cy="12" r="4"/><circle cx="17.5" cy="6.5" r="0.8" fill="currentColor" stroke="none"/></>,
    kick:       <><path d="M5 4h4v6h2V8h2V6h2V4h4v6l-2 2 2 2v6h-4v-2h-2v-2h-2v-2H9v6H5z"/></>,
    logout:     <><path d="M15 4h4v16h-4M3 12h12M11 8l4 4-4 4"/></>,
    grid:       <><rect x="3" y="3" width="7" height="7" rx="1.2"/><rect x="14" y="3" width="7" height="7" rx="1.2"/><rect x="3" y="14" width="7" height="7" rx="1.2"/><rect x="14" y="14" width="7" height="7" rx="1.2"/></>,
    list:       <><path d="M8 6h13M8 12h13M8 18h13M3 6h.01M3 12h.01M3 18h.01"/></>,
    sun:        <><circle cx="12" cy="12" r="4"/><path d="M12 3v2M12 19v2M3 12h2M19 12h2M5.6 5.6l1.4 1.4M17 17l1.4 1.4M5.6 18.4L7 17M17 7l1.4-1.4"/></>,
    flame:      <><path d="M8 16c-1-3 0-7 4-11 1 4 5 4 5 11a5 5 0 11-9 0z"/></>,
    layers:     <><path d="M12 3l9 5-9 5-9-5z"/><path d="M3 13l9 5 9-5M3 18l9 5 9-5"/></>,
  };
  return <svg {...common}>{paths[name] || paths.alert}</svg>;
};

window.Icon = Icon;
