// Sendorai icons — stroke-only, 1.75 stroke, inherits currentColor.
// Same visual family as Lucide. Documented in ICONOGRAPHY.

const I = ({ size = 20, children, ...p }) => (
  <svg width={size} height={size} viewBox="0 0 24 24" fill="none"
       stroke="currentColor" strokeWidth="1.75" strokeLinecap="round" strokeLinejoin="round" {...p}>
    {children}
  </svg>
);

const Icon = {
  Home:    (p) => <I {...p}><path d="M3 12 L12 4 L21 12"/><path d="M5 10 V20 H19 V10"/></I>,
  Briefs:  (p) => <I {...p}><path d="M4 6 H20"/><path d="M4 12 H20"/><path d="M4 18 H14"/></I>,
  Send:    (p) => <I {...p}><path d="M22 2 L11 13"/><path d="M22 2 L15 22 L11 13 L2 9 Z"/></I>,
  People:  (p) => <I {...p}><circle cx="9" cy="8" r="3.5"/><path d="M2 21 a7 7 0 0 1 14 0"/><path d="M16 4 a3.5 3.5 0 0 1 0 7"/><path d="M18 21 a5 5 0 0 0-2-4"/></I>,
  Inbox:   (p) => <I {...p}><path d="M3 13 H8 L10 16 H14 L16 13 H21"/><path d="M5 5 H19 L21 13 V20 H3 V13 Z"/></I>,
  Settings:(p) => <I {...p}><circle cx="12" cy="12" r="3"/><path d="M19.4 15a1.65 1.65 0 0 0 .33 1.82l.06.06a2 2 0 1 1-2.83 2.83l-.06-.06a1.65 1.65 0 0 0-1.82-.33 1.65 1.65 0 0 0-1 1.51V21a2 2 0 1 1-4 0v-.09A1.65 1.65 0 0 0 9 19.4a1.65 1.65 0 0 0-1.82.33l-.06.06a2 2 0 1 1-2.83-2.83l.06-.06a1.65 1.65 0 0 0 .33-1.82 1.65 1.65 0 0 0-1.51-1H3a2 2 0 1 1 0-4h.09A1.65 1.65 0 0 0 4.6 9a1.65 1.65 0 0 0-.33-1.82l-.06-.06a2 2 0 1 1 2.83-2.83l.06.06a1.65 1.65 0 0 0 1.82.33H9a1.65 1.65 0 0 0 1-1.51V3a2 2 0 1 1 4 0v.09a1.65 1.65 0 0 0 1 1.51 1.65 1.65 0 0 0 1.82-.33l.06-.06a2 2 0 1 1 2.83 2.83l-.06.06a1.65 1.65 0 0 0-.33 1.82V9a1.65 1.65 0 0 0 1.51 1H21a2 2 0 1 1 0 4h-.09a1.65 1.65 0 0 0-1.51 1z"/></I>,
  Plus:    (p) => <I {...p}><path d="M12 5 V19"/><path d="M5 12 H19"/></I>,
  Search:  (p) => <I {...p}><circle cx="11" cy="11" r="7"/><path d="M21 21 L16.5 16.5"/></I>,
  Check:   (p) => <I {...p}><polyline points="20 6 9 17 4 12"/></I>,
  Chevron: (p) => <I {...p}><polyline points="9 18 15 12 9 6"/></I>,
  ChevDn:  (p) => <I {...p}><polyline points="6 9 12 15 18 9"/></I>,
  Arrow:   (p) => <I {...p}><path d="M5 12 H19"/><path d="M13 6 L19 12 L13 18"/></I>,
  ArrowUR: (p) => <I {...p}><path d="M7 17 L17 7"/><path d="M9 7 H17 V15"/></I>,
  Close:   (p) => <I {...p}><path d="M6 6 L18 18"/><path d="M18 6 L6 18"/></I>,
  File:    (p) => <I {...p}><path d="M14 2 H6 a2 2 0 0 0-2 2 v16 a2 2 0 0 0 2 2 h12 a2 2 0 0 0 2-2 V8 Z"/><polyline points="14 2 14 8 20 8"/></I>,
  Upload:  (p) => <I {...p}><path d="M21 15 v4 a2 2 0 0 1-2 2 H5 a2 2 0 0 1-2-2 v-4"/><polyline points="17 8 12 3 7 8"/><line x1="12" y1="3" x2="12" y2="15"/></I>,
  Spark:   (p) => <I {...p}><path d="M12 3 L13.5 9 L19.5 10.5 L13.5 12 L12 18 L10.5 12 L4.5 10.5 L10.5 9 Z"/></I>,
  Mail:    (p) => <I {...p}><rect x="3" y="5" width="18" height="14" rx="2"/><polyline points="3 7 12 13 21 7"/></I>,
  Link:    (p) => <I {...p}><path d="M10 14 a5 5 0 0 0 7 0 l3-3 a5 5 0 0 0-7-7 l-1 1"/><path d="M14 10 a5 5 0 0 0-7 0 l-3 3 a5 5 0 0 0 7 7 l1-1"/></I>,
  Building:(p) => <I {...p}><path d="M3 21 H21"/><path d="M5 21 V7 L13 3 V21"/><path d="M19 21 V11 L13 8"/><path d="M9 9 H9.01"/><path d="M9 13 H9.01"/><path d="M9 17 H9.01"/></I>,
  Pin:     (p) => <I {...p}><path d="M12 2 L12 8"/><path d="M8 8 H16 L14 14 H10 Z"/><path d="M12 14 V22"/></I>,
  More:    (p) => <I {...p}><circle cx="12" cy="5" r="1"/><circle cx="12" cy="12" r="1"/><circle cx="12" cy="19" r="1"/></I>,
  Refresh: (p) => <I {...p}><path d="M3 12 a9 9 0 0 1 15-6.7 L21 8"/><polyline points="21 3 21 8 16 8"/><path d="M21 12 a9 9 0 0 1-15 6.7 L3 16"/><polyline points="3 21 3 16 8 16"/></I>,
};

Object.assign(window, { Icon });
