.calendar_date_select {
  color:white;
  border:#777 1px solid;
  display:block;
  width:195px;
  z-index: 1000;
}
/* this is a fun ie6 hack to get drop downs to stay behind the popup window.  This should always be just underneath .calendar_date_select */
iframe.ie6_blocker {
  position: absolute;
  z-index: 999;
}

.calendar_date_select thead th {
  font-weight:bold;
	color: #0f4d7e;
  border-top:1px solid #777;
  border-bottom:1px solid #777;
  color: white !important;
}

.calendar_date_select .cds_buttons {
  text-align:center;
  padding:5px 0px;
  background-color: #555;
}

.calendar_date_select .cds_footer {
  background-color: black;
  padding:3px;
  font-size:12px;
  text-align:center;
}

.calendar_date_select table {
  margin: 0px;
  padding: 0px;
}


.calendar_date_select .cds_header {
  background-color: #3271a2;
  border-bottom: 2px solid #aaa;
  text-align:center;
}

.calendar_date_select .cds_header span {
  font-size:15px;
  color: black;
  font-weight: bold;
}

.calendar_date_select select { font-size:11px;}

.calendar_date_select .cds_header a:hover {
  color: white;
}
.calendar_date_select .cds_header a {
  width:22px;
  height:20px;
  text-decoration: none;
  font-size:14px;
  color:black !important;
}

.calendar_date_select .cds_header a.prev {
  float:left;
}
.calendar_date_select .cds_header a.next {
  float:right;
}

.calendar_date_select .cds_header a.close {
  float:right;
  display:none;
}

.calendar_date_select .cds_header select.month {
  width:90px;
}

.calendar_date_select .cds_header select.year {
  width:61px;
}
.calendar_date_select .cds_buttons a {
  color: white;
  font-size: 9px;
}

.calendar_date_select td {
  font-size:12px;
  width: 24px;
  height: 21px;
  text-align:center;
  vertical-align: middle;
  background-color: #fff;
}
.calendar_date_select td.weekend {
  background-color: #eee;
  border-left:1px solid #ddd;
  border-right:1px solid #ddd;
}

.calendar_date_select td div {
  color: #000;
}
.calendar_date_select td div.other {
  color: #3271a2;
}
.calendar_date_select td.selected div {
  color:white;
}

.calendar_date_select tbody td {
  border-bottom: 1px solid #ddd;
}
.calendar_date_select td.selected {
  background-color:#777;
}

.calendar_date_select td:hover {
  background-color:#3271a2;
}

.calendar_date_select td.today {
  border: 1px dashed #999;
}

.calendar_date_select td.disabled div {
  color: #e6e6e6;
}

.fieldWithErrors .calendar_date_select {
  border: 2px solid red;
}
.calendar .day { font-weight: bold; }
.calendar .day a { font-weight: normal; font-size: .79em; color: #3976a6; }

#calendars_mini table#calendar-header {
	width: 445px;
	margin-bottom: 25px;
}
#calendars_mini #calendar-header thead tr.top-bar th { vertical-align: top; line-height: normal; }
#calendars_mini #calendar-header th.month_name { 
	width: 281px;
	color: #0f4d7e;
	height: 32px;
	padding-top: 7px;
	background: url('/images/calendar-header-bg.gif') top center no-repeat;
}
#calendars_mini #calendar-header th.back-month { &
	width: 75px;
	border-right: 1px solid #3372a3;
	background: url('/images/calendar-header-bg.gif') top left no-repeat;
}
#calendars_mini #calendar-header th.back-month a,
#calendars_mini #calendar-header th.forward-month a { 
	display: block;
	width: 75px;
	height: 29px;
	padding-top: 3px;
	font-size: 1.4em; 
}
#calendars_mini #calendar-header th.forward-month { 
	width: 75px;
	border-left: 1px solid #3372a3;
	background: url('/images/calendar-header-bg.gif') top right no-repeat;
}
#calendars_mini #calendar-header thead tr.top-bar th a { color: #0f4d7e; text-decoration: none; }
#calendars_mini #calendar-header thead tr.top-bar th a:hover { color: #3976a6; text-decoration: underline; }


table#calendar-header {
	width: 569px;
	margin-bottom: 25px;
}
#calendar-header thead tr.top-bar th { vertical-align: top; line-height: normal; }
#calendar-header th.month_name { 
	width: 405px;
	color: #0f4d7e;
	height: 32px;
	padding-top: 7px;
	background: url('/images/calendar-header-bg.gif') top center no-repeat;
}
#calendar-header th.back-month { &
	width: 75px;
	border-right: 1px solid #3372a3;
	background: url('/images/calendar-header-bg.gif') top left no-repeat;
}
#calendar-header th.back-month a,
#calendar-header th.forward-month a { 
	display: block;
	width: 75px;
	height: 29px;
	padding-top: 3px;
	font-size: 1.4em; 
}
#calendar-header th.forward-month { 
	width: 75px;
	border-left: 1px solid #3372a3;
	background: url('/images/calendar-header-bg.gif') top right no-repeat;
}
#calendar-header thead tr.top-bar th a { color: #0f4d7e; text-decoration: none; }
#calendar-header thead tr.top-bar th a:hover { color: #3976a6; text-decoration: underline; }

table.calendar {
/* border-collapse: collapse;*/
}
table.calendar th {
  text-align: center;
}
table.calendar td {
  border: 1px outset #3271a2;
}
table.calendar td.day_weekend { }
table.calendar td.other_month {
  visibility: hidden;
}
table.calendar .day_cancelled {
	background-color: #d2dee7;
}
table.calendar .day_scheduled {
  background: /*url('/images/orange-cell.gif') top left repeat-x*/ #f36d21;
}
table.calendar .day_scheduled a { color: #FFFFFF;  }

.day_dialog_mini { border: 2px solid #3271a2; color: #3271a2; background-color: #FFFFFF;}

#calendars table.calendar td.day_available {
  padding: 0;
  vertical-align: top;
  text-align: left;
  background: /*url('/images/green-cell.gif') top left repeat-x*/ #aac538;
}
#calendars table.calendar td.day_available .calendar-day-text { font-size: 1.3em; font-weight: bold; color: #0f4d7e; }
table.calendar td.day_available a { display: block; text-decoration: none; padding: 5px 5px 20px 5px; margin: 0; color: #3976a6; }

table.calendar td.day_available .calendar-icon-links { display: block; padding: 5px; }
table.calendar td.day_available .calendar-icon-links a { display: inline; padding: 0; }

table.calendar .day_normal {}
table.calendar .day_special {}

table.calendar .day_dialog {
  width: 300px;
  height: 250px;
  position: absolute;
  z-index: 5;
  display: none;
  background: #ffffff;
  padding: 5px;
  border: 1px solid #000000;
}
table.calendar .day_dialog .dialog_title {
  font-weight: bold;
  font-size: 1.1em;
  height: 50px;
}
table.calendar .day_dialog .dialog_content {
  width: 300px;
  height: 200px;
  overflow-y: scroll;
}

table.calendar .day_dialog_mini {
  width: 150px;
  position: absolute;
  z-index: 5;
  display: none;
  background: #ffffff;
  font-size: .9em;
  padding: 2px;
  border: 1px solid #000000;
}

#calendars table.calendar td {
  width: 90px;
  height: 90px;
  padding: 5px;
  vertical-align: top;
  text-align: left;
  font-size: 1.3em;
}

#calendars_mini table.calendar td {
  width: 50px;
  height: 70px;
  vertical-align: top;
  text-align: left;
  font-size: 1.3em;
}

#calendars_mini table.calendar { margin-left: 72px; }

#calendars a { font-size: .69em; }

table.calendar tr.day_name th { border-bottom: 2px solid #3271a2; }
table.calendar tr.day_name th sup { font-size: 1em; padding-left: 2px; }


.change-all { padding: 0 3px 2px 3px; vertical-align: baseline; }

.cds_body table th { background-color: #000000; }

.scheduled-day-text { font-size: .69em; }

.scheduled-title { color: #0f4d7e; }

.scheduled-lunches { display: block; padding: 5px; }
.scheduled-lunches .scheduled-title { font-size: .69em; }
table.calendar td.day_available .scheduled-lunches a {
	display: block;
	padding: 0 0 5px 0;
	margin: 0;
}
