// Lucide-style icons (stroke-based, original)
const Icon = ({ d, size = 16, sw = 1.7, className = '', children, viewBox = '0 0 24 24' }) => (
  <svg className={className} width={size} height={size} viewBox={viewBox} fill="none" stroke="currentColor" strokeWidth={sw} strokeLinecap="round" strokeLinejoin="round">
    {children || <path d={d} />}
  </svg>
);

const Icons = {
  Dashboard: (p) => <Icon {...p}><rect x="3" y="3" width="7" height="9" rx="1.5"/><rect x="14" y="3" width="7" height="5" rx="1.5"/><rect x="14" y="12" width="7" height="9" rx="1.5"/><rect x="3" y="16" width="7" height="5" rx="1.5"/></Icon>,
  Bot: (p) => <Icon {...p}><rect x="4" y="7" width="16" height="12" rx="3"/><path d="M12 4v3"/><circle cx="9" cy="13" r="1"/><circle cx="15" cy="13" r="1"/><path d="M9 17h6"/></Icon>,
  Moon: (p) => <Icon {...p} d="M21 12.8A9 9 0 1 1 11.2 3a7 7 0 0 0 9.8 9.8z"/>,
  Activity: (p) => <Icon {...p} d="M3 12h4l3-8 4 16 3-8h4"/>,
  Apple: (p) => <Icon {...p}><path d="M12 8c-1-3 1-5 3-5 0 2-1 4-3 5z"/><path d="M19 14c0 5-3 8-7 8s-7-3-7-8c0-3 2-5 5-5 1 0 2 .5 2 .5s1-.5 2-.5c3 0 5 2 5 5z"/></Icon>,
  Heart: (p) => <Icon {...p} d="M12 21s-7-4.5-7-10a4 4 0 0 1 7-2.5A4 4 0 0 1 19 11c0 5.5-7 10-7 10z"/>,
  Gift: (p) => <Icon {...p}><rect x="3" y="8" width="18" height="4" rx="1"/><path d="M5 12v9h14v-9M12 8v13M12 8c-1.5-3-5-3-5 0s3.5 1 5 0c1.5 1 5 3 5 0s-3.5-3-5 0z"/></Icon>,
  Store: (p) => <Icon {...p}><path d="M3 9l1.5-5h15L21 9M3 9v10h18V9M3 9c0 2 1.5 3 3 3s3-1 3-3M9 9c0 2 1.5 3 3 3s3-1 3-3M15 9c0 2 1.5 3 3 3s3-1 3-3"/></Icon>,
  Users: (p) => <Icon {...p}><circle cx="9" cy="8" r="3.5"/><path d="M3 20c0-3.5 3-6 6-6s6 2.5 6 6"/><circle cx="17" cy="9" r="2.5"/><path d="M15 14c2-1 6 0 6 5"/></Icon>,
  Bell: (p) => <Icon {...p} d="M6 16V11a6 6 0 0 1 12 0v5l1.5 2h-15zM10 20a2 2 0 0 0 4 0"/>,
  Plus: (p) => <Icon {...p} d="M12 5v14M5 12h14"/>,
  Send: (p) => <Icon {...p} d="M22 2L11 13M22 2l-7 20-4-9-9-4z"/>,
  Sparkle: (p) => <Icon {...p} d="M12 3l1.8 5L19 9.8 14 12l-2 5-2-5-5-2.2L10 8z"/>,
  Check: (p) => <Icon {...p} d="M5 12l4 4 10-10"/>,
  ArrowRight: (p) => <Icon {...p} d="M5 12h14M13 5l7 7-7 7"/>,
  ArrowUp: (p) => <Icon {...p} d="M12 19V5M5 12l7-7 7 7"/>,
  ArrowDown: (p) => <Icon {...p} d="M12 5v14M19 12l-7 7-7-7"/>,
  Trend: (p) => <Icon {...p} d="M3 17l6-6 4 4 8-8M14 7h7v7"/>,
  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.3 1.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.8 1.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>,
  Zap: (p) => <Icon {...p} d="M13 2L4 14h7l-1 8 9-12h-7z"/>,
  Brain: (p) => <Icon {...p}><path d="M9 4a3 3 0 0 0-3 3v0a3 3 0 0 0-3 3v3a3 3 0 0 0 3 3v0a3 3 0 0 0 3 3 3 3 0 0 0 3-3V7a3 3 0 0 0-3-3z"/><path d="M15 4a3 3 0 0 1 3 3v0a3 3 0 0 1 3 3v3a3 3 0 0 1-3 3v0a3 3 0 0 1-3 3 3 3 0 0 1-3-3V7a3 3 0 0 1 3-3z"/></Icon>,
  Cart: (p) => <Icon {...p}><circle cx="9" cy="20" r="1.5"/><circle cx="18" cy="20" r="1.5"/><path d="M3 4h2l3 12h12l2-8H7"/></Icon>,
  Coffee: (p) => <Icon {...p}><path d="M4 8h13v6a4 4 0 0 1-4 4H8a4 4 0 0 1-4-4z"/><path d="M17 9h2a3 3 0 0 1 0 6h-2"/><path d="M7 4v2M11 4v2M15 4v2"/></Icon>,
  Sun: (p) => <Icon {...p}><circle cx="12" cy="12" r="4"/><path d="M12 2v2M12 20v2M2 12h2M20 12h2M4.9 4.9l1.4 1.4M17.7 17.7l1.4 1.4M4.9 19.1l1.4-1.4M17.7 6.3l1.4-1.4"/></Icon>,
  Flame: (p) => <Icon {...p} d="M12 22c4 0 7-3 7-7 0-4-4-5-4-9 0 0-1 1-3 3s-3 4-3 6c0 1-1 1-1 1s-3-1-3-3c0 6 3 9 7 9z"/>,
  Award: (p) => <Icon {...p}><circle cx="12" cy="9" r="6"/><path d="M9 14l-1 7 4-2 4 2-1-7"/></Icon>,
  Lock: (p) => <Icon {...p}><rect x="4" y="11" width="16" height="10" rx="2"/><path d="M8 11V7a4 4 0 0 1 8 0v4"/></Icon>,
  Search: (p) => <Icon {...p}><circle cx="11" cy="11" r="7"/><path d="M21 21l-5-5"/></Icon>,
  Share: (p) => <Icon {...p}><circle cx="6" cy="12" r="2.5"/><circle cx="18" cy="6" r="2.5"/><circle cx="18" cy="18" r="2.5"/><path d="M8.5 11l7-3.5M8.5 13l7 3.5"/></Icon>,
  Trophy: (p) => <Icon {...p}><path d="M7 4h10v5a5 5 0 0 1-10 0V4z"/><path d="M5 4H3v3a3 3 0 0 0 3 3M19 4h2v3a3 3 0 0 1-3 3M9 14v3h6v-3M7 21h10"/></Icon>,
  Coin: (p) => <Icon {...p}><circle cx="12" cy="12" r="9"/><path d="M9 9h4a2 2 0 0 1 0 4h-4M9 9v8M9 13h5"/></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>,
  X: (p) => <Icon {...p} d="M6 6l12 12M18 6l-12 12"/>,
  Play: (p) => <Icon {...p} d="M6 4l14 8-14 8z"/>,
  Pause: (p) => <Icon {...p}><rect x="6" y="4" width="4" height="16" rx="1"/><rect x="14" y="4" width="4" height="16" rx="1"/></Icon>,
  Mic: (p) => <Icon {...p}><rect x="9" y="3" width="6" height="11" rx="3"/><path d="M5 11a7 7 0 0 0 14 0M12 18v3"/></Icon>,
  ChevronRight: (p) => <Icon {...p} d="M9 6l6 6-6 6"/>,
  ChevronDown: (p) => <Icon {...p} d="M6 9l6 6 6-6"/>,
  ChevronUp: (p) => <Icon {...p} d="M6 15l6-6 6 6"/>,
  Calendar: (p) => <Icon {...p}><rect x="3" y="5" width="18" height="16" rx="2"/><path d="M16 3v4M8 3v4M3 10h18"/></Icon>,
  Mood: (p) => <Icon {...p}><circle cx="12" cy="12" r="9"/><path d="M8 14s1.5 2 4 2 4-2 4-2M9 9.5h.01M15 9.5h.01"/></Icon>,
  Wave: (p) => <Icon {...p} d="M3 12c2 0 2-3 4-3s2 6 4 6 2-6 4-6 2 3 4 3"/>,
  Drop: (p) => <Icon {...p} d="M12 3s7 7.5 7 12a7 7 0 1 1-14 0c0-4.5 7-12 7-12z"/>,
  Pill: (p) => <Icon {...p}><rect x="2" y="9" width="20" height="6" rx="3" transform="rotate(-30 12 12)"/><path d="M8.5 5.5l5 5"/></Icon>,
  Clock: (p) => <Icon {...p}><circle cx="12" cy="12" r="9"/><path d="M12 7v5l3 2"/></Icon>,
  Edit: (p) => <Icon {...p} d="M4 20h4l11-11-4-4L4 16v4zM14 5l4 4"/>,
  Smile: (p) => <Icon {...p}><circle cx="12" cy="12" r="9"/><path d="M8 14s1.5 2 4 2 4-2 4-2M9 9.5h.01M15 9.5h.01"/></Icon>,
  Frown: (p) => <Icon {...p}><circle cx="12" cy="12" r="9"/><path d="M16 16s-1.5-2-4-2-4 2-4 2M9 9.5h.01M15 9.5h.01"/></Icon>,
  Meh: (p) => <Icon {...p}><circle cx="12" cy="12" r="9"/><path d="M8 15h8M9 9.5h.01M15 9.5h.01"/></Icon>,
  Wallet: (p) => <Icon {...p}><rect x="3" y="6" width="18" height="13" rx="2"/><path d="M16 12h3M3 9h15a3 3 0 0 1 0 6H3"/></Icon>,
  Power: (p) => <Icon {...p} d="M12 3v9M5.5 7.5a8 8 0 1 0 13 0"/>,
  Eye: (p) => <Icon {...p}><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"/></Icon>,
};

window.Icons = Icons;
window.Icon = Icon;
