/* icons.jsx — brand logos via real SVG files */

const ArrowRight = ({size=16}) => (
  <svg width={size} height={size} viewBox="0 0 16 16" fill="none">
    <path d="M3 8h10m-4-4 4 4-4 4" stroke="currentColor" strokeWidth="1.6" strokeLinecap="round" strokeLinejoin="round"/>
  </svg>
);

const PlayIcon = ({size=14}) => (
  <svg width={size} height={size} viewBox="0 0 14 14" fill="none">
    <path d="M4 3l7 4-7 4V3z" fill="currentColor"/>
  </svg>
);

const CheckIcon = ({size=14, color='currentColor'}) => (
  <svg width={size} height={size} viewBox="0 0 14 14" fill="none">
    <path d="M3 7.5l2.5 2.5L11 4" stroke={color} strokeWidth="1.6" fill="none" strokeLinecap="round" strokeLinejoin="round"/>
  </svg>
);

const Sparkle = ({size=14}) => (
  <svg width={size} height={size} viewBox="0 0 14 14" fill="none">
    <path d="M7 1.5l1.4 3.6 3.6 1.4-3.6 1.4L7 11.5 5.6 7.9 2 6.5l3.6-1.4z" fill="currentColor"/>
  </svg>
);

/* Brand logo using <img> from assets/ */
const Logo = ({src, alt, size=18, bg, rounded=8, pad=0}) => (
  <span style={{
    width: size + pad*2, height: size + pad*2,
    background: bg || 'transparent',
    borderRadius: rounded,
    display: 'inline-grid', placeItems: 'center',
    flexShrink: 0,
    padding: pad,
  }}>
    <img src={src} alt={alt} style={{width: size, height: size, objectFit: 'contain', display:'block'}}/>
  </span>
);

/* Shorthand brand components */
const ChatGPT     = ({size=18, bg='#fff', pad=2, rounded=6}) => <Logo src="/v2-assets/chatgpt.svg" alt="ChatGPT" size={size} bg={bg} pad={pad} rounded={rounded}/>;
const Claude      = ({size=18, bg='#fff', pad=2, rounded=6}) => <Logo src="/v2-assets/claude.svg" alt="Claude" size={size} bg={bg} pad={pad} rounded={rounded}/>;
const Perplexity  = ({size=18, bg='#fff', pad=2, rounded=6}) => <Logo src="/v2-assets/perplexity.svg" alt="Perplexity" size={size} bg={bg} pad={pad} rounded={rounded}/>;
const Gemini      = ({size=18, bg='#fff', pad=2, rounded=6}) => <Logo src="/v2-assets/gemini.svg" alt="Gemini" size={size} bg={bg} pad={pad} rounded={rounded}/>;
const Grok        = ({size=18, bg='#fff', pad=2, rounded=6}) => <Logo src="/v2-assets/grok.svg" alt="Grok" size={size} bg={bg} pad={pad} rounded={rounded}/>;
const Copilot     = ({size=18, bg='#fff', pad=2, rounded=6}) => <Logo src="/v2-assets/google.svg" alt="Google AI Overviews" size={size} bg={bg} pad={pad} rounded={rounded}/>;

const Reddit      = ({size=18, bg='#fff', pad=2, rounded=6}) => <Logo src="/v2-assets/reddit.svg" alt="Reddit" size={size} bg={bg} pad={pad} rounded={rounded}/>;
const Quora       = ({size=18, bg='#fff', pad=2, rounded=6}) => <Logo src="/v2-assets/quora.svg" alt="Quora" size={size} bg={bg} pad={pad} rounded={rounded}/>;
const Substack    = ({size=18, bg='#fff', pad=2, rounded=6}) => <Logo src="/v2-assets/substack.svg" alt="Substack" size={size} bg={bg} pad={pad} rounded={rounded}/>;
const XLogo       = ({size=18, bg='#fff', pad=2, rounded=6}) => <Logo src="/v2-assets/x.svg" alt="X" size={size} bg={bg} pad={pad} rounded={rounded}/>;
const PressLogo   = ({size=18, bg='#fff', pad=2, rounded=6}) => <Logo src="/v2-assets/press.svg" alt="Press" size={size} bg={bg} pad={pad} rounded={rounded}/>;
const AuthorityLogo = ({size=18, bg='#fff', pad=2, rounded=6}) => <Logo src="/v2-assets/authority.svg" alt="Authority blogs" size={size} bg={bg} pad={pad} rounded={rounded}/>;
const YahooFinance = ({size=18, bg='#fff', pad=2, rounded=6}) => <Logo src="/v2-assets/yahoo-finance.svg" alt="Yahoo Finance" size={size} bg={bg} pad={pad} rounded={rounded}/>;
const Medium = ({size=18, bg='#fff', pad=2, rounded=6}) => <Logo src="/v2-assets/medium.svg" alt="Medium" size={size} bg={bg} pad={pad} rounded={rounded}/>;
const DigitalJournal = ({size=18, bg='#fff', pad=2, rounded=6}) => <Logo src="/v2-assets/digital-journal.svg" alt="Digital Journal" size={size} bg={bg} pad={pad} rounded={rounded}/>;

Object.assign(window, {
  ArrowRight, PlayIcon, CheckIcon, Sparkle, Logo,
  ChatGPT, Claude, Perplexity, Gemini, Grok, Copilot,
  Reddit, Quora, Substack, XLogo, PressLogo, AuthorityLogo,
  YahooFinance, Medium, DigitalJournal,
});
