/* ==================================================
   구인공고 상세페이지(PC 에디터) 본문
   - .job-editor-content : 에디터 밖 출력(PC·모바일 상세, 모바일 읽기 전용, 관리자 보기)
   - .job-detail-editor  : Quill 편집 영역(PC 등록, 관리자 수정)
   Quill 이 붙이는 ql-align-* / ql-size-* / ql-indent-* 클래스를 에디터 밖에서도 재현한다.
================================================== */

.job-editor-content {
  font-size: 15px;
  line-height: 1.7;
  color: inherit;
  word-break: keep-all;
  overflow-wrap: anywhere;
}

.job-editor-content > :first-child { margin-top: 0; }
.job-editor-content > :last-child { margin-bottom: 0; }

.job-editor-content p { margin: 0; }
.job-editor-content h2 { margin: 16px 0 8px; font-size: 20px; font-weight: 700; line-height: 1.4; }
.job-editor-content h3 { margin: 14px 0 6px; font-size: 17px; font-weight: 700; line-height: 1.4; }
.job-editor-content ul,
.job-editor-content ol { margin: 6px 0; padding-left: 1.5em; }
.job-editor-content ul { list-style: disc; }
.job-editor-content ol { list-style: decimal; }
.job-editor-content blockquote { margin: 8px 0; padding-left: 12px; border-left: 3px solid #d1d5db; }
.job-editor-content a { color: #2563eb; text-decoration: underline; }

/* 상세 이미지: 가로를 컨테이너에 맞추고 이미지 사이 여백을 없앤다(여러 장을 이어 붙인 상세페이지용). */
.job-editor-content img {
  display: block;
  max-width: 100%;
  height: auto;
  margin: 0 auto;
}

.job-editor-content .ql-align-center { text-align: center; }
.job-editor-content .ql-align-right { text-align: right; }
.job-editor-content .ql-align-justify { text-align: justify; }
.job-editor-content .ql-size-small { font-size: 0.75em; }
.job-editor-content .ql-size-large { font-size: 1.5em; }
.job-editor-content .ql-size-huge { font-size: 2.5em; }
.job-editor-content .ql-indent-1 { padding-left: 3em; }
.job-editor-content .ql-indent-2 { padding-left: 6em; }
.job-editor-content .ql-indent-3 { padding-left: 9em; }
.job-editor-content li.ql-indent-1 { margin-left: 1.5em; padding-left: 0; }
.job-editor-content li.ql-indent-2 { margin-left: 3em; padding-left: 0; }
.job-editor-content li.ql-indent-3 { margin-left: 4.5em; padding-left: 0; }

/* ---------- 편집 영역 ---------- */
.job-detail-editor-wrap .ql-toolbar.ql-snow {
  border-radius: 8px 8px 0 0;
  border-color: #d1d5db;
}

.job-detail-editor-wrap .ql-container.ql-snow {
  border-radius: 0 0 8px 8px;
  border-color: #d1d5db;
  font-family: inherit;
  font-size: 15px;
}

.job-detail-editor-wrap .ql-editor {
  min-height: 320px;
  max-height: 720px;
  overflow-y: auto;
  line-height: 1.7;
}

.job-detail-editor-wrap .ql-editor img {
  display: block;
  max-width: 100%;
  height: auto;
}

.job-detail-editor.is-uploading {
  opacity: 0.6;
  pointer-events: none;
}

.job-detail-editor-help {
  margin: 8px 0 0;
  font-size: 13px;
  color: #6b7280;
}

/* ---------- 모바일 읽기 전용 ---------- */
.job-editor-readonly__notice {
  display: flex;
  align-items: center;
  gap: 6px;
  margin: 0 0 12px;
  padding: 10px 12px;
  border-radius: 8px;
  background: #f3f4f6;
  font-size: 13px;
  line-height: 1.5;
  color: #4b5563;
}

.job-editor-readonly__body {
  position: relative;
  max-height: 480px;
  overflow: hidden;
}

.job-editor-readonly__body.is-expanded {
  max-height: none;
}

.job-editor-readonly__body:not(.is-expanded):not(.is-short)::after {
  content: '';
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 64px;
  background: linear-gradient(rgba(255, 255, 255, 0), #fff);
}

.job-editor-readonly__more {
  display: block;
  width: 100%;
  margin-top: 8px;
  padding: 10px 0;
  border: 1px solid #e5e7eb;
  border-radius: 8px;
  background: #fff;
  font-size: 14px;
  color: #374151;
}
