// 하루결 — 응원 메시지 풀 + 하루 1회 모달 + 목표 설정 + 완료 칭찬

// ════════════════════════════════════════════════════════════
// 응원 메시지
// ════════════════════════════════════════════════════════════

const ENCOURAGEMENTS = [
  { e: '오늘도', t: '천천히 가도 괜찮아요',          s: '한 걸음씩, 그대로의 속도로.' },
  { e: '하루',  t: '몸이 보내는 신호에 귀 기울이세요', s: '쉬는 것도 치료의 일부예요.' },
  { e: '오늘',  t: '잘 버텨낸 어제의 당신을 칭찬해요', s: '지금 이 자리에 있다는 것만으로 충분합니다.' },
  { e: '오늘은', t: '작은 한 끼,\n작은 한 잔의 물',    s: '그것만으로도 오늘은 잘하고 있어요.' },
  { e: '지금',  t: '아픈 것을 참지 않아도 돼요',      s: '힘들 때는 힘들다고 말해도 괜찮아요.' },
  { e: '오늘도', t: '치료 중인 당신이 가장 용감해요',  s: '평범한 하루를 살아내는 것도 큰 일.' },
  { e: '하루',  t: '울고 싶을 때는 울어도 돼요',     s: '감정을 지나가게 두는 것도 회복이에요.' },
  { e: '오늘',  t: '한 가지만 해도 충분해요',         s: '오늘의 목표는 \'살아내기\'.' },
  { e: '내일은', t: '오늘보다 0.1%만 나아도 좋아요',   s: '회복은 직선이 아니라 곡선.' },
  { e: '오늘도', t: '당신의 이야기를 들어줄 사람이 있어요', s: '혼자라고 느낄 때 보호자·진료팀·1577-8899(자살예방).' },
  { e: '하루',  t: '몸에 좋은 한 가지를 챙겨주세요',   s: '미지근한 물 한 잔, 짧은 산책, 깊은 숨.' },
  { e: '오늘은', t: '\'할 수 있다\'가 아니어도 돼요',  s: '\'있는 그대로 있다\'가 오늘의 정답.' },
  { e: '지금',  t: '오늘 잘 못한 것은 잊어도 좋아요', s: '내일 다시 시작할 수 있어요.' },
  { e: '오늘',  t: '작은 기쁨 하나를 찾아보세요',     s: '커피 한 잔, 햇살, 좋아하는 노래.' },
  { e: '하루',  t: '몸과 마음을 동시에 보살펴주세요',  s: '둘은 늘 함께 가니까요.' },
  { e: '오늘도', t: '치료 횟수를 세어보지 않아도 돼요', s: '오늘만, 이번 한 번만 잘 보내요.' },
  { e: '하루',  t: '잘 자는 것도 회복이에요',          s: '낮잠은 죄책감 없이.' },
  { e: '지금',  t: '주변에 도움을 청하는 건 약함이 아니에요', s: '도움은 사랑의 다른 이름.' },
  { e: '오늘',  t: '몸이 \'쉬자\'고 하면 쉬어주세요',   s: '오늘은 그것이 가장 옳은 결정.' },
  { e: '하루',  t: '당신은 잘하고 있어요',             s: '여기까지 온 것만으로도.' },
  { e: '오늘은', t: '한 끼라도 따뜻하게 챙겨주세요',    s: '천천히 씹는 일도 회복의 일부.' },
  { e: '지금',  t: '회복은 보이지 않게 진행 중이에요',  s: '오늘 안에서도 변화가 있어요.' },
  { e: '오늘도', t: '두렵다고 말해도 괜찮아요',         s: '두려움은 약함이 아니라 솔직함.' },
  { e: '오늘은', t: '나에게 가장 다정해지는 날',       s: '거울 속 나에게 한마디만.' },
  { e: '하루',  t: '몸의 변화를 인내하는 당신이 멋져요', s: '머리카락도, 입맛도, 다시 돌아옵니다.' },
  { e: '오늘',  t: '내일을 계획하지 않아도 돼요',      s: '지금 이 순간이면 충분해요.' },
  { e: '지금',  t: '진료팀이 당신을 보고 있어요',      s: '혼자가 아닙니다.' },
  { e: '오늘도', t: '꼭 \'씩씩하게\' 보낼 필요는 없어요', s: '그저 통과만 해도 잘한 거예요.' },
  { e: '하루',  t: '몸을 가볍게 만져주세요',           s: '어깨, 손등, 발등 — 모두 수고했어요.' },
  { e: '오늘은', t: '나에게 \'잘했다\' 한마디',         s: '아무도 안 해도, 제가 합니다.' },
];

function getTodayEncouragement() {
  // 오늘 날짜를 시드로 일정한 메시지 반환
  const today = todayISO();
  const seed = today.split('-').reduce((a, b) => a + parseInt(b, 10), 0);
  return ENCOURAGEMENTS[seed % ENCOURAGEMENTS.length];
}

function EncouragementModal({ onClose }) {
  // 사용자의 기수에 맞춘 응원 메시지 우선
  const profile = (() => { try { return JSON.parse(localStorage.getItem('haru:profile')) || {}; } catch { return {}; } })();
  const msg = (typeof getStageEncouragement === 'function' && profile.stage)
    ? getStageEncouragement(profile.stage)
    : getTodayEncouragement();
  return (
    <div className="hg-overlay" onClick={(e) => { if (e.target.classList.contains('hg-overlay')) onClose(); }}>
      <div style={{
        width: 'calc(100% - 40px)', maxWidth: 360,
        background: 'var(--hg-surface-2)',
        borderRadius: 28,
        padding: '32px 26px 24px',
        boxShadow: '0 20px 60px rgba(0,0,0,0.3)',
        position: 'relative', overflow: 'hidden',
        margin: 'auto',
      }}>
        {/* 배경 장식 */}
        <div style={{
          position: 'absolute', top: -40, right: -40,
          width: 140, height: 140, borderRadius: '50%',
          background: 'var(--hg-clay-tint)', opacity: 0.7,
        }}/>
        <div style={{
          position: 'absolute', bottom: -60, left: -60,
          width: 180, height: 180, borderRadius: '50%',
          background: 'var(--hg-honey-tint)', opacity: 0.5,
        }}/>

        <div style={{ position: 'relative', textAlign: 'center' }}>
          {/* 일러스트 */}
          <div style={{
            width: 64, height: 64, borderRadius: '50%',
            background: 'linear-gradient(135deg, var(--hg-clay), var(--hg-honey))',
            display: 'grid', placeItems: 'center', margin: '0 auto 18px',
            boxShadow: '0 8px 24px rgba(181,117,90,0.32)',
          }}>
            <svg width="32" height="32" viewBox="0 0 32 32" fill="none">
              <path d="M16 22s-9-5-9-12c0-2.5 2-4 4-4 2 0 4 1 5 3 1-2 3-3 5-3 2 0 4 1.5 4 4 0 7-9 12-9 12z" fill="#fff"/>
            </svg>
          </div>

          <div style={{ fontSize: 11, fontWeight: 700, color: 'var(--hg-clay)', letterSpacing: '0.1em', textTransform: 'uppercase', marginBottom: 10 }}>
            {msg.e}
          </div>
          <div className="hg-serif" style={{ fontSize: 22, fontWeight: 500, letterSpacing: '-0.02em', lineHeight: 1.35, color: 'var(--hg-ink)', whiteSpace: 'pre-line', marginBottom: 14 }}>
            {msg.t}
          </div>
          <div style={{ fontSize: 13, color: 'var(--hg-ink-2)', fontWeight: 500, lineHeight: 1.7 }}>
            {msg.s}
          </div>

          <button onClick={onClose} style={{
            marginTop: 24, width: '100%', minHeight: 50,
            background: 'var(--hg-clay)', color: '#fff',
            fontSize: 14, fontWeight: 700,
            borderRadius: 14,
            boxShadow: '0 6px 16px rgba(181,117,90,0.28)',
          }}>오늘도 시작</button>
        </div>
      </div>
    </div>
  );
}

// ════════════════════════════════════════════════════════════
// 목표 카탈로그 (예시)
// ════════════════════════════════════════════════════════════
const GOAL_TEMPLATES = [
  { title: '오늘 미지근한 물 6잔 마시기',  cat: '몸',   period: 'daily',  icon: '💧' },
  { title: '오늘 단백질 한 끼 챙기기',     cat: '식사', period: 'daily',  icon: '🥚' },
  { title: '오늘 10분 산책하기',           cat: '운동', period: 'daily',  icon: '🚶' },
  { title: '오늘 호흡 이완 5분',           cat: '마음', period: 'daily',  icon: '🌿' },
  { title: '오늘 증상 한 줄 기록',         cat: '진료', period: 'daily',  icon: '✏️' },
  { title: '이번 주 7일 식단 계획 보기',   cat: '식사', period: 'weekly', icon: '📅' },
  { title: '이번 주 운동 5일 채우기',       cat: '운동', period: 'weekly', icon: '🌱' },
  { title: '다음 진료 전 질문 3개 정리',   cat: '진료', period: 'cycle',  icon: '🧾' },
  { title: '이번 주기 검사 결과 확인',     cat: '진료', period: 'cycle',  icon: '🔬' },
  { title: '이번 주 좋아하는 일 한 가지',  cat: '마음', period: 'weekly', icon: '☕' },
];

const PRAISE_MESSAGES = [
  { t: '잘했어요',         s: '오늘 하나를 더 챙긴 당신이 자랑스러워요.' },
  { t: '대단해요',         s: '이 작은 한 걸음이 회복으로 이어집니다.' },
  { t: '훌륭해요',         s: '몸에게 좋은 일을 해주셨네요.' },
  { t: '고마워요',         s: '나 자신을 챙긴 당신께, 박수.' },
  { t: '오늘의 영웅',     s: '치료 중인 당신이 가장 용감해요.' },
  { t: '천천히 그러나 꾸준히', s: '작은 완료가 모여 회복이 됩니다.' },
];

function getPraise(seed) {
  return PRAISE_MESSAGES[(seed || 0) % PRAISE_MESSAGES.length];
}

Object.assign(window, { ENCOURAGEMENTS, getTodayEncouragement, EncouragementModal, GOAL_TEMPLATES, PRAISE_MESSAGES, getPraise });
