.ISCalendar {
	position:absolute;
	width:240px;
	border:1px solid #C9C9C9;
	border-radius:4px;
	padding:8px 0;
	background-color: #FFF;
	font-size:10px;
	line-height:10px;
	visibility:hidden;
	z-index:10000;	
	box-shadow:0px 0px 10px 0px rgba(50, 49, 49, 0.20);
}

.ISCalendar.custom_period_calendar {
	position:relative;
	float:left;
	visibility:visible;	
}

.datetime_picker .ISCalendar,
.popup_window .select_period .ISCalendar {
	border:none;
	border-radius:0;
	box-shadow:none;
	padding-top:0;
}

.ISCalendar span,
.ISCalendar img {
	float:none;
}

.ISCalendar .selectBoxSimple,
.ISCalendar .selectBoxOver {	
	padding:0 0 8px 0;
	cursor:pointer;
	background-color:transparent;
	border-bottom:1px solid transparent;
	line-height:17px;
	color:#325CC8;
	position:relative;
	margin:0 4px;
	width:100%;
	text-align:center;
	font-size:14px;
	font-weight:700;
}

.ISCalendar .monthPicker {
	width:80px;
	text-align:left;
}	

.ISCalendar td {
	padding:3px;
	margin:0px;
	font-size:10px;
	text-align:right;
	cursor:pointer;
}

.ISCalendar .monthYearPicker {
	background-color: #fff;
	border:1px solid #C9C9C9;
	position:absolute;
	color: #323131;
	left:0px;
	top:15px;
	z-index:1000;
	display:none;
	font-size:12px;
	line-height:1em;
	box-shadow:0px 0px 10px 0px rgba(50, 49, 49, 0.40);
}

.ISCalendar .monthYearPicker div {
	width:100%;
	padding:4px;
	text-align:center;
	float:none;
	clear:both;	
	box-sizing:border-box;
	cursor:pointer;
}

.ISCalendar .monthYearPicker div:hover,
.ISCalendar .monthYearPicker div.active {
	background-color:#F0F4FF;
}

ISCalendar.calendarDiv .monthYearPicker .yearPicker {
	margin:0 0 0 20px;
	}
	
.ISCalendar.custom_period_calendar .yearPicker {
	margin:2px 0 0 0;
}

.ISCalendar .selectBoxSimple.active {
	border-bottom:1px solid #325CC8;
}

.ISCalendar .topBar,
.ISCalendar .topBar .year-month-wrap {
	display:flex;
	position:relative;
	width:100%;
	box-sizing:border-box;
}

.ISCalendar .topBar .year-month-wrap {
	flex-direction:column;
}

.ISCalendar .topBar,
.datetime_picker .ISCalendar .topBar,
.popup_window .select_period .ISCalendar .topBar {
	background-color:transparent;
	color:#325CC8;
	height:auto;
	padding:0 41px;
}

.ISCalendar .calendarTableWrap {
	padding:0 24px;
}
	
.ISCalendar .topBar .arrowDiv {
	position:absolute;
	width:24px;
	height:24px;
	background:transparent url('../images/svg_icons/arrow_sapphire_100.svg') no-repeat center center;
	cursor:pointer;
}

.ISCalendar .topBar #leftDiv {
	left:24px;
	top:0;
}	

.ISCalendar .topBar #rightDiv {
	right:24px;
	top:0;
	transform:rotate(180deg);
}

.ISCalendar .topBar img {
	margin:7px 0 0 3px;
}

.datetime_picker .ISCalendar .topBar img,
.popup_window .select_period .ISCalendar .topBar img {
	filter: brightness(50%);
}

.ISCalendar .topBar .arrowDiv img.calendarArrow {
	position:relative;
	float:left;
	width:20px;
	height:20px;
	margin:0;
}
	
.ISCalendar .topBar img {
	cursor:pointer;
}

.ISCalendar .topBar div {
	float:left;
	margin:0;
}

.ISCalendar .day_cell_content {
	border:1px solid #fff;
	padding:4px;
	line-height:17px;
	font-size:12px;
	box-sizing:border-box;
  	-moz-box-sizing:border-box;
  	-webkit-box-sizing:border-box;
  	border-radius:4px;
  	color:#323131;
}

.ISCalendar .in-period .day_cell_content {
	background-color:#F0F4FF;
	border-color:#F0F4FF;
}

.ISCalendar .today .day_cell_content {
	font-weight:700;
	color:#325CC8;
}

.ISCalendar .activeDay {
	padding:0;
}

.ISCalendar .weekEndDay .day_cell_content {	/* Weekend day in the calendar */
	color:#AA2200;
}

.ISCalendar .activeDay .day_cell_content,
.ISCalendar .in-period.activeDay .day_cell_content {
	background-color:#325CC8;
	border-color:#325CC8;
	color:#fff;
	font-weight:bold;
}

/* Future or inaccessible period in the calendar */			
.ISCalendar .inaccessiblePeriod .day_cell_content {
	color:#bbbbbb;
	cursor:default;
}

.custom_period_calendar table.calendarTable{
	width:100%;
	color:#233d6d;
}

.datetime_picker .ISCalendar table.calendarTable,
.popup_window .select_period .ISCalendar table.calendarTable {
	color:#323131;
}

.ISCalendar td {
	font-size:10px;
	padding:0;
	height:16px;
	width:19px;
	padding:1px;
	text-align:center;
}
	
.ISCalendar td.weekDayNames,
.datetime_picker .ISCalendar td.weekDayNames,
.popup_window .select_period .ISCalendar td.weekDayNames {
	background-color:transparent;
	color:#323131;
	font-weight:bold;
	border:none;
}

.ISCalendar td.weekNumbers {
	border-right:1px solid #9cb2cc;
	background-color:#eaf2f9;
	}	

div#time_period_warning{
	clear: left;
    float: left;
    margin: 8px 0 0 3%;
    font-size:11px;
    color:red;
	}

button.IS_Button.disabled_time_period_confirm_button{
	background-image:none;
	color:#999999;
	cursor:default;
	}	
	
	
/* One calendar for selecting a date. */
.select_period.one_calendar {
	width: 352px;
}

.select_period.one_calendar .custom_periods {
	width: 194px;
}

/* Two calendars for selecting a custom time interval. */
.select_period.two_calendars {
	width: 548px;
}

.select_period.two_calendars .custom_periods {
	width: 390px;
}

.select_period.one_calendar span.from.period,
.select_period.one_calendar span.to,
.select_period.one_calendar div.to,
.select_period.two_calendars span.from.single,
.select_period.one_calendar .time_from,
.select_period.one_calendar .time_to {
	display:none;
}

.select_period.one_calendar span.from.single,
.select_period.two_calendars span.to,
.select_period.two_calendars div.to,
.select_period.two_calendars .time_from,
.select_period.two_calendars .time_to {
	display:block;
}
	
.popup_window .select_period {
	display:flex;
}

.popup_window .select_period.one_calendar,
.popup_window .select_period.one_calendar .custom_periods,
.popup_window .select_period.two_calendars,
.popup_window .select_period.two_calendars .custom_periods {
	width:auto;
}

div.periods{
	background-color:#eaf2f9;
	width:184px;
	height:260px;
	padding:8px;
	flex-shrink:0;
}

.popup_window.newLayout_2022 .select_period .periods {
	background-color:#fff;
	border-right:1px solid #C9C9C9;
	padding:0;
	height:100%;
}

.popup_window .select_period .custom_periods {
	margin:0;
	padding:10px;
	display:flex;
	flex-direction:column;
}

.popup_window .select_period .periods a {
	display:block;
	padding:10px 20px;
	color:#323131;
	text-decoration:none;
	margin:0;
	cursor:pointer;
}

.popup_window .select_period .periods a:first-child {
	margin-top:10px;
}

.popup_window .select_period .periods a:last-child {
	margin-bottom:10px;
}

.popup_window .select_period .periods a:hover {
	background-color:#FAFAFA;
}

.popup_window .select_period .periods a.active {
	background-color:#F0F4FF;
}

div.periods, 
div.custom_periods,
div.calendarContainer {
	position:relative;
	float:left;
}

div.calendarContainer {
	display:flex;
	margin:12px 0;
}

.ISCalendar .selected_datetime_display {
	background-color:#F0F4FF;
	width:100%;
	padding:12px;
	margin:8px 0;
	text-align:center;
	font-size:24px;
	font-weight:500;
	line-height:32px;
	color:#323131;
	position:relative;
	float:left;
	white-space:nowrap;
	box-sizing:border-box;
}

div.periods a{
	color:#28435b;
	display:block;
	margin:12px 0;
	font-size:12px;
	}
	
div.custom_periods{
	margin:5px 0;
	line-height:16px;
	}

div.custom_periods div.choose_type{
	position:relative;
	float:left;
	width:100%;
	}

div.select_period div.time_container{
	position:relative;
	float:left;
	width:100%;
	}
	
div.custom_periods div.period_part,
div.custom_periods div.from, 
div.custom_periods div.to, 
div.custom_periods div.time_from, 
div.custom_periods div.time_to {
	position:relative;
	float:left;
}

div.custom_periods div.period_part {
	display:flex;
	flex-direction:column;
	justify-content:space-between;
}

div.custom_periods div.from, 
div.custom_periods div.to {
	padding:8px 0 0 0;
	border:1px solid #C9C9C9;
	border-radius:4px;
	width:240px
}

div.custom_periods div.period_part.to_part {
	margin-left:12px;
}
	
div.custom_periods div.time_from,
div.custom_periods div.time_to {
	margin:0 5px 10px 10px;
}

div.custom_periods .period_part .time_from,
div.custom_periods .period_part .time_to {
	margin:12px 0 0 0;
	width:100%;
}

div.custom_periods .period_part label {
	font-weight:700;
	font-size:14px;
	clear:both;
}

div.custom_periods .period_part input,
div.custom_periods .period_part input.newLayout_2022.clockpicker {
	width: 100%;
	margin:4px 0 0 0;
	box-sizing: border-box;
	position: relative;
	float: left;
}
	
div.custom_periods span.from, 
div.custom_periods span.to,
.ISCalendar .title {
	position:relative;
	float:left;
	font-size:12px;
	line-height:1em;
	margin:0 0 0 8px;
}

div.custom_periods .time_container label {
	position:relative;
	float:left;
	margin-right:5px;
}

div.custom_periods .time_container label span {
	line-height:20px;
	margin:0;
}

div.custom_periods div.calendar_container{
	position:relative;
	float:left;
	margin:0;
	width:100%;
	display:flex;
	justify-content:center;
} 