// Inline icon components — minimal stroke icons, all 16x16 by default.

const Icon = ({ d, size = 16, stroke = 1.5, fill = 'none', children, ...rest }) => (
  <svg width={size} height={size} viewBox="0 0 24 24" fill={fill} stroke="currentColor" strokeWidth={stroke} strokeLinecap="round" strokeLinejoin="round" {...rest}>
    {d ? <path d={d} /> : children}
  </svg>
);

const IHome = (p) => <Icon {...p}><path d="M3 10.5L12 3l9 7.5V20a1 1 0 0 1-1 1h-5v-7H9v7H4a1 1 0 0 1-1-1z"/></Icon>;
const IList = (p) => <Icon {...p}><path d="M8 6h13M8 12h13M8 18h13M3 6h.01M3 12h.01M3 18h.01"/></Icon>;
const IDebt = (p) => <Icon {...p}><path d="M3 7h18M3 12h18M3 17h12"/></Icon>;
const ISavings = (p) => <Icon {...p}><path d="M12 2v4m0 12v4m9-10h-4M7 12H3m13.36-6.36l-2.83 2.83M9.46 14.54l-2.83 2.83m11.36 0l-2.83-2.83M9.46 9.46L6.64 6.64"/></Icon>;
const ISpark = (p) => <Icon {...p}><path d="M12 2l2.39 7.36H22l-6.19 4.5L18.2 21 12 16.5 5.8 21l2.39-7.14L2 9.36h7.61z"/></Icon>;
const ICat = (p) => <Icon {...p}><path d="M3 3h7v7H3zM14 3h7v7h-7zM14 14h7v7h-7zM3 14h7v7H3z"/></Icon>;
const IUsers = (p) => <Icon {...p}><path d="M16 21v-2a4 4 0 0 0-4-4H5a4 4 0 0 0-4 4v2"/><circle cx="8.5" cy="7" r="4"/><path d="M22 21v-2a4 4 0 0 0-3-3.87M16 3.13a4 4 0 0 1 0 7.75"/></Icon>;
const ICal = (p) => <Icon {...p}><rect x="3" y="4" width="18" height="18" rx="2"/><path d="M16 2v4M8 2v4M3 10h18"/></Icon>;
const IChart = (p) => <Icon {...p}><path d="M3 3v18h18M7 14l4-4 4 4 5-5"/></Icon>;
const IPlus = (p) => <Icon {...p}><path d="M12 5v14M5 12h14"/></Icon>;
const IMinus = (p) => <Icon {...p}><path d="M5 12h14"/></Icon>;
const IArrowUp = (p) => <Icon {...p}><path d="M12 19V5M5 12l7-7 7 7"/></Icon>;
const IArrowDown = (p) => <Icon {...p}><path d="M12 5v14M19 12l-7 7-7-7"/></Icon>;
const IArrowRight = (p) => <Icon {...p}><path d="M5 12h14M12 5l7 7-7 7"/></Icon>;
const ISparkle = (p) => <Icon {...p}><path d="M12 3l1.5 4.5L18 9l-4.5 1.5L12 15l-1.5-4.5L6 9l4.5-1.5zM19 16l.7 2.3L22 19l-2.3.7L19 22l-.7-2.3L16 19l2.3-.7z"/></Icon>;
const IFire = (p) => <Icon {...p}><path d="M12 2c1 4 5 6 5 11a5 5 0 0 1-10 0c0-2 1-3 2-4 0 2 1 3 2 3 0-3-2-4 1-10z"/></Icon>;
const ITarget = (p) => <Icon {...p}><circle cx="12" cy="12" r="9"/><circle cx="12" cy="12" r="5"/><circle cx="12" cy="12" r="1"/></Icon>;
const IClose = (p) => <Icon {...p}><path d="M6 6l12 12M6 18L18 6"/></Icon>;
const ITrash = (p) => <Icon {...p}><path d="M3 6h18M19 6l-1 14a2 2 0 0 1-2 2H8a2 2 0 0 1-2-2L5 6M10 11v6M14 11v6M9 6V4a2 2 0 0 1 2-2h2a2 2 0 0 1 2 2v2"/></Icon>;
const IEdit = (p) => <Icon {...p}><path d="M11 4H4a2 2 0 0 0-2 2v14a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-7M18.5 2.5a2.121 2.121 0 0 1 3 3L12 15l-4 1 1-4z"/></Icon>;
const IInfo = (p) => <Icon {...p}><circle cx="12" cy="12" r="9"/><path d="M12 8h.01M11 12h1v4h1"/></Icon>;
const ICheck = (p) => <Icon {...p}><path d="M5 12l5 5L20 7"/></Icon>;
const IBolt = (p) => <Icon {...p}><path d="M13 2L3 14h7l-1 8 10-12h-7z"/></Icon>;
const ITrend = (p) => <Icon {...p}><path d="M22 7l-9 9-4-4-7 7M16 7h6v6"/></Icon>;
const IWallet = (p) => <Icon {...p}><path d="M21 12V7a2 2 0 0 0-2-2H5a2 2 0 0 0-2 2v10a2 2 0 0 0 2 2h14a2 2 0 0 0 2-2v-1M22 12h-4a2 2 0 1 0 0 4h4"/></Icon>;
const ICoffee = (p) => <Icon {...p}><path d="M18 8h1a3 3 0 0 1 0 6h-1M2 8h16v9a4 4 0 0 1-4 4H6a4 4 0 0 1-4-4zM6 1v3M10 1v3M14 1v3"/></Icon>;
const ICar = (p) => <Icon {...p}><path d="M5 17H3v-5l2-5h14l2 5v5h-2M5 17a2 2 0 1 0 4 0M15 17a2 2 0 1 0 4 0M5 17h10"/></Icon>;
const IPlay = (p) => <Icon {...p}><path d="M5 3l14 9-14 9V3z"/></Icon>;

Object.assign(window, {
  IHome, IList, IDebt, ISavings, ISpark, ICat, IUsers, ICal, IChart,
  IPlus, IMinus, IArrowUp, IArrowDown, IArrowRight, ISparkle, IFire,
  ITarget, IClose, ITrash, IEdit, IInfo, ICheck, IBolt, ITrend,
  IWallet, ICoffee, ICar, IPlay,
});
