html * {
	margin: 0;
	padding: 0;
}

/* GENERAL */

body {
	background: #fff;
	color: #333;
	font: 11px verdana, arial, helvetica, sans-serif;
}

a:link, a:visited, a:hover {
	color: #666;
	font-weight: bold;
	text-decoration: none;
}

a img {
	border:0;
}

li {
	margin-left:20px;
}

body {
	font-family:Helvetica,Verdana,Arial,sans-serif;
	color: #222222;
	font-weight: normal;
	padding: 0 15px 40px 15px;
	overflow-y: scroll;
	font-size: 12px;
	background-color:#FFF;
	line-height: 1.5em;
}

a, .ui-widget-content a, .ui-state-highlight a, .ui-widget-content .ui-state-highlight a {
	color:#444;
	text-decoration:none;
	font-weight:bold;
}

a:hover {
	color:#327abf;
}

h1 {
	font-size: 24px;
	padding-left: 10px;
	margin: 15px 0 20px 10px;
	font-style:italic;
	border:0 !important;
	line-height:1.6em;
}

h2 {
	font-size: 16px;
	margin: 25px 0 15px 0;
}

h3 {
	font-size: 14px;
	font-weight: bold;
	margin-top: 25px;
	margin-bottom:10px;
}

h4 {
	font-size:12px;
	margin-bottom:5px;
}

p {
	margin: 5px 0 10px 0;
}

/* layout */

div#container {
	position:relative;
	margin: 0 auto;
	width: 980px;
}

div#sidebar {
	display:inline;
	float:left;
	width: 165px;
	padding:5px;
	border:1px solid #c9c9c9;
	margin-bottom:15px;
}

div#sidebar div.logo {
	text-align:center;
}

div.navigation ul {
	list-style-type:none;
	margin-bottom:40px;
	margin-top:10px;
}

div.navigation ul li {
	font-size:20px;
	margin:0 0 5px 2px;
}

div#content {
	display:inline;
	float:right;
	width:793px;
	background-color:white;
	border:1px solid #c9c9c9;
	margin-bottom:10px;
	padding-bottom:15px;
}

div#pageBody {
	margin: 10px 15px 0 10px;
}

#header {
	padding:5px;
	margin-bottom:10px;
	margin-top:5px;
	height:75px;
	border:1px solid #C9C9C9;
	position:relative;
}

#header div.header {
	margin-top:2px;
	font-size:16px;
	font-weight:bold;
	font-style:italic;
	float:left;
}

#loginStatus {
	text-align:right;
}

#footer {
	padding:3px;
	height:auto;
	border:1px solid #C9C9C9;
	clear:both;
	text-align:center;
	color:#777;
}

#footer a {
	font-weight:normal;
}


/* flash message */

.flashMessage {
	background: #ffe298;
	border: 1px solid #f3b822;
	margin: 5px;
	padding: 3px;
	font-weight:bold;
	margin-bottom:20px;
}

.flashMessage li {
	list-style-type:none;
}

.flashMessage .info {
	color: #001870;
}

.flashMessage .error {
	color: #e50101;
}


/* forms */

form label {
	font-weight:bold;
}

form input[type=text], form input[type=password], form textarea, form select, form input[type=checkbox] {
	border: 1px solid #666;
	background: #FFF;
}

form input[type=text], form input[type=password] {
	width:300px;
}

form textarea {
	width:600px;
	height:150px;
}

form .hint {
	font-size:10px;
	color:#666;
	font-style:italic;
}

form ul.globalErrors, form ul.fieldErrors {
	margin-left:0;
}

form ul.globalErrors li, form ul.fieldErrors li {
	color:red;
	margin-left:0;
	list-style-type:none;
}

form ul.fieldErrors li {
	font-size:10px;
}

form .fieldError input, form .fieldError select, form .fieldError textarea  {
	border:1px solid red;
}

form .submit {
	margin-top:2em;
}

form .formElement {
	margin-bottom:0.5em;
}


/* filter forms */

form.filter {
	background:#F0F7FC;
	display:block;
	padding:5px 5px 10px 5px;
	width:250px;
	margin:2em 0 0 0;
}

form.filter input[type=text] {
	width:150px;
}

form.filter table {
	margin:0;
}

form.filter .submit {
	text-align:right;
	margin-top:0.5em;
}

form.filter h3 {
	margin:0;
}


/* tables */

table {
	border-spacing:0;
	margin-top:10px;
}

table thead th {
	white-space: nowrap;
}

td, th {
	padding:3px 5px 3px 5px;
	vertical-align:top;
}

table tr.even {
	background:#F0F7FC;
}

table td.actions, table td.number, table td.date {
	text-align:right;
	white-space:nowrap;
}

table.list td li {
	white-space:nowrap;
	list-style-type:none;
	margin-left:0;
}

table.list tbody tr:hover {
	background:#cce8fc;
}

td.checkbox {
	text-align:center;
}

td.label {
	font-weight:bold;
}


/* pagination */

.pagination .step, .pagination .currentStep {
	padding-left:3px;
	padding-right:3px;
	text-align:center;
	display:inline-block;
}


/* calendar */

#courseCalendar .THEORY .fc-event-skin, #courseCalendar .THEORY.fc-event-skin {
	background-color:#a834ff;
	border-color:#541a80;
}

#courseCalendar .OPENWATER .fc-event-skin, #courseCalendar .OPENWATER.fc-event-skin {
	background-color:#34b6ff;
	border-color:#1a5b80;
}

#courseCalendar .SPECIAL .fc-event-skin, #courseCalendar .SPECIAL.fc-event-skin {
	background-color:#ff5534;
	border-color:#802b1a;
}

#courseCalendar .EVENT .fc-event-skin, #courseCalendar .EVENT.fc-event-skin {
	background-color:#28d044;
	border-color:#1a802b;
}


#courseCalendar tbody td {
	cursor:pointer;
}


/* attendance handling */

#searchStudentDialog {
	background-color:#FFF;
}

#searchStudentDialog .results {
	min-height:100px;
	border:1px solid #777;
}

#searchStudentDialog .results li {
	list-style-type:none;
	margin:0 0 0 2px;
}

#attendStudentDialog textarea {
	width:100%;
}

/* jQuery custom & fixes */

.ui-button-text-only .ui-button-text, input.ui-button {
	padding:0.2em 0.5em;
}

/* buttons within widgets (eg tabs) */
.ui-icon-pencil {
	background-position:-64px -112px !important;
}
.ui-icon-transferthick-e-w {
	background-position:-112px -80px !important;
}
.ui-icon-trash {
	background-position:-176px -96px !important;
}

/* summary */

.studentSummary {
	list-style-type:none;
}

.studentSummary li {
	margin-left:0;
}

.studentSummary h3 .courseType {
	font-size:11px;
}