/* Brainstorm X — shared icon set (Lucide geometry, inline SVG).
   Loaded by UI kits via <script type="text/babel" src="../icons.jsx">.
   Exposed on window so kit scripts share them. */
(function () {
  const S = ({ size = 20, stroke = 2, children, ...p }) =>
    React.createElement('svg', {
      width: size, height: size, viewBox: '0 0 24 24', fill: 'none',
      stroke: 'currentColor', strokeWidth: stroke, strokeLinecap: 'round',
      strokeLinejoin: 'round', ...p,
    }, children);
  const P = (d) => React.createElement('path', { d, key: d });
  const raw = (els) => els;

  const Icons = {
    Zap: (p) => S({ ...p, children: P('M4 14h6l-1 8 11-13h-6l1-7z'), fill: p.fill }),
    Sparkles: (p) => S({ ...p, children: raw([P('M12 3l1.9 4.6L18.5 9.5 13.9 11.4 12 16l-1.9-4.6L5.5 9.5 10.1 7.6z'), P('M19 14l.8 2 2 .8-2 .8-.8 2-.8-2-2-.8 2-.8z')]) }),
    WandSparkles: (p) => S({ ...p, children: raw([P('M15 4V2M15 10V8M11 6H9M21 6h-2M18 9l-1.5-1.5M18 3l-1.5 1.5'), P('M3 21l12-12 0 0a1.5 1.5 0 0 0-2-2L1 19z')]) }),
    Users: (p) => S({ ...p, children: raw([P('M16 21v-2a4 4 0 0 0-4-4H6a4 4 0 0 0-4 4v2'), React.createElement('circle', { cx: 9, cy: 7, r: 4, key: 'c' }), P('M22 21v-2a4 4 0 0 0-3-3.9M16 3.1a4 4 0 0 1 0 7.8')]) }),
    Star: (p) => S({ ...p, children: P('M12 2l3 6.5 7 .6-5.3 4.7L18.2 21 12 17.3 5.8 21l1.5-7.2L2 9.1l7-.6z'), fill: p.fill }),
    ChevronUp: (p) => S({ ...p, children: P('m18 15-6-6-6 6') }),
    ChevronDown: (p) => S({ ...p, children: P('m6 9 6 6 6-6') }),
    ArrowRight: (p) => S({ ...p, children: raw([P('M5 12h14'), P('m12 5 7 7-7 7')]) }),
    ArrowLeft: (p) => S({ ...p, children: raw([P('M19 12H5'), P('m12 19-7-7 7-7')]) }),
    Mail: (p) => S({ ...p, children: raw([React.createElement('rect', { x: 2, y: 4, width: 20, height: 16, rx: 2, key: 'r' }), P('m22 7-10 6L2 7')]) }),
    Plus: (p) => S({ ...p, children: P('M12 5v14M5 12h14') }),
    X: (p) => S({ ...p, children: P('M18 6 6 18M6 6l12 12') }),
    Check: (p) => S({ ...p, children: P('M20 6 9 17l-5-5') }),
    MessageCircle: (p) => S({ ...p, children: P('M21 11.5a8.38 8.38 0 0 1-8.5 8.5 8.5 8.5 0 0 1-3.8-.9L3 21l1.9-5.7A8.38 8.38 0 0 1 4 11.5 8.5 8.5 0 0 1 12.5 3 8.38 8.38 0 0 1 21 11.5z') }),
    Link: (p) => S({ ...p, children: raw([P('M10 13a5 5 0 0 0 7 0l3-3a5 5 0 0 0-7-7l-1.5 1.5'), P('M14 11a5 5 0 0 0-7 0l-3 3a5 5 0 0 0 7 7l1.5-1.5')]) }),
    Layers: (p) => S({ ...p, children: raw([P('m12 2 9 5-9 5-9-5z'), P('m3 12 9 5 9-5'), P('m3 17 9 5 9-5')]) }),
    Share: (p) => S({ ...p, children: raw([React.createElement('circle', { cx: 18, cy: 5, r: 3, key: 'a' }), React.createElement('circle', { cx: 6, cy: 12, r: 3, key: 'b' }), React.createElement('circle', { cx: 18, cy: 19, r: 3, key: 'c' }), P('m8.6 13.5 6.8 4M15.4 6.5l-6.8 4')]) }),
    Copy: (p) => S({ ...p, children: raw([React.createElement('rect', { x: 9, y: 9, width: 12, height: 12, rx: 2, key: 'r' }), P('M5 15H4a2 2 0 0 1-2-2V4a2 2 0 0 1 2-2h9a2 2 0 0 1 2 2v1')]) }),
    Globe: (p) => S({ ...p, children: raw([React.createElement('circle', { cx: 12, cy: 12, r: 10, key: 'c' }), P('M2 12h20M12 2a15 15 0 0 1 0 20 15 15 0 0 1 0-20z')]) }),
    Vote: (p) => S({ ...p, children: raw([P('m9 12 2 2 4-4'), P('M5 7c0-1 .5-2 2-2h10c1.5 0 2 1 2 2v8c0 1-.5 2-2 2H7c-1.5 0-2-1-2-2z'), P('M22 19H2')]) }),
    Download: (p) => S({ ...p, children: raw([P('M21 15v4a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2v-4'), P('M7 10l5 5 5-5M12 15V3')]) }),
    Trash2: (p) => S({ ...p, children: raw([P('M3 6h18M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2m3 0v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6'), P('M10 11v6M14 11v6')]) }),
    Minimize: (p) => S({ ...p, children: P('M8 3v3a2 2 0 0 1-2 2H3M21 8h-3a2 2 0 0 1-2-2V3M3 16h3a2 2 0 0 1 2 2v3M16 21v-3a2 2 0 0 1 2-2h3') }),
    Crown: (p) => S({ ...p, children: P('M2 18h20l-2-9-5 4-3-7-3 7-5-4z') }),
    Wand: (p) => S({ ...p, children: raw([P('m3 21 12-12'), P('M15 6l3 3M12 3v2M19 8h2M18 13l1.5 1.5M9 4 7.5 5.5')]) }),
    Flag: (p) => S({ ...p, children: raw([P('M4 22V4a1 1 0 0 1 .4-.8c2-1.5 4-1.5 6 0s4 1.5 6 0l1.6-1.2V14l-1.6 1.2c-2 1.5-4 1.5-6 0s-4-1.5-6 0')]) }),
    Filter: (p) => S({ ...p, children: P('M22 3H2l8 9.5V19l4 2v-8.5z') }),
    Menu: (p) => S({ ...p, children: P('M4 6h16M4 12h16M4 18h16') }),
    Compass: (p) => S({ ...p, children: raw([React.createElement('circle', { cx: 12, cy: 12, r: 10, key: 'c' }), P('m16.2 7.8-2.9 6.4-6.4 2.9 2.9-6.4z')]) }),
  };
  window.BXIcons = Icons;
})();
