/*
 * General
 */
body {
	font: 14pt Calibri, Verdana, Geneva, sans-serif;
	margin: 0;
	padding: 20px;
}

.nowrap {
	white-space: nowrap;
}

.prelim {
	color: #aaaaaa;
	font-size: -2pt;
}


/*
 * Links
 */

a {
	color: #880044;
	text-decoration: underline;
}

a:hover {
	color: #bb0044;
	text-decoration: none;
}

a.file_link {
	display: inline-block;
	position: relative;
	text-decoration: none;
	height: 36px;
	padding: 0;
	padding-left: 40px;
	vertical-align: middle;
}

a.file_link img {
	position: absolute;
	top: 0;
	left: 0;
	margin: 0;
	padding: 0;
	transition: 1.0s ease;
	-webkit-transition: 1.0s ease;
	transform: perspective(64px) rotateY(0deg);
	-ms-transform: perspective(64px) rotateY(0deg);
	-webkit-transform: perspective(64px) rotateY(0deg);
}

a:hover img {
	transform: perspective(64px) rotateY(360deg);
	-ms-transform: perspective(64px) rotateY(360deg);
	-webkit-transform: perspective(64px) rotateY(360deg);
}


a.file_link span {
	line-height: 36px;
}


strike {
	color: #666;
}

/*
 * Tables
 */
table {
	border: 0;
	border-spacing: 0;
	border-collapse: collapse;	
}

table td {
	padding: 3px 6px;
}

table th {
	padding: 3px 6px;
	text-align: left;
}


table td.right, table th.right {
	text-align: right;
}

table td.center, table th.center {
	text-align: center;
}


table.bordered {
	border: 1px solid #333366;
}

table.bordered td, table.bordered th {
	border: 1px dotted #666699;
}

table.bordered th {
	border-bottom: 1px solid #333366;
}



/*
 * Header and Menu
 */
#header {
	margin: 0;
	padding: 0;
	position: relative;
	border-bottom: 1px solid;
}

#header h1 {
	font-size: 36pt;
	color: #880033;
	margin: 0;
	padding: 0;
	margin-top: -10px;
	text-shadow: 5px 5px 5px #aaaaaa, 0 0 2px magenta;
	cursor: default;
}

#header>div {
	font-size: 18pt;
	color: #880033;
	margin: 5px 0;
	text-shadow: 5px 5px 5px #aaaaaa, 0 0 1px magenta;
}

#header nav {
	position: absolute;
	left: 360px;
	right: 0;
	bottom: 0;
	text-align:right;
	padding-bottom: 5px;
	min-width: 200px;
}


#header nav a {
	padding: 5px 10px;
	margin: 0;
	white-space: nowrap;
	text-decoration: none;
}

#header nav a.selected {
	text-shadow: 3px 3px 3px #aaaaaa;
}


.alert {
	border: 3px solid #c00;
	color: #c00;
	background-color: #fee;
	padding: 10px 20px;
	margin: 10px 20px;
	border-radius: 25px;
	font-size: 1.2em;
	text-align: center;
	box-shadow: 3px 3px 3px #999;
}


/*
 * Assignments
 */
article.assignment {
	margin-top: 20px;
}

article.assignment h2 {
	border-bottom: 1px solid #bbc;
	clear: both;
}

article.assignment aside {
	float: right;
	border: 1px solid #bbc;
	margin-left: 20px;
	margin-bottom: 10px;
	padding: 15px;
}

article.assignment aside p {
	margin: 2px 0px;
	padding: 0;
}

article.assignment aside table.speedup {
	margin: 10px;
}
article.assignment aside table.speedup td,
article.assignment aside table.speedup th {
	font-size: 10pt;
	padding: 2px 10px;
	padding-left: 0;
}

article.assignment aside table.speedup td+td {
	text-align: center;
}

