body {
  font-family: sans-serif;
  max-width: 800px;
  margin: auto;
  padding: 1rem;
}

h1 {
  text-align: center;
  color: #333;
  margin-bottom: 2rem;
}

h2 {
  color: #555;
  margin-bottom: 1.5rem;
}

/* 단계별 표시/숨김 처리 */
.step {
  display: none;
  margin-bottom: 2rem;
}

.step.active {
  display: block;
}

/* Step 1: 일기 작성 */
#diary {
  width: 100%;
  height: 200px;
  margin-bottom: 1rem;
  padding: 1rem;
  border: 2px solid #ddd;
  border-radius: 8px;
  font-size: 16px;
  resize: vertical;
}

#generateBtn {
  padding: 0.75rem 1.5rem;
  background-color: #4CAF50;
  color: white;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  font-size: 16px;
  font-weight: bold;
}

#generateBtn:hover {
  background-color: #45a049;
}

/* Step 2: 무드 태그와 플레이리스트 */
#moodTags {
  margin-bottom: 1.5rem;
}

.mood-tag {
  display: inline-block;
  background-color: #e3f2fd;
  color: #1976d2;
  padding: 0.5rem 1rem;
  margin: 0.25rem;
  border-radius: 20px;
  font-size: 14px;
  font-weight: 500;
}

#playlistPreview {
  margin-bottom: 1.5rem;
}

.track {
  padding: 1rem;
  margin-bottom: 0.5rem;
  border: 1px solid #ddd;
  border-radius: 8px;
  background-color: #f9f9f9;
}

.track-title {
  font-weight: bold;
  color: #333;
  margin-bottom: 0.25rem;
}

.track-artist {
  color: #666;
  font-size: 14px;
}

.track-link {
  color: #1976d2;
  text-decoration: none;
  font-size: 14px;
}

.track-link:hover {
  text-decoration: underline;
}

/* Step 3: 디지털카드 */
#jsonPreview {
  background-color: #f5f5f5;
  border: 1px solid #ddd;
  border-radius: 8px;
  padding: 1rem;
  margin-bottom: 1.5rem;
  max-height: 400px;
  overflow-y: auto;
}

#jsonPreview pre {
  margin: 0;
  white-space: pre-wrap;
  word-wrap: break-word;
  font-family: 'Courier New', monospace;
  font-size: 14px;
  line-height: 1.4;
}

/* 버튼 스타일 */
button {
  padding: 0.75rem 1.5rem;
  margin: 0.5rem;
  border: none;
  border-radius: 5px;
  cursor: pointer;
  font-size: 14px;
  font-weight: 500;
}

#viewCardBtn {
  background-color: #2196F3;
  color: white;
}

#viewCardBtn:hover {
  background-color: #1976d2;
}

#downloadBtn {
  background-color: #FF9800;
  color: white;
}

#downloadBtn:hover {
  background-color: #F57C00;
}

#backToStep1Btn, #backToStep2Btn {
  background-color: #757575;
  color: white;
}

#backToStep1Btn:hover, #backToStep2Btn:hover {
  background-color: #616161;
}
  
  textarea {
    width: 100%;
    height: 150px;
    margin-bottom: 1rem;
  }
  
  button {
    padding: 0.5rem 1rem;
    background-color: royalblue;
    color: white;
    border: none;
    cursor: pointer;
  }
  
  #playlist {
    margin-top: 2rem;
  }
  
  .track {
    padding: 0.5rem;
    border-bottom: 1px solid #ddd;
  }

  