// Line icons — geometric, matching the real app's sidebar iconography
const mk = (paths, box) => ({ size = 16 }) => (
  <svg width={size} height={size} viewBox={box || '0 0 24 24'} fill="none">{paths}</svg>
);
const S = { stroke: 'currentColor', strokeWidth: 1.6, strokeLinecap: 'round', strokeLinejoin: 'round' };

const Icon = {
  Logo: ({ size = 28 }) => (
    <svg width={size} height={size} viewBox="0 0 100 100" role="img" aria-label="Gajo" style={{ display: 'block', flexShrink: 0 }}>
      <rect width="100" height="100" rx="23" fill="#0F4A3C"/>
      <circle cx="50" cy="52" r="34" fill="#F7F1E6"/>
      <circle cx="50" cy="52" r="22.5" fill="none" stroke="#0F4A3C" strokeWidth="3.2"/>
      <rect x="47" y="12" width="45" height="43" fill="#0F4A3C"/>
      <path d="M53 49V18.5A30.5 30.5 0 0 1 83.5 49Z" fill="#D9714E"/>
    </svg>
  ),
  Check: mk(<path d="M4 12.5l5 5 11-11" {...S}/>),
  Arrow: mk(<path d="M4 12h15m0 0l-5.5-5.5M19 12l-5.5 5.5" {...S}/>),
  ChevronDown: mk(<path d="M6 9.5l6 6 6-6" {...S}/>),
  ChevronLeft: mk(<path d="M14.5 6l-6 6 6 6" {...S}/>),
  ChevronRight: mk(<path d="M9.5 6l6 6-6 6" {...S}/>),
  X: mk(<path d="M5 5l14 14M19 5L5 19" {...S}/>),
  Plus: mk(<path d="M12 5v14M5 12h14" {...S}/>),
  Minus: mk(<path d="M5 12h14" {...S}/>),
  Trash: mk(<><path d="M4 7h16M9 7V4.5h6V7M6 7l1 13h10l1-13" {...S}/></>),
  Pencil: mk(<path d="M4 20h4L20 8l-4-4L4 16v4z" {...S}/>),
  Eye: mk(<><path d="M2 12s3.5-6 10-6 10 6 10 6-3.5 6-10 6-10-6-10-6z" {...S}/><circle cx="12" cy="12" r="2.8" {...S}/></>),
  Up: mk(<path d="M6 15l6-6 6 6" {...S}/>),
  Down: mk(<path d="M6 9l6 6 6-6" {...S}/>),
  Alert: mk(<><path d="M12 3.5L22 20H2L12 3.5z" {...S}/><path d="M12 10v4M12 17h.01" {...S}/></>),
  Bell: mk(<><path d="M6.5 9.5a5.5 5.5 0 0111 0c0 6 2.5 7 2.5 7H4s2.5-1 2.5-7z" {...S}/><path d="M10 20h4" {...S}/></>),
  Spark: mk(<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" {...S}/>),
  Clock: mk(<><circle cx="12" cy="12" r="9" {...S}/><path d="M12 7v5l3.5 2" {...S}/></>),

  // Sidebar module icons
  Home: mk(<path d="M4 10.5L12 4l8 6.5V20H4v-9.5z" {...S}/>),
  Cart: mk(<><path d="M3 4h2.5l2.5 10h9l2.5-7H7" {...S}/><circle cx="9.5" cy="19" r="1.6" {...S}/><circle cx="17" cy="19" r="1.6" {...S}/></>),
  Doc: mk(<><path d="M6 3h8l4 4v14H6V3z" {...S}/><path d="M9 11h6M9 15h6" {...S}/></>),
  Box: mk(<><path d="M12 3l8 4.5v9L12 21l-8-4.5v-9L12 3z" {...S}/><path d="M4 7.5l8 4.5 8-4.5M12 12v9" {...S}/></>),
  Book: mk(<><path d="M4 5.5C4 4.7 4.7 4 5.5 4H11v16H5.5A1.5 1.5 0 014 18.5v-13z" {...S}/><path d="M20 5.5c0-.8-.7-1.5-1.5-1.5H13v16h5.5a1.5 1.5 0 001.5-1.5v-13z" {...S}/></>),
  Chef: mk(<><path d="M6.5 11a4 4 0 015.5-5.6A4 4 0 0117.5 11H6.5z" {...S}/><path d="M7 11v7.5c0 .8.7 1.5 1.5 1.5h7c.8 0 1.5-.7 1.5-1.5V11" {...S}/></>),
  Clipboard: mk(<><path d="M8 4.5H6.5A1.5 1.5 0 005 6v13a1.5 1.5 0 001.5 1.5h11A1.5 1.5 0 0019 19V6a1.5 1.5 0 00-1.5-1.5H16" {...S}/><rect x="8" y="2.8" width="8" height="3.4" rx="1" {...S}/><path d="M9 11h6M9 15h4" {...S}/></>),
  Wine: mk(<><path d="M7.5 4h9l-.8 6a3.7 3.7 0 01-7.4 0L7.5 4z" {...S}/><path d="M12 14v6M9 20h6" {...S}/></>),
  Cocktail: mk(<><path d="M4 5h16l-8 8-8-8z" {...S}/><path d="M12 13v7M9 20h6" {...S}/></>),
  Dollar: mk(<><path d="M12 3v18" {...S}/><path d="M16.5 7.5c0-1.7-2-2.7-4.5-2.7S7.5 5.9 7.5 8s2 2.7 4.5 3.3 4.5 1.3 4.5 3.4-2 2.9-4.5 2.9-4.5-1.1-4.5-2.9" {...S}/></>),
  Trend: mk(<><path d="M3 17l6-6 4 4 8-8" {...S}/><path d="M16 7h5v5" {...S}/></>),
  Archive: mk(<><rect x="3.5" y="4" width="17" height="4" rx="1.2" {...S}/><path d="M5 8v11h14V8" {...S}/><path d="M10 12h4" {...S}/></>),
  Bars: mk(<path d="M3 20h18M6.5 20V11M11.5 20V5M16.5 20v-6" {...S}/>),
  Excel: mk(<><path d="M6 3h8l4 4v14H6V3z" {...S}/><path d="M9.5 11.5l5 5M14.5 11.5l-5 5" {...S}/></>),
  Truck: mk(<><path d="M3 7h11v10H3V7zM14 10h4l3 3v4h-7" {...S}/><circle cx="7" cy="18.5" r="1.7" {...S}/><circle cx="17" cy="18.5" r="1.7" {...S}/></>),
  Flask: mk(<><path d="M9 3h6M10 3v6l-5 9a2 2 0 002 3h10a2 2 0 002-3l-5-9V3" {...S}/><path d="M7 14h10" {...S}/></>),
  Receipt: mk(<><path d="M5 3h14v18l-3-2-2 2-2-2-2 2-2-2-3 2V3z" {...S}/><path d="M9 8h6M9 12h6M9 16h4" {...S}/></>),
  Chart: mk(<path d="M3 21h18M5 17V11M10 17V7M15 17v-9M20 17v-5" {...S}/>),
};

window.Icon = Icon;
