'use client';

import { useRef } from 'react';
import { useRouter } from 'next/navigation';
import {
  ArrowLeft,
  FileDown,
  Printer,
  Table2,
  MapPin,
  Phone,
  Globe,
  Building2,
  Users,
  Dumbbell,
  Star,
  TrendingUp,
  Zap,
  Heart,
  Sparkles,
  Activity,
  Target,
  Award,
  CircleDollarSign,
} from 'lucide-react';
import { cn } from '@/lib/cn';

const LAST_UPDATE = '26 февраля 2026';

/* ─────────────── DATA ─────────────── */

interface Studio {
  name: string;
  website: string;
  specialization: string;
  description: string;
  address: string;
  phone: string;
  socials: string[];
  workHours: string;
  services: string[];
  trialPrice: string;
  subscriptionPrices: string[];
  legalEntity: string;
  inn: string;
  ogrn: string;
  yearsOnMarket: string;
  scale: string;
  franchise: string;
  strengths: string[];
  icon:
    | 'heart'
    | 'star'
    | 'dumbbell'
    | 'sparkles'
    | 'activity'
    | 'target'
    | 'zap'
    | 'award'
    | 'users'
    | 'trending'
    | 'building';
}

const studios: Studio[] = [
  {
    name: 'THE FLEX',
    website: 'ekb.theflex.ru',
    specialization: 'Женский фитнес нового уровня',
    description:
      'Сеть женских фитнес-студий с мягким подходом: растяжка, воздушная гимнастика, функциональные тренировки. Позиционирование — "тренировки без давления и устаревших стандартов".',
    address: 'ТЦ Антей, ул. Малышева, 53, Екатеринбург',
    phone: '+7 (800) 505-16-18',
    socials: ['VK: @theflex_you', 'Telegram: @theflex_you'],
    workHours: 'Ежедневно 08:00–22:00',
    services: [
      'Stretching — осанка, похудение, гибкость',
      'SkyFlex — растяжка на полотнах + воздушная гимнастика',
      'Power Strike — кикбоксинг, капоэйра, нейрофитнес',
      'TRX Functional — функциональные петли',
      'Flex Yoga — баланс и медитация',
      'Barre — балетный танец + МФР-роллы',
    ],
    trialPrice: 'По запросу',
    subscriptionPrices: ['Скидки до 40% на карты (акции)', 'Все направления в одном абонементе'],
    legalEntity: 'ООО «ФЛЕКС ИРКУТСК» (головная)',
    inn: '3811462650',
    ogrn: '1193850015721',
    yearsOnMarket: '5+ лет',
    scale: 'Сеть в нескольких городах РФ',
    franchise: 'Да, от 12 000 000 ₽',
    strengths: [
      'Федеральная сеть с франшизой',
      'Уникальное позиционирование — женский фитнес без давления',
      '6 разнообразных направлений',
      'Современный маркетинг и брендинг',
    ],
    icon: 'heart',
  },
  {
    name: 'Base (Фитнес-мастерская)',
    website: 'basefitnes.ru',
    specialization: 'Женская фитнес-студия с индивидуальным подходом',
    description:
      'Камерное пространство для женского фитнеса в центре города. Оплата только за услуги тренера — без обязательной клубной карты.',
    address: 'ул. Белинского, 12, Екатеринбург',
    phone: '+7 (982) 705-40-02',
    socials: ['VK', 'Instagram: @basefitnes'],
    workHours: 'Утро, день, вечер',
    services: [
      'Персональные тренировки',
      'Групповые занятия',
      'Аэробика, йога, пилатес',
      'Стретчинг',
      'Фитнес-бар, массаж, сауна, солярий',
    ],
    trialPrice: '990 ₽ (+ скидка 15% на абонемент)',
    subscriptionPrices: [
      '2 занятия с тренером: 1 590 ₽',
      'Абонементы от 4 000 ₽/мес',
      'Годовой абонемент от 62 700 ₽',
    ],
    legalEntity: 'Не определено',
    inn: 'Не найден',
    ogrn: 'Не найден',
    yearsOnMarket: '6+ лет',
    scale: '1 студия',
    franchise: 'Нет',
    strengths: [
      'Без обязательной клубной карты — оплата за услуги',
      'Индивидуальный подход',
      'Широкий набор допуслуг (массаж, сауна, бар)',
      '6+ лет стабильной работы',
    ],
    icon: 'star',
  },
  {
    name: 'Victoria Fitness',
    website: 'victoriyafitness.ru',
    specialization: 'Уютная фитнес-студия в спальном районе',
    description:
      'Небольшая уютная студия в Академическом/Широкой речке. Фокус на камерную атмосферу и удобство жителей района.',
    address: 'ул. Суходольская, 197, 1 этаж, Екатеринбург',
    phone: '8 (912) 669-77-70',
    socials: [
      'Telegram: @VICTORIYA_FITNESSS',
      'VK: vk.com/victoriya_fit2018',
      'WhatsApp: +7 912 699-7770',
    ],
    workHours: 'Пн-Пт: 8:00–22:00, Сб: 10:00–15:00, Вс: 10:00–20:00',
    services: ['Групповые занятия', 'Пробные тренировки', 'Различные направления фитнеса'],
    trialPrice: 'По запросу',
    subscriptionPrices: ['Абонементы — по запросу'],
    legalEntity: 'Не определено',
    inn: 'Не найден',
    ogrn: 'Не найден',
    yearsOnMarket: '8+ лет (с 2018)',
    scale: '1 студия',
    franchise: 'Нет',
    strengths: [
      'Расположение в спальном районе — низкая конкуренция',
      'Камерная уютная атмосфера',
      'Длительный режим работы',
    ],
    icon: 'sparkles',
  },
  {
    name: 'Pilates RCC',
    website: 'rcc-pilates.ru',
    specialization: 'Первая бутиковая студия пилатеса в Екатеринбурге',
    description:
      'Премиальная студия пилатеса на оборудовании BASI (США). Акцент на качество оборудования и квалификацию тренеров. Нишевая студия в ЖК бизнес-класса.',
    address: 'Олимпийская набережная, 5, ЖК Макаровский, Екатеринбург',
    phone: '+7 (982) 694-74-84',
    socials: ['Email: info@rcc-pilates.ru', 'Telegram: @rcc_pilates'],
    workHours: 'Ежедневно 07:00–21:00',
    services: [
      'Индивидуальные тренировки на реформерах',
      'Сплит-тренировки (вдвоём)',
      'Пилатес для беременных',
      'Пилатес для детей (8–14 лет)',
      'RSL-скульптурирование (аппаратная эстетика)',
      'Массаж',
    ],
    trialPrice: 'По запросу',
    subscriptionPrices: ['Индивидуальные тренировки — премиум-сегмент'],
    legalEntity: 'Не определено',
    inn: 'Не найден',
    ogrn: 'Не найден',
    yearsOnMarket: '3 года (с 2023)',
    scale: '1 студия',
    franchise: 'Нет',
    strengths: [
      'Единственная бутиковая студия пилатеса в городе',
      '15+ тренажёров BASI (США), включая Кадиллак',
      '11 сертифицированных тренеров BASI Pilates Academy',
      'Премиальная локация в ЖК бизнес-класса',
      'Уникальная ниша — пилатес для беременных и детей',
    ],
    icon: 'activity',
  },
  {
    name: 'ЛЕТАЙ',
    website: 'letay.tb.ru',
    specialization: 'Сеть женских фитнес-студий',
    description:
      'Крупнейшая сеть женских фитнес-студий в регионе. 23 филиала в 6 городах, 50+ тренеров. Фокус на мини-группы до 6–10 человек с индивидуальным подходом.',
    address: 'Множество филиалов (23 студии в 6 городах)',
    phone: 'Через сайт',
    socials: ['Сайт: letay.tb.ru'],
    workHours: 'Различается по филиалам',
    services: [
      'Тренажёрный зал с тренером — мини-группы до 6 чел. (55–70 мин)',
      'Счастливая спина — стретчинг + пилатес + МФР (6–10 чел.)',
      'Жиросжигание — динамичные тренировки на все группы мышц',
      'Персональные тренировки',
      'Сплит-занятия (тренер + 2 клиентки)',
    ],
    trialPrice: '499 ₽',
    subscriptionPrices: ['Специальные цены для новых клиентов', 'Абонементы — по запросу'],
    legalEntity: 'ИП Малых Александр Александрович',
    inn: '665208779044',
    ogrn: '319665800082039',
    yearsOnMarket: '8+ лет',
    scale: '23 филиала, 6 городов, 50+ тренеров, 10 000 визитов/мес',
    franchise: 'Возможна (сеть)',
    strengths: [
      'Крупнейшая сеть в регионе — 23 филиала',
      'Масштаб: 50+ тренеров, 10 000 визитов/мес',
      'Самая низкая цена пробного занятия — 499 ₽',
      'Мини-группы — индивидуальный подход',
      '8+ лет на рынке — стабильный бизнес',
    ],
    icon: 'trending',
  },
  {
    name: 'THE TOP (Зе Топ)',
    website: 'thetop-ekb.ru',
    specialization: 'Студия мягкого фитнеса и растяжки',
    description:
      'Студия с широким спектром "мягких" направлений: растяжка в гамаках, школа шпагата, пилатес, танцы. Предлагает франшизу с заявленной прибылью от 300 000 ₽/мес.',
    address: 'БЦ Нахимов, ул. Вайнера 9а/1, 6 этаж, Екатеринбург',
    phone: '+7 (999) 569-55-56',
    socials: ['Telegram: +79995695556', 'VK: @thetopekb'],
    workHours: 'Ежедневно',
    services: [
      'Растяжка в гамаках',
      'Школа шпагата',
      'Гибкое тело / Гибкость и здоровая спина',
      'МФР + растяжка',
      'Пилатес',
      'Силовая тренировка с петлями',
      'Красивые ягодицы + пресс',
      'Рельефное тело',
      'Женское здоровье',
      'Танцевальные направления',
    ],
    trialPrice: '700 ₽ (групповое), 2 500 ₽ (персональное)',
    subscriptionPrices: [
      'Пробная неделя безлимит: 3 500 ₽',
      '3 пробных групповых: 1 590 ₽',
      'Полный день: от 5 600 ₽/мес',
      'Утро (до 16:00): от 3 900 ₽/мес',
      'Корпоративный фитнес: скидка 15–20%',
    ],
    legalEntity: 'ИП (физлицо)',
    inn: '262515664377',
    ogrn: '324665800046424',
    yearsOnMarket: '2+ года',
    scale: '1 студия + франшиза',
    franchise: 'Да, прибыль от 300 000 ₽/мес',
    strengths: [
      'Самый широкий выбор направлений — 12+ видов',
      'Прозрачное ценообразование на сайте',
      'Корпоративный фитнес со скидками',
      'Мобильное приложение для записи',
      'Франшиза с заявленной прибыльностью',
    ],
    icon: 'target',
  },
  {
    name: 'BodyFit',
    website: 'bodyfit-ekb.ru',
    specialization: 'Сеть EMS-фитнес студий',
    description:
      'Специализация на EMS-тренировках (электромиостимуляция) — 20-минутные тренировки, задействующие 90% мышц одновременно. Дополнительно: нутрициология, массаж, обертывание.',
    address: 'ул. Московская, 77, Екатеринбург',
    phone: '+7 (343) 363-04-06, +7 (922) 020-66-00',
    socials: ['VK: vk.com/bodyfit__ekb', 'Telegram: @bodyfit_ekb', 'WhatsApp: +79220206600'],
    workHours: 'По расписанию',
    services: [
      'EMS-тренировки (20 мин)',
      'Стретчинг',
      'BodyFit Kids (дети 6–16 лет)',
      'Диетолог-нутрициолог',
      'Солярий/Коллагенарий',
      'Ручной массаж (тело и лицо)',
      'Обёртывание',
    ],
    trialPrice: '1 500 ₽ (+ 500 бонусов)',
    subscriptionPrices: [
      'Пакеты: 8 / 10 / 15 / 25 тренировок',
      'Семейный абонемент (1+1)',
      'Цены — по запросу',
    ],
    legalEntity: 'ИП Циперсон Е.З.',
    inn: '666000282544',
    ogrn: '304667435000154',
    yearsOnMarket: '10+ лет',
    scale: 'Сеть EMS-студий',
    franchise: 'Нет',
    strengths: [
      'Уникальная ниша — EMS-фитнес',
      'Тренировка всего 20 минут — удобно для занятых',
      'Широкий набор допуслуг (нутрициолог, массаж)',
      'Детские тренировки (6–16 лет)',
      '10+ лет на рынке',
    ],
    icon: 'zap',
  },
  {
    name: 'Gibko Studio',
    website: 'vk.com/gibko.studio',
    specialization: 'Студия растяжки и фитнеса',
    description:
      'Студия растяжки и фитнеса с комфортной средой. Более 10 направлений в одном абонементе, квалифицированные тренеры, комфортные раздевалки с душевыми, детская зона.',
    address: 'Екатеринбург (точный адрес — в VK)',
    phone: 'Через VK и мобильное приложение',
    socials: ['VK: vk.com/gibko.studio', 'Instagram: @gibko.studio'],
    workHours: 'По расписанию',
    services: [
      'Растяжка',
      'Фитнес (10+ направлений)',
      'Детская зона',
      'Комфортные раздевалки с душевыми',
    ],
    trialPrice: 'По запросу',
    subscriptionPrices: ['Все направления в одном абонементе'],
    legalEntity: 'Не определено',
    inn: 'Не найден',
    ogrn: 'Не найден',
    yearsOnMarket: 'Не определено',
    scale: '1 студия',
    franchise: 'Нет',
    strengths: [
      'Наличие детской зоны',
      'Мобильное приложение (Google Play)',
      '10+ направлений в одном абонементе',
    ],
    icon: 'users',
  },
  {
    name: 'Графит',
    website: 'studio-grafit.ru',
    specialization: 'Студия осознанного подхода',
    description:
      'Камерная студия с группами до 8 человек. Акцент на осознанный подход к тренировкам. 15+ направлений: йога, функциональные тренировки, танцы, силовой тренинг.',
    address: 'ул. Татищева, 96, Верх-Исетский район, Екатеринбург',
    phone: '+7 (912) 294-40-26',
    socials: ['WhatsApp: +79653012666'],
    workHours: 'Пн-Пт: 8:00–22:00, Сб-Вс: 10:00–16:00',
    services: [
      'Йога (Hatha, Fly yoga в гамаках)',
      'Mind-Body (MFR+flex, Light fitness, Stretching, Healthy back)',
      'Functional Training (TRX, Circle training)',
      'Power Pump (силовой со штангой)',
      'Zumba (танцы)',
      'Персональные тренировки',
      'Массаж (ручной и аппаратный RSL)',
      'Консультации (эфирные масла, дизайн человека)',
    ],
    trialPrice: '450 ₽ (50% скидка) + 10% при онлайн-заявке',
    subscriptionPrices: [
      'Программа лояльности с бонусными рублями',
      'Цены на абонементы — по запросу',
    ],
    legalEntity: 'ИП (физлицо)',
    inn: '667111953493',
    ogrn: 'Не найден',
    yearsOnMarket: 'Не определено',
    scale: '1 студия',
    franchise: 'Нет',
    strengths: [
      'Мини-группы до 8 человек — максимум внимания',
      '15+ направлений — самый широкий микс',
      'Самое дешёвое пробное — 450 ₽',
      'Мобильное приложение для записи',
      'Необычные допуслуги (дизайн человека, эфирные масла)',
    ],
    icon: 'award',
  },
  {
    name: 'Flex & Energy',
    website: 'flex-energy.ru',
    specialization: 'Сеть студий растяжки для женщин',
    description:
      'Сеть женских студий, специализирующихся на растяжке и гибкости. 50+ занятий в неделю, 20 направлений в одном абонементе, мини-группы до 10 человек.',
    address: 'пр. Академика Сахарова, 73, Екатеринбург (+ другие)',
    phone: 'WhatsApp: +7 (982) 764-27-97',
    socials: ['VK: @flex__energy', 'Telegram: @flex_energy'],
    workHours: 'Ежедневно 9:00–22:00',
    services: [
      '20 направлений растяжки и фитнеса',
      '50+ занятий в неделю',
      'Мини-группы до 10 человек',
      'Пробные занятия',
      'Марафон стройности (Challenge)',
    ],
    trialPrice: '500 ₽',
    subscriptionPrices: [
      'Разовое: 1 200 ₽',
      '20 направлений в одном абонементе',
      'Цены на абонементы — по запросу',
    ],
    legalEntity: 'Не определено',
    inn: 'Не найден',
    ogrn: 'Не найден',
    yearsOnMarket: 'Не определено',
    scale: 'Сеть (несколько точек)',
    franchise: 'Да (франшиза доступна)',
    strengths: [
      '50+ занятий в неделю — высокая плотность расписания',
      '20 направлений в одном абонементе',
      'Франшиза — масштабируемая модель',
      'Мобильное приложение',
      'Ежедневный режим 9:00–22:00',
    ],
    icon: 'dumbbell',
  },
  {
    name: 'Stretch House',
    website: 'stretchhouseekb.ru',
    specialization: 'Сеть студий стретчинга',
    description:
      'Крупнейшая сеть студий растяжки в Екатеринбурге — 6 филиалов. Агрессивный маркетинг: пробное занятие за 149 ₽. Развивается через франшизу.',
    address:
      '6 филиалов: Степана Разина 95, Рябинина 31, Мамина-Сибиряка 51, Бабушкина 45, Крауля 44, Малышева 7',
    phone: '+7 (919) 373-02-62',
    socials: ['Сайт: stretchhouseekb.ru'],
    workHours: 'По филиалам',
    services: [
      'Стретчинг (основное направление)',
      'Аэробика',
      'Йога, пилатес',
      'Танцевальные программы',
      'TRX',
      'Подарочные сертификаты',
    ],
    trialPrice: '149 ₽ (самое дешёвое на рынке)',
    subscriptionPrices: ['Абонементы — по запросу', 'Подарочные сертификаты'],
    legalEntity: 'ИП Измайлов Никита Владимирович',
    inn: '745243246602',
    ogrn: '323390000000191',
    yearsOnMarket: '3+ года',
    scale: '6 филиалов в Екатеринбурге',
    franchise: 'Да (shfranchise.ru)',
    strengths: [
      'Самое дешёвое пробное занятие — 149 ₽',
      '6 филиалов — лучшее покрытие по городу',
      'Мобильное приложение',
      'Франшиза — масштабирование',
      'Агрессивный маркетинг — быстрый набор клиентов',
    ],
    icon: 'building',
  },
];

/* ─────────────── ICONS ─────────────── */

const iconMap = {
  heart: Heart,
  star: Star,
  dumbbell: Dumbbell,
  sparkles: Sparkles,
  activity: Activity,
  target: Target,
  zap: Zap,
  award: Award,
  users: Users,
  trending: TrendingUp,
  building: Building2,
} as const;

/* ─────────────── HELPERS ─────────────── */

function exportTableToClipboard() {
  const table = document.querySelector('#comparison-table');
  if (!table) return;
  const range = document.createRange();
  range.selectNode(table);
  window.getSelection()?.removeAllRanges();
  window.getSelection()?.addRange(range);
  document.execCommand('copy');
  window.getSelection()?.removeAllRanges();
  alert('Таблица скопирована в буфер обмена');
}

/* ─────────────── PAGE ─────────────── */

export default function FitnessStudiosComparisonPage() {
  const router = useRouter();
  const contentRef = useRef<HTMLDivElement>(null);

  const handleDownloadPdf = async () => {
    const el = contentRef.current;
    if (!el) return;
    const html2canvas = (await import('html2canvas-pro')).default;
    const { jsPDF } = await import('jspdf');
    const canvas = await html2canvas(el, { scale: 2, useCORS: true });
    const imgData = canvas.toDataURL('image/png');
    const pdf = new jsPDF('l', 'mm', 'a3');
    const pdfW = pdf.internal.pageSize.getWidth();
    const pdfH = pdf.internal.pageSize.getHeight();
    const imgW = pdfW - 16;
    const imgH = (canvas.height * imgW) / canvas.width;
    let y = 8;
    let page = 0;
    while (y < imgH + 8) {
      if (page > 0) pdf.addPage();
      pdf.addImage(imgData, 'PNG', 8, 8 - y + 8 * (page === 0 ? 0 : 1), imgW, imgH);
      y += pdfH - 16;
      page++;
    }
    pdf.save('fitness-studios-comparison.pdf');
  };

  const studiosWithFranchise = studios.filter((s) => s.franchise !== 'Нет');
  const studiosWithInn = studios.filter((s) => s.inn !== 'Не найден');
  const networksCount = studios.filter(
    (s) => s.scale.includes('Сеть') || s.scale.includes('филиал'),
  ).length;

  return (
    <div>
      {/* Back */}
      <button
        onClick={() => router.push('/documents')}
        className="flex items-center gap-2 text-sm text-muted hover:text-gray-900 mb-6 transition-colors print:hidden"
      >
        <ArrowLeft className="h-4 w-4" />
        Все документы
      </button>

      <div ref={contentRef}>
        {/* Header */}
        <div className="bg-card rounded-xl shadow-sm border border-border mb-6">
          <div className="px-6 py-5 border-b border-border flex items-center justify-between">
            <div>
              <h1 className="text-xl font-bold text-gray-900">
                Сравнительный анализ фитнес-студий Екатеринбурга
              </h1>
              <p className="text-sm text-muted mt-1">
                11 студий: специализация, ценообразование, юридические данные, масштаб бизнеса
              </p>
              <p className="text-xs text-muted mt-2">Обновлено: {LAST_UPDATE}</p>
            </div>
            <div className="flex gap-2 print:hidden">
              <button
                onClick={() => void handleDownloadPdf()}
                className="flex items-center gap-2 border border-border bg-card text-gray-700 px-4 py-2 rounded-xl text-sm font-medium hover:bg-background transition-colors"
              >
                <FileDown className="h-4 w-4" />
                PDF
              </button>
              <button
                onClick={exportTableToClipboard}
                className="flex items-center gap-2 border border-border bg-card text-gray-700 px-4 py-2 rounded-xl text-sm font-medium hover:bg-background transition-colors"
              >
                <Table2 className="h-4 w-4" />
                Копировать таблицу
              </button>
              <button
                onClick={() => window.print()}
                className="flex items-center gap-2 border border-border bg-card text-gray-700 px-4 py-2 rounded-xl text-sm font-medium hover:bg-background transition-colors"
              >
                <Printer className="h-4 w-4" />
                Печать
              </button>
            </div>
          </div>

          {/* Summary stats */}
          <div className="grid grid-cols-2 md:grid-cols-4 gap-4 px-6 py-5">
            <div className="text-center">
              <div className="text-2xl font-bold text-gray-900">{studios.length}</div>
              <div className="text-xs text-muted">Студий проанализировано</div>
            </div>
            <div className="text-center">
              <div className="text-2xl font-bold text-gray-900">{studiosWithFranchise.length}</div>
              <div className="text-xs text-muted">С франшизой</div>
            </div>
            <div className="text-center">
              <div className="text-2xl font-bold text-gray-900">{networksCount}</div>
              <div className="text-xs text-muted">Сети / мульти-точки</div>
            </div>
            <div className="text-center">
              <div className="text-2xl font-bold text-gray-900">{studiosWithInn.length}</div>
              <div className="text-xs text-muted">ИНН найден</div>
            </div>
          </div>
        </div>

        {/* Individual Studio Cards */}
        <div className="space-y-4 mb-6">
          {studios.map((studio, idx) => {
            const Icon = iconMap[studio.icon];
            return (
              <div
                key={idx}
                className="bg-card rounded-xl shadow-sm border border-border overflow-hidden"
              >
                <div className="px-6 py-4 border-b border-border bg-gray-50 flex items-center gap-3">
                  <div className="w-10 h-10 rounded-lg bg-primary/10 flex items-center justify-center flex-shrink-0">
                    <Icon className="h-5 w-5 text-primary" />
                  </div>
                  <div className="flex-1 min-w-0">
                    <div className="flex items-center gap-2">
                      <h2 className="text-lg font-bold text-gray-900">{studio.name}</h2>
                      <span className="text-xs px-2 py-0.5 bg-primary/10 text-primary rounded-full">
                        #{idx + 1}
                      </span>
                    </div>
                    <p className="text-sm text-muted">{studio.specialization}</p>
                  </div>
                  <a
                    href={`https://${studio.website}`}
                    target="_blank"
                    rel="noopener noreferrer"
                    className="flex items-center gap-1 text-xs text-primary hover:underline print:hidden"
                  >
                    <Globe className="h-3 w-3" />
                    {studio.website}
                  </a>
                </div>

                <div className="p-6">
                  <p className="text-sm text-gray-700 mb-4">{studio.description}</p>

                  <div className="grid grid-cols-1 md:grid-cols-3 gap-6">
                    {/* Col 1: Contact & Location */}
                    <div className="space-y-3">
                      <h3 className="text-xs font-semibold text-muted uppercase tracking-wider">
                        Контакты и локация
                      </h3>
                      <div className="space-y-2 text-sm">
                        <div className="flex items-start gap-2">
                          <MapPin className="h-4 w-4 text-muted mt-0.5 flex-shrink-0" />
                          <span className="text-gray-700">{studio.address}</span>
                        </div>
                        <div className="flex items-start gap-2">
                          <Phone className="h-4 w-4 text-muted mt-0.5 flex-shrink-0" />
                          <span className="text-gray-700">{studio.phone}</span>
                        </div>
                        <div className="text-xs text-muted">{studio.workHours}</div>
                        {studio.socials.map((s, i) => (
                          <div key={i} className="text-xs text-muted pl-6">
                            {s}
                          </div>
                        ))}
                      </div>
                    </div>

                    {/* Col 2: Services & Pricing */}
                    <div className="space-y-3">
                      <h3 className="text-xs font-semibold text-muted uppercase tracking-wider">
                        Услуги и цены
                      </h3>
                      <div className="space-y-1">
                        {studio.services.map((svc, i) => (
                          <div key={i} className="text-sm text-gray-700 flex items-start gap-1">
                            <span className="text-primary mt-0.5">*</span>
                            {svc}
                          </div>
                        ))}
                      </div>
                      <div className="mt-3 pt-3 border-t border-border">
                        <div className="text-sm">
                          <span className="font-medium text-gray-900">Пробное:</span>{' '}
                          <span className="text-primary font-semibold">{studio.trialPrice}</span>
                        </div>
                        {studio.subscriptionPrices.map((p, i) => (
                          <div key={i} className="text-xs text-muted mt-1">
                            {p}
                          </div>
                        ))}
                      </div>
                    </div>

                    {/* Col 3: Legal & Business */}
                    <div className="space-y-3">
                      <h3 className="text-xs font-semibold text-muted uppercase tracking-wider">
                        Юридические данные и бизнес
                      </h3>
                      <div className="space-y-2 text-sm">
                        <div className="flex items-start gap-2">
                          <Building2 className="h-4 w-4 text-muted mt-0.5 flex-shrink-0" />
                          <div>
                            <div className="text-gray-700">{studio.legalEntity}</div>
                            <div className="text-xs text-muted">
                              ИНН: {studio.inn} | ОГРН: {studio.ogrn}
                            </div>
                          </div>
                        </div>
                        <div className="flex items-start gap-2">
                          <TrendingUp className="h-4 w-4 text-muted mt-0.5 flex-shrink-0" />
                          <div>
                            <div className="text-gray-700">{studio.scale}</div>
                            <div className="text-xs text-muted">
                              На рынке: {studio.yearsOnMarket}
                            </div>
                          </div>
                        </div>
                        <div className="flex items-start gap-2">
                          <CircleDollarSign className="h-4 w-4 text-muted mt-0.5 flex-shrink-0" />
                          <div className="text-gray-700">Франшиза: {studio.franchise}</div>
                        </div>
                      </div>

                      <div className="mt-3 pt-3 border-t border-border">
                        <h4 className="text-xs font-medium text-gray-500 mb-2">Сильные стороны:</h4>
                        {studio.strengths.map((str, i) => (
                          <div
                            key={i}
                            className="text-xs text-gray-600 flex items-start gap-1 mb-1"
                          >
                            <span className="text-green-600">+</span>
                            {str}
                          </div>
                        ))}
                      </div>
                    </div>
                  </div>
                </div>
              </div>
            );
          })}
        </div>

        {/* Comparison Table */}
        <div className="bg-card rounded-xl shadow-sm border border-border overflow-hidden mb-6">
          <div className="px-6 py-4 border-b border-border">
            <h2 className="text-lg font-bold text-gray-900">Сводная таблица сравнения</h2>
          </div>
          <div className="overflow-x-auto">
            <table id="comparison-table" className="w-full text-sm">
              <thead>
                <tr className="bg-gray-50 border-b border-border">
                  <th className="px-4 py-3 text-left text-xs font-medium text-muted">#</th>
                  <th className="px-4 py-3 text-left text-xs font-medium text-muted">Студия</th>
                  <th className="px-4 py-3 text-left text-xs font-medium text-muted">
                    Специализация
                  </th>
                  <th className="px-4 py-3 text-left text-xs font-medium text-muted">Пробное</th>
                  <th className="px-4 py-3 text-left text-xs font-medium text-muted">Масштаб</th>
                  <th className="px-4 py-3 text-left text-xs font-medium text-muted">ИНН</th>
                  <th className="px-4 py-3 text-left text-xs font-medium text-muted">Франшиза</th>
                  <th className="px-4 py-3 text-left text-xs font-medium text-muted">На рынке</th>
                </tr>
              </thead>
              <tbody>
                {studios.map((s, idx) => (
                  <tr
                    key={idx}
                    className={cn(
                      'border-b border-border hover:bg-gray-50 transition-colors',
                      idx % 2 === 0 ? 'bg-white' : 'bg-gray-50/50',
                    )}
                  >
                    <td className="px-4 py-3 text-xs text-muted">{idx + 1}</td>
                    <td className="px-4 py-3 font-medium text-gray-900">{s.name}</td>
                    <td className="px-4 py-3 text-gray-700 max-w-[200px]">{s.specialization}</td>
                    <td className="px-4 py-3">
                      <span
                        className={cn(
                          'text-xs font-medium px-2 py-1 rounded-full',
                          s.trialPrice.includes('По запросу')
                            ? 'bg-gray-100 text-gray-500'
                            : 'bg-green-50 text-green-700',
                        )}
                      >
                        {s.trialPrice}
                      </span>
                    </td>
                    <td className="px-4 py-3 text-xs text-gray-700">{s.scale}</td>
                    <td className="px-4 py-3">
                      <span
                        className={cn(
                          'text-xs',
                          s.inn === 'Не найден' ? 'text-gray-400' : 'text-gray-700 font-mono',
                        )}
                      >
                        {s.inn}
                      </span>
                    </td>
                    <td className="px-4 py-3">
                      <span
                        className={cn(
                          'text-xs px-2 py-0.5 rounded-full',
                          s.franchise === 'Нет'
                            ? 'bg-gray-100 text-gray-500'
                            : 'bg-blue-50 text-blue-700',
                        )}
                      >
                        {s.franchise === 'Нет' ? 'Нет' : 'Да'}
                      </span>
                    </td>
                    <td className="px-4 py-3 text-xs text-gray-700">{s.yearsOnMarket}</td>
                  </tr>
                ))}
              </tbody>
            </table>
          </div>
        </div>

        {/* Key Insights */}
        <div className="bg-card rounded-xl shadow-sm border border-border overflow-hidden mb-6">
          <div className="px-6 py-4 border-b border-border">
            <h2 className="text-lg font-bold text-gray-900">Ключевые выводы</h2>
          </div>
          <div className="p-6 space-y-4">
            <div className="grid grid-cols-1 md:grid-cols-2 gap-4">
              <div className="border border-border rounded-lg p-4">
                <h3 className="text-sm font-semibold text-gray-900 mb-2">Рыночные тренды</h3>
                <ul className="space-y-2 text-sm text-gray-700">
                  <li>* Доминирование женского фитнеса — 8 из 11 студий ориентированы на женщин</li>
                  <li>* Растяжка/стретчинг — самое популярное направление (6 студий)</li>
                  <li>* Мини-группы (6–10 чел.) — стандарт индустрии</li>
                  <li>* Мобильные приложения есть у 5 из 11 студий</li>
                  <li>* Франшизная модель у 4 из 11 — тренд на масштабирование</li>
                </ul>
              </div>
              <div className="border border-border rounded-lg p-4">
                <h3 className="text-sm font-semibold text-gray-900 mb-2">
                  Ценовой анализ (пробное занятие)
                </h3>
                <ul className="space-y-2 text-sm text-gray-700">
                  <li>* Минимум: 149 ₽ (Stretch House) — агрессивный вход</li>
                  <li>* Средний сегмент: 450–700 ₽ (Графит, ЛЕТАЙ, THE TOP)</li>
                  <li>* Премиум: 990–1 500 ₽ (Base, BodyFit)</li>
                  <li>* По запросу: THE FLEX, Victoria, Pilates RCC — закрытое ценообразование</li>
                </ul>
              </div>
              <div className="border border-border rounded-lg p-4">
                <h3 className="text-sm font-semibold text-gray-900 mb-2">Лидеры по масштабу</h3>
                <ul className="space-y-2 text-sm text-gray-700">
                  <li>* ЛЕТАЙ — 23 филиала в 6 городах, 10 000 визитов/мес</li>
                  <li>* Stretch House — 6 филиалов в Екатеринбурге</li>
                  <li>* THE FLEX — федеральная сеть с франшизой</li>
                  <li>* Flex & Energy — сеть с несколькими точками</li>
                </ul>
              </div>
              <div className="border border-border rounded-lg p-4">
                <h3 className="text-sm font-semibold text-gray-900 mb-2">Потребность в CRM</h3>
                <ul className="space-y-2 text-sm text-gray-700">
                  <li>* Большинство используют мобильные приложения (YClients) для записи</li>
                  <li>
                    * Сети (ЛЕТАЙ, Stretch House, THE FLEX) — основные потенциальные клиенты
                    MyFitCRM
                  </li>
                  <li>* Студии с франшизой нуждаются в мульти-тенантной CRM</li>
                  <li>* EMS-студии (BodyFit) — нишевый сегмент с особыми потребностями</li>
                </ul>
              </div>
            </div>
          </div>
        </div>

        {/* Market Context */}
        <div className="bg-card rounded-xl shadow-sm border border-border overflow-hidden">
          <div className="px-6 py-4 border-b border-border">
            <h2 className="text-lg font-bold text-gray-900">
              Контекст рынка фитнес-услуг РФ (2024–2025)
            </h2>
          </div>
          <div className="p-6">
            <div className="grid grid-cols-1 md:grid-cols-3 gap-4 text-center mb-4">
              <div className="border border-border rounded-lg p-4">
                <div className="text-2xl font-bold text-primary">262,8 млрд ₽</div>
                <div className="text-xs text-muted mt-1">Объём рынка фитнеса РФ (2024)</div>
              </div>
              <div className="border border-border rounded-lg p-4">
                <div className="text-2xl font-bold text-primary">+23%</div>
                <div className="text-xs text-muted mt-1">Рост к 2023 году</div>
              </div>
              <div className="border border-border rounded-lg p-4">
                <div className="text-2xl font-bold text-primary">+15%</div>
                <div className="text-xs text-muted mt-1">Прогноз роста 2025</div>
              </div>
            </div>
            <p className="text-sm text-gray-600">
              Финансовые показатели (оборот, выручка) индивидуальных студий не раскрываются
              публично. Данные доступны только в платных сервисах (СПАРК, Контур.Фокус). Рынок
              характеризуется ростом компактных форматов, ежемесячных подписок и специализированных
              нишевых студий (пилатес, EMS, стретчинг).
            </p>
          </div>
        </div>
      </div>
    </div>
  );
}
