/* 
	CSS defines
	common to multiple NLG applications
		master typography
		default behaviors for elements
	version history
	nlgv v0.6 jan 2006
	

*/

/* ------------------ default typography ---------------------- */
/* based on owen brigg's recommended browser-independent sizes */
body {
	background-color:#fff;
	font-family: arial, helvetica, sans-serif;
	font-size:69%;
	margin: 0px;
	padding: 0px;
}

p, td, th, div, form, span, table {
	font-family:arial, helvetica, sans-serif;
	font-size:1em;
}

input, select {
	font-family: verdana, helvetica, sans-serif;
	font-size: 1em;
}

h1, h2, h3 {
	margin-top:5px;
	margin-bottom:5px;
}

h1 {
	font-size:1.6em;
}

h2 {
	font-size:1.4em; 
}


h3 {
	font-size:1.4em;
	font-weight: normal;
}

/* set up useful default behaviors for html elements */

td {
	vertical-align:top;
}

table {
	border:0;
}
a img {
	border:0
}
form {
	padding: 0px;
	margin: 0px;
}
.fullwidth, .fullWidth {
	width:100%;
}
table.fixed {	
	table-layout:fixed;
}
/* ------------------- link typography ------------------- */
/* dmw: better to keep visited state different or not? really not sure */
a:link, a:visited {
	text-decoration:none;
}
a:link, a:visited {
	color:#0a5a9c;
}
/*a:visited {
	color:#9c5a9c;
	}*/
a:hover, a:active {
	text-decoration:underline;
	/* ie6 needs next definition in floated elements */
	background:transparent;
	color:#094577;
}
/* ---------------- application header ------------  */
/* header/footer globals */


/* header/footer globals */
table#layoutHeader {
	width:100%;
}
#layoutHeader iframe {
	border: 0px none ; 
	width: 100%; 
	height: 50px;
}

/* the logo */
#layoutHeader td#logoCell {
	width:40px;
}
#layoutHeader td#logoCell img {
	border:0;
	height:40px;
	width:40px;
}

/* the application name */

#appCell h1 {
	font-size:20px;		/* explicit sizing to match logo */
	padding-top:10px;
	margin-top:0;
}

#layoutHeader #appCell a {
	color:black;
	text-decoration:none;
}
#layoutHeader #appCell span.logoColor, #layoutHeader #appCell a span.logoColor {
	color:red;
}


/* ---------------- application footer ------------  */
#layoutFooter {
	padding-top:1em;
	margin-bottom:1em;
	width:100%;
}
#layoutFooter p {
	text-align:center;
	font-size:10px;
}
/* ---------------- security menu -----------------  */

#menuCell {
	text-align:right;
}

div#securityMenu {
	text-align:right;
	vertical-align:top;
	font-family: arial; 
	font-size: 8pt;
}

div#securityMenu a:link, div#securityMenu a:visited {
	color:#0a5a9c;
}
div#securityMenu a:hover, div#securityMenu a:active {
	color:#094577;
	text-decoration:underline;	
}

/* ---------------- common graphics ---------------  */
.separatorLine {
	height: 1px;
	width: 100%;
	background-color: #005a9c;
	color: #005a9c;
	border: 0px solid #005a9c;
}
/* calendar */
img.calendarIcon {
	margin-left:4px;
	vertical-align:top;
	border:0;
	width:19px;
	height:18px;
}
/* plus/minus buttons */
img.addimg {
	width:19px;
	height:9px;
	vertical-align:top;
}
img.subimg {
	position:relative;
	left:-19px;
	width:19px;
	height:9px;
	bottom:1px;
	vertical-align:bottom;
}
/* sort order icon */
img.sortstate {
	height:10px;
	width:10px;
	margin-right:2px;
	vertical-align:-10%;
}
/* back to top */
img.top {
	height:10px;
	width:10px;
	margin-right:2px;
}

/**
 * Floating tool tips
 */

#toolTip {
	background:#eef;
	border:1px solid black;
	padding:0.5em;
}

/* ----------------------- messaging ------------------- */
/*
 * Messages and error handling
 */

.systemError {
	width: 600px;
	border: solid red 1px;
	margin: 20px;
	padding: 5px;
}

.messages {
	width: 95%;
	padding: .5em;
	margin: auto;
	margin-top: .5em;
	margin-bottom: .5em;
	border: solid #005a9c 1px;
	background-color: #ffd;
}

.message {
	color: #000;
}

.errorMessages {
	width: 95%;
	padding: .5em;
	margin: auto;
	margin-top: .5em;
	margin-bottom: .5em;
	border: solid red 1px;
	/*background-color: #ffd;*/
}

.errorMessage {
	color: #000;
}

.errorHeader {
	font-weight: bold;
	color:red;
}

.warningMessage {
	width: 100%;
	border: solid #005a9c 1px;
	background-color: #eee;
	margin-top: 5px;
	margin-bottom: 5px;
	padding: 5px;
}

.warningHeader {
	font-weight: bold;
}

.warningText {
	color: #000;
	font-weight: bold;
}

.alertText, a.alertText {
	color: red;
	font-weight: bold;
}
/* IE needs extra defs */
a.alertText:link, a.alertText:visited, a.alertText:hover, a.alertText:active {
	color:red;
}

.stackTrace {
	font-family: arial, sans-serif;
	font-size: 1em;
	border: 1px inset;
	width: 700px; 
	height: 400px; 
	overflow: auto;
	padding: .1em;
	background-color: #eee;
	margin-top: 1em;
	margin-bottom: 1em;
}

/* 
 * specificity = 0 - 1 - 1 
 */
input.fieldErrorIndicator, select.fieldErrorIndicator {
	/*background-color:#fdd;*/
	border:2px solid #c00 !important;
	color:#a00 !important;
}

.fieldErrorMessage {
	padding:2px;
	background-color:white;
	color:red;
	border:1px solid red;
}
.formMessageContainer {
	/* IE6/7 *require* non-zero padding to render correctly */
	padding:1px;
	margin-bottom:4px;
	background-color:white;
	color:red;
}


