// Minimal stroke icons in BaySync style (Heroicons/Lucide-like).
// Globalize so other Babel scripts can reach them.

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

const IconCalendar = (p) => <Ic {...p}><rect x="3" y="5" width="18" height="16" rx="2"/><path d="M16 3v4M8 3v4M3 10h18"/></Ic>;
const IconWrench = (p) => <Ic {...p}><path d="M14.7 6.3a4 4 0 0 0 5 5l-2-2 1.4-1.4 2 2a4 4 0 0 1-5.7 5.7l-7.8 7.8a2 2 0 1 1-2.8-2.8l7.8-7.8a4 4 0 0 1 5.7-5.7z" transform="translate(-1,-1)"/></Ic>;
const IconClipboard = (p) => <Ic {...p}><rect x="6" y="4" width="12" height="18" rx="2"/><path d="M9 4h6v3H9z"/><path d="M9 12h6M9 16h4"/></Ic>;
const IconCar = (p) => <Ic {...p}><path d="M3 13l2-5a3 3 0 0 1 3-2h8a3 3 0 0 1 3 2l2 5"/><path d="M3 13h18v5a1 1 0 0 1-1 1h-2a1 1 0 0 1-1-1v-1H7v1a1 1 0 0 1-1 1H4a1 1 0 0 1-1-1z"/><circle cx="7.5" cy="16.5" r="1"/><circle cx="16.5" cy="16.5" r="1"/></Ic>;
const IconCpu = (p) => <Ic {...p}><rect x="5" y="5" width="14" height="14" rx="2"/><rect x="9" y="9" width="6" height="6"/><path d="M9 2v3M15 2v3M9 19v3M15 19v3M2 9h3M2 15h3M19 9h3M19 15h3"/></Ic>;
const IconBox = (p) => <Ic {...p}><path d="M21 8l-9-5-9 5 9 5 9-5z"/><path d="M3 8v8l9 5 9-5V8"/><path d="M12 13v8"/></Ic>;
const IconChart = (p) => <Ic {...p}><path d="M3 3v18h18"/><path d="M7 14l4-4 3 3 5-6"/></Ic>;
const IconShield = (p) => <Ic {...p}><path d="M12 3l8 3v6c0 5-3.5 8.5-8 9-4.5-.5-8-4-8-9V6z"/><path d="M9 12l2 2 4-4"/></Ic>;
const IconBell = (p) => <Ic {...p}><path d="M6 8a6 6 0 1 1 12 0c0 7 3 7 3 9H3c0-2 3-2 3-9z"/><path d="M10 21a2 2 0 0 0 4 0"/></Ic>;
const IconUsers = (p) => <Ic {...p}><circle cx="9" cy="8" r="3.5"/><path d="M3 20c0-3.5 2.5-6 6-6s6 2.5 6 6"/><circle cx="17" cy="9" r="2.5"/><path d="M14 14c4 0 7 2 7 5"/></Ic>;
const IconCheck = (p) => <Ic {...p}><path d="M5 13l4 4L19 7"/></Ic>;
const IconArrow = (p) => <Ic {...p}><path d="M5 12h14M13 6l6 6-6 6"/></Ic>;
const IconLock = (p) => <Ic {...p}><rect x="5" y="11" width="14" height="10" rx="2"/><path d="M8 11V7a4 4 0 0 1 8 0v4"/></Ic>;
const IconX = (p) => <Ic {...p}><path d="M6 6l12 12M18 6L6 18"/></Ic>;
const IconWarn = (p) => <Ic {...p}><path d="M12 3l10 18H2z"/><path d="M12 10v5M12 18v.5"/></Ic>;
const IconSpark = (p) => <Ic {...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"/></Ic>;
const IconChat = (p) => <Ic {...p}><path d="M21 12a8 8 0 0 1-12 7l-5 1 1-5A8 8 0 1 1 21 12z"/></Ic>;
const IconBay = (p) => <Ic {...p}><rect x="3" y="6" width="18" height="12" rx="1"/><path d="M9 6v12M15 6v12"/></Ic>;
const IconRoute = (p) => <Ic {...p}><circle cx="6" cy="6" r="2"/><circle cx="18" cy="18" r="2"/><path d="M8 6h6a4 4 0 0 1 0 8h-4a4 4 0 0 0 0 8h6"/></Ic>;
const IconLayers = (p) => <Ic {...p}><path d="M12 3l9 5-9 5-9-5z"/><path d="M3 12l9 5 9-5M3 16l9 5 9-5"/></Ic>;
const IconKey = (p) => <Ic {...p}><circle cx="8" cy="14" r="4"/><path d="M11 11l9-9M16 6l2 2M19 3l2 2"/></Ic>;
const IconDoc = (p) => <Ic {...p}><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 3v5h5M9 13h6M9 17h4"/></Ic>;
const IconBolt = (p) => <Ic {...p}><path d="M13 2L4 14h7l-1 8 9-12h-7z"/></Ic>;
const IconShield2 = (p) => <Ic {...p}><path d="M12 3l8 3v6c0 5-3.5 8.5-8 9-4.5-.5-8-4-8-9V6z"/></Ic>;
const IconEye = (p) => <Ic {...p}><path d="M1 12s4-8 11-8 11 8 11 8-4 8-11 8-11-8-11-8z"/><circle cx="12" cy="12" r="3"/></Ic>;

Object.assign(window, {
  Ic, IconCalendar, IconWrench, IconClipboard, IconCar, IconCpu, IconBox,
  IconChart, IconShield, IconBell, IconUsers, IconCheck, IconArrow, IconLock,
  IconX, IconWarn, IconSpark, IconChat, IconBay, IconRoute, IconLayers,
  IconKey, IconDoc, IconBolt, IconShield2, IconEye
});
