@charset "utf-8";

/* 신고센터 */
.report-sub { --report-border-color: #666666; --report-line-color: #cccccc; --report-tab-active-text-color: var(--primary-color); --report-tab-active-border: var(--primary-color); --report-tab-underline-height: 5px; --report-tab-underline-width: 100%; --report-tab-height: 64px; --report-tab-gap: 70px; color: var(--font-color); padding-top: 100px; padding-bottom: 188px; }

/* 서브 비주얼 */
.sub-hero.sub-hero--report { background-color: #2a3540; background-image: url("/resources/images/common/sub_visual_report.jpg"); }

/* 본문 상단 */
.report-sub__intro { margin-bottom: 55px; }
.report-sub__tabs { margin-bottom: 55px; }

/* 1차 탭 */
.report-sub .tab-line { display: flex; flex-wrap: nowrap; justify-content: center; align-items: stretch; gap: var(--report-tab-gap); box-sizing: border-box; height: var(--report-tab-height); margin: 0; padding: 0; list-style: none; border-top: 1px solid var(--report-border-color); border-bottom: 1px solid var(--report-border-color); }
.report-sub .tab-line__item { margin: 0; flex-shrink: 0; display: flex; align-items: stretch; min-height: 0; height: auto; align-self: stretch; }
.report-sub .tab-line__link { box-sizing: border-box; position: relative; align-self: stretch; display: flex; align-items: center; justify-content: center; height: 100%; min-height: 0; padding: 0; font-size: var(--font-size-ui); font-weight: 500; color: var(--font-color); white-space: nowrap; transition: color 0.2s, border-color 0.2s; }
.report-sub .tab-line__link.is-active { font-weight: 700; color: var(--report-tab-active-text-color); }
.report-sub .tab-line__link.is-active::after { content: ''; position: absolute; left: 0; right: 0; bottom: 0; width: auto; height: var(--report-tab-underline-height); background-color: var(--report-tab-active-border); transform: none; }
.report-tab-line-wrap { overflow-x: auto; overflow-y: hidden; margin-left: calc(-1 * var(--inner-padding-x)); margin-right: calc(-1 * var(--inner-padding-x)); padding-left: var(--inner-padding-x); padding-right: var(--inner-padding-x); -webkit-overflow-scrolling: touch; scrollbar-width: none; -ms-overflow-style: none; }
.report-tab-line-wrap::-webkit-scrollbar { height: 0; }
.report-tab-line-wrap .tab-line { width: 100%; min-width: min-content; }

/* 콘텐츠 */
.report-section { margin-bottom: 55px; }
.report-section:last-child { margin-bottom: 0; }
.report-section__title { margin: 0 0 20px; font-size: var(--fs-32); font-weight: 700; line-height: 1.35; color: #000000; }
.report-bullets { margin: 0; padding-left: 0; list-style: none; font-size: var(--font-size-body); font-weight: 400; line-height: 1.7; color: #000000; }
.report-bullets > li { position: relative; padding-left: 14px; }
.report-bullets > li::before { content: ''; position: absolute; left: 0; top: 0.82em; width: 4px; height: 4px; background-color: #000000; transform: translateY(-50%); }
.report-bullets > li + li { margin-top: 0.25rem; }
.report-bullets--spaced { margin-top: 20px; }
.report-bullets ul { margin: 0.25rem 0 0; padding-left: 0; list-style: none; }
.report-bullets ul li { position: relative; padding-left: 14px; color: #666666; }
.report-bullets ul li::before { content: '-'; position: absolute; left: 0; top: 0; width: auto; height: auto; color: #666666; background: none; transform: none; }

/* 갑질행위/직장 내 괴롭힘·성희롱/공정거래/영업비밀침해 신고 전용 — 신분 보호 영역 타이포/리스트 */
.report-sub--power-abuse .report-power-abuse__protect-title, .report-sub--harassment .report-power-abuse__protect-title, .report-sub--fair-trade .report-power-abuse__protect-title, .report-sub--trade-secret .report-power-abuse__protect-title { display: block; margin: 0 0 6px; font-size: 20px; font-weight: 700; line-height: 1.35; color: #000000; }
.report-sub--power-abuse .report-power-abuse__protect-spaced, .report-sub--harassment .report-power-abuse__protect-spaced, .report-sub--fair-trade .report-power-abuse__protect-spaced, .report-sub--trade-secret .report-power-abuse__protect-spaced { margin-top: 30px; }
.report-sub--power-abuse .report-power-abuse__protect > li, .report-sub--harassment .report-power-abuse__protect > li, .report-sub--fair-trade .report-power-abuse__protect > li, .report-sub--trade-secret .report-power-abuse__protect > li { padding-left: 0; }
.report-sub--power-abuse .report-power-abuse__protect > li::before, .report-sub--harassment .report-power-abuse__protect > li::before, .report-sub--fair-trade .report-power-abuse__protect > li::before, .report-sub--trade-secret .report-power-abuse__protect > li::before { content: none; }
.report-sub--power-abuse .report-power-abuse__protect > li > ul > li, .report-sub--harassment .report-power-abuse__protect > li > ul > li, .report-sub--fair-trade .report-power-abuse__protect > li > ul > li, .report-sub--trade-secret .report-power-abuse__protect > li > ul > li { color: #000000; }
.report-sub--power-abuse .report-power-abuse__protect > li > ul > li::before, .report-sub--harassment .report-power-abuse__protect > li > ul > li::before, .report-sub--fair-trade .report-power-abuse__protect > li > ul > li::before, .report-sub--trade-secret .report-power-abuse__protect > li > ul > li::before { content: ''; position: absolute; left: 0; top: 0.82em; width: 4px; height: 4px; background-color: #000000; transform: translateY(-50%); }
.report-sub--power-abuse .report-power-abuse__protect > li > ul > li > ul > li, .report-sub--harassment .report-power-abuse__protect > li > ul > li > ul > li, .report-sub--fair-trade .report-power-abuse__protect > li > ul > li > ul > li, .report-sub--trade-secret .report-power-abuse__protect > li > ul > li > ul > li { color: #666666; }
.report-sub--power-abuse .report-power-abuse__protect > li > ul > li > ul > li::before, .report-sub--harassment .report-power-abuse__protect > li > ul > li > ul > li::before, .report-sub--fair-trade .report-power-abuse__protect > li > ul > li > ul > li::before, .report-sub--trade-secret .report-power-abuse__protect > li > ul > li > ul > li::before { content: '-'; position: absolute; left: 0; top: 0; width: auto; height: auto; color: #666666; background: none; transform: none; }
.report-sub--power-abuse .report-power-abuse__protect > li > ul > li, .report-sub--harassment .report-power-abuse__protect > li > ul > li, .report-sub--fair-trade .report-power-abuse__protect > li > ul > li, .report-sub--trade-secret .report-power-abuse__protect > li > ul > li,
.report-sub--power-abuse .report-power-abuse__protect > li > ul > li > ul > li, .report-sub--harassment .report-power-abuse__protect > li > ul > li > ul > li, .report-sub--fair-trade .report-power-abuse__protect > li > ul > li > ul > li, .report-sub--trade-secret .report-power-abuse__protect > li > ul > li > ul > li { padding-left: 14px; }
.report-sub--power-abuse .report-bullets .report-power-abuse__dotlist, .report-sub--harassment .report-bullets .report-power-abuse__dotlist, .report-sub--fair-trade .report-bullets .report-power-abuse__dotlist, .report-sub--trade-secret .report-bullets .report-power-abuse__dotlist { margin: 0.25rem 0 0; padding-left: 0; list-style: none; }
.report-sub--power-abuse .report-bullets .report-power-abuse__dotlist > li, .report-sub--harassment .report-bullets .report-power-abuse__dotlist > li, .report-sub--fair-trade .report-bullets .report-power-abuse__dotlist > li, .report-sub--trade-secret .report-bullets .report-power-abuse__dotlist > li { position: relative; padding-left: 14px; color: #000000; }
.report-sub--power-abuse .report-bullets .report-power-abuse__dotlist > li::before, .report-sub--harassment .report-bullets .report-power-abuse__dotlist > li::before, .report-sub--fair-trade .report-bullets .report-power-abuse__dotlist > li::before, .report-sub--trade-secret .report-bullets .report-power-abuse__dotlist > li::before { content: ''; position: absolute; left: 0; top: 0.82em; width: 4px; height: 4px; background-color: #000000; transform: translateY(-50%); }

/* 공정거래 신고(fair_trade_form.jsp, fair_trade_form_02.jsp) 전용 — 센터 구분 */
.report-sub--fair-trade .report-fair-trade__center { display: flex; align-items: stretch; min-height: 72px; border-bottom: 1px solid var(--report-line-color); }
.report-sub--fair-trade .report-fair-trade__center-label { flex: 0 0 280px; box-sizing: border-box; display: flex; align-items: center; margin: 0; padding: 16px 12px 16px 30px; font-size: var(--font-size-body); font-weight: 500; line-height: 1.4; color: #000000; background-color: #f5fbff; }
.report-sub--fair-trade .report-fair-trade__center-content { flex: 1 1 auto; display: flex; flex-direction: column; justify-content: center; gap: 0; min-width: 0; padding: 16px 20px; }
.report-sub--fair-trade .report-fair-trade__center-content .report-form-radios { gap: 20px 28px; }
.report-sub--fair-trade .report-fair-trade__center-note { margin: 0; padding-left: 28px; font-size: var(--fs-14); font-weight: 400; line-height: 1.5; color: #005891; }

/* 공정거래 결과확인(fair_trade_result.jsp) 전용 — 접수 구분 익명 숨김 */
.report-sub--fair-trade.is-fair-trade-counseling .report-fair-trade__receipt-option--anon { display: none; }

/* 영업비밀침해 신고(trade_secret_info.jsp) 전용 — 신고대상 행위 블릿/각주 */
.report-sub--trade-secret .report-trade-secret__mark { color: #005891; }
.report-sub--trade-secret #report-target-title + .report-bullets > li:nth-child(2) > ul > li { padding-left: 0; color: #666666; }
.report-sub--trade-secret #report-target-title + .report-bullets > li:nth-child(2) > ul > li::before { content: none; }
.report-sub--trade-secret .report-trade-secret__footnote { margin: 20px 0 0; font-size: var(--fs-14); font-weight: 400; line-height: 1.65; color: #000000; }
.report-sub--trade-secret .report-trade-secret__footnote strong { font-weight: 700; color: #000000; }

/* 일반인권침해 신고(human_rights_info.jsp) 전용 — 신고대상 행위 번호/블릿 */
.report-sub--human-rights .report-human-rights__intro { margin: 0 0 0; font-size: var(--font-size-body); font-weight: 400; line-height: 1.7; color: #000000; }
.report-sub--human-rights .report-human-rights__targets > li { padding-left: 0; }
.report-sub--human-rights .report-human-rights__targets > li::before { content: none; }
.report-sub--human-rights .report-human-rights__item-title { display: block; margin: 0 0 6px; font-size: 20px; font-weight: 700; line-height: 1.35; color: #000000; }
.report-sub--human-rights .report-human-rights__targets > li > ul > li { color: #000000; padding-left: 14px; }
.report-sub--human-rights .report-human-rights__targets > li > ul > li::before { content: ''; position: absolute; left: 0; top: 0.82em; width: 4px; height: 4px; background-color: #000000; transform: translateY(-50%); }
.report-sub--human-rights .report-human-rights__targets > li + li { margin-top: 35px; }
.report-sub--human-rights .report-human-rights__targets > li:first-child { margin-top: 55px; }
.report-sub--human-rights .report-human-rights__note { margin: 0 0 35px 0; font-size: var(--font-size-body); font-weight: 400; line-height: 1.7; color: #000000; }
.report-sub--human-rights .report-human-rights__targets--continued > li:first-child { margin-top: 0; }

/* 직장 내 괴롭힘/성희롱 신고(harassment_info.jsp) 전용 — 신고대상 행위 블릿/타이포 */
.report-sub--harassment #report-target-title + .report-bullets > li { padding-left: 0; }
.report-sub--harassment #report-target-title + .report-bullets > li::before { content: none; }
.report-sub--harassment #report-target-title + .report-bullets > li > strong { display: block; margin: 0 0 6px; font-size: 20px; font-weight: 700; line-height: 1.35; color: #000000; }
.report-sub--harassment #report-target-title + .report-bullets > li + li { margin-top: 30px; }
.report-sub--harassment #report-target-title + .report-bullets > li > ul > li { color: #000000; padding-left: 14px; }
.report-sub--harassment #report-target-title + .report-bullets > li > ul > li::before { content: ''; position: absolute; left: 0; top: 0.82em; width: 4px; height: 4px; background-color: #000000; transform: translateY(-50%); }

/* 신고 방법 표 */
.report-table-wrap { width: 100%; max-width: 100%; overflow-x: auto; -webkit-overflow-scrolling: touch; }
.report-table { width: 100%; min-width: 620px; border-collapse: collapse; border-spacing: 0; table-layout: fixed; font-size: var(--font-size-body); border-top: 1px solid var(--report-border-color); border-bottom: 1px solid var(--report-line-color); }
.report-table__col-label { width: 18%; }
.report-table__col-content { width: 82%; }
.report-table th, .report-table td { padding: 30px 20px; border-bottom: 1px solid var(--report-line-color); vertical-align: middle; color: #000000; }
.report-table td { padding: 18px 18px 18px 25px; text-align: left; }
.report-table thead th { padding-top: 18px; padding-bottom: 18px; text-align: center; font-weight: 600; background-color: #f5fbff; }
.report-table thead th:first-child { border-right: 1px solid var(--report-line-color); }
.report-table tbody th { text-align: center; font-weight: 500; background-color: #ffffff; border-right: 1px solid var(--report-line-color); }
.report-table tbody td { font-weight: 400; line-height: 1.65; }
.report-table tbody tr:last-child th, .report-table tbody tr:last-child td { border-bottom: 0; }
.report-table strong { font-weight: 700; }

/* 비윤리 신고 폼 */
.report-sub--form { --report-filter-active-bg: #0082cf; --report-filter-inactive-bg: var(--gray-100); --report-filter-inactive-color: #666666; }
.report-sub--form .report-sub__tabs { margin-bottom: 55px; }

.report-form-notice { margin-bottom: 55px; font-size: var(--font-size-body); font-weight: 400; line-height: 1.7; color: #000000; }
.report-form-notice__lead { margin: 0 0 12px; font-size: 20px; font-weight: 700; color: #000000; }
.report-form-notice__list { margin: 0; padding: 0; list-style: none; font-weight: 400; color: #000000; }
.report-form-notice__list li { position: relative; padding-left: 16px; }
.report-form-notice__list li::before { content: ''; position: absolute; left: 0; top: 0.78em; width: 4px; height: 4px; background-color: #000000; transform: translateY(-50%); }
.report-form-notice__list li + li { margin-top: 0.35rem; }

/* 실명/익명 탭 — 페이지 링크 (클릭 시 색상 변화 없음, 현재 페이지만 선택 색상) */
.report-form-type-wrap { margin-bottom: 55px; }
.report-form-type { display: flex; flex-wrap: nowrap; gap: 0; width: 560px; max-width: 100%; margin: 0; padding: 0; list-style: none; overflow: hidden; border: 1px solid #999999; }
.report-form-type > li { flex: 1 1 0; min-width: 0; }
.report-form-type__link { box-sizing: border-box; display: flex; align-items: center; justify-content: center; width: 100%; min-height: 52px; padding: 0 0.75rem; font-family: inherit; font-size: var(--font-size-ui); font-weight: 500; line-height: 1.4; color: var(--report-filter-inactive-color); background-color: var(--report-filter-inactive-bg); border: 0; border-right: 1px solid #999999; text-decoration: none; -webkit-tap-highlight-color: transparent; }
.report-form-type > li:last-child .report-form-type__link { border-right: 0; }
.report-form-type__link--current { font-weight: 700; color: var(--light-color); background-color: var(--report-filter-active-bg); cursor: default; }
.report-form-type__link:not(.report-form-type__link--current):hover,
.report-form-type__link:not(.report-form-type__link--current):active,
.report-form-type__link:not(.report-form-type__link--current):focus,
.report-form-type__link:not(.report-form-type__link--current):focus-visible,
.report-form-type__link:not(.report-form-type__link--current):visited { color: var(--report-filter-inactive-color); background-color: var(--report-filter-inactive-bg); outline: none; }
.report-form-type__link--current:hover,
.report-form-type__link--current:active,
.report-form-type__link--current:focus,
.report-form-type__link--current:focus-visible,
.report-form-type__link--current:visited { color: var(--light-color); background-color: var(--report-filter-active-bg); outline: none; }
.report-form-type__btn { box-sizing: border-box; display: flex; align-items: center; justify-content: center; width: 100%; min-height: 52px; margin: 0; padding: 0 0.75rem; font-family: inherit; font-size: var(--font-size-ui); font-weight: 500; line-height: 1.4; color: var(--report-filter-inactive-color); background-color: var(--report-filter-inactive-bg); border: 0; border-right: 1px solid #999999; cursor: pointer; -webkit-tap-highlight-color: transparent; }
.report-form-type > li:last-child .report-form-type__btn { border-right: 0; }
.report-form-type__btn.is-active { font-weight: 700; color: var(--light-color); background-color: var(--report-filter-active-bg); }
.report-form-type__btn:not(.is-active):hover,
.report-form-type__btn:not(.is-active):focus,
.report-form-type__btn:not(.is-active):focus-visible { color: var(--report-filter-inactive-color); background-color: var(--report-filter-inactive-bg); outline: none; }

/* 결과확인 — 조회 */
.report-sub--result-inquiry .report-sub__tabs { margin-bottom: 55px; }
.report-result-intro { margin: 0 0 55px; font-size: var(--font-size-body); font-weight: 400; line-height: 1.7; color: #000000; }
.report-result-intro p { margin: 0; }
.report-result-intro p + p { margin-top: 0.35rem; }
.report-sub--result-inquiry .report-form-type-wrap { margin-bottom: 55px; }
.report-result-inquiry__title { margin: 0 0 20px; font-size: 32px; font-weight: 700; line-height: 1.35; color: #000000; }
.report-sub--result-inquiry .report-result-inquiry__table { border-bottom: 2px solid #000000; }
.report-sub--result-inquiry .report-result-inquiry__submit { margin-top: 40px; }
.report-result-panel[hidden] { display: none !important; }

.report-form-guide { margin: 0 0 55px; padding: 0; list-style: none; font-size: var(--font-size-body); font-weight: 400; line-height: 1.65; color: #000000; }
.report-form-guide li { position: relative; padding-left: 16px; }
.report-form-guide li::before { content: ''; position: absolute; left: 0; top: 0.78em; width: 4px; height: 4px; background-color: #000000; transform: translateY(-50%); }
.report-form-guide li + li { margin-top: 0.35rem; }
.report-form-guide__star { color: #005891; }
.report-form-guide__highlight { font-weight: 700; color: var(--primary-color); }
.report-form-guide__emphasis { font-weight: 700; }

.report-form-table { border-top: 2px solid #000000; }
.report-form-row { display: flex; align-items: stretch; min-height: 72px; border-bottom: 1px solid var(--report-line-color); }
.report-form-row__label { flex: 0 0 280px; box-sizing: border-box; display: flex; align-items: center; justify-content: flex-start; margin: 0; padding: 16px 12px 16px 30px; font-size: var(--font-size-body); font-weight: 500; line-height: 1.4; text-align: left; color: #000000; background-color: #f5fbff; border-right: 0; }
.report-form-row__field { flex: 1 1 auto; display: flex; flex-wrap: wrap; align-items: center; gap: 8px 12px; min-width: 0; padding: 16px 20px; }
.report-form-row--textarea .report-form-row__field { align-items: flex-start; padding-top: 20px; padding-bottom: 20px; }
.report-form-row--attach .report-form-row__field { align-items: flex-start; padding-top: 18px; padding-bottom: 18px; }
.report-form-required { margin-left: 2px; color: #005891; }

.report-form-input,
.report-form-textarea { box-sizing: border-box; min-width: 0; height: 44px; margin: 0; padding: 0 14px; font-family: inherit; font-size: var(--font-size-body); font-weight: 400; color: var(--font-color); background-color: var(--light-color); border: 1px solid #999999; border-radius: 0; }

/* 일반인권침해 신고(human_rights_form.jsp) 전용 — 상담유형 셀렉트 */
.report-sub--human-rights .report-form-select-wrap { position: relative; display: inline-block; width: 38%; max-width: 420px; vertical-align: top; }
.report-sub--human-rights .report-form-select-wrap select.report-form-select { box-sizing: border-box; min-width: 0; height: 44px; margin: 0; width: 100%; max-width: none; padding: 0 40px 0 14px; font-family: inherit; font-size: var(--font-size-body); font-weight: 400; color: var(--font-color); border: 1px solid #999999; border-radius: 0; appearance: none; -webkit-appearance: none; -moz-appearance: none; cursor: pointer; background-color: var(--light-color); background-image: linear-gradient(45deg, transparent 50%, #000000 50%), linear-gradient(135deg, #000000 50%, transparent 50%); background-position: calc(100% - 16px) calc(50% - 3px), calc(100% - 11px) calc(50% - 3px); background-size: 5px 5px, 5px 5px; background-repeat: no-repeat; }
.report-sub--human-rights .report-form-select-wrap select.report-form-select::-ms-expand { display: none; }
.report-sub--human-rights .report-form-select-wrap select.report-form-select:invalid { color: #666666; }
.report-sub--human-rights .report-form-select-wrap select.report-form-select:focus,
.report-sub--human-rights .report-form-select-wrap select.report-form-select:focus-visible { outline: none; border-color: var(--primary-color); background-color: var(--light-color); background-image: linear-gradient(45deg, transparent 50%, #000000 50%), linear-gradient(135deg, #000000 50%, transparent 50%); background-position: calc(100% - 16px) calc(50% - 3px), calc(100% - 11px) calc(50% - 3px); background-size: 5px 5px, 5px 5px; background-repeat: no-repeat; }
.report-form-input { width: 38%; max-width: 420px; }
.report-form-input--full { width: 62%; max-width: 560px; }
.report-form-input--md { width: 38%; max-width: 420px; }
.report-form-input:disabled { color: #999999; background-color: #f5f5f5; cursor: not-allowed; }
.report-form-textarea { width: 72%; max-width: 720px; height: 200px; padding: 14px; line-height: 1.6; resize: vertical; }
.report-form-input:focus,
.report-form-input:focus-visible,
.report-form-textarea:focus,
.report-form-textarea:focus-visible { outline: none; border-color: var(--primary-color); }

.report-form-radios { display: flex; flex-wrap: wrap; align-items: center; gap: 20px 28px; }
.report-form-radio { display: inline-flex; align-items: center; gap: 8px; margin: 0; font-size: var(--font-size-body); cursor: pointer; }
.report-form-radio input { width: 18px; height: 18px; margin: 0; accent-color: var(--primary-color); }

.report-form-help { flex: 1 1 100%; margin: 4px 0 0; font-size: var(--fs-14); line-height: 1.5; color: #666666; }

.report-form-attach { width: 100%; min-width: 0; }
.report-form-attach__list { width: 100%; }
.report-form-attach__item + .report-form-attach__item { margin-top: 10px; }
.report-form-file { display: flex; align-items: center; gap: 8px; width: 100%; max-width: 100%; min-width: 0; }
.report-form-file__group { display: flex; align-items: stretch; flex: 0 1 auto; width: 45%; max-width: 480px; min-width: 180px; }
.report-form-file--with-controls { --report-attach-controls-width: calc(33px + 10px + 33px); --report-attach-controls-gap: 20px; display: flex; align-items: center; gap: var(--report-attach-controls-gap); width: auto; max-width: 100%; min-width: 0; }
.report-form-file--with-controls .report-form-file__group { flex: 0 1 auto; width: 48.2%; max-width: 500px; min-width: 0; }
.report-form-file--with-controls .report-form-file__group .report-form-file__name { flex: 1 1 auto; min-width: 0; border-right-width: 0; }
.report-form-file__group .report-form-file__btn { box-sizing: border-box; flex: 0 0 140px; width: 140px; height: 46px; border: 1px solid #555555; border-left-width: 0; }
.report-form-file__name { flex: 1 1 auto; box-sizing: border-box; min-width: 0; height: 46px; margin: 0; padding: 0 14px; font-family: inherit; font-size: var(--font-size-body); color: #666666; background-color: var(--light-color); border: 1px solid #999999; }
.report-form-file__name:focus,
.report-form-file__name:focus-visible { outline: none; border-color: #999999; box-shadow: none; }
.report-form-file__btn { flex: 0 0 140px; position: relative; display: inline-flex; align-items: center; justify-content: center; width: 140px; height: 46px; margin: 0; padding: 0; font-size: var(--font-size-body); font-weight: 500; color: var(--light-color); background-color: #555555; cursor: pointer; transition: background-color 0.2s ease, border-color 0.2s ease; }
.report-form-file__btn:hover,
.report-form-file__btn:focus-within,
.report-form-file__btn:focus-visible { background-color: #000000; border-color: #000000; }
.report-form-file__btn:focus,
.report-form-file__btn:focus-within,
.report-form-file__btn:focus-visible { outline: none; box-shadow: none; }
.report-form-file__input:focus,
.report-form-file__input:focus-visible { outline: none; box-shadow: none; }
.report-form-file__btn span { pointer-events: none; }
.report-form-file__input { position: absolute; width: 1px; height: 1px; margin: -1px; padding: 0; border: 0; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; }
.report-form-attach__controls { flex: 0 0 var(--report-attach-controls-width); width: var(--report-attach-controls-width); display: flex; flex-direction: row; align-items: center; gap: 10px; }
.report-form-attach__controls--spacer { flex: 0 0 var(--report-attach-controls-width); width: var(--report-attach-controls-width); min-height: 33px; pointer-events: none; }
.report-form-attach__ctrl { box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center; width: 33px; height: 33px; margin: 0; padding: 0; font-family: inherit; font-weight: 400; cursor: pointer; border-radius: 0; }
.report-form-attach__ctrl--add { font-size: 26px; padding-bottom: 4px; color: var(--light-color); background-color: var(--primary-color); border: 1px solid var(--primary-color); }
.report-form-attach__ctrl--remove { font-size: 43px; font-weight: 200; padding-bottom: 3px; color: #666666; background-color: var(--light-color); border: 2px solid #666666; }

.report-form-privacy { margin-top: 40px; }
.report-form-privacy__title { margin: 0 30px 20px; font-size: var(--fs-16); font-weight: 700; line-height: 1.35; color: #000000; }
.report-form-privacy__box { box-sizing: border-box; margin: 0 30px 18px; padding: 30px 30px; border: 1px solid #cccccc; background-color: var(--light-color); }
.report-form-privacy__term { font-weight: 700; }
.report-form-privacy__list { margin: 0; padding-left: 1.2em; font-size: var(--font-size-body); line-height: 1.75; color: #333333; }
.report-form-privacy__list li + li { margin-top: 0.35rem; }
.report-form-privacy__sub { margin: 0.35rem 0 0; padding-left: 0; margin-left: -1.2em; list-style: none; }
.report-form-privacy__sub li + li { margin-top: 0.2rem; }
.report-form-radios--privacy { margin-bottom: 0; padding: 0 30px; }
.report-form-privacy__divider { display: block; width: 100%; height: 2px; margin: 40px 0; padding: 0; border: 0; background-color: #000000; }
.report-form-privacy__note { margin: 0 0 20px; padding: 0 20px; font-size: var(--fs-16); line-height: 1.5; color: #005891; text-align: center; }

.report-form-submit { margin-top: 16px; text-align: center; }
.report-form-submit__btn { box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center; min-width: 227px; height: 57px; margin: 0; padding: 0 40px; font-family: inherit; font-size: var(--fs-18); font-weight: 700; line-height: 1; color: var(--light-color); background-color: var(--primary-color); border: 0; border-radius: 0; text-decoration: none; cursor: pointer; transition: background-color 0.2s; }
.report-form-submit__btn:hover,
.report-form-submit__btn:focus-visible { background-color: var(--btn-primary-hover); }

/* 신고 작성 완료 — 상단 안내 */
.report-form-end-intro { margin-bottom: 55px; }
.report-form-end-intro__list { margin: 0 0 16px; padding: 0; list-style: none; font-size: var(--font-size-body); font-weight: 400; line-height: 1.7; color: #005891; }
.report-form-end-intro__list li { padding-left: 0; }
.report-form-end-intro__list li + li { margin-top: 0.35rem; }

/* ethics_form_end.jsp 전용 — 1·2번 영역 수직 간격 */
.report-sub--form-end .report-form-end-notice__list li { line-height: 1.5; }
.report-sub--form-end .report-form-end-notice__list li + li { margin-top: 0.1rem; }
.report-sub--form-end .report-form-end-intro__list { line-height: 1.5; }
.report-sub--form-end .report-form-end-intro__list li + li { margin-top: 0.1rem; }
.report-form-end-intro__note { margin: 0; font-size: var(--font-size-body); font-weight: 400; line-height: 1.7; color: #000000; }

/* 신고 작성 완료 */
.report-form-complete { margin: 0; }
.report-form-complete__box { box-sizing: border-box; padding: 100px 30px 100px; border-top: 2px solid #000000; border-bottom: 2px solid #000000; text-align: center; }
.report-form-complete__icon { display: flex; align-items: center; justify-content: center; margin: 0 auto 24px; }
.report-form-complete__icon img { display: block; width: 120px; height: 120px; object-fit: contain; }
.report-form-complete__title { margin: 0 0 20px; font-size: var(--fs-24); font-weight: 700; line-height: 1.4; color: #000000; }
.report-form-complete__desc { margin: 0; font-size: var(--font-size-body); font-weight: 400; line-height: 1.75; color: #000000; }
.report-form-complete__desc + .report-form-complete__desc { margin-top: 0.35rem; }
.report-form-complete__label { font-weight: 700; color: #000000; }
.report-form-complete__no { font-weight: 700; color: var(--primary-color); }
.report-form-complete__br-mo { display: none; }
.report-form-complete__action { margin-top: 40px; text-align: center; }
.report-form-complete__btn { box-sizing: border-box; display: inline-flex; align-items: center; justify-content: center; min-width: 227px; height: 57px; padding: 0 40px; font-family: inherit; font-size: var(--fs-18); font-weight: 700; line-height: 1; color: var(--light-color); background-color: var(--primary-color); border: 0; border-radius: 0; text-decoration: none; transition: background-color 0.2s; }
.report-form-complete__btn:hover,
.report-form-complete__btn:focus-visible { background-color: var(--btn-primary-hover); }

/* 처리결과 확인 */
.report-result__title { margin: 0 0 20px; font-size: 20px; font-weight: 700; line-height: 1.35; color: #000000; }
.report-sub--result .report-result__table { border-bottom: 2px solid #000000; }
/* ethics_result_end.jsp 전용 — 라벨·값 열 사이 여백 30px */
.report-sub--result .report-result__table .report-form-row__field { padding-left: 30px; }
.report-sub--result .report-result__value { font-weight: 400; color: #000000; }
.report-form-row--result .report-form-row__label--result { font-weight: 700; color: var(--primary-color); }
.report-result__files { margin: 0; padding: 0; list-style: none; }
.report-result__files li + li { margin-top: 10px; }
.report-result__file { display: inline-flex; align-items: center; gap: 8px; font-size: var(--font-size-body); font-weight: 400; line-height: 1.4; color: var(--primary-color); text-decoration: none; }
.report-result__file:hover,
.report-result__file:focus-visible { text-decoration: underline; }
.report-result__file-icon { flex: 0 0 auto; display: flex; align-items: center; justify-content: center; width: 20px; height: 20px; color: var(--primary-color); }
.report-result__file-icon svg { display: block; width: 20px; height: 20px; }
.report-result__answer { flex-direction: column; align-items: flex-start; gap: 0; }
.report-result__answer p { margin: 0; font-size: var(--font-size-body); font-weight: 400; line-height: 1.65; color: #000000; }
.report-result__answer p + p { margin-top: 0.35rem; }
.report-sub--result .report-result__submit { margin-top: 50px; }

@supports (top: 1lh) {
  .report-form-notice__list li::before,
  .report-form-guide li::before,
  .report-bullets > li::before { top: 0.5lh; }
}

@media (min-width: 769px) and (max-width: 1024px) {
  .report-form-row__label { flex: 0 0 230px; }
  .report-sub--fair-trade .report-fair-trade__center-label { flex: 0 0 230px; }
}

@media (max-width: 768px) {
  /*
   * 신고센터 비주얼(손): 62% center 대비 살짝 좌(59%)·아래(52%) — %만 사용(px+cover 시 상·하 잘림)
   * 타 서브(지속가능경영 등)는 common .sub-hero center center 유지
   */
  .sub-hero.sub-hero--report {
    background-position: 62% 52%;
  }

  .report-sub { padding-top: 60px; padding-bottom: 100px; }
  .report-sub__intro { margin-bottom: 54px; }
  .report-sub__tabs { margin-bottom: 54px; }
  /*
   * 모바일에서 100vw + (50% - 50vw) 브레이크아웃은 세로 스크롤바가 있을 때
   * 100vw가 문서 가로폭보다 커져 body 가로 스크롤을 유발함.
   * 베이스의 .report-tab-line-wrap 의 negative margin 패턴만 유지함.
   */
  .report-tab-line-wrap {
    box-sizing: border-box;
    height: var(--report-tab-height);
    border-top: 1px solid var(--report-border-color);
    border-bottom: 1px solid var(--report-border-color);
  }
  .report-tab-line-wrap .tab-line, .report-sub .tab-line { height: 100%; border-top: 0; border-bottom: 0; }
  .report-sub .page-title { font-size: 32px; }
  .report-sub .tab-line__link { font-size: 20px; }
  .report-section { margin-bottom: 54px; }
  .report-section__title { font-size: var(--fs-20); }
  .report-bullets { font-size: var(--fs-16); }
  .report-table { min-width: 0; table-layout: fixed; }
  .report-table__col-label { width: 32%; }
  .report-table__col-content { width: 68%; }
  .report-table th, .report-table td { padding: 14px 10px; word-break: break-word; overflow-wrap: break-word; }
  .report-table td { text-align: left; }
  /* 비윤리 신고 폼 — 모바일(768px 이하): 라벨 상단 + 입력 전체 너비 */
  .report-sub--form .report-form-table { border-top: 2px solid #000000; }
  .report-sub--fair-trade .report-fair-trade__center { flex-direction: column; align-items: stretch; min-height: 0; margin-top: 40px; border-bottom: 0; }
  .report-sub--fair-trade .report-fair-trade__center-label { flex: 0 0 auto; width: 100%; padding: 10px 0 8px; font-weight: 700; background-color: transparent; }
  .report-sub--fair-trade .report-fair-trade__center-content { padding: 0 0 20px; gap: 0; }
  .report-sub--fair-trade .report-fair-trade__center-content .report-form-radios { gap: 12px 28px; }
  .report-sub--form .report-form-row--author { margin-top: 40px; }
  .report-sub--fair-trade .report-form-row--author { margin-top: 0; }
  .report-sub--form .report-form-row--author .report-form-row__label { padding-top: 0; }
  .report-sub--form .report-form-row { flex-direction: column; align-items: stretch; min-height: 0; border-bottom: 0; }
  .report-sub--form .report-form-row__label { flex: 0 0 auto; width: 100%; padding: 10px 0 8px; font-size: var(--font-size-body); font-weight: 700; line-height: 1.4; text-align: left; color: #000000; background-color: transparent; border-right: 0; border-bottom: 0; }
  .report-sub--form .report-form-row__field { width: 100%; padding: 0 0 20px; flex-direction: column; align-items: stretch; gap: 8px; }
  .report-sub--form .report-form-row--textarea .report-form-row__field,
  .report-sub--form .report-form-row--attach .report-form-row__field { padding-top: 0; padding-bottom: 20px; align-items: stretch; }
  .report-sub--form .report-form-input,
  .report-sub--human-rights .report-form-select-wrap,
  .report-sub--form .report-form-input--full,
  .report-sub--form .report-form-input--md,
  .report-sub--form .report-form-textarea { width: 100%; max-width: none; }
  .report-sub--form .report-form-textarea { height: 180px; min-height: 120px; }
  .report-sub--form .report-form-radios { gap: 12px 28px; }
  .report-sub--form .report-form-help { margin-top: 4px; }
  .report-sub--form .report-form-file--with-controls { --report-attach-controls-gap: 8px; width: 100%; flex-wrap: nowrap; align-items: center; gap: var(--report-attach-controls-gap); }
  .report-sub--form .report-form-file--with-controls .report-form-file__group { flex: 1 1 auto; width: calc(100% - var(--report-attach-controls-gap) - var(--report-attach-controls-width)); max-width: calc(100% - var(--report-attach-controls-gap) - var(--report-attach-controls-width)); min-width: 0; }
  .report-sub--form .report-form-attach__controls,
  .report-sub--form .report-form-attach__controls--spacer { flex: 0 0 var(--report-attach-controls-width); width: var(--report-attach-controls-width); }
  .report-sub--form .report-form-privacy__title { margin-left: 0; margin-right: 0; }
  .report-sub--form .report-form-privacy__box { margin-left: 0; margin-right: 0; padding: 22px 20px; }
  .report-sub--form .report-form-radios--privacy { padding-left: 0; padding-right: 0; }
  .report-sub--form .report-form-privacy__note { padding-left: 0; padding-right: 0; text-align: center; }
  .report-sub--form .report-form-privacy__divider { margin-top: 30px; }
  .report-sub--form .report-form-submit__btn { width: 225px; min-width: 0; }
  .report-sub--form .report-form-type { width: 100%; }
  .report-sub--result-inquiry .report-result-intro { margin-bottom: 60px; font-size: var(--fs-16); line-height: 1.65; }
  .report-sub--result-inquiry .report-form-type-wrap { margin-bottom: 60px; }
  .report-sub--result-inquiry .report-result-inquiry__title { display: none; }
  .report-sub--result-inquiry .report-result-inquiry__row-first { margin-top: 34px; }
  .report-sub--result-inquiry .report-result-inquiry__row-first .report-form-row__label { padding-top: 0; }
  .report-sub--result-inquiry .report-result-inquiry__table .report-form-row:last-child .report-form-row__field { padding-bottom: 36px; }
  .report-sub--result-inquiry .report-result-inquiry__submit { margin-top: 50px; }
  .report-sub--result-inquiry .report-result-inquiry__submit .report-form-submit__btn { width: 225px; min-width: 0; }
  .report-sub--form .report-form-end-intro { margin-bottom: 30px; }
  .report-sub--form .report-form-end-intro__list { margin-bottom: 12px; }
  .report-sub--form-end .report-form-end-notice__list li { line-height: 1.45; }
  .report-sub--form-end .report-form-end-notice__list li + li { margin-top: 0.08rem; }
  .report-sub--form-end .report-form-end-intro__list { line-height: 1.45; }
  .report-sub--form-end .report-form-end-intro__list li + li { margin-top: 0.08rem; }
  .report-sub--form .report-form-end-intro__note { font-size: var(--fs-16); line-height: 1.65; }
  .report-sub--form .report-form-complete__box { padding: 55px 20px 80px; }
  .report-sub--form .report-form-complete__icon { margin-bottom: 20px; }
  .report-sub--form .report-form-complete__icon img { width: 96px; height: 96px; }
  .report-sub--form .report-form-complete__title { margin-bottom: 16px; font-size: var(--fs-20); }
  .report-sub--form .report-form-complete__desc { font-size: var(--fs-16); line-height: 1.65; margin-top: 0.12rem; }
  .report-sub--form .report-form-complete__br-mo { display: block; }
  .report-sub--form .report-form-complete__action { margin-top: 50px; }
  .report-sub--form .report-form-complete__btn { width: 225px; min-width: 0; }
  .report-sub--result .report-result__title { margin-bottom: 16px; font-size: var(--fs-18); }
  .report-sub--result .report-result__submit { margin-top: 50px; }
  .report-sub--result .report-result__submit .report-form-submit__btn { width: 225px; min-width: 0; }

  /* ethics_result_end.jsp — 모바일: 2열 테이블 유지(폼 세로 스택 미적용) */
  .report-sub--result .report-result__table .report-form-row { flex-direction: row; align-items: stretch; min-height: 56px; border-bottom: 1px solid var(--report-line-color); }
  .report-sub--result .report-result__table .report-form-row__label { flex: 0 0 28%; width: auto; min-width: 0; padding: 14px 10px 14px 30px; font-size: var(--fs-16); font-weight: 500; line-height: 1.4; color: #000000; background-color: #f5fbff; border-right: 0; border-bottom: 0; word-break: keep-all; overflow-wrap: break-word; }
  .report-sub--result .report-result__table .report-form-row__field { flex: 1 1 auto; width: auto; min-width: 0; padding: 14px 16px 14px 30px; flex-direction: row; flex-wrap: wrap; align-items: center; gap: 8px 12px; font-size: var(--fs-16); word-break: break-word; overflow-wrap: break-word; }
  .report-sub--result .report-result__table .report-form-row--attach .report-form-row__field,
  .report-sub--result .report-result__table .report-form-row--result .report-form-row__field { align-items: flex-start; padding-top: 14px; padding-bottom: 14px; }
  .report-sub--result .report-result__table .report-form-row--result .report-form-row__label--result { font-weight: 700; color: var(--primary-color); }
  .report-sub--result .report-result__table .report-result__answer { flex-direction: column; align-items: flex-start; }
}

@media (max-width: 480px) {
  .report-form-file__btn,
  .report-form-file__group .report-form-file__btn { flex: 0 0 110px; width: 110px; }
}

@media (max-width: 400px) {
  .report-sub--result .report-result__table .report-form-row__label { padding-left: 18px; }
}
