#bookings {
	position: relative;
	float: left;
	width: 100%;
}

.currentDayBoxStyle {
	font-size: smaller;
	text-align: center;
}

.dayBoxStyle {
	font-size: smaller;
	text-align: center;
}

.dayNamesStyle {
	font-size: smaller;
}

tr.dayNamesStyle td {
	text-align: center;
}

/*
Individal time cells for the weekly view with resources
*/
td.scheduleTimes,.scheduleTimes td {
	font-size: 11px;
	text-align: left;
	padding-left: 2px;
	border: 1px solid;
}

.r0 td,.ro0 td {
	padding: 2px;
	font-size: 11px;
}

.r1 td,.ro1 td {
	padding: 2px;
	font-size: 11px;
}

.r0 td.o:hover {
	cursor: default;
}

.r1 td.o:hover {
	cursor: default;
}

.r0 td.resourceName:hover,.r1 td.resourceName:hover {
	background-color: #EDEDED;
}

.zfaces-form, .bookings-reservationsummary, .bookingsCalendarBody, .bookings-step2 {
	text-align:center;
	-moz-border-radius: 5px; 
	-webkit-border: 2px; 
	-khtml-border: 2px; 
	border: 1px solid;
	-moz-box-shadow: 0.5em 0.5em 0.3em; 
	-webkit-box-shadow: 0.5em 0.5em 0.3em;
	box-shadow: 0.5em 0.5em 0.3em;
	margin:5px;
	padding:5px;
	min-height:150px;
	height:auto;
	margin-bottom:0.8em;
}
.bookingsCalendarBody table,.bookingsCalendarBody tr td {
	border: 0px !important;
	padding: 0px !important;
}
.bookingsCalendarBody {
	margin-left:auto;
	margin-right:auto;
}
.bookingsCalendarBody table {
	text-align:center !important;
}

table.availability td,table.availability th {
	font-weight:normal;
	font-size:smaller;
	line-height:1.5em;
}
table.availability td {
   border: 0px !important;
   padding: 0px !important;
}
table.availability td a {
   display: block;
   text-align:center;
}
.bookingsCalendarBody table, #changeMonth {
	max-width: 300px;
	text-align:center;
	margin-left:auto;
	margin-right:auto;
}

.viewdays {
	clear: both;
	margin: 5px;
}

.viewdays a {
	margin: 3px;
	padding: 2px;
	float: left;
	border: 1px solid;
}

.navMonthRight {
	text-align: right;
}

.navMonthLeft {
	text-align: left;
}

.navMonthCenter {
	text-align: center;
}

/*
* Date and time selectors on book2 page
*/
#bookings-step2 {
	text-align:center;
}

.fromto {
	clear: both;
}

.fromdatetime,.todatetime {
	width: 48%;
	float: left;
	margin: 1%;
	text-align:left;
}

.totime,.fromtime {
	margin-top: 10px;
}

.fromdate {
	width: 100%;
}

.fromdate label,.todate label {
	width: 50%;
}

div.availability {
	border-top: 1px solid;
	margin-top: 20px;
	padding-top: 20px;
}

div.availability .resource {
	margin-bottom: 30px;
	clear: both;
}

div.availability .resourcename {
	width: 20%;
	float: left;
	font-weight: bold;
}

div.availability .resourcenotes {
	width: 50%;
	float: left;
}

div.availability .resource a {
	float: left;
}

/* product availability */
table.availability  {
	width:100%;
	clear: both;
}

table.availability .product {
	margin-bottom: 30px;
	clear: both;
	border: 0px;
}

table.availability,table.availability tr th, table.availability tr td:first-child {
	border: 0px;
}

table.availability div.productname {
	font-weight: bold;
}

table.availability div.productexcerpt {
}
	
table.availability td.productprice {
	text-align:right;
}

table.availability td.productqty {
	text-align:right;
}

/*
* book2 page: This page shows the date selector and resource availability
*/
#bookings #book2-submit {
	float: right;
}

#bookings #book2-search {
	text-align:center;
	margin:20px auto;
}

/*
* book3 page: This page shows the registration form
*/
#bookings #book3-submit {
	float: right;
	margin-top:30px;
}

.bookings-reservationsummary {
	clear:both;
	width:100%;
	border-radius: 12px;
	-moz-border-radius: 12px;
	float:left;
}

.bookings-productprice {
	text-align:right;
}

.bookings-reservationsummary table, .bookings-reservationsummary tr, .bookings-reservationsummary tr td {
	border: none;
}

div.bookings-reservationsummary table tr td {
	padding: 0px 10px 6px 0px !important;
}

div.bookings-reservationsummary table, div.bookings-reservationsummary table tr td {
	border: 0px !important;
}

.bookings-totalprice {
	text-align:right;
	font-weight:bold;
}
	
.bookings-resource {
	font-weight:bold;
	padding: 10px;
}

.bookings-label {
	font-weight:bold;
	float:left;
	clear:left;
	margin-bottom: 0px !important;
	margin-left: 10px;
}

.bookings-data {
	display:inline;
	float:left;
	margin-left:10px;
}

.bookings-reservationdates {
	float: left;
}

/* Booking form */
li.zfli {
	list-style-type: none !important;
}

#bookings td.navMonthStyle, #bookings div.navMonthStyle {
	width: 33%;
	float: left;
	border: 0px !important;
}
#changeMonth table {
	border: 0px !important;
}	
#bookings td.MyCalCellColorEmpty {
	text-align:center;
}
#bookings td.MyCalCellColorEmpty p {
	display:inline
}
#bookings .resourceName {
	vertical-align:top;
}
#bookings .MyCalCellColor {
	vertical-align:top;
}
#bookings .MyCalCellColorEmpty {
	vertical-align:top;
}
#bookings .selectedDay {
	text-align:center;
}

#compact1Template div#left {
	float:left;
	width:35%;
	font-size:smaller;
}
#compact1Template div#right {
	float:right;
	padding-left:5%;
	width:60%;
	font-size:smaller;
}

#compact1Template .dayNamesStyle {
	font-weight:bold;
}

#compact1Template div#left table, #compact1Template div#left table tr td {
	border: 0px !important;
}

table.dayReservations {
	table-layout:fixed; 
	overflow:hidden;
	white-space: nowrap;
}

.bookings-step2 input.button {
	float:right;
}

#compact1Template div#left table .selectedDayBoxStyle, .selectedDayBoxStyle {
	font-size: smaller;
	border: solid 4px !important;
	text-align: center;
}

.viewlinks {
	clear:both;
	text-align:center;
	border:0px !important;
	margin:0px !important;
}
.viewlinks td {
	border:0px !important;
	margin:0px !important;
}

/*
Date cell for the scheduler
*/
td.scheduleDate, .scheduleDate td, .scheduleDateHeader, td.scheduleDateCurrent {
    font-size: 11px;
    text-align: center;
    padding: 2px;
}

td.scheduleDateCurrent {
	font-weight: bold;
}

.scheduleDateHeader {
	border-bottom: 1px solid;
}

tr.r0 td {
	overflow:hidden;
}
/** MyCalendar **/
.MyCalCellColor {
    padding: 2px;
    font-size: 11px;
}

.MyCalDayBox {
	padding: 2px;
	font-size: 11px;
	width: 140px;
	height: 120px;
	vertical-align: top;
}

.MyCalEmptyDayBox {
	padding: 2px;
	font-size: 11px;
	vertical-align: top;
	min-height:50px;
}

.MyCalEmptyDayBox {
	height:120px;
}

.MyCalCurrentDayBox {
	padding: 2px;
	font-size: 11px;
	vertical-align: top;
	border: solid 1px;
}

.MyCalDateNumber, a.MyCalDateNumber {
	font-size: 12px;
}

.MyCalCellColor p, .MyCalDayBox p, .MyCalEmptyDayBox p, .MyCalCurrentDayBox p {
	margin-bottom: 7px;
}

.viewtoggle {
	text-align: center;
}

.color_key_wrapper {
	margin:10px auto;
	float:left;
	text-align:center;
}

div.color_key {
	height:30px;
	width:10%;
	padding: 5px;
	border: 1px solid;
	text-align:center;
	margin: 10px 5px;
	float:left;
	font-size:10px;
	vertical-align:middle;
}
