@charset "utf-8";


/* 프린트설정 /////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////// */
/* ### A4프린트 레이아웃 ### */
.print_a4 {position:relative; min-width:320px; background:var(--white);}
.print_a4:has(.fixed_print_btn) {padding-bottom:60px;}

.a4_size_all {width:210mm; min-height:297mm; margin:20px auto; padding:0.3cm; font-size:14px; color:var(--fontcolor1); background:var(--white);} /* 일괄인쇄 */
.a4_size_all.border {border:1px solid #ccc;}

.a4_size {width:210mm; height:297mm; margin:0 auto 20px auto; padding:0.3cm; font-size:14px; color:var(--fontcolor1); background:var(--white);} /* 한페이지 인쇄-세로형 */
.a4_size.border {padding:0.5cm; border:1px solid #ccc;}
.a4_size:last-child {margin:0 auto;}

.print_only {display:none !important;} /* 프린트에서만 노출 */

@page {size:A4 portrait; margin:5mm;} /* A4 세로 출력 */
@media print {
	* {-webkit-print-color-adjust:exact !important; color-adjust:exact !important; print-color-adjust:exact !important; color:var(--fontcolor1);} /* 인쇄 시, background속성 강제로 보이게 지정 */
	.print_a4 {min-width:auto; margin:0; padding:0;}
	.print_a4:has(.fixed_print_btn) {padding:0;}
	
	.a4_size_all {width:210mm; min-height:unset !important; margin:0; padding:0; border:none; page-break-after:always;} /* 일괄인쇄 */
	.a4_size_all.border {padding:0; border:none;}
	
	.a4_size_all:last-child {page-break-after:avoid !important;} /* 마지막 페이지-빈페이지 생기는 경우 방지 */
	.a4_size_all.last_page {page-break-after:avoid !important;}
	
	.a4_size {width:210mm; height:297mm; margin:0; padding:0.3cm; border:none;}
	.a4_size.border {border:none;}
    .a4_size table {page-break-inside:auto;}
    .a4_size thead {display:table-header-group;}
    .a4_size tfoot {display:table-footer-group;}
	
	.print_hide {display:none;} /* 프린트에서 노출X */
	.print_only {display:flex !important;} /* 프린트에서만 노출 */
	
	.page_break {page-break-after:always;}
	.page_avoid {page-break-after:avoid;}
	.tbody_break {page-break-inside:avoid; page-break-after:auto;}
}

/* 프린트용-버튼 */
.print_a4 .print_btn button {min-width:80px; height:30px !important; font-size:14px; border-radius:50em;}

.fixed_print_btn {
	width:100%; height:60px; position:fixed; left:0; bottom:0; z-index:5; display:flex; justify-content:center; align-items:center; gap:3px; 
	text-align:center; padding:10px 20px; margin:0 !important; border-top:1px solid #eee; background:#f2f3f8; box-shadow:5px 0 20px rgba(0,0,0,0.15);
}
.fixed_print_btn a, .fixed_print_btn button {height:30px !important; font-size:14px !important; border-radius:50em;}

/* 프린트용-form태그 */
.print_a4 input[type="radio"] {width:14px; height:14px;}
.print_a4 input[type="radio"]::before {width:50%; height:50%; margin:22% auto;}
.print_a4 input[type="radio"]:checked {border:1px solid #ccc; background:#ddd;}
.print_a4 input[type="radio"]:checked::before {background:#777;}

.print_a4 input[type="checkbox"] {width:14px; height:14px;}
.print_a4 input[type="checkbox"]::-ms-expand {display:none; appearance:none;}
.print_a4 input[type="checkbox"]::before {left:4px; top:0;}
.print_a4 input[type="checkbox"]:checked {border:1px solid #ccc; background:#ddd;}
.print_a4 input[type="checkbox"]:checked::before {border-color:#777;}

.print_a4 input[type=text], .print_a4 input[type=password] {height:30px; border-radius:2px; border-color:#ccc;}
.print_a4 textarea {border:none; padding:0; resize:none;}

/* 프린트제목 */
.print_head {
	width:100%; height:50px; position:relative; display:flex; flex-wrap:wrap; align-items:center; gap:30px; 
	font-size:18px; font-weight:bold; color:var(--fontcolor1); margin-bottom:20px; border-bottom:1px solid var(--black);
}
.print_head h2 {font-size:18px; font-weight:bold; color:var(--fontcolor1); text-align:center;}
.print_head .project {position:absolute; right:0; top:50%; transform:translateY(-50%); font-size:13px; letter-spacing:0; font-weight:500; color:#ccc;}
.print_head .project img {height:20px; opacity:0.6; filter:grayscale(1);}

/* 소제목 */
.print_title {font-size:15px; color:var(--fontcolor1); font-weight:bold; margin-bottom:10px;}
.print_sub_title {position:relative; font-size:14px; color:var(--fontcolor1); font-weight:500; padding-left:10px; margin-bottom:10px;}
.print_sub_title::after {content:""; display:block; position:absolute; left:0; top:0; width:5px; height:5px; border-radius:50%; background:var(--gray);}

/* 뷰테이블 */
.print_table_view * {font-size:12px !important;}
.print_table_view {border:1px solid var(--black); overflow:hidden;}
.print_table_view table {width:100%; table-layout:fixed;}
.print_table_view table thead th {font-weight:500; text-align:center; color:var(--fontcolor1); padding:8px 6px; border:1px solid var(--black); background:#ddd;}
.print_table_view table tbody tr th em {font-size:16px; font-weight:500; color:var(--red);}
.print_table_view table tbody tr th p {font-size:12px !important;}
.print_table_view table tbody tr th {font-weight:500; color:var(--fontcolor1); text-align:center; padding:8px 6px; border:1px solid var(--black); background:#ddd;}
.print_table_view table tbody tr td {padding:8px 6px; border:1px solid var(--black); background:var(--white);}
.print_table_view table tbody tr td a:hover {color:var(--fontcolor2); cursor:default;}
.print_table_view table pre {font-family:var(--fontKor); word-break:keep-all; white-space:pre-wrap;}

.print_table_view .form_list {display:flex; flex-wrap:wrap; flex-direction:column; gap:8px;} /* 체크박스-라디오 등... 리스트형 */
.print_table_view .form_list.short {flex-direction:row; align-items:center;} /* 내용 짧은 경우 */
.print_table_view .form_list li label {margin:0;}
.print_table_view .form_list li.etc {display:flex; flex-wrap:wrap; align-items:center; gap:5px;} /* 기타 */
.print_table_view .form_list li.etc input[type="text"] {flex:1; min-width:200px;}

/* 리스트테이블 */
.print_table_list * {font-size:12px;}
.print_table_list {overflow:hidden;}
.print_table_list table {width:100%; table-layout:fixed;}
.print_table_list table thead th {padding:6px 8px; color:var(--fontcolor1); font-weight:500; text-align:center; border:1px solid var(--black); background:#ddd;}
.print_table_list table tbody th {padding:6px 8px; text-align:center; border-top:1px solid var(--black); border-right:1px solid var(--black);}
.print_table_list table tbody td {padding:6px 8px; text-align:center; color:var(--fontcolor1); border-top:1px solid var(--black); border-bottom:1px solid var(--black); border-left:1px solid var(--black);}
.print_table_list table tbody td:last-child {border-right:1px solid var(--black);}
.print_table_list table tbody td a {display:inline-block;}
.print_table_list table tbody td a:hover {color:var(--fontcolor1); text-decoration:underline;}
.print_table_list table tfoot th {padding:6px 8px; font-size:14px; color:var(--fontcolor1); border-left:1px solid var(--black); border-right:1px solid var(--black); border-bottom:1px solid var(--black); background:#ddeeff;}
.print_table_list table tfoot td {padding:6px 8px; font-size:14px; text-align:center; color:var(--fontcolor1); border-right:1px solid var(--black); border-bottom:1px solid var(--black); background:#ddeeff;}
.print_table_list table tfoot span {font-weight:bold;}
.print_table_list table span {font-size:14px; letter-spacing:0; font-weight:500; color:var(--fontcolor1); background:transparent;}
.print_table_list table a[class*="btn"] {cursor:default;}
.print_table_list .mob_title {display:none;}

/* 설명박스 */
.print_a4 .explain_box > strong {font-size:15px; padding:10px 15px;}
.print_a4 .explain_box > div {font-size:13px; padding:10px 15px;}
.print_a4 .explain_box > div ul li {font-size:13px;}

/* 심의결과서 */
.print_a4 .review_result {min-height:272mm; gap:15px; padding:15px;}
.print_a4 .review_result h2 {font-size:20px;}

.print_a4 .review_result_list {gap:12px;}
.print_a4 .review_result_list dl {gap:6px;}
.print_a4 .review_result_list dl dt {font-size:14px;}
.print_a4 .review_result_list dl dd {font-size:14px;}
