/* Gridea — icon set (Lucide-style, dark/light agnostic) */
const GIcon = ({ name, size = 18, stroke = 1.75, className = '' }) => {
  const paths = {
    'logo': <><path d="M3 12 L9 4 L21 4 L21 12 L15 20 L3 20 Z" fill="currentColor" opacity="0.2"/><path d="M3 12 L9 4 L21 4 L21 12 L15 20 L3 20 Z"/><path d="M3 12 L21 12 M9 4 L9 20 M15 4 L15 20"/></>,
    'zap': <><path d="M13 2 L4 14 L11 14 L10 22 L19 10 L12 10 Z"/></>,
    'arrow-right': <><path d="M5 12 L19 12 M13 5 L20 12 L13 19"/></>,
    'arrow-up-right': <><path d="M7 17 L17 7 M9 7 L17 7 L17 15"/></>,
    'check': <><path d="M5 12 L10 17 L20 7"/></>,
    'check-circle': <><circle cx="12" cy="12" r="9"/><path d="M8 12 L11 15 L16 9"/></>,
    'alert': <><path d="M12 3 L22 20 L2 20 Z"/><path d="M12 9 L12 13 M12 17 L12 17.5"/></>,
    'alert-circle': <><circle cx="12" cy="12" r="9"/><path d="M12 7 L12 13 M12 16.5 L12 17"/></>,
    'flame': <><path d="M12 22 c-4 0-7-3-7-7 c0-3 2-5 3-7 c1 2 2 3 4 3 c0-3 1-5 4-7 c0 3 5 6 5 11 a7 7 0 0 1-7 7 z"/></>,
    'gauge': <><circle cx="12" cy="13" r="9"/><path d="M12 13 L18 7"/><path d="M3 14 a9 9 0 0 1 18 0"/></>,
    'eye-off': <><path d="M3 3 L21 21"/><path d="M2 12 c1.5-2.5 4-5 7-6 M14 6 c3 1 5.5 3.5 7 6 c-1 1.5-2.5 3-4.5 4"/><path d="M9 9 a3.5 3.5 0 0 0 5 5"/></>,
    'clock': <><circle cx="12" cy="12" r="9"/><path d="M12 7 L12 12 L16 14"/></>,
    'file-stack': <><path d="M9 2 L19 2 L19 17 L9 17 Z"/><path d="M5 6 L5 21 L15 21"/></>,
    'pin': <><path d="M12 22 C 8 17 5 13 5 9 a7 7 0 0 1 14 0 c0 4-3 8-7 13 z"/><circle cx="12" cy="9" r="2.5"/></>,
    'thermo': <><path d="M14 14 V4 a2 2 0 0 0-4 0 v10 a4 4 0 1 0 4 0 z"/><circle cx="12" cy="17" r="1.5" fill="currentColor"/></>,
    'snow': <><path d="M12 2 L12 22 M2 12 L22 12 M5 5 L19 19 M19 5 L5 19 M9 5 L12 2 L15 5 M9 19 L12 22 L15 19 M5 9 L2 12 L5 15 M19 9 L22 12 L19 15"/></>,
    'sun': <><circle cx="12" cy="12" r="4"/><path d="M12 2 L12 4 M12 20 L12 22 M2 12 L4 12 M20 12 L22 12 M4.5 4.5 L5.9 5.9 M18.1 18.1 L19.5 19.5 M4.5 19.5 L5.9 18.1 M18.1 5.9 L19.5 4.5"/></>,
    'building': <><rect x="4" y="2" width="16" height="20" rx="1"/><path d="M10 22 L10 18 L14 18 L14 22"/><path d="M8 6 L8 6 M12 6 L12 6 M16 6 L16 6 M8 10 L8 10 M12 10 L12 10 M16 10 L16 10 M8 14 L8 14 M12 14 L12 14 M16 14 L16 14"/></>,
    'folder': <><path d="M4 7 a2 2 0 0 1 2-2 h4 l2 2 h6 a2 2 0 0 1 2 2 v9 a2 2 0 0 1-2 2 H6 a2 2 0 0 1-2-2 z"/></>,
    'sparkles': <><path d="M12 3 L13.5 8.5 L19 10 L13.5 11.5 L12 17 L10.5 11.5 L5 10 L10.5 8.5 Z"/><path d="M19 17 L19.8 19.2 L22 20 L19.8 20.8 L19 23 L18.2 20.8 L16 20 L18.2 19.2 Z"/></>,
    'trend-up': <><path d="M3 17 L9 11 L13 15 L21 7"/><path d="M14 7 L21 7 L21 14"/></>,
    'trend-down': <><path d="M3 7 L9 13 L13 9 L21 17"/><path d="M14 17 L21 17 L21 10"/></>,
    'mail': <><rect x="3" y="5" width="18" height="14" rx="2"/><path d="M3 7 L12 13 L21 7"/></>,
    'menu': <><path d="M3 6 L21 6 M3 12 L21 12 M3 18 L21 18"/></>,
    'plus': <><path d="M12 5 L12 19 M5 12 L19 12"/></>,
    'chevron-right': <><path d="M9 6 L15 12 L9 18"/></>,
    'chevron-down': <><path d="M6 9 L12 15 L18 9"/></>,
    'wallet': <><path d="M3 7 a2 2 0 0 1 2-2 h13 a1 1 0 0 1 1 1 v2"/><rect x="3" y="7" width="18" height="13" rx="2"/><circle cx="17" cy="13.5" r="1.2" fill="currentColor"/></>,
    'map': <><path d="M9 4 L3 6 L3 20 L9 18 L15 20 L21 18 L21 4 L15 6 Z"/><path d="M9 4 L9 18 M15 6 L15 20"/></>,
    'shield-check': <><path d="M12 2 L4 5 L4 12 c0 5 4 9 8 10 4-1 8-5 8-10 V5 z"/><path d="M9 12 L11 14 L15 10"/></>,
    'bell': <><path d="M6 11 a6 6 0 0 1 12 0 v3 l1.5 3 H4.5 L6 14 z"/><path d="M10 20 a2 2 0 0 0 4 0"/></>,
    'play': <><polygon points="6 4 20 12 6 20" fill="currentColor"/></>,
    'send': <><path d="M22 2 L11 13"/><path d="M22 2 L15 22 L11 13 L2 9 Z"/></>,
    'globe': <><circle cx="12" cy="12" r="9"/><path d="M3 12 L21 12 M12 3 c4 4 4 14 0 18 c-4-4-4-14 0-18"/></>,
    'school': <><path d="M3 9 L12 4 L21 9 L12 14 Z"/><path d="M6 11 L6 17 a6 4 0 0 0 12 0 V11"/></>,
    'lightbulb': <><path d="M9 18 L15 18 M10 21 L14 21"/><path d="M12 3 a6 6 0 0 1 4 10.5 c-1 1-1.5 2-1.5 3.5 H9.5 c0-1.5-0.5-2.5-1.5-3.5 A6 6 0 0 1 12 3 Z"/></>,
    'wrench': <><path d="M15 3 a5 5 0 0 0-5 6 L3 16 L8 21 L15 14 a5 5 0 0 0 6-5 L17 13 L13 9 Z"/></>,
  };
  return (
    <svg width={size} height={size} viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth={stroke} strokeLinecap="round" strokeLinejoin="round" className={className}>
      {paths[name] || null}
    </svg>
  );
};

window.GIcon = GIcon;
