/* Luxotene — Icons */
/* All Lucide-style 1.5px stroke. Inline so we don't ship a library. */

const Icon = {
  Droplet: ({ size = 24, stroke = 1.5, className }) => (
    <svg width={size} height={size} viewBox="0 0 24 24" fill="none" stroke="currentColor"
      strokeWidth={stroke} strokeLinecap="round" strokeLinejoin="round" className={className}>
      <path d="M12 2.5c-3.5 4-7 7.5-7 11.5a7 7 0 0 0 14 0c0-4-3.5-7.5-7-11.5z" />
    </svg>
  ),
  Shield: ({ size = 24, stroke = 1.5, className }) => (
    <svg width={size} height={size} viewBox="0 0 24 24" fill="none" stroke="currentColor"
      strokeWidth={stroke} strokeLinecap="round" strokeLinejoin="round" className={className}>
      <path d="M12 2.5 4 6v6c0 5 3.5 8.5 8 9.5 4.5-1 8-4.5 8-9.5V6l-8-3.5z" />
      <path d="M9.5 12.5l1.8 1.8 3.4-3.4" />
    </svg>
  ),
  Cells: ({ size = 24, stroke = 1.5, className }) => (
    <svg width={size} height={size} viewBox="0 0 24 24" fill="none" stroke="currentColor"
      strokeWidth={stroke} strokeLinecap="round" strokeLinejoin="round" className={className}>
      <circle cx="12" cy="12" r="8.5" />
      <circle cx="10" cy="9.5" r="1.2" fill="currentColor" />
      <circle cx="14.5" cy="11" r="1" fill="currentColor" />
      <circle cx="11" cy="14" r="1.1" fill="currentColor" />
      <circle cx="14" cy="14.5" r="0.9" fill="currentColor" />
    </svg>
  ),
  Eye: ({ size = 24, stroke = 1.5, className }) => (
    <svg width={size} height={size} viewBox="0 0 24 24" fill="none" stroke="currentColor"
      strokeWidth={stroke} strokeLinecap="round" strokeLinejoin="round" className={className}>
      <path d="M2 12s3.5-6.5 10-6.5S22 12 22 12s-3.5 6.5-10 6.5S2 12 2 12z" />
      <circle cx="12" cy="12" r="2.5" />
    </svg>
  ),
  Flask: ({ size = 24, stroke = 1.5, className }) => (
    <svg width={size} height={size} viewBox="0 0 24 24" fill="none" stroke="currentColor"
      strokeWidth={stroke} strokeLinecap="round" strokeLinejoin="round" className={className}>
      <path d="M9 3h6" />
      <path d="M10 3v6L4.5 18a2.5 2.5 0 0 0 2.2 3.5h10.6A2.5 2.5 0 0 0 19.5 18L14 9V3" />
      <path d="M7.5 14h9" />
    </svg>
  ),
  Leaf: ({ size = 24, stroke = 1.5, className }) => (
    <svg width={size} height={size} viewBox="0 0 24 24" fill="none" stroke="currentColor"
      strokeWidth={stroke} strokeLinecap="round" strokeLinejoin="round" className={className}>
      <path d="M20 4s-2 12-9 14c-4 1-7-2-6-6 1-7 15-8 15-8z" />
      <path d="M5 19c2-5 7-9 13-13" />
    </svg>
  ),
  Wheat: ({ size = 24, stroke = 1.5, className }) => (
    <svg width={size} height={size} viewBox="0 0 24 24" fill="none" stroke="currentColor"
      strokeWidth={stroke} strokeLinecap="round" strokeLinejoin="round" className={className}>
      <path d="M12 22V8" />
      <path d="M12 8c0-2 1.5-3.5 3.5-3.5C15.5 6.5 14 8 12 8z" />
      <path d="M12 8c0-2-1.5-3.5-3.5-3.5C8.5 6.5 10 8 12 8z" />
      <path d="M12 12c0-2 1.5-3.5 3.5-3.5C15.5 10.5 14 12 12 12z" />
      <path d="M12 12c0-2-1.5-3.5-3.5-3.5C8.5 10.5 10 12 12 12z" />
      <path d="M12 16c0-2 1.5-3.5 3.5-3.5C15.5 14.5 14 16 12 16z" />
      <path d="M12 16c0-2-1.5-3.5-3.5-3.5C8.5 14.5 10 16 12 16z" />
    </svg>
  ),
  Seedling: ({ size = 24, stroke = 1.5, className }) => (
    <svg width={size} height={size} viewBox="0 0 24 24" fill="none" stroke="currentColor"
      strokeWidth={stroke} strokeLinecap="round" strokeLinejoin="round" className={className}>
      <ellipse cx="12" cy="9" rx="6" ry="6.5" />
      <path d="M12 4v16" />
      <path d="M9 7l3 3 3-3" />
    </svg>
  ),
  Bag: ({ size = 22, stroke = 1.5, className }) => (
    <svg width={size} height={size} viewBox="0 0 24 24" fill="none" stroke="currentColor"
      strokeWidth={stroke} strokeLinecap="round" strokeLinejoin="round" className={className}>
      <path d="M5 7h14l-1.2 13.2a1.5 1.5 0 0 1-1.5 1.3H7.7a1.5 1.5 0 0 1-1.5-1.3L5 7z" />
      <path d="M8.5 7V5a3.5 3.5 0 0 1 7 0v2" />
    </svg>
  ),
  Instagram: ({ size = 16 }) => (
    <svg width={size} height={size} viewBox="0 0 24 24" fill="none" stroke="currentColor"
      strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
      <rect x="3" y="3" width="18" height="18" rx="5" />
      <circle cx="12" cy="12" r="4" />
      <circle cx="17.5" cy="6.5" r="1" fill="currentColor" />
    </svg>
  ),
  Facebook: ({ size = 16 }) => (
    <svg width={size} height={size} viewBox="0 0 24 24" fill="currentColor">
      <path d="M13 22v-8h2.7l.4-3.2H13V8.7c0-.9.3-1.6 1.6-1.6h1.7V4.2C16 4.1 15 4 13.9 4c-2.3 0-3.9 1.4-3.9 4v2.8H7.3V14H10v8h3z" />
    </svg>
  ),
  Youtube: ({ size = 16 }) => (
    <svg width={size} height={size} viewBox="0 0 24 24" fill="currentColor">
      <path d="M21.6 7.2c-.2-.9-.9-1.6-1.8-1.8C18.2 5 12 5 12 5s-6.2 0-7.8.4c-.9.2-1.6.9-1.8 1.8C2 8.8 2 12 2 12s0 3.2.4 4.8c.2.9.9 1.6 1.8 1.8C5.8 19 12 19 12 19s6.2 0 7.8-.4c.9-.2 1.6-.9 1.8-1.8.4-1.6.4-4.8.4-4.8s0-3.2-.4-4.8zM10 15V9l5.2 3-5.2 3z" />
    </svg>
  ),
  LuxoMark: ({ size = 36, color = "currentColor" }) => (
    // A subtle radiating-dots logomark, like a sun/molecule motif
    <svg width={size} height={size} viewBox="0 0 60 60" fill={color}>
      {Array.from({ length: 16 }).map((_, i) => {
        const a = (i / 16) * Math.PI * 2;
        const r = 22;
        const cx = 30 + Math.cos(a) * r;
        const cy = 30 + Math.sin(a) * r;
        const dr = i % 2 === 0 ? 2 : 1.4;
        return <circle key={i} cx={cx} cy={cy} r={dr} />;
      })}
      <circle cx="30" cy="30" r="3.2" />
    </svg>
  ),
};

window.Icon = Icon;
