/**
 * 약관(Terms) 페이지 공통 스타일
 * - Privacy Policy, Pharmacovigilance Policy, Cookie Policy 등
 * - .contactus .termsWrap .termsBody 구조 기준
 */

/* 목록(ul/li) - 불릿+텍스트 통째로 한 탭 들여쓰기 */
.contactus .termsWrap .termsBody ul {
    display: block !important;
    margin: 1rem 0;
    padding-left: 3.5rem;
    font-size: 1rem !important;
    list-style: disc !important;
}

.contactus .termsWrap .termsBody ul li {
    display: list-item !important;
    margin-bottom: 0.5rem;
    font-size: 1rem !important;
    line-height: 1.6;
    color: #333;
    list-style: inherit;
}

.contactus .termsWrap .termsBody ul li p {
    margin: 0.25rem 0;
}

/* 순서 목록(ol/li) - 1) 2) 형식, 넘버+텍스트 통째로 한 탭 들여쓰기 */
.contactus .termsWrap .termsBody ol {
    counter-reset: terms-ol;
    display: block !important;
    margin: 1rem 0;
    padding-left: 2rem;
    font-size: 1rem !important;
    list-style: none !important;
}

.contactus .termsWrap .termsBody ol li {
    counter-increment: terms-ol;
    display: block !important;
    margin-bottom: 0.5rem;
    padding-left: 2rem;
    font-size: 1rem !important;
    line-height: 1.6;
    color: #333;
    list-style: none !important;
    position: relative;
}

.contactus .termsWrap .termsBody ol li::before {
    content: counter(terms-ol) ") ";
    position: absolute;
    left: 0;
    font-weight: 500;
}

.contactus .termsWrap .termsBody ol li p {
    margin: 0.25rem 0;
}

/* 테이블 글씨 16px로 통일 */
.contactus .termsWrap .termsBody table thead th,
.contactus .termsWrap .termsBody table tbody td {
    font-size: 1rem !important;
}

/*
 * Terms 공통 테이블 — min-width 700px, 영역보다 좁으면 테이블만 가로 스크롤
 * (본문 HTML은 DB utext)
 */
#wrapper:has(.contactus .termsWrap) {
    overflow-x: visible;
}

.contactus .termsWrap,
.contactus .termsWrap .termsBody,
.contactus .contentsWrap,
.contactus .contentsBody {
    max-width: 100%;
    min-width: 0;
    box-sizing: border-box;
}

.contactus .termsWrap .termsBody table {
    display: block !important;
    width: 100%;
    max-width: 100%;
    margin: 2rem 0 !important;
    overflow-x: auto;
    -webkit-overflow-scrolling: touch;
    border-collapse: separate;
    border-spacing: 0;
    table-layout: auto !important;
    word-break: normal;
}

.contactus .termsWrap .termsBody table thead,
.contactus .termsWrap .termsBody table tbody,
.contactus .termsWrap .termsBody table tfoot {
    display: table !important;
    width: 100%;
    min-width: 700px;
    table-layout: auto !important;
    border-collapse: collapse;
}

.contactus .termsWrap .termsBody table tr {
    display: table-row !important;
}

.contactus .termsWrap .termsBody table th,
.contactus .termsWrap .termsBody table td {
    display: table-cell !important;
    width: auto !important;
    word-break: normal;
    white-space: normal;
}

/* 메일/링크 파란색 밑줄 */
.contactus .termsWrap .termsBody a {
    color: #0066cc;
    text-decoration: underline;
}

.contactus .termsWrap .termsBody a:hover {
    color: #004499;
}

/* Pharmacovigilance - 아래 작은 탭 제거, 위 큰 제목만 표시 */
.contactus.pg_pharmacovigilance .innerContentsWrap:first-of-type .contentsBody {
    display: none;
}

/* Pharmacovigilance - 제목과 본문 사이 간격 */
.contactus.pg_pharmacovigilance .termsWrap .termsBody {
    margin-top: 4rem;
}

/* Politique de confidentialité (/terms/privacy-policy) - 테이블만 왼쪽 정렬 */
.contactus.pg-privacy-policy .termsWrap .termsBody table thead th,
.contactus.pg-privacy-policy .termsWrap .termsBody table tbody td {
    text-align: left !important;
}

/* Speak-Up Policy (/terms/speakup-policy) — 테이블 보기 */
.contactus.pg-speakup-policy .termsWrap .termsBody table thead tr {
    border-top: 0.125rem solid #111;
}

.contactus.pg-speakup-policy .termsWrap .termsBody table thead th {
    width: auto !important;
    padding: 1rem 0.75rem !important;
    font-size: 1rem !important;
    font-weight: 700 !important;
    line-height: 1.4 !important;
    color: #111 !important;
    text-align: center;
    vertical-align: middle;
    word-break: normal;
    overflow-wrap: normal;
    white-space: normal;
    background-color: #f4f4f4;
    border: 1px solid #cfcfcf;
}

.contactus.pg-speakup-policy .termsWrap .termsBody table tbody td {
    padding: 1rem 0.75rem !important;
    font-size: 1rem !important;
    line-height: 1.5 !important;
    color: #666 !important;
    text-align: center;
    vertical-align: middle;
    word-break: normal;
    overflow-wrap: break-word;
    white-space: normal;
    border: 1px solid #cfcfcf;
}

.contactus.pg-speakup-policy .termsWrap .termsBody table tbody tr:last-child td {
    border-bottom: 1px solid #cfcfcf;
}

/* Version / Date 열 — 단어·날짜 중간 줄바꿈 방지 */
.contactus.pg-speakup-policy .termsWrap .termsBody table thead th:nth-child(1),
.contactus.pg-speakup-policy .termsWrap .termsBody table thead th:nth-child(2),
.contactus.pg-speakup-policy .termsWrap .termsBody table thead th:nth-child(6),
.contactus.pg-speakup-policy .termsWrap .termsBody table thead th:nth-child(7),
.contactus.pg-speakup-policy .termsWrap .termsBody table tbody td:nth-child(1),
.contactus.pg-speakup-policy .termsWrap .termsBody table tbody td:nth-child(2),
.contactus.pg-speakup-policy .termsWrap .termsBody table tbody td:nth-child(6),
.contactus.pg-speakup-policy .termsWrap .termsBody table tbody td:nth-child(7) {
    white-space: nowrap;
}

.contactus.pg-speakup-policy .termsWrap .termsBody table thead th:nth-child(4),
.contactus.pg-speakup-policy .termsWrap .termsBody table tbody td:nth-child(4) {
    text-align: left;
    min-width: 12rem;
    white-space: normal;
}

.contactus.pg-speakup-policy .termsWrap .termsBody table thead th:nth-child(3),
.contactus.pg-speakup-policy .termsWrap .termsBody table tbody td:nth-child(3),
.contactus.pg-speakup-policy .termsWrap .termsBody table thead th:nth-child(5),
.contactus.pg-speakup-policy .termsWrap .termsBody table tbody td:nth-child(5) {
    min-width: 9rem;
    white-space: normal;
}
