// icons.jsx — minimal stroke icons (no copyrighted marks)

const Icon = ({ children, size = 18, stroke = 1.6, ...rest }) => (
  <svg width={size} height={size} viewBox="0 0 24 24" fill="none"
       stroke="currentColor" strokeWidth={stroke}
       strokeLinecap="round" strokeLinejoin="round" {...rest}>
    {children}
  </svg>
);

const IconCheck = (p) => <Icon {...p}><path d="M4 12.5l5 5L20 6.5"/></Icon>;
const IconArrow = (p) => <Icon {...p}><path d="M5 12h14M13 6l6 6-6 6"/></Icon>;
const IconArrowSm = (p) => <Icon size={14} {...p}><path d="M5 12h14M13 6l6 6-6 6"/></Icon>;
const IconPlus = (p) => <Icon {...p}><path d="M12 5v14M5 12h14"/></Icon>;
const IconSpark = (p) => <Icon {...p}><path d="M12 3v4M12 17v4M3 12h4M17 12h4M5.6 5.6l2.8 2.8M15.6 15.6l2.8 2.8M5.6 18.4l2.8-2.8M15.6 8.4l2.8-2.8"/></Icon>;
const IconLayers = (p) => <Icon {...p}><path d="M12 3l9 5-9 5-9-5 9-5z"/><path d="M3 13l9 5 9-5"/><path d="M3 17l9 5 9-5"/></Icon>;
const IconFunnel = (p) => <Icon {...p}><path d="M3 5h18l-7 8v6l-4 2v-8L3 5z"/></Icon>;
const IconBox = (p) => <Icon {...p}><path d="M3 7l9-4 9 4-9 4-9-4z"/><path d="M3 7v10l9 4 9-4V7"/><path d="M12 11v10"/></Icon>;
const IconCode = (p) => <Icon {...p}><path d="M8 7l-5 5 5 5M16 7l5 5-5 5M14 5l-4 14"/></Icon>;
const IconBolt = (p) => <Icon {...p}><path d="M13 3L4 14h7l-1 7 9-11h-7l1-7z"/></Icon>;
const IconShield = (p) => <Icon {...p}><path d="M12 3l8 3v6c0 5-3.5 8-8 9-4.5-1-8-4-8-9V6l8-3z"/></Icon>;
const IconSearch = (p) => <Icon {...p}><circle cx="11" cy="11" r="7"/><path d="M20 20l-3.5-3.5"/></Icon>;
const IconCard = (p) => <Icon {...p}><rect x="3" y="6" width="18" height="13" rx="2"/><path d="M3 10h18M7 15h3"/></Icon>;
const IconDevice = (p) => <Icon {...p}><rect x="3" y="4" width="14" height="12" rx="2"/><path d="M2 20h16M17 8h4v8h-4"/></Icon>;
const IconMail = (p) => <Icon {...p}><rect x="3" y="5" width="18" height="14" rx="2"/><path d="M3 7l9 7 9-7"/></Icon>;
const IconChat = (p) => <Icon {...p}><path d="M4 6a2 2 0 012-2h12a2 2 0 012 2v9a2 2 0 01-2 2h-7l-4 4v-4H6a2 2 0 01-2-2V6z"/></Icon>;
const IconCal = (p) => <Icon {...p}><rect x="3" y="5" width="18" height="16" rx="2"/><path d="M3 10h18M8 3v4M16 3v4"/></Icon>;
const IconGlobe = (p) => <Icon {...p}><circle cx="12" cy="12" r="9"/><path d="M3 12h18M12 3c3 3 3 15 0 18M12 3c-3 3-3 15 0 18"/></Icon>;
const IconChart = (p) => <Icon {...p}><path d="M3 20h18"/><path d="M6 16V10M11 16V6M16 16v-4M21 16V8"/></Icon>;
const IconCpu = (p) => <Icon {...p}><rect x="6" y="6" width="12" height="12" rx="2"/><rect x="9" y="9" width="6" height="6"/><path d="M9 2v3M15 2v3M9 19v3M15 19v3M2 9h3M2 15h3M19 9h3M19 15h3"/></Icon>;
const IconWhats = (p) => <Icon {...p}><path d="M3 21l1.5-5A8 8 0 1 1 8 19.5L3 21z"/><path d="M9 9c.5 2 1.5 3 3.5 4.5 1.5 1 2 .5 2.5 0 .8-1 1.6-.5 2.5.5"/></Icon>;
const IconCheckCircle = (p) => <Icon {...p}><circle cx="12" cy="12" r="9"/><path d="M8 12.5l3 3 5-6"/></Icon>;

Object.assign(window, {
  Icon, IconCheck, IconArrow, IconArrowSm, IconPlus, IconSpark, IconLayers,
  IconFunnel, IconBox, IconCode, IconBolt, IconShield, IconSearch, IconCard,
  IconDevice, IconMail, IconChat, IconCal, IconGlobe, IconChart, IconCpu,
  IconWhats, IconCheckCircle,
});
