// Minimal icon set — line icons, ~18px
// Stroke 1.6, lucide-style. All accept size + className.
const I = ({ children, size = 18, className = "", style = {} }) => (
  <svg width={size} height={size} viewBox="0 0 24 24" fill="none"
    stroke="currentColor" strokeWidth="1.6" strokeLinecap="round" strokeLinejoin="round"
    className={className} style={style}>
    {children}
  </svg>
);

const Icon = {
  Home: (p) => <I {...p}><path d="M3 11 12 4l9 7"/><path d="M5 10v10h14V10"/></I>,
  Users: (p) => <I {...p}><circle cx="9" cy="8" r="3.2"/><path d="M3 20c.5-3.6 3-5 6-5s5.5 1.4 6 5"/><circle cx="17" cy="9" r="2.6"/><path d="M16 20c.4-2.6 2-3.6 4-3.6"/></I>,
  Building: (p) => <I {...p}><path d="M4 20V6a2 2 0 0 1 2-2h6v16"/><path d="M12 20V10h6a2 2 0 0 1 2 2v8"/><path d="M7 8h2M7 12h2M7 16h2M15 14h2M15 18h2"/></I>,
  Bolt: (p) => <I {...p}><path d="m13 2-8 12h6l-1 8 8-12h-6l1-8z"/></I>,
  Cpu: (p) => <I {...p}><rect x="5" y="5" width="14" height="14" rx="2"/><path d="M9 9h6v6H9z"/><path d="M9 2v3M15 2v3M9 19v3M15 19v3M2 9h3M2 15h3M19 9h3M19 15h3"/></I>,
  Devices: (p) => <I {...p}><rect x="3" y="5" width="13" height="11" rx="2"/><rect x="14" y="11" width="7" height="9" rx="1.5"/><path d="M3 19h7"/></I>,
  ChartLine: (p) => <I {...p}><path d="M3 20h18"/><path d="m4 16 4-5 4 3 4-7 4 4"/></I>,
  ChartBar: (p) => <I {...p}><path d="M3 20h18"/><rect x="6" y="11" width="3" height="8"/><rect x="11" y="6" width="3" height="13"/><rect x="16" y="14" width="3" height="5"/></I>,
  Package: (p) => <I {...p}><path d="M3 7 12 3l9 4-9 4-9-4z"/><path d="M3 7v10l9 4 9-4V7"/><path d="M12 11v10"/></I>,
  Receipt: (p) => <I {...p}><path d="M5 3v18l2-1.4 2 1.4 2-1.4 2 1.4 2-1.4 2 1.4 2-1.4 1 1V3l-1 1-2-1.4L13 4l-2-1.4L9 4 7 2.6Z"/><path d="M8 9h8M8 13h8M8 17h5"/></I>,
  Card: (p) => <I {...p}><rect x="3" y="5" width="18" height="14" rx="2"/><path d="M3 10h18M7 15h3"/></I>,
  Settings: (p) => <I {...p}><circle cx="12" cy="12" r="3"/><path d="M19.4 15a1.6 1.6 0 0 0 .3 1.7l.1.1a2 2 0 1 1-2.8 2.8l-.1-.1a1.6 1.6 0 0 0-1.7-.3 1.6 1.6 0 0 0-1 1.5V21a2 2 0 1 1-4 0v-.1a1.6 1.6 0 0 0-1-1.5 1.6 1.6 0 0 0-1.7.3l-.1.1a2 2 0 1 1-2.8-2.8l.1-.1a1.6 1.6 0 0 0 .3-1.7 1.6 1.6 0 0 0-1.5-1H3a2 2 0 1 1 0-4h.1a1.6 1.6 0 0 0 1.5-1 1.6 1.6 0 0 0-.3-1.7l-.1-.1a2 2 0 1 1 2.8-2.8l.1.1a1.6 1.6 0 0 0 1.7.3 1.6 1.6 0 0 0 1-1.5V3a2 2 0 1 1 4 0v.1c0 .7.4 1.3 1 1.5.6.2 1.3.1 1.7-.3l.1-.1a2 2 0 1 1 2.8 2.8l-.1.1c-.4.4-.5 1.1-.3 1.7.2.6.8 1 1.5 1H21a2 2 0 1 1 0 4h-.1c-.7 0-1.3.4-1.5 1Z"/></I>,
  Search: (p) => <I {...p}><circle cx="11" cy="11" r="7"/><path d="m20 20-3.5-3.5"/></I>,
  Bell: (p) => <I {...p}><path d="M6 8a6 6 0 1 1 12 0c0 7 3 9 3 9H3s3-2 3-9"/><path d="M10 21a2 2 0 0 0 4 0"/></I>,
  Sun: (p) => <I {...p}><circle cx="12" cy="12" r="4"/><path d="M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M4.93 19.07l1.41-1.41M17.66 6.34l1.41-1.41"/></I>,
  Battery: (p) => <I {...p}><rect x="3" y="7" width="15" height="10" rx="2"/><path d="M18 10v4h2v-4z" fill="currentColor" stroke="none"/></I>,
  Plug: (p) => <I {...p}><path d="M9 6V3M15 6V3"/><path d="M6 6h12v4a6 6 0 0 1-12 0z"/><path d="M12 16v5"/></I>,
  Wifi: (p) => <I {...p}><path d="M2 9a16 16 0 0 1 20 0M5.5 12.5a11 11 0 0 1 13 0M9 16a6 6 0 0 1 6 0"/><circle cx="12" cy="19.5" r="1" fill="currentColor"/></I>,
  Wallet: (p) => <I {...p}><path d="M3 7a2 2 0 0 1 2-2h13v4"/><path d="M3 7v11a2 2 0 0 0 2 2h15v-5"/><path d="M15 13h6v-3h-6a1.5 1.5 0 0 0 0 3z"/></I>,
  Plus: (p) => <I {...p}><path d="M12 5v14M5 12h14"/></I>,
  Edit: (p) => <I {...p}><path d="M12 20h9"/><path d="M16.5 3.5a2.1 2.1 0 0 1 3 3L7 19l-4 1 1-4z"/></I>,
  Trash: (p) => <I {...p}><path d="M3 6h18M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2M6 6l1 14a2 2 0 0 0 2 2h6a2 2 0 0 0 2-2l1-14"/></I>,
  Eye: (p) => <I {...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"/></I>,
  Download: (p) => <I {...p}><path d="M12 4v11"/><path d="m7 11 5 5 5-5"/><path d="M5 20h14"/></I>,
  Upload: (p) => <I {...p}><path d="M12 20V5"/><path d="m7 9 5-5 5 5"/><path d="M5 20h14"/></I>,
  Check: (p) => <I {...p}><path d="m5 12 4 4L19 6"/></I>,
  X: (p) => <I {...p}><path d="M6 6l12 12M18 6 6 18"/></I>,
  More: (p) => <I {...p}><circle cx="6" cy="12" r="1.4" fill="currentColor"/><circle cx="12" cy="12" r="1.4" fill="currentColor"/><circle cx="18" cy="12" r="1.4" fill="currentColor"/></I>,
  Chevron: (p) => <I {...p}><path d="m9 6 6 6-6 6"/></I>,
  ChevronD: (p) => <I {...p}><path d="m6 9 6 6 6-6"/></I>,
  Filter: (p) => <I {...p}><path d="M3 4h18l-7 9v6l-4 2v-8z"/></I>,
  Map: (p) => <I {...p}><path d="m3 6 6-2 6 2 6-2v14l-6 2-6-2-6 2z"/><path d="M9 4v16M15 6v16"/></I>,
  Pin: (p) => <I {...p}><path d="M12 22s7-7.6 7-13a7 7 0 0 0-14 0c0 5.4 7 13 7 13z"/><circle cx="12" cy="9" r="2.5"/></I>,
  Refresh: (p) => <I {...p}><path d="M21 12a9 9 0 0 1-15.4 6.4L3 16"/><path d="M3 12a9 9 0 0 1 15.4-6.4L21 8"/><path d="M21 3v5h-5M3 21v-5h5"/></I>,
  Alert: (p) => <I {...p}><path d="M12 9v4M12 17h.01"/><path d="M10.3 3.7 2 19a2 2 0 0 0 1.7 3h16.6a2 2 0 0 0 1.7-3L13.7 3.7a2 2 0 0 0-3.4 0z"/></I>,
  CircleCheck: (p) => <I {...p}><circle cx="12" cy="12" r="9"/><path d="m8 12 3 3 5-6"/></I>,
  Clock: (p) => <I {...p}><circle cx="12" cy="12" r="9"/><path d="M12 7v5l3 2"/></I>,
  Logout: (p) => <I {...p}><path d="M9 21H5a2 2 0 0 1-2-2V5a2 2 0 0 1 2-2h4"/><path d="m16 17 5-5-5-5"/><path d="M21 12H9"/></I>,
  Help: (p) => <I {...p}><circle cx="12" cy="12" r="9"/><path d="M9.5 9.5a2.5 2.5 0 1 1 3.5 2.3c-.8.4-1 1.1-1 1.7v.5"/><circle cx="12" cy="17" r=".5" fill="currentColor"/></I>,
  ArrowL: (p) => <I {...p}><path d="M19 12H5"/><path d="m12 19-7-7 7-7"/></I>,
  ArrowR: (p) => <I {...p}><path d="M5 12h14"/><path d="m12 5 7 7-7 7"/></I>,
  Calendar: (p) => <I {...p}><rect x="3" y="5" width="18" height="16" rx="2"/><path d="M3 9h18M8 3v4M16 3v4"/></I>,
  Hash: (p) => <I {...p}><path d="M4 9h16M4 15h16M10 3 8 21M16 3l-2 18"/></I>,
  Doc: (p) => <I {...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"/></I>,
  Activity: (p) => <I {...p}><path d="M3 12h4l3-9 4 18 3-9h4"/></I>,
  Hardware: (p) => <I {...p}><rect x="4" y="4" width="16" height="16" rx="2"/><rect x="8" y="8" width="8" height="8"/><path d="M4 9h2M4 13h2M18 9h2M18 13h2M9 4v2M13 4v2M9 18v2M13 18v2"/></I>,
};

window.Icon = Icon;
