/* Lucide-style line icons (stroke 2, round caps) used across the storefront kit.
   Functional UI glyphs only — not brand illustration. Exposes window.AXIcons. */
const Svg = (p) => React.createElement('svg', Object.assign({ width:p.size||20, height:p.size||20, viewBox:'0 0 24 24', fill:'none', stroke:'currentColor', strokeWidth:p.sw||2, strokeLinecap:'round', strokeLinejoin:'round', 'aria-hidden':true, style:p.style }, {}), p.children);

const AXIcons = {
  Search: (p={}) => <Svg {...p}><circle cx="11" cy="11" r="7"/><path d="m21 21-4.3-4.3"/></Svg>,
  Cart: (p={}) => <Svg {...p}><circle cx="9" cy="21" r="1"/><circle cx="20" cy="21" r="1"/><path d="M1 1h4l2.7 13.4a2 2 0 0 0 2 1.6h9.7a2 2 0 0 0 2-1.6L23 6H6"/></Svg>,
  User: (p={}) => <Svg {...p}><circle cx="12" cy="8" r="4"/><path d="M4 21c0-4 4-6 8-6s8 2 8 6"/></Svg>,
  Menu: (p={}) => <Svg {...p}><path d="M3 6h18M3 12h18M3 18h18"/></Svg>,
  X: (p={}) => <Svg {...p}><path d="M18 6 6 18M6 6l12 12"/></Svg>,
  Heart: (p={}) => <Svg {...p}><path d="M20.8 5.6a5 5 0 0 0-7.1 0L12 7.3l-1.7-1.7a5 5 0 1 0-7.1 7.1L12 21l8.8-8.3a5 5 0 0 0 0-7.1z"/></Svg>,
  Star: (p={}) => <Svg {...p}><path d="m12 2 3 6.5 7 .9-5 4.8 1.3 7L12 18l-6.6 3.2L6.7 14l-5-4.8 7-.9z"/></Svg>,
  Truck: (p={}) => <Svg {...p}><path d="M1 4h13v12H1z"/><path d="M14 8h4l3 3v5h-7z"/><circle cx="6" cy="19" r="1.6"/><circle cx="17.5" cy="19" r="1.6"/></Svg>,
  Shield: (p={}) => <Svg {...p}><path d="M12 2 4 5v6c0 5 3.4 8.3 8 10 4.6-1.7 8-5 8-10V5z"/><path d="m9 12 2 2 4-4"/></Svg>,
  Refresh: (p={}) => <Svg {...p}><path d="M3 12a9 9 0 0 1 15-6.7L21 8"/><path d="M21 3v5h-5"/><path d="M21 12a9 9 0 0 1-15 6.7L3 16"/><path d="M3 21v-5h5"/></Svg>,
  Headset: (p={}) => <Svg {...p}><path d="M4 14v-2a8 8 0 0 1 16 0v2"/><path d="M4 14a2 2 0 0 1 2 2v2a2 2 0 0 1-2 2 2 2 0 0 1-2-2v-2a2 2 0 0 1 2-2zM20 14a2 2 0 0 0-2 2v2a2 2 0 0 0 2 2 2 2 0 0 0 2-2v-2a2 2 0 0 0-2-2z"/></Svg>,
  ChevronRight: (p={}) => <Svg {...p}><path d="m9 6 6 6-6 6"/></Svg>,
  ChevronDown: (p={}) => <Svg {...p}><path d="m6 9 6 6 6-6"/></Svg>,
  Check: (p={}) => <Svg {...p}><path d="M20 6 9 17l-5-5"/></Svg>,
  CheckCircle: (p={}) => <Svg {...p}><circle cx="12" cy="12" r="10"/><path d="m8 12 3 3 5-6"/></Svg>,
  Plus: (p={}) => <Svg {...p}><path d="M12 5v14M5 12h14"/></Svg>,
  Minus: (p={}) => <Svg {...p}><path d="M5 12h14"/></Svg>,
  Trash: (p={}) => <Svg {...p}><path d="M3 6h18M8 6V4h8v2M6 6l1 14h10l1-14"/></Svg>,
  Filter: (p={}) => <Svg {...p}><path d="M3 5h18l-7 8v6l-4-2v-4z"/></Svg>,
  Lock: (p={}) => <Svg {...p}><rect x="4" y="11" width="16" height="9" rx="2"/><path d="M8 11V7a4 4 0 0 1 8 0v4"/></Svg>,
  Mail: (p={}) => <Svg {...p}><rect x="3" y="5" width="18" height="14" rx="2"/><path d="m3 7 9 6 9-6"/></Svg>,
  Bolt: (p={}) => <Svg {...p}><path d="M13 2 4 14h6l-1 8 9-12h-6z"/></Svg>,
  ArrowRight: (p={}) => <Svg {...p}><path d="M5 12h14M13 6l6 6-6 6"/></Svg>,
  Star8: (p={}) => <Svg {...p}><path d="m12 2 3 6.5 7 .9-5 4.8 1.3 7L12 18l-6.6 3.2L6.7 14l-5-4.8 7-.9z"/></Svg>,
  Eye: (p={}) => <Svg {...p}><path d="M1 12s4-7 11-7 11 7 11 7-4 7-11 7-11-7-11-7z"/><circle cx="12" cy="12" r="3"/></Svg>,
  EyeOff: (p={}) => <Svg {...p}><path d="M9.9 4.2A10.6 10.6 0 0 1 12 4c7 0 11 8 11 8a18 18 0 0 1-2.4 3.4M6.6 6.6A18 18 0 0 0 1 12s4 8 11 8a10.6 10.6 0 0 0 4.5-1M9.9 9.9a3 3 0 0 0 4.2 4.2"/><path d="M1 1l22 22"/></Svg>,
  MapPin: (p={}) => <Svg {...p}><path d="M20 10c0 6-8 12-8 12s-8-6-8-12a8 8 0 0 1 16 0z"/><circle cx="12" cy="10" r="3"/></Svg>,
  Package: (p={}) => <Svg {...p}><path d="M12 2 3 7v10l9 5 9-5V7z"/><path d="M3 7l9 5 9-5M12 12v10"/></Svg>,
  Settings: (p={}) => <Svg {...p}><circle cx="12" cy="12" r="3"/><path d="M19.4 15a1.6 1.6 0 0 0 .3 1.8l.1.1a2 2 0 1 1-2.8 2.8l-.1-.1a1.6 1.6 0 0 0-2.7 1.1V21a2 2 0 1 1-4 0v-.1A1.6 1.6 0 0 0 7 19.4a1.6 1.6 0 0 0-1.8.3l-.1.1a2 2 0 1 1-2.8-2.8l.1-.1a1.6 1.6 0 0 0-1.1-2.7H1a2 2 0 1 1 0-4h.1A1.6 1.6 0 0 0 2.6 7a1.6 1.6 0 0 0-.3-1.8l-.1-.1a2 2 0 1 1 2.8-2.8l.1.1a1.6 1.6 0 0 0 1.8.3H7a1.6 1.6 0 0 0 1-1.5V1a2 2 0 1 1 4 0v.1a1.6 1.6 0 0 0 2.7 1.1 1.6 1.6 0 0 0 .3-.3l.1-.1a2 2 0 1 1 2.8 2.8l-.1.1a1.6 1.6 0 0 0-.3 1.8V7a1.6 1.6 0 0 0 1.5 1H23a2 2 0 1 1 0 4h-.1a1.6 1.6 0 0 0-1.5 1z"/></Svg>,
  LogOut: (p={}) => <Svg {...p}><path d="M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4M16 17l5-5-5-5M21 12H9"/></Svg>,
  Gift: (p={}) => <Svg {...p}><rect x="3" y="8" width="18" height="4" rx="1"/><path d="M12 8v13M4 12v7a1 1 0 0 0 1 1h14a1 1 0 0 0 1-1v-7"/><path d="M12 8C12 8 11 3 8 3a2.5 2.5 0 0 0 0 5zM12 8c0 0 1-5 4-5a2.5 2.5 0 0 1 0 5z"/></Svg>,
  Edit: (p={}) => <Svg {...p}><path d="M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7"/><path d="M18.5 2.5a2.1 2.1 0 0 1 3 3L12 15l-4 1 1-4z"/></Svg>,
  HelpCircle: (p={}) => <Svg {...p}><circle cx="12" cy="12" r="10"/><path d="M9.1 9a3 3 0 0 1 5.8 1c0 2-3 3-3 3"/><path d="M12 17h.01"/></Svg>,
  Phone: (p={}) => <Svg {...p}><path d="M22 16.9v3a2 2 0 0 1-2.2 2 19.8 19.8 0 0 1-8.6-3.1 19.5 19.5 0 0 1-6-6 19.8 19.8 0 0 1-3.1-8.7A2 2 0 0 1 4.1 2h3a2 2 0 0 1 2 1.7c.1 1 .4 1.9.7 2.8a2 2 0 0 1-.5 2.1L8.1 9.9a16 16 0 0 0 6 6l1.3-1.3a2 2 0 0 1 2.1-.4c.9.3 1.8.6 2.8.7a2 2 0 0 1 1.7 2z"/></Svg>,
  MessageCircle: (p={}) => <Svg {...p}><path d="M21 11.5a8.4 8.4 0 0 1-9 8.4 9 9 0 0 1-4-1L3 21l1.1-4A8.4 8.4 0 0 1 12 3a8.4 8.4 0 0 1 9 8.5z"/></Svg>,
  FileText: (p={}) => <Svg {...p}><path d="M14 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V8z"/><path d="M14 2v6h6M9 13h6M9 17h6M9 9h1"/></Svg>,
  Clock: (p={}) => <Svg {...p}><circle cx="12" cy="12" r="10"/><path d="M12 6v6l4 2"/></Svg>,
};
window.AXIcons = AXIcons;
