/* RINAU HEX — Icon set (inline SVG, lucide-style) */
/* All icons share: 24x24 viewBox, stroke=currentColor, stroke-width=1.5, fill=none */

const IconBase = ({ size = 20, children, className = '' }) => (
  <svg xmlns="http://www.w3.org/2000/svg" width={size} height={size} viewBox="0 0 24 24"
       fill="none" stroke="currentColor" strokeWidth="1.5" strokeLinecap="round" strokeLinejoin="round"
       className={className}>{children}</svg>
);

const I = {
  // Hex / Logo
  Hex: (p) => <IconBase {...p}><polygon points="12,2 21,7 21,17 12,22 3,17 3,7" /></IconBase>,

  // Nav / UI
  Globe: (p) => <IconBase {...p}><circle cx="12" cy="12" r="9"/><line x1="3" y1="12" x2="21" y2="12"/><path d="M12 3 C8 7 8 17 12 21 C16 17 16 7 12 3"/></IconBase>,
  Sun: (p) => <IconBase {...p}><circle cx="12" cy="12" r="4"/><line x1="12" y1="2" x2="12" y2="5"/><line x1="12" y1="19" x2="12" y2="22"/><line x1="2" y1="12" x2="5" y2="12"/><line x1="19" y1="12" x2="22" y2="12"/><line x1="5" y1="5" x2="7" y2="7"/><line x1="17" y1="17" x2="19" y2="19"/><line x1="19" y1="5" x2="17" y2="7"/><line x1="7" y1="17" x2="5" y2="19"/></IconBase>,
  Moon: (p) => <IconBase {...p}><path d="M21 12.8 A9 9 0 1 1 11.2 3 A7 7 0 0 0 21 12.8 Z"/></IconBase>,
  Menu: (p) => <IconBase {...p}><line x1="3" y1="7" x2="21" y2="7"/><line x1="3" y1="12" x2="21" y2="12"/><line x1="3" y1="17" x2="21" y2="17"/></IconBase>,
  X: (p) => <IconBase {...p}><line x1="6" y1="6" x2="18" y2="18"/><line x1="6" y1="18" x2="18" y2="6"/></IconBase>,
  ChevronRight: (p) => <IconBase {...p}><polyline points="9,6 15,12 9,18"/></IconBase>,
  ArrowRight: (p) => <IconBase {...p}><line x1="4" y1="12" x2="20" y2="12"/><polyline points="14,6 20,12 14,18"/></IconBase>,
  ArrowLeft: (p) => <IconBase {...p}><line x1="20" y1="12" x2="4" y2="12"/><polyline points="10,6 4,12 10,18"/></IconBase>,
  Plus: (p) => <IconBase {...p}><line x1="12" y1="5" x2="12" y2="19"/><line x1="5" y1="12" x2="19" y2="12"/></IconBase>,
  Check: (p) => <IconBase {...p}><polyline points="20,6 9,17 4,12"/></IconBase>,
  ShoppingCart: (p) => <IconBase {...p}><circle cx="9" cy="20" r="1.4"/><circle cx="17" cy="20" r="1.4"/><path d="M2 3 H5 L7 14 H18 L20 6 H7"/></IconBase>,
  Trash: (p) => <IconBase {...p}><polyline points="3,6 5,6 21,6"/><path d="M19 6 L18 20 H6 L5 6"/><line x1="10" y1="10" x2="10" y2="16"/><line x1="14" y1="10" x2="14" y2="16"/></IconBase>,
  Send: (p) => <IconBase {...p}><line x1="22" y1="2" x2="11" y2="13"/><polygon points="22,2 15,22 11,13 2,9"/></IconBase>,
  Info: (p) => <IconBase {...p}><circle cx="12" cy="12" r="9"/><line x1="12" y1="11" x2="12" y2="16"/><circle cx="12" cy="8" r="0.7" fill="currentColor"/></IconBase>,
  Search: (p) => <IconBase {...p}><circle cx="11" cy="11" r="7"/><line x1="21" y1="21" x2="16.65" y2="16.65"/></IconBase>,
  Sparkles: (p) => <IconBase {...p}><path d="M12 3 L13.5 9 L19 10.5 L13.5 12 L12 18 L10.5 12 L5 10.5 L10.5 9 Z"/><path d="M19 16 L19.7 18.3 L22 19 L19.7 19.7 L19 22 L18.3 19.7 L16 19 L18.3 18.3 Z"/></IconBase>,
  ArrowUpRight: (p) => <IconBase {...p}><line x1="7" y1="17" x2="17" y2="7"/><polyline points="7,7 17,7 17,17"/></IconBase>,
  ChevronDown: (p) => <IconBase {...p}><polyline points="6,9 12,15 18,9"/></IconBase>,

  // Contact
  MapPin: (p) => <IconBase {...p}><path d="M12 22 C8 18 4 14 4 10 A8 8 0 0 1 20 10 C20 14 16 18 12 22 Z"/><circle cx="12" cy="10" r="3"/></IconBase>,
  Phone: (p) => <IconBase {...p}><path d="M22 16.9 V20 A2 2 0 0 1 19.8 22 A19.8 19.8 0 0 1 2 4.2 A2 2 0 0 1 4 2 H7.1 A2 2 0 0 1 9.1 3.7 L9.7 6.3 A2 2 0 0 1 9.2 8.1 L7.9 9.4 A16 16 0 0 0 14.6 16.1 L15.9 14.8 A2 2 0 0 1 17.7 14.3 L20.3 14.9 A2 2 0 0 1 22 16.9 Z"/></IconBase>,
  Mail: (p) => <IconBase {...p}><rect x="3" y="5" width="18" height="14"/><polyline points="3,7 12,13 21,7"/></IconBase>,

  // Categories
  Layers3: (p) => <IconBase {...p}><polygon points="12,2 22,7 12,12 2,7"/><polyline points="2,12 12,17 22,12"/><polyline points="2,17 12,22 22,17"/></IconBase>,
  GraduationCap: (p) => <IconBase {...p}><polyline points="22,9 12,4 2,9 12,14 22,9"/><path d="M6 11 V16 C6 17 9 19 12 19 C15 19 18 17 18 16 V11"/></IconBase>,
  Briefcase: (p) => <IconBase {...p}><rect x="3" y="7" width="18" height="13" rx="1"/><path d="M9 7 V5 A1.5 1.5 0 0 1 10.5 3.5 H13.5 A1.5 1.5 0 0 1 15 5 V7"/></IconBase>,
  HeartPulse: (p) => <IconBase {...p}><path d="M12 21 C8 17 3 13 3 8.5 A4.5 4.5 0 0 1 12 6 A4.5 4.5 0 0 1 21 8.5 C21 13 16 17 12 21 Z"/><polyline points="6,11 9,11 11,8 13,14 15,11 18,11"/></IconBase>,

  // Service icons
  CheckSquare: (p) => <IconBase {...p}><rect x="3" y="3" width="18" height="18" rx="2"/><polyline points="8,12 11,15 16,9"/></IconBase>,
  BookOpen: (p) => <IconBase {...p}><path d="M2 5 H10 A2 2 0 0 1 12 7 V21 A2 2 0 0 0 10 19 H2 Z"/><path d="M22 5 H14 A2 2 0 0 0 12 7 V21 A2 2 0 0 1 14 19 H22 Z"/></IconBase>,
  ShieldCheck: (p) => <IconBase {...p}><path d="M12 22 C16 20 20 16 20 12 V5 L12 2 L4 5 V12 C4 16 8 20 12 22 Z"/><polyline points="9,12 11,14 15,10"/></IconBase>,
  Laptop: (p) => <IconBase {...p}><rect x="3" y="5" width="18" height="11" rx="1"/><line x1="2" y1="20" x2="22" y2="20"/></IconBase>,
  Monitor: (p) => <IconBase {...p}><rect x="3" y="3" width="18" height="13" rx="1"/><line x1="8" y1="20" x2="16" y2="20"/><line x1="12" y1="16" x2="12" y2="20"/></IconBase>,
  Files: (p) => <IconBase {...p}><path d="M14 2 H7 A2 2 0 0 0 5 4 V20 A2 2 0 0 0 7 22 H17 A2 2 0 0 0 19 20 V7 Z"/><polyline points="14,2 14,7 19,7"/></IconBase>,
  FolderKanban: (p) => <IconBase {...p}><path d="M3 6 A1 1 0 0 1 4 5 H9 L11 7 H20 A1 1 0 0 1 21 8 V18 A2 2 0 0 1 19 20 H5 A2 2 0 0 1 3 18 Z"/><line x1="8" y1="11" x2="8" y2="17"/><line x1="12" y1="11" x2="12" y2="14"/><line x1="16" y1="11" x2="16" y2="16"/></IconBase>,
  Server: (p) => <IconBase {...p}><rect x="3" y="4" width="18" height="6" rx="1"/><rect x="3" y="14" width="18" height="6" rx="1"/><circle cx="7" cy="7" r="0.8" fill="currentColor"/><circle cx="7" cy="17" r="0.8" fill="currentColor"/></IconBase>,
  Layers: (p) => <IconBase {...p}><polygon points="12,3 22,8 12,13 2,8"/><polyline points="2,13 12,18 22,13"/></IconBase>,
  Database: (p) => <IconBase {...p}><ellipse cx="12" cy="5" rx="8" ry="3"/><path d="M4 5 V12 C4 13.7 7.6 15 12 15 C16.4 15 20 13.7 20 12 V5"/><path d="M4 12 V19 C4 20.7 7.6 22 12 22 C16.4 22 20 20.7 20 19 V12"/></IconBase>,
  Brain: (p) => <IconBase {...p}><path d="M9 4 A3 3 0 0 0 6 7 A3 3 0 0 0 4 10 A3 3 0 0 0 5 13 A3 3 0 0 0 6 17 A3 3 0 0 0 9 20 A2 2 0 0 0 12 20 V4 A2 2 0 0 0 9 4 Z"/><path d="M15 4 A3 3 0 0 1 18 7 A3 3 0 0 1 20 10 A3 3 0 0 1 19 13 A3 3 0 0 1 18 17 A3 3 0 0 1 15 20 A2 2 0 0 1 12 20 V4 A2 2 0 0 1 15 4 Z"/></IconBase>,
  Cpu: (p) => <IconBase {...p}><rect x="6" y="6" width="12" height="12" rx="1"/><rect x="9" y="9" width="6" height="6"/><line x1="9" y1="2" x2="9" y2="5"/><line x1="15" y1="2" x2="15" y2="5"/><line x1="9" y1="19" x2="9" y2="22"/><line x1="15" y1="19" x2="15" y2="22"/><line x1="2" y1="9" x2="5" y2="9"/><line x1="2" y1="15" x2="5" y2="15"/><line x1="19" y1="9" x2="22" y2="9"/><line x1="19" y1="15" x2="22" y2="15"/></IconBase>,
  Calendar: (p) => <IconBase {...p}><rect x="3" y="5" width="18" height="16" rx="1"/><line x1="3" y1="10" x2="21" y2="10"/><line x1="8" y1="3" x2="8" y2="7"/><line x1="16" y1="3" x2="16" y2="7"/></IconBase>,
  CalendarDays: (p) => <IconBase {...p}><rect x="3" y="5" width="18" height="16" rx="1"/><line x1="3" y1="10" x2="21" y2="10"/><line x1="8" y1="3" x2="8" y2="7"/><line x1="16" y1="3" x2="16" y2="7"/><line x1="8" y1="14" x2="8" y2="14.5"/><line x1="12" y1="14" x2="12" y2="14.5"/><line x1="16" y1="14" x2="16" y2="14.5"/></IconBase>,
  TrendingUp: (p) => <IconBase {...p}><polyline points="3,17 9,11 13,15 21,7"/><polyline points="14,7 21,7 21,14"/></IconBase>,
  Activity: (p) => <IconBase {...p}><polyline points="3,12 7,12 10,4 14,20 17,12 21,12"/></IconBase>,
  User: (p) => <IconBase {...p}><circle cx="12" cy="8" r="4"/><path d="M4 21 A8 8 0 0 1 20 21"/></IconBase>,
  HardDrive: (p) => <IconBase {...p}><rect x="3" y="14" width="18" height="6" rx="1"/><path d="M5 14 L7 4 H17 L19 14"/><circle cx="7" cy="17" r="0.8" fill="currentColor"/></IconBase>,
  FlaskConical: (p) => <IconBase {...p}><path d="M9 3 V9 L4 19 A1.5 1.5 0 0 0 5.3 21 H18.7 A1.5 1.5 0 0 0 20 19 L15 9 V3"/><line x1="8" y1="3" x2="16" y2="3"/><line x1="7" y1="14" x2="17" y2="14"/></IconBase>,

  // Misc
  Landmark: (p) => <IconBase {...p}><line x1="3" y1="22" x2="21" y2="22"/><line x1="5" y1="22" x2="5" y2="11"/><line x1="9" y1="22" x2="9" y2="11"/><line x1="15" y1="22" x2="15" y2="11"/><line x1="19" y1="22" x2="19" y2="11"/><polygon points="12,2 22,8 2,8"/></IconBase>,
  Microscope: (p) => <IconBase {...p}><path d="M6 18 H18"/><path d="M9 18 V14 H15 V18"/><path d="M11 7 L9 9 L13 13 L15 11 Z"/><line x1="13" y1="3" x2="17" y2="7"/><circle cx="10" cy="12" r="0.6" fill="currentColor"/></IconBase>,
  Code: (p) => <IconBase {...p}><polyline points="8,7 3,12 8,17"/><polyline points="16,7 21,12 16,17"/></IconBase>,
  Users: (p) => <IconBase {...p}><circle cx="9" cy="9" r="3.5"/><path d="M2.5 21 A7 7 0 0 1 15.5 21"/><circle cx="17" cy="7" r="2.5"/><path d="M15.5 13.5 A5 5 0 0 1 21.5 18"/></IconBase>,
  Award: (p) => <IconBase {...p}><circle cx="12" cy="9" r="6"/><polyline points="8,14 6,22 12,18 18,22 16,14"/></IconBase>,
  Target: (p) => <IconBase {...p}><circle cx="12" cy="12" r="9"/><circle cx="12" cy="12" r="5"/><circle cx="12" cy="12" r="1.5" fill="currentColor"/></IconBase>,
  Building: (p) => <IconBase {...p}><rect x="4" y="3" width="16" height="18"/><line x1="9" y1="8" x2="9" y2="9"/><line x1="15" y1="8" x2="15" y2="9"/><line x1="9" y1="12" x2="9" y2="13"/><line x1="15" y1="12" x2="15" y2="13"/><line x1="10" y1="21" x2="10" y2="17" /><line x1="14" y1="21" x2="14" y2="17"/></IconBase>,
  Linkedin: (p) => <IconBase {...p}><rect x="3" y="3" width="18" height="18" rx="1"/><line x1="7.5" y1="10" x2="7.5" y2="17"/><circle cx="7.5" cy="7" r="0.9" fill="currentColor"/><path d="M11 17 V10 H13.5 V12 C14 11 15 10 16.5 10 C18 10 17.5 12 17.5 13 V17"/></IconBase>,
  Twitter: (p) => <IconBase {...p}><path d="M22 5 A8 8 0 0 1 19 6 A4 4 0 0 0 21 4 A8 8 0 0 1 18 5.5 A4 4 0 0 0 11 9 A11 11 0 0 1 3 4 A4 4 0 0 0 4 9 A4 4 0 0 1 2 8 V8.5 A4 4 0 0 0 5 12 A4 4 0 0 1 3 12 A4 4 0 0 0 7 15 A8 8 0 0 1 2 17 A11 11 0 0 0 8 19 A11 11 0 0 0 19 8 V7 A8 8 0 0 0 22 5 Z"/></IconBase>,
  // Admin
  Shield: (p) => <IconBase {...p}><path d="M12 22 C16 20 20 16 20 12 V5 L12 2 L4 5 V12 C4 16 8 20 12 22 Z"/></IconBase>,
  Lock: (p) => <IconBase {...p}><rect x="5" y="11" width="14" height="10" rx="1.5"/><path d="M8 11 V7 A4 4 0 0 1 16 7 V11"/></IconBase>,
  Eye: (p) => <IconBase {...p}><path d="M2 12 C5 6 9 4 12 4 C15 4 19 6 22 12 C19 18 15 20 12 20 C9 20 5 18 2 12 Z"/><circle cx="12" cy="12" r="3"/></IconBase>,
  EyeOff: (p) => <IconBase {...p}><path d="M3 3 L21 21"/><path d="M10.5 6.2 A8 8 0 0 1 12 6 C15 6 19 8 22 12 C21 13.5 19.8 14.9 18.4 16"/><path d="M6 7.5 C4.2 8.7 2.8 10.3 2 12 C5 18 9 20 12 20 C13.6 20 15.3 19.6 16.8 18.7"/><path d="M9.9 9.9 A3 3 0 0 0 14.1 14.1"/></IconBase>,
  LogOut: (p) => <IconBase {...p}><path d="M9 21 H5 A2 2 0 0 1 3 19 V5 A2 2 0 0 1 5 3 H9"/><polyline points="16,17 21,12 16,7"/><line x1="21" y1="12" x2="9" y2="12"/></IconBase>,

  Github: (p) => <IconBase {...p}><path d="M12 2 A10 10 0 0 0 8.8 21.5 C9.3 21.6 9.5 21.3 9.5 21 V19.4 C6.7 20 6.1 18 6.1 18 C5.6 16.9 4.9 16.6 4.9 16.6 C4 16 5 16 5 16 C6 16 6.5 17 6.5 17 C7.5 18.6 9 18.2 9.6 18 C9.7 17.3 10 16.8 10.3 16.5 C8 16.3 5.7 15.4 5.7 11.6 C5.7 10.5 6.1 9.7 6.7 9 C6.6 8.7 6.2 7.7 6.8 6.3 C6.8 6.3 7.7 6 9.5 7.2 A9.4 9.4 0 0 1 14.5 7.2 C16.3 6 17.2 6.3 17.2 6.3 C17.8 7.7 17.4 8.7 17.3 9 C17.9 9.7 18.3 10.5 18.3 11.6 C18.3 15.4 16 16.3 13.7 16.5 C14.1 16.9 14.4 17.6 14.4 18.7 V21 C14.4 21.3 14.6 21.6 15.2 21.5 A10 10 0 0 0 12 2 Z"/></IconBase>,
};

window.RHX_ICONS = I;
