body {
	background-color: #ffffff;
	font-family: helvetica,avalon,sans-serif;
	margin: 4px;
	padding: 4px;
}

/* Web-Design: (copied from ot2.css) */

body.web-design {
  z-index:0;
  background-image:url(gray.png);
  background-repeat:repeat-y;
  background-position: left;
}

#logo { 
  position: fixed; top: 0px; left: 0px;
  white-space: nowrap;
  width: 100%;
  z-index: 16;
}

img#topbar {
	vertical-align: top;
}

a#back {
    background-color: inherit;
}

a.showmenu { color:#fffce4; background-color:inherit; }
a:hover.showmenu { color:#FFA500; background-color:inherit; cursor:pointer;} /* color: orange1 */
div#showmenu {
  position:fixed;top:10px;left:2px;
  font-size:6pt;
  z-index:17;
}

#chead {
    position:fixed;top:-7px;left:0px;
    background-color:#fffce4;
    background-image:url(gray.png);
    background-repeat:repeat-x;
    background-position: bottom;
    
    padding-top:13px;
    padding-left:0px;
    padding-right:0px;
    width:100%;
    height:38px;
    z-index:10;
    margin-left:22px;
    margin-top:35px;
    font-size:18pt;
    font-weight:bold;
    text-align:center;
    text-shadow: #e4e0d6 2px 3px 1px;
}

#bend{
  position:fixed;top:60px;left: 0px;
  background-image:url(bend-trans.png);
  background-repeat:no-repeat;
  width:30px;
  height:50px;
  margin-left:0px;
  margin-top:0px;
  z-index:11;
}

#spacer {
  height: 80px;
}


/* Links: */
a:visited { color: #5060f7; text-decoration: none; }
a:link    { color: #3010ff; text-decoration: none; }
a:hover  { color: black; background-color: #e8e8fc; }

a.syntax {
	border: 1px solid red;
	margin: 2px;
	padding: 2px;
}

a img {
	border-style: none;
}

/* ToC page: */
div.toc {
	font-weight: bold;
	padding-left: 20px;
}

div.toc.depth1 {
	font-size: 1.2em;
}

div.toc.depth2 {
	padding-left: 50px;
}
div.toc.depth2 a {
	color: black;
}

div.toc.depth3 {
	padding-left: 80px;
}
div.toc.depth3 a {
	color: black;
}

/* Chapter headings (with icon): */
div.chapter {
	margin: 0px;
	padding: 0px;
}

div.headl {
	height: 40px;
	width: 100%;
	background: url(heading_left.png) no-repeat left;
	margin-bottom: 10px;
	margin-top: 0px;
	padding: 0px;
}

div.headr {
	height: 40px;
	background: url(heading_right.png) no-repeat top right;
	margin: 0px;
	padding: 0px;
}

div.headr h1 {
	height: 34px;
	border-top: 2px solid #626280;
	border-bottom: 2px solid #626280;
	background-color: #9090B0;
	color:#ffffe0;
	font-size: 20pt;
	margin-left: 50px;
	margin-right: 22px;
	padding-left: 10px;
	padding-top: 2px;
	margin-top: 0px;
	margin-bottom: 0px;
	padding-bottom: 0px;
}

/* Mini-ToC-Box: */
div.toc-box, div#toc-box { /* transitionally support both class and id [SH] */
	position: fixed;
	top: 100px;
	right: 5px;
	width: 22pt;
	z-index: 9;
	background-color: #fff8e0;
	border: 2px solid #e0e0f0;
	border-right: none;
	font-size: 10pt;
	white-space: nowrap;
	opacity: 0.5;
	-moz-opacity: 0.5;
	filter: alpha(opacity=50);
}

div#toc-box.web-design {
	top: 180px;
}

div#toc-box:hover {
	right: 5px;
	width: auto;
	border: 2px solid #e0e0f0;
	opacity: 0.9;
	-moz-opacity: 0.9;
	filter: alpha(opacity=90);
}

ul.toc-box {
	list-style-type: none;
	margin: 5px;
	padding: 0px;
}

/* Intro: */
div.intro {
	width: 90%;
	max-width: 820px;
	margin: 10px;
	margin-left: 40px;
	margin-right: auto;
}

div.line {
	clear: both;
	height: 5px;
	background: url(line.gif) no-repeat left;
}

div.term {
	float: left;
	width: 25%;
	min-width: 130px;
	max-width: 190px;
	padding: 2px;
	color: #000060;
}

div.termdesc {
	float: left;
	width: 70%;
	min-width: 300px;
	max-width: 600px;
	padding: 2px;
}

/* (Sub)sections: */
div.sect, div.aux {
	padding-left: 5px;
	margin-right: 25pt;
}

h2.sect {
	position: relative;
	background-color: #e0e0f0;
	padding: 2px;
	padding-left: 10px;
}

h3.sect, h4.aux {
	position: relative;
	background-color: #e0e0f0;
	padding: 2px;
	padding-left: 5px;
}

div.subsect {
	width: 90%;
	margin-left: 20px;
	margin-right: 20px;
	margin-top: 10px;
	margin-bottom: 10px;
}

h4.subsect {
	font-weight: normal;
	margin-left: -20px;
	margin-bottom: 4px;
}
h4.subsect + p {
	margin-top: 2px;
}

h4.subsect .title {
	text-decoration: underline;
}

span.toplink {
	position: absolute; right: 10px;
	font-size: 10pt;
	font-weight: normal;
}

/* Listings: */
div.listing {
	float: none;
	width: 90%;
	overflow: auto;
	font-family: Courier;
	font-size: 10pt;
	padding: 0;
	margin: 2px;
}

div.listing.frame {
	border: 4px solid #9090B0;	
}

table.listing {
	width: 100%;
	border: none;
	border-spacing: 0;
	border-collapse: collapse;
}

tr.line.odd {
	background-color: #fff0c8;
}

tr.line.even {
	background-color: #fff8e0;
}

div.listing pre {
	margin: 0px;
	padding: 2px;
}

td.ln {
	color: #5060f7;
	width: 20px;
	text-align: right;
	vertical-align: middle;
	font-size: 12pt;
	padding-left: 5px;
	padding-right: 10px;
}

pre em {
	font-style: normal;
	color: blue;
}
pre .comment {
	color: green;
}

h5.listing {
	margin-bottom: 0px;
}

/* other OTJLD elements: */
div.note {
	font-style: italic;
	margin-left: 10px;
}

div.codecomment {
	width: 90%;
	background-color: #fff8e0;
	font-size: 0.8em;
	margin-top: 5px;
	padding: 2px;
}
div.codecomment>h5, div.note>h5 {
	margin: 2px;
}
div.codecomment>h5+p, div.note>h5+p {
	margin-top: 2px;
}

table.syntaxrule {
	width: 80%;
	border: 2px solid #e0e0f0;
	border-spacing: 0px;
	border-collapse: collapse;
	margin: 4px;
	padding: 0;
}
table.syntaxrule td.sect {
	width: 80px;
	border: 2px solid #e0e0f0;
	padding: 5px;
	vertical-align: top;
	font-weight: bold;
}
table.syntaxrule td.rule {
	padding-left: 20px;
	background-color: #fff8e0;
}
table.syntaxrule .title {
	margin-left: -10px;
	font-weight: bold;
	font-style: italic;
	color: blue;
}

ol.constraints {
	list-style-type: lower-alpha;
}
ol.constraints .title {
	text-decoration: underline;
}
h5.constraints {
	margin-bottom: 2px;
}

/* page navigation: */
table.nav {
	border: 2px solid #e0e0f0;
	border-collapse: collapse;
	width: 95%;
	white-space: nowrap;
	margin-left: auto;
	margin-right: auto;
	margin-top: 5px;
	margin-bottom: 5px;
	background-color: #fff8e0;
	font-size: 10pt;
}

td.back {
	width: 35%;
	padding-left: 4px;
	text-align: left;
	white-space: nowrap;
}
td.top {
	border: 2px solid #e0e0f0;
	text-align: center;
	white-space: nowrap;
}
td.next {
	width: 35%;
	padding-right: 4px;
	text-align: right;
	white-space: nowrap;
}

div.nav {
	width: 95%;
	margin-left: auto;
	margin-right: auto;
	white-space: nowrap;
}

a.nav {
	font-size: 10pt;
}

/* page footer: */
div.footer {
	margin-top: 10px;
	font-size: 10pt;
	color: gray;
}

#w3c {
	float: right;
}

/* to clear floats: */
div.clearer {
	clear: both;
	line-height: 0pt;
	font-size: 1px;
}

/* tables: */
table {
	border-style: solid;
	border-color: #e0e0f0;
	border-spacing: 0px;
	border-collapse: collapse;
}

/* special highlighting: */
.error {
	color: red;
}

.blue {
	color: blue;
}
.green {
	color: green;
}

.underline {
	text-decoration: underline;
}

/* zebra stripes ;-) */
.z1 { background-color:#fff0c8; }

.z2 { background-color:#fff8e0; }

span.indent5 {
    padding-left: 5mm;
}