/* zero out for cross-browser consistency */

body, div, dl, dt, dd, ul, ol, li, h1, h2, h3, h4, h5, h6, pre, form, fieldset, input, textarea, p, blockquote, th, td { 
	margin: 0;
	padding: 0;
}

html { 
	overflow-y:scroll;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

fieldset, img { 
	border: 0;
}

address, caption, cite, code, dfn, em, strong, th, var {
}

ol, ul {
	list-style: none;
}

caption, th {
	text-align: left;
}

h1, h2, h3, h4, h5, h6 {
	font-size: 100%;
	font-weight: bold;
}

q:before, q:after {
	content: '';
}

abbr, acronym { 
	border: 0;
}

/* set defaults for regular html */

body {
	font-family: "Trebuchet MS", Verdana, Helvetica, sans-serif;
	font-size: 10pt;
	color: #000;
	text-align: center; /*centre for ie5 */
	background: #797a7c;
}

body#popup {
    background: #fff;
    text-align: left;
} 

body#print {
    background: #fff;
    text-align: left;
} 

h1 {
	font-size: 16pt; 
	font-family: Tahoma, "Trebuchet MS", Verdana, Helvetica, sans-serif;
	margin: 0 0 0.66em 0;
	color: #47509e;
}
	
h2 {
	font-size: 13pt; 
	font-family: Tahoma, "Trebuchet MS", Verdana, Helvetica, sans-serif;
	margin: 0.66em 0;
	color: #47509e;
}

h3 {
	font-size: 10pt; 
	font-family: Tahoma, "Trebuchet MS", Verdana, Helvetica, sans-serif;
	margin: 0.66em 0;
	color: #47509e;
}

h4 {
	font-size: 10pt; 
	font-family: Tahoma, "Trebuchet MS", Verdana, Helvetica, sans-serif;
	margin: 0.66em 0;
	color: #47509e;
}

p {
	margin: 0.66em 0;
}

a:link {
	text-decoration: underline; 
	color: #00c;
}

a:visited { 
	text-decoration: underline; 
	color: #00c;
}

a:active { 
	text-decoration: underline; 
	color: #c00;
}

a:hover { 
	text-decoration: none; 
}

ul {
	margin: 8px 0 8px 16px;
	padding: 0;
}	

code {
  font-family: courier, monospace;
  background: #ccc;
}

form {
	margin: 0;
	padding: 0;
}

/* for clearing floating divs */

.clear {
	clear: both;
}

/* custom inline styles */

.alert {
	color: #c00; 
}

.hilite {
	background: #ff6;
}

.summary {
	margin-top: 4px;
	border: 1px solid #ddc; 
	background: #ffe;
	padding: 4px;
}	

.summary table {
	width: 100%;
}

.summary table td {
	vertical-align: top;
}

/* template structure */

#background {
	margin-top: 8px;
	text-align: left; /* centre for compliant browsers*/
}

#container {
	margin: auto; 
	width: 940px; 
	padding-bottom: 60px;
	background: url(/images/container-bg.png) bottom center no-repeat;
}

#content {
	padding: 4px 8px 16px 8px;
	margin: 0 2px;
	min-height: 400px;
	height: auto !important; /* IE6 */
	height: 400px; 
}

#index {
}

#index #index-sidebar {
	display: inline;
	width: 200px;
	float: left;
}

#index #index-content {
	display: inline;
	width: 716px;
	float: right;
}

/* common elements */

#userbar-wrap {
	height: 24px;
	background: #000;
}

#userbar {
	width: 940px;
	height: 24px;
	margin: auto;
	color: #fff;
}

#userbar a {
	color: #fff;
	text-decoration: none;
}

#userbar a:hover {
	text-decoration: underline;
}

#userbar #userbar-title {
	margin-top: 3px;
	width: 300px;
	float: left;
	font-weight: bold;
}

#userbar #userbar-links {
	margin-top: 3px;
	width: 600px;
	float: right;
	text-align: right;
}

/* footer */

#footer-wrap {
	margin-bottom: 8px;
}

#footer {
	width: 924px;
	margin: auto;
	text-align: center;
	color: #fff;
}

#footer a {
	color: #fff;
}

/* web-app UI elements */
 
#controller {
	margin: 0 auto 4px auto;
	background: #ddd;
	color: #000;
	padding: 6px;
	-moz-border-radius: 4px;
}

#controller table {
	width: 100%;
}

#controller td {
	vertical-align: middle;
	height: 24px;
}

#controller h1 {
	color: #000;
	margin: 2px 0 0;
	font-size: 10pt;
}

#controller a {
	color: #000;
}

#controller a.additem {
	float: right;
	display: block;
	text-align: center;
	padding: 1px 0 0 0;
	width: 102px;
	height: 21px; 
	background: #666;
	border: 1px solid #666;
	color: #fff;
	margin-left: 8px;
	text-decoration: none;
}

#controller a:hover.additem {
	background: #fff;
	color: #000;
	text-decoration: underline;
}

#selector {
	background: #eee;
	margin-top: 4px;
	margin-bottom: 4px;
	padding: 4px;
}

#selector h1 {
	font-size: 10pt;
}

#selector a {
}

#selector table {
	width: 100%;
}

#selector table td {
	padding: 0;
}

#selector td.action {
	width: 60px;
	text-align: right;
	vertical-align: middle;
}

#selector td.action input.close {
	font-size: 8pt;
	width: 60px;      
	font-weight: bold;
}


table#title {
	width: 100%;
	background: #eee;
	-moz-border-radius: 4px;
	margin: 0 auto 4px 0;
}

table#title td {
	vertical-align: middle;
}

#title td.action {
	width: 60px;
	text-align: right;
	vertical-align: middle;
}

#title td.action input.close {
	font-size: 8pt;
	width: 60px;
	font-weight: bold;
}

table#title td form {
	margin-top: 3px;
}

table#title td h1 {
	font-size: 10pt;
	background: none;
	color: #000;
	margin: 8px;
}

table#title td h1 a {
	color: #000;
}

#heirachy {
	margin-top: 4px;
	margin-bottom: 4px;
	border-top: 1px solid #ddc; 
	border-bottom: 1px solid #ddc; 
	background: #ffe;
	padding: 2px;
	font-size: 9pt;
}	

/* dataset - for tabulated data */

.dataset {
	margin-top: 4px;
}

.dataset table {
	border-top: 1px solid #ddc; 
	border-bottom: 1px solid #ddc;
	width: 100%;
}

.dataset table td {
	vertical-align: top;
	padding: 2px;
}

.dataset thead {
	background: #ffe;
	border-bottom: 1px solid #ddc; 
}

.dataset td.thead {
	background: #ffe;
	border-bottom: 1px solid #ddc; 
}

.dataset td.odd {
	background: #fff;
}

.dataset td.even {
	background: #f6f6f6;
}

.dataset tfoot td {
	border-top: 1px solid #ddc; 
	background: #ffe;
}

.dataset tfoot td {
}

/* formbox */

/* formbox common */

.formbox {
}

.formbox h2 {
}


.formbox label.formbox-mandatory:before {
	content: "*";
	color: #c00;
}

.formbox label.formbox-invalid {
	display: block;
	color: #c00;
}

.formbox label.formbox-invalid:before {
	content: "";
}



.formbox input[type="button"], 
.formbox input[type="submit"] {
	padding: 4px;
}

.formbox input[type="text"], 
.formbox input[type="password"] {
	padding: 4px;
	width: 200px;
}

.formbox select {
	padding: 4px;
}

.formbox textarea {
	padding: 4px;
	width: 200px;
}

.formbox input[type="checkbox"] {
	padding: 4px;
	margin-right: 8px;
}

.formbox input[type="radio"] {
	padding: 4px;
	margin-right: 8px;
}

.formbox fieldset {
	border: 1px solid #ddd;
	margin: 8px;
	padding: 8px;
}

.formbox fieldset legend {
}

 /* formbox semantic */

.formbox p {
	padding: 8px 0;
	margin: 8px 0;
	line-height: 140%;
}

.formbox p:after {
	/* clearfix */
	content: ".";
	display: block;
	clear: both;
	visibility: hidden;
	line-height: 0;
	height: 0;
}

.formbox p label {
	width: 40%;
	display: block;
	float: left;
	font-weight: bold;
	padding: 0;
	margin: 0 8px 0 0;
}

.formbox p label a {
	font-weight: normal;
}

.formbox span label {
	float: none;
	display: inline;
	font-weight: normal;
}

.formbox ul li {
	margin: 4px 0;
	padding: 0;
}

/* formbox table */

.formbox table {
	width: 100%;
}

.formbox table td {
	vertical-align: top;
	padding: 4px;
}

.formbox table td:first-child {
}

.formbox table td p {
	padding: 4px 0;
}

.formbox table td ul {
	margin: 0;
	padding: 0;
	list-style: none;
}

.formbox table td ul li {
	margin: 4px 0;
	padding: 0;
}
