#calendarContainer {padding: 10px 0; text-align: center;}
#calendar {background: #ccc; float: left; margin: 8px 4px; padding: 0 0 1px 1px; width: 343px; z-index: 1;}
#calendar li {
  background: #fff;
  cursor: default;
  float: left;
  height: 48px;
  line-height: 48px;
  list-style: none;
  margin: 1px 1px 0 0;
  padding: 0px;
  text-align: center;
  width: 48px;
}

.clear {clear: both; *display: none; float: none !important; height: 0 !important; width: 0 !important;}
.fullHeight {
  *height: expression(document.getElementById('calendar').offsetHeight + 'px');
  *line-height: expression(document.getElementById('calendar').offsetHeight + 'px');
}

#calendar .available {background: #30a70e !important; cursor: pointer;}
#calendar .awaiting {background: #ffab00 !important;}
#calendar .empty {background: #eee !important;}
#calendar .header {font-weight: bold; height: 32px !important; line-height: 32px !important;}
#calendar .reserved {background: #f80000 !important;}
#calendar .selected {background: #00a8f7 !important;}

#mainCalendarContainer {display: inline-block; *display: inline; *zoom: 1;}

#calendarHeader * {}
#calendarHeader h2 {display: inline-block; *display: inline; margin: 4px 16px 0;}

#calendarHeader .input {border: 1px solid #ccc; color: #ccc; cursor: default; padding: 2px 7px;}
#mainCalendarContainer .input {
  border: 1px solid #ccc;
  color: #ccc;
  cursor: default;
  float: left;
  margin: 8px 0;
  padding: 0 7px;
}

#calendarHeader .link, #mainCalendarContainer .link {color: #000; cursor: pointer;}
#reserve {border: 1px solid #ccc; display: block; font-weight: bold; margin: 0 auto; *margin-top: 4px; padding: 2px 0; width: 343px;}

#calendarError {
  background: #ffc;
  border: solid #f00;
  border-width: 1px 0;
  color: #f00;
  cursor: default;
  font-weight: bold;
  padding: 2px 0;
}

#reservation {position: relative;}
#reservationFormContainer {
  background: #fff;
  border: 1px solid #999;
  bottom: 0;
 _bottom: auto;
  display: none;
  left: 0;
  margin: 0 auto;
  padding: 10px;
  position: absolute;
  right: 0;
  width: 448px;
  z-index: 2000;
}
#reservationFormContainer li {margin: 4px 0;}
#reservationFormContainer .separator {border-bottom: 1px solid #000; list-style: none; margin-top: 16px;}
#reservationFormContainer label {display: inline-block; width: 64px;}
#reservationFormContainer select {width: 55px;}
#reservationFormButtons {text-align: right;}
#reservationFormButtons * {background: #fff; border: 1px solid #ccc; cursor: pointer; font-size: 11px; margin: 0 2px; padding: 2px 6px 1px 5px;}
#reservationError {color: #f00; font-size: 110%; font-weight: bold; text-align: center;}
#reservationForm .error {border-color: #f00;}

