/*common Callender Style*/
.single-product div.product form.cart {
    margin-bottom: 0px; 
    padding: 0px; 
}
.single-product div.product p.price{
	margin-bottom: 0px;
}

p#booking_info_text{
	margin: 10px 0px 0px 0px !important;
}
p#booking_price_text{
	margin: 0px 0px 10px 0px !important;
}
.booking-info-wraper {
    background: #539bbe;
	color: #f3f3f3;
    padding: 0px 10px;
    margin: 10px 0px;
    min-height: 50px;
}
img.loading-ico {
	text-align: center;
	position: relative;
	left: 46%;
	height: 50px;
	width: 50px;
	padding: 2px;
}

.ph-calendar-month {
	padding: 25px 25px;
	width: auto;
	background: #539bbe;
	text-align: center;
}
.ph-calendar-month ul {
	margin: 0;
	padding: 0;
}
.ph-calendar-month ul li {
	color: white;
	font-size: 20px;
	text-transform: uppercase;
	letter-spacing: 3px;
    max-height: 35px;
    list-style-type: none;
}
.ph-calendar-days {
	padding: 10px 0;
	background: #eee;
	margin: 0;
	width: 100%;
	overflow: hidden;
	position: relative;
}
.ph-calendar-days li {
	list-style-type: none;
	display: inline-block;
	width: 13.6%;
	text-align: center;
	margin-bottom: 5px;
	color: #777;
}

.ph-calendar-weekdays {
	margin: 0;
	padding: 10px 0;
	background-color: #ddd;
}
.ph-calendar-weekdays ul li {
	list-style-type:none;
}
.ph-calendar-weekdays li {
	display: inline-block;
	width: 13%;
	color: #666;
	text-align: center;
}
.callender-fixed-date{
	cursor: pointer;
	text-align: center;
	position: absolute !important;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	opacity: 0;
	filter: alpha(opacity=0);
}
.ph-calendar-date.today {
	color: #000 !important;
	font-weight: bold;
}
.ph-calendar-date.active {
	padding: 5px;
	background: rgba(83, 155, 190, 0.52)!important;
	color: white !important
}
.ph-calendar-date.booking-full {
	padding: 5px;
	background: #dadada;
	color: #ffffff !important;
}
.selected-date{
	border: 1px solid #2b8eff;
	background: #6aa3f1;
	color: #f3f3f3!important;
}
.timepicker-selected-date{
	border: 1px solid #2b8eff;
	background: #6aa3f1;
	color: #f3f3f3!important;
}
.callender-error-msg{
	min-height: 25px;
	overflow: hidden;
}
li.ph-calendar-date, .ph-calendar-weekdays li{
	margin-left: 0px !important;
}

/* Add media queries for smaller screens */
@media screen and (max-width:720px) {
	.ph-calendar-weekdays li, .ph-calendar-days li {width: 13.1%;}
}

@media screen and (max-width: 420px) {
	.ph-calendar-weekdays li, .ph-calendar-days li {width: 12.5%;}
	.ph-calendar-days li .active {padding: 2px;}
}

@media screen and (max-width: 290px) {
	.ph-calendar-weekdays li, .ph-calendar-days li {width: 12.2%;}
}
.past-time,.ph-calendar-date.not-available{
	color: #d0d0d0!important;
}
.month-year-wraper,.fixed-date-wraper,.ph-calendar-date{
	position: relative;
	overflow: hidden;
}

.non-bookable-slot{
	cursor: not-allowed;
}

.not-available-msg{
	color: #ff7878;
}
@media (max-width: 500px) {
	ul.days li {margin-right: 3px;}
}

/*Some Themes set margin left for li*/
li.callender-date, .weekdays li{
	margin-left: 0px !important;
}
.weekdays li {
	margin: auto !important;
}

.booking-disabled,.not-available{
	color: #d0d0d0!important;
}

/***Date picker***/
.ph-calendar-month .ph-prev {
	float: left;
	padding-top: 10px;
	list-style-type: none;
}
.ph-next:hover, .ph-prev:hover{
	color: #4d8e7a;
	cursor: pointer;
}

.ph-calendar-month .ph-next {
	float: right;
	padding-top: 10px;
	list-style-type: none;
}
.ph-calendar-month-year-wraper{
	position: relative;
	overflow: hidden;
}
.callender-month,.callender-year{
	text-align: center;
	position: absolute;
	top: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
	opacity: 0;
	filter: alpha(opacity=0);
}

/***Time picker***/
.callender-ico{
	width: 30px;
	display: inline;
	margin: 0px 0px -5px 0px;
	padding: 0px;
	opacity: 0.7;
	filter: alpha(opacity=0.7);
}
div#ui-datepicker-div {
    z-index: 10000!important;
}
.time-picker li.ph-calendar-date {
    width: 18.8%;
}
#ph-calendar-overlay {
	position: absolute;
	width: 100%;
	height: 100%;
	/*top: -10px; to compensate Padding of parent div*/
	background: black url('images/loading.gif') center center no-repeat;
	background-size: 50px;
	z-index: 1;
	opacity: .4;
}