*{
margin:0;
padding:0;
}

body{
font-family:"frutiger linotype","lucida grande",helvetica,arial,sans-serif;
text-align:left;
color:#333;
font-size: 76%;
}

/* General Style Info */
a{
color:#003d4c;
text-decoration:underline;
}
a:hover{
color:#003d4c;
text-decoration:none;
}

a img{
border:none;
}

h1, h2, h3, h4{
font-weight:normal;
}

h1.idl {
/*
color:#FF4422;
*/
color: #003d4c;
margin:0.3em 0;
font-size: 180%;
}

h1{
/*
color: #003d4c;
*/
color: navy;
margin:0.3em 0;
font-size: 180%;
}

h2{
/*
color:#c6c65b;
*/
color: navy;
padding-top: 1em;
margin:0.3em 0;
font-size: 180%;
}

h3{
/*
color:#c6c65b;
*/
color: navy;
padding-top:2em;
font-size: 140%;
}

h4{
/*
color:#c6c65b;
*/
color: navy;
padding-top:0.5em;
font-weight:normal;
}

em {
font-size: 12px;
}

ul, li {
margin: 0 4px;
font-size: 14px;
font-weight: bold;
list-style-type: none;
}

/* Layout */

#container{
text-align:left;
}

#header{
margin-top: 1em;
padding: 4px 20px;
}

#content{
clear:both;
padding: 0px 40px 10px 40px;
background-color: #fff;
color: #333;
}
#footer{
clear:both;
padding: 6px 10px;
text-align: right;
}

/* tables */

table {
width: 100%;
border-top: 1px solid #ccc;
border-left: 1px solid #ccc;
border-bottom: 1px solid #ccc;
color:#333;
background-color: #fff;
clear:both;
padding: 0;
margin: 0 0 2em 0;
white-space: normal;
}
th {
background-color: #e2e2e2;
border-top: 1px solid #fff;
border-left: 1px solid #fff;
border-right: 1px solid #003d4c;
border-bottom: 1px solid #003d4c;
text-align: center;
padding:1px 4px;
}
table tr td {
border-right: 1px solid #ddd;
padding:4px 4px;
vertical-align:top;
text-align: left;
}
table tr.altRow td {
background: #f4f4f4;
}
table td.actions {
	white-space: nowrap;
}
#cakeSqlLog td {
text-align: left;
padding: 4px 8px;
background: #fff;
border-bottom: 2px solid #ccc;
}

/* scaffold show */

div.related {
clear:both;
display:block;
}
dl {
line-height:2em;
margin:0em 1em;
float:left;
width: 400px;
}
dt {
font-weight: bold;
vertical-align:top;
}
dd {
margin-left:10em;
margin-top:-2em;
vertical-align:top;
}

/* notices and errors */

#flashMessage, .error, .error_message {
color:#900;
font-size: 16px;
background-color: #fff;
margin: 8px 0px;
font-weight: bold;
}
.error_message {
clear: both;
}
.error em {
font-size: 18px;
color: #003d4c;
}
.notice {
color: #656565;
font-size: 14px;
background-color: #f4f4f4;
padding: 0.5em;
margin: 1em 0;
display:block;
}
.tip {
color: #656565;
background-color: #ddd;
}

/* forms */

form {
margin-top: 2em;
}
form div{
vertical-align: text-top;
margin-left: 1em;
margin-bottom:2em;
text-align: left;
}
form div.date{
margin-left: 0em;
}
label {
display: block;
width: 140px;
font-size: 14px;
padding-right: 20px;
}
input[type=checkbox] {
float: left;
clear: left;
margin: 2px 6px 7px 2px;
}
input, textarea {
clear: both;
display:block;
font-size: 14px;
font-family: inherit;
}
select {
clear: both;
vertical-align: text-bottom;
font-size: 14px;
font-family: inherit;
}
option {
font-size: 14px;
font-family: inherit;
padding: 0 0.3em;
}
input[type=submit] {
display: inline;
vertical-align: bottom;
}
div.required {
clear: both;
color:#222;
font-weight:bold;
}
div.optional {
clear: both;
color:#555;
}
div.submit {
clear: both;
margin-top: 40px;
margin-left: 140px;
}
/* action links */
ul.actions {
float: left;
margin-left:20px;
width: 200px;
}
ul.actions li {
margin-top: 4px;
}
pre {
padding: 1em;
}

.present, .optional { text-color: green; color: green; }
.absent, .mandatory { text-color: red; color: red; font-weight: 600; }

.overhours { text-color: orange; color: orange; font-weight: 600; }
.badhours { text-color: red; color: red; font-weight: 600; }

.note { text-decoration: italic; }


/* schedule */

table#schedule {
	padding: 0px;
	margin: 0px;
	border: 0px black solid;
	width: 100%;
}

table#schedule tr {
	margin: 0px;
	padding: 0px;
	border: 0px black solid;
}

table#schedule th, table#schedule td {
	padding: 0px;
	margin: 0px;
	border: 0px black solid;
	border-top: 1px #C0C0C0 solid;
}

table#schedule td {
}

table#schedule th {
	border-left: 1px #C0C0C0 solid;
	background-color: #C0C0C0;
}
table#schedule td.hour {
	border-left: 1px #C0C0C0 solid;
	font-size: 1px;
}

table#schedule td.quarter {
	border-left: 1px #C0C0C0 dotted;
	font-size: 1px;
}

table#schedule td.free {
	padding: 0px;
	margin: 0px;
	font-size: 1px;
}

table#schedule td.used {
	padding: 0px;
	margin: 0px;
	color: black;
	text-align: center;
	background-color: #eaeaea;
	font-size: 10px;
}

table#schedule em {
	font-size: 10px;
}


table#schedule .sched_hours {
	color: #696969;
}

/* schedule PRINT */

table#schedule_print: {
	padding: 0px;
	margin: 0px;
	border: 0px black solid;
	width: 900px;
}

table#schedule_print tr {
	margin: 0px;
	padding: 0px;
	border: 0px black solid;
}

table#schedule_print th, table#schedule_print td {
	padding: 0px;
	margin: 0px;
	border: 0px black solid;
	border-top: 1px #696969 solid;
}

table#schedule_print td {
}

table#schedule_print th {
	border-left: 1px black solid;
	background-color: black;
	color: white;
}
table#schedule_print td.hour {
	border-left: 2px black solid;
	font-size: 1px;
}

table#schedule_print td.quarter {
	border-left: 1px black dotted;
	font-size: 1px;
}

table#schedule_print td.free {
	padding: 0px;
	margin: 0px;
	font-size: 1px;
}

table#schedule_print td.used {
	padding: 0px;
	margin: 0px;
	color: black;
	text-align: center;
	background-color: #a9a9a9;
	font-size: 10px;
}

table#schedule_print em {
	font-size: 10px;
}


table#schedule_print .sched_hours {
	color: black;
}


div#overDiv {
	border: 1px black solid;
	background-color: deepskyblue;
}
div#overDiv table {
	padding: 0px;
	margin: 3px;
	border: 0px;
	width: 300px;
}

div#overDiv table td {
	padding: 0px;
	margin: 0px;
	border: 0px;
	background-color: deepskyblue;
}
