// AI-Men · 새신자 학습 코스 (멘토 탭 내 정식 콘텐츠)
// 20세션 = 성경 구원 이야기(스토리) + 신앙 핵심 개념, 4단계 구성.
// 출처: 목사님 제공 "새신자에게 필요한 신앙 핵심 개념 20가지" + 성경 구원사.
// Cross-script refs (Icon, MENTORS, MentorAvatar) resolve at render time.

const { useState: cuseState } = React;

// ---- 진도 저장 (localStorage) ----
const CourseStore = {
  KEY: 'aimen.course.progress.v1',
  get() { try { return JSON.parse(localStorage.getItem(this.KEY)) || {}; } catch (e) { return {}; } },
  isDone(id) { return !!this.get()[id]; },
  setDone(id, val = true) {
    const m = this.get();
    if (val) m[id] = Date.now(); else delete m[id];
    try { localStorage.setItem(this.KEY, JSON.stringify(m)); } catch (e) {}
  },
  count() { return Object.keys(this.get()).length; },
};
window.CourseStore = CourseStore;

const COURSE_STAGES = [
  { no: 1, name: '믿음의 기초 이해', desc: '기독교 신앙의 큰 그림 잡기' },
  { no: 2, name: '하나님과 신앙 고백', desc: '내가 누구를 믿는가' },
  { no: 3, name: '기도와 예배 생활', desc: '실제 신앙생활 시작' },
  { no: 4, name: '교회생활과 삶의 실천', desc: '제자로 살아가기' },
];

const COURSE_SESSIONS = [
  // ===== 1단계 · 믿음의 기초 이해 =====
  {
    id: 1, stage: 1, title: '성경이란 무엇인가',
    storyTitle: '한 권에 담긴 구원의 대서사', mentorId: 'ezra', mentorRole: '말씀을 회복한 학사',
    story: '하나님은 천지창조부터 예수님의 십자가와 부활, 오늘의 교회까지 한 권의 책에 당신의 구원 이야기를 담으셨습니다. 66권으로 이루어졌지만, 처음부터 끝까지 한 분 예수 그리스도를 가리킵니다.',
    lead: '성경은 단순한 종교 책이나 교훈집이 아니라, 하나님이 누구신지와 인간을 향한 구원 이야기를 보여주는 말씀입니다.',
    points: ['성경은 하나님의 말씀입니다', '구약과 신약으로 구성됩니다', '하나님·인간·죄·구원·예수님·교회·소망을 보여줍니다', '지식이 아니라 삶을 비추는 말씀입니다'],
    message: '성경은 하나님이 나에게 말씀하시는 통로입니다.',
    verse: { text: '모든 성경은 하나님의 감동으로 된 것으로 교훈과 책망과 바르게 함과 의로 교육하기에 유익하니', ref: '디모데후서 3:16' },
    analogy: { emoji: '💌', text: '성경은 하나님이 내게 보내신 한 통의 긴 편지와 같습니다. 정보가 아니라 관계를 위한 편지입니다.' },
    quiz: { q: '성경을 가장 바르게 설명한 것은?', options: ['훌륭한 교훈을 모은 도덕책', '하나님이 자신과 구원을 알려주시는 말씀', '옛 이스라엘의 역사 기록일 뿐'], answer: 1, explain: '성경의 중심은 교훈이나 역사 이전에, 하나님과 그분의 구원입니다.' },
    prayerQ: '하나님, 성경을 통해 제게 말씀해 주세요 — 오늘 마음에 열어주실 한 말씀을 구합니다.',
    thanksQ: '내가 처음 성경에서 위로받았던 구절이나 순간은 무엇인가요?',
    mission: '오늘 성경 한 구절을 소리 내어 읽고, 기도노트에 한 줄로 옮겨 적어보세요.',
  },
  {
    id: 2, stage: 1, title: '구약과 신약의 차이',
    storyTitle: '약속과 성취 — 아브라함의 언약', mentorId: 'abraham', mentorRole: '믿음의 조상',
    story: '하나님은 아브라함에게 “네 자손이 하늘의 별처럼 많아지고, 너로 말미암아 모든 민족이 복을 받으리라” 약속하셨습니다. 그 약속은 수천 년 뒤 예수 그리스도 안에서 온 인류를 향한 구원으로 성취되었습니다.',
    lead: '구약과 신약을 구분하지 못하면 성경 전체가 복잡하게 느껴집니다. 둘은 약속과 성취의 관계입니다.',
    points: ['구약은 예수님이 오시기 전 약속과 준비의 역사', '신약은 예수님이 오신 후 복음과 교회의 시작', '구약은 약속, 신약은 성취', '두 권의 중심은 모두 예수 그리스도'],
    message: '구약은 약속의 이야기이고, 신약은 그 약속이 예수님 안에서 이루어진 이야기입니다.',
    verse: { text: '하나님의 약속은 얼마든지 그리스도 안에서 예가 되니', ref: '고린도후서 1:20' },
    analogy: { emoji: '🎁', text: '구약은 “선물이 올 거야”라는 예고편이고, 신약은 그 선물이 도착해 풀리는 순간입니다.' },
    quiz: { q: '구약과 신약의 관계를 가장 잘 표현한 것은?', options: ['서로 다른 두 종교', '약속(구약)과 성취(신약)', '신약이 구약을 폐기함'], answer: 1, explain: '신약은 구약을 폐기하지 않고, 약속을 예수님 안에서 이룹니다.' },
    prayerQ: '늦어지는 듯한 약속 앞에서도 아브라함처럼 기다릴 믿음을 주세요.',
    thanksQ: '하나님이 내 삶에서 “늦었지만 결국” 이뤄주신 약속이 있나요?',
    mission: '아직 응답을 기다리는 기도제목 하나를 기도노트에 “약속”으로 적어보세요.',
  },
  {
    id: 3, stage: 1, title: '복음이란 무엇인가',
    storyTitle: '십자가와 부활 — 복음의 심장', mentorId: 'john', mentorRole: '사랑의 사도',
    story: '하나님은 인간을 사랑으로 지으셨지만 인간은 죄로 멀어졌습니다. 예수님은 우리 죄를 대신 지고 십자가에서 죽으시고 사흘 만에 부활하심으로, 하나님께 돌아갈 길을 여셨습니다.',
    lead: '복음을 이해하지 못하면 교회생활이 규칙과 활동 중심으로 흐를 수 있습니다. 새신자에게 가장 중요한 개념입니다.',
    points: ['하나님은 인간을 사랑으로 창조하심', '인간은 죄로 하나님과 멀어짐', '예수님이 십자가와 부활로 길을 여심', '구원은 행위가 아니라 은혜로 받음'],
    message: '복음은 예수님을 통해 하나님께 돌아갈 수 있다는 기쁜 소식입니다.',
    verse: { text: '하나님이 세상을 이처럼 사랑하사 독생자를 주셨으니 이는 그를 믿는 자마다 멸망하지 않고 영생을 얻게 하려 하심이라', ref: '요한복음 3:16' },
    analogy: { emoji: '🧾', text: '복음은 내가 갚을 수 없는 빚을 누군가 대신 다 갚아주고, 영수증을 “완납”으로 찍어준 소식입니다.' },
    quiz: { q: '복음(기쁜 소식)의 핵심은?', options: ['착하게 살면 구원받는다', '예수님을 통해 은혜로 하나님께 돌아간다', '종교 활동을 열심히 하는 것'], answer: 1, explain: '구원은 나의 행위가 아니라 예수님의 은혜로 받는 선물입니다.' },
    prayerQ: '예수님, 저를 위해 십자가를 지신 그 사랑을 오늘 다시 믿습니다.',
    thanksQ: '예수님의 사랑이 “나를 위한 것”으로 느껴졌던 순간은?',
    mission: '복음을 한 문장으로 적어, 오늘 한 사람에게 나의 믿음을 가볍게 나눠보세요.',
  },
  {
    id: 4, stage: 1, title: '죄와 회개의 의미',
    storyTitle: '다윗의 회개 — 무너진 자리에서', mentorId: 'david', mentorRole: '마음에 합한 왕',
    story: '하나님의 마음에 합한 왕 다윗도 큰 죄에 빠졌습니다. 그러나 그는 변명하지 않고 “내가 주께 죄를 지었습니다” 엎드려 회개했고, 하나님은 그를 다시 일으키셨습니다.',
    lead: '죄를 단순히 법을 어기는 행동으로만 이해하기 쉽지만, 성경에서 죄는 하나님과의 관계가 깨진 상태입니다.',
    points: ['죄는 하나님 없이 내 뜻대로 살려는 마음', '죄는 하나님과의 관계를 깨뜨림', '회개는 벌을 피하는 말이 아니라 방향 전환', '회개는 정죄가 아니라 회복의 시작'],
    message: '회개는 하나님께 다시 돌아가는 믿음의 방향 전환입니다.',
    verse: { text: '하나님께서 구하시는 제사는 상한 심령이라 상하고 통회하는 마음을 주께서 멸시하지 아니하시리이다', ref: '시편 51:17' },
    analogy: { emoji: '↩️', text: '회개는 잘못된 길을 가다 “유턴”하는 것입니다. 벌이 아니라, 집으로 돌아가는 방향 전환입니다.' },
    quiz: { q: '회개를 바르게 이해한 것은?', options: ['벌을 피하려는 말', '하나님께 돌아가는 방향 전환', '다신 실수 안 하겠다는 다짐'], answer: 1, explain: '회개의 본질은 후회가 아니라, 하나님께로 돌이키는 방향의 전환입니다.' },
    prayerQ: '하나님, 제 마음이 멀어진 자리를 보여주시고 다시 주께 돌이키게 하소서.',
    thanksQ: '다시 시작할 기회를 주신 하나님께 감사한 일이 있나요?',
    mission: '마음에 걸리는 한 가지를 정직하게 하나님께 아뢰고, 기도노트에 “유턴”이라 적어보세요.',
  },
  {
    id: 5, stage: 1, title: '구원이란 무엇인가',
    storyTitle: '출애굽 — 홍해를 가른 구원', mentorId: 'moses', mentorRole: '출애굽의 중보자',
    story: '430년 종살이하던 이스라엘을 하나님은 모세를 통해 건지셨습니다. 앞은 홍해, 뒤는 군대였지만 하나님은 바다를 가르시고 그들을 새 백성으로 이끄셨습니다.',
    lead: '구원을 죽은 후 천국 가는 것으로만 이해하기 쉽지만, 구원은 관계 회복·새 생명·새 정체성까지 포함합니다.',
    points: ['구원은 죄와 죽음에서 건짐받는 것', '하나님과의 관계가 회복되는 것', '예수님을 믿음으로 받는 은혜', '구원받은 사람은 하나님의 자녀로 삶'],
    message: '구원은 하나님과의 관계가 회복되고 새 삶을 시작하는 것입니다.',
    verse: { text: '너희는 그 은혜에 의하여 믿음으로 말미암아 구원을 받았으니 이것은 너희에게서 난 것이 아니요 하나님의 선물이라', ref: '에베소서 2:8' },
    analogy: { emoji: '🕊️', text: '구원은 노예 문서에 “자유”라는 도장이 찍히고, 새 가족의 자녀로 입양되는 일입니다.' },
    quiz: { q: '성경이 말하는 구원에 포함되지 않는 것은?', options: ['하나님과의 관계 회복', '죽은 뒤 천국만을 의미', '지금 새 삶의 시작'], answer: 1, explain: '구원은 사후 천국만이 아니라, 지금 여기서 시작되는 새로운 삶입니다.' },
    prayerQ: '제 인생의 홍해 앞에서 하나님이 길을 내실 것을 믿습니다.',
    thanksQ: '막혔던 길이 열렸던 “나의 홍해” 경험이 있나요?',
    mission: '오늘 막막한 문제 하나를 “하나님이 길 내실 홍해”로 기도노트에 맡겨보세요.',
  },
  // ===== 2단계 · 하나님과 신앙 고백 =====
  {
    id: 6, stage: 2, title: '하나님은 어떤 분이신가',
    storyTitle: '욥이 만난 창조주', mentorId: 'job', mentorRole: '고난 중 만난 하나님',
    story: '모든 것을 잃은 욥은 “왜?”라고 부르짖었습니다. 하나님은 답 대신 광대한 창조 세계를 보여주셨고, 욥은 “내가 주를 귀로만 듣다가 이제는 눈으로 뵙니다” 고백했습니다.',
    lead: '하나님을 막연한 신, 무서운 심판자, 문제 해결자로만 이해하지 않도록 균형 있게 알아야 합니다.',
    points: ['창조주이시며 사랑이심', '거룩하시고 공의로우심', '신실하시며 약속을 지키심', '우리와 함께하시는 분'],
    message: '하나님은 나를 지으시고 사랑하시며, 나를 인도하시는 분입니다.',
    verse: { text: '여호와는 자비롭고 은혜롭고 노하기를 더디 하고 인자와 진실이 풍성한 하나님이라', ref: '출애굽기 34:6' },
    analogy: { emoji: '🤲', text: '하나님은 자판기가 아니라 아버지입니다. 원하는 답을 뽑는 기계가 아니라, 함께 걷는 분입니다.' },
    quiz: { q: '하나님을 가장 균형 있게 이해한 것은?', options: ['소원을 들어주는 분', '사랑이시며 동시에 거룩하신 아버지', '무섭게 심판만 하시는 분'], answer: 1, explain: '하나님은 사랑과 거룩을 함께 지니신, 우리와 동행하시는 아버지이십니다.' },
    prayerQ: '하나님, 당신이 어떤 분이신지 제 마음에 더 깊이 알려주세요.',
    thanksQ: '하나님이 “함께 계셨구나” 느꼈던 순간은?',
    mission: '하나님의 성품 한 가지(사랑·거룩·신실…)를 골라 오늘 하루 묵상해보세요.',
  },
  {
    id: 7, stage: 2, title: '예수님은 누구신가',
    storyTitle: '말씀이 사람이 되심 — 예수 탄생', mentorId: 'mary', mentorRole: '예수의 어머니',
    story: '하나님은 가장 낮은 마구간으로 오셨습니다. 마리아를 통해 사람으로 태어나신 예수님은, 하나님이 직접 우리 곁으로 찾아오신 사건입니다.',
    lead: '예수님을 훌륭한 스승이나 성인 정도로만 이해할 수 있으므로 분명히 정리해야 합니다.',
    points: ['하나님의 아들이심', '인간의 몸으로 오신 구원자', '십자가에서 우리 죄를 담당하심', '부활하여 지금도 살아계신 주님'],
    message: '예수님은 나를 하나님께로 인도하시는 구원자이십니다.',
    verse: { text: '말씀이 육신이 되어 우리 가운데 거하시매', ref: '요한복음 1:14' },
    analogy: { emoji: '🤝', text: '예수님은 멀리서 손짓하는 안내자가 아니라, 직접 내려와 내 손을 잡고 길이 되어 주신 분입니다.' },
    quiz: { q: '예수님은 누구이신가?', options: ['훌륭한 도덕 선생', '사람으로 오신 하나님의 아들·구원자', '옛 성인 중 한 명'], answer: 1, explain: '예수님은 좋은 스승을 넘어, 우리를 구원하러 오신 하나님의 아들이십니다.' },
    prayerQ: '예수님, 제 삶의 길과 진리와 생명이 되어 주세요.',
    thanksQ: '예수님이 “나의 구원자”로 다가온 계기가 있나요?',
    mission: '예수님께 드리고 싶은 한 문장 고백을 기도노트에 적어보세요.',
  },
  {
    id: 8, stage: 2, title: '성령님은 누구신가',
    storyTitle: '오순절 — 불처럼 임한 성령', mentorId: 'peter', mentorRole: '초대교회의 반석',
    story: '예수님이 승천하신 뒤, 약속대로 성령이 제자들에게 임했습니다. 두려워 숨어 있던 베드로는 성령으로 담대해져 수천 명 앞에서 복음을 전했습니다.',
    lead: '성령님을 낯설게 느끼거나 신비한 현상으로만 오해할 수 있습니다. 성령님은 신앙생활을 돕는 하나님의 영입니다.',
    points: ['성령님은 하나님이심', '우리 안에 거하시며 믿음을 도우심', '말씀을 깨닫게 하심', '기도·회복·성품의 변화를 이끄심'],
    message: '성령님은 내가 믿음으로 살아가도록 도우시는 하나님의 영입니다.',
    verse: { text: '오직 성령이 너희에게 임하시면 너희가 권능을 받고', ref: '사도행전 1:8' },
    analogy: { emoji: '🧭', text: '성령님은 내 안의 안내 내비게이션과 같습니다. 길을 깨닫게 하고, 힘이 빠질 때 다시 움직이게 합니다.' },
    quiz: { q: '성령님에 대한 바른 설명은?', options: ['신비한 느낌이나 현상', '내 안에 거하시며 믿음을 돕는 하나님', '특별한 사람에게만 임함'], answer: 1, explain: '성령님은 현상이 아니라, 믿는 모든 사람 안에 거하시며 돕는 하나님이십니다.' },
    prayerQ: '성령님, 제가 믿음으로 살도록 오늘도 도와주세요.',
    thanksQ: '마음에 힘과 위로가 “문득” 부어졌던 순간이 있나요?',
    mission: '결정이 필요한 일 앞에서 “성령님, 인도해 주세요” 짧게 기도해보세요.',
  },
  {
    id: 9, stage: 2, title: '삼위일체의 기초',
    storyTitle: '예수님의 세례 — 세 분이 함께', mentorId: 'john', mentorRole: '증언의 사도',
    story: '예수님이 요단강에서 세례 받으실 때, 하늘에서 성부의 음성이 들리고 성령이 비둘기같이 임했습니다. 성부·성자·성령이 한 장면에 함께 나타난 순간입니다.',
    lead: '삼위일체는 어렵지만 피하면 안 됩니다. 복잡한 신학보다 기초 개념만 잡으면 됩니다.',
    points: ['하나님은 한 분이심', '성부·성자·성령은 각각 하나님', '성부는 계획, 성자는 이룸, 성령은 적용', '완전히 이해하기보다 믿음으로 배워가는 신비'],
    message: '하나님은 성부·성자·성령으로 우리를 창조·구원·인도하십니다.',
    verse: { text: '아버지와 아들과 성령의 이름으로 세례를 베풀고', ref: '마태복음 28:19' },
    analogy: { emoji: '❤️', text: '삼위일체는 “다 이해한 뒤 믿는” 공식이 아니라, 사랑처럼 누리며 알아가는 관계입니다.' },
    quiz: { q: '삼위일체를 바르게 표현한 것은?', options: ['세 명의 다른 신', '한 분 하나님, 성부·성자·성령', '하나님의 세 가지 기분'], answer: 1, explain: '세 신도, 세 기분도 아닌 — 한 분 하나님이 성부·성자·성령으로 계십니다.' },
    prayerQ: '다 이해되지 않아도, 성부·성자·성령 하나님을 믿음으로 신뢰합니다.',
    thanksQ: '창조·구원·인도하심 중 오늘 가장 감사한 손길은?',
    mission: '“성부·성자·성령의 이름으로” 천천히 사도신경을 한 번 고백해보세요.',
  },
  {
    id: 10, stage: 2, title: '사도신경의 의미',
    storyTitle: '스데반 — 죽음 앞의 신앙 고백', mentorId: 'stephen', mentorRole: '첫 순교자',
    story: '첫 순교자 스데반은 돌에 맞는 순간에도 “주 예수여 내 영혼을 받으소서” 고백했습니다. 초대교회는 이런 분명한 믿음의 고백 위에 세워졌습니다.',
    lead: '사도신경은 새신자가 기독교 신앙의 기본 고백을 정리하는 데 매우 중요합니다.',
    points: ['교회가 오래 고백해 온 믿음의 요약', '하나님 아버지를 믿는 고백', '예수 그리스도를 믿는 고백', '성령·교회·죄사함·부활·영생을 믿는 고백'],
    message: '사도신경은 내가 무엇을 믿는지 정리해 주는 믿음의 고백입니다.',
    verse: { text: '네 입으로 예수를 주로 시인하며 하나님께서 그를 죽은 자 가운데서 살리신 것을 마음에 믿으면 구원을 받으리라', ref: '로마서 10:9' },
    analogy: { emoji: '📍', text: '사도신경은 신앙의 “주소”와 같습니다. 내가 어디에 서 있는지 한 번에 알려줍니다.' },
    quiz: { q: '사도신경에서 가장 중요한 것은?', options: ['빠르게 암송하기', '담긴 믿음의 의미를 이해하기', '남보다 크게 외치기'], answer: 1, explain: '사도신경은 암송 자체보다, 그 안에 담긴 믿음의 의미를 아는 것이 중요합니다.' },
    prayerQ: '제 입술의 고백이 삶으로도 드러나게 하소서.',
    thanksQ: '“나는 이것을 믿는다”고 분명히 말할 수 있는 한 가지는?',
    mission: '사도신경을 천천히 읽으며, 가장 마음에 와닿는 한 구절에 밑줄 그어보세요.',
  },
  // ===== 3단계 · 기도와 예배 생활 =====
  {
    id: 11, stage: 3, title: '주기도문의 의미',
    storyTitle: '예수님이 가르치신 기도', mentorId: null, mentorRole: '',
    story: '제자들이 “기도를 가르쳐 주세요” 청했을 때, 예수님은 짧지만 완전한 기도를 주셨습니다. 그 안에 하나님 나라와 일용할 양식, 용서와 보호가 담겨 있습니다.',
    lead: '주기도문은 새신자가 기도를 배우는 가장 좋은 출발점입니다.',
    points: ['하나님을 아버지로 부르는 기도', '이름·나라·뜻을 먼저 구함', '매일의 필요를 맡김', '용서받고 용서하며, 보호를 구함'],
    message: '주기도문은 예수님이 가르쳐 주신 기도의 길입니다.',
    verse: { text: '그러므로 너희는 이렇게 기도하라 하늘에 계신 우리 아버지여', ref: '마태복음 6:9' },
    analogy: { emoji: '🧑‍🍳', text: '주기도문은 기도의 “기본 레시피”입니다. 외우는 주문이 아니라, 따라 만들수록 익는 틀입니다.' },
    quiz: { q: '주기도문이 가장 먼저 구하는 것은?', options: ['나의 성공', '하나님의 이름·나라·뜻', '문제의 즉각 해결'], answer: 1, explain: '주기도문은 내 필요보다 하나님의 이름과 나라를 먼저 구하도록 가르칩니다.' },
    prayerQ: '아버지의 뜻이 제 삶에서도 이뤄지기를 구합니다.',
    thanksQ: '오늘 “일용할 양식”으로 채워주신 것은 무엇인가요?',
    mission: '주기도문을 한 줄씩 천천히, 나의 말로 풀어 기도해보세요.',
  },
  {
    id: 12, stage: 3, title: '기도란 무엇인가',
    storyTitle: '한나의 기도 — 마음을 쏟다', mentorId: 'hannah', mentorRole: '심정을 통한 기도자',
    story: '자녀가 없어 마음이 무너진 한나는 성전에서 입술만 움직이며 마음을 쏟아 기도했습니다. 하나님은 그 통곡의 기도를 들으셨고, 사무엘을 주셨습니다.',
    lead: '기도는 새신자가 가장 빨리 실천할 수 있는 신앙생활입니다. 어렵지 않게 시작할 수 있습니다.',
    points: ['기도는 하나님과의 대화', '완벽한 문장이 아니라 진실한 마음', '감사·간구·회개·중보가 있음', '기록하면 더 깊어짐'],
    message: '기도는 하나님께 내 마음을 드리는 믿음의 대화입니다.',
    verse: { text: '아무것도 염려하지 말고 모든 일에 기도와 간구로 너희 구할 것을 감사함으로 하나님께 아뢰라', ref: '빌립보서 4:6' },
    analogy: { emoji: '☎️', text: '기도는 시험 답안이 아니라, 사랑하는 분과 나누는 대화입니다. 잘 말하기보다, 진심이면 됩니다.' },
    quiz: { q: '기도에 대한 바른 이해는?', options: ['멋진 문장을 만들어야 한다', '진실한 마음을 드리는 대화다', '정해진 말만 외워야 한다'], answer: 1, explain: '기도는 형식이 아니라, 하나님께 마음을 정직하게 드리는 대화입니다.' },
    prayerQ: '한나처럼 제 마음을 숨기지 않고 주께 쏟아놓겠습니다.',
    thanksQ: '기도로 마음이 가벼워졌던 경험이 있나요?',
    mission: '지금 가장 무거운 한 가지를 한 문장으로 하나님께 아뢰어 보세요.',
  },
  {
    id: 13, stage: 3, title: '기도생활의 실천 방법',
    storyTitle: '다니엘 — 하루 세 번의 자리', mentorId: 'daniel', mentorRole: '뜻을 정한 기도자',
    story: '다니엘은 기도를 금지하는 왕의 조서 앞에서도, 전에 하던 대로 하루 세 번 무릎 꿇어 감사했습니다. 위협 속에서도 지킨 작은 습관이 그의 신앙을 지켰습니다.',
    lead: '기도 개념만 가르치면 지속되지 않습니다. 실제 루틴으로 만들어야 합니다.',
    points: ['하루 3분 기도부터 시작', '아침·식사·잠들기 전 기도 익히기', '기도 제목을 기록하고 응답을 돌아봄', '안 될 때는 한 문장 기도로'],
    message: '작은 기도 습관이 믿음의 뿌리를 깊게 만듭니다.',
    verse: { text: '쉬지 말고 기도하라', ref: '데살로니가전서 5:17' },
    analogy: { emoji: '💪', text: '기도 습관은 근육과 같습니다. 거창하게 하루 하고 멈추기보다, 매일 3분씩이 더 강하게 만듭니다.' },
    quiz: { q: '기도생활을 지속하는 가장 좋은 방법은?', options: ['가끔 길게 몰아서', '매일 짧게라도 규칙적으로', '잘 될 때만 하기'], answer: 1, explain: '다니엘처럼, 짧아도 규칙적인 자리가 신앙을 지킵니다.' },
    prayerQ: '하루의 정해진 자리에서 주님을 먼저 만나게 하소서.',
    thanksQ: '꾸준히 이어온 작은 습관 중 감사한 것이 있나요?',
    mission: '오늘 “기도 알람” 한 개(아침·점심·저녁 중)를 정해보세요.',
  },
  {
    id: 14, stage: 3, title: '예배란 무엇인가',
    storyTitle: '다윗 — 온 마음의 예배', mentorId: 'david', mentorRole: '예배하는 왕',
    story: '다윗은 왕의 체면도 잊고 하나님 앞에서 힘껏 춤추며 찬양했습니다. 그에게 예배는 행사가 아니라, 하나님께 온 존재를 드리는 사랑의 표현이었습니다.',
    lead: '예배를 설교 듣는 시간·찬양하는 시간·교회 출석 정도로만 이해할 수 있습니다. 예배의 본질을 알아야 합니다.',
    points: ['하나님께 마음과 삶을 드리는 시간', '하나님을 높이는 시간', '말씀으로 삶을 다시 정렬', '관람이 아니라 참여'],
    message: '예배는 하나님을 삶의 중심에 모시는 시간입니다.',
    verse: { text: '너희 몸을 하나님이 기뻐하시는 거룩한 산 제물로 드리라 이는 너희가 드릴 영적 예배니라', ref: '로마서 12:1' },
    analogy: { emoji: '🎤', text: '예배는 공연 관람이 아니라, 내가 무대에 서서 하나님께 드리는 시간입니다. 관객은 하나님 한 분입니다.' },
    quiz: { q: '예배의 본질은?', options: ['설교를 잘 듣는 관람', '하나님께 마음과 삶을 드리는 참여', '출석을 채우는 일'], answer: 1, explain: '예배는 구경이 아니라, 내가 하나님께 나를 드리는 참여입니다.' },
    prayerQ: '예배가 습관이 아니라 사랑의 표현이 되게 하소서.',
    thanksQ: '예배 중 마음이 뜨거워졌던 순간이 있나요?',
    mission: '다음 예배 때, 찬양 가사 한 줄을 진심으로 고백하며 불러보세요.',
  },
  {
    id: 15, stage: 3, title: '예배 순서의 의미',
    storyTitle: '이사야 — 성전에서 본 거룩', mentorId: 'isaiah', mentorRole: '영광을 본 선지자',
    story: '이사야는 성전에서 “거룩하다 거룩하다 거룩하다” 외치는 천사들과 하나님의 영광을 보았습니다. 그 거룩 앞에 자신을 깨닫고, 정결함을 입은 뒤 “내가 여기 있나이다” 응답했습니다.',
    lead: '예배에 익숙하지 않은 새신자는 예배 순서가 낯설 수 있습니다. 각 순서의 의미를 알면 참여도가 높아집니다.',
    points: ['찬양은 하나님을 높이는 고백', '말씀봉독·설교는 말씀을 듣고 적용', '헌금은 감사와 신뢰의 표현', '축도는 은혜와 평강의 선포'],
    message: '예배 순서를 알면 예배에 더 마음으로 참여할 수 있습니다.',
    verse: { text: '거룩하다 거룩하다 거룩하다 만군의 여호와여 그의 영광이 온 땅에 충만하도다', ref: '이사야 6:3' },
    analogy: { emoji: '🚶', text: '예배 순서는 하나님을 만나는 “여정의 동선”입니다 — 높이고, 듣고, 응답하고, 보냄받습니다.' },
    quiz: { q: '헌금 순서의 의미로 맞는 것은?', options: ['교회 운영비 납부', '감사와 신뢰의 표현', '의무적인 회비'], answer: 1, explain: '헌금은 의무가 아니라, 하나님을 향한 감사와 신뢰의 표현입니다.' },
    prayerQ: '예배의 한 순서 한 순서에 제 마음을 담게 하소서.',
    thanksQ: '예배 순서 중 가장 의미 있게 다가온 것은?',
    mission: '다음 예배에서 한 순서(찬양·봉독·축도)의 의미를 떠올리며 참여해보세요.',
  },
  // ===== 4단계 · 교회생활과 삶의 실천 =====
  {
    id: 16, stage: 4, title: '십계명의 의미',
    storyTitle: '시내산 — 사랑의 질서', mentorId: 'moses', mentorRole: '율법의 중보자',
    story: '출애굽한 백성에게 하나님은 시내산에서 십계명을 주셨습니다. 그것은 구원받은 백성이 자유 안에서 사랑하며 사는 삶의 질서였습니다.',
    lead: '십계명은 기독교 윤리와 삶의 방향을 배우는 핵심 주제입니다.',
    points: ['구원의 조건이 아니라 구원받은 백성의 삶', '앞부분은 하나님 사랑', '뒷부분은 이웃 사랑', '예수님은 하나님 사랑·이웃 사랑으로 요약'],
    message: '십계명은 억압의 규칙이 아니라 사랑으로 사는 자유의 길입니다.',
    verse: { text: '네 마음을 다하여 주 너의 하나님을 사랑하라 … 네 이웃을 네 자신 같이 사랑하라', ref: '마태복음 22:37-39' },
    analogy: { emoji: '🛝', text: '십계명은 가둬두는 울타리가 아니라, 안전하게 뛰놀게 하는 운동장의 경계선입니다.' },
    quiz: { q: '십계명을 바르게 이해한 것은?', options: ['구원받기 위한 조건', '구원받은 백성이 사랑으로 사는 길', '지키면 손해 보는 규칙'], answer: 1, explain: '십계명은 구원의 조건이 아니라, 이미 구원받은 자의 사랑의 삶입니다.' },
    prayerQ: '규칙이 아니라 사랑으로 주님과 이웃을 대하게 하소서.',
    thanksQ: '누군가의 사랑이 나를 지켜준 경험이 있나요?',
    mission: '오늘 “이웃 사랑” 한 가지를 작게 실천해보세요(문자 한 통, 양보 한 번).',
  },
  {
    id: 17, stage: 4, title: '세례와 성찬의 의미',
    storyTitle: '최후의 만찬 — 나를 기억하라', mentorId: 'john', mentorRole: '만찬의 증인',
    story: '예수님은 십자가를 앞두고 제자들과 떡과 잔을 나누며 “이것을 행하여 나를 기념하라” 하셨습니다. 그 사랑을 몸으로 기억하는 것이 성찬입니다.',
    lead: '새신자 과정에는 반드시 세례와 성찬이 들어가야 합니다. 교회 정착·신앙 고백과 직접 연결됩니다.',
    points: ['세례는 믿음을 공개적으로 고백하는 표', '옛 삶에서 새 삶으로 옮겨감을 상징', '성찬은 십자가 사랑을 기억하는 예식', '공동체가 함께 참여하는 은혜의 자리'],
    message: '세례와 성찬은 예수님의 은혜를 믿음으로 고백하고 기억하는 거룩한 예식입니다.',
    verse: { text: '이것은 너희를 위하여 주는 내 몸이라 너희가 이것을 행하여 나를 기념하라', ref: '누가복음 22:19' },
    analogy: { emoji: '🍞', text: '세례는 새 가족의 “입양 서명식”, 성찬은 그 사랑을 매번 되새기는 “가족 식탁”과 같습니다.' },
    quiz: { q: '성찬의 의미로 맞는 것은?', options: ['단순한 종교 의식', '예수님의 십자가 사랑을 기억하는 예식', '특별한 사람만의 행사'], answer: 1, explain: '성찬은 형식이 아니라, 예수님의 사랑을 공동체가 함께 기억하는 자리입니다.' },
    prayerQ: '예수님이 저를 위해 주신 몸과 피를 잊지 않게 하소서.',
    thanksQ: '예수님의 희생이 “나를 위한 것”으로 느껴진 순간은?',
    mission: '세례를 아직 받지 않았다면 새가족 담당자에게 문의해보고, 받았다면 그 날을 떠올리며 감사해보세요.',
  },
  {
    id: 18, stage: 4, title: '교회란 무엇인가',
    storyTitle: '초대교회의 탄생 — 한 마음으로', mentorId: 'peter', mentorRole: '초대교회의 기둥',
    story: '오순절 이후 믿는 사람들은 함께 모여 말씀을 듣고, 떡을 떼고, 기도하며, 가진 것을 나눴습니다. 건물이 아니라 사람들의 공동체로 교회가 시작되었습니다.',
    lead: '교회를 건물·조직·종교기관으로 이해하기 쉽습니다. 교회의 본질을 알아야 합니다.',
    points: ['건물이 아니라 믿는 사람들의 공동체', '그리스도의 몸', '말씀·예배·기도·교제·섬김으로 세워짐', '서로 돌보고 함께 자라는 믿음의 가족'],
    message: '교회는 함께 예배하고, 함께 자라고, 함께 섬기는 믿음의 가족입니다.',
    verse: { text: '날마다 마음을 같이하여 성전에 모이기를 힘쓰고 집에서 떡을 떼며 기쁨과 순전한 마음으로 음식을 먹고', ref: '사도행전 2:46' },
    analogy: { emoji: '🏡', text: '교회는 건물이 아니라 가족입니다. 주소가 아니라, 함께 밥 먹고 자라는 사람들입니다.' },
    quiz: { q: '교회의 본질은?', options: ['예배당 건물', '예수님을 믿는 사람들의 공동체', '종교 행정 기관'], answer: 1, explain: '교회는 건물이 아니라, 그리스도를 믿고 함께 자라는 사람들입니다.' },
    prayerQ: '이 믿음의 가족 안에서 제가 자라고 또 섬기게 하소서.',
    thanksQ: '교회 공동체에서 받은 따뜻함이 있었나요?',
    mission: '이번 주, 같은 공동체의 한 사람에게 안부 인사를 건네보세요.',
  },
  {
    id: 19, stage: 4, title: '헌금·섬김·은사의 의미',
    storyTitle: '함께 세우다 — 섬김의 손', mentorId: 'nehemiah', mentorRole: '재건의 리더',
    story: '느헤미야는 안락함을 버리고 무너진 성벽을 재건하며 백성과 함께 섬겼습니다. 초대교회 역시 가진 것을 기쁨으로 나누며 서로를 세웠습니다.',
    lead: '민감하지만 반드시 다뤄야 합니다. “감사와 참여”의 관점으로 이해하면 됩니다.',
    points: ['헌금은 의무가 아니라 감사와 신뢰의 표현', '섬김은 떠맡음이 아니라 사랑의 실천', '은사는 공동체를 세우라고 주신 선물', '작은 섬김부터 시작할 수 있음'],
    message: '헌금과 섬김은 부담이 아니라 감사와 사랑의 표현입니다.',
    verse: { text: '각각 그 마음에 정한 대로 할 것이요 인색함으로나 억지로 하지 말지니 하나님은 즐겨 내는 자를 사랑하시느니라', ref: '고린도후서 9:7' },
    analogy: { emoji: '🧩', text: '섬김은 빈자리를 메우는 부담이 아니라, 내 은사라는 퍼즐 조각을 공동체 그림에 끼우는 기쁨입니다.' },
    quiz: { q: '헌금과 섬김의 바른 마음은?', options: ['억지로 채우는 의무', '감사와 사랑의 자발적 표현', '남에게 보이기 위한 것'], answer: 1, explain: '하나님은 억지가 아니라 즐겨 드리는 마음을 기뻐하십니다.' },
    prayerQ: '제게 주신 작은 은사로 공동체를 섬기게 하소서.',
    thanksQ: '누군가의 섬김으로 도움받은 기억이 있나요?',
    mission: '내가 할 수 있는 작은 섬김 한 가지를 찾아 이번 주에 실천해보세요.',
  },
  {
    id: 20, stage: 4, title: '제자도와 신앙 성장',
    storyTitle: '바울의 회심 — 그리고 오늘의 나', mentorId: 'paul', mentorRole: '이방인의 사도',
    story: '교회를 핍박하던 바울은 예수님을 만나 완전히 새사람이 되었고, 평생 복음을 전하는 제자로 살았습니다. 신앙은 한 번의 결심이 아니라, 매일 따라가는 여정입니다.',
    lead: '온보딩의 마지막은 “교회에 적응했다”가 아니라 “예수님을 따라 살기 시작한다”로 끝나야 합니다.',
    points: ['제자는 예수님을 배우고 따르는 사람', '신앙 성장은 한 번에 완성되지 않음', '말씀·기도·예배·공동체·섬김으로 자람', '실패해도 다시 시작하는 것이 중요'],
    message: '신앙생활은 예수님을 따라 매일 조금씩 자라가는 여정입니다.',
    verse: { text: '이제는 내가 사는 것이 아니요 오직 내 안에 그리스도께서 사시는 것이라', ref: '갈라디아서 2:20' },
    analogy: { emoji: '🚶‍♂️', text: '신앙 성장은 100미터 달리기가 아니라, 평생 함께 걷는 동행입니다. 넘어지면 다시 일어나 걸으면 됩니다.' },
    quiz: { q: '신앙 성장에 대한 바른 태도는?', options: ['한 번 결심하면 끝', '매일 조금씩 따라가는 여정', '실패하면 포기'], answer: 1, explain: '신앙은 한 번의 완성이 아니라, 넘어져도 다시 걷는 매일의 여정입니다.' },
    prayerQ: '오늘도 예수님을 한 걸음 더 따라가게 하소서.',
    thanksQ: '이 코스를 지나며 내 안에 생긴 변화 한 가지는?',
    mission: '나만의 “90일 성장 계획” 첫 줄을 기도노트에 적으며 코스를 마무리해보세요.',
  },
];
window.COURSE_SESSIONS = COURSE_SESSIONS;

// ===== 대화 / 학습 / 성경 세그먼트 (멘토 탭 상단) =====
function MentorTabSwitch({ active, onList, onCourse, onBible }) {
  return (
    <div className="mentor-switch ms-3">
      <button className={`ms-seg ${active === 'list' ? 'on' : ''}`} onClick={onList}>
        <Icon name="chat" size={16} stroke={2.2} /> 대화
      </button>
      <button className={`ms-seg ${active === 'course' ? 'on' : ''}`} onClick={onCourse}>
        <Icon name="book" size={16} stroke={2.2} /> 학습
      </button>
      <button className={`ms-seg ${active === 'bible' ? 'on' : ''}`} onClick={onBible}>
        <Icon name="bible" size={16} stroke={2.2} /> 성경
      </button>
    </div>
  );
}
window.MentorTabSwitch = MentorTabSwitch;

// ===== 코스 허브 =====
function CourseHubScreen({ onBack, onList, onOpenSession, onBible }) {
  const done = CourseStore.count();
  const pct = Math.round((done / COURSE_SESSIONS.length) * 100);
  const nextSession = COURSE_SESSIONS.find(s => !CourseStore.isDone(s.id));
  const allDone = !nextSession;

  return (
    <>
      <div className="appbar">
        <button className="iconbtn" aria-label="Back" onClick={() => onBack && onBack('home')}><Icon name="chev-left" /></button>
        <Brand />
        <div style={{ width: 36 }} />
      </div>
      <div className="content">
        <MentorTabSwitch active="course" onList={onList} onCourse={() => {}} onBible={onBible} />

        <div className="crs-hero">
          <div className="crs-hero-eyebrow"><span>✝</span> 새신자 학습 코스</div>
          <div className="crs-hero-title">성경 구원 이야기로<br/>배우는 신앙의 기초</div>
          <div className="crs-hero-sub">성경 속 구원 이야기 20과 신앙 핵심 개념 20을<br/>4단계 20세션으로 함께 익혀요.</div>
          <div className="crs-hero-cross">✝</div>
        </div>

        <div className="crs-progress">
          <div className="crs-progress-top">
            <span className="crs-progress-label">나의 학습 진도</span>
            <span className="crs-progress-count"><strong>{done}</strong> / 20 완료</span>
          </div>
          <div className="crs-bar"><div className="crs-bar-fill" style={{ width: `${pct}%` }} /></div>
          <button className={`crs-resume ${allDone ? 'done' : ''}`} onClick={() => onOpenSession((nextSession || COURSE_SESSIONS[0]).id)}>
            {allDone
              ? <><span>🎉</span> 코스 완주! 다시 보기</>
              : <>{done > 0 ? '이어서 학습' : '학습 시작'} · {nextSession.id}세션 <Icon name="chev-right" size={18} stroke={2.4} /></>}
          </button>
        </div>

        {COURSE_STAGES.map(stage => {
          const list = COURSE_SESSIONS.filter(s => s.stage === stage.no);
          const stageDone = list.filter(s => CourseStore.isDone(s.id)).length;
          return (
            <div className="crs-stage" key={stage.no}>
              <div className="crs-stage-head">
                <span className="crs-stage-no">{stage.no}</span>
                <span className="crs-stage-name">{stage.name}</span>
                <span className="crs-stage-meta">{stageDone}/{list.length}</span>
              </div>
              <div className="crs-sessions">
                {list.map(s => {
                  const isDone = CourseStore.isDone(s.id);
                  return (
                    <button key={s.id} className={`crs-session ${isDone ? 'done' : ''}`} onClick={() => onOpenSession(s.id)}>
                      <span className="crs-sn">{isDone ? '✓' : s.id}</span>
                      <span className="crs-sbody">
                        <span className="crs-stitle">{s.title}</span>
                        <span className="crs-stags">
                          <span className="crs-stag story">📖 {s.storyTitle}</span>
                        </span>
                      </span>
                      <span className="crs-schev"><Icon name="chev-right" size={20} stroke={2} /></span>
                    </button>
                  );
                })}
              </div>
            </div>
          );
        })}
      </div>
    </>
  );
}
window.CourseHubScreen = CourseHubScreen;

// ===== 세션 상세 =====
function CourseSessionScreen({ sessionId, onBack, onOpenSession, onMentor, onLog }) {
  const idx = COURSE_SESSIONS.findIndex(s => s.id === sessionId);
  const s = COURSE_SESSIONS[idx] || COURSE_SESSIONS[0];
  const stage = COURSE_STAGES.find(st => st.no === s.stage);
  const mentor = s.mentorId ? (MENTORS.find(m => m.id === s.mentorId) || null) : null;

  const [picked, setPicked] = cuseState(null);
  const [done, setDone] = cuseState(CourseStore.isDone(s.id));
  const prev = COURSE_SESSIONS[idx - 1];
  const next = COURSE_SESSIONS[idx + 1];

  function complete() {
    const nv = !done;
    CourseStore.setDone(s.id, nv);
    setDone(nv);
  }

  return (
    <>
      <div className="appbar">
        <button className="iconbtn" aria-label="Back" onClick={onBack}><Icon name="chev-left" /></button>
        <div className="brand"><span>{s.id} / 20 세션</span></div>
        <div style={{ width: 36 }} />
      </div>
      <div className="content">
        <div className="crs-detail-top">
          <span className="crs-chip crs-chip-stage">{stage.no}단계 · {stage.name}</span>
          {done && <span className="crs-chip">✓ 완료</span>}
        </div>
        <div className="crs-detail-title">{s.title}</div>

        {/* 1. 구원 스토리 */}
        <div className="crs-sec">
          <div className="crs-sec-label"><span className="crs-dot" /> 구원 이야기</div>
          <div className="crs-story">
            <div className="crs-story-title">📖 {s.storyTitle}</div>
            <div className="crs-story-body">{s.story}</div>
            {mentor && (
              <div className="crs-story-mentor">
                <MentorAvatar mentor={mentor} size={42} />
                <span className="csm-meta">
                  <span className="csm-name">{mentor.kr}</span>
                  <span className="csm-role">{s.mentorRole || mentor.tagline}</span>
                </span>
                <button className="csm-go" onClick={() => onMentor && onMentor(mentor.id)}>
                  <Icon name="chat" size={14} stroke={2.2} /> 대화하기
                </button>
              </div>
            )}
          </div>
        </div>

        {/* 2. 3분 개념 */}
        <div className="crs-sec">
          <div className="crs-sec-label"><span className="crs-dot" /> 3분 개념</div>
          <div className="crs-lead">{s.lead}</div>
          <ul className="crs-points">
            {s.points.map((p, i) => <li key={i}>{p}</li>)}
          </ul>
          <div className="crs-message">“{s.message}”</div>
        </div>

        {/* 3. 핵심 구절 */}
        <div className="crs-sec">
          <div className="crs-sec-label"><span className="crs-dot" /> 핵심 구절</div>
          <div className="crs-verse">
            <div className="crs-verse-mark">“</div>
            <div className="crs-verse-text">{s.verse.text}</div>
            <div className="crs-verse-ref">— {s.verse.ref}</div>
          </div>
        </div>

        {/* 4. 쉬운 비유 */}
        <div className="crs-sec">
          <div className="crs-sec-label"><span className="crs-dot" /> 쉬운 비유</div>
          <div className="crs-analogy">
            <span className="ca-emoji">{s.analogy.emoji}</span>
            <span className="ca-text">{s.analogy.text}</span>
          </div>
        </div>

        {/* 5. 이해 퀴즈 */}
        <div className="crs-sec">
          <div className="crs-sec-label"><span className="crs-dot" /> 이해 퀴즈</div>
          <div className="crs-quiz">
            <div className="crs-quiz-q">{s.quiz.q}</div>
            <div className="crs-opts">
              {s.quiz.options.map((opt, i) => {
                const answered = picked !== null;
                const isAnswer = i === s.quiz.answer;
                const isPicked = i === picked;
                let cls = 'crs-opt';
                if (answered) {
                  if (isAnswer) cls += ' correct';
                  else if (isPicked) cls += ' wrong';
                  else cls += ' dim';
                }
                return (
                  <button key={i} className={cls} disabled={answered} onClick={() => setPicked(i)}>
                    <span className="co-mark">{answered && isAnswer ? '✓' : answered && isPicked ? '✕' : String.fromCharCode(65 + i)}</span>
                    <span>{opt}</span>
                  </button>
                );
              })}
            </div>
            {picked !== null && <div className="crs-quiz-explain">{s.quiz.explain}</div>}
          </div>
        </div>

        {/* 6. 기도노트 / 감사노트 질문 */}
        <div className="crs-sec">
          <div className="crs-sec-label"><span className="crs-dot" /> 기도노트 · 감사노트</div>
          <div className="crs-notes">
            <div className="crs-note prayer">
              <div className="crs-note-label">🙏 기도노트 질문</div>
              <div className="crs-note-q">{s.prayerQ}</div>
              <button className="crs-note-go" onClick={() => onLog && onLog({ type: 'prayer', hint: s.prayerQ, title: `[${s.title}] 기도` })}>기록하러 가기 <Icon name="chev-right" size={15} stroke={2.2} /></button>
            </div>
            <div className="crs-note thanks">
              <div className="crs-note-label">💛 감사노트 질문</div>
              <div className="crs-note-q">{s.thanksQ}</div>
              <button className="crs-note-go" onClick={() => onLog && onLog({ type: 'thanks', hint: s.thanksQ, title: `[${s.title}] 감사` })}>기록하러 가기 <Icon name="chev-right" size={15} stroke={2.2} /></button>
            </div>
          </div>
        </div>

        {/* 7. 오늘의 실천 */}
        <div className="crs-sec">
          <div className="crs-sec-label"><span className="crs-dot" /> 오늘의 실천 미션</div>
          <div className="crs-mission">
            <span className="cm-emoji">✅</span>
            <span className="cm-body">
              <span className="cm-label">오늘 하루 안에</span>
              <span className="cm-text">{s.mission}</span>
            </span>
          </div>
        </div>

        {/* 완료 + 이동 */}
        <button className={`crs-complete ${done ? 'is-done' : ''}`} onClick={complete}>
          {done ? '✓ 학습 완료됨 · 다시 진행 중으로' : '학습 완료하기 · +15 XP'}
        </button>
        <div className="crs-nav">
          <button disabled={!prev} onClick={() => prev && onOpenSession(prev.id)}>
            <Icon name="chev-left" size={16} stroke={2.2} /> 이전
          </button>
          <button disabled={!next} onClick={() => next && onOpenSession(next.id)}>
            다음 <Icon name="chev-right" size={16} stroke={2.2} />
          </button>
        </div>
      </div>
    </>
  );
}
window.CourseSessionScreen = CourseSessionScreen;
