/* Новая вёрстка */

.main__container
{
	padding-right: 0 !important;
}
.calendar__table,
.header-table
{
	position: relative;
	width: 100%;
	background-color: #eee;
}
.calendar__thead
{
	position: sticky;
	top: 80px;
	width: 100%;
	background-color: #2c8fb0;
	color: #fff;
	z-index: 10000;
}
.calendar__tbody
{
	width: 100%;
	background-color:#eee;
}

.calendar__tr
{
	display: -webkit-box;
	display: flex;
	display: -ms-flexbox;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	justify-content: space-between;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;

	-webkit-align-items: center;
	align-items: center;

	background-color: #eee;

}
.calendar__tr:nth-child(2n)
{
	background-color: #b0c1c5;
}
.calendar__thead .calendar__tr
{
	background-color: #5c9bb0;
	color: #fff;

}
.calendar__thead .calendar__tr.calendar__tr_subhead
{
	background-color: #fff;
}
.calendar__thead .calendar__tr.calendar__tr_subhead .calendar__td
{
	width: 100%;

}
.calendar__td,
.calendar__th
{
	height: 100%;
	color: #000;
}
.calendar__th
{
	background-color: #5c9bb0;
	color: #fff;
	text-align: center;
	padding: 15px 10px;
	opacity: 1;
}
.calendar__th.calendar__td_time.weekend
{
	background-color: #ed6d00;
}
.calendar__td_cab
{
	width: 60px;
	text-align: center;
	border-right: 1px solid  #666666;
}
.calendar__td_fio
{
	position: relative;
	width: 300px;
	padding: 5px 10px;
}
.calendar__td_fio .name
{
	font-weight: bold;
	padding: 0;
	margin: 0;
	line-height: 1;
}
.calendar__td_time
{
	width: calc((100% - 300px - 60px - 6px) / 7);
	text-align: center;
	padding: 10px 1px;
	border-left: 1px solid  #666666;
	word-wrap: normal;
}
.calendar__td_time sup
{
	font-size: 75% !important;
}
.weekday{
	display:block;
	padding:0;
	margin:0;
	font-size: 0.7em;
	line-height:0.8em;
}

.calendar__mobile_cab
{
	display: none;
	position: absolute;
	left: 10px;
}
.weekend
{
	color: #ed6d00;
	/*text-shadow: 1px 1px 1px #fff;*/
}
.calendar__th.weekend
{
	color: #fff;
	/*text-shadow: 0px 0px 3px #fff;*/
}
.calendar__departments
{
	display: -webkit-box;
	display: flex;
	display: -ms-flexbox;
	-ms-flex-pack: justify;
	-webkit-box-pack: justify;
	justify-content: space-between;
	-ms-flex-wrap: nowrap;
	flex-wrap: nowrap;

	-webkit-align-items: center;
	align-items: center;

	position: sticky;
	top: 150px;
	z-index: 1000;
	background-color: #5c9bb0;
	color: #fff;
	text-align: left;
	padding: 5px 10px;
}
.calendar__business-hours
{
	width: calc((100% - 300px - 60px - 6px));
	text-align: center;
}
.calendar__mobile_business-hours
{
	display: none;
	position: absolute;
	right: 10px;
}
@media (max-width: 900px)
{
	.calendar__table
	{
		position: relative;
	}
	.calendar__thead
	{
		position: sticky;
		top: 60px;
		background-color: #2c8fb0;
		/*max-width: calc(100vw);*/
		opacity: unset;
	}
	.calendar__departments
	{
		position: sticky;
		top: 105px;
	}
	.calendar__tbody
	{
	}

	.calendar__tr
	{
		display: -webkit-box;
		display: flex;
		display: -ms-flexbox;
		-ms-flex-pack: justify;
		-webkit-box-pack: justify;
		justify-content: space-between;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		opacity: unset;

		/*max-width: calc(100vw);*/
	}
	.calendar__tr:nth-child(2n)
	{
		background-color: #eee;
	}

	.calendar__td,
	.calendar__th
	{
		opacity: unset;
	}
	.calendar__td_cab
	{
		width: 60px;
		display: none;
	}
	.calendar__thead .calendar__td_fio
	{
		display: none;
	}
	.calendar__td_fio
	{
		width: 100%;
		max-width: calc(100vw);
		text-align: center;
		background-color: #5ac1da;
		color: #fff;
	}
	.calendar__td_time
	{
		width: calc((100% - 2px) / 7);
	}

	.calendar__td_time:nth-child(3)
	{
		border-left: unset;
	}

	.calendar__mobile_cab
	{
		display: block;
	}
	.calendar__business-hours
	{
		display: none;
	}
	.calendar__mobile_business-hours
	{
		display: block;
	}
}

@media (max-width: 768px)
{
	.calendar__td_time
	{
		/*font-size: 13px;*/
	}
	.calendar__td_fio
	{
		text-align: right;
	}
}
@media (max-width: 600px)
{
	.main__container
	{
		padding-left: 16px !important;
	}
	.calendar__td_time
	{
		font-size: 11px;
		padding: 10px 1px;
	}
	.calendar__mobile_business-hours
	{
		right: unset;
		left: 10px;
		bottom: 0px;
	}
}

@media (max-width: 520px)
{
	.calendar__td_fio .name
	{
		padding-top: 1.3em;
	}
	span.calendar__time_start,
	.calendar__time_end
	{
		display: block;
	}
	.calendar__separator
	{
		/*display: none;*/
	}
}