@charset "utf-8";

/* ============ A4프린트 레이아웃 ============ */
.a4Size {width:210mm; min-height:290mm; height: 100%; margin:0 auto; padding:0.3cm; font-size:15px; color:#333; background:#fff;}
@media print {
	body * {color:#000; /* background:#fff; */}
	body.printA4 {min-width:auto; margin:0; padding:0; background:#fff;}
	body.printA4 .printWrap {padding:0;}
	.a4Size {width:210mm; min-height:290mm; /* height: 100%; */ page-break-after:always; margin:0; padding:0; border:none;}
	.a4Size:last-child {page-break-after:avoid;}
	.print-hide {display:none;}
	
	#ui-datepicker-div {display:none !important;}
}

.printWrap {width:100%; min-width:320px; padding:20px; background:#fff;}
.printWrap .printTitle {font-size:22px; font-weight:500; color:#222; text-align:center; margin-bottom:30px;}
.printWrap .printTitle02 {margin:30px 0 10px 0; font-size:18px; font-weight: 500;}

/* 라디오버튼-체크박스 */
.printWrap input[type="radio"] {width:15px; height:15px;}
.printWrap input[type="radio"]:before {width:50%; height:50%; margin:22% auto;}
.printWrap input[type="radio"]:checked {border:1px solid #ccc; background:#fff;}
.printWrap input[type="radio"]:checked:before {background:#333;}

.printWrap input[type="checkbox"] {width:15px; height:15px;}
.printWrap input[type="checkbox"]::-ms-expand {display:none; appearance:none;}
.printWrap input[type="checkbox"]:before {left:5px; top:2px;}
.printWrap input[type="checkbox"]:checked {border:1px solid #ccc; background:#fff;}
.printWrap input[type="checkbox"]:checked:before {border-color:#333;}


/* 뷰테이블 */
.printTableView {border-top:1px solid #333; overflow:hidden;}
.printTableView table {width:100%; table-layout:fixed;}
.printTableView table * {font-size:13px;}
.printTableView table thead th {font-size:13px; color:#333; font-weight:500; text-align:center; padding:8px 10px; background:#f8fafd; border-right:1px solid #e6e6e6; border-bottom:1px solid #e6e6e6;}
.printTableView table tbody tr th em {font-size:15px; font-weight:500; font-style:normal; color:#de1819;}
.printTableView table tbody tr th {font-size:13px; color:#333; font-weight:500; text-align:center; padding:8px 10px; background:#f8fafd; border-right:1px solid #e6e6e6; border-bottom:1px solid #e6e6e6;}
.printTableView table tbody tr td {font-size:13px; padding:12px; border-bottom:1px solid #e6e6e6; background:#fff; border-right: 1px solid #e6e6e6;}
.printTableView table tbody tr td:last-child {border-right:none;}
.printTableView table pre {font-family:"NotoSansKR"; white-space:pre-wrap;}
.printTableView .main_major dl {display:flex; margin-top:5px;} 
.printTableView .main_major dl:first-child {margin-top:0;}
.printTableView .main_major dt {font-weight: 500; margin-right:8px;}
.printTableView .inp_subject li {display:inline-block; padding:8px; margin:5px 5px 5px 0; border-radius:3px; border:1px dashed #aaa; background:#fff;}

.printTableView.printTableSurvey table td.bar-area {padding:15px 0; overflow:hidden;} /* 설문조사 */
.printTableView.printTableSurvey table td.result {font-weight:bold; text-align:center; background:#fff9f9;}

 /* 설문조사 차트 */
.printTableView.printTableChart #chart-area1 *,
.printTableView.printTableChart #chart-area2 *,
.printTableView.printTableChart #chart-area3 * {font-size:revert; font-weight:revert;}

.printTableView.printTableChart #chart-area1 .svTitle,
.printTableView.printTableChart #chart-area2 .svTitle,
.printTableView.printTableChart #chart-area3 .svTitle {padding:20px 10px 10px 10px; line-height:1.4; word-break:keep-all;}
.printTableView.printTableChart #chart-area1 .svTitle:first-child,
.printTableView.printTableChart #chart-area2 .svTitle:first-child,
.printTableView.printTableChart #chart-area3 .svTitle:first-child {padding-top:0;}



/* 리스트테이블 */
.printTableList {border-top:1px solid #333; overflow:hidden;}
.printTableList table {width:100%; table-layout:fixed;}
.printTableList table * {font-size:13px;}
.printTableList table thead th {padding:15px 7px; text-align:center; border-bottom:1px solid #e6e6e6; background:#f8fafd;}
.printTableList table tbody th {padding:15px 7px; text-align:center; border-bottom:1px solid #e5e5e5; border-right:1px solid #e5e5e5;}
.printTableList table tbody td {padding:15px 7px; text-align:center; color:#333; border-bottom:1px solid #e5e5e5;}
.printTableList table tbody td a {display:inline-block;}
.printTableList table tbody td a:hover {color:#222; text-decoration:underline;}
.printTableList table tbody td .ellipsis {display:block; white-space:nowrap; text-overflow:ellipsis; overflow:hidden;}
.printTableList table tbody td .date {min-width:85px; text-align:left;}
.printTableList table tfoot th {border-bottom:#e4e4e4 1px solid; background:rgba(245,250,255,0.8);}
.printTableList table tfoot td {padding:15px 7px; text-align:center; color:#222; font-size:15px; font-weight:500; border-bottom:#e4e4e4 1px solid; border-right:#e4e4e4 1px solid; background:rgba(245,250,255,0.8);;} 
.printTableList table tfoot td:last-child {border-right:none;}
.printTableList table tfoot td span {font-size:15px; font-weight:500;}

/* 출석부 테이블 */
.printListAttendChk {overflow:hidden;}
.printListAttendChk h2 { display: flex; align-items: center; gap: 8px; margin: 5px 0 10px; font-size: 15px; font-weight: 700; }
.printListAttendChk h2::before { content: ""; display: inline-block; width: 10px; height: 10px; background: currentColor; border-radius: 50em; }
.printListAttendChk table {width:100%; table-layout:fixed; border-top:1px solid #e6e6e6; border-right:1px solid #e6e6e6; background:#f8fafd;}
.printListAttendChk table thead th {font-size:12px; padding:5px; font-weight:bold; color:#333; text-align:center; border-bottom:1px solid #e6e6e6; border-left:1px solid #e6e6e6;} 
.printListAttendChk table tbody td {font-size:11px; padding:5px 3px; text-align:center; border-bottom:1px solid #e6e6e6; border-left:1px solid #e6e6e6; background:#fff;} 
.printListAttendChk table tbody th {font-size:11px; padding:5px 3px; text-align:left; border-bottom:1px solid #e6e6e6; border-left:1px solid #e6e6e6; background:#fff;}


/* 설문조사 프린트 */
.print_survey_wrapper { font-size:13px; }
.print_survey_wrapper * {word-break:keep-all;}
.print_survey_wrapper {overflow:hidden;}
.print_survey_wrapper > h3.survey-title {font-size:22px; text-align:center; font-weight:bold; color:#000; padding:20px; background:#fff;}
.print_survey_wrapper .survey-text {font-size:13px; text-align:left; padding:20px; border-bottom: 1px solid #e5e5e5; word-break: break-word;}
.print_survey_wrapper > ul {padding:20px; }
.print_survey_wrapper > ul > li { margin-bottom:30px; background:#fff;}
.print_survey_wrapper > ul > li:last-child {margin:0;}
.print_survey_wrapper > ul > li > p.survey-ex {position:relative; font-size:14px; color:#828aa0; padding:0 0 10px 18px; word-break:break-all; margin-bottom:10px; border-bottom:1px dashed #ddd;}
.print_survey_wrapper > ul > li > p.survey-ex::after {content:"※"; display:inline-block; position:absolute; left:0; top:1px;}
.print_survey_wrapper > ul > li > h4 {font-size:13px; line-height:1.3; font-weight:bold; margin-bottom:10px;}
.print_survey_wrapper > ul > li > div.short-asw label {display:inline-block;}
.print_survey_wrapper > ul > li > div.long-asw label {display:block;}
.print_survey_wrapper > ul > li > div label {font-size:13px; line-height:1.3; margin:5px 10px 5px 0; color:#555;}
.print_survey_wrapper > ul > li > div label.ect {display:block; width:100%;}
.print_survey_wrapper > ul > li > div label.ect input[type="text"] {margin:5px;} 


/* 테이블 영역 구분 */
.printTableSplit {display:grid; grid-template-columns:repeat(2, 1fr); gap:0 3rem;}



/* 현장실습 신청서 프린트 css */
@media print {
	.printTable {position:relative; border-top:2px solid #333;}
	.printTable table {width:100%; table-layout:fixed;}
	.printTable table thead th {border-right:none;}
	.printTable th {padding:9pt 13pt; font-weight:600; border-right:1px solid #888; border-bottom:1px solid #888; background:#fff; word-break:keep-all;}
	.printTable th + th,
	.printTable td + td {border-left:1px solid #888;}
	.printTable td {padding:9pt 13pt; border-right:1px solid #888; border-bottom:1px solid #888; background:#fff;}
	.printTable td:last-child {border-right:none;}
	.printTable table pre {font-family:"NotoSansKR"; /* word-break:keep-all; */ white-space:pre-wrap;}
	
	/* 기존 스타일 유지 */
	.printTable table tr.tvInput .major_sign div {margin-bottom:1rem;} /* 학과주임교수 확인 */
	.printTable table tr.tvInput .major_sign div:last-child {margin:0;}
	.printTable table tr.tvInput .major_sign div strong {display:inline-block; font-weight:500; padding:0.5rem; margin-right:1rem; border: 1px solid #888; }
	.printTable table tr.tvInput .major_sign div dl {display:inline-flex; align-items:center; margin-right:2rem;}
	.printTable table tr.tvInput .major_sign div dl dt {margin-right:1rem; font-weight:500;}
	.printTable table tr.tvInput .major_sign div dl dd .profSign {font-style:italic; font-weight:bold; margin-right:0.5rem;}
	.printTable table tr.tvInput .major_sign div dl dd a {margin-left:0.5rem;}
}


/* 서약 */
.vow * {color:#333; word-break:keep-all;}
.vow {margin-top:20px;}
.vow h1 {margin:30px 0; font-size:22px; font-weight:500; text-align:center;}
.vow h2 {margin:20px 0; font-size:18px; font-weight:500; text-align:center;}
.vow h3 {padding:15px; font-size:16px; text-align:center;}
.vow p {padding:15px; font-size:16px; text-align:center;}
.vow div.userSign {display:flex; justify-content:flex-end; margin:8px 0;}
.vow div.userSign > div {font-size:16px; margin-left:10px;}
.vow div.userSign > div span, .vow div.userSign > div label, .vow div.userSign > div a {margin-left:5px;}
.vow div.userSign > div span {font-style:italic; font-weight:bold;}
