@charset "utf-8";

/* ============ A4프린트 레이아웃 ============ */
/* .printAll {width:208mm; height:297mm; margin:0 auto; padding:0.3cm; font-size:15px; color:#333; background:#fff;} */
.a4Size {width:208mm; height:297mm; margin:0 auto; padding:0.3cm; font-size:15px; color:#333; background:#fff;}

.printWrap {width:100%; min-width:320px; padding:20px; background:#fff;}
.printWrap *:hover {box-shadow:initial !important;}
.printWrap input[type="radio"] {width:12px; height:12px;}
.printWrap input[type="checkbox"] {width:12px; height:12px;}
.printWrap .printBreak {page-break-before:always;}
.printWrap .printBreakAfter {page-break-after:always;}

.printWrap .printHead {display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:30px; width:100%; height:55px; margin-bottom:20px; border-bottom:2px solid #222;}
.printWrap .printHead h2 {font-size:22px; font-weight:bold; color:#222; text-align:center;}
.printWrap .printHead span {width:100px;}
.printWrap .printHead span img {width:100%; object-fit:contain; opacity:0.5;}

.printWrap .printTitleHead {font-size:20px; font-weight:bold; color:#222; text-align:center; margin-bottom:30px; padding:15px 0; border-top:3px solid #ddd; border-bottom:3px solid #ddd;}
.printWrap .printTitle {font-size:16px; color:#333; font-weight:bold; margin-bottom:12px;}
.printWrap .sub-title1 {font-size:16px; color:#333; font-weight:bold; margin:20px 0 12px 0 !important;}

.printWrap .rec_frame {padding:0; border:none;}


/* 뷰테이블-수정본 */
.printTableView {overflow:hidden;}
.printTableView table {width:100%; table-layout:fixed;}
.printTableView table * {font-size:13px !important;}
.printTableView table span {background:transparent;}
.printTableView table thead th {padding:6px 8px; font-size:13px; color:#222; font-weight:500; text-align:center; border:1px solid #333; background:#ddd;}
.printTableView table tbody tr th em {font-size:16px; font-weight:500; color:#de1819;}
.printTableView table tbody tr th.thead {font-weight:700; font-size:17px !important;}
.printTableView table tbody tr th {padding:6px 8px; color:#222; font-weight:500; text-align:center; border:1px solid #333; background:#ddd;}
.printTableView table tbody tr td {padding:6px 8px; border:1px solid #333; background:#fff;}
.printTableView table tbody tr td a:hover {color:#555; cursor:default;}
.printTableView table tbody . {color:#de1819; font-weight:700;}
.printTableView table tfoot tr th {padding:6px 8px; font-weight:500; text-align:center; border:1px solid #333; background:#ddeeff;}
.printTableView table tfoot tr td {padding:6px 8px; font-weight:500; text-align:right; border:1px solid #333; background:#ddeeff;}
.printTableView table tfoot span {font-weight:bold; color:#222; background:transparent;}
.printTableView table tfoot tr[class*="default"] th {background:#ddd;}
.printTableView table tfoot tr[class*="default"] td {background:#fff;}
.printTableView table pre {font-family:"NotoSansKR"; word-break:keep-all; 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 .writeBox {height:500px;}
.printTableView .writeBoxSmall {height:100px;}
.printTableView *[class*="brn"] {border-right:1px solid #333 !important;}


/* 리스트테이블-수정본 */
.printTableList {border-top:1px solid #333; border-bottom:1px solid #333; overflow:hidden;}
.printTableList table {width:100%; table-layout:auto;}
.printTableList table * {font-size:13px !important;}
.printTableList table colgroup col {width:auto; min-width:70px;}
.printTableList table thead th {padding:6px 8px; color:#222; font-weight:500; text-align:center; border:1px solid #333; border-top:none; background:#ddd;}
.printTableList table tbody th {padding:6px 8px; text-align:center; border-top:1px solid #333; border-right:1px solid #333;}
.printTableList table tbody td {padding:6px 8px; text-align:center; color:#333; border-top:1px solid #333; border-left:1px solid #333;}
.printTableList table tbody td:last-child {border-right:1px solid #333;}
.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 {padding:6px 8px; font-size:14px; color:#222; border-left:1px solid #333 !important; border-right:1px solid #333 !important; border-top:1px solid #333; background:#ddeeff;}
.printTableList table tfoot td {padding:6px 8px; font-size:14px; text-align:center; color:#222; border-top:1px solid #333; border-right:1px solid #333; background:#ddeeff;}
.printTableList table tfoot span {font-weight:bold;}
.printTableList table span {font-size:14px; letter-spacing:0; font-weight:500; color:#222; background:transparent;}
.printTableList table a[class*="btn"] {cursor:default;}


/* 설문조사 프린트 */
.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; 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;}
.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;} 


/* 파일양식다운-체크 */
.printWrap .fileDownChk {margin-top:20px; padding:12px 15px; border-color:#aaa; background:#fff !important;}
.printWrap .fileDownChk * {font-size:14px; color:#555;}
.printWrap .fileDownChk > p {padding:3px 0;}
.printWrap .fileDownChk > ul {margin:0;}
.printWrap .fileDownChk > ul li {padding:2px 0 2px 12px;}
.printWrap .fileDownChk > ul li::after {top:8px;}
.printWrap .fileDownChk > ol li {padding:2px 0;}
.printWrap .fileDownChk > div {margin-top:5px;}
.printWrap .fileDownChk > div > label {padding:5px 20px; border-color:#aaa;}


/* 동의서 */
.printWrap .agreement * {color:#555;}
.printWrap .agreement p.agree_final_text {font-size:16px; color:#222; margin:0;}
.printWrap .agreement .agreeBox {padding:12px 15px; margin-top:20px; border-color:#aaa;}
.printWrap .agreement .agreeBox > p {font-size:14px; margin:3px 0; text-align:justify;}
.printWrap .agreement .agreeBox .agreeCont {font-size:14px;}
.printWrap .agreement .agreeBox .agreeCont div {margin-top:10px;}
.printWrap .agreement .agreeBox .agreeChk {margin-top:15px;}
.printWrap .agreement .agreeBox .agreeChk > div {font-size:14px; margin:0 auto;}
.printWrap .agreement .agreeBox .agreeChk > div span {padding:5px 15px; border:1px solid #aaa; background:#fff;}


/* 유의사항-박스영역 */
.printWrap .boxarea * {font-size:14px; background:transparent;}
.printWrap .boxarea {padding:12px 15px; border-color:#aaa; background:#fff !important;}
.printWrap .boxarea > h3 {margin-bottom:8px;}


/* 문구 */
.printWrap .warn {font-size:14px;}
.printWrap .warn::after {font-size:12px; top:4px;}


/* 서약 */
.printWrap .vow * {color:#333; word-break:keep-all;}
.printWrap .vow {margin-top:20px;}
.printWrap .vow h1 {margin:15px 0 0 0; font-size:18px; font-weight:500; text-align:center;}
.printWrap .vow h2 {margin:15px 0 0 0; font-size:16px; font-weight:500; text-align:center;}
.printWrap .vow h3 {padding:10px 0 0 0; font-size:15px; text-align:center;}
.printWrap .vow p {padding:10px 0 0 0; font-size:15px; text-align:center;}
.printWrap .vow div.userSign {display:flex; justify-content:flex-end; margin:8px 0;}
.printWrap .vow div.userSign > div {font-size:17px; margin-left:10px;}
.printWrap .vow div.userSign > div span, .vow div.userSign > div label, .vow div.userSign > div a {margin-left:5px;}
.printWrap .vow div.userSign > div span {font-style:italic; font-weight:bold;}


/* 연구비카드관리 */
.printCardCalendar * {font-size:13px !important; border-color:#333;}
.printCardCalendar {width:100%; border-top:1px solid #222; overflow:hidden;}
.printCardCalendar .card-date-slide {display:none;}
.printCardCalendar table {width:100%; table-layout:fixed;}
.printCardCalendar table thead th {padding:15px 8px; color:#222; font-weight:500; text-align:center; border-bottom:1px solid #333; border-left:1px solid #333; background:#ddd;}
.printCardCalendar table thead th:last-child {border-right:1px solid #333;}
.printCardCalendar table tbody td {padding:15px 5px; text-align:center; border-bottom:1px solid #333; border-left:1px solid #333; background:#fff;}
.printCardCalendar table tbody td:last-child {border-right:1px solid #333;}
.printCardCalendar table tbody td.card-time {letter-spacing:-0.03em; font-weight:500; color:#222; background:#ddd;}
.printCardCalendar table tbody td a {width:100%; text-decoration:none; color:#555; border-radius:3px; border:1px solid #ddd; background:#fff; cursor:default;}

.printCardCalendar .mrColor1 {background:#eff8f1;}
.printCardCalendar .mrColor1 a {color:#2a8862 !important; border-color:transparent !important; background:none !important;}
.printCardCalendar .mrColor2 {background:#e7f2ff !important;}
.printCardCalendar .mrColor2 a {color:#3785e2 !important; font-weight:500; border-color:transparent !important; background:none !important;}
.printCardCalendar .mrColor3 {background:url('/static_root/images/common/patternBg.png') repeat, #f7f8fc !important;}
.printCardCalendar .mrColor3 a {color:#101010 !important; font-weight:500; border-color:transparent !important; background:none !important;}

.printColorState {display:flex; flex-wrap:wrap; justify-content:flex-start; gap:12px;}
.printColorState li {display:flex; flex-wrap:wrap; justify-content:center; align-items:center; gap:5px; font-size:13px; color:#333;}
.printColorState li span {display:inline-flex; flex-wrap:wrap; width:18px; height:18px; border-radius:3px; border:1px solid #aaa;}



@page {size:A4 portrait; margin:8mm; box-sizing:border-box;}
@media print {
	.printA4 * {-webkit-print-color-adjust:exact; print-color-adjust:exact; color:#000;} /* 인쇄 시, background속성 강제로 보이게 지정 */
	.printA4 {min-width:auto; margin:0; padding:0;}
	
	.a4Size {width:208mm; height:297mm; page-break-after:always; margin:0; padding:0; border:none;}
	.printWrap {padding:0;}
	.print-hide {display:none;}
	.printTitle {margin-top:0 !important;}
	.page-break-before {page-break-before:always;}
	.page-break-after {page-break-after:always;}
	
    .printA4 .printWrap table {page-break-inside:auto;}
    .printA4 .printWrap thead {display:table-header-group;}
    .printA4 .printWrap tfoot {display:table-footer-group;}  
    
	/* 일괄인쇄 */
	.printAll {page-break-after:always;}
	
}
