#soap-app {
  max-width: 900px;
  margin: 20px auto;
  font-family: Arial, sans-serif;
}

/* =========================
   버튼 영역
========================= */
.controls {
  margin-bottom: 8px;
}

.controls button,
#convertBtn {
  margin: 5px 5px 0 0;
  padding: 10px 18px;
  font-size: 15px;
  cursor: pointer;
  background: #0073aa;
  color: white;
  border: none;
  border-radius: 4px;
}

.controls button:hover,
#convertBtn:hover {
  background: #005177;
}

#convertBtn:disabled {
  background: #ccc;
  cursor: not-allowed;
}

/* =========================
   상태 표시
========================= */
.status-text,
.loading-text {
  margin-top: 6px;
  font-weight: bold;
  font-size: 14px;
  min-height: 20px;
}

/* =========================
   대화 로그 영역
========================= */
#conversationLog {
  height: 220px;
  border: 1px solid #ccc;
  padding: 10px;
  overflow-y: auto;
  margin: 10px 0 15px 0;
  background: #f9f9f9;
  line-height: 1.6;
}

#conversationLog .conversation-entry {
  margin-bottom: 8px;
  padding: 6px;
  background: white;
  border-left: 3px solid #0073aa;
  border-radius: 3px;
}

/* =========================
   SOAP 결과 영역
========================= */
.soap-result {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: 12px;
  margin-top: 10px;
}

.soap-result h3 {
  margin: 0 0 8px 0;
  font-size: 15px;
  color: #333;
  padding-bottom: 4px;
  border-bottom: 2px solid #0073aa;
}

.soap-result textarea {
  width: 100%;
  height: 120px;
  resize: vertical;
  font-size: 14px;
  padding: 8px;
  border: 1px solid #ccc;
  border-radius: 4px;
  font-family: inherit;
}

.soap-result textarea:focus {
  outline: none;
  border-color: #0073aa;
  box-shadow: 0 0 0 1px #0073aa;
}

/* =========================
   모바일 대응
========================= */
@media (max-width: 768px) {
  .soap-result {
    grid-template-columns: 1fr;
  }
  
  .controls button,
  #convertBtn {
    width: 100%;
    margin-bottom: 6px;
  }
  
  #conversationLog {
    height: 180px;
  }
}
