// icons.jsx — minimal stroke icon set
const Icon = ({ d, size = 16, stroke = 'currentColor', fill = 'none', sw = 1.6, children }) => (
  <svg width={size} height={size} viewBox="0 0 24 24" fill={fill} stroke={stroke} strokeWidth={sw} strokeLinecap="round" strokeLinejoin="round">
    {d ? <path d={d} /> : children}
  </svg>
);

const Icons = {
  Home: (p) => <Icon {...p}><path d="M3 11.5L12 4l9 7.5"/><path d="M5 10v10h14V10"/></Icon>,
  Meta: (p) => <Icon {...p}><path d="M3 16C3 9 6 6 9 6c3 0 5 3 8 8s5 6 6 6c1.5 0 2.5-1 2.5-3" transform="translate(-1 0)"/></Icon>,
  Google: (p) => <Icon {...p}><circle cx="12" cy="12" r="9"/><path d="M12 7v5l3 2"/></Icon>,
  Search: (p) => <Icon {...p}><circle cx="11" cy="11" r="6"/><path d="m20 20-3.5-3.5"/></Icon>,
  Funnel: (p) => <Icon {...p}><path d="M3 5h18l-7 9v6l-4-2v-4z"/></Icon>,
  Calendar: (p) => <Icon {...p}><rect x="3" y="5" width="18" height="16" rx="2"/><path d="M3 10h18M8 3v4M16 3v4"/></Icon>,
  Download: (p) => <Icon {...p}><path d="M12 4v12m0 0 4-4m-4 4-4-4M4 20h16"/></Icon>,
  Filter: (p) => <Icon {...p}><path d="M4 5h16l-6 8v6l-4-2v-4z"/></Icon>,
  Sparkle: (p) => <Icon {...p}><path d="M12 4l1.5 4.5L18 10l-4.5 1.5L12 16l-1.5-4.5L6 10l4.5-1.5z"/><path d="M19 16l.7 2L22 19l-2.3.7L19 22l-.7-2L16 19l2.3-1z"/></Icon>,
  Chevron: (p) => <Icon {...p}><path d="m6 9 6 6 6-6"/></Icon>,
  ChevronUp: (p) => <Icon {...p}><path d="m6 15 6-6 6 6"/></Icon>,
  ChevronRight: (p) => <Icon {...p}><path d="m9 6 6 6-6 6"/></Icon>,
  Up: (p) => <Icon {...p}><path d="m6 14 6-6 6 6"/></Icon>,
  Down: (p) => <Icon {...p}><path d="m6 10 6 6 6-6"/></Icon>,
  ArrowUpRight: (p) => <Icon {...p}><path d="M7 17 17 7M9 7h8v8"/></Icon>,
  Dollar: (p) => <Icon {...p}><path d="M12 3v18M16 7H10a3 3 0 0 0 0 6h4a3 3 0 0 1 0 6H8"/></Icon>,
  Cart: (p) => <Icon {...p}><circle cx="9" cy="20" r="1.5"/><circle cx="17" cy="20" r="1.5"/><path d="M3 4h2l3 12h11l2-8H6.5"/></Icon>,
  Users: (p) => <Icon {...p}><circle cx="9" cy="8" r="3.5"/><path d="M2.5 19c0-3 3-5 6.5-5s6.5 2 6.5 5"/><path d="M16 8a3 3 0 1 0 0-6"/><path d="M21.5 19c0-2.5-2-4.5-5-5"/></Icon>,
  Eye: (p) => <Icon {...p}><path d="M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7S2 12 2 12z"/><circle cx="12" cy="12" r="3"/></Icon>,
  Click: (p) => <Icon {...p}><path d="M9 4v3M4 9h3M5.6 5.6l2 2M14 11l8 3-3.5 1.5L17 19l-1.5-3.5L12 17z"/></Icon>,
  Trend: (p) => <Icon {...p}><path d="M3 17 9 11l4 4 8-8M14 7h7v7"/></Icon>,
  Pulse: (p) => <Icon {...p}><path d="M3 12h4l2-6 4 12 2-6h6"/></Icon>,
  Layers: (p) => <Icon {...p}><path d="m12 3 9 5-9 5-9-5z"/><path d="m3 12 9 5 9-5M3 17l9 5 9-5"/></Icon>,
  Bell: (p) => <Icon {...p}><path d="M6 8a6 6 0 0 1 12 0c0 7 3 8 3 8H3s3-1 3-8z"/><path d="M10 21h4"/></Icon>,
  Settings: (p) => <Icon {...p}><circle cx="12" cy="12" r="3"/><path d="M19.4 15a1.7 1.7 0 0 0 .3 1.8l.1.1a2 2 0 1 1-2.8 2.8l-.1-.1a1.7 1.7 0 0 0-1.8-.3 1.7 1.7 0 0 0-1 1.5V21a2 2 0 0 1-4 0v-.1a1.7 1.7 0 0 0-1-1.5 1.7 1.7 0 0 0-1.8.3l-.1.1a2 2 0 1 1-2.8-2.8l.1-.1a1.7 1.7 0 0 0 .3-1.8 1.7 1.7 0 0 0-1.5-1H3a2 2 0 0 1 0-4h.1a1.7 1.7 0 0 0 1.5-1 1.7 1.7 0 0 0-.3-1.8l-.1-.1a2 2 0 1 1 2.8-2.8l.1.1a1.7 1.7 0 0 0 1.8.3h0a1.7 1.7 0 0 0 1-1.5V3a2 2 0 0 1 4 0v.1a1.7 1.7 0 0 0 1 1.5 1.7 1.7 0 0 0 1.8-.3l.1-.1a2 2 0 1 1 2.8 2.8l-.1.1a1.7 1.7 0 0 0-.3 1.8v0a1.7 1.7 0 0 0 1.5 1H21a2 2 0 0 1 0 4h-.1a1.7 1.7 0 0 0-1.5 1z"/></Icon>,
  More: (p) => <Icon {...p}><circle cx="6" cy="12" r="1.2"/><circle cx="12" cy="12" r="1.2"/><circle cx="18" cy="12" r="1.2"/></Icon>,
  Pdf: (p) => <Icon {...p}><path d="M14 3H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"/><path d="M14 3v6h6"/><text x="7.5" y="17" fontSize="6" stroke="none" fill="currentColor" fontWeight="700">PDF</text></Icon>,
  Excel: (p) => <Icon {...p}><path d="M14 3H6a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V9z"/><path d="M14 3v6h6"/><path d="m9 13 4 5M13 13l-4 5"/></Icon>,
  Refresh: (p) => <Icon {...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"/></Icon>,
  Check: (p) => <Icon {...p}><path d="M5 12l5 5L20 7"/></Icon>,
  Plus: (p) => <Icon {...p}><path d="M12 5v14M5 12h14"/></Icon>,
  Close: (p) => <Icon {...p}><path d="M6 6l12 12M18 6 6 18"/></Icon>,
  Globe: (p) => <Icon {...p}><circle cx="12" cy="12" r="9"/><path d="M3 12h18M12 3a14 14 0 0 1 0 18M12 3a14 14 0 0 0 0 18"/></Icon>,
  Bolt: (p) => <Icon {...p}><path d="m13 2-9 12h7l-1 8 9-12h-7z"/></Icon>,
  Image: (p) => <Icon {...p}><rect x="3" y="4" width="18" height="16" rx="2"/><circle cx="9" cy="10" r="1.5"/><path d="m4 18 5-5 4 4 3-3 4 4"/></Icon>,
};

window.Icons = Icons;
