// MJC Icons - lightweight inline SVGs
// All icons follow lucide / phosphor-style stroke conventions

const I = ({ d, size = 18, stroke = 2, fill, viewBox = '0 0 24 24' }) => (
  <svg width={size} height={size} viewBox={viewBox} fill={fill || 'none'} stroke="currentColor" strokeWidth={stroke} strokeLinecap="round" strokeLinejoin="round">
    {d}
  </svg>
);

const Icon = {
  Home: (p) => <I {...p} d={<><path d="M3 11l9-8 9 8" /><path d="M5 10v10h14V10" /><path d="M10 20v-6h4v6" /></>} />,
  Sparkle: (p) => <I {...p} d={<><path d="M12 3v3M12 18v3M3 12h3M18 12h3M5.6 5.6l2.1 2.1M16.3 16.3l2.1 2.1M5.6 18.4l2.1-2.1M16.3 7.7l2.1-2.1" /><circle cx="12" cy="12" r="3" /></>} />,
  Bot: (p) => <I {...p} d={<><rect x="4" y="7" width="16" height="12" rx="3" /><circle cx="9" cy="13" r="1" fill="currentColor" /><circle cx="15" cy="13" r="1" fill="currentColor" /><path d="M12 3v4M8 19v2M16 19v2" /></>} />,
  Calendar: (p) => <I {...p} d={<><rect x="3" y="5" width="18" height="16" rx="2" /><path d="M3 9h18M8 3v4M16 3v4" /></>} />,
  Bus: (p) => <I {...p} d={<><rect x="3" y="6" width="18" height="11" rx="2" /><path d="M3 11h18M7 17v2M17 17v2" /><circle cx="8" cy="14" r="1" fill="currentColor" /><circle cx="16" cy="14" r="1" fill="currentColor" /></>} />,
  Compass: (p) => <I {...p} d={<><circle cx="12" cy="12" r="9" /><path d="M16 8l-2 6-6 2 2-6 6-2z" fill="currentColor" stroke="none" /></>} />,
  Cash: (p) => <I {...p} d={<><rect x="3" y="6" width="18" height="12" rx="2" /><circle cx="12" cy="12" r="3" /><path d="M6 9.5h.01M18 14.5h.01" /></>} />,
  Users: (p) => <I {...p} d={<><circle cx="9" cy="8" r="3" /><path d="M3 20c0-3 2.5-5 6-5s6 2 6 5" /><circle cx="17" cy="9" r="2.5" /><path d="M15 20c0-2 1.5-3.5 4-3.5s2 0 2 0" /></>} />,
  Building: (p) => <I {...p} d={<><rect x="5" y="3" width="14" height="18" rx="1" /><path d="M9 7h1M14 7h1M9 11h1M14 11h1M9 15h1M14 15h1M10 21v-4h4v4" /></>} />,
  Chart: (p) => <I {...p} d={<><path d="M3 21h18" /><path d="M6 17V9M11 17V5M16 17v-6M21 17V3" /></>} />,
  Briefcase: (p) => <I {...p} d={<><rect x="3" y="7" width="18" height="13" rx="2" /><path d="M8 7V5a2 2 0 012-2h4a2 2 0 012 2v2M3 13h18" /></>} />,
  Settings: (p) => <I {...p} d={<><circle cx="12" cy="12" r="3" /><path d="M12 2v3M12 19v3M4 12H1M23 12h-3M5 5l2 2M17 17l2 2M5 19l2-2M17 7l2-2" /></>} />,
  Search: (p) => <I {...p} d={<><circle cx="11" cy="11" r="7" /><path d="M21 21l-4.3-4.3" /></>} />,
  Bell: (p) => <I {...p} d={<><path d="M6 8a6 6 0 0112 0c0 7 3 9 3 9H3s3-2 3-9" /><path d="M10 21a2 2 0 004 0" /></>} />,
  ChevronDown: (p) => <I {...p} d={<path d="M6 9l6 6 6-6" />} />,
  ChevronUp: (p) => <I {...p} d={<path d="M6 15l6-6 6 6" />} />,
  ChevronRight: (p) => <I {...p} d={<path d="M9 6l6 6-6 6" />} />,
  ChevronLeft: (p) => <I {...p} d={<path d="M15 6l-6 6 6 6" />} />,
  ArrowUp: (p) => <I {...p} d={<path d="M12 19V5M5 12l7-7 7 7" />} />,
  ArrowDown: (p) => <I {...p} d={<path d="M12 5v14M5 12l7 7 7-7" />} />,
  Plus: (p) => <I {...p} d={<path d="M12 5v14M5 12h14" />} />,
  Filter: (p) => <I {...p} d={<path d="M3 5h18l-7 9v5l-4 2v-7L3 5z" />} />,
  Download: (p) => <I {...p} d={<><path d="M12 3v12" /><path d="M7 10l5 5 5-5" /><path d="M5 19h14" /></>} />,
  Sort: (p) => <I {...p} d={<><path d="M8 3v18M5 6l3-3 3 3" /><path d="M16 21V3M13 18l3 3 3-3" /></>} />,
  More: (p) => <I {...p} d={<><circle cx="12" cy="5" r="1.5" fill="currentColor" /><circle cx="12" cy="12" r="1.5" fill="currentColor" /><circle cx="12" cy="19" r="1.5" fill="currentColor" /></>} />,
  Edit: (p) => <I {...p} d={<><path d="M11 4H4v16h16v-7" /><path d="M18 2l4 4-11 11H7v-4L18 2z" /></>} />,
  Eye: (p) => <I {...p} d={<><path d="M2 12s4-7 10-7 10 7 10 7-4 7-10 7-10-7-10-7z" /><circle cx="12" cy="12" r="3" /></>} />,
  Check: (p) => <I {...p} d={<path d="M5 12l5 5L20 7" />} />,
  X: (p) => <I {...p} d={<path d="M6 6l12 12M6 18L18 6" />} />,
  Whatsapp: (p) => <I {...p} d={<><path d="M3 21l1.7-5A8.5 8.5 0 113.5 17L3 21z" /><path d="M9 10s.5 3 3 5.5c.5.5 3 .5 3-.5 0-.5-1.5-1-2-1.5s-.5 1-1.5 1c-1.5 0-3-3-3-3 0-.5 1-.5 1-1 0-1-1-2-2-2-.5 0-1.5.5-1.5 1.5z" fill="currentColor" stroke="none" /></>} />,
  WeChat: (p) => <I {...p} d={<><ellipse cx="9" cy="9" rx="6" ry="5" /><circle cx="7" cy="8" r=".7" fill="currentColor" /><circle cx="11" cy="8" r=".7" fill="currentColor" /><path d="M14 19a5 5 0 100-10 5 5 0 000 10z" /><circle cx="13" cy="14" r=".5" fill="currentColor" /><circle cx="15" cy="14" r=".5" fill="currentColor" /><path d="M14 19l-2 1 .6-1.5" /></>} />,
  Globe: (p) => <I {...p} d={<><circle cx="12" cy="12" r="9" /><path d="M3 12h18M12 3a14 14 0 010 18M12 3a14 14 0 000 18" /></>} />,
  Phone: (p) => <I {...p} d={<path d="M21 16.5c0 .9-2 3-3.5 3C9 19 5 15 4.5 6.5c0-1.5 2-3.5 3-3.5.5 0 2 .5 2.5 1.5L11 6.5c.5 1-.5 1.5-1 2 .5 1.5 2 3 3.5 3.5.5-.5 1-1.5 2-1L17 12c1 .5 1.5 2 1.5 2.5z" />} />,
  Flag: (p) => <I {...p} d={<><path d="M4 21V3" /><path d="M4 4h12l-2 4 2 4H4" /></>} />,
  Doc: (p) => <I {...p} d={<><path d="M14 3H6a2 2 0 00-2 2v14a2 2 0 002 2h12a2 2 0 002-2V9z" /><path d="M14 3v6h6M8 13h8M8 17h5" /></>} />,
  Star: (p) => <I {...p} d={<path d="M12 3l3 6 6 1-4.5 4.5L18 21l-6-3-6 3 1.5-6.5L3 10l6-1 3-6z" />} />,
  Pin: (p) => <I {...p} d={<><path d="M12 22s7-7.5 7-13a7 7 0 10-14 0c0 5.5 7 13 7 13z" /><circle cx="12" cy="9" r="2.5" /></>} />,
  Send: (p) => <I {...p} d={<><path d="M22 2L11 13" /><path d="M22 2l-7 20-4-9-9-4 20-7z" /></>} />,
  Play: (p) => <I {...p} d={<path d="M6 4l14 8-14 8V4z" fill="currentColor" stroke="none" />} />,
  Pause: (p) => <I {...p} d={<><rect x="6" y="4" width="4" height="16" rx="1" fill="currentColor" stroke="none" /><rect x="14" y="4" width="4" height="16" rx="1" fill="currentColor" stroke="none" /></>} />,
  Wrench: (p) => <I {...p} d={<path d="M14.7 6.3a4 4 0 105.3 5.3l-9 9a2 2 0 11-2.8-2.8l9-9a4 4 0 00-2.5-2.5z" />} />,
  Logout: (p) => <I {...p} d={<><path d="M9 21H5a2 2 0 01-2-2V5a2 2 0 012-2h4" /><path d="M16 17l5-5-5-5M21 12H9" /></>} />,
  Menu: (p) => <I {...p} d={<path d="M4 6h16M4 12h16M4 18h16" />} />,
  CollapseLeft: (p) => <I {...p} d={<><path d="M11 6l-6 6 6 6M19 6l-6 6 6 6" /></>} />,
  CollapseRight: (p) => <I {...p} d={<><path d="M13 6l6 6-6 6M5 6l6 6-6 6" /></>} />,
  Alert: (p) => <I {...p} d={<><path d="M10.3 3.9L1.8 18a2 2 0 001.7 3h17a2 2 0 001.7-3L13.7 3.9a2 2 0 00-3.4 0z" /><path d="M12 9v4M12 17h.01" /></>} />,
  Trophy: (p) => <I {...p} d={<><path d="M8 4h8v4a4 4 0 11-8 0V4z" /><path d="M5 5h3M16 5h3M9 18h6v3H9z" /><path d="M12 13v5" /></>} />,
  Sun: (p) => <I {...p} d={<><circle cx="12" cy="12" r="4" /><path d="M12 2v2M12 20v2M4 12H2M22 12h-2M5 5l1.5 1.5M17.5 17.5L19 19M5 19l1.5-1.5M17.5 6.5L19 5" /></>} />
};

window.Icon = Icon;
