/* innerbloom — icon set (brand line icons + UI glyphs, all currentColor) */
const IbIcon = {
  /* brand line icons (from the design system) */
  Card: (p) => (
    <svg viewBox="0 0 24 24" fill="none" {...p}>
      <rect x="5" y="2" width="14" height="20" rx="2" stroke="currentColor" strokeWidth="1.8"/>
      <polygon points="12,6.5 13.1,9.5 16.3,9.6 13.8,11.6 14.6,14.6 12,12.9 9.4,14.6 10.2,11.6 7.7,9.6 10.9,9.5" fill="currentColor"/>
    </svg>
  ),
  Rainbow: (p) => (
    <svg viewBox="0 0 24 24" fill="none" {...p}>
      <path d="M3 18a9 9 0 0 1 18 0" stroke="currentColor" strokeWidth="2.2" strokeLinecap="round"/>
      <path d="M6.5 18a5.5 5.5 0 0 1 11 0" stroke="currentColor" strokeWidth="2.2" strokeLinecap="round"/>
      <path d="M10 18a2 2 0 0 1 4 0" stroke="currentColor" strokeWidth="2.2" strokeLinecap="round"/>
    </svg>
  ),
  Calendar: (p) => (
    <svg viewBox="0 0 20 20" fill="none" {...p}>
      <rect x="2" y="4" width="16" height="14" rx="2" stroke="currentColor" strokeWidth="1.5"/>
      <path d="M2 8h16" stroke="currentColor" strokeWidth="1.5"/>
      <path d="M6 2v4M14 2v4" stroke="currentColor" strokeWidth="1.5" strokeLinecap="round"/>
    </svg>
  ),
  Clock: (p) => (
    <svg viewBox="0 0 20 20" fill="none" {...p}>
      <circle cx="10" cy="10" r="7" stroke="currentColor" strokeWidth="1.5"/>
      <path d="M10 6v4l2.5 2" stroke="currentColor" strokeWidth="1.5" strokeLinecap="round" strokeLinejoin="round"/>
    </svg>
  ),
  Headphones: (p) => (
    <svg viewBox="0 0 20 20" fill="none" {...p}>
      <path d="M4 12v-2a6 6 0 0 1 12 0v2" stroke="currentColor" strokeWidth="1.5" strokeLinecap="round"/>
      <rect x="2.5" y="11.5" width="3.5" height="5" rx="1.5" stroke="currentColor" strokeWidth="1.5"/>
      <rect x="14" y="11.5" width="3.5" height="5" rx="1.5" stroke="currentColor" strokeWidth="1.5"/>
    </svg>
  ),
  Event: (p) => (
    <svg viewBox="0 0 20 20" fill="none" {...p}>
      <circle cx="10" cy="10" r="7.25" stroke="currentColor" strokeWidth="1.5"/>
      <path d="M10 5.5v4.5l3 1.8" stroke="currentColor" strokeWidth="1.5" strokeLinecap="round" strokeLinejoin="round"/>
      <path d="M10 2.75v1.5M10 15.75v1.5M2.75 10h1.5M15.75 10h1.5" stroke="currentColor" strokeWidth="1.5" strokeLinecap="round"/>
    </svg>
  ),
  Play: (p) => (<svg viewBox="0 0 20 20" fill="currentColor" {...p}><path d="M5 3.5v13l11-6.5z"/></svg>),
  Pause: (p) => (<svg viewBox="0 0 20 20" fill="currentColor" {...p}><rect x="4.5" y="3.5" width="4" height="13" rx="1.2"/><rect x="11.5" y="3.5" width="4" height="13" rx="1.2"/></svg>),
  Pin: (p) => (
    <svg viewBox="0 0 20 20" fill="none" {...p}>
      <path d="M10 17s5.5-5 5.5-9A5.5 5.5 0 0 0 4.5 8c0 4 5.5 9 5.5 9z" stroke="currentColor" strokeWidth="1.4"/>
      <circle cx="10" cy="8" r="2" stroke="currentColor" strokeWidth="1.4"/>
    </svg>
  ),
  /* UI glyphs for nav & profile */
  Home: (p) => (
    <svg viewBox="0 0 24 24" fill="none" {...p}>
      <path d="M4 11.5 12 5l8 6.5V19a1.4 1.4 0 0 1-1.4 1.4h-3.1v-4.6a1 1 0 0 0-1-1h-3a1 1 0 0 0-1 1v4.6H5.4A1.4 1.4 0 0 1 4 19z" stroke="currentColor" strokeWidth="1.7" strokeLinejoin="round"/>
    </svg>
  ),
  Bloom: (p) => (
    <svg viewBox="0 0 24 24" fill="none" {...p}>
      <circle cx="12" cy="12" r="2.4" fill="currentColor"/>
      <ellipse cx="12" cy="6.4" rx="2.3" ry="3.3" stroke="currentColor" strokeWidth="1.5"/>
      <ellipse cx="12" cy="17.6" rx="2.3" ry="3.3" stroke="currentColor" strokeWidth="1.5"/>
      <ellipse cx="6.4" cy="12" rx="3.3" ry="2.3" stroke="currentColor" strokeWidth="1.5"/>
      <ellipse cx="17.6" cy="12" rx="3.3" ry="2.3" stroke="currentColor" strokeWidth="1.5"/>
    </svg>
  ),
  User: (p) => (
    <svg viewBox="0 0 24 24" fill="none" {...p}>
      <circle cx="12" cy="8.3" r="3.6" stroke="currentColor" strokeWidth="1.7"/>
      <path d="M5.5 19.2a6.5 6.5 0 0 1 13 0" stroke="currentColor" strokeWidth="1.7" strokeLinecap="round"/>
    </svg>
  ),
  Bell: (p) => (
    <svg viewBox="0 0 20 20" fill="none" {...p}>
      <path d="M5 8a5 5 0 0 1 10 0c0 4 1.2 5 1.2 5H3.8S5 12 5 8Z" stroke="currentColor" strokeWidth="1.5" strokeLinejoin="round"/>
      <path d="M8.4 16a1.8 1.8 0 0 0 3.2 0" stroke="currentColor" strokeWidth="1.5" strokeLinecap="round"/>
    </svg>
  ),
  Globe: (p) => (
    <svg viewBox="0 0 20 20" fill="none" {...p}>
      <circle cx="10" cy="10" r="7.2" stroke="currentColor" strokeWidth="1.5"/>
      <path d="M2.8 10h14.4M10 2.8c2 2 2.6 5 2.6 7.2S12 15.2 10 17.2C8 15.2 7.4 12.2 7.4 10S8 4.8 10 2.8Z" stroke="currentColor" strokeWidth="1.5"/>
    </svg>
  ),
  Info: (p) => (
    <svg viewBox="0 0 20 20" fill="none" {...p}>
      <circle cx="10" cy="10" r="7.2" stroke="currentColor" strokeWidth="1.5"/>
      <path d="M10 9v4.2" stroke="currentColor" strokeWidth="1.7" strokeLinecap="round"/>
      <circle cx="10" cy="6.4" r="1" fill="currentColor"/>
    </svg>
  ),
  Bookmark: (p) => (
    <svg viewBox="0 0 20 20" fill="none" {...p}>
      <path d="M5.5 3.5h9a1 1 0 0 1 1 1v12l-5.5-3-5.5 3v-12a1 1 0 0 1 1-1Z" stroke="currentColor" strokeWidth="1.5" strokeLinejoin="round"/>
    </svg>
  ),
  Spark: (p) => (
    <svg viewBox="0 0 20 20" fill="currentColor" {...p}>
      <path d="M10 1.5c.4 3.6 1.8 5.1 5.4 5.5-3.6.4-5 1.9-5.4 5.5-.4-3.6-1.8-5.1-5.4-5.5C8.2 6.6 9.6 5.1 10 1.5Z"/>
      <path d="M15.5 12c.2 1.8.9 2.5 2.7 2.7-1.8.2-2.5.9-2.7 2.7-.2-1.8-.9-2.5-2.7-2.7 1.8-.2 2.5-.9 2.7-2.7Z"/>
    </svg>
  ),
  ChevR: (p) => (<svg viewBox="0 0 20 20" fill="none" {...p}><path d="M7.5 4.5 13 10l-5.5 5.5" stroke="currentColor" strokeWidth="1.7" strokeLinecap="round" strokeLinejoin="round"/></svg>),
};
window.IbIcon = IbIcon;
