@charset "utf-8";
/* doc.css는 디자인페이지 스타일을 정의합니다. */ 

/* 공통 */
.point {color:var(--color-primary);}
.point2 {color:var(--color-secondary);}

/* 기관명 검색 */
.organ-search-form {display:flex; flex-direction:column; gap:var(--space-16); width:100%; max-width:800px; margin:0 auto; border-radius:var(--radius-32); border:1px solid #ddd; background:#fafafa;  padding:var(--space-40);}
.organ-search-form .search-bar {display:flex; gap:var(--space-16); height:clamp(44px, calc(72 / var(--inner) * 100vw), 72px);}
.organ-search-form .search-bar .input {flex:1; min-width:0; height:100%; padding:var(--space-16) var(--space-24); border-radius:var(--radius-8);  background:#fff; font-size:var(--font-size-20); line-height:normal;}
.organ-search-form .search-bar .search-btn {display:flex; justify-content:center; align-items:center; min-width:clamp(100px, calc(130 / var(--inner) * 100vw), 130px); height:100%; padding:2px var(--space-24); border:0; border-radius:var(--radius-8); background:var(--color-primary); color:#fff; font-size:var(--font-size-20); line-height:normal; transition:.2s;}
.organ-search-form .search-bar .search-btn:hover {background:var(--color-secondary);}
.organ-search-form .notice-text {display:flex; align-items:flex-start; gap:var(--space-10); color:#999; font-size:clamp(13px, calc(16 / var(--inner) * 100vw), 16px); font-weight:500; line-height:1.5em;}
.organ-search-form .notice-text .icon { flex-shrink:0; line-height:0; margin-top:-.07em;}
.organ-search-form .notice-text .icon img {display:block; width: clamp(20px, calc(24 / var(--inner) * 100vw), 24px);}

/* 신고서 제출ㆍ결과 확인 */
.overview {padding-top: var(--space-100);}
.overview .top {padding-bottom: var(--space-100);}
.overview .top .lead {font-size:var(--font-size-30); font-weight:700; line-height:1.4; color:#242424;}
.overview .panel-wrap {padding:var(--space-100) 0; background:#f6f8fd;}
.overview .panel-wrap .contain {display: grid; grid-template-columns: repeat(2, 1fr); gap:var(--space-40);}
.overview .panel {display:flex; flex-direction:column; width:100%; padding:var(--space-40); background:#fff; border-radius:var(--radius-32);}
.overview .head {display:flex; gap:var(--space-32); align-items:flex-start; margin-bottom: var(--space-32);}
.overview .head .icon {display:flex; align-items:center; justify-content:center; flex-shrink:0; width: clamp(40px, calc(56 / var(--inner) * 100vw), 56px); height:clamp(40px, calc(56 / var(--inner) * 100vw), 56px); border-radius:var(--radius-16); background:var(--color-primary);}
.overview .head .icon img {display:block; width: clamp(20px, calc(28 / var(--inner) * 100vw), 28px); height:clamp(20px, calc(28 / var(--inner) * 100vw), 28px); object-fit:contain;}
.overview .head .tit {font-size:var(--font-size-24); font-weight:700; line-height:1.42; color:#242424;}
.overview .head .desc {margin-top:var(--space-8); font-size:var(--font-size-16); line-height:1.62; color:#999;}
.overview .form-wrap {display:flex; flex-direction:column; gap:var(--space-16); width:100%;}
.overview .form-wrap .field {width:100%;}
.overview .input {width: 100%; height: clamp(50px, calc(72 / var(--inner) * 100vw), 72px); padding:0 var(--space-30); font-size:var(--font-size-20); border-radius:var(--radius-8);}
.overview .search {position:relative; width:100%;}
.overview .search .input {padding: 0 clamp(50px, calc(90 / var(--inner) * 100vw), 90px) 0 var(--space-30);}
.overview .search-btn {position:absolute; top: 0; right: 0; width: clamp(50px, calc(90 / var(--inner) * 100vw), 90px); height: clamp(50px, calc(72 / var(--inner) * 100vw), 72px); padding:0; border:0; background:transparent; cursor:pointer; display: flex; align-items: center; justify-content: center;}
.overview .search-btn img {display:block; width:clamp(24px, calc(30 / var(--inner) * 100vw), 30px); height:clamp(24px, calc(30 / var(--inner) * 100vw), 30px); object-fit:contain;}
.overview .btn-submit {display:flex; align-items:center; justify-content:center; width:100%; height:clamp(50px, calc(72 / var(--inner) * 100vw), 72px); padding:0 var(--space-32); border:0; border-radius:var(--radius-8); background:var(--color-primary); color:#fff; font-size:var(--font-size-20); font-weight:600; line-height:1.5; text-decoration:none; cursor:pointer;}
.overview .info-box {display:flex; gap:var(--space-16); align-items:flex-start; padding:var(--space-16); border-radius:var(--radius-16); background:#f8f8f8; margin-top: var(--space-32);}
.overview .info-box .icon {flex-shrink:0; width: clamp(20px, calc(24 / var(--inner) * 100vw), 24px);}
.overview .info-box .icon img {display:block; width: 100%; object-fit:contain;}
.overview .info-box p {font-size:var(--font-size-16); line-height:1.5; color:#999;}

/* 신고서 작성 */
.report-form {padding-top:var(--space-100);}
.report-form .report {display:none;}
.report-form .report.on {display:block;}
.report .step-head {text-align:center; margin-bottom:var(--space-100);}
.report .step-head .tit {font-size:var(--font-size-48); font-weight:700; line-height:1.3; color:#242424;}
.report .step-head .desc {margin-top:var(--space-40); font-size:var(--font-size-20); line-height:1.6;}
.step-indicator {display:flex; align-items:flex-start; justify-content:center; gap:var(--space-48); margin-bottom:var(--space-100);}
.step-indicator .step {display:flex; flex-direction:column; align-items:center; gap:var(--space-16); flex-shrink: 0;}
.step-indicator .step .num {display:flex; align-items:center; justify-content:center; width: clamp(40px, calc(64 / var(--inner) * 100vw), 64px); height: clamp(40px, calc(64 / var(--inner) * 100vw), 64px); border-radius:50%; background:#f6f8fd; color:#b4bfca; font-size:var(--font-size-24); font-weight:600;}
.step-indicator .step .label {font-size:var(--font-size-20); font-weight:600; line-height:1.5; color:#b4bfca; text-align: center;}
.step-indicator .step.active .num {background:var(--color-primary); color:#fff;}
.step-indicator .step.active .label {color:#242424;}
.step-indicator .step.done .num {background: #f6f8fd url("/images/sub/report-step-check.svg") 50% 50% no-repeat; background-size:26px 18px; color:transparent;}
.step-indicator .line {width:108px; height:2px; margin-top: var(--space-30); border-radius: 2px; background:#ddd;}
.step-indicator .line.on {background:var(--color-primary);}
.report .btn-wrap {display:flex; justify-content:center; gap: 10px; margin-top:var(--space-100);}
.report .btn {display:flex; align-items:center; justify-content:center; min-width:400px; height: clamp(48px, calc(64 / var(--inner) * 100vw), 64px); padding:0 var(--space-40); border-radius:var(--radius-8); font-size:var(--font-size-18); font-weight:600; cursor:pointer;}
.report .btn.prev {background:#fff; border:1px solid #ddd; color:#242424;}
.report .btn.next,
.report .btn.submit {background:var(--color-secondary); border:1px solid var(--color-secondary); color:#fff;}

/* 신고서 작성 - 1단계 주의사항 안내 */
.report-guide {display:flex; flex-direction:column; gap:var(--space-100);}
.guide-sec {display:flex; flex-direction:column; gap:var(--space-40);}
.guide-sec .sec-head {display:flex; flex-direction:column; gap:var(--space-24);}
.guide-sec .sec-head .tit {font-size:var(--font-size-30); font-weight:700; line-height:1.34; color:#242424;}
.guide-sec .sec-head .desc {font-size:var(--font-size-20); line-height:1.5;}
.guide-box {display:flex; flex-direction:column; gap:var(--space-40); padding:var(--space-40); border:1px solid #ddd; border-radius:var(--radius-24); background:#fff;}
.guide-notice-list {display:flex; flex-direction:column; gap:var(--space-24); padding:var(--space-24); border-radius:var(--radius-16); background:#f6f8fd;}
.guide-notice-list .guide-notice {padding:0; background:none; border-radius:0;}
.guide-notice {display:flex; gap:var(--space-16); align-items:flex-start; padding:var(--space-24); border-radius:var(--radius-16); background:#f6f8fd;}
.guide-notice .icon {flex-shrink:0; width: clamp(20px, calc(24 / var(--inner) * 100vw), 24px); height: clamp(20px, calc(24 / var(--inner) * 100vw), 24px); margin-top: .15em;}
.guide-notice .icon svg {display:block; width:100%; height:100%;}
.guide-notice p {font-size:var(--font-size-18); line-height:1.67; color:#242424;}
.guide-notice .notice-txt {display:flex; flex-direction:column; gap:var(--space-16);}
.guide-notice .notice-txt .tit {font-size:var(--font-size-22); font-weight:600; line-height:1.45;}
.guide-rule {display:flex; flex-direction:column; gap:var(--space-16);}
.guide-rule + .guide-rule {padding-top:var(--space-40); border-top:1px dashed #ddd;}
.guide-rule .rule-tit {display:flex; align-items:center; font-size:var(--font-size-22); font-weight:600; line-height:1.45; color:#242424;}
.guide-rule .num {display:inline-flex; align-items:center; justify-content:center; flex-shrink:0; min-width:var(--space-36); padding: 2px var(--space-10); border-radius:var(--radius-8); background:var(--color-primary); color:#fff; font-size:var(--font-size-16); font-weight:600; line-height:1.5; margin-right: var(--space-16);}
.guide-rule.warning .num {background:#e0393e;}
.guide-rule.warning .rule-tit {color:#e0393e;}
.guide-rule.warning .rule-tit .icon {width: clamp(18px, calc(22 / var(--inner) * 100vw), 22px); height: clamp(20px, calc(22 / var(--inner) * 100vw), 22px); display: flex; align-items: center; justify-content: center; margin-left: 6px;}
.guide-rule.warning .rule-tit .icon img {width:100%; height:100%; object-fit:contain;}
.dot-list {display:flex; flex-direction:column; gap:var(--space-8);}
.dot-list li {position:relative; padding-left: 16px; font-size:var(--font-size-18); line-height:1.67;}
.dot-list li:before {content:""; position:absolute; top:.65em; left:0; width: clamp(4px, calc(6 / var(--inner) * 100vw), 6px); height: clamp(4px, calc(6 / var(--inner) * 100vw), 6px); border-radius:50%; background:#b4bfca;}
.guide-rule .dot-list {margin-left: var(--space-54);}
.agree-all .checkbox label {font-size:var(--font-size-22); font-weight:600; line-height:1.45; color:#242424;}
.agree-group {display:flex; flex-direction:column; gap:var(--space-24); padding:var(--space-24); border-radius:var(--radius-16); background:#f6f8fd;}
.agree-group .checkbox label {font-size:var(--font-size-18); font-weight:600; line-height:1.56; color:#242424; display: flex;}
.agree-group .checkbox label::before {flex-shrink: 0; margin-top: .2em;}
.guide-box.reward {border-radius:var(--radius-20);}
.guide-box.reward .reward-tit {font-size:var(--font-size-22); font-weight:600; line-height:1.45; color:#242424;}
.guide-box.reward .reward-desc {margin-top:var(--space-16); font-size:var(--font-size-20); line-height:1.5;}
.check-list {display:flex; flex-direction:column; gap:var(--space-12);}
.check-list li {position:relative; padding-left: 30px; font-size:var(--font-size-18); line-height:1.67;}
.check-list li:before {content:""; position:absolute; top:.15em; left:0; width: clamp(16px, calc(22 / var(--inner) * 100vw), 22px); height: clamp(16px, calc(22 / var(--inner) * 100vw), 22px); background:var(--color-primary) url("/images/sub/report-check.svg") center top 55% no-repeat; background-size: 9px auto; border-radius:50%;}

/* 신고서 작성 - 2단계 신고 유형 선택 */
.type-list {display:flex; flex-direction:column; gap:var(--space-16);}
.type-item {display:flex; align-items:stretch; gap:0; border:1px solid #ddd; border-radius:var(--radius-16); background:#fff; cursor:pointer;}
.type-item:has(input:checked) {border-color:var(--color-primary);}
.type-item .radiobox {display:flex; align-items:center; flex-shrink:0; margin-top: 0; margin-bottom: auto;}
.type-item .radiobox label {padding:var(--space-24) 10px var(--space-24) var(--space-24);}
.type-item .radiobox label::before {margin-right: 0;}
.type-txt {display:flex; flex:1; flex-wrap:wrap; gap:var(--space-16); align-items:center; padding:var(--space-24) var(--space-24) var(--space-24) 0; cursor:pointer;}
.type-txt .tit {font-size:var(--font-size-18); font-weight:600; line-height:1.56; color:#242424;}
.type-txt .desc {font-size:var(--font-size-18); line-height:1.56;}
.type-example {display:none; padding:var(--space-24); border-radius:var(--radius-16); background:var(--color-secondary); color:#fff;}
.type-item:has(input:checked) + .type-example {display:block;}
.type-example .ex-tit {font-size:var(--font-size-18); font-weight:600; line-height:1.67;}
.type-example .ex-tit::before {content:"•"; margin-right:var(--space-8);}
.type-example .ex-txt {margin-top:var(--space-8); font-size:var(--font-size-18); line-height:1.67;}

/* 신고서 작성 - 3단계 피신고인 선택 */
.box-tit {display:flex; align-items:center; gap:var(--space-16); font-size:var(--font-size-24); font-weight:700; line-height:1.42; color:#242424;}
.box-tit::before {content:""; flex-shrink:0; width:8px; height:8px; border-radius:2px; background:var(--color-primary);}
.check-flex {display:flex; flex-wrap:wrap; gap:var(--space-16);}
.check-grid {display:grid; grid-template-columns:repeat(2, 1fr); gap:var(--space-16);}
.check-item {display:flex; align-items:stretch; gap:0; border:1px solid #ddd; border-radius:var(--radius-8); background:#fff; cursor:pointer;}
.check-item .checkbox {display:flex; align-items:center; flex-shrink:0; margin-top:0; margin-bottom:auto;}
.check-item .checkbox label {padding:var(--space-24) 10px var(--space-24) var(--space-24);}
.check-item .checkbox label::before {margin-right:0;}
.check-txt {display:flex; flex:1; flex-wrap:wrap; gap:var(--space-16); align-items:center; padding:var(--space-24) var(--space-24) var(--space-24) 0; cursor:pointer;}
.check-txt .tit {font-size:var(--font-size-18); font-weight:600; line-height:1.56; color:#242424;}
.check-txt .desc {font-size:var(--font-size-18); line-height:1.56;}
.select-status {display:flex; justify-content:space-between; align-items:center; padding:var(--space-16); border-radius:var(--radius-8); background:#f6f8fd; font-size:var(--font-size-18); line-height:1.56; color:#999;}
.select-status .num {color:var(--color-secondary); font-weight:700;}
.target-form {display:flex; flex-direction:column; gap:var(--space-16);}
.target-info {min-height:160px; height:160px; border-radius:var(--radius-8); font-size:var(--font-size-15); font-weight:500;}
.form-note {font-size:var(--font-size-15); font-weight:500; line-height:1.53; color:#999;}

/* 신고 공통 폼 */
.report .form {width: 100%;}
.report .form .input {height:clamp(42px, calc(48 / var(--inner) * 100vw), 48px); padding:0 var(--space-16); border-radius:var(--radius-8); background:#fafafa; font-size:var(--font-size-16); line-height:1.53; width:100%;}
.report .form .input::placeholder {font-size:var(--font-size-15); color:#999;}
.report .form .required {margin-left:var(--space-4); color:var(--color-secondary);}
.report .form table {border-top:2px solid #111; border-spacing:0; border-collapse:collapse; width:100%;}
.report .form table th {padding:var(--space-16) var(--space-24); border-bottom:1px solid #ddd; font-size:var(--font-size-16); font-weight:600; line-height:1.75; color:#242424; text-align:left;}
.report .form table td {padding:var(--space-16); border-bottom:1px solid #ddd; font-size:var(--font-size-16); line-height:1.56;}
.report .form textarea.input {width:100%; height:160px; padding:var(--space-16);}
.report .form .datepicker-wrap {display:inline-flex; align-items:center; max-width:100%; vertical-align:top;}
.report .form .datepicker-wrap .field-date {width:240px; max-width:100%; border-radius:var(--radius-8) 0 0 var(--radius-8);}
.report .form .datepicker-wrap .ui-datepicker-trigger {flex-shrink:0; width:clamp(42px, calc(48 / var(--inner) * 100vw), 48px); height:clamp(42px, calc(48 / var(--inner) * 100vw), 48px); border:1px solid #ddd; border-radius:0 var(--radius-8) var(--radius-8) 0; background-color:#fafafa; vertical-align:top; cursor:pointer; border-left:0; margin-left:0;}
.report .form .files-upload {max-width:100%;}
.report .form .files-upload-group {display:flex; align-items:stretch; flex-wrap:wrap; gap:var(--space-16) var(--space-8);}
.report .form .files-upload-input {position:relative; flex:1 1 auto; min-width:0; display:flex; align-items:center; height:clamp(42px, calc(48 / var(--inner) * 100vw), 48px); border:1px solid #ddd; border-radius:var(--radius-8); background:#fafafa;}
.report .form .files-upload-input.field-narrow {flex:0 1 300px; max-width:100%;}
.report .form .file-input {position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); border:0;}
.report .form .file-add {flex-shrink:0; width:clamp(80px, calc(100 / var(--inner) * 100vw), 100px); height:clamp(42px, calc(48 / var(--inner) * 100vw), 48px); padding:0 var(--space-20); border:0; border-radius:var(--radius-8); background:#111; color:#fff; font-size:var(--font-size-15); font-weight:600; cursor:pointer;}
.report .form .file-add:active {background:#000;}
.report .form .file-name {flex:1; min-width:0; width:100%; height: 100%; border:0; background:transparent; font-size:var(--font-size-15); padding:0 var(--space-16); border-radius:var(--radius-8);}
.report .form .file-name::placeholder {color:#999;}
.report .form .files-upload-btns {display:flex; gap:var(--space-8);}
.report .form .file-btn {display:flex; align-items:center; justify-content:center; width:64px; height:clamp(42px, calc(48 / var(--inner) * 100vw), 48px); border:1px solid #ddd; border-radius:var(--radius-8); background:#f9f9f9; color:#505050; font-size:var(--font-size-15); text-decoration:none;}
.report .form .file-btn.add {background:#505050; border-color:#505050; color:#fff;}
.report .form .agree-box {display:flex; align-items:center; gap:var(--space-8); padding:var(--space-24); border:1px solid #ddd; border-radius:var(--radius-8); background:#fafafa; flex-wrap:wrap;}
.report .form .agree-box strong.point {font-weight:600;}
.report .form .agree-box .checkbox label {font-size:var(--font-size-18); font-weight:600; line-height:1.56; color:#242424; display:flex; align-items:center;}
.report .form .agree-box .checkbox label::before {margin-right:var(--space-16); margin-top:0; flex-shrink:0;}
.report .form .agree-box .pop_privacy {font-size:var(--font-size-15); line-height:1.67; text-decoration:underline;}
.report .form .captcha-wrap {height:clamp(42px, calc(48 / var(--inner) * 100vw), 48px);}
.report .form .flex {display:flex; align-items:center; flex-wrap:wrap; gap:10px 20px;}
.report .form .flex .del {display:flex; align-items:center; flex-wrap:wrap; gap:10px 16px; color:#999;}
.report .form .flex .del span {}
.input.field-select {max-width:500px; background: #fafafa url('/images/bbs/select.svg') right 14px center no-repeat; color: #454545;}
.input.field-select.placeholder {color: #999;}
.input.field-select option {color: #454545;}
.field-half {max-width:500px;}
.field-hint {font-size: var(--font-size-15); line-height:1.53; color:var(--color-secondary); width: 100%;}
.field-warn {display:flex; flex-direction:column; gap:var(--space-4);}
.field-warn p {font-size: var(--font-size-15); line-height:1.53; color:#e83232;}
.field-count {font-size: var(--font-size-15); line-height:1.53; color:var(--color-secondary);}
.field-count b {font-weight:600;}
.alarm-radio {display:flex; gap:var(--space-8); flex-wrap:wrap;}
.alarm-radio input {position:absolute; width:1px; height:1px; padding:0; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); border:0;}
.alarm-radio label {display:flex; align-items:center; justify-content:center; width:124px; height: clamp(38px, calc(42 / var(--inner) * 100vw), 42px); padding:var(--space-8) var(--space-16); border:1px solid #ddd; border-radius:var(--radius-8); background:#fff; font-size: var(--font-size-15); font-weight:500; line-height:1.73; cursor:pointer;}
.alarm-radio label.active {border-color:var(--color-secondary); background:var(--color-secondary); color:#fff;}
.alarm-radio input:focus-visible + label {outline:2px solid var(--color-secondary); outline-offset:2px;}
.field-stack {display:flex; flex-direction:column; gap:var(--space-16);}
.report .form .captcha-wrap #kcaptcha_image {border-radius:var(--radius-8); overflow:hidden; flex-shrink:0;}
.report .form .captcha-wrap .input {width:100%; max-width:300px; height:clamp(42px, calc(48 / var(--inner) * 100vw), 48px);}

/* 답변 알림 팝업 */
.alarm-pop {display:flex; flex-direction:column; gap: var(--space-40); align-items:center; width:90vw; max-width:800px; padding: var(--space-48); background:#fff; border-radius: var(--radius-24); box-sizing:border-box;}
.alarm-pop .pop-head {display:flex; flex-direction:column; gap:var(--space-24); align-items:center;}
.alarm-pop .pop-icon {display:flex; align-items:center; justify-content:center; width:clamp(46px, calc(64 / var(--inner) * 100vw), 64px); height:clamp(46px, calc(64 / var(--inner) * 100vw), 64px); border-radius:60px; background:var(--color-secondary);}
.alarm-pop .pop-icon img {width:clamp(20px, calc(30 / var(--inner) * 100vw), 30px);}
.alarm-pop .pop-tit {font-size: var(--font-size-30); font-weight:700; line-height:1.33; color:#242424; text-align:center;}
.alarm-pop .pop-toggle {display:flex; gap: var(--space-8); width:100%;}
.alarm-pop .toggle-btn {flex:1; height:clamp(46px, calc(64 / var(--inner) * 100vw), 64px); padding:var(--space-8) var(--space-16); border:1px solid #ddd; border-radius:var(--radius-8); background:#fff; font-size:var(--font-size-18); font-weight:600; cursor:pointer;}
.alarm-pop .toggle-btn.active {border-color:var(--color-secondary); background:var(--color-secondary); color:#fff;}
.alarm-pop .pop-verify {display:flex; flex-direction:column; gap:var(--space-16); width:100%;}
.alarm-pop .verify-row {display:flex; gap: var(--space-8); width:100%;}
.alarm-pop .verify-row .input {flex:1; min-width:0; height:clamp(46px, calc(64 / var(--inner) * 100vw), 64px); padding:var(--space-16); border:1px solid #ddd; border-radius:var(--radius-8); background:#fafafa; font-size:var(--font-size-18); color:#242424; box-sizing:border-box;}
.alarm-pop .verify-row .input::placeholder {color:#999;}
.alarm-pop .send-btn {flex-shrink:0; width:clamp(120px, calc(140 / var(--inner) * 100vw), 140px); height:clamp(46px, calc(64 / var(--inner) * 100vw), 64px); padding:var(--space-16); border:1px solid var(--color-secondary); border-radius:var(--radius-8); background:#fff; color:var(--color-secondary); font-size:var(--font-size-18); font-weight:500; cursor:pointer;}
.alarm-pop .send-btn:disabled {cursor:default;}
.alarm-pop .verify-btn {flex-shrink:0; width:clamp(120px, calc(140 / var(--inner) * 100vw), 140px); height:clamp(46px, calc(64 / var(--inner) * 100vw), 64px); padding:var(--space-16); border:0; border-radius:var(--radius-8); background:var(--color-secondary); color:#fff; font-size:var(--font-size-18); font-weight:500; cursor:pointer;}
.alarm-pop .code-row {display:none;}
.alarm-pop.is-sent .code-row {display:flex;}
.alarm-pop.is-sent .phone-input {color:#242424;}
.alarm-pop .pop-notice {width:100%; padding:var(--space-24); border-radius:var(--radius-8); background:#fafafa; font-size:var(--font-size-15); line-height:1.73; color:var(--color-secondary);}
.alarm-pop .pop-notice .warn {color:#e83232;}
.alarm-pop .pop-btns {display:flex; gap:10px; width:100%;}
.alarm-pop .pop-btn {flex:1; height:clamp(46px, calc(64 / var(--inner) * 100vw), 64px); padding:var(--space-24); display:flex; align-items:center; justify-content:center; border-radius:var(--radius-8); font-size:var(--font-size-18); font-weight:600; cursor:pointer;}
.alarm-pop .pop-btn.cancel {border:1px solid #ddd; background:#fff; color:#242424;}
.alarm-pop .pop-btn.confirm {margin: 0; background: var(--color-secondary); border: 1px solid var(--color-secondary); color: #fff;}
.alarm-pop .pop-btn.confirm:disabled {background:#dcdcdc; border-color: #dcdcdc; cursor:default;}
.alarm-pop .pop-btn.overview {border:0; background:var(--color-secondary); color:#fff;}
.alarm-pop .pop-btn.overview:disabled {background:#dcdcdc; color:#fff; cursor:default;}

/* 신고 접수 완료 */
.confirm {display:flex; flex-direction:column; align-items:center; width:100%; max-width:640px; margin: var(--space-100) auto 0;}
.confirm .confirm-head {display:flex; flex-direction:column; gap:var(--space-24); align-items:center; margin-bottom: var(--space-48);}
.confirm .confirm-icon {display:flex; align-items:center; justify-content:center; width:clamp(48px, calc(64 / var(--inner) * 100vw), 64px); height:clamp(48px, calc(64 / var(--inner) * 100vw), 64px); border-radius:100px; background:var(--color-primary);}
.confirm .confirm-tit {font-size:var(--font-size-30); font-weight:700; line-height:1.33; color:#242424; text-align:center;}
.confirm .confirm-info {display:flex; flex-direction:column; gap:var(--space-16); width:100%;}
.confirm .confirm-info dl {display:flex; flex-direction:column; gap:var(--space-16); width:100%;}
.confirm .item {display:flex; align-items:center; justify-content:space-between; gap:var(--space-16); padding:var(--space-20) var(--space-30); border:1px solid #ddd; border-radius:var(--radius-8); background:#fff;}
.confirm .item .label {font-size:var(--font-size-20); color:#999;}
.confirm .item .value {display:flex; align-items:center; gap: 10px;}
.confirm .item .num {font-size:var(--font-size-20); font-weight:600; color:#242424;}
.confirm .copy-btn {display:flex; align-items:center; justify-content:center; flex-shrink:0; width:clamp(30px, calc(40 / var(--inner) * 100vw), 40px); height:clamp(30px, calc(40 / var(--inner) * 100vw), 40px); border:1px solid #ddd; border-radius:var(--radius-8); background:#fff; cursor:pointer;}
.confirm .copy-btn img {width:clamp(15px, calc(20 / var(--inner) * 100vw), 20px); height:clamp(15px, calc(20 / var(--inner) * 100vw), 20px);}
.confirm .save-btn {display:flex; align-items:center; justify-content:center; gap:var(--space-10); height:clamp(48px, calc(64 / var(--inner) * 100vw), 64px); padding:0 var(--space-48); border:0; border-radius:var(--radius-8); background:var(--color-primary); color:#fff; font-size:var(--font-size-18); font-weight:600; cursor:pointer;}
.confirm .save-btn .icon {display:flex;}
.confirm .save-btn .tag {padding:2px var(--space-12); border-radius:var(--radius-8); background:rgba(255,255,255,.3); font-size:var(--font-size-16); font-weight:600; line-height: 1.5;}
.confirm .confirm-notice {display:flex; gap:var(--space-16); align-items:flex-start; padding:var(--space-16); border-radius:var(--radius-16); background:#f8f8f8;}
.confirm .confirm-notice .icon {flex-shrink:0; padding:4px 0;}
.confirm .confirm-notice p {font-size:var(--font-size-16); line-height:1.5; color:#e83232;}
.confirm .confirm-btns {display:flex; flex-direction:column; gap:var(--space-8); width:100%; margin-top: var(--space-80);}
.confirm .confirm-btns .btn {display:flex; align-items:center; justify-content:center; gap:var(--space-10); width:100%; min-width:0; height:clamp(48px, calc(64 / var(--inner) * 100vw), 64px); padding:0 var(--space-32); border-radius:var(--radius-8); font-size:var(--font-size-18); font-weight:600; text-decoration:none;}
.confirm .confirm-btns .btn .icon {display:flex; align-items: center; justify-content: center; width: clamp(20px, calc(24 / var(--inner) * 100vw), 24px); height: clamp(20px, calc(24 / var(--inner) * 100vw), 24px);}
.confirm .confirm-btns .btn.more {background:var(--color-secondary); color:#fff;}
.confirm .confirm-btns .btn.home {border:1px solid #ddd; background:#fff; color:#242424;}

/* 신고 접수증 팝업 */
.receipt {display:flex; flex-direction:column; gap:var(--space-80); align-items:center; width:90vw; max-width:800px; padding:var(--space-80) var(--space-76); background:#fff; border-radius:var(--radius-24); box-sizing:border-box;}
.receipt .receipt-head {display:flex; flex-direction:column; gap:var(--space-40); align-items:center; width:100%;}
.receipt .receipt-title {display:flex; flex-direction:column; gap:var(--space-16); align-items:center; text-align:center;}
.receipt .receipt-title .tit {font-size:var(--font-size-48); font-weight:700; line-height:1.33; color:#242424;}
.receipt .receipt-title .org {font-size:var(--font-size-20); font-weight:600; line-height:1.5; color:#999; letter-spacing:0.3em;}
.receipt .receipt-title .logo {width: 143px;}
.receipt .receipt-title .logo img {width: 100%;}
.receipt .receipt-line {width:100%; height:0; border-top:2px dashed #ddd;}
.receipt .receipt-desc {font-size:var(--font-size-18); line-height:1.78; text-align:center;}
.receipt .receipt-info {display:flex; flex-direction:column; gap:var(--space-16); width:100%; max-width:640px;}
.receipt .item {display:flex; align-items:center; justify-content:space-between; gap:var(--space-16); padding:var(--space-24) var(--space-30); border:1px solid #ddd; border-radius:var(--radius-8);}
.receipt .item .label {display:flex; align-items:center; gap:var(--space-16); font-size:var(--font-size-20); font-weight:600; color:#242424;}
.receipt .item .label .dot {flex-shrink:0; width:clamp(4px, calc(6 / var(--inner) * 100vw), 6px); height:clamp(4px, calc(6 / var(--inner) * 100vw), 6px); border-radius:100px; background:var(--color-primary);}
.receipt .item .num {font-size:var(--font-size-24); font-weight:700; color:#242424;}
.receipt .receipt-notice {display:flex; gap:var(--space-16); align-items:flex-start; padding:var(--space-24) var(--space-16); border-radius:var(--radius-16); background:#f8f8f8;}
.receipt .receipt-notice .icon {flex-shrink:0; width: clamp(22px, calc(24 / var(--inner) * 100vw), 24px); height: clamp(22px, calc(24 / var(--inner) * 100vw), 24px);}
.receipt .receipt-notice .icon img {width: 100%; height: 100%; object-fit: contain;}
.receipt .receipt-notice p {font-size:var(--font-size-18); line-height:1.56; color:#999;}
.receipt .receipt-btns {display:flex; gap:var(--space-8); justify-content:center; width: 100%;}
.receipt .receipt-btns .btn {display:flex; align-items:center; justify-content:center; gap:var(--space-10); height:clamp(48px, calc(64 / var(--inner) * 100vw), 64px); border-radius:var(--radius-8); font-size:var(--font-size-18); font-weight:600; cursor:pointer;}
.receipt .receipt-btns .btn .ico {display:flex; align-items:center; justify-content:center; width:clamp(20px, calc(24 / var(--inner) * 100vw), 24px); height:clamp(20px, calc(24 / var(--inner) * 100vw), 24px);}
.receipt .receipt-btns .btn.list {max-width:140px; border:1px solid #ddd; background:#fff; color:#242424; width: 100%; flex: 1;}
.receipt .receipt-btns .btn.print {max-width:300px; border:0; background:#111; color:#fff; width: 100%; flex: 1;}

/* 신고 접수증 인쇄 */
@media print {
	body.receipt-print #wrapper, body.receipt-print #skipToContent {display:none !important;}
	body.receipt-print .fancybox-overlay {position:static !important; background:#fff !important; overflow:visible !important;}
	body.receipt-print .fancybox-wrap {position:static !important; left:auto !important; top:auto !important; width:auto !important; margin:0 auto !important;}
	body.receipt-print .fancybox-skin {background:#fff !important; box-shadow:none !important; padding:0 !important;}
	body.receipt-print .fancybox-inner {width:auto !important; height:auto !important; overflow:visible !important;}
	body.receipt-print .fancybox-item {display:none !important;}
	body.receipt-print .receipt {box-shadow:none !important; max-width:none !important; width:100% !important; max-width: 460px !important; -webkit-print-color-adjust:exact !important; print-color-adjust:exact !important; margin: 10vh auto !important;}
	body.receipt-print .receipt * {-webkit-print-color-adjust:exact !important; print-color-adjust:exact !important;}
	body.receipt-print .receipt .receipt-btns {display:none !important;}
	body.receipt-print .receipt-title .tit {font-size: 48px !important; margin-bottom: 16px !important;}
}

/* 신고 내역 */
.view {display:flex; flex-direction:column; gap:var(--space-100); padding-top:var(--space-100);}
.view .step-head {margin-bottom:0;}
.view-head {display:flex; flex-direction:column; gap:var(--space-30);}
.view-head .tit {font-size:var(--font-size-48); font-weight:700; line-height:1.21; color:#242424;}
.view-head .desc {font-size:var(--font-size-20); line-height:1.7;}
.view-body {display:flex; flex-direction:column; gap:var(--space-40); width:100%;}
.view .status-wrap {display:grid; grid-template-columns:repeat(2, minmax(0, 1fr)); gap:var(--space-40); width:100%;}
.view .status-card {display:flex; align-items:flex-start; gap:var(--space-32); padding:var(--space-30); border:1px solid #ddd; border-radius:var(--radius-24); background:#fff;}
.view .status-card .icon {display:flex; align-items:center; justify-content:center; flex-shrink:0; width:clamp(40px, calc(56 / var(--inner) * 100vw), 56px); height:clamp(40px, calc(56 / var(--inner) * 100vw), 56px); border-radius:var(--radius-16);}
.view .status-card.acc .icon {background:rgba(232,50,50,.1);}
.view .status-card.proc .icon {background:rgba(0,38,91,.1);}
.view .status-card.check .icon {background:rgba(0, 107, 202, 0.1);}
.view .status-card .icon img {display:block; width:clamp(18px, calc(24 / var(--inner) * 100vw), 24px); height:clamp(18px, calc(24 / var(--inner) * 100vw), 24px); object-fit:contain;}
.view .status-txt {display:flex; flex:1; flex-direction:column; gap:var(--space-8); min-width:0;}
.view .status-txt .label {font-size:var(--font-size-18); font-weight:700; line-height:1.56; color:#c7c7c7;}
.view .status-txt .state {font-size:var(--font-size-24); font-weight:700; line-height:1.33; color:#242424;}
.view .status-txt .hint {font-size:var(--font-size-18); line-height:1.56; color:#999;}
.view .content-del {display:flex; align-items:center; justify-content:center; flex-shrink:0; gap:10px; height:40px; padding:6px var(--space-16); border:1px solid rgba(232,50,50,.5); border-radius:var(--radius-8); background:#fff; color:#e83232; font-size:var(--font-size-16); font-weight:600; line-height:1.5; cursor:pointer;}
.view .content-del .icon {display:flex; align-items:center; justify-content:center; width:14px; height:14px;}
.view .content-del .icon img {display:block; width:100%; height:100%; object-fit:contain;}
.view .field-value {display:flex; align-items:center; min-height:clamp(42px, calc(48 / var(--inner) * 100vw), 48px); padding:var(--space-16); border:1px solid #ddd; border-radius:var(--radius-8); background:#fafafa; font-size:var(--font-size-15); font-weight:500; line-height:1.53; color:#242424; word-break:break-word; width: 100%;}
.view .field-value.field-textarea {align-items:flex-start; min-height:160px;}
.view .field-value.field-half {max-width:500px;}
.view .field-value.field-select {justify-content:space-between; padding-right:14px; background:#fafafa url('/images/bbs/select.svg') right 14px center no-repeat;}
.view .field-value.placeholder {color:#999;}
.view .view-date-wrap {display:inline-flex; align-items:stretch; max-width:100%; vertical-align:top;}
.view .view-date {display:flex; align-items:center; width:240px; max-width:100%; min-height:clamp(42px, calc(48 / var(--inner) * 100vw), 48px); padding:0 var(--space-16); border:1px solid #ddd; border-right:0; border-radius:var(--radius-8) 0 0 var(--radius-8); background:#fafafa; font-size:var(--font-size-16); font-weight:500; color:#242424; box-sizing:border-box;}
.view .view-date-btn {flex-shrink:0; width:clamp(42px, calc(48 / var(--inner) * 100vw), 48px); min-height:clamp(42px, calc(48 / var(--inner) * 100vw), 48px); border:1px solid #ddd; border-radius:0 var(--radius-8) var(--radius-8) 0; background:#fafafa url('/images/bbs/datepicker_icon.svg') 50% 50% no-repeat; background-size:24px auto;}
.view .view-file {display:flex; align-items:center; flex-wrap:wrap; gap:var(--space-8);}
.view .view-file .file-btn {display:flex; align-items:center; justify-content:center; flex-shrink:0; width:100px; height:clamp(42px, calc(48 / var(--inner) * 100vw), 48px); border-radius:var(--radius-8); background:var(--color-secondary); color:#fff; font-size:var(--font-size-15); font-weight:600; line-height:1.73;}
.view .alarm-radio {display:flex; gap:var(--space-8); flex-wrap:wrap;}
.view .alarm-opt {display:flex; align-items:center; justify-content:center; width:124px; height:clamp(38px, calc(42 / var(--inner) * 100vw), 42px); padding:var(--space-8) var(--space-16); border:1px solid #ddd; border-radius:var(--radius-8); background:#fff; font-size:var(--font-size-15); font-weight:500; line-height:1.73;}
.view .alarm-opt.active {border-color:var(--color-secondary); background:var(--color-secondary); color:#fff;}
.view .reply-sec {display:flex; flex-direction:column; gap:var(--space-48); width:100%;}
.view .reply-head {display:flex; flex-direction:column; gap:var(--space-32);}
.view .reply-head .tit {font-size:var(--font-size-40); font-weight:700; line-height:1.25; color:#242424;}
.view .reply-head .desc {font-size:var(--font-size-20); line-height:1.6;}
.view .reply-notice {display:flex; gap:var(--space-16); align-items:flex-start; padding:var(--space-24) var(--space-16); border-radius:var(--radius-16); background:#f8f8f8;}
.view .reply-notice .icon {flex-shrink:0; width:clamp(18px, calc(24 / var(--inner) * 100vw), 24px); padding-top: .15em;}
.view .reply-notice .icon img {display:block; width:100%;}
.view .reply-notice p {font-size:var(--font-size-18); font-weight:600; line-height:1.56; color:#999;}
.view .reply-btns {display:flex; justify-content:center; width:100%;}
.view .btn-comment {display:flex; align-items:center; justify-content:center; width:100%; max-width:400px; height:clamp(48px, calc(64 / var(--inner) * 100vw), 64px); padding:var(--space-24) 63px; border-radius:var(--radius-8); background:var(--color-secondary); color:#fff; font-size:var(--font-size-18); font-weight:600; line-height:1.56; text-decoration:none;}

/* 댓글 등록 */
.comment {display:flex; flex-direction:column; gap:var(--space-100); padding-top:var(--space-100);}
.comment-head {display:flex; flex-direction:column; gap:var(--space-30);}
.comment-head .tit {font-size:var(--font-size-48); font-weight:700; line-height:1.21; color:#242424;}
.comment-head .desc {font-size:var(--font-size-20); line-height:1.7;}
.comment-form {display:flex; flex-direction:column; gap:clamp(32px, calc(64 / var(--inner) * 100vw), 64px); align-items:center; width:100%;}
.comment .files-upload-group {padding-bottom: 0;}
.comment .file-guide {display:flex; flex-direction:column; font-size:var(--font-size-15); line-height:1.53; color:#999;}
.comment .comment-btns {display:flex; justify-content:center; gap:10px; flex-wrap:wrap; width:100%;}
.comment .comment-btns .btn.cancel {min-width:160px; border:1px solid #ddd; background:#fff; color:#242424;}
.comment .comment-btns .btn.submit {width:100%; max-width:400px; border:0; background:var(--color-secondary); color:#fff;}

/* 부패알리오 소개 */
.intro {display:flex; flex-direction:column; padding-top:var(--space-100); overflow: hidden;}
.intro section {padding: var(--space-100) 0;}
.intro .band {background:#f6f8fd;}
.intro .sec-head {display:flex; align-items:center; margin-bottom:var(--space-40);}
.intro .sec-head .bar {flex-shrink:0; width:3px; height:36px; background:var(--color-primary); margin-right: var(--space-16);}
.intro .sec-head .tit {display:flex; align-items:center; font-size:var(--font-size-36); font-weight:700; line-height:1.33; color:#242424;}
.intro .sec-head .tit .icon {width:clamp(28px, calc(36 / var(--inner) * 100vw), 36px); height:clamp(31px, calc(40 / var(--inner) * 100vw), 40px); object-fit:contain; margin-right: var(--space-16);}
.intro .sec-head .tit .icon img {width: 100%; height: 100%; object-fit: contain;}
.intro .label {display:inline-flex; align-items:center; justify-content:center;; padding:3px 16px; border-radius:var(--radius-8); background:rgba(2,127,255,0.1); color:var(--color-secondary); font-size:var(--font-size-16); font-weight:600; line-height:1.5; margin-right: auto;}
.intro .dot-list li {padding-left: 22px;}
.intro .dot-list li:before {background:var(--color-secondary);}
.intro-head {display:flex; flex-direction:column; gap:var(--space-40); align-items:center; text-align:center; padding-bottom: var(--space-150);}
.intro-head .tit {display:flex; align-items:center; gap:var(--space-16); font-size:var(--font-size-48); font-weight:700; line-height:1.33; color:#242424;}
.intro-head .tit .icon {width:clamp(32px, calc(58 / var(--inner) * 100vw), 58px); height:clamp(35px, calc(64 / var(--inner) * 100vw), 64px); object-fit:contain; margin-right: var(--space-16);}
.intro-head .tit .icon img {width: 100%; height: 100%; object-fit: contain;}
.intro-head .lead {font-size:var(--font-size-20); font-weight:600; line-height:1.6; color:#242424;}
.intro-head .desc {font-size:var(--font-size-18); line-height:1.56;}
.intro-proposal .compare-list {display:flex; flex-direction:column; gap:var(--space-24);}
.intro-proposal .compare-list .item {display:flex; gap:var(--space-40); align-items:center;}
.intro-proposal .compare-list .item .card {flex:1 1 0; display:flex; flex-direction:column; gap:var(--space-32); padding:var(--space-30); border-radius:var(--radius-24); background:#fff;}
.intro-proposal .badge {display:inline-flex; align-items:center; justify-content:center; align-self:flex-start; padding:var(--space-14) var(--space-24); border-radius:100px; font-size:var(--font-size-18); font-weight:700; line-height:1.56; text-align:center;}
.intro-proposal .badge.light {background:rgba(2,127,255,0.08); color:#242424;}
.intro-proposal .badge.primary {background:var(--color-secondary); color:#fff;}
.intro-proposal .sub-group {display:flex; flex-direction:column; gap:var(--space-12);}
.intro-proposal .sub-tit {font-size:var(--font-size-18); font-weight:700; line-height:1.56; color:#242424;}
.intro-proposal .compare-list .item .arrow {position:relative; flex-shrink:0; width:64px; height:64px;}
.intro-proposal .compare-list .item .arrow .line {position:absolute; top:50%; left:0; width:100%; height:1px; background:var(--color-secondary); transform:translateY(-50%);}
.intro-proposal .compare-list .item .arrow .dot {position:absolute; right:0; top:50%; width:16px; height:16px; border-radius:50%; background:rgba(2,127,255,0.2); transform:translate(50%, -50%);}
.intro-proposal .compare-list .item .arrow .dot:after {content:""; position:absolute; top:50%; left:50%; width:4px; height:4px; border-radius:50%; background:var(--color-secondary); transform:translate(-50%, -50%);}
.intro-concept {display:flex; flex-direction:column;}
.intro-concept .cards {display:grid; grid-template-columns:repeat(3, 1fr); gap:var(--space-40);}
.intro-concept .cards .card {display:flex; flex-direction:column; min-height:310px; padding:var(--space-30); border:1px solid #ddd; border-radius:var(--radius-24); background:#fff;}
.intro-concept .cards .card .label {margin-bottom: var(--space-32);}
.intro-concept .cards .card .txt {font-size:var(--font-size-18); line-height:1.67;}
.intro-concept .cards .card .icon {display: flex; align-items: center; justify-content: center; margin-top: auto; margin-left: auto; width: clamp(35px, calc(48 / var(--inner) * 100vw), 48px); height: clamp(35px, calc(48 / var(--inner) * 100vw), 48px);}
.intro-concept .cards .card .icon img {width:100%; height:100%; object-fit:contain;}
.intro-element .label {margin: 0 auto;}
.intro-element .head {display:flex; flex-direction:column; gap:var(--space-16); align-items:center; margin-bottom:var(--space-40); text-align:center;}
.intro-element .head .tit {display:flex; align-items:center; font-size:var(--font-size-32); font-weight:700; line-height:1.31; color:#242424;}
.intro-element .head .tit .icon {width:clamp(28px, calc(33 / var(--inner) * 100vw), 33px); height:clamp(31px, calc(36 / var(--inner) * 100vw), 36px); margin-right: var(--space-16);}
.intro-element .head .tit .icon img {width:100%; height:100%; object-fit:contain;}
.intro-element .element-list {display:grid; grid-template-columns:repeat(3, 1fr); gap: 40px; position:relative; align-items:stretch;}
.intro-element .element-list .item {display:flex; flex-direction:column; align-items:center; text-align:center; position:relative; z-index:1; height:100%;}
.intro-element .element-list .item .icon-wrap {display:flex; align-items:center; justify-content:center; width:clamp(160px, calc(200 / var(--inner) * 100vw), 200px); height:clamp(160px, calc(200 / var(--inner) * 100vw), 200px); border-radius:50%; background:#fff; box-shadow:4px 4px var(--space-16) 1px rgba(0,0,0,0.1); margin-bottom: var(--space-32); position: relative;}
.intro-element .element-list .item .icon-wrap::after {content:""; position:absolute; top: 50%; left: 100%; height:0; border-top: 2px dashed rgba(0, 107, 202, 0.6); z-index:0; width: 200%;}
.intro-element .element-list .item:last-child .icon-wrap::after {content: none;}
.intro-element .element-list .item .icon-wrap img {width:clamp(60px, calc(72 / var(--inner) * 100vw), 72px); height:clamp(60px, calc(72 / var(--inner) * 100vw), 72px); object-fit:contain;}
.intro-element .element-list .item .label {margin-bottom: var(--space-24);}
.intro-element .element-list .item .name {font-size:var(--font-size-24); font-weight:700; line-height:1.42; color:#242424; margin-bottom: var(--space-32);}
.intro-element .element-list .item .desc {font-size:var(--font-size-18); line-height:1.67;}
.intro .intro-diff {display:flex; flex-direction:column; padding-bottom: 0;}
.intro-diff .trust-wrap {display:flex; gap:var(--space-40); align-items:center; justify-content:space-between; padding: var(--space-100) var(--space-container);}
.intro-diff .trust-wrap .copy .tit {font-size:var(--font-size-32); font-weight:700; line-height:1.5; color:#242424;}
.intro-diff .trust-wrap .copy .desc {margin-top:var(--space-24); font-size:var(--font-size-18); line-height:1.78;}
.intro-diff .trust-list {display:flex; flex:1 1 auto; flex-direction:column; gap:var(--space-16); max-width:860px;}
.intro-diff .trust-list .item {padding:var(--space-48) var(--space-30); border-radius:var(--radius-24); background:#fff;}
.intro-diff .trust-list .item .body {display:flex; gap:var(--space-32); align-items:flex-start;}
.intro-diff .trust-list .item .name {flex-shrink:0; width:300px; font-size:var(--font-size-24); font-weight:700; line-height:1.42; color:#242424;}
.intro-diff .trust-list .item .icon {display: flex; align-items: center; justify-content: center; margin-left: auto; width: clamp(35px, calc(48 / var(--inner) * 100vw), 48px); height: clamp(35px, calc(48 / var(--inner) * 100vw), 48px);}
.intro-diff .trust-list .item .icon img {width: 100%; height: 100%; object-fit: contain;}
.intro-diff .feature-list {display:flex; flex-direction:column;}
.intro-diff .feature-item {padding: var(--space-100) 0;}
.intro-diff .feature-item .contain {display:flex; gap:var(--space-40); align-items:center; justify-content:space-between;}
.intro-diff .feature-item .txt {flex:1 1 auto; max-width:582px;}
.intro-diff .feature-item .head {display:flex; flex-direction:column; gap:var(--space-24); margin-bottom:var(--space-40);}
.intro-diff .feature-item .head .tit {font-size:var(--font-size-32); font-weight:700; line-height:1.25; color:#242424;}
.intro-diff .feature-item .cert-logos {display:flex; gap:var(--space-8); margin-top:var(--space-24);}
.intro-diff .feature-item .cert-logos img {height:72px; width:auto; object-fit:contain;}
.intro-diff .feature-item .note {margin-top:var(--space-12); font-size:var(--font-size-18); line-height:1.67;}
.intro-diff .feature-item .thumb {flex-shrink:0; width: 40%; max-width:100%; border-radius:var(--radius-24); overflow:hidden;}
.intro-diff .feature-item .thumb img {display:block; width:100%; height:auto; object-fit:cover;}
.intro .intro-service {display:flex; flex-direction:column; padding-top: var(--space-50); padding-bottom: 0;}
.intro-service .sec-head {margin-bottom: 0;}
.intro-service .service-item {display:flex; gap:var(--space-40); align-items:center; justify-content:space-between; padding: var(--space-100) 0;}
.intro-service .service-item:first-of-type {padding-top: 0;}
.intro-service .service-item .copy {display:flex; flex-direction:column; flex-shrink:0;}
.intro-service .service-item .copy .label {margin-bottom: var(--space-16);}
.intro-service .service-item .copy .tit {font-size:var(--font-size-32); font-weight:700; line-height:1.75; color:#242424;}
.intro-service .service-item .copy .tit .icon {width:clamp(22px, calc(33 / var(--inner) * 100vw), 33px); height:clamp(24px, calc(36 / var(--inner) * 100vw), 36px); margin-right: var(--space-6); display: inline-flex; align-items: center; justify-content: center; transform: translateY(.2em);}
.intro-service .service-item .copy .tit .icon img {width: 100%; height: 100%; object-fit: contain;}
.intro-service .service-item .copy .sub {font-size:var(--font-size-32); font-weight:700; line-height:1.56; color:#242424;}
.intro-service .sticker-list {display:flex; gap:var(--space-16); margin-left: auto; width: 66.57;}
.intro-service .sticker-list .img {width: 32.19%; max-width:100%; border-radius:var(--radius-16); overflow:hidden;}
.intro-service .sticker-list .img img {display:block; width:100%; height:auto; object-fit:cover;}
.intro-service .service-item .contain {display:flex; gap:var(--space-40); align-items:center; justify-content:space-between;}
.intro-service .app-list {display:flex; gap:var(--space-16);}
.intro-service .app-list .card {display:flex; flex-direction:column; gap:var(--space-24); align-items:center; justify-content:center; width:clamp(120px, calc(240 / var(--inner) * 100vw), 240px); height:clamp(120px, calc(240 / var(--inner) * 100vw), 240px); border-radius:var(--radius-16); background:#fff;}
.intro-service .app-list .card .img {width:clamp(40px, calc(64 / var(--inner) * 100vw), 64px); height:clamp(40px, calc(64 / var(--inner) * 100vw), 64px); object-fit:contain;}
.intro-service .app-list .card .img img {width: 100%; height: 100%; object-fit: contain;}
.intro-service .app-list .card .txt {font-size:var(--font-size-16); font-weight:700; line-height:1.88; color:#242424;}
.intro-service .only-mobile {display: none !important;}
.intro-service .lecture-list {display:grid; grid-template-columns:repeat(2, 1fr); gap:var(--space-16); max-width: 46.86%;}
.intro-service .lecture-list .img {border-radius:var(--radius-16); overflow:hidden;}
.intro-service .lecture-list .img img {display:block; width:100%; height:auto; object-fit:cover;}
.intro-service .service-item.flow-wrap {display:block;}
.intro-service .service-item.flow-wrap .contain {display:flex; flex-direction:column; align-items:center; gap:var(--space-40);}
.intro-service .flow-wrap .flow-head {display:flex; flex-direction:column; gap:var(--space-24); align-items:center; width:100%; text-align:center;}
.intro-service .flow-wrap .flow-head .title {display:flex; flex-direction:column; gap:var(--space-16); align-items:center; width: 100%;}
.intro-service .flow-wrap .flow-head .label {margin-left: auto;}
.intro-service .flow-wrap .flow-head .tit {font-size:var(--font-size-32); font-weight:700; line-height:1.31; color:#242424;}
.intro-service .flow-wrap .flow-head .desc {font-size:var(--font-size-18); line-height:1.78;}
.intro-service .reward-flow {width:100%; margin:0 auto; border-radius:var(--radius-32); background:#f6f8fd; overflow:hidden; padding: var(--space-90) var(--space-40);}
.intro-service .reward-flow .visual img {display:block; width:100%; height:auto;}
.intro-service .reward-flow .steps {list-style:none; margin-top: 20px; display:flex; flex-direction:column; gap:var(--space-12);}
.intro-service .reward-flow .steps .step {display:flex; align-items:center; gap:var(--space-12); padding:var(--space-16) var(--space-20); border-radius:8px; background:#fff; font-size:var(--font-size-16); font-weight:600; line-height:1.5; color:#242424;}
.intro-service .reward-flow .steps .step .num {display:flex; align-items:center; justify-content:center; flex-shrink:0; width:24px; height:24px; border-radius:50%; background:var(--color-secondary); color:#fff; font-size:15px; font-weight:500; line-height:1;}
.intro-service .reward-flow .steps .step.active {background:linear-gradient(90deg, var(--color-primary) 0%, var(--color-secondary) 100%); color:#fff;}
.intro-service .reward-flow .steps .step.active .num {background:#006bca;}
.intro-service .benefit-wrap {display:block; padding:var(--space-100) 0;}
.intro-service .benefit-wrap .contain {display:flex; flex-direction:column; align-items:center; gap:var(--space-48);}
.intro-service .benefit-wrap .benefit-head {display:flex; flex-direction:column; gap:var(--space-24); align-items:center; width:100%; text-align:center;}
.intro-service .benefit-wrap .benefit-head .title {display:flex; flex-direction:column; gap:var(--space-16); align-items:center;}
.intro-service .benefit-wrap .benefit-head .label {margin-left:auto;}
.intro-service .benefit-wrap .benefit-head .tit {font-size:var(--font-size-32); font-weight:700; line-height:1.31; color:#242424;}
.intro-service .benefit-wrap .benefit-head .desc {font-size:var(--font-size-18); line-height:1.78;}
.intro-service .benefit-wrap .benefit-head .desc strong {font-weight:700;}
.intro-service .benefit-wrap .cards {display:grid; grid-template-columns:repeat(3, 1fr); gap:var(--space-40); width:100%;}
.intro-service .benefit-wrap .cards .card {display:flex; flex-direction:column; gap:var(--space-32); min-height:366px; padding:var(--space-30); border-radius:var(--radius-24); background:#fff;}
.intro-service .benefit-wrap .cards .card .tit {font-size:var(--font-size-24); font-weight:700; line-height:1.5; color:#242424;}
.intro-service .benefit-wrap .cards .card .desc {font-size:var(--font-size-18); line-height:1.67;}
.intro-service .benefit-wrap .cards .card .icon {display:flex; align-items:center; justify-content:center; margin-top:auto; margin-left:auto; width:clamp(35px, calc(48 / var(--inner) * 100vw), 48px); height:clamp(35px, calc(48 / var(--inner) * 100vw), 48px);}
.intro-service .benefit-wrap .cards .card .icon img {display:block; width:100%; height:100%; object-fit:contain;}

/* 신고처리 절차 */
.process {display:flex; flex-direction:column; gap:var(--space-150); overflow: hidden;}
.process .label {display:inline-flex; align-items:center; justify-content:center; align-self:flex-start; padding:3px 16px; border-radius:var(--radius-8); background:rgba(2,127,255,0.1); color:var(--color-secondary); font-size:var(--font-size-16); font-weight:600; line-height:1.5;}
.process .contain {width:100%; margin:0 auto;}
.process .sec-head {display:flex; align-items:center; gap:var(--space-16); width:100%;}
.process .sec-head .bar {flex-shrink:0; width:3px; height:36px; background:var(--color-primary);}
.process .sec-head .tit {font-size:var(--font-size-36); font-weight:700; line-height:1.33; color:#242424;}
.process .block .lead {margin-top:var(--space-32); font-size:var(--font-size-18); line-height:1.78;}
.process .block .body {display:flex; flex-direction:column; gap:var(--space-40); align-items:center; width:100%; margin-top:var(--space-100);}
.process .block .sub-tit {font-size:var(--font-size-32); font-weight:700; line-height:1.31; color:#242424; text-align:center;}
.process .block .flow {width:100%; border-radius:var(--radius-24); background:#f6f8fd; overflow:hidden; padding: var(--space-95) var(--space-30);}
.process .block .flow img {display:block; width:100%; height:auto;}
.process .block .steps {display:grid; grid-template-columns: repeat(3, 1fr); gap:var(--space-32) var(--space-100); width:100%; align-items:stretch; justify-content: flex-start;}
.process .block .steps .item {position:relative; display:flex; flex-direction:column; gap:var(--space-32); min-width:0; min-height:280px; padding:var(--space-30); border:1px solid #ddd; border-radius:var(--radius-24); background:#fff; box-sizing:border-box;}
.process .block .steps .item::after {content:''; position:absolute; top:50%; right:calc(var(--space-100) / -2); width:clamp(28px, calc(36 / var(--inner) * 100vw), 36px); height:clamp(28px, calc(36 / var(--inner) * 100vw), 36px); transform:translate(50%, -50%); background:url('/images/sub/process-arrow.svg') center / contain no-repeat; pointer-events:none;}
.process .block .steps .item:nth-child(3)::after {content: none;}
.process .block .steps .item:nth-child(5)::after {content: none;}
.process .block .steps .item .name {font-size:var(--font-size-24); font-weight:700; line-height:1.5; color:#242424;}
.process .block .steps .item .desc {font-size:var(--font-size-18); line-height:1.67;}
.process .block.type2 .flow {padding: var(--space-66) var(--space-20);}
.process .block.type2 .certs {display:grid; grid-template-columns:repeat(2, 1fr); gap:var(--space-40); width:100%;}
.process .block.type2 .certs .item {display:flex; gap:var(--space-32); align-items:center; padding:var(--space-16); border:1px solid #ddd; border-radius:var(--radius-24);}
.process .block.type2 .certs .thumb {flex-shrink:0; width:200px; border-radius:var(--radius-24); overflow:hidden;}
.process .block.type2 .certs .thumb img {display:block; width:100%; height:auto; object-fit:cover;}
.process .block.type2 .certs .copy {display:flex; flex-direction:column; gap:var(--space-16); flex:1; width: 100%;}
.process .block.type2 .certs .copy .name {font-size:var(--font-size-24); font-weight:700; line-height:1.42; color:#242424;}
.process .block.type2 .certs .dot-list li {padding-left: 12px;}
.process .block.type2 .certs .dot-list li::before {width: 3px; height: 3px; background: #454545; top: .75em;}
.process .role.band {padding:var(--space-100) 0; background:#f6f8fd;}
.process .role .tit {margin:0 0 var(--space-48); font-size:var(--font-size-32); font-weight:700; line-height:1.31; color:#242424; text-align:center;}
.process .role .list {display:grid; grid-template-columns:repeat(5, minmax(0, 1fr)); gap: var(--space-64); width:100%;}
.process .role .item {display:flex; flex-direction:column; align-items:center; min-width:0;}
.process .role .item .head {display:flex; align-items:center; justify-content:center; width:100%; height:clamp(40px, calc(54 / var(--inner) * 100vw), 54px); border-radius:var(--radius-16); font-size:var(--font-size-18); font-weight:700; line-height:1.56; color:#fff; text-align:center;}
.process .role .item .head.primary {background:var(--color-secondary);}
.process .role .item .head.navy {background:var(--color-primary);}
.process .role .item .arrow {position:relative; flex-shrink:0; width:16px; height:36px;}
.process .role .item .arrow .line {position:absolute; top:0; left:50%; width:1px; height:28px; background:var(--color-secondary); transform:translateX(-50%);}
.process .role .item .arrow .dot {position:absolute; bottom:0; left:50%; width:16px; height:16px; border-radius:50%; background:rgba(2,127,255,0.2); transform:translate(-50%, 0);}
.process .role .item .arrow .dot:after {content:""; position:absolute; top:50%; left:50%; width:4px; height:4px; border-radius:50%; background:var(--color-secondary); transform:translate(-50%, -50%);}
.process .role .item .body {display:flex; flex-direction:column; align-items:flex-start; width:100%; min-height:154px; padding:var(--space-24); border-radius:var(--radius-16); background:#fff; box-sizing:border-box;}
.process .role .item .body .dot-list {width:100%; margin:0; padding:0;}
.process .role .item .body .dot-list li {color:#454545;}
.process .role .item .body .dot-list li::before {background:var(--color-secondary);}
.process .block.comm .flow {padding: var(--space-80) var(--space-40);}
.process .block.comm .flow .visual {max-width: 1308px; margin: 0 auto; margin-bottom: var(--space-48);}
.process .block.comm .notice {width:100%; padding:var(--space-30); border-radius:var(--radius-16); background:#fff;}
.process .block.comm .notice .head {display:flex; gap:var(--space-8); margin-bottom:var(--space-16);}
.process .block.comm .notice .head .icon {flex-shrink:0; width:clamp(20px, calc(24 / var(--inner) * 100vw), 24px); height:clamp(20px, calc(24 / var(--inner) * 100vw), 24px); margin-top: .15em;}
.process .block.comm .notice .head .icon img {display:block; width:100%; height:100%; object-fit:contain;}
.process .block.comm .notice .head .tit {font-size:var(--font-size-16); font-weight:600; line-height:1.63; color:var(--color-primary);}
.process .block.comm .notice .dot-list li {font-size:var(--font-size-16); line-height:1.63; padding-left: 22px;}
.process .block.comm .notice .dot-list li::before {background: var(--color-secondary);}

.process .block.cert {padding-bottom:var(--space-100);}
.process .block.cert .body {margin-top: var(--space-40);}
.process .certs {display: grid; grid-template-columns: repeat(3, 1fr); gap: var(--space-48); text-align: center;}
.process .certs .thumb {border-radius: var(--radius-24); overflow: hidden; position: relative;}
.process .certs .thumb::before {content: ''; position: absolute; inset: 0; border: 1px solid #ddd; border-radius: var(--radius-24); pointer-events: none;}
.process .certs .thumb img {width: 100%; object-fit: contain;}
.process .certs p {margin-top: var(--space-32); font-size: var(--font-size-18);}