/* Hand-drawn style line icons — no emoji, no gradients.
   Stroke-based SVGs with slight wobble to feel human. */

const Ico = {
  // Email
  mail: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round">
      <path d="M3.2 6.5h17.4c.4 0 .7.3.7.7v9.6c0 .4-.3.7-.7.7H3.3a.7.7 0 0 1-.7-.7V7.2c0-.4.3-.7.7-.7Z" />
      <path d="M3.5 7 12 13l8.5-6" />
    </svg>
  ),
  // CRM / contact book
  crm: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round">
      <rect x="4.5" y="3.5" width="15" height="17" rx="1.5" />
      <path d="M4.5 8.5h-1 M4.5 12h-1 M4.5 15.5h-1" />
      <circle cx="12" cy="10.5" r="2.2" />
      <path d="M8.5 16c.5-1.7 2-2.5 3.5-2.5s3 .8 3.5 2.5" />
    </svg>
  ),
  // Bill / receipt
  bill: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round">
      <path d="M6 3h12v17.5l-2-1.3-2 1.3-2-1.3-2 1.3-2-1.3-2 1.3V3Z" />
      <path d="M9 8h6 M9 11.5h6 M9 15h4" />
    </svg>
  ),
  // Graduation cap
  teach: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round">
      <path d="M2.5 9.5 12 5l9.5 4.5L12 14 2.5 9.5Z" />
      <path d="M6.5 11v4.5c0 1.4 2.5 2.5 5.5 2.5s5.5-1.1 5.5-2.5V11" />
      <path d="M21 9.8v4" />
    </svg>
  ),
  // Shield check
  shield: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round">
      <path d="M12 3 4.5 5.5V12c0 4.3 3 7.5 7.5 9 4.5-1.5 7.5-4.7 7.5-9V5.5L12 3Z" />
      <path d="m8.5 12 2.5 2.5L15.5 10" />
    </svg>
  ),
  // Spark / AI
  spark: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round">
      <path d="M12 3v3 M12 18v3 M3 12h3 M18 12h3 M5.5 5.5 7.5 7.5 M16.5 16.5 18.5 18.5 M5.5 18.5 7.5 16.5 M16.5 7.5 18.5 5.5" />
      <circle cx="12" cy="12" r="2.5" />
    </svg>
  ),
  // Plug
  plug: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round">
      <path d="M9 3v4 M15 3v4" />
      <path d="M6.5 7h11v4.5a5.5 5.5 0 0 1-11 0V7Z" />
      <path d="M12 17v4" />
    </svg>
  ),
  // Calendar
  cal: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round">
      <rect x="3.5" y="5" width="17" height="15" rx="1.5" />
      <path d="M3.5 9.5h17 M8 3v4 M16 3v4" />
    </svg>
  ),
  // Check bubble
  check: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round">
      <circle cx="12" cy="12" r="8.5" />
      <path d="M8.5 12 11 14.5 15.5 10" />
    </svg>
  ),
  // Arrow right
  arrow: (s=20, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.8" strokeLinecap="round" strokeLinejoin="round">
      <path d="M5 12h14 M13 6l6 6-6 6" />
    </svg>
  ),
  // Seed / growth
  grow: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round">
      <path d="M12 20v-9" />
      <path d="M12 11c0-3 2-5 5-5-.3 3-2.3 5-5 5Z" />
      <path d="M12 13c0-2.5-2-4.5-4.5-4.5C7.7 11 9.5 13 12 13Z" />
      <path d="M6 20h12" />
    </svg>
  ),
  // Calculator
  calc: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round">
      <rect x="5" y="3" width="14" height="18" rx="1.5" />
      <rect x="7.5" y="5.5" width="9" height="3" />
      <circle cx="9" cy="12.5" r="0.4" fill={c} />
      <circle cx="12" cy="12.5" r="0.4" fill={c} />
      <circle cx="15" cy="12.5" r="0.4" fill={c} />
      <circle cx="9" cy="15.5" r="0.4" fill={c} />
      <circle cx="12" cy="15.5" r="0.4" fill={c} />
      <circle cx="15" cy="15.5" r="0.4" fill={c} />
      <circle cx="9" cy="18.5" r="0.4" fill={c} />
      <circle cx="15" cy="18.5" r="0.4" fill={c} />
    </svg>
  ),
  // Phone
  phone: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round">
      <path d="M5 4.5h3L9.5 9l-2 1c1 2.5 3 4.5 5.5 5.5l1-2 4.5 1.5v3c0 .5-.5 1-1 1A14 14 0 0 1 4 5.5c0-.5.5-1 1-1Z" />
    </svg>
  ),
  // Wrench
  wrench: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round">
      <path d="M14.5 4a4.5 4.5 0 0 0-4 6.5L3 18l3 3 7.5-7.5A4.5 4.5 0 1 0 14.5 4Z" />
    </svg>
  ),
  // Clock
  clock: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round">
      <circle cx="12" cy="12" r="8.5" />
      <path d="M12 7.5V12l3 2" />
    </svg>
  ),
  // Dollar
  dollar: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round">
      <path d="M12 3v18" />
      <path d="M16 7H10a2.5 2.5 0 0 0 0 5h4a2.5 2.5 0 0 1 0 5H8" />
    </svg>
  ),
  // Chart up
  chart: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round">
      <path d="M3 20h18" />
      <path d="M4 16l4.5-5 3.5 3 4-6 4 4.5" />
    </svg>
  ),
  // Jigsaw
  puzzle: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round">
      <path d="M8 3h3v3a1.5 1.5 0 0 0 3 0V3h3v3c1.5 0 3 1 3 2.5s-1.5 2-3 2.5v3a1.5 1.5 0 0 1-3 0c0-1.5-1-2.5-2.5-2.5S9 12.5 9 14a1.5 1.5 0 0 1-3 0v-3H3c0-1.5 1-2.5 2.5-2.5S8 7.5 8 6V3Z" />
    </svg>
  ),
  // Person
  person: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round">
      <circle cx="12" cy="8" r="3.5" />
      <path d="M5 20c1-3.5 4-5 7-5s6 1.5 7 5" />
    </svg>
  ),
  // Eye
  eye: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round">
      <path d="M2.5 12C5 7.5 8.5 5 12 5s7 2.5 9.5 7c-2.5 4.5-6 7-9.5 7s-7-2.5-9.5-7Z" />
      <circle cx="12" cy="12" r="2.5" />
    </svg>
  ),
  // Close
  x: (s=20, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="2" strokeLinecap="round" strokeLinejoin="round">
      <path d="M6 6l12 12 M6 18L18 6" />
    </svg>
  ),
  // Play triangle
  play: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill={c} stroke="none">
      <path d="M7 4.5v15l13-7.5-13-7.5Z" />
    </svg>
  ),
  // Doc
  doc: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round">
      <path d="M6 3h8l4 4v14H6V3Z" />
      <path d="M14 3v4h4 M9 12h6 M9 15h6 M9 18h4" />
    </svg>
  ),
  // Scale / compare
  scale: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round">
      <path d="M12 3v18 M6 7h12 M6 7l-2.5 6h5L6 7Z M18 7l-2.5 6h5L18 7Z M8 21h8" />
    </svg>
  ),
  // Receipt (alias of bill with different curl)
  receipt: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round">
      <path d="M6 3h12v17.5l-2-1.3-2 1.3-2-1.3-2 1.3-2-1.3-2 1.3V3Z" />
      <path d="M9 8h6 M9 11.5h6 M9 15h4" />
    </svg>
  ),
  // Chat bubble
  chat: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round">
      <path d="M4 5h16v11H9l-4 3.5V5Z" />
      <path d="M8 9h8 M8 12h5" />
    </svg>
  ),
  // Link chain
  link: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round">
      <path d="M10 14a4 4 0 0 1 0-5.5l2-2a4 4 0 1 1 5.5 5.5l-1.5 1.5" />
      <path d="M14 10a4 4 0 0 1 0 5.5l-2 2a4 4 0 1 1-5.5-5.5l1.5-1.5" />
    </svg>
  ),
  // Book
  book: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round">
      <path d="M4 4.5c3-1 6-1 8 .5 2-1.5 5-1.5 8-.5v14c-3-1-6-1-8 .5-2-1.5-5-1.5-8-.5v-14Z" />
      <path d="M12 5v14" />
    </svg>
  ),
  // Download
  download: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round">
      <path d="M12 4v12 M7 11l5 5 5-5" />
      <path d="M4 20h16" />
    </svg>
  ),
  // Stack of layers
  stack: (s=24, c='currentColor') => (
    <svg width={s} height={s} viewBox="0 0 24 24" fill="none" stroke={c} strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round">
      <path d="M12 3 3 7.5 12 12l9-4.5L12 3Z" />
      <path d="M3 12l9 4.5L21 12" />
      <path d="M3 16.5 12 21l9-4.5" />
    </svg>
  ),
};

window.Ico = Ico;
