@CHARSET "UTF-8";
.square {
	display: inline-block;
	width: 1em;
	height: 1em;
	border-width: 1px;
	border-style: solid;
	vertical-align: -25%;
}
.calendar {
	position: relative;
}

.calendar .day, .calendar .legend {
	float: left;
	width: 153px;
	margin: 0 2px 0 0;
}

.calendar .no-border, .calendar .no-border li {
	border-color: #fff;
}

.calendar .time {
	float: left;
	width: 38px;
	margin: 0 2px 0 0;
}

.calendar ul.slot {
	display: inline-block;
	list-style: none;
	padding: 0;
	border-width: 1px 1px 0 1px;
	border-style: solid;
}

.calendar ul.slot li {
	height:14px;
	border-width: 0px 0px 1px 0px;
	text-align: center;
	font-size: 0.9em;
}

.calendar ul.legend li {
	text-align: left;
}

.calendar ul.slot li:nth-child(odd) {
	border-style: dotted;
}

.calendar ul.slot li:nth-child(even) {
	border-style: solid;
}

.calendar ul.slot li .hiddden {
	font-size: 11px;
	line-height: 15px;
	display: none;
}

.calendar ul.slot li:hover .hiddden {
	display: block;
}

.calendar ul.slot li .centered {
	margin: 3px 3px 0 0;
}

.slot-grey {
	border-color: #d8d8d8;
	background: #eaeaea;
}

.calendar ul.slot-grey li:nth-child(odd), ul.slot-grey li:nth-child(even)  {
	border-style: solid;
}

.slot-grey li {
	border-color: #d8d8d8;
}

.slot-green {
	border-color: #b0de9c;
	background: #d6efca;
}

.calendar ul.slot-green li:nth-child(odd), ul.slot-green li:nth-child(even)  {
	border-style: solid;
}

.slot-green li {
	border-color: #b0de9c;
}

.slot-dark-grey {
	border-color: #aaa;
	background: #ccc;
}

.slot-dark-grey a {
	color: black !important;
}

.calendar ul.slot-dark-grey li:nth-child(odd), ul.slot-dark-grey li:nth-child(even)  {
	border-style: solid;
}

.slot-dark-grey li {
	border-color: #aaa;
}

.slot-red {
	border-color: #C6322A;
	background: #d14836;
}

.calendar ul.slot-red li:nth-child(odd), ul.slot-red li:nth-child(even)  {
	border-style: solid;
}

.slot-red li {
	border-color: #C6322A;
	color: white;
}

.slot-dark-red {
	border-color: #812b1f;
	background: #8c2e22;
}

.calendar ul.slot-dark-red li:nth-child(odd), ul.slot-dark-red li:nth-child(even)  {
	border-style: solid;
}

.slot-dark-red li {
	border-color: #812b1f;
	color: white;
}

.slot-blue {
	border-color: #255D9D;
	background: #3582d9;
}

.calendar ul.slot-blue li:nth-child(odd), ul.slot-blue li:nth-child(even)  {
	border-style: solid;
}

.slot-blue li {
	border-color: #255D9D;
	color: white;
}

.slot-dark-blue {
	border-color: #255D9D;
	background: #255D9D;
}

.calendar ul.slot-dark-blue li:nth-child(odd), ul.dark-light-blue li:nth-child(even)  {
	border-style: solid;
}

.slot-dark-blue li {
	border-color: #255D9D;
	color: white;
}

.slot-white {
	border-color: #ddd;
	background: #fff;
}

.slot-white li {
	color: #aaa;
	border-color: #ddd;
}

.slot li:first-child a:first-child {
	display: inline-block;
	max-width: 95px;
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
}

.calendar .availability{
	position: absolute;
	width: 145px;
	margin: 0 0 0 47px;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
}

.calendar .availability a, .calendar .style-white-slot a {
	display: block;
	text-decoration: none;
	color: black;
}

.calendar .lesson {
	position: absolute;
	width: 145px;
	margin: 0 0 0 47px;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
}

.calendar ul.lesson li, .calendar ul.availability li,  .calendar ul.style-white-slot li {
	text-align: left;
	padding-left: 5px;
}

.calendar .lesson a {
	color: white;
}

.calendar .occupied-bar {
	position: absolute;
	width: 7px;
	margin: 47px 0 0 52px;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
}

.calendar .occupied-bar li .hover {
	display: none;
}

.calendar .occupied-bar li .hover a {
	color: white;
}

.calendar .occupied-bar li:hover .hover {
	display: inline-block;
	padding: 0 1em;
	font-weight: bold;
	min-width: 100px;
}
/* turn on/off the light, see user/calendar for more information */
#stay_light_on {
	background-color:white;
	position:relative;
	z-index:999;
}
#the_lights {
	background-color:#000;
	height:100%;
	width:100%;
	position:absolute;
	top:0;
	left:0;
	display:none;
	z-index:-1;
}