// Stroked line-icon set — refined weight & metrics.

const Icon = ({ d, size = 20, className = '', strokeWidth = 1.4 }) => (
  <svg xmlns="http://www.w3.org/2000/svg" width={size} height={size}
       viewBox="0 0 24 24" fill="none" stroke="currentColor"
       strokeWidth={strokeWidth} strokeLinecap="round" strokeLinejoin="round"
       className={className} aria-hidden="true">
    {d}
  </svg>
);

const I = (children) => (p) => <Icon {...p} d={children} />;

const IconSearch  = I(<><circle cx="11" cy="11" r="7"/><path d="m20 20-3.5-3.5"/></>);
const IconUser    = I(<><circle cx="12" cy="8" r="4"/><path d="M4 21c0-4.4 3.6-8 8-8s8 3.6 8 8"/></>);
const IconHeart   = I(<path d="M12 21s-7-4.5-9.5-9A5.5 5.5 0 0 1 12 6a5.5 5.5 0 0 1 9.5 6c-2.5 4.5-9.5 9-9.5 9z"/>);
const IconBag     = I(<><path d="M5 8h14l-1.2 11.2A2 2 0 0 1 15.8 21H8.2a2 2 0 0 1-2-1.8L5 8z"/><path d="M9 8V6a3 3 0 0 1 6 0v2"/></>);
const IconMenu    = I(<><path d="M3 7h18"/><path d="M3 12h18"/><path d="M3 17h18"/></>);
const IconX       = I(<><path d="M6 6l12 12"/><path d="M18 6 6 18"/></>);
const IconChevL   = I(<path d="m15 18-6-6 6-6"/>);
const IconChevR   = I(<path d="m9 18 6-6-6-6"/>);
const IconChevD   = I(<path d="m6 9 6 6 6-6"/>);
const IconStar    = I(<path d="m12 3 2.6 5.6 6.1.6-4.6 4.2 1.3 6L12 16.7 6.6 19.4l1.3-6L3.3 9.2l6.1-.6L12 3z"/>);
const IconTruck   = I(<><path d="M3 7h11v9H3z"/><path d="M14 10h4l3 3v3h-7"/><circle cx="7" cy="18" r="2"/><circle cx="17" cy="18" r="2"/></>);
const IconReturn  = I(<><path d="M3 7v6h6"/><path d="M3 13c1.7-4 5.7-7 10-7a9 9 0 1 1-9 9"/></>);
const IconShield  = I(<><path d="M12 3 4 6v6c0 5 3.5 8.5 8 9 4.5-.5 8-4 8-9V6l-8-3z"/><path d="m9 12 2 2 4-4"/></>);
const IconGift    = I(<><path d="M3 10h18v4H3z"/><path d="M12 22V10"/><path d="M3 14v6a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-6"/><path d="M12 10c-1.5 0-3-1-3-3s1.5-3 3-3 3 1.5 3 3-1.5 3-3 3z"/></>);
const IconInsta   = I(<><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"/></>);
const IconFb      = I(<path d="M15 8h-2a1 1 0 0 0-1 1v3H9v3h3v6h3v-6h3l1-3h-4V9.5c0-.3.2-.5.5-.5H17"/>);
const IconTiktok  = I(<><path d="M9 12a4 4 0 1 0 4 4V4"/><path d="M13 4c.5 2.5 2.5 4.5 5 5"/></>);
const IconWA      = I(<><path d="M3 21l1.5-5A8 8 0 1 1 8 20.5L3 21z"/><path d="M8.5 9.5c.2.7.7 1.6 1.5 2.4.8.8 1.7 1.3 2.4 1.5l1-.7c.4-.3 1-.3 1.4 0l1.3.9c.2.2.3.5.2.8l-.3.9c-.2.6-.7.9-1.3.9-2.7 0-7-4.3-7-7 0-.6.3-1.1.9-1.3l.9-.3c.3-.1.6 0 .8.2l.9 1.3c.3.4.3 1 0 1.4l-.7 1z"/></>);
const IconMinus   = I(<path d="M5 12h14"/>);
const IconPlus    = I(<><path d="M12 5v14"/><path d="M5 12h14"/></>);
const IconCheck   = I(<path d="m5 12 5 5 9-11"/>);
const IconArrowR  = I(<><path d="M5 12h14"/><path d="m12 5 7 7-7 7"/></>);
const IconArrowL  = I(<><path d="M19 12H5"/><path d="m12 19-7-7 7-7"/></>);
const IconFilter  = I(<><path d="M3 6h18"/><path d="M6 12h12"/><path d="M10 18h4"/></>);
const IconGrid    = I(<><rect x="3" y="3" width="7" height="7"/><rect x="14" y="3" width="7" height="7"/><rect x="3" y="14" width="7" height="7"/><rect x="14" y="14" width="7" height="7"/></>);
const IconList    = I(<><path d="M8 6h13"/><path d="M8 12h13"/><path d="M8 18h13"/><circle cx="4" cy="6" r="0.5" fill="currentColor"/><circle cx="4" cy="12" r="0.5" fill="currentColor"/><circle cx="4" cy="18" r="0.5" fill="currentColor"/></>);
const IconRuler   = I(<><path d="M3 13 13 3l8 8L11 21z"/><path d="m7 11 2 2"/><path d="m10 8 2 2"/><path d="m13 11 2 2"/><path d="m16 8 2 2"/></>);
const IconGlobe   = I(<><circle cx="12" cy="12" r="9"/><path d="M3 12h18"/><path d="M12 3c2.5 3 4 6 4 9s-1.5 6-4 9c-2.5-3-4-6-4-9s1.5-6 4-9z"/></>);
const IconSparkle = I(<><path d="M12 3l1.6 4.6L18 9.2l-4.4 1.6L12 15.4l-1.6-4.6L6 9.2l4.4-1.6L12 3z"/><path d="M19 16l.7 1.8 1.8.7-1.8.7-.7 1.8-.7-1.8-1.8-.7 1.8-.7L19 16z"/></>);

window.RBIcons = { IconSearch, IconUser, IconHeart, IconBag, IconMenu, IconX, IconChevL, IconChevR, IconChevD,
  IconStar, IconTruck, IconReturn, IconShield, IconGift, IconInsta, IconFb, IconTiktok, IconWA,
  IconMinus, IconPlus, IconCheck, IconArrowR, IconArrowL, IconFilter, IconGrid, IconList, IconRuler,
  IconGlobe, IconSparkle };
