// Multi Sale — marketing app

const { useState, useEffect } = React;

// —— Icons (tiny inline) ——————————————————————————
const Icon = ({ name, size = 18 }) => {
  const stroke = { width: 1.75, linecap: "round", linejoin: "round", fill: "none", stroke: "currentColor" };
  const paths = {
    arrow: <path {...stroke} d="M5 12h14M13 6l6 6-6 6" />,
    check: <path {...stroke} d="M5 12l5 5L20 7" />,
    plus: <path {...stroke} d="M12 5v14M5 12h14" />,
    spark: <path {...stroke} d="M12 3l1.8 5.2L19 10l-5.2 1.8L12 17l-1.8-5.2L5 10l5.2-1.8L12 3z" />,
    chat: <path {...stroke} d="M21 12a8 8 0 1 1-3.2-6.4L21 4l-1.4 3.2A8 8 0 0 1 21 12z" />,
    bag: <><path {...stroke} d="M5 8h14l-1 12H6L5 8z" /><path {...stroke} d="M9 8V5a3 3 0 0 1 6 0v3" /></>,
    bolt: <path {...stroke} d="M13 2L4 14h7l-1 8 9-12h-7l1-8z" />,
    box: <><path {...stroke} d="M3 7l9-4 9 4-9 4-9-4z" /><path {...stroke} d="M3 7v10l9 4 9-4V7" /><path {...stroke} d="M12 11v10" /></>,
    mail: <><path {...stroke} d="M3 6h18v12H3z" /><path {...stroke} d="M3 6l9 7 9-7" /></>,
    shield: <path {...stroke} d="M12 3l8 3v6c0 5-3.5 8-8 9-4.5-1-8-4-8-9V6l8-3z" />,
    users: <><circle {...stroke} cx="9" cy="9" r="3" /><path {...stroke} d="M3 19a6 6 0 0 1 12 0" /><circle {...stroke} cx="17" cy="10" r="2.5" /><path {...stroke} d="M15 19a5 5 0 0 1 7-4.6" /></>,
    storefront: <><path {...stroke} d="M3 9l1-5h16l1 5" /><path {...stroke} d="M5 9v11h14V9" /><path {...stroke} d="M3 9a3 3 0 0 0 6 0M9 9a3 3 0 0 0 6 0M15 9a3 3 0 0 0 6 0" /></>,
    insta: <><rect {...stroke} x="3" y="3" width="18" height="18" rx="5" /><circle {...stroke} cx="12" cy="12" r="4" /><circle cx="17.5" cy="6.5" r="1.1" fill="currentColor" /></>,
    telegram: <path {...stroke} d="M22 4L2 11l6 3 2 6 4-4 6 4 2-16z" />,
    tiktok: <path d="M16.5 3c.3 1.9 1.4 3.4 3.5 3.7v2.6c-1.2.1-2.4-.2-3.5-.9v5.9c0 3.3-2.4 5.7-5.4 5.7-2.8 0-5.1-2.1-5.1-5 0-3 2.4-5.1 5.6-4.8v2.7c-.4-.1-.8-.2-1.2-.2-1.3 0-2.3 1-2.3 2.3 0 1.4 1 2.4 2.3 2.4 1.4 0 2.5-1.1 2.5-2.8V3h3.1z" fill="currentColor" stroke="none" />,
    pencil: <><path {...stroke} d="M12 20h9" /><path {...stroke} d="M16.5 3.5a2.1 2.1 0 0 1 3 3L7 19l-4 1 1-4L16.5 3.5z" /></>,
    tag: <><path {...stroke} d="M20.6 12.3L12 3.7 3.7 12 12 20.3l8.6-8z" /><circle cx="8.5" cy="8.5" r="1.2" fill="currentColor" stroke="none" /></>,
    chart: <><path {...stroke} d="M3 3v18h18" /><path {...stroke} d="M7 15l4-5 3 3 5-7" /></>,
    truck: <><path {...stroke} d="M3 7h11v9H3z" /><path {...stroke} d="M14 10h4l3 3v3h-7" /><circle {...stroke} cx="7" cy="18" r="2" /><circle {...stroke} cx="17" cy="18" r="2" /></>,
    card: <><rect {...stroke} x="3" y="6" width="18" height="12" rx="2" /><path {...stroke} d="M3 10h18" /></>,
    cog: <><circle {...stroke} cx="12" cy="12" r="3" /><path {...stroke} d="M19 12a7 7 0 0 0-.1-1.2l2-1.6-2-3.4-2.4 1a7 7 0 0 0-2-1.2L14 3h-4l-.5 2.6a7 7 0 0 0-2 1.2l-2.4-1-2 3.4 2 1.6A7 7 0 0 0 5 12c0 .4 0 .8.1 1.2l-2 1.6 2 3.4 2.4-1c.6.5 1.3.9 2 1.2L10 21h4l.5-2.6c.7-.3 1.4-.7 2-1.2l2.4 1 2-3.4-2-1.6c.1-.4.1-.8.1-1.2z" /></>,
    chevron: <path {...stroke} d="M9 6l6 6-6 6" />
  };
  return (
    <svg width={size} height={size} viewBox="0 0 24 24" aria-hidden="true">
      {paths[name]}
    </svg>);

};

// —— Brand mark (logo icon) ————————————————————————
function BrandMark({ size = 34, radius = 0.26 }) {
  return (
    <span
      className="brand-mark"
      style={{
        width: size,
        height: size,
        borderRadius: size * radius,
        background: 'linear-gradient(135deg, #7c3aed 0%, #5b3df5 50%, #2596ff 100%)',
        display: 'grid',
        placeItems: 'center',
        boxShadow: '0 8px 22px -8px rgba(91,61,245,0.6), inset 0 1px 0 rgba(255,255,255,0.22)',
        flexShrink: 0
      }}>
      
      <svg viewBox="0 0 240 240" width={size * 0.64} height={size * 0.64} aria-hidden="true">
        <rect x="58" y="148" width="28" height="50" rx="5" fill="#fff" />
        <rect x="100" y="118" width="28" height="80" rx="5" fill="#fff" />
        <rect x="142" y="88" width="28" height="110" rx="5" fill="#fff" />
        <path d="M 50 165 Q 100 110 180 55" fill="none" stroke="#fff" strokeWidth="14" strokeLinecap="round" />
        <path d="M 152 50 L 184 50 L 184 82" fill="none" stroke="#fff" strokeWidth="14" strokeLinecap="round" strokeLinejoin="round" />
      </svg>
    </span>);

}

// —— Nav ——————————————————————————————————————————
function Nav({ theme, onToggleTheme }) {
  return (
    <nav className="nav">
      <div className="container nav-inner">
        <a href="#" className="brand">
          <BrandMark size={34} />
          <span>MultiSale</span>
        </a>
        <div className="nav-links">
          <a href="#features">Можливості</a>
          <a href="#ai">AI</a>
          <a href="#pricing">Тарифи</a>
          <a href="#faq">FAQ</a>
        </div>
        <div className="nav-cta">
          <button
            className="theme-toggle"
            onClick={onToggleTheme}
            aria-label="Перемкнути тему"
            title={theme === 'dark' ? 'Світла тема' : 'Темна тема'}>
            
            {theme === 'dark' ?
            <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="1.75" strokeLinecap="round" strokeLinejoin="round">
                <circle cx="12" cy="12" r="4" />
                <path d="M12 2v2M12 20v2M4.93 4.93l1.41 1.41M17.66 17.66l1.41 1.41M2 12h2M20 12h2M4.93 19.07l1.41-1.41M17.66 6.34l1.41-1.41" />
              </svg> :

            <svg width="18" height="18" viewBox="0 0 24 24" fill="none" stroke="currentColor" strokeWidth="1.75" strokeLinecap="round" strokeLinejoin="round">
                <path d="M21 12.8A9 9 0 1 1 11.2 3a7 7 0 0 0 9.8 9.8z" />
              </svg>
            }
          </button>
          <a href="https://app.multi-sale.com" className="btn btn-link">Увійти</a>
          <a href="https://app.multi-sale.com/register" className="btn btn-primary">Спробувати безкоштовно</a>
        </div>
      </div>
    </nav>);

}

// —— Hero flow diagram (real screenshots) ——————————
function FlowDiagram() {
  const steps = [
  { num: "01", label: "Референс у чаті", img: "assets/flow-chat.png", sub: "Клієнт надсилає пост — система впізнає товар", accent: true },
  { num: "02", label: "Створення замовлення", img: "assets/flow-order.png", sub: "Оформлення прямо з вікна діалогу" },
  { num: "03", label: "Доставка та статуси", img: "assets/flow-status.png", sub: "ТТН, історія статусів, оплата" }];

  return (
    <div className="showflow">
      <div className="sf-track">
        {steps.map((s, i) =>
        <React.Fragment key={i}>
            <figure className={"sf-step" + (s.accent ? " is-accent" : "")}>
              <figcaption className="sf-label">
                <span className="sf-num">{s.num}</span>
                <span className="sf-label-text">{s.label}</span>
              </figcaption>
              <div className="sf-frame">
                <img src={s.img} alt={s.label} />
              </div>
              <div className="sf-sub">{s.sub}</div>
            </figure>
            {i < steps.length - 1 && <div className="sf-arrow"><Icon name="arrow" size={22} /></div>}
          </React.Fragment>
        )}
      </div>
      <div className="sf-ai">
        <span className="sf-ai-icon"><Icon name="spark" size={16} /></span>
        <span><strong>AI всередині</strong> — створює товари з постів, розпізнає референси та підказує відповіді</span>
        <span className="sf-ai-badge">AI</span>
      </div>
    </div>);

}

// —— Product scheme (from provided Architecture Diagram) ——
function ProductScheme() {
  const rootRef = React.useRef(null);
  const [inView, setInView] = React.useState(false);

  React.useEffect(() => {
    const el = rootRef.current;
    if (!el) return;
    const io = new IntersectionObserver(
      (entries) => {
        if (entries[0].isIntersecting) {
          setInView(true);
          io.disconnect();
        }
      },
      { threshold: 0.2 }
    );
    io.observe(el);
    return () => io.disconnect();
  }, []);

  return (
    <div className={"arch" + (inView ? " arch-in-view" : "")} ref={rootRef}>
      <style>{`
        .arch { position: relative; color: #fff; font-family: 'Manrope', system-ui, sans-serif; padding: 16px 20px; }
        .arch .diagram { position: relative; display: grid; grid-template-columns: 1fr 1.3fr 1fr; align-items: center; min-height: 720px; gap: 0; }
        .arch .col { position: relative; z-index: 2; display: flex; flex-direction: column; gap: 16px; justify-content: center; }
        .arch .col-label { font-size: 11.5px; font-weight: 700; text-transform: uppercase; letter-spacing: 0.08em; color: #6f6a85; margin-bottom: 4px; padding-left: 4px; }
        .arch .node { display: flex; align-items: center; gap: 13px; padding: 15px 18px; border-radius: 16px; background: linear-gradient(180deg, rgba(255,255,255,0.055), rgba(255,255,255,0.025)); border: 1px solid rgba(255,255,255,0.09); backdrop-filter: blur(6px); }
        .arch .node-ic { flex-shrink: 0; width: 42px; height: 42px; border-radius: 12px; display: grid; place-items: center; color: #fff; }
        .arch .node-text { display: flex; flex-direction: column; gap: 2px; min-width: 0; }
        .arch .node-title { font-size: 15.5px; font-weight: 600; color: #f1eefa; }
        .arch .node-sub { font-size: 12.5px; color: #8b86a0; }
        .arch .ic-instagram { background: linear-gradient(135deg,#f9ce34,#ee2a7b 55%,#6228d7); }
        .arch .ic-tiktok { background: #050505; }
        .arch .ic-telegram { background: linear-gradient(135deg,#2aabee,#229ed9); }
        .arch .ic-manual { background: linear-gradient(135deg,#ff9a52,#ff5f6d); }
        .arch .ic-orders { background: linear-gradient(135deg,#8b7bff,#6d5bd0); }
        .arch .ic-crm { background: linear-gradient(135deg,#60a5fa,#3b82f6); }
        .arch .ic-stock { background: linear-gradient(135deg,#fbbf24,#f59e0b); }
        .arch .ic-analytics { background: linear-gradient(135deg,#f472b6,#db2777); }
        .arch .ic-ai { background: linear-gradient(135deg,#c084fc,#818cf8); }
        .arch .ic-roles { background: linear-gradient(135deg,#38bdf8,#0ea5e9); }
        .arch .hub-wrap { position: relative; z-index: 2; display: flex; justify-content: center; align-items: center; }
        .arch .hub-stack { display: flex; flex-direction: column; align-items: center; gap: 0; }
        .arch .hub-connector { width: 2px; height: 40px; background: linear-gradient(180deg, rgba(164,139,255,0.85), rgba(164,139,255,0.35)); }
        .arch .hub-badge { position: relative; z-index: 3; display: flex; align-items: center; gap: 9px; padding: 9px 16px; border-radius: 999px; background: linear-gradient(180deg, #221c33, #1a1626); border: 1px solid rgba(192,132,252,0.35); }
        .arch .hub-badge-text { font-size: 13px; font-weight: 600; color: #e3d6ff; white-space: nowrap; }
        .arch .hub-analytics { align-self: center; position: relative; z-index: 3; }
        .arch .hub { position: relative; width: 260px; height: 260px; border-radius: 50%; display: flex; flex-direction: column; align-items: center; justify-content: center; gap: 12px; background: radial-gradient(circle at 32% 28%, rgba(164,139,255,0.5), rgba(30,26,46,0.9) 62%); border: 1px solid rgba(255,255,255,0.14); box-shadow: 0 0 0 1px rgba(164,139,255,0.15), 0 40px 100px -20px rgba(124,92,255,0.55), inset 0 0 60px rgba(164,139,255,0.12); }
        .arch .hub::before { content: ""; position: absolute; inset: -30px; border-radius: 50%; border: 1px dashed rgba(164,139,255,0.28); animation: arch-spin 34s linear infinite; }
        @keyframes arch-spin { to { transform: rotate(360deg); } }
        .arch .hub-logo { width: 52px; height: 52px; border-radius: 16px; overflow: hidden; box-shadow: 0 8px 24px rgba(0,0,0,0.4); }
        .arch .hub-logo img { width: 100%; height: 100%; object-fit: cover; }
        .arch .hub-name { font-size: 21px; font-weight: 700; letter-spacing: -0.01em; }
        .arch .hub-tag { font-size: 12px; font-weight: 600; color: #cbc3f5; background: rgba(164,139,255,0.16); border: 1px solid rgba(164,139,255,0.3); border-radius: 999px; padding: 5px 14px; text-align: center; line-height: 1.4; }
        svg.arch-connectors { position: absolute; inset: 0; width: 100%; height: 100%; z-index: 1; overflow: visible; }
        .arch .foot { margin-top: 40px; display: flex; justify-content: center; gap: 40px; flex-wrap: wrap; }
        .arch .foot-item { display: flex; align-items: center; gap: 9px; color: #9d97b3; font-size: 13.5px; font-weight: 500; }
        .arch .foot-item .dot { width: 7px; height: 7px; border-radius: 50%; background: #7c5cff; }
        @media (max-width: 900px) {
          .arch .diagram { grid-template-columns: 1fr; min-height: auto; gap: 16px; }
          svg.arch-connectors { display: none; }
          .arch .hub { width: 200px; height: 200px; }
        }

        @media (prefers-reduced-motion: no-preference) {
          .arch .col-sources .node,
          .arch .col-outputs .node,
          .arch .hub-badge,
          .arch .hub-analytics,
          .arch .hub,
          .arch .hub-connector,
          svg.arch-connectors path {
            opacity: 0;
          }
          .arch .col-sources .node { transform: translateX(-46px); transition: opacity 0.6s ease, transform 0.6s cubic-bezier(0.22,1,0.36,1); }
          .arch .col-outputs .node { transform: translateX(46px); transition: opacity 0.6s ease, transform 0.6s cubic-bezier(0.22,1,0.36,1); }
          .arch .hub-badge { transform: translateY(-14px); transition: opacity 0.5s ease, transform 0.5s ease; }
          .arch .hub-analytics { transform: translateY(14px); transition: opacity 0.5s ease, transform 0.5s ease; }
          .arch .hub { transform: scale(0.85); transition: opacity 0.6s cubic-bezier(0.22,1,0.36,1), transform 0.6s cubic-bezier(0.22,1,0.36,1); }
          .arch .hub-connector { transform: scaleY(0); transform-origin: top; transition: transform 0.4s ease; }
          svg.arch-connectors path { stroke-dasharray: 900; stroke-dashoffset: 900; transition: opacity 0.3s ease, stroke-dashoffset 0.9s ease; }

          .arch-in-view .col-sources .node,
          .arch-in-view .col-outputs .node,
          .arch-in-view .hub-badge,
          .arch-in-view .hub-analytics,
          .arch-in-view .hub {
            opacity: 1;
            transform: none;
          }
          .arch-in-view .hub-connector { opacity: 1; transform: scaleY(1); }
          .arch-in-view svg.arch-connectors path { opacity: 1; stroke-dashoffset: 0; }

          .arch-in-view .col-sources .node:nth-child(2) { transition-delay: 0.08s; }
          .arch-in-view .col-sources .node:nth-child(3) { transition-delay: 0.16s; }
          .arch-in-view .col-sources .node:nth-child(4) { transition-delay: 0.24s; }
          .arch-in-view .col-sources .node:nth-child(5) { transition-delay: 0.32s; }
          .arch-in-view .col-outputs .node:nth-child(2) { transition-delay: 0.08s; }
          .arch-in-view .col-outputs .node:nth-child(3) { transition-delay: 0.16s; }
          .arch-in-view .col-outputs .node:nth-child(4) { transition-delay: 0.24s; }
          .arch-in-view .col-outputs .node:nth-child(5) { transition-delay: 0.32s; }
          .arch-in-view .hub-badge { transition-delay: 0.1s; }
          .arch-in-view .hub-analytics { transition-delay: 0.1s; }
          .arch-in-view .hub { transition-delay: 0.35s; }
          .arch-in-view .hub-connector { transition-delay: 0.45s; }
          .arch-in-view svg.arch-connectors path { transition-delay: 0.5s; }
        }
      `}</style>

      <div className="diagram">
        <svg className="arch-connectors" viewBox="0 0 1560 860" preserveAspectRatio="none">
          <defs>
            <linearGradient id="gLeft" x1="0" y1="0" x2="1" y2="0">
              <stop offset="0" stopColor="#8b7bff" stopOpacity="0.15" />
              <stop offset="1" stopColor="#8b7bff" stopOpacity="0.75" />
            </linearGradient>
            <linearGradient id="gRight" x1="0" y1="0" x2="1" y2="0">
              <stop offset="0" stopColor="#8b7bff" stopOpacity="0.75" />
              <stop offset="1" stopColor="#8b7bff" stopOpacity="0.15" />
            </linearGradient>
          </defs>
          <path d="M 330 260 C 560 260, 560 430, 770 430" fill="none" stroke="url(#gLeft)" strokeWidth="2" />
          <path d="M 330 355 C 560 355, 560 430, 770 430" fill="none" stroke="url(#gLeft)" strokeWidth="2" />
          <path d="M 330 500 C 560 500, 560 430, 770 430" fill="none" stroke="url(#gLeft)" strokeWidth="2" />
          <path d="M 330 600 C 560 600, 560 430, 770 430" fill="none" stroke="url(#gLeft)" strokeWidth="2" />
          <path d="M 790 430 C 1000 430, 1000 260, 1230 260" fill="none" stroke="url(#gRight)" strokeWidth="2" />
          <path d="M 790 430 C 1000 430, 1000 355, 1230 355" fill="none" stroke="url(#gRight)" strokeWidth="2" />
          <path d="M 790 430 C 1000 430, 1000 500, 1230 500" fill="none" stroke="url(#gRight)" strokeWidth="2" />
          <path d="M 790 430 C 1000 430, 1000 600, 1230 600" fill="none" stroke="url(#gRight)" strokeWidth="2" />
        </svg>

        <div className="col col-sources">
          <div className="col-label">Зовнішні джерела</div>
          <div className="node">
            <span className="node-ic ic-instagram"><Icon name="insta" size={20} /></span>
            <span className="node-text"><span className="node-title">Instagram</span><span className="node-sub">Директи та коментарі</span></span>
          </div>
          <div className="node">
            <span className="node-ic ic-tiktok"><Icon name="tiktok" size={18} /></span>
            <span className="node-text"><span className="node-title">TikTok</span><span className="node-sub">Директи та коментарі</span></span>
          </div>
          <div className="node">
            <span className="node-ic ic-telegram"><Icon name="telegram" size={19} /></span>
            <span className="node-text"><span className="node-title" style={{ color: '#2AABEE' }}>Telegram</span><span className="node-sub">Приватні чати</span></span>
          </div>
          <div className="node">
            <span className="node-ic ic-manual"><Icon name="pencil" size={19} /></span>
            <span className="node-text"><span className="node-title">Ручні замовлення</span><span className="node-sub">Менеджер створює вручну</span></span>
          </div>
        </div>

        <div className="hub-wrap">
          <div className="hub-stack">
            <div className="hub-badge">
              <span className="node-ic ic-ai" style={{ width: 30, height: 30, borderRadius: 9 }}><Icon name="spark" size={15} /></span>
              <span className="hub-badge-text">ШІ інтегровано</span>
            </div>
            <div className="hub-connector"></div>
            <div className="hub">
              <span className="hub-logo"><img src="assets/logo-mark.png" alt="MultiSale" /></span>
              <span className="hub-name">MultiSale</span>
              <span className="hub-tag">Централізована<br />система продажів</span>
            </div>
            <div className="hub-connector"></div>
            <div className="node hub-analytics">
              <span className="node-ic ic-analytics"><Icon name="chart" size={19} /></span>
              <span className="node-text"><span className="node-title">Аналітика</span><span className="node-sub">Оборот, ефективність, аналіз чатів</span></span>
            </div>
          </div>
        </div>

        <div className="col col-outputs">
          <div className="col-label" style={{ textAlign: 'right', paddingLeft: 0, paddingRight: 4 }}>Єдиний результат</div>
          <div className="node" style={{ flexDirection: 'row-reverse', textAlign: 'right' }}>
            <span className="node-ic ic-orders"><Icon name="tag" size={19} /></span>
            <span className="node-text"><span className="node-title">Замовлення</span><span className="node-sub">З усіх каналів в одному місці</span></span>
          </div>
          <div className="node" style={{ flexDirection: 'row-reverse', textAlign: 'right' }}>
            <span className="node-ic ic-crm"><Icon name="users" size={19} /></span>
            <span className="node-text"><span className="node-title">Клієнти</span><span className="node-sub">Єдина картка, вся історія</span></span>
          </div>
          <div className="node" style={{ flexDirection: 'row-reverse', textAlign: 'right' }}>
            <span className="node-ic ic-stock"><Icon name="box" size={19} /></span>
            <span className="node-text"><span className="node-title">Товари й залишки</span><span className="node-sub">Один склад на всі канали</span></span>
          </div>
          <div className="node" style={{ flexDirection: 'row-reverse', textAlign: 'right' }}>
            <span className="node-ic ic-roles"><Icon name="shield" size={19} /></span>
            <span className="node-text"><span className="node-title">Керування ролями</span><span className="node-sub">Доступи під ваш процес</span></span>
          </div>
        </div>
      </div>

      <div className="foot">
        <span className="foot-item"><span className="dot"></span>Один менеджер відповідає з будь-якого каналу</span>
        <span className="foot-item"><span className="dot"></span>Один залишок товару на всі точки продажу</span>
        <span className="foot-item"><span className="dot"></span>Одна аналітика по всьому бізнесу</span>
      </div>
    </div>);

}

// —— Hero ————————————————————————————————————————
function Hero({ heroVariant }) {
  const headlines = {
    default: <>Платформа для продажів<br /><span className="accent">Один центр керування.</span></>,
    bold: <>Ваш <span className="brand-ig">Instagram</span> уже продає.<br /><span className="accent">Час навести лад у замовленнях.</span></>,
    calm: <>Системні продажі в <span className="brand-ig">Instagram</span> — з <span className="brand-tt">TikTok</span> напоготові</>
  };
  return (
    <header className="hero">
      <div className="container">
        <div className="hero-grid">
          <h1 className="h-display size-xl">{headlines[heroVariant] || headlines.default}</h1>
          <p className="lead"><span className="brand-ig">Instagram</span>, <span className="brand-tt">TikTok</span>, <span className="brand-tg">Telegram</span> — усі замовлення й розмови синхронізуються в єдину систему MultiSale.
          </p>
          <div className="hero-cta">
            <a href="https://app.multi-sale.com/register" className="btn btn-primary btn-lg">
              Спробувати 21 днів безкоштовно <Icon name="arrow" size={16} />
            </a>
            <a href="#features" className="btn btn-ghost btn-lg">Подивитись демо</a>
          </div>
          <div className="hero-meta">
            <span className="check"><Icon name="check" size={14} /> Без картки</span>
            <span className="check"><Icon name="check" size={14} /> Налаштування за 5 хвилин</span>
            <span className="check"><Icon name="check" size={14} /> Українська підтримка</span>
          </div>
        </div>

        <div className="showcase">
          <div className="showcase-frame">
            <ProductScheme />
          </div>
        </div>
      </div>
    </header>);

}

// —— Strip ———————————————————————————————————————
function Strip() {
  const items = [
  { num: "2 400+", text: "продавців користуються Multi Sale у щоденній роботі" },
  { num: "12 хв", text: "середній час від нового діалогу до оформленого замовлення" },
  { num: "94%", text: "повідомлень AI-асистент розпізнає коректно та з першого разу" },
  { num: "5 хв", text: "займає підключення Instagram та імпорт існуючих чатів" }];

  return (
    <section className="strip">
      <div className="container strip-inner">
        {items.map((it, i) =>
        <div className="strip-item" key={i}>
            <div className="num">{it.num}</div>
            <div>{it.text}</div>
          </div>
        )}
      </div>
    </section>);

}

// —— How it works ——————————————————————————————————
function HowItWorks() {
  return (
    <section className="section" id="features">
      <div className="container">
        <div className="section-head">
          <div className="eyebrow">Як це працює</div>
          <h2 className="h-display size-l">Від першого «Привіт! Є в наявності?» до відправленого  замовлення — в декілька кліків</h2>
          <p>Multi Sale побудовано навколо реального флоу продажу через директ. Жодних втрачених чатів, перемикань між табами та копіпасту в Excel. Сучасний інтерфейс та ШІ допоможуть вам швидше відпускати клієнтів, аналізувати ваш бізес та багато нішого.</p>
        </div>
        <div className="steps">
          <div className="step">
            <span className="step-num">01 · ПІДКЛЮЧЕННЯ</span>
            <h3>Під'єднайте свої месенджери</h3>
            <p>Один клік, без коду. Instagram та Telegram уже працюють, Viber і WhatsApp — у розробці.</p>
            <div className="step-visual">
              <div className="status-row">
                <div className="pill"><Icon name="insta" size={14} /> Instagram Direct <span className="muted" style={{ marginLeft: 'auto' }}>підключено</span><span className="dot" style={{ background: 'var(--green)' }}></span></div>
                <div className="pill"><Icon name="telegram" size={14} /> Telegram <span className="muted" style={{ marginLeft: 'auto' }}>підключено</span><span className="dot" style={{ background: 'var(--green)' }}></span></div>
                <div className="pill"><Icon name="chat" size={14} /> Viber <span className="muted" style={{ marginLeft: 'auto' }}>в розробці</span><span className="dot" style={{ background: 'var(--orange)' }}></span></div>
                <div className="pill"><Icon name="chat" size={14} /> WhatsApp <span className="muted" style={{ marginLeft: 'auto' }}>в розробці</span><span className="dot" style={{ background: 'var(--orange)' }}></span></div>
              </div>
            </div>
          </div>
          <div className="step">
            <span className="step-num">02 · КАТАЛОГ</span>
            <h3>AI створить каталог із ваших постів</h3>
            <p>Кожен пост перетворюється на товар з опису та зображень — з варіантами розмірів, кольорів та цін.</p>
            <div className="step-visual">
              <div className="mini-product">
                <div className="ph"></div>
                <div>
                  <div className="name">Black Wide Jeans</div>
                  <div className="meta">3 варіанти · M / L / XL</div>
                  <div className="tagline-row" style={{ marginTop: 6 }}>
                    <span className="chip accent">AI</span>
                    <span className="chip">з посту</span>
                  </div>
                </div>
              </div>
            </div>
          </div>
          <div className="step">
            <span className="step-num">03 · ПРОДАЖ</span>
            <h3>Створюйте замовлення з директу</h3>
            <p>Клієнт, товари, доставка та оплата — в одному вікні. Без перемикання вкладок.</p>
            <div className="step-visual">
              <div className="dm-bubble in" style={{ top: 18 }}>Хочу ці джинси, розмір M<span className="ts">19:44</span></div>
              <div className="dm-bubble out" style={{ top: 58 }}>Залишайте адресу — оформлюю<span className="ts">19:45</span></div>
              <div className="dm-bubble in" style={{ top: 98 }}>№12, Київ, НП<span className="ts">19:46</span></div>
            </div>
          </div>
        </div>
      </div>
    </section>);

}

// —— Metrics strip ————————————————————————————————
function Metrics() {
  const items = [
  { big: "~1 хв", small: "на оформлення замовлення прямо з чату" },
  { big: "−2 год", small: "рутини щодня" },
  { big: "×2", small: "швидше відповіді клієнтам у директі" }];

  return (
    <section className="metrics">
      <div className="container metrics-inner">
        {items.map((it, i) =>
        <div className="metric" key={i}>
            <div className="metric-big">{it.big}</div>
            <div className="metric-small">{it.small}</div>
          </div>
        )}
      </div>
    </section>);

}

// —— Scroll teaser ————————————————————————————————
function ScrollTeaser() {
  return (
    <div className="scroll-teaser">
      <div className="container">
        <p>Цікаво? Листай - покажу, як платформа працює</p>
        <span className="scroll-teaser-arrow" aria-hidden="true">
          <Icon name="arrow" size={22} />
        </span>
      </div>
    </div>);

}

// —— Create products (first section) ————————————————
function CreateProducts() {
  return (
    <section className="section" id="create-products" style={{ paddingTop: 80 }}>
      <div className="container">
        <div className="section-head">
          <div className="eyebrow">Каталог</div>
          <h2 className="h-display size-l">Створіть ваші товари</h2>
          <p>Гнучкий конструктор товарів: один товар або товар із варіантами - розмір, колір, ціна й залишок для кожного. Або імпортуйте одразу з Instagram за допомогою AI.</p>
        </div>
        <div className="cp-stack">
          <figure className="cp-shot cp-shot-a">
            <img src="assets/create-product-1.png" alt="Форма створення товару Multi Sale" />
          </figure>
          <figure className="cp-shot cp-shot-b">
            <img src="assets/create-product-2.png" alt="Варіанти товару — характеристики та ціни" />
          </figure>
        </div>
      </div>
    </section>);

}

// —— AI does it for you ————————————————————————————
function AIImport() {
  return (
    <section className="section" id="ai-import" style={{ paddingTop: 60 }}>
      <div className="container">
        <div className="section-head">
          <div className="eyebrow">ШІ-імпорт</div>
          <h2 className="h-display size-l">Або за вас це зробить ШІ</h2>
          <p>Оберіть пост в Instagram — ШІ розпізнає назву, категорію, ціну та варіанти з фото й опису, підтягне зображення в галерею. Вам лишається перевірити й натиснути «Заповнити форму товару».</p>
        </div>
        <div className="cp-stack">
          <figure className="cp-shot cp-shot-a">
            <img src="assets/ai-import-1.png" alt="ШІ розпізнає дані товару з поста Instagram" />
          </figure>
          <figure className="cp-shot cp-shot-b">
            <img src="assets/ai-import-2.png" alt="ШІ визначив атрибути та варіанти товару" />
          </figure>
        </div>
      </div>
    </section>);

}

// —— AI Features ———————————————————————————————————
function AIFeatures() {
  const features = [
  {
    icon: "bolt",
    title: "AI-міграція з Instagram",
    desc: "Підключіть акаунт — виберіть пост AI проаналізує фото та опис, згрупує їх у товари з варіантами, поставить ціну з підпису та закине в каталог та імпортує зображення. Готовий список товарів за вечір..",
    chips: ["Пости → товари", "Авто-варіанти", "Розпізнавання цін"]
  },
  {
    icon: "spark",
    title: "Розпізнавання референсів",
    desc: "Коли клієнт надсилає пост або або залишає коментар — система знаходить його у вашому каталозі, показує інформацію та пропонує одразу додати в замовлення.",
    chips: ["Пости", "Reels", "Screenshots"]
  },
  {
    icon: "chat",
    title: "AI-асистент у коментарях",
    desc: "Автовідповіді на найчастіші запитання під постами: «скільки коштує?», «є в наявності?», «який розмір?» — з даних вашого каталогу.",
    chips: ["Comment replies", "Стиль бренду", "24/7"]
  },
  {
    icon: "users",
    title: "Аналіз чату клієнта",
    desc: "AI аналізує переписку менеджера й покупця та визначає тип клієнта — новий, постійний, оптовий чи проблемний — щоб ви знали, як вести діалог.",
    chips: ["Тип клієнта", "Тон діалогу", "Підказки"]
  }];

  return (
    <section className="section" id="ai" style={{ paddingTop: 60 }}>
      <div className="container">
        <div className="section-head">
          <div className="eyebrow">AI всередині продукту</div>
          <h2 className="h-display size-l">Вбудований ШІ, який реально допомагає продавати</h2>
          <p>Інструменти, що економлять ваш час: від міграції каталогу до автовідповідей у коментарях.</p>
        </div>
        <div className="feature-grid">
          {features.map((f, i) =>
          <div className="feature-card" key={i}>
              <div className="icon"><Icon name={f.icon} size={22} /></div>
              <h3>{f.title}</h3>
              <p>{f.desc}</p>
              <div className="tagline-row">
                {f.chips.map((c, j) => <span className="chip" key={j}>{c}</span>)}
              </div>
            </div>
          )}
        </div>
      </div>
    </section>);

}

// —— Order from chat ————————————————————————————————
function OrderFromChat() {
  return (
    <section className="section" id="order-from-chat" style={{ paddingTop: 60 }}>
      <div className="container">
        <div className="section-head">
          <div className="eyebrow">Замовлення з чату</div>
          <h2 className="h-display size-l">Клієнт написав «хочу це» — ви вже знаєте, що це</h2>
          <p>Клієнт надсилає посилання на пост — система одразу показує розпізнаний товар із залишками та цінами прямо біля переписки. Не треба нічого шукати: додайте у замовлення й оформіть його, не виходячи з чату.</p>
        </div>
        <div className="ofc-stack">
          <figure className="ofc-chat">
            <img src="assets/chat-reference.png" alt="Референс-товари прямо у вікні чату" />
          </figure>
          <figure className="ofc-order">
            <img src="assets/order-create.png" alt="Створення замовлення з чату" />
          </figure>
        </div>
      </div>
    </section>);

}

// —— Wishlist ————————————————————————————————————
function Wishlist() {
  return (
    <section className="section" id="wishlist" style={{ paddingTop: 60 }}>
      <div className="container">
        <div className="section-head">
          <div className="eyebrow">Вішліст</div>
          <h2 className="h-display size-l">Немає в наявності? Клієнт очікує</h2>
          <p>Додайте варіант у вішліст клієнта одним кліком — і коли залишок поповниться, система нагадає, хто саме на нього чекав. Жоден зацікавлений клієнт не загубиться.</p>
        </div>
        <div className="wl-stack">
          <figure className="wl-add">
            <img src="assets/wishlist-add.png" alt="Додавання варіанта у вішліст клієнта" />
          </figure>
          <figure className="wl-waiting">
            <img src="assets/wishlist-waiting.png" alt="Список клієнтів, які очікують варіант" />
          </figure>
        </div>
      </div>
    </section>);

}

// —— Split rows ————————————————————————————————————
function AIReference() {
  return (
    <section className="section" id="ai-reference" style={{ paddingTop: 60 }}>
      <div className="container">
        <div className="split">
          <div className="split-text">
            <div className="eyebrow">Референси</div>
            <h2>Кожен товар пам'ятає свій пост</h2>
            <p>AI-згенеровані товари зберігають референс на медіа-пост, з якого їх створено. Ви завжди можете відкрити його, відредагувати або перепривʼязати товари вручну.</p>
            <ul>
              <li><span className="li-icon"><Icon name="check" size={14} /></span> Прив'язка товару до конкретного поста Instagram</li>
              <li><span className="li-icon"><Icon name="check" size={14} /></span> Перегляд опису, лайків та коментарів допису</li>
              <li><span className="li-icon"><Icon name="check" size={14} /></span> Ручне прив'язування та відв'язування товарів</li>
              <li><span className="li-icon"><Icon name="check" size={14} /></span> Швидкий перехід «Відкрити в Instagram»</li>
            </ul>
          </div>
          <div className="split-image">
            <img src="assets/ai-reference.png" alt="Референс товару на медіа-пост Instagram" />
          </div>
        </div>
      </div>
    </section>);

}

function OrderManagement() {
  return (
    <section className="section" style={{ paddingTop: 60 }}>
      <div className="container">
        <div className="split">
          <div className="split-text">
            <div className="eyebrow">Замовлення</div>
            <h2>Платформа, що налаштовується під ваш процес</h2>
            <p>Кастомні статуси, поля товарів, ролі — без розробників. Налаштуйте Multi Sale так, як працює саме ваш магазин.</p>
            <ul>
              <li><span className="li-icon"><Icon name="check" size={14} /></span> Кастомні статуси замовлень з кольорами та порядком</li>
              <li><span className="li-icon"><Icon name="check" size={14} /></span> Власні поля у товарах та клієнтах</li>
              <li><span className="li-icon"><Icon name="check" size={14} /></span> Кілька джерел в одному (Instagram, Telegram)</li>
              <li><span className="li-icon"><Icon name="check" size={14} /></span> Готова інтеграція з Нова Пошта</li>
            </ul>
          </div>
          <div className="split-image">
            <img src="assets/product-statuses.png" alt="Налаштування статусів замовлень" />
          </div>
        </div>
      </div>
    </section>);

}

function Catalog() {
  return (
    <section className="section" style={{ paddingTop: 60 }}>
      <div className="container">
        <div className="split reverse">
          <div className="split-text">
            <div className="eyebrow">Каталог товарів</div>
            <h2>ШІ імпорт товарів</h2>
            <p>ШІ перетворить інстаграм пост на товар, взявши зображення та опис.</p>
            <ul>
              <li><span className="li-icon"><Icon name="check" size={14} /></span> Розпізнає атрибути та варіанти — колір, розмір</li>
              <li><span className="li-icon"><Icon name="check" size={14} /></span> Переносить фото з допису в галерею товару</li>
              <li><span className="li-icon"><Icon name="check" size={14} /></span> Визначає ціну з опису · SKU</li>
              <li><span className="li-icon"><Icon name="check" size={14} /></span> Drafts → публікація · контроль видимості</li>
            </ul>
          </div>
          <div className="split-image">
            <img src="assets/product-ai-import.png" alt="ШІ імпорт товарів з Instagram" />
          </div>
        </div>
      </div>
    </section>);

}

function FlexibleProducts() {
  return (
    <section className="section" style={{ paddingTop: 60 }}>
      <div className="container">
        <div className="split">
          <div className="split-text">
            <div className="eyebrow">Гнучкі товари</div>
            <h2>Гнучке створення товарів під будь-який асортимент</h2>
            <p>Додавайте власні характеристики — колір, розмір, матеріал. Ціна й кількість налаштовуються окремо для кожного варіанта.</p>
            <ul>
              <li><span className="li-icon"><Icon name="check" size={14} /></span> Необмежені характеристики та значення</li>
              <li><span className="li-icon"><Icon name="check" size={14} /></span> Окрема ціна й залишок для кожного варіанта</li>
              <li><span className="li-icon"><Icon name="check" size={14} /></span> Перетягуванням змінюйте порядок</li>
              <li><span className="li-icon"><Icon name="check" size={14} /></span> Автогенерація комбінацій варіантів</li>
            </ul>
          </div>
          <div className="split-image">
            <img src="assets/product-variants.png" alt="Гнучке створення варіантів товару" />
          </div>
        </div>
      </div>
    </section>);

}

function Storefront() {
  return (
    <section className="section" id="storefront" style={{ paddingTop: 60 }}>
      <div className="container">
        <div className="split">
          <div className="split-text">
            <div className="eyebrow">Веб стофевронт</div>
            <h2>Готовий магазин у комплекті — мобільний та десктоп</h2>
            <p>Не маєте сайту? Multi Sale дає його з коробки. Каталог, кошик та оформлення замовлення — на вашому домені.</p>
            <ul>
              <li><span className="li-icon"><Icon name="check" size={14} /></span> Адаптивний дизайн з коробки</li>
              <li><span className="li-icon"><Icon name="check" size={14} /></span> Власний домен · SSL автоматично</li>
              <li><span className="li-icon"><Icon name="check" size={14} /></span> Той самий каталог, що в директі</li>
              <li><span className="li-icon"><Icon name="check" size={14} /></span> Оплата при отриманні або онлайн</li>
            </ul>
          </div>
          <div className="split-image">
            <img src="assets/product-storefront.png" alt="Веб стофевронт Multi Sale" />
          </div>
        </div>
      </div>
    </section>);

}

function Email() {
  return (
    <section className="section" style={{ paddingTop: 60 }}>
      <div className="container">
        <div className="split reverse">
          <div className="split-text">
            <div className="eyebrow">Email-сервіс</div>
            <h2>Розсилки та транзакційні листи — без сторонніх сервісів</h2>
            <p>Welcome-серії, акції, нагадування про кинуті кошики, листи про статус замовлення. Шаблони, кампанії та аналітика — все всередині.</p>
            <ul>
              <li><span className="li-icon"><Icon name="check" size={14} /></span> 100 000 листів на місяць у тарифі Pro</li>
              <li><span className="li-icon"><Icon name="check" size={14} /></span> Drag-and-drop редактор листів</li>
              <li><span className="li-icon"><Icon name="check" size={14} /></span> Open / click / bounce rate з коробки</li>
              <li><span className="li-icon"><Icon name="check" size={14} /></span> Автоматизації за подіями системи</li>
            </ul>
          </div>
          <div className="split-image">
            <img src="assets/product-email.png" alt="Email-сервіс Multi Sale" />
          </div>
        </div>
      </div>
    </section>);

}

function Roles() {
  return (
    <section className="section" style={{ paddingTop: 60 }}>
      <div className="container">
        <div className="split">
          <div className="split-text">
            <div className="eyebrow">Команда</div>
            <h2>Ролі та доступи, що масштабуються разом із вашою командою</h2>
            <p>Від соло-продавця до команди з 50 людей: готові пресети ролей або повний кастом — з гранулярними дозволами по кожному модулю.</p>
            <ul>
              <li><span className="li-icon"><Icon name="check" size={14} /></span> Делегуйте права</li>
              <li><span className="li-icon"><Icon name="check" size={14} /></span> Кастомні ролі</li>
            </ul>
          </div>
          <div className="split-image">
            <img src="assets/product-roles.png" alt="Ролі та доступи команди" />
          </div>
        </div>
      </div>
    </section>);

}

// —— Messenger integrations ————————————————————————
function MessengerIntegrations() {
  const channels = [
  {
    name: "Instagram",
    status: "Працює",
    live: true,
    bg: "linear-gradient(135deg, #f58529 0%, #dd2a7b 55%, #8134af 100%)",
    icon:
    <svg width="28" height="28" viewBox="0 0 24 24" fill="none" stroke="#fff" strokeWidth="1.9" strokeLinecap="round" strokeLinejoin="round">
          <rect x="3" y="3" width="18" height="18" rx="5" />
          <circle cx="12" cy="12" r="4" />
          <circle cx="17.5" cy="6.5" r="1.2" fill="#fff" stroke="none" />
        </svg>

  },
  {
    name: "Telegram",
    status: "Працює",
    live: true,
    bg: "linear-gradient(135deg, #2AABEE, #229ED9)",
    icon:
    <svg width="28" height="28" viewBox="0 0 24 24" fill="none" stroke="#fff" strokeWidth="1.9" strokeLinecap="round" strokeLinejoin="round">
          <path d="M22 4L2 11l6 3 2 6 4-4 6 4 2-16z" />
        </svg>

  },
  {
    name: "WhatsApp",
    status: "В розробці",
    live: false,
    bg: "linear-gradient(135deg, #25D366, #128C7E)",
    icon:
    <svg width="28" height="28" viewBox="0 0 24 24" fill="none" stroke="#fff" strokeWidth="1.9" strokeLinecap="round" strokeLinejoin="round">
          <path d="M21 11.5a8.5 8.5 0 0 1-12.7 7.4L3 20.5l1.6-5.2A8.5 8.5 0 1 1 21 11.5z" />
          <path d="M8.5 8.8c.2-.6.4-.6.7-.6h.5c.2 0 .4 0 .6.5l.7 1.6c.1.2 0 .4 0 .5l-.4.5c-.1.2-.2.3 0 .6.3.5.8 1.1 1.4 1.5.6.4.9.5 1.1.4l.5-.5c.2-.2.3-.1.5-.1l1.5.8c.2.1.3.2.4.3 0 .3 0 .9-.3 1.2-.3.4-1 .8-1.5.8-1.3.1-2.9-.8-4-1.9-1.1-1.1-2-2.7-1.9-4 0-.5.4-1.2.9-1.8z" fill="#fff" stroke="none" />
        </svg>

  },
  {
    name: "Viber",
    status: "В розробці",
    live: false,
    bg: "linear-gradient(135deg, #8f5db7, #665CAC)",
    icon:
    <svg width="28" height="28" viewBox="0 0 24 24" fill="none" stroke="#fff" strokeWidth="1.9" strokeLinecap="round" strokeLinejoin="round">
          <path d="M12 3c4.5 0 7 2.4 7 6.6 0 4.3-2.5 6.7-7 6.7-.6 0-1.1 0-1.6-.1l-3 2.3v-3.2C5.1 14.2 4 12.2 4 9.6 4 5.4 7.5 3 12 3z" />
          <path d="M9.3 7.8c.6 1.9 2 3.3 3.9 3.9" />
        </svg>

  },
  {
    name: "TikTok",
    status: "В розробці",
    live: false,
    bg: "linear-gradient(135deg, #25F4EE 0%, #000 45%, #FE2C55 100%)",
    icon:
    <svg width="28" height="28" viewBox="0 0 24 24" fill="#fff" stroke="none">
          <path d="M16.5 3c.3 1.9 1.4 3.4 3.5 3.7v2.6c-1.2.1-2.4-.2-3.5-.9v5.9c0 3.3-2.4 5.7-5.4 5.7-2.8 0-5.1-2.1-5.1-5 0-3 2.4-5.1 5.6-4.8v2.7c-.4-.1-.8-.2-1.2-.2-1.3 0-2.3 1-2.3 2.3 0 1.4 1 2.4 2.3 2.4 1.4 0 2.5-1.1 2.5-2.8V3h3.1z" />
        </svg>

  }];

  return (
    <section className="section msg-section" id="messengers" style={{ paddingTop: 60 }}>
      <div className="container">
        <div className="section-head">
          <div className="eyebrow">Канали</div>
          <h2 className="h-display size-l">Усі месенджери — в одній скриньці</h2>
          <p>Підключайте акаунти за хвилину й відповідайте клієнтам з усіх каналів, не перемикаючись між застосунками.</p>
        </div>
        <div className="msg-grid">
          {channels.map((c, i) =>
          <div className={"msg-card" + (c.live ? "" : " is-soon")} key={i}>
              <div className="msg-icon" style={{ background: c.bg }}>{c.icon}</div>
              <div className="msg-name">{c.name}</div>
              <div className={"msg-status" + (c.live ? " live" : " soon")}>
                <span className="dot"></span>{c.status}
              </div>
            </div>
          )}
        </div>
      </div>
    </section>);

}

// —— Integrations ——————————————————————————————————
function Integrations() {
  const items = [
  { name: "Instagram", icon: "insta", color: "linear-gradient(135deg,#f58529,#dd2a7b,#8134af)" },
  { name: "Telegram", icon: "telegram", color: "#229ED9" },
  { name: "Нова Пошта", icon: "truck", color: "#E11932" },
  { name: "Укрпошта", icon: "truck", color: "#FFD500" },
  { name: "Monobank", icon: "card", color: "#000" },
  { name: "Privat24", icon: "card", color: "#1f8a5b" },
  { name: "Viber", icon: "chat", color: "#7360F2" },
  { name: "WhatsApp", icon: "chat", color: "#25D366" },
  { name: "LiqPay", icon: "card", color: "#94BD3F" }];

  return (
    <section className="integrations">
      <div className="container">
        <div className="integrations-title">Працює з тим, чим ви вже користуєтесь</div>
        <div className="integration-row">
          {items.map((it, i) =>
          <div className="integration" key={i}>
              <span className="ico" style={{ background: it.color }}><Icon name={it.icon} size={12} /></span>
              {it.name}
            </div>
          )}
        </div>
      </div>
    </section>);

}

// —— Pricing ——————————————————————————————————————
function Pricing({ currency }) {
  const isUAH = currency === "UAH";
  const symbol = isUAH ? "₴" : "$";
  const prices = isUAH ?
  { starter: 690, starterOld: 990, pro: 1590, proOld: 2290 } :
  { starter: 18, starterOld: 26, pro: 42, proOld: 60 };

  const plans = [
  {
    name: "Starter",
    desc: "Для старту продажів в одному соціальному каналі.",
    price: prices.starter,
    oldPrice: prices.starterOld,
    discount: "−30% · перші 100",
    cta: "Спробувати безкоштовно",
    ctaPrimary: false,
    features: [
    { t: "1 соціальний канал", on: true, hint: "Instagram або TikTok" },
    { t: "1 приватний канал (Telegram)", on: true },
    { t: "Доставки", on: true },
    { t: "100 AI-дій на місяць", on: true },
    { t: "Вішлісти клієнтів (Product Interest)", on: false },
    { t: "Просунутий склад", on: false },
    { t: "Просунута аналітика", on: false }]

  },
  {
    name: "Pro",
    desc: "Для магазинів із кількома каналами та активною командою.",
    price: prices.pro,
    oldPrice: prices.proOld,
    discount: "−30% · перші 100",
    cta: "Спробувати безкоштовно",
    ctaPrimary: true,
    featured: true,
    tag: "Популярний",
    features: [
    { t: "До 5 соціальних каналів", on: true, hint: "Instagram, TikTok" },
    { t: "До 5 приватних каналів (Telegram)", on: true },
    { t: "Доставки", on: true },
    { t: "300 AI-дій на місяць", on: true },
    { t: "Вішлісти клієнтів (Product Interest)", on: true },
    { t: "Просунутий склад", on: true },
    { t: "Просунута аналітика", on: true }]

  },
  {
    name: "Enterprise",
    desc: "Для команд, яким потрібні індивідуальні ліміти та ранній доступ.",
    custom: true,
    cta: "Зв'язатися з нами",
    ctaPrimary: false,
    features: [
    { t: "Індивідуальна кількість каналів", on: true },
    { t: "Доставки", on: true },
    { t: "Індивідуальні ліміти AI-дій", on: true },
    { t: "Вішлісти клієнтів (Product Interest)", on: true },
    { t: "Просунутий склад та аналітика", on: true },
    { t: "Ранній доступ до нових функцій", on: true },
    { t: "Пріоритетне голосування за функції", on: true }]

  }];

  return (
    <section className="section" id="pricing">
      <div className="container">
        <div className="section-head">
          <div className="eyebrow">Тарифи</div>
          <h2 className="h-display size-l">Оберіть план під ваш бізнес</h2>
          <p>Ціна −<strong style={{color:'var(--text)'}}>30%</strong> діє для перших 100 магазинів, які підключаться — і закріплюється за вами назавжди. 14 днів безкоштовно, без прив'язки картки.</p>
        </div>
        <div className="plans plans-3">
          {plans.map((p, i) =>
          <div className={"plan" + (p.featured ? " is-featured" : "")} key={i}>
              {p.tag && <span className="plan-tag">{p.tag}</span>}
              <div style={{ paddingRight: p.tag ? 96 : 0 }}>
                <div className="plan-name">{p.name}</div>
                <div className="plan-desc">{p.desc}</div>
              </div>
              <div className="plan-price">
                {p.custom ?
              <span className="amount amount-custom">Індивідуально</span> :
              <>
                  {p.oldPrice &&
                <span className="amount-old">{symbol}{p.oldPrice.toLocaleString('uk-UA')}</span>
                }
                  <span className="amount">{symbol}{p.price.toLocaleString('uk-UA')}</span>
                  <span className="unit">/ міс</span>
                  {p.discount &&
                <span className="price-badge">{p.discount}</span>
                }
                </>
              }
              </div>
              <ul className="plan-features">
                {p.features.map((f, j) =>
              <li key={j} className={f.on ? "" : "muted"}>
                    <Icon name={f.on ? "check" : "plus"} size={14} />
                    <span>
                      {f.t}
                      {f.hint && <span className="feat-hint">{f.hint}</span>}
                    </span>
                  </li>
              )}
              </ul>
              <div className="plan-cta">
                <a href={p.ctaPrimary ? "https://app.multi-sale.com/register" : "https://app.multi-sale.com"} className={"btn " + (p.ctaPrimary ? "btn-primary" : "btn-ghost")}>{p.cta}</a>
              </div>
            </div>
          )}
        </div>

        <div className="risk-bar">
          <span className="risk-item"><Icon name="check" size={15} /> 14 днів безкоштовно, без картки</span>
          <span className="risk-item"><Icon name="check" size={15} /> Скасувати одним кліком</span>
          <span className="risk-item"><Icon name="check" size={15} /> Дані ваші — експорт у CSV будь-коли</span>
        </div>
      </div>
    </section>);

}

// —— FAQ ——————————————————————————————————————————
function FAQ() {
  const items = [
  { q: "Скільки часу займає підключення?", a: "Підключення займає лише кілька хвилин. Достатньо увійти через Facebook та обрати Instagram Business акаунт. Після цього ви можете одразу почати працювати з повідомленнями, товарами та замовленнями. Налаштування системи не вимагає технічного персоналу, наша дружня підтримка допоможе вам налаштувати систему під ваші потреби." },
  { q: "Як працює продукт референс постів?", a: "Коли клієнт надсилає вам пост зазвичай це частий кейс, наша система має так звані референси, які формуються вручну або після ШІ імпорту.  Система автоматично підкидує цей товар біля вікна чату, ви бачите залишки, розміри, та маєте можливість створити замовлення не покидаючи вікно чату." },
  { q: "Як працює ШІ імпорт товарів?", a: "Після підключення інстаграм наша система дозволяє вам швидко конвертувати ваші пости в товари. ШІ імпорт товарів аналізує фото та опис товару. Для ефективного імпорту вам потрібно налаштувати характеристики, які будуть використані для побудови варіантів. ШІ імпорт заповнює форму, ви можете перевірити його роботу та підкоректувати." },
  { q: "Чи можна скасувати у будь-який момент?", a: "Так. Підписка скасовується одним кліком, без бюрократії. Експорт всіх даних у CSV доступний завжди — навіть після скасування тарифу." },
  { q: "Скільки коштує перехід з іншої CRM?", a: "Ми допоможемо перенести ваші товари, клієнтів та замовлення — наша команда супроводжує міграцію, щоб ви почали працювати без простою. Напишіть нам, і ми підкажемо найпростіший шлях саме для вашого випадку." },
  { q: "Чому саме MultiSale?", a: "MultiSale — платформа, яка розроблялась орієнтованою на інстаграм продажі та все, що з тим пов'язано. Ви не побачите в системі зайвого функціоналу, який зазвичай містять багатофункціональні CRM." }];

  const [open, setOpen] = useState(0);
  return (
    <section className="section" id="faq">
      <div className="container">
        <div className="section-head">
          <div className="eyebrow">FAQ</div>
          <h2 className="h-display size-l">Часті запитання</h2>
        </div>
        <div className="faq">
          {items.map((it, i) =>
          <div className="faq-item" key={i} data-open={open === i}>
              <button className="faq-q" onClick={() => setOpen(open === i ? -1 : i)}>
                <span>{it.q}</span>
                <span className="chev"><Icon name="plus" size={14} /></span>
              </button>
              <div className="faq-a">{it.a}</div>
            </div>
          )}
        </div>
      </div>
    </section>);

}

// —— Final CTA + Footer ————————————————————————————
function CTA() {
  return (
    <section className="cta-banner">
      <div className="container">
        <div className="cta-card">
          <div className="eyebrow">Старт за 5 хвилин</div>
          <h2>Готові перестати губити замовлення в директі?</h2>
          <p>Підключіть Instagram, імпортуйте каталог та оформіть перше замовлення вже сьогодні. 21 днів безкоштовно, без картки.</p>
          <div className="hero-cta">
            <a href="https://app.multi-sale.com/register" className="btn btn-primary btn-lg">Спробувати безкоштовно <Icon name="arrow" size={16} /></a>
            <a href="https://app.multi-sale.com" className="btn btn-ghost btn-lg">Записатись на демо</a>
          </div>
        </div>
      </div>
    </section>);

}

function Footer() {
  return (
    <footer className="footer">
      <div className="container">
        <div className="footer-grid">
          <div className="footer-col">
            <div className="brand" style={{ marginBottom: 14 }}>
              <BrandMark size={34} />
              <span>Multi-Sale</span>
            </div>
            <p style={{ margin: 0, maxWidth: 280 }}>CRM для продажів через Instagram та Telegram. Зроблено в Україні.</p>
          </div>
          <div className="footer-col">
            <h4>Продукт</h4>
            <ul>
              <li><a href="#features">Можливості</a></li>
              <li><a href="#ai">AI-функції</a></li>
              <li><a href="#pricing">Тарифи</a></li>
            </ul>
          </div>
          <div className="footer-col">
            <h4>Компанія</h4>
            <ul>
              <li><a href="#">Про нас</a></li>
              <li><a href="#">Блог</a></li>
              <li><a href="#">Вакансії</a></li>
              <li><a href="contact.html">Контакти</a></li>
            </ul>
          </div>
          <div className="footer-col">
            <h4>Підтримка</h4>
            <ul>
              <li><a href="#">Документація</a></li>
              <li><a href="#">Статус сервісу</a></li>
              <li><a href="contact.html">ceo@multi-sale.com</a></li>
            </ul>
          </div>
        </div>
        <div className="footer-bottom">
          <div>© 2026 Фізична особа-підприємець Залуга Андрій Петрович</div>
          <div style={{ display: 'flex', gap: 18 }}>
            <a href="privacy.html">Privacy</a>
            <a href="privacy.html#deletion">Видалення даних</a>
            <a href="privacy.html">GDPR</a>
          </div>
        </div>
      </div>
    </footer>);

}

// —— App shell ————————————————————————————————————
const DEFAULTS = /*EDITMODE-BEGIN*/{
  "theme": "dark",
  "accent": "#7c5cff",
  "accent2": "#5b3df5",
  "currency": "UAH",
  "heroVariant": "default"
} /*EDITMODE-END*/;

function App() {
  const [t, setTweak] = useTweaks(DEFAULTS);

  // Apply theme + accent colors
  useEffect(() => {
    const root = document.documentElement;
    root.setAttribute('data-theme', t.theme);
    root.style.setProperty('--accent', t.accent);
    root.style.setProperty('--accent-2', t.accent2);
    const hex = t.accent.replace('#', '');
    const r = parseInt(hex.slice(0, 2), 16);
    const g = parseInt(hex.slice(2, 4), 16);
    const b = parseInt(hex.slice(4, 6), 16);
    const softA = t.theme === 'light' ? 0.10 : 0.12;
    const ringA = t.theme === 'light' ? 0.25 : 0.35;
    root.style.setProperty('--accent-soft', `rgba(${r}, ${g}, ${b}, ${softA})`);
    root.style.setProperty('--accent-ring', `rgba(${r}, ${g}, ${b}, ${ringA})`);
  }, [t.theme, t.accent, t.accent2]);

  const accentPalettes = [
  ['#7c5cff', '#5b3df5'],
  ['#22c55e', '#16a34a'],
  ['#f97316', '#ea580c'],
  ['#ec4899', '#db2777'],
  ['#06b6d4', '#0891b2']];


  return (
    <>
      <Nav theme={t.theme} onToggleTheme={() => setTweak({ theme: t.theme === 'dark' ? 'light' : 'dark' })} />
      <Hero heroVariant={t.heroVariant} />
      <Metrics />
      <ScrollTeaser />
      <CreateProducts />
      <AIImport />
      <AIReference />
      <OrderFromChat />
      <Wishlist />
      <OrderManagement />
            <Roles />
      <Pricing currency={t.currency} />
      <FAQ />
      <CTA />
      <Footer />

      <TweaksPanel title="Tweaks">
        <TweakSection label="Брендинг">
          <TweakRadio
            label="Тема"
            value={t.theme}
            options={[
            { label: 'Темна', value: 'dark' },
            { label: 'Світла', value: 'light' }]
            }
            onChange={(v) => setTweak({ theme: v })} />
          
          <TweakColor
            label="Акцент"
            value={t.accent}
            options={accentPalettes.map((p) => p[0])}
            onChange={(v) => {
              const palette = accentPalettes.find((p) => p[0] === v) || accentPalettes[0];
              setTweak({ accent: palette[0], accent2: palette[1] });
            }} />
          
        </TweakSection>
        <TweakSection label="Контент">
          <TweakRadio
            label="Валюта в тарифах"
            value={t.currency}
            options={[
            { label: '₴ UAH', value: 'UAH' },
            { label: '$ USD', value: 'USD' }]
            }
            onChange={(v) => setTweak({ currency: v })} />
          
          <TweakSelect
            label="Заголовок hero"
            value={t.heroVariant}
            options={[
            { label: 'Перетворіть свій Instagram (default)', value: 'default' },
            { label: 'Ваш Instagram уже продає (bold)', value: 'bold' },
            { label: 'Системні продажі (calm)', value: 'calm' }]
            }
            onChange={(v) => setTweak({ heroVariant: v })} />
          
        </TweakSection>
      </TweaksPanel>
    </>);

}

const root = ReactDOM.createRoot(document.getElementById('root'));
root.render(<App />);