// Tiny inline icon set, stroke-based, 1.5 stroke, 24px. No external deps.
const Icon = ({ children, size = 16, className = '', strokeWidth = 1.6, ...props }) => (
  <svg
    width={size}
    height={size}
    viewBox="0 0 24 24"
    fill="none"
    stroke="currentColor"
    strokeWidth={strokeWidth}
    strokeLinecap="round"
    strokeLinejoin="round"
    className={className}
    {...props}
  >
    {children}
  </svg>
);

const I = {
  Search: (p) => <Icon {...p}><circle cx="11" cy="11" r="7" /><path d="m20 20-3.5-3.5" /></Icon>,
  Apple: (p) => (
    <Icon {...p} fill="currentColor" stroke="none">
      <path d="M16.365 12.146c-.02-2.18 1.78-3.224 1.86-3.275-1.014-1.483-2.594-1.685-3.157-1.708-1.345-.136-2.625.793-3.31.793-.683 0-1.737-.773-2.86-.752-1.471.022-2.83.855-3.586 2.171-1.532 2.658-.391 6.59 1.099 8.747.728 1.06 1.598 2.252 2.74 2.21 1.099-.044 1.515-.713 2.844-.713 1.328 0 1.704.713 2.871.689 1.184-.022 1.935-1.082 2.659-2.146.836-1.234 1.18-2.43 1.2-2.49-.026-.012-2.302-.884-2.36-3.526zM14.05 5.85c.605-.733 1.014-1.751.902-2.766-.871.035-1.928.58-2.554 1.312-.561.65-1.052 1.687-.92 2.682.971.075 1.964-.494 2.572-1.228z" />
    </Icon>
  ),
  Windows: (p) => (
    <Icon {...p} fill="currentColor" stroke="none">
      <path d="M3 5.4 10.4 4.4v6.8H3V5.4zM10.4 12.2H3v6.4l7.4 1V12.2zM11.4 4.3 21 3v8.2h-9.6V4.3zM21 12.2h-9.6V20.7L21 22V12.2z" />
    </Icon>
  ),
  ArrowRight: (p) => <Icon {...p}><path d="M5 12h14" /><path d="m13 6 6 6-6 6" /></Icon>,
  Check: (p) => <Icon {...p}><path d="m5 12 4.5 4.5L19 7" /></Icon>,
  Lock: (p) => <Icon {...p}><rect x="4" y="11" width="16" height="9" rx="2" /><path d="M8 11V8a4 4 0 0 1 8 0v3" /></Icon>,
  Cloud: (p) => <Icon {...p}><path d="M7 18a4 4 0 0 1-.8-7.92A6 6 0 0 1 18 9.5 4 4 0 0 1 17 18H7z" /></Icon>,
  Cpu: (p) => <Icon {...p}><rect x="5" y="5" width="14" height="14" rx="2" /><rect x="9" y="9" width="6" height="6" /><path d="M9 2v3M15 2v3M9 19v3M15 19v3M2 9h3M2 15h3M19 9h3M19 15h3" /></Icon>,
  Sparkles: (p) => <Icon {...p}><path d="M12 4v4M12 16v4M4 12h4M16 12h4M6.3 6.3l2.4 2.4M15.3 15.3l2.4 2.4M17.7 6.3l-2.4 2.4M8.7 15.3l-2.4 2.4" /></Icon>,
  Layers: (p) => <Icon {...p}><path d="m12 3 9 5-9 5-9-5 9-5z" /><path d="m3 13 9 5 9-5" /></Icon>,
  Calendar: (p) => <Icon {...p}><rect x="3" y="5" width="18" height="16" rx="2" /><path d="M3 9h18M8 3v4M16 3v4" /></Icon>,
  Clock: (p) => <Icon {...p}><circle cx="12" cy="12" r="9" /><path d="M12 7v5l3 2" /></Icon>,
  Image: (p) => <Icon {...p}><rect x="3" y="4" width="18" height="16" rx="2" /><circle cx="9" cy="10" r="1.6" /><path d="m21 16-5-5-9 9" /></Icon>,
  Tag: (p) => <Icon {...p}><path d="M3 12V4h8l10 10-8 8L3 12z" /><circle cx="7" cy="8" r="1.3" /></Icon>,
  Type: (p) => <Icon {...p}><path d="M5 6h14M12 6v14M8 20h8" /></Icon>,
  Folder: (p) => <Icon {...p}><path d="M3 7a2 2 0 0 1 2-2h4l2 2h8a2 2 0 0 1 2 2v9a2 2 0 0 1-2 2H5a2 2 0 0 1-2-2V7z" /></Icon>,
  Sidebar: (p) => <Icon {...p}><rect x="3" y="4" width="18" height="16" rx="2" /><path d="M9 4v16" /></Icon>,
  ChevronRight: (p) => <Icon {...p}><path d="m9 6 6 6-6 6" /></Icon>,
  ChevronDown: (p) => <Icon {...p}><path d="m6 9 6 6 6-6" /></Icon>,
  Plus: (p) => <Icon {...p}><path d="M12 5v14M5 12h14" /></Icon>,
  Bug: (p) => <Icon {...p}><rect x="7" y="8" width="10" height="10" rx="5" /><path d="M9 8V6a3 3 0 0 1 6 0v2M3 14h4M17 14h4M5 9l3 1.5M19 9l-3 1.5M5 19l3-1.5M19 19l-3-1.5" /></Icon>,
  Pencil: (p) => <Icon {...p}><path d="M4 20h4l11-11-4-4L4 16v4z" /><path d="m13.5 6.5 4 4" /></Icon>,
  Code: (p) => <Icon {...p}><path d="m8 8-4 4 4 4M16 8l4 4-4 4M14 5l-4 14" /></Icon>,
  Book: (p) => <Icon {...p}><path d="M4 5a2 2 0 0 1 2-2h12v18H6a2 2 0 0 1-2-2V5z" /><path d="M4 17h14" /></Icon>,
  Headset: (p) => <Icon {...p}><path d="M4 14v-2a8 8 0 0 1 16 0v2" /><rect x="3" y="14" width="5" height="6" rx="1.5" /><rect x="16" y="14" width="5" height="6" rx="1.5" /></Icon>,
  Roadmap: (p) => <Icon {...p}><path d="M4 7h16M4 12h10M4 17h16" /><circle cx="20" cy="12" r="1.5" /></Icon>,
  External: (p) => <Icon {...p}><path d="M14 4h6v6M10 14 20 4M20 14v6H4V4h6" /></Icon>,
  Command: (p) => <Icon {...p}><path d="M9 6a3 3 0 1 0-3 3h12a3 3 0 1 0-3-3v12a3 3 0 1 0 3-3H6a3 3 0 1 0 3 3V6z" /></Icon>,
  Filter: (p) => <Icon {...p}><path d="M3 5h18l-7 9v6l-4-2v-4L3 5z" /></Icon>,
  Eye: (p) => <Icon {...p}><path d="M2 12s3.5-7 10-7 10 7 10 7-3.5 7-10 7S2 12 2 12z" /><circle cx="12" cy="12" r="3" /></Icon>,
  Square: (p) => <Icon {...p}><rect x="4" y="4" width="16" height="16" rx="3" /></Icon>,
  Dot: (p) => <Icon {...p} fill="currentColor" stroke="none"><circle cx="12" cy="12" r="3" /></Icon>,
  Quote: (p) => <Icon {...p}><path d="M7 7h4v6H5a4 4 0 0 1 4-6zM17 7h4v6h-6a4 4 0 0 1 4-6z" /></Icon>,
  Mail: (p) => <Icon {...p}><rect x="3" y="5" width="18" height="14" rx="2" /><path d="m3 7 9 6 9-6" /></Icon>,
  Trash: (p) => <Icon {...p}><path d="M3 6h18M8 6V4a2 2 0 0 1 2-2h4a2 2 0 0 1 2 2v2M19 6v14a2 2 0 0 1-2 2H7a2 2 0 0 1-2-2V6M10 11v6M14 11v6" /></Icon>,
  Settings: (p) => <Icon {...p}><circle cx="12" cy="12" r="3" /><path d="M12 1v2.5M12 20.5V23M4.22 4.22l1.77 1.77M18.01 18.01l1.77 1.77M1 12h2.5M20.5 12H23M4.22 19.78l1.77-1.77M18.01 5.99l1.77-1.77" /></Icon>,
  X: (p) => <Icon {...p}><path d="M18 6 6 18M6 6l12 12" /></Icon>,
};

window.I = I;
