* {
	/* makes the white margin in IE6 disappear */
	margin: 0px;
}

html {
  padding: 0em;
  color: black;
  background: white;
}

body {
  margin:0 2em 0 2em;
  padding:0em;
  padding-top: 5em;
  font-family: Verdana, Helvetica, sans-serif;
}

html, body, div, h, p, blockquote, name, nl, li {
	display: block;
}

head {
	display: none;
}

h {
  margin: 0em 0em -0.24em -0.9em;
  border-bottom: 0.08em solid #005A9C;
  font-size: 180%;
  font-weight: bold;
}

body h {font-size: 200%; color: #005A9C}

.must {border: thin red solid}
.should {border: thin red dotted}
.note {background-color: yellow; }
label {display: block; font-weight: bold}

input {border: thin black solid; background-color: yellow }

#pagetitle {
  position: absolute;
  top: -0.4em;
  left: -0.24em;
  font-size: 700%;
  font-weight: bold;
  color: #DF7900;
  border: none;
  margin: 0em;
  padding: 0em;
}

#content {
  padding: 1em 10.5em 1em 15em;
  margin: 0em;
  display: block;
  font-size: 100%;
  width: 100%;
  background: #EDEDF0;
  border-top: 0.08em solid #000033;
}

body>#content {
	width: auto;
}

#note {
  font-size: 90%;
  font-family: Tahoma, Helvetica, sans-serif;
  float: right;
  width: 12em;
  border-left: 0.27em solid #ff9900;
  border-top: 0.27em solid #FFDFB0;
  border-bottom: 0.27em solid #FFDFB0;
  background: #FFDFB0;
  padding: 1em 1em 1em 0.5em ;
  margin: 0.5em -6em 1em 1em;
}

#note h {
	font-size: 100%;
	text-decoration: none;
	border: none;
	margin: 0em;
}

#footer {
  font-size: 77%;
  padding: 0em 0.23em 0.23em 0.24em;
  border-top: 0.10em solid #000033;
  display: block;
  clear: both;
}

nl li {
  color: #000033;
  background: #FFDFB0;
  border-left: 0.18em solid #FFF7EC;
  border-bottom: 0.18em solid #DFBF90;
  border-right: 0.18em solid #DFBF90;
  border-top: 0.18em solid #FFF7EC;
}
nl li:hover {
  background: #FFFFFF;
  border-left: 0.18em solid #EAEAEE;
  border-right: 0.18em solid #D5D5DD;
  border-top: 0.18em solid #F5F5F7;
  border-bottom: 0.18em solid #D5D5DD;
}
nl li.hover {
  background: #FFFFFF;
  border-left: 0.18em solid #EAEAEE;
  border-right: 0.18em solid #D5D5DD;
  border-top: 0.18em solid #F5F5F7;
  border-bottom: 0.18em solid #D5D5DD;
}

#sidebar {
  border: 0.16em solid #000033;
  border-top: none;
  background: #FFEFD8;
  padding: 0em;
  position: absolute;
  top: 5.3em;
  left: 0.3em;
}
#sidebar name {
  background: #000033;
  border: 0.18em solid #000033;
  border-bottom: none;
  color: #EDEDF0;
  text-align: center;
  font-weight: bold;
  font-size: 90%;
  padding: 0em 0.27em 0.27em 0.27em;
  width: 12em;
}
#sidebar li {
  padding: 0.09em 0.27em;
  font-size: 90%;
  font-family: Tahoma, Helvetica, sans-serif;
  width: 12em;
}

#navigation {
  position: absolute;
  top: -1.2em;
  left: 0em;
  display: block;
  z-index: 1;
  width: 100%;
  height: 5.5em;
}
#navigation name {
  position: relative;
  top: 0.15em;
  left: 0em;
  font-size: 384%;
  font-weight: bold;
  z-index: 2;
  padding: 0em;
}
#navigation li {
  position: relative;
  border-bottom:none;
  padding: 0.08em 0.24em 0.08em 0.24em;
  text-align: center;
  float:left;
  margin-left: 0.16em;
  margin-right: 0.24em;
  margin-bottom: 0em;
  width: 8em;
  z-index: 3;
}
head:first-child+body #navigation li {
  margin-bottom: 0.08em;
}


p {
  margin: 0.5em 0em 0.5em 0em;
  text-align: justify;
}
ul, ol, pre {
  margin-top: 0.5em;
  margin-bottom: 0.5em;
}
ul, ol {
  margin-left: 0em;
  padding-left: 1.5em;
}
blockquote {
  background-color: #D5D5DD;
  margin: 0.5em 0em 0.5em 0em;
  padding: 0em 1em;
  border-left: 0.16em solid #000033;
  border-top: 0.16em solid #D5D5DD;
  border-bottom: 0.16em solid #D5D5DD;
}
blockquote blockquote {
	padding-right: 0em;
}
section h {
  margin: 0em -5.34em -0.24em -0.9em;
  border-bottom: 0.08em solid #005A9C;
  font-size: 180%;
  font-weight: bold;
}
section section h {
  margin: 1em -6.68em 0.5em -0.75em;
  border-bottom: 0.08em solid #005A9C;
  font-size: 135%;
  font-weight: bold;
}
section section section h {
  font-size: 100%;
  font-weight: bold;
  margin: 1em 0em 0.5em 0em;
  border: none;
}

code {
	font-family: monospace;
}
em {
	font-style: italic;
}
strong {
	font-weight: bold;
}

a {
  color: #7F5F30;
  text-decoration: none;
  font-weight: bold;
  display: inline;
}
a:hover, a:visited {
  color: #000033;
}
a.hover {
	color: #000033;
}

li[href] {background-color: yellow}
li[href=""] {background-color: red}
xforms|group {border: thin red solid}
group {border: thin green solid}
xforms\3a group {border: blue solid thin}
*[href] {
  -set-link-source: attr(href);
  -use-link-source: current;
  cursor: pointer;
  -moz-binding:url(xhtml2.xbl.xml#link);
}

object[data] {
  -replace: attr(data);
  -moz-binding:url(xhtml2.xbl.xml#object);
}

a, h, li, p {
	behavior:url(xhtml2.htc);
}

/* Below is taken from http://www.w3.org/TR/2002/CR-xforms-20021112/sliceF.html#id2642032 */
@namespace xforms url(http://www.w3.org/2002/xforms/cr);

/* Display a red background on all invalid form controls */
*:invalid { background-color:red; }
/* Display a red asterisk after all required form controls */
*:required::after { content: "*"; color:red; }
/* Do not render non-relevant form controls */
*:disabled { visibility :hidden; }
/* The following declarations cause form controls and their labels
to align neatly, as if a two-column table were used */
xforms|group { display: table; }
xforms|input { display: table-row; }
xforms|input > xforms|label { display: table-cell; }
xforms|input::control { border: thin black solid; display: table-cell; }
/* Display an alert message when appropriate */
*:valid   > xforms|alert { display: none; }
*:invalid > xforms|alert { display: inline; }
/* Display repeat-items with a dashed border */
*::repeat-item { border: dashed; }
/* Display a teal highlight behind the current repeat item */
*::repeat-index { background-color: teal; }
/* Display non-relevant repeat items in the system GrayText color */
*::repeat-item:disabled { visibility: visible; color: GrayText; }
