@charset "utf-8";
/* CSS Document */

#calendar {
	width:100%;	
}
#calendar div.calendar { width:50%; display:inline-block; }
#calendar div.week { width:100%; display:block; }
#calendar * { box-sizing:border-box; -moz-box-sizing:border-box; }
#calendar div.head > div, #calendar div.days div.line > div {
	display:inline-block;
	width:12.5%;
	height:30px;
	border:1px solid #ccc;
	vertical-align:top;
}
#calendar div.week div.head > div:first-child, #calendar div.week div.days div.w { width:9%; }
#calendar div.week div.head > div, #calendar div.week div.days div.d, #calendar div.week div.days div.e { width:13%; }
#calendar div.no-weekend div.head > div:first-child, #calendar div.no-weekend div.days div.w { width:10%; }
#calendar div.no-weekend div.head > div, #calendar div.no-weekend div.days div.d, #calendar div.no-weekend div.days div.e { 
	width:18%; }
#calendar div.days > div.empty-line { width:100% !important; height:30px !important; line-height:3px; background:#ccc; }

#calendar div.head { margin-bottom:2px; }
#calendar div.days {  border-top:1px solid #ccc; }
#calendar div.head div { border:1px solid #ccc; border-left:none; }
#calendar div.head div:first-child { font-weight:300; border-left:1px solid #ccc; }

#calendar div.days div, #calendar div.head div { text-align:center; line-height:30px; font-size:14px; }
#calendar div.days div.w a, #calendar div.days div.w { font-style:italic; text-decoration:none; }
#calendar div.days div.d { /*background:#fef8f4;*/ border-left:none !important; border-top:none !important; }
#calendar div.days div.w { border-top:none !important; }
#calendar div.days div.d.curr { font-weight:700; }
#calendar div.days div.d a, #calendar div.days div.d.nok span, #calendar div.days div.d.busy span { position:absolute; height:100%; width:100%; left:0px; top:0px; background:url(../images/ok.png) center center no-repeat #b4e8bb; border:1px solid #fff; opacity:.5; line-height:0; font-size:0;color:transparent;  }
#calendar div.days div.d a.sok { background:url(../images/ok.png) center center no-repeat #fcf284; opacity:1; }
#calendar div.days div.d a.sok:hover { opacity:.5; }
#calendar div.days div.d a:hover { opacity:1; }
#calendar div.days div.d.nok span, #calendar div.days div.d.busy span { background:url(../images/nok.png) center center no-repeat #9c9c9c; opacity:0.25; }
#calendar div.days div.d.busy span { opacity:.4; }

#calendar div.nav { text-align:center; padding:0px 15px 10px 15px; overflow:hidden; min-height: 36px; }
#calendar div.nav a { display:inline-block; text-decoration:none; transition:color .3s; }
#calendar a.prev { float:left; }
#calendar a.next { float:right; }
#calendar a.prev:before, #calendar a.next:before { content:''; position:absolute; border-top:7px solid transparent; border-bottom:7px solid transparent; top:7px; width:0px; height:0px; }
#calendar a.prev:before { border-right:11px solid #bc0000; left:-15px; }
#calendar a.next:before { border-left:11px solid #bc0000; right:-15px; }

#calendar div.nav select, #calendar div.nav span { position:absolute; top:0px; left:50%; }
#calendar .no-sel span:before { display:none; }
#calendar div.nav select { opacity:0; }
#calendar div.nav span:before { content:''; position:absolute; border-top:7px solid #bc0000; border-left:5px solid transparent; border-right:5px solid transparent; right:-15px; top:50%; margin-top:-2px; width:0px; height:0px; }


#calendar div.info.week li { float:left; margin-right:25px; }

#calendar div.days div.w,
#calendar div.head,
#calendar div.days div.line:first-child,
div.block.article.requests label {
	user-select: none;
}

#calendar+div.pre { position:absolute; width:100%; height:100%; top:0px; left:0px; }
#calendar+div.pre { background:url(../images/preloader.gif) center center no-repeat transparent; }

#calendar_info { position:absolute; visibility:hidden; background:#bc0000; padding:5px 10px; border-radius:5px; color:#fff; text-align:center; font-size:18px !important; line-height:normal !important; border:none !important; height:auto !important; white-space:nowrap; width:auto !important; }
#calendar_info:after { position:absolute; content:''; bottom:-7px; left:50%; margin-left:-8px; border-top:10px solid #bc0000; border-left:8px solid transparent; border-right:8px solid transparent; height:0px; width:0px; }

#calendar div.days div.line { width:100%; float:none; display:block; }
#calendar div.days div.line.before { border-top:2px solid #ccc; }

#calendar span.nav-off {
	position:relative !important; 
	left:0px !important; 
	margin:0 !important;	
}
#calendar span.nav-off::before {
	display:none;	
}

#calendar div.line.unable-info {
	border: 1px solid #ccc;
	background-color: #f5f5f5;
	border-top:none;
}
#calendar div.line.unable-info p {
	font-weight: 700;
	padding:10px;
	text-align: center;
	user-select: none;
}

#calendar div.nav select option {
	font-size:12px;
	line-height: normal;
}


div.date-block {
	background-color: #f5f5f5;
	padding:15px;
	border-radius:10px;
	border: 1px solid #ccc;
	box-shadow: 0px 0px 5px rgba(0,0,0,.1);
}
div.date-block h3 {
	font-size: 18px; 
	color: #bc0000;
	font-weight: 700;
	margin-bottom: 10px;
}
div.date-block h3 span {
	color:#3e3e3e;
	font-weight: inherit;
}
div.date-block div.nev+div.nev {
	margin-top: 10px;
}
div.date-block label {
	font-size:16px;
}
div.date-block input {
	box-shadow: none !important;
}
div.date-block input:hover, div.date-block input:focus {
	background: #fff !important;
}