#calendar_adimin, #calendar_front { display: flex; align-items: center; justify-content: center; }

.datepicker_style_0_wrap { padding: 30px; border: none; margin-top: 0; }
.datepicker_style_0_wrap table  {border-collapse: collapse;}
.datepicker_style_0_wrap table.cal_tb thead th {font-size: 15px;font-size: 1.5rem;line-height: 15px;line-height: 1.5rem;font-weight: 500;color: #2d2d2d;background-color: #f8f9fb;padding-top: 17px;padding-bottom: 16px;text-align: center;border-radius: 0px;}
.datepicker_style_0_wrap table.cal_tb thead th:first-child { color: red; border-top-left-radius: 10px; }
.datepicker_style_0_wrap table.cal_tb thead th:last-child { color: blue; border-top-right-radius: 10px;  }
.datepicker_style_0_wrap table.cal_tb tbody tr:last-child td { border-bottom: none; }  
.datepicker_style_0_wrap table.cal_tb tbody tr:last-child td:last-child { border-right: none; border-bottom-right-radius: 10px; border-bottom: none; } 
.datepicker_style_0_wrap table.cal_tb tbody tr:last-child td:first-child { border-bottom-left-radius: 10px; border-bottom: none; } 
.datepicker_style_0_wrap table.cal_tb tbody td {border-radius: 0px;font-size: 17px;font-size: 1.7rem;line-height: 23px;line-height: 2.3rem;font-weight: 400;color: #2d2d2d;box-sizing: border-box;height: 163px;white-space: nowrap;border: 1px solid #f1f0f7;padding-top: 18px;padding-bottom: 18px;display: table-cell;position: relative;text-align: right;vertical-align: top;}
.datepicker_style_0_wrap table.cal_tb tbody td:first-child { border-left: none; color: red;}
.datepicker_style_0_wrap table.cal_tb tbody td:last-child { /*border-right: 1px solid #f1f0f7;*/ color: blue; }
.datepicker_style_0_wrap table.cal_tb tbody td .calendar_date {position: relative;display: block;width: calc(100% - 20px);padding-right: 20px;overflow: hidden; z-index: 3; color: inherit; height: auto;}
#calendar_adimin .datepicker_style_0_wrap table.cal_tb tbody td.today { background-color: #ecf2f9; }
.datepicker_style_0_wrap table.cal_tb tbody td.today .calendar_date{color:#20a2dc !important; font-weight: 700 !important;}
.datepicker_style_0_wrap table.cal_tb tbody td.today .calendar_date:before{content:""; background: url("../img/calendar_today.png") no-repeat center center; padding-left:6px; padding-right: 10px;}
.datepicker_style_0_wrap table.cal_tb tbody td.today:after { border: none !important; }
.datepicker_style_0_wrap table.cal_tb tbody .schedule_list { width: 100%;position: relative;height: auto;overflow-wrap: anywhere; padding: 0; z-index: 0; display: block; }

#calendar_front .datepicker_style_0_wrap table.cal_tb tbody td { z-index: 1; }
#calendar_front .datepicker_style_0_wrap table.cal_tb tbody td.have_schedule {cursor: pointer;}

.datepicker_style_0_wrap .calendar_month_text {display: inline-block;}
.datepicker_style_0_wrap .calendar_month_text > span {font-size: 42px;font-size: 4.2rem;line-height: 44px;line-height: 4.4rem;font-weight: 700;}
.datepicker_style_0_wrap .top_pre_mon {display: inline-block;margin-right: 45px;margin-bottom: 2px;width: 30px;height: 30px;background-image: url('../img/keyboard_arrow_down_24dp_FILL0_wght400_GRAD0_opsz20.svg');background-position: 10px center;background-size: 7px;background-repeat: no-repeat;background-color: #fff;border-radius: 50%;overflow: hidden;box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1), 0px 1px 3px rgba(0, 0, 0, 0.08);}
.datepicker_style_0_wrap .top_pre_year {display: inline-block;margin-right: 15px;margin-bottom: 2px;width: 30px;height: 30px;background-image: url('../img/keyboard_arrow_down_24dp_FILL0_wght400_GRAD0_opsz20.svg');background-position: 10px center;background-size: 7px;background-repeat: no-repeat;background-color: #fff;border-radius: 50%;overflow: hidden;box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1), 0px 1px 3px rgba(0, 0, 0, 0.08);}
.datepicker_style_0_wrap .top_next_mon {display: inline-block;margin-left: 45px;margin-bottom: 2px;width: 30px;height: 30px;background-image: url('../img/keyboard_arrow_down_24dp_FILL0_wght400_GRAD0_opsz20_right.svg');background-position: 12px center;background-size: 7px;background-repeat: no-repeat;background-color: #fff;border-radius: 50%;overflow: hidden;box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1), 0px 1px 3px rgba(0, 0, 0, 0.08);}
.datepicker_style_0_wrap .top_next_year {display: inline-block;margin-left: 15px;margin-bottom: 2px;width: 30px;height: 30px;background-image: url('../img/keyboard_arrow_down_24dp_FILL0_wght400_GRAD0_opsz20_right.svg');background-position: 12px center;background-size: 7px;background-repeat: no-repeat;background-color: #fff;border-radius: 50%;overflow: hidden;box-shadow: 0px 4px 6px rgba(0, 0, 0, 0.1), 0px 1px 3px rgba(0, 0, 0, 0.08);}
.datepicker_style_0_wrap a:hover .top_pre_mon { background-color: #fff; }
.datepicker_style_0_wrap a:hover .top_next_mon { background-color: #fff; }

.schedule-bar-bg {position: absolute;top: 0;left: 10px;right: 10px;bottom: 0;overflow: hidden;text-overflow:ellipsis;white-space: nowrap;text-align: center;}

#calendar_adimin .schedule-bar { cursor: pointer; position: absolute;height: 35px;font-weight: 400;font-size: 14px;line-height: 35px;font-weight: 600;text-indent: 1ch;box-sizing: border-box; z-index: 3; }
#calendar_front .schedule-bar {position: absolute;height: 35px;font-weight: 400;font-size: 14px;line-height: 35px;font-weight: 600;text-indent: 1ch;box-sizing: border-box;}

#calendar_front .calendar_btn { padding: 10px 20px; border: none; background-color: #000; font-weight: 500; color: #fff; font-size: 16px; border-radius: 5px; cursor: pointer; }

#calendar_adimin .show_calendar_btn {display: inline-block;vertical-align: bottom;width: 34px;height: 34px;background-image: url('/weven_template/theme/_admin_style2_new/resource/img/34x38_calendar_icon.png');background-size: 34px 34px;background-position: center center;background-repeat: no-repeat;}
#calendar_adimin .show_calendar_btn.active {background-image: url('/weven_template/theme/_admin_style2_new/resource/img/34x38_calendar_icon_active.png');}
#calendar_adimin .show_list_btn {display: inline-block;vertical-align: bottom;width: 34px;height: 34px;background-image: url('/weven_template/theme/_admin_style2_new/resource/img/34x34_list_icon.png');background-size: 34px 34px;background-position: center center;background-repeat: no-repeat;}
#calendar_adimin .show_list_btn.active {background-image: url('/weven_template/theme/_admin_style2_new/resource/img/34x34_list_icon_active.png');}

.calendar_popup_wrap { border-radius: 20px; max-width: 663px;}
.calendar_popup_wrap .calendar_popup_con {padding: 21px 0px 35px 0px; }
.calendar_popup_wrap .calendar_popup_title_con { padding: 0 19px 0 26px; }
.calendar_popup_wrap .calendar_popup_title { font-size: 16px; font-weight: 800; }
.calendar_popup_wrap .calendar_popup_close_btn_con { float: right; }
.calendar_popup_wrap .calendar_popup_close_btn_con a { display: inline-block; width: 21px; height: 21px; transition: opacity 0.3s; background-image: url("../img/11x11_464a53_delete_icon.png"); background-repeat: no-repeat; background-position: center; }
.calendar_popup_wrap .calendar_popup_contents_wrap { margin-bottom: 20px;  padding: 32px 10px 0 40px; margin-top: 18px; border-top: 1px solid #e8eef6; }
.calendar_popup_wrap .calendar_popup_contents_wrap_title {text-align: center; font-size: 28px; letter-spacing: -0.02em; font-weight: 800; margin-bottom: 31px;}
.calendar_popup_wrap .calendar_popup_contents_wrap_title .today_date{color: #5a74eb;}
.calendar_popup_wrap .calendar_popup_contents {padding-right: 28px; max-height: 400px; overflow-y: auto; } 
.calendar_popup_wrap .calendar_popup_contents::-webkit-scrollbar {width: 2px;}
.calendar_popup_wrap .calendar_popup_contents::-webkit-scrollbar-button{display: none;}
.calendar_popup_wrap .calendar_popup_contents::-webkit-scrollbar-thumb{background-color: #dde2f4;}
.calendar_popup_wrap .calendar_popup_schedule_box { padding: 22px 26px;margin-bottom: 10px; border-radius: 7px; background-color: #f2f5fc;}
.calendar_popup_wrap .calendar_popup_schedule_box:last-child { margin-bottom: 0; }
.calendar_popup_wrap .calendar_popup_schedule_title { font-size: 16px; font-weight: 800; color: #000; }
.calendar_popup_wrap .calendar_popup_schedule_date { margin-top: 10px; font-size: 13px; font-weight: 500;  color: #000; word-break: break-all; }
.calendar_popup_wrap .calendar_popup_schedule_date_box {font-size: 13px; font-weight: 500; display: inline-block; background-color: #fff; border: 1px solid #dae7ef; border-radius: 4px; padding-top: 3px; padding-bottom: 3px; padding-right: 8px; padding-left: 7px; margin-right: 7px;}
.calendar_popup_wrap .calendar_popup_schedule_content { overflow: hidden; margin-top: 8px; font-size: 14px; color: #000; line-height: 20px;}

.calendar_popup_footer { display: flex; justify-content: center; padding: 12px 35px 0 35px;}
.calendar_popup_footer .calendar_close_btn { cursor: pointer; display: inline-block; font-size: 15px; font-weight: 700; border: 1px solid #000; border-radius: 6px; border: 1px solid #98b8c4;  background-color: #fff; padding: 12px 61px;}

.calendar_button_1 { cursor: pointer; float: right; padding: 9px 17px; border-radius: 5px; background-color:rgb(0, 0, 0); color: #fff; font-size: 14px; font-weight: 500; border: none;  }

/* 에디터에서는 today-mark positioning 대신 td.today에 bgc */
[data-wv-design-mode="expert"] #calendar_front td.today{ background-color: rgb(236, 242, 249); }
[data-wv-design-mode="expert"] #calendar_front .schedule-bar{ z-index: 9; pointer-events: none; }
[data-wv-design-mode="expert"] #calendar_front .today-mark{ display: none !important; }