
#s29RespCalendar {
	font-family:Open Sans, Arial, Sans-Serif; font-size:14px; font-weight:600; line-height:1.5em;
	cursor:default;
}

#s29RespCalendar a {
	border-bottom:none !important;
	color:#000 !important;
}

#s29RespCalendar a:hover span {
	border-bottom:#000 solid 1px;
}

#s29RespCalendar a.s29_current {
	background-color:#eee;
}

#s29RespCalendar .s29_today {
	font-weight:bold;
}

#s29RespCalendar .s29_months {
	height:34px;
}

#s29RespCalendar button {
	width:54px; height:34px;
	background-color:transparent; background-size:8px 15px; background-position:center center; background-repeat:no-repeat;
	border:none;
	cursor:pointer;
}

#s29RespCalendar button:hover {
	background-size:calc(8px * 1.14) calc(15px * 1.14);
}

#s29RespCalendar button:focus {
	outline:none;
}

#s29RespCalendar button.s29_prev {
	float:left;
	background-image:url(img/resp-month_prev.png);
}

#s29RespCalendar button.s29_next {
	float:right;
	background-image:url(img/resp-month_next.png);
}

#s29RespCalendar button.s29_prev[disabled] {
	background-image:url(img/resp-month_prev_inactive.png);
}

#s29RespCalendar button.s29_next[disabled] {
	background-image:url(img/resp-month_next_inactive.png);
}

#s29RespCalendar button:hover[disabled] {
	background-size:8px 15px;
	cursor:default;	
}

#s29RespCalendar .s29_months .s29_container {
	height:28px;
	margin:0 54px; padding-top:3px;
}

#s29RespCalendar .s29_months .s29_shutter {
	margin:0 auto;
	overflow:hidden;
}

#s29RespCalendar .s29_months .s29_body {
	position:relative;
	white-space: nowrap;
}

#s29RespCalendar .s29_months .s29_item {
	display:inline-block;
	height:28px; box-sizing:border-box; -moz-box-sizing:border-box; -webkit-box-sizing:border-box;
	padding:4px 10px 0;
	text-align:center;
}

#s29RespCalendar .s29_months div.s29_item {
	color:#959595;
}

#s29RespCalendar .s29_days {
	position:relative;
	margin-top:2px; padding:3px 15px 3px;
}

#s29RespCalendar .s29_days .s29_loader {
	display:none;
	position:absolute; top:0; left:0; bottom:0; right:0;
	background-image:url(img/resp-loader.gif); background-position:center center; background-repeat:no-repeat; background-size:46px 8px;
}

#s29RespCalendar .s29_days .s29_item {
	display:inline-block;
	width:calc(100% / 31); min-width:24px; height:28px; box-sizing:border-box; -moz-box-sizing:border-box; -webkit-box-sizing:border-box;
	padding-top:4px;
	text-align:center;
}

#s29RespCalendar.s29_perWeekMode .s29_days .s29_item {
	width:calc((100% - 7px) / 7); min-width:0 !important;
}

#s29RespCalendar .s29_days div.s29_item {
	color:#959595;
}

#s29RespCalendar .s29_days div.s29_item.s29_placeholder {
	display:none;
}

#s29RespCalendar.s29_perWeekMode .s29_days div.s29_item.s29_placeholder {
	display:inline-block;	
}

@media (max-width:1000px) {
	#s29RespCalendar .s29_days .s29_item {
		min-width:28px;
	}
}
