// ── Persona data (template slots) ──
const personas = {
  parent_app_zero: {
    id: "persona_parent_app_zero",
    label: "학부모 앱 0개",
    hero: {
      badge: "보내는 건 알림 하나인데, 카톡, 전화, dm 반복해서 보내시나요?",
      headline: "선생님 <em>작성 1번</em>.<br/> 전달은 저희에게 맡기세요",
      subcopy: "전화, 문자, 카톡 알림을 보내시면, 저희가 확인해드립니다. 미확인한 분들에게만 원클릭 재전송",
    },
    // 히어로 우측 비주얼을 카톡 대화(heroChat) 대신 1분 소개 애니메이션으로 대체.
    // 값이 있으면 HeroSection 이 iframe 으로 임베드(scope 격리). 비우면 heroChat 으로 폴백.
    // heroVideoPoster: iframe 로드 전까지 보여줄 포스터 이미지.
    heroVideo: "hero_anim/index.html",
    heroVideoPoster: "hero_anim/poster.webp",
    heroChat: {
      caption: "이 거절, 한 번쯤 들어보셨죠?",
      bubbles: [
        { from: "teacher", text: "어머님, 이번에 학원 앱을 도입했어요!\n아래 링크에서 설치하시고 가입 한 번만 부탁드려요 🙏", time: "오후 3:14" },
        { from: "teacher", type: "link", title: "학원관리 앱", sub: "설치하기" },
        { from: "parent", text: "아… 꼭 깔아야 하나요?\n앱 또 까는 게 좀 부담스러워서요", time: "오후 7:52" },
        { from: "parent", text: "그냥 지금처럼 카톡으로 보내주시면 안 될까요?", time: "오후 7:53" },
        { from: "teacher", type: "typing" },
      ],
    },
    empathy: {
      sectionTitle: "이런 일, 겪어보신적 있으신가요?",
      cases: [
        { quote: "어플은 깔아야 되고 회원가입 해야 되고… 학부모님 참여도가 저조하니까 결국 그냥 카톡으로 돌아갈 수밖에 없었어요.", speaker: "A원장님" },
        { quote: "큰맘 먹고 학원관리 앱 결제했는데, 학부모님 절반이 설치를 안 하셔서 한 달 만에 해지했어요.", speaker: "B원장님" },
        { quote: "알림장 어플 사용하지만, 학부모님들이 안봐서 채널이나 dm으로 보내요. 다른 분은 전화로도 하시더라구요", speaker: "C원장님" },
      ],
    },
    finalCta: {
      headline: "선생님은 작성 <em> 1번</em>으로,<br/>지금 바로 간편하게 전송하세요.",
      closing: "지금 바로 무료로 시작해보세요",
      checks: [
        "학부모님에게 앱 설치를 요구하지 않습니다",
        "학생 50명까지 영구 무료 (FREE)",
        "출결·공지·숙제 즉시 사용 + 일간 리포트",
        "카드 등록 없이 1분 가입",
      ],
    },
    defaultSolution: "signup_link",
  },

  student_mapping: {
    id: "persona_student_mapping",
    label: "학생이 매핑",
    hero: {
      badge: "반복되는 공지와 리포트 간단하게 만들어 보실래요?",
      headline: "학생이 늘수록 <br/><em>입력</em>이 늘어요",
      subcopy: "학생 등록 & 데이터 관리, 알림, 학생 리포트 학생이 늘수록 많아지는 작업들 모아링이 도와드립니다",
    },
    // 엑셀 몽타주(heroMontage) 대신 1분 소개 애니메이션(iframe). 비우면 heroMontage 로 폴백.
    heroVideo: "hero_anim3/index.html",
    heroVideoPoster: "hero_anim3/poster.webp",
    heroMontage: {
      caption: "매번 일일이, 처음부터 다시",
      counter: { label: "오늘", items: ["입력 47번", "클릭 120번"] },
      sheet: {
        columns: ["이름", "연락처", "학부모 연락처"],
        rows: [
          { num: 1, cells: ["김민준", "010-1234-5678", "010-9876-5432"] },
          { num: 2, cells: ["이서연", "010-2345-6789", "010-8765-4321"] },
          { num: 3, cells: ["정다은", "010-3456-7890", "010-7654-3210"] },
          { num: 4, cells: ["박준호", "010-4567-8901", "010-6543-2109"] },
          { num: 5, cells: ["최현우", "010-5678-9012", "010-5432-1098"] },
          { num: 6, cells: ["한지우", "010-6789-0123", "010-4321-0987"] },
          { num: 7, cells: ["조하늘", "010-7890-1234", "010-3210-9876"] },
          { num: 8, cells: ["윤지호", "010-12", "010-____-____"], activeCol: 1 },
        ],
      },
      note: "한 칸씩 일일이 채우는 중… + 22명 더 남음",
    },
    empathy: {
      sectionTitle: "선생님이 다 입력하셔야 하잖아요",
      cases: [
        { quote: "학기 초마다 학생 명단, 학부모 연락처, 학교, 출판사… 학생이 늘 때마다 같은 입력을 처음부터 다시 해요.", speaker: "A원장님" },
        { quote: "출결이고 숙제고 단톡방에 일일이 치고, 학생이 종이로 낸 답안을 받아 적고 또 엑셀에 옮기고.", speaker: "B원장님" },
        { quote: "결국 모든 게 선생님 손을 거쳐야 굴러가요. 그 시간이 수업 준비 시간을 다 잡아먹습니다.", speaker: "C원장님" },
      ],
    },
    finalCta: {
      headline: "<em>리포트, 알림, 데이터 관리</em>.<br/> 저희에게 맡겨주세요",
      closing: "선생님이 일일히 만들던 학생 입력, 알림, 리포트 작성 한번에 지원하겠습니다.",
      checks: [
        "선생님 N번 입력 → 카톡 링크 하나로 자동",
        "학생이 카톡에서 자기를 직접 매핑",
        "학생 50명까지 영구 무료 (FREE)",
        "카드 등록 없이 1분 가입",
      ],
    },
    defaultSolution: "class_setup",
  },

  parent_overflow: {
    id: "persona_parent_overflow",
    label: "학부모 응대 폭주",
    hero: {
      badge: "수업 중에 연락, 응대 드리고 싶어도 못했던 적 있으신가요?",
      headline: "선생님에게 문의는 정해진 시간이 <br/><em> 없어요 </em>",
      subcopy: "단순 안내는 AI가 알아서, 소통이 필요할 때는 AI가 필요한 정보를 요약해드려요!",
    },
    // 카톡 대화 대신 1분 소개 애니메이션(iframe). 비우면 heroChat 으로 폴백.
    heroVideo: "hero_anim2/index.html",
    heroVideoPoster: "hero_anim2/poster.webp",
    heroChat: {
      caption: "퇴근했는데 또 카톡 와요",
      bubbles: [
        { from: "parent", who: "민준 어머님", text: "선생님 우리 민준이 오늘 학원 잘 갔나요?", time: "오후 9:14" },
        { from: "parent", who: "서연 어머님", text: "쌤 오늘 숙제 뭐예요?", time: "오후 9:31" },
        { from: "parent", who: "다은 어머님", text: "다음 주 휴강이라고 하셨나요? 단톡방을 못 봐서요 😅", time: "오후 10:02" },
        { from: "teacher", text: "(단톡방에 다 올렸는데…)\n네 어머님, 오늘 출석했고 숙제는…", time: "오후 10:05" },
        { from: "teacher", type: "note", text: "밤 10시, 아직도 답장 중" },
      ],
    },
    empathy: {
      sectionTitle: "이런 점이 어려웠어요",
      cases: [
        { quote: "학생이 선생님이 그 날 오지말라고 이야기했다고 말하고, 부모님에게 해당 내용을 증명할 수 없어서 억울한 적이 있어요", speaker: "A선생님" },
        { quote: "학생의 숙제나 진도 등의 범위를 재차 물어보실 때가 있어요", speaker: "B원장님" },
        { quote: "수업이 있는데 민원 전화가 들어와서 수업 진행에 차질이 생긴적이 있어요", speaker: "C원장님" },
      ],
    },
    finalCta: {
      headline: "퇴근 후 연락, 이제 그만.<br/><em>사생활을 돌려받으세요.</em>",
      closing: "AI가 1차 분류, 결정은 선생님. 저녁을 돌려받으세요",
      checks: [
        "AI 문의 분류 & 응답 시 학원 내 데이터 수집 지원",
        "출결·공지·숙제 알림",
        "연락처 공개 없는 연락",
        "카드 등록 없이 1분 가입",
      ],
    },
    defaultSolution: "consult",
  },
};

// ── Solutions (6 modules — source of truth for Section C + D) ──
const solutions = [
  {
    key: "signup_link",
    title: "회원가입 · 학부모 연결",
    cardDesc: "학생은 카카오 로그인 한 번. 학부모는 카톡 초대받아 클릭 한 번이면 연결 끝. 앱 설치 0개.",
    iconName: "user-plus",
    pro: false,
  },
  {
    key: "class_setup",
    title: "반 구성",
    cardDesc: "선생님은 반 이름 1번만. 오픈채팅 자동 등록 또는 단톡방 링크로 학생이 스스로 모입니다.",
    iconName: "users",
    pro: false,
  },
  {
    key: "attendance",
    title: "출결",
    cardDesc: "출석 화면·링크 공유·직접 처리 3가지 흐름. 학부모 알림톡까지 자동.",
    iconName: "check-square",
    pro: false,
  },
  {
    key: "notice_homework",
    title: "공지 & 숙제",
    cardDesc: "템플릿으로 공지 작성, 봇이 시간표 맞춰 자동 리마인드. 확인·제출 현황을 대시보드에서 한눈에.",
    iconName: "link",
    pro: false,
  },
  {
    key: "consult",
    title: "AI 문의 분류",
    cardDesc: "쏟아지는 학부모 문의를 AI가 1차 분류. 모르면 되묻지 않고 원장에게 토스.",
    iconName: "bot",
    pro: false,
  },
  {
    key: "payment",
    title: "수납 자동화",
    cardDesc: "정기 자동 발송 + 입금내역 자동 매칭. 애매하면 원장이 원클릭 확정.",
    iconName: "credit-card",
    pro: true,
  },
];

// ── Plans (checkout modal placeholders) ──
const plans = {
  free: {
    name: "FREE",
    price: "0원",
    priceNote: "/ 영구",
    features: [
      "학생 50명까지",
      "회원가입·반구성·출결·공지·숙제 전부 사용",
      "일간 리포트",
    ],
    cta: "무료로 시작",
  },
  pro: {
    name: "PRO",
    price: "24,900원",
    priceNote: "/ 월",
    badge: "BETA",
    features: [
      "학생 수 제한 없음",
      "수납 자동 청구 + 입금 자동 매칭",
      "AI 문의 분류 · 전체 종합 리포트",
      "클라우드 5GB",
    ],
    cta: "PRO 시작",
  },
  note: "※ AI 상담·알림톡·클라우드는 기본 제공량 초과 시 사용량만큼 종량제로 청구됩니다.",
};

// ※ 베타 사전등록 보상(`betaSignup.rewards`)과 같은 의미. 둘 중 하나만 바꾸지 말고 같이 맞춰주세요.
const welcomeGift = "🎁 지금 사전등록하면 — PRO 1개월 무료 + 알림톡 200회 추가 적립";

const closingCopy = "학생 50명까지 무료. 학부모님 앱 0개. 1분이면 시작합니다.";

// ── Beta sign-up form (shown after plan pick) ─────────────────────────
// 출시 전 데모 단계 동안 결제 대신 띄우는 사전등록/피드백 폼.
// 보상 카피는 출시 정책에 맞춰 자유롭게 수정 가능 (HTML 허용).
const betaSignup = {
  bannerTitle: "사전신청하시면 아래의 혜택을 주는 쿠폰을 드려요",
  // 각 혜택: icon(이모지) + title(굵게) + desc(보조 설명). desc 는 비워도 됨.
  rewards: [
    { icon: "🎁", title: "PRO 1개월 무료", desc: "정식 출시 후 한 달간 전 기능 그대로" },
    { icon: "📨", title: "알림톡 200회 적립", desc: "학부모 알림 발송에 바로 사용 가능" },
    { icon: "💬", title: "1:1 이메일 문의", desc: "서비스 이용법을 직접 안내해드려요" },
  ],
  thankYouSub: "아래 혜택은 출시 직후 첫 이메일로 안내드립니다.",
  privacy: "남겨주신 이메일은 출시 알림과 쿠폰 발송을 위한 주소로 사용됩니다!",
  // 제출 버튼 라벨
  submitLabel: "출시 알림 받기",
};

Object.assign(window, { personas, solutions, plans, welcomeGift, closingCopy, betaSignup });
