table.timetable {
	border: 0;
	width: 100%;
}

table.timetable td {
	vertical-align: top;
}

table.timetable tr.day_names th {
	text-align: center;
}


table.timetable td.times div.times-wrapper {
	width: 80px;
	height: 4em;
	position: relative;
}
table.timetable td.times.evening div.times-wrapper	{ margin-top: 5em; }
table.timetable td.times.weekend div.times-wrapper	{ height: 7em; margin-top: 1em; }
table.timetable td.times.fulltime div.times-wrapper	{ height: 8.5em; }


table.timetable td.times div.time {
	position: absolute;
}
table.timetable td.times div.time.start	{ right: 0; }
table.timetable td.times div.time.end	{ right: 0; bottom: 0; }
table.timetable td.times.weekend div.time.start	{ left: 0; }
table.timetable td.times.weekend div.time.end	{ left: 0; }

table.timetable td.classes div.class {
	height: 4em;
	border: 1px solid #FFF;
}
table.timetable td.classes.daytime div.class	{ background-color: #486dff; }
table.timetable td.classes.evening div.class	{ background-color: #821ee0; margin-top: 5em; }
table.timetable td.classes.weekend div.class	{ background-color: #c8c52f; height: 7em; margin-top: 1em; }
table.timetable td.classes.fulltime div.class	{ background-color: #41af49; height: 8.5em; }

table.timetable td.classes div.class div.title {
	margin-top: 0.75em;
	text-align: center;
	font-weight: bold;
}
table.timetable td.classes.weekend div.class div.title { margin-top: 2.25em; }
table.timetable td.classes.fulltime div.class div.title { margin-top: 2.75em; }

table.timetable td.classes div.class div.description {
	text-align: center;
}