/*20250415 캘린더추가*/
.calendar .cal_title{display:flex; justify-content: flex-end; flex-direction: column; align-items: center; gap: 3.2rem; position:relative; margin-bottom:4rem;}
.calendar .cal_title .cal_month h4 {margin:0; font-size: clamp(2.5rem, 2.286rem + 0.571vw, 2.8rem); font-weight:700; color:#121212;}
.calendar .cal_title .form-move div{display:flex; gap:0.6rem; align-items: center; font-size: 1.6rem;}
.calendar .cal_title .form-move div select{width:auto; height:4.5rem; padding:0 4rem 0 1rem; border-radius:0.5rem; font-size:1.6rem; border:1px solid #dcdcdc; 
    background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='20' height='20' fill='none'%3E%3Cpath fill='%23232323' fill-rule='evenodd' d='M3.6 13a1 1 0 0 1-.1-1l6-6.6a1 1 0 0 1 1 0l6 6.7a.7.7 0 0 1-1 .8L10 7l-5.5 6q-.5.4-1 .1' clip-rule='evenodd'/%3E%3C/svg%3E");
    background-color: transparent !important; background-size: 2rem;  background-position: center right 1rem; }
.calendar .cal_title .form-move .formBtn{text-align:center; max-width:8rem; min-width:8rem; height:4.5rem; border-radius:0.5rem; color:#fff; background: #172e54; border-color: #172e54; align-content: center;}
.calendar .cal_title .form-move fieldset {display:flex; gap: clamp(0.941rem, 0.847rem + 0.5vw, 1.412rem)}
.calendar .cal_title .cal_btn{display:flex; gap: clamp(1.882rem, 1.788rem + 0.5vw, 2.353rem); align-items: center;}
.calendar .cal_title .cal_btn a{display: flex; align-items: center;  justify-content: center; gap:0.4rem; border-radius: 0.5rem; width:2.5rem; height:auto; aspect-ratio: 1; color:#3a3a4a; background:#fff; box-shadow: 0 0 0 1px #dcdcdc; font-size:1.5rem; padding:0 1.5rem; transition: all 0.3s;}
.calendar .cal_title .cal_btn a:is(:hover,:focus){box-shadow: 0 0 0 2px var(--Brand-Color-main, #1f57b0); color:var(--Brand-Color-main, #1f57b0); filter: drop-shadow(4px 4px 12px rgba(244, 244, 244, 0.6));}


.calendar table.calendar{border:1px solid #dbdbdb; border-top: none; border-right: none; border-left: none; width: 100%;}
.calendar table.calendar thead tr{border-bottom:2px solid #3a3a4a; border-top: none; border-right: none; border-left: none;}
.calendar table.calendar thead tr th{font-size: 1.7rem;}
.calendar table.calendar tbody tr td{border-color:#dbdbdb;}
.calendar table.calendar tbody tr td br {display:none;}
.calendar table.calendar thead tr th { padding:0 1.6rem 1.6rem; font-weight: 600; }
.calendar table.calendar thead tr th.sun {color:var(--Text-Color-Red, #E53535);}
.calendar table.calendar thead tr th.sat {color:var(--Brand-Color-main, #1f57b0);}
.calendar table.calendar tbody td {position:relative; height:10rem; border-right:1px solid #dbdbdb; border-bottom:1px solid #dbdbdb; padding:1rem;  /*font-weight:bold;*/ vertical-align:top; z-index: 0;}
.calendar table.calendar td.used {cursor:pointer; }
.calendar table.calendar td.used:before{content:""; position:absolute; left:0.5rem; top:0.5rem; width:calc(100% - 1rem); height:calc(100% - 1rem); background: linear-gradient(125deg, var(--Brand-Color-main, #1f57b0), #d5e2ec); opacity:0.1; z-index:-2; border-radius:1.6rem; }
.calendar table.calendar td.used.sel {cursor:pointer;}
.calendar table.calendar td:last-child {color:var(--Brand-Color-main, #1f57b0); border-right: none;}
.calendar table.calendar td:first-child {color:var(--Text-Color-Red, #E53535);}
.calendar table.calendar td img {position:relative; cursor:pointer; display:none;}
.calendar table.calendar td.sel {box-shadow: inset 0 0 0 3px var(--Brand-Color-susub, #2069D7);}
.calendar table.calendar td.today{color:#fff;}
.calendar table.calendar td.today:after {content:""; position:absolute; left:0; top:0.75rem; width:2.8rem; height:1.7em; background:var(--Brand-Color-susub, #2069D7); z-index: -1;  border-radius: 0 0.5rem 0.5rem 0;}
.calendar table.calendar td .views { display: flex; align-items: flex-start; gap: 0.5rem;  cursor:pointer; line-height: 1.5; font-size: 1.3rem; color:#121212;}
.calendar table.calendar td .views:before{content:""; display:inline-block; width: 1.5rem; aspect-ratio: 1; vertical-align: middle; background-color: var(--Brand-Color-main, #1f57b0); forced-color-adjust: none; -webkit-mask-repeat: no-repeat; -webkit-mask-position: center center; -webkit-mask-size: contain; mask-repeat: no-repeat; mask-position: center center; mask-size: contain; -webkit-mask-image: url(/images/default/main/icon_calendar.svg); mask-image: url(/images/default/main/icon_calendar.svg);}
.calendar table.calendar td .views:first-of-type {margin-top: 1.5rem;}


.form_sp {margin-right:0 !important; padding-right:0;}


.calendar2 {border:1px solid #dbdbdb;}
.calendar2 thead tr th {height:22px; background:#E7E7E7;}
.calendar2 tbody tr td {height:60px; border-right:1px solid #dbdbdb; border-bottom:1px solid #dbdbdb; padding-left:10px; padding-top:5px; font-weight:bold; vertical-align:top;}
.calendar2 tbody tr td.sat {color:#1098F7;}
.calendar2 tbody tr td.mon {color:#FF3A20;}
.calendar2 tbody tr td img {position:relative;  cursor:pointer;}
.ui-tooltip {font-size:1.3rem; color:#000080; font-weight:bold;}



.calendar .b_bullet {margin-top: 6.4rem; display: flex; flex-direction: column; gap: 0.45rem; margin-bottom: clamp(1rem, 0.966rem + 0.168vw, 1.168rem); font-size: 2.6rem; color: #212121;  font-weight: 700; position: relative;}
.boardViewContainer .schedule-list {width: 100%;border-collapse: collapse;border-spacing: 0;}
.boardViewContainer .schedule-list caption {display: none;}
.boardViewContainer .schedule-list th {color: #4b4b4b;background-color: #F8F8F8; padding:1rem 0; font-size:1.8rem; font-weight: bold;border-top: solid 2px #221E1F;border-bottom: solid 1px #ddd; border-left:1px solid #ddd;}
.boardViewContainer .schedule-list th:first-child {border-left: none;}
.boardViewContainer .schedule-list td {padding:1.2rem 0;border-bottom: solid 1px #ddd; border-left:1px solid #ddd; text-align: center;}
.boardViewContainer .schedule-list td a {}
.boardViewContainer .schedule-list tbody tr td:first-child {padding-left: 1rem;text-align: left;border-left: none;}
.boardViewContainer .schedule-list tr.used { cursor:pointer;}
.boardViewContainer .schedule-list tr.used:hover {background:#EDF4FF;}
.boardViewContainer .schedule-list .subject{position:relative; padding-left:1rem;}
.boardViewContainer .schedule-list .subject:before{ content : ""; display : block; position : absolute; left :0; top:0.3em; width : 0.3em; height : 0.3em; background : var(--Brand-Color-deep, #172e54);}

.schedule-view {width: 100%;border-collapse: collapse;border-spacing: 0;}
.schedule-view caption {display: none;}
.schedule-view th,
.schedule-view td {color: #5f5f5f;padding: 0;border-bottom: solid 1px #bababa;}
.schedule-view th {background-color: #f7f7f7;border-right: solid 1px #bababa;}
.schedule-view td {padding: 10px 20px;line-height: 19px;color: #5f5f5f;}
.schedule-view tbody tr:first-child th,
.schedule-view tbody tr:first-child td {border-top: 2px solid #003ea1;}

div.tabs {position:relative; overflow:hidden; margin-bottom:25px;}
div.tabs ul li {width:108px; padding-top:8px; text-align:center; float:left;height:25px; background:#003A7B;  font-weight:bold; margin-right:10px; cursor:pointer; margin-top:10px;}
div.tabs ul li a {color:#fff; display:block; height:25px;}
div.tabs ul li.on a {color:yellow;}

@media (max-width:1200px){	
	.calendar .cal_title {justify-content: space-between;}
	.calendar .cal_title .cal_btn {position:static; transform:unset;}
}
@media (max-width:768px){
	.calendar .cal_title{flex-direction: column;  align-items: center;  gap: 2rem;}
	.calendar .cal_title .form-move div .krds-form-select{padding:0 2rem 0 0.5rem;  background-position: center right 0.5rem; background-size: 1rem;}
	.calendar .cal_title .cal_btn a {padding:0; font-size: 1rem;}
	
	.calendar table.calendar thead,
	.calendar table.calendar td.not{display:none;}
	.calendar table.calendar tbody tr td{display:block; border-right:none; height:auto;  min-height: 5rem;}
	
	.boardViewContainer .schedule-list{font-size:var(--font-size-15);}
}

.c_form td input,
.c_form td textarea {border: 1px solid #ddd;}
.c_form td input[type="text"] {height: 18px;}
.c_form {border-collapse: collapse;margin-top: 81px;border-top:2px solid #d7d7d7;}
.c_form caption {text-indent: -2000px; height: 0; margin: 0; padding: 0; font-size: 0; line-height: 0; overflow:hidden;}
.c_form tr {border-bottom: 1px solid #d7d7d7;}
.c_form th, table.c_form td { line-height:150%; }
.c_form th {padding:8px 8px; background:#f8f8f8; font-weight:bold; color:#292929; text-align:center; vertical-align:middle;}
.c_form td {text-align: left; padding:5px 10px; color:#5f5c5c; font-size:12px;}
.c_form td.t_left {text-align: left; vertical-align: middle; padding:15px 10px; color:#5f5c5c; font-size:12px;}
.c_form td input.captcha {vertical-align: top !important;height: 25px;}
label {padding-right:10px;}
.submit {width:100%; text-align:center;  margin-bottom:30px;}
.submit input {vertical-align:top;}
.ui-datepicker{font-size:1.7rem !important;}
.ui-datepicker select{width:auto; min-width:auto; height:auto;}
input.datepicker { min-width:260px; background:url("/images/default/content/cal.png") no-repeat 98% 50%; background-size: 20px auto; }



/* ����Ʈ ���̺� */
.tblDataList {border-top: 2px solid #221E1F; clear:both;}
.tblDataList th a, table.tblDataList td a, table.tblForm td a { color:#3a58a7; text-decoration:none; }
.tblDataList th a:hover, table.tblDataList td a:hover, table.tblForm td a:hover { color:orange; text-decoration:underline; }


.tblDataList { width:100%; border-collapse:collapse;  margin-bottom:4rem;}
.tblDataList th, table.tblDataList td { border:1px solid #dddddd; }
.tblDataList th { padding:1rem 0; background:#fafafa; color:#333; letter-spacing:-1px; }
.tblDataList td { padding:2rem; color:#333; text-align:center; }
.tblDataList td img { vertical-align:middle; }
.tblDataList td.left { text-align:left; }
.tblDataList td.right { text-align:right; }
.tblDataList td.nowrap { white-space:nowrap; }

.tblDataList {border-top: 2px solid #221E1F; clear:both; margin-bottom:4rem;}
.tblDataList th a, table.tblDataList td a, table.tblForm td a { color:#3a58a7; text-decoration:none; }
.tblDataList th a:hover, table.tblDataList td a:hover, table.tblForm td a:hover { color:orange; text-decoration:underline; }
.tblDataList { width:100%; border-collapse:collapse;}
.tblDataList th, table.tblDataList td { border:1px solid #dddddd; }
.tblDataList th { padding:1rem 0; background:#fafafa; color:#333; letter-spacing:-1px; }
.tblDataList td { padding:2rem; color:#333; text-align:left; }
.tblDataList td img { vertical-align:middle; }
.tblDataList td.left { text-align:left; }
.tblDataList td.right { text-align:right; }
.tblDataList td.nowrap { white-space:nowrap;}
.btn_list{display:inline-block; overflow:hidden; position:relative; min-width:100px; height:45px; line-height:43px; box-sizing:border-box; padding:0 15px; margin:2px 0px; border:1px solid #262520; background: #262520; color:#fff !important; text-align:center; vertical-align:top; transition:all 0.4s ease-out 0.1s; cursor:pointer; z-index:0; font-weight:500;}
.btn_edit{display:inline-block; overflow:hidden; position:relative; min-width:100px; height:45px; line-height:43px; box-sizing:border-box; padding:0 15px; margin:2px 0px; border:1px solid #293b9b; background: #4456b8; color:#fff !important; text-align:center; vertical-align:top; transition:all 0.4s ease-out 0.1s; cursor:pointer; z-index:0; font-weight:500;}
.btn_delete{display:inline-block; overflow:hidden; position:relative; min-width:100px; height:45px; line-height:43px; box-sizing:border-box; padding:0 15px; margin:2px 0px; border:1px solid #d60737; background: #e42c56; color:#fff !important; text-align:center; vertical-align:top; transition:all 0.4s ease-out 0.1s; cursor:pointer; z-index:0; font-weight:500;}




/* datepicker Style */
.ui-datepicker { width: 270px !important; padding: 0; display: none; border: 0; margin-top: 10px; box-shadow: rgba(99, 99, 99, 0.2) 0px 2px 8px 0px;}
.ui-widget.ui-widget-content {padding: 0; border: 0; border-radius: 3px; overflow: hidden; background: #fff; }
.ui-datepicker .ui-widget-header { position: relative; padding: 6px 0 36px 0 !important; border: 0; background: #003967; color: #fff; border-radius: 0; font-family: 'Pretendard', 'Noto Sans KR', '나눔고딕', 'Nanum Gothic', 'sans-serif';}
.ui-datepicker select.ui-datepicker-month, .ui-datepicker select.ui-datepicker-year { width: 70px; height: 26px; line-height: 26px; background: rgba(0,0,0,0.15) url('/images/arrow-button.png') 100% -27px no-repeat; margin: 0 4px; padding: 0 6px; border: 0; border-radius: 3px; color: #fff; font-size: 13px; font-weight: bold; box-sizing: border-box; -webkit-appearance: none; -moz-appearance: none; appearance: none; /* 화살표 없애기 */ font-family: 'Pretendard', 'Noto Sans KR', '나눔고딕', 'Nanum Gothic', 'sans-serif';}
.ui-datepicker select.ui-datepicker-month:hover, .ui-datepicker select.ui-datepicker-year:hover { background: rgba(0,0,0,0.3) url('/images/arrow-button.png') 100% -27px no-repeat; }
.ui-datepicker select::-ms-expand {
display: none; /* 화살표 없애기 for IE10, 11*/
}
.ui-datepicker .ui-datepicker-title {display: flex;  flex-direction: row-reverse; align-items: center;  justify-content: center; line-height: 2em; text-align: center; margin: 0px 2.3em; font-size:14px; font-weight:bold; letter-spacing:0; }
.ui-datepicker-title .ui-datepicker-year option, .ui-datepicker-title .ui-datepicker-month option { background: #fff; color: #333; }
.ui-datepicker-title .ui-datepicker-year { }
.ui-datepicker-title .ui-datepicker-month { }
.ui-datepicker .ui-datepicker-calendar { position: relative; width: 260px; padding-top: 100px; margin: 0 auto; }
.ui-datepicker-calendar thead tr { position: absolute; top: -24px; left: 5px; right: 5px; }
.ui-datepicker-calendar thead th { float: left; display: block; padding: 0; width: 14.2857%; color: #fff; font-size:11px; letter-spacing:1px; opacity: 0.6 }
.ui-datepicker .ui-datepicker-prev, .ui-datepicker .ui-datepicker-next { position: absolute  !important; top: 3px !important; width: 33px !important; height: 33px !important; text-indent: -9999px; cursor: pointer }
.ui-datepicker .ui-datepicker-prev,
.ui-datepicker .ui-datepicker-prev-hover {left:0 !important;}
.ui-datepicker .ui-datepicker-prev.ui-state-hover { background: rgba(0,0,0,0.1); border: 0; }
.ui-datepicker .ui-datepicker-prev .ui-icon { background: url('/images/arrow-button.png') 0 0 no-repeat; }
.ui-datepicker .ui-datepicker-next,
.ui-datepicker .ui-datepicker-next-hover { right: 0 !important; }
.ui-datepicker .ui-datepicker-next.ui-state-hover { background: rgba(0,0,0,0.1); border: 0; }
.ui-datepicker .ui-datepicker-next .ui-icon { background: url('/images/arrow-button.png') -16px 0 no-repeat; }
.ui-datepicker .ui-state-default { display: block; border: 0 !important; border-radius: 15px; width: 30px; height: 30px; line-height: 30px; padding: 0; margin: 4px auto; font-size: 12px; text-align: center; background: #fff !important; font-weight: normal !important; color: #333 !important; box-sizing: border-box; font-family: 'Pretendard', 'Noto Sans KR', '나눔고딕', 'Nanum Gothic', 'sans-serif';}
.ui-datepicker .ui-state-default.ui-state-hover {}
.ui-datepicker-today .ui-state-default { color: #003967 !important; font-weight: bold !important; }
.ui-datepicker-current-day .ui-state-default { background: #003967 !important; color: #fff !important;}
.ui-datepicker-buttonpane { overflow: hidden; border-top: 1px solid #eee; margin-top: 1rem !important;}
.ui-datepicker-buttonpane button[data-handler="today"] {color: #003967 !important; opacity: 0.75; font-weight: 600 !important;}
.ui-datepicker-buttonpane button[data-handler="hide"] { }


/* ie add Style */
.ui-datepicker td, .ui-datepicker th { border: 0 }
.ui-datepicker .ui-datepicker-buttonpane button { float: right; cursor: pointer; width: auto; margin: 0.5em 0.2em 0.4em; padding: 0.2em 0.6em 0.3em; overflow: visible; line-height: 1;}
.ui-datepicker .ui-datepicker-buttonpane button.ui-datepicker-current { float: left; color: #003967 !important; font-weight:600 !important}
.ui-datepicker .ui-datepicker-prev span, .ui-datepicker .ui-datepicker-next span { display: block; position: absolute; left: 50%; margin-left: -8px; top: 50%; margin-top: -8px; }
.ui-corner-all { border-radius: 3px; }
.ui-icon { display: block; width: 16px; height: 16px; }

.ui-timepicker-oneLine{margin:10px 0; padding:0; }
.ui-timepicker-div.ui-timepicker-oneLine .ui_tpicker_time_label{padding-top:4px;}
.ui-timepicker-div.ui-timepicker-oneLine{padding-right:10px;}
.ui-timepicker-oneLine .ui_tpicker_time_label{padding: 4px 0 0 16px; font-size: 14px;}
.ui-timepicker-oneLine .ui-timepicker-select{width: 50px; height: 30px; line-height: 30px;  font-size: 14px; border: 1px solid #eee; background: #f7f7f7 url("../../images/default/icon/icon_select.svg") no-repeat right 0.15rem center; background-size:15px 15px; margin: 0; border-radius: 3px; padding:0 20px 0 5px; text-align:left;}

.ui-timepicker-div {margin-top: 1rem; padding: 0 15px; font-family: 'Pretendard', 'Noto Sans KR', '나눔고딕', 'Nanum Gothic', 'sans-serif';}
.ui-timepicker-div dl { text-align: left; }
.ui-timepicker-div dl dt { float: left; clear:left; padding: 0 !important}
.ui-timepicker-div dl dd { margin: 0 0 10px 40% !important; }
.ui-timepicker-div td { font-size: 90%; }
.ui-tpicker-grid-label { background: none; border: none; margin: 0; padding: 0; }
.ui-timepicker-div .ui-timepicker-select {width:100%; padding: 0 15px; font-family: 'Pretendard', 'Noto Sans KR', '나눔고딕', 'Nanum Gothic', 'sans-serif';}
.ui-timepicker-div .ui_tpicker_hour_label,
.ui-timepicker-div .ui_tpicker_minute_label {line-height: 1;}
.ui-timepicker-div .ui_tpicker_minute_slider,
 .ui-timepicker-div .ui_tpicker_hour_slider {background:#f4f4f4 !important;}
 .ui-timepicker-div .ui-slider-handle {background:#003967 !important; border-radius: 0 !important;}
.ui-timepicker-rtl{ direction: rtl; }
.ui-timepicker-rtl dl { text-align: right; padding: 0 5px 0 0; }
.ui-timepicker-rtl dl dt{ float: right; clear: right; }
.ui-timepicker-rtl dl dd { margin: 0 40% 10px 10px; }

