/* Calendar
---------------------------------------------------------------------------- */


div.calendar {
  border: 1px solid #CCC;
  border-top: none;
  /* This controls if the odd / even rows show beyond the drawn calendar */
  overflow: visible;
  position: relative;
}

.calendar .day .label, .calendar thead th.day {
  background: #EEE url(/assets/century/label_background.gif) repeat-x;
  border-top: 1px solid #BDC3C7;
  border-right: 1px solid #A4ACB2;
  border-bottom: 1px solid #7F807F;
  padding: 2px;
  color: #333;
  text-align: center;
  white-space: nowrap;
  zoom: 1; /* give it layout in IE */
}
.calendar .first .label {
  border-left: 1px solid #A4ACB2;
}

.day .today {
  background: url(/assets/century/current_label_background.gif) repeat-x;
}

.calendar div.day {
  float: left;
  width: 100%;
  position: relative;
  margin-top: 0;
}
.month .day, .week .day {
  width: 14.286%;
}

/* === Month =============================================================== */

.month thead th.month {
  text-align: center;
  text-transform: none;
  color: #000;

}

.month thead th.day {
  font-size: 0.8em;
  text-transform: lowercase;
}

.month thead th.first {
  border-left: 1px solid #A4ACB2;
}

.month .day {
  padding: 2px;
  text-align: center;
}

.month td.day {
  border-right: 1px solid #CCC;
  border-top: 1px solid #CCC;
}

.month tr.last td.day {
  border-bottom: 1px solid #CCC;
}
.month td.first {
  border-left: 1px solid #CCC;
}

.month td.other_month {
  color: #CCC;
}

/* === Labels ============================================================== */

div.calendar {
  margin-left: 4em;
}

.calendar .labels div {
  position: absolute;
  width: 100%;
  border-top: 1px solid #DDD;
}

.calendar .labels .odd {
  background-color: rgb(238, 240, 255);
}

.calendar .labels div p {
  margin: 0;
  padding: 0;
  left: -4.5em;
  width: 4em;
  text-align: right;
  font-size: 0.8em;
  font-weight: bold;
  color: #666;
  position: absolute;
}

.week, .day {
  margin-top: 2.5em;
}
.calendar .day {
  margin-top: 0;
}

.day .label {
 margin-top: -1.6em;
}

.day .day .label {
  margin-left: -1px;
  margin-right: -1px;
  border-left: 1px solid #A4ACB2;
}


/* === Events =============================================================== */

.calendar .vevent {
  position: absolute;
  overflow: hidden;
  -moz-border-radius: 0.7em;
  -khtml-border-radius: 0.7em;
  border-radius: 0.7em;
  margin: 0;
  padding: 0;
}
.calendar .vevent dt {
  white-space: nowrap;
  position: relative;
  -moz-border-radius-topright: inherit;
  -moz-border-radius-topleft: inherit;
  -khtml-border-top-left-radius: inherit;
  -khtml-border-top-right-radius: inherit;
  border-top-left-radius: inherit;
  border-top-right-radius: inherit;
}
.calendar dl dd, .calendar dl dt {
  margin: 0;
  padding: 0.2em 0.5em;
  font-size: 1em;
/*  color: #0000FF;*/
}

.calendar dt abbr {
  border-bottom: none;
}

#loading-calendar {
  width: 70px;
  margin-left: auto;
  margin-right: auto;
  padding-top: 30px;
  text-align: center;
	background: url(/assets/century/spinner.gif) no-repeat top center;
}

/* === Century Specific ==================================================== */

.week div.day {
  width: 16.6%;
}

.calendar dl, .calendar dl a {
  color: #FFFFFF;
}

.calendar .meeting, .key .meeting, .calendar .seat, .calendar .assessment_seat, .key .seat, .key .assessment_seat, .calendar .workshop, .key .workshop {
  background-color: #FF871F;
  border-color: #F76E00;
}

.calendar .meeting dt, .calendar .seat dt, .calendar .assessment_seat dt {
  background-color: #F76E00;
}

.observation_slot {
  background-color: #00A66A;
  border-color: #186A00;
}
.observation_slot dt {
  background-color: #00A625;
}

.calendar .drive, .calendar .drive_slot, .key .drive, .key .drive_slot {
  background-color: #418AE9;
  border-color: #3070EC;
}
.calendar .assessment, .key .assessment, .key .driv {
  background-color: #9900FF;
  border-color: #5F04B4;
}

.calendar .assessment dt, .calendar .assessment_slot dt {
  background-color: #5F04B4;
  border-color: #5F04B4;
}
.calendar .assessment.empty, .calendar .assessment_slot.empty {
  background-color: #9900FF;
}
.calendar .assessment_slot {
  background-color: #FFFFFF;
}

/* --  Hour based placement for each road test and known type  --*/

.calendar .road_test .scheduled {
  position:absolute;
  top:0em;
  left:-0.25em;
  height:0em;
  width:100%;
  border:3px solid #F88017;
  -moz-border-radius-topright: 0.7em;
  -moz-border-radius-topleft: 0.7em;
  -khtml-border-top-left-radius: 0.7em;
  -khtml-border-top-right-radius: 0.7em;
  border-top-left-radius: 0.7em;
  border-top-right-radius: 0.7em;

}

.calendar .road_test .scheduled span {
  color:#FFF;
}

.calendar .road_test .scheduled span a {
  color:#FFF;
  text-decoration:none;
}

.calendar .road_test .scheduled.automobile_60 {
  height:5em;
  background-color: #34D52F;
  border-color: #34D52F;
}

.calendar .road_test .scheduled.automobile_75 {
  height:6.25em;
  background-color: #34D52F;
  border-color: #34D52F;
}

.calendar .road_test .scheduled.automobile_40 {
  height:3.33em;
  background-color: #34D52F;
  border-color: #34D52F;
}

.calendar .road_test .scheduled.automobile_45 {
  height:3.75em;
  background-color: #34D52F;
  border-color: #34D52F;
}

.calendar .road_test .scheduled.open_15 {
    height:1.25em;
    background-color: #ffffff;
    border-color: #ffffff;
}

.calendar .road_test .scheduled.open_15 span {
    color: #F88017;
    font-size: 10px;
}

.calendar .road_test .scheduled.open_15 span a {
    color: #418AE9;
    font-size: 10px;
}

.calendar .road_test .scheduled.cdla_120 {
  height:10em;
  background-color: #34D52F;
  border-color: #34D52F;
}

.calendar .road_test .scheduled.cdla_90 {
  height:7.5em;
  background-color: #34D52F;
  border-color: #34D52F;
}

.calendar .road_test .scheduled.cdlb_90 {
  height:7.5em;
  background-color: #34D52F;
  border-color: #34D52F;
}

.calendar .road_test .scheduled.cdlc_90 {
  height:7.5em;
  background-color: #34D52F;
  border-color: #34D52F;
}

.calendar .road_test .scheduled.motorcycle_10 {
  height:0.83em;
  background-color: #34D52F;
  border-color: #34D52F;
/*  font-size:0.5em;*/
}

.calendar .road_test .scheduled.motorcycle_15 {
  height:1.25em;
  background-color: #34D52F;
  border-color: #34D52F;
}

.calendar .road_test .scheduled.motorcycle_20 {
  height:1.67em;
  background-color: #34D52F;
  border-color: #34D52F;
}

/* For the smaller calendar */

.calendar .road_test .scheduled.automobile_60_sm {
  height:4em;
  background-color: #34D52F;
  border-color: #34D52F;
}

.calendar .road_test .scheduled.automobile_75_sm {
  height:5em;
  background-color: #34D52F;
  border-color: #34D52F;
}

.calendar .road_test .scheduled.automobile_40_sm {
  height:2.67em;
  background-color: #34D52F;
  border-color: #34D52F;
}

.calendar .road_test .scheduled.automobile_45_sm {
  height:3em;
  background-color: #34D52F;
  border-color: #34D52F;
}

.calendar .road_test .scheduled.cdla_120_sm {
  height:8em;
  background-color: #34D52F;
  border-color: #34D52F;
}

.calendar .road_test .scheduled.cdla_90_sm {
  height:6em;
  background-color: #34D52F;
  border-color: #34D52F;
}

.calendar .road_test .scheduled.cdlb_90_sm {
  height:6em;
  background-color: #34D52F;
  border-color: #34D52F;
}

.calendar .road_test .scheduled.cdlc_90_sm {
  height:6em;
  background-color: #34D52F;
  border-color: #34D52F;
}

.calendar .road_test .scheduled.motorcycle_10_sm {
  height:0.65em;
  background-color: #34D52F;
  border-color: #34D52F;
/*  font-size:0.5em;*/
}

.calendar .road_test .scheduled.motorcycle_15_sm {
  height:1em;
  background-color: #34D52F;
  border-color: #34D52F;
}

.calendar .road_test .scheduled.motorcycle_20_sm {
  height:1.34em;
  background-color: #34D52F;
  border-color: #34D52F;
}

/* End of the smaller calendar*/

.calendar .road_test .scheduled img {
  height:1.35em;
}

.calendar .road_test .scheduled.motorcycle_10 img {
  display:none;
}

/* -------------- End of road test hour based placement   -----*/

.calendar .road_test, .key .road_test, .key .driv {
  background-color: #A3F904;
  border-color: #34D52F;
}

.schedule_test_top {
  float:right;
  z-index:2000;
  position:relative;
  font-size: 16px;
  font-weight: bold;
}

.schedule_modify_test_top {
    float:right;
    z-index:2000;
    position:relative;
}

.calendar .road_test_block dt, .calendar .road_test_slot dt {
  background-color: #A3F904;
  border-color: #34D52F;
}
.calendar .road_test_block.empty, .calendar .road_test_slot.empty {
  background-color: #34D52F;
}

.calendar .road_test_block.unfilled, .calendar .road_test_slot.unfilled {
  background-color: #F88017;
  border-color: #F88017;
}

.calendar .road_test_block.filled dd, .calendar .road_test_slot.filled dd {
  color: #000;
}
.calendar .road_test_block.filled dd a, .calendar .road_test_slot.filled dd a {
  color: #000;
}

.calendar .road_test_block.filled.active dd a,
.calendar .road_test_slot.filled.active dd a {
  color: #FFFFFF;
}

.calendar .road_test_block.filled.active dd a.schedule_test_top,
.calendar .road_test_slot.filled.active dd a.schedule_test_top {
  color: #2F6FED;
}

.calendar .road_test_block.filled.active span.blue,
.calendar .road_test_slot.filled.active span.blue {
  color: #2F6FED;
}
.calendar .summary img.small {
  height:1.2em;
}

.calendar .summary span.paid {
  height:1.2em;
  background-color:green;
  border-color:green;
  font-size:12px;
}

.calendar .summary span.not-paid {
  height:1.2em;
  background-color:red;
  border-color:red;
  font-size:12px;
}

.calendar .road_test_block {
  background-color: #FFFFFF;
}

.calendar .road_test_block .vevent dl dd a {
  color: #000;
}

.calendar .one_on_one {
	background-color: #8DE577;
	border-color: #20CF37;
}


.calendar .drive dt, .calendar .drive_slot dt {
  background-color: #3070EC;
}

.calendar .drive.empty, .calendar .drive_slot.empty {
  background-color: rgb(160, 197, 244);
  border-color: #418AE9;
}

.calendar .one_on_one dt {
	background-color: #20CF37;
}

.calendar .drive.empty dt, .calendar .drive_slot.empty dt {
  background-color: #418AE9;
}

.calendar .drive.unfilled, .calendar .drive_slot.unfilled {
  background-color: #D14242;
  border-color: #B11;
}

.calendar .drive.unfilled dt, .calendar .drive_slot.unfilled dt {
  background-color: #B11;
}

.calendar .drive_slot .drive {
  background-color: transparent;
}

.calendar .drive_slot .drive.unfilled .spot a {
  color: #B11;
}
.calendar .drive_slot .drive.empty .spot a {
  color: rgb(160, 197, 244);
}

.week_labels.label .next {
  float: right;
}

dl.key {
  margin: 0;
  padding: 1em;
}

dl.key dt {
  float: left;
  margin: 0;
  padding: 0;
  width: 1em;
  height: 1em;
  line-height: 1em;
  text-indent: 1.5em;
  margin-right: 10em;
  white-space: nowrap;
}

/* Scheduling Drives */

#drives-calendar .meeting, #schedule-drives .key .meeting {
  background-color: #CCC;
  border-color: #AAA;
}
#drives-calendar .meeting dt {
  background-color: #AAA;
}

/* Creating Drives */

.calendar .conflicting {
  background-color: #FBF2A5;
}

ul.key {
  list-style: none;
  margin: 1em 0;
  padding: 0;
}

ul.key li {
  display: inline;
  padding: 1em;
}

ul.key li span {
  padding: 4px;
  width: 0.6em;
  height: 0.6em;
}

.day .label {
  position: relative;
}

.day .label .next {
  position: absolute;
  right: 0.5em;
}
.day .label .previous {
  position: absolute;
  left: 0.5em;
}

.month .meeting a {
  display: block;
  padding: 2px 0;
}

.month .meeting a:hover {
  text-decoration: none;
  background-color: #3070EE;
  color: #D9E0FF;
}

.month .meeting {
  background-color: #D9E0FF;
  padding: 0 !important;
}

.calendar-controls {
  text-align: center;
}

.calendar-controls input[type=submit] {
  border-style: solid;
  height: 2rem;
  border-radius: 4px;
  padding: 0 1rem;
}

#select-edit {
  margin: 1rem;
}

#edit-events select {
  border-style: solid;
  height: 2rem;
  border-radius: 4px;
  width: 50%;
  padding-left: .5rem;
  margin: .2rem;
}

.calendar-controls a {
  background: #EEE url(/assets/century/label_background.gif) repeat-x;
  border: 1px solid #CCC;
  padding: 0.3em 0.5em;
  font-weight: bold;
  color: #333;
  text-decoration: none;
}
.calendar-controls a.selected {
  background: #EEE url(/assets/century/selected_calendar_type.gif) repeat-x;
  color: #FFF;
}

.calendar-views {
  position: relative;
  top: 10px;
  left: 37px;
  width:  10px;
}

.calendar-views img {
  width: 25px;
}

.one_on_one_address {
	display: none;
}

/* Drive Times Student Scheduling Overrides
-------------------------------------------------------------------*/
#content .seat dt,
#content .drive_slot dt,
#content .meeting dt {
	color: #fff;
	font-size: 1.1em;
	font-weight: normal;
	margin: 0;
}
#content div.calendar {
	margin: 35px;
}
#content .day .label {
	top: -15px;
  border-left: 1px solid #A4ACB2;
}
.time-checklist li.observation:before {
	background: #00a66a;
}

.select-box input[type=submit], .select-box select {
  border-style: solid;
  height: 2rem;
  border-radius: 4px;
}

.select-box select {
  width: 85%;
  padding-left: .5rem;
}

.select-box input[type=submit] {
  width: 10%;
  margin-left: .5rem;
}

.select-box ul {
  list-style: none;
  padding: 0;
}
