// Minimal monochrome geometric icon set. Single stroke style.
// All use currentColor so they inherit from parent.

const Ico = ({ children, size = 22, stroke = 1.5 }) => (
  <svg width={size} height={size} viewBox="0 0 24 24" fill="none"
       stroke="currentColor" strokeWidth={stroke}
       strokeLinecap="round" strokeLinejoin="round" aria-hidden="true">
    {children}
  </svg>
);

const IcoBookmark = (p) => (<Ico {...p}><path d="M6 4h12v17l-6-4-6 4z"/></Ico>);
const IcoStack = (p) => (
  <Ico {...p}>
    <path d="M3 8l9-5 9 5-9 5z"/>
    <path d="M3 13l9 5 9-5"/>
    <path d="M3 17l9 5 9-5"/>
  </Ico>
);
const IcoGhost = (p) => (
  <Ico {...p}>
    <path d="M5 21V8a7 7 0 0 1 14 0v13"/>
    <path d="M5 21h14"/>
    <path d="M9 12h.01M15 12h.01"/>
    <path d="M9 16c1 .8 4 .8 5 .2"/>
  </Ico>
);
const IcoBrain = (p) => (
  <Ico {...p}>
    <path d="M12 4a3 3 0 0 0-3 3v.5A2.5 2.5 0 0 0 6.5 10 2.5 2.5 0 0 0 5 12.3 3 3 0 0 0 7 18v2h5z"/>
    <path d="M12 4a3 3 0 0 1 3 3v.5A2.5 2.5 0 0 1 17.5 10 2.5 2.5 0 0 1 19 12.3 3 3 0 0 1 17 18v2h-5"/>
  </Ico>
);
const IcoLink = (p) => (
  <Ico {...p}>
    <path d="M10 14a4 4 0 0 0 5.7 0l3-3a4 4 0 0 0-5.7-5.7L11.5 7"/>
    <path d="M14 10a4 4 0 0 0-5.7 0l-3 3a4 4 0 0 0 5.7 5.7L12.5 17"/>
  </Ico>
);
const IcoSearch = (p) => (<Ico {...p}><circle cx="11" cy="11" r="7"/><path d="M20 20l-3.5-3.5"/></Ico>);
const IcoDevices = (p) => (
  <Ico {...p}>
    <rect x="2" y="5" width="14" height="10" rx="1.5"/>
    <path d="M6 19h6"/><path d="M9 15v4"/>
    <rect x="16" y="9" width="6" height="11" rx="1.2"/>
  </Ico>
);
const IcoExport = (p) => (
  <Ico {...p}>
    <path d="M12 3v12"/>
    <path d="M7 8l5-5 5 5"/>
    <path d="M4 17v2a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-2"/>
  </Ico>
);
const IcoLock = (p) => (<Ico {...p}><rect x="5" y="11" width="14" height="10" rx="2"/><path d="M8 11V8a4 4 0 0 1 8 0v3"/></Ico>);
const IcoPlay = ({ size = 28 }) => (
  <svg width={size} height={size} viewBox="0 0 24 24" fill="currentColor" aria-hidden="true">
    <path d="M8 5.5v13a1 1 0 0 0 1.5.87l11-6.5a1 1 0 0 0 0-1.74l-11-6.5A1 1 0 0 0 8 5.5z"/>
  </svg>
);
const IcoArrow = ({ size = 16, stroke = 2 }) => (
  <svg width={size} height={size} viewBox="0 0 24 24" fill="none"
       stroke="currentColor" strokeWidth={stroke}
       strokeLinecap="round" strokeLinejoin="round" aria-hidden="true">
    <path d="M5 12h14"/><path d="M13 6l6 6-6 6"/>
  </svg>
);
const IcoX = ({ size = 16 }) => (
  <svg width={size} height={size} viewBox="0 0 24 24" fill="currentColor" className="x-glyph" aria-hidden="true">
    <path d="M18.244 2.25h3.308l-7.227 8.26 8.502 11.24H16.17l-5.214-6.817L4.99 21.75H1.68l7.73-8.835L1.254 2.25H8.08l4.713 6.231zm-1.161 17.52h1.833L7.084 4.126H5.117z"/>
  </svg>
);

Object.assign(window, {
  IcoBookmark, IcoStack, IcoGhost, IcoBrain, IcoLink, IcoSearch,
  IcoDevices, IcoExport, IcoLock, IcoPlay, IcoArrow, IcoX,
});
