h1, h2 { 
  text-align: center;
}

h2, h3, h4, h5, h6 {
  color: rgb(110,20,20);
}

h3, h4, h5, h6 { 
  text-align: left;
}

h3 { 
  margin-top: 1.5em;
}

li { 
  margin-top: 0.6ex;
  margin-bottom: 0.6ex;
}

dt { 
  font-weight: bold;
  margin-top: 1ex;
}


body { 
  margin: 0;
  background-color: rgb(255,255,245);
  padding: 1ex;

  font-family: sans-serif;
  text-align: justify;
  color: black;
}

div#header {
  margin: 0 0 3ex;
  border-bottom: 1px solid rgb(100,100,100);
}

h1 { 
  margin: 0;
  text-align: left;
  font-size: 300%;
  letter-spacing: 0.1em;
  font-weight: normal;
  font-style: italic;
  
/*  margin-bottom: 0; */
}

img.logo { 
  /* float: left; */
  margin: 0 1ex 0 0;
}

p.strapline { 
  font-style: italic;
  text-align: right;
  margin-top: 0;
}


div.leftbar {
  float: left;
  clear: left;
  width: 20ex;

  margin: 0 0 2ex;

/*  background-color: rgb(240,240,190);
  border-style: solid;
  border-color: rgb(140,140,90);
  border-width: 1px 3px 3px 1px; */

  background-color: rgb(240,240,240);
  border-style: solid;
  border-color: rgb(100,100,100);
  border-width: 0 2px 2px 0;

  padding: 2ex 1ex 2.5ex;
}

div#body { 
  margin-left: 26ex;
  max-width: 80ex;
  margin-right: auto;
}


ul.sitemap,
ul.toc { 
  margin: 0;
  padding: 0;
}

ul.sitemap li,
ul.toc li { 
  display: block;
  margin: 0.3ex 0 0.3ex 0.5ex;
  text-indent: -3ex;
  padding: 0 0 0 3ex;
  font-size: smaller;
  font-weight: bold;
  text-align: left;
}

ul.sitemap li.current {
  display: list-item;
}

ul.sitemap a:link,
ul.sitemap a:visited { 
}

ul.sitemap a:hover,
ul.toc a:hover { 
  background-color: white;
}


div#footer { 
  border-top-width: 1px;
  border-bottom-width: 0;
  border-left-width: 0;
  border-right-width: 0;
  border-style: solid;
  border-color: rgb(100,100,100);
  margin-top: 4em;
  padding-top: 1em;
  font-size: smaller;
  text-align: center;
}


div.boxed { 
  border-width: 0 3px 3px 0;
  border-style: solid;
  border-color: rgb(140,140,50);
  background-color: rgb(225,225,180);
  padding: 2ex;
  font-size: larger;
  text-align: left;
}

div.boxed h3 { 
  margin-top: 0;
}



div.newsitem { 
  margin: 2ex 0;
}




table.form { 
  margin-top: 1.5em;
  border-width: 3px;
  border-style: solid;
  border-color: black;
  background-color: rgb(255,255,220);
  width: 100%;
  padding: 1ex;
  border-collapse: separate;
  border-spacing: 0.4em;
}

table.form td { 
  vertical-align: top;
}

table.form td.prompt { 
  text-align: right;
  white-space: nowrap;
  font-weight: bold;
}

table.form td.prompt:after { 
  content: ':';
}

table.form td.submit { 
  text-align: center;
}

table.form td input[type=text],
table.form td textarea { 
  width: 100%;
  border-color: rgb(255,255,220);
  background-color: rgb(240,240,190);
}


div.interaction,
div.code,
table.misc { 
  margin: 2ex 0;
  border-width: 0 1px 1px 0;
  border-style: solid;
  border-color: rgb(100,100,100);
  background-color: rgb(200,200,210);
}

div.interaction,
div.code {
  padding: 0.6em;
  font-family: monospace;
  font-size: smaller;
  white-space: pre;
  overflow: auto;
  text-align: left;
}


.figure {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

object.figure { 
  width: 100%;
}


img.screenshot { 
  display: block;
  margin: 3ex auto 5ex;
  max-width: 1000px;
}


table.misc { 
  margin-left: auto;
  margin-right: auto;
  border-collapse: collapse;
}

table.misc th {
  text-align: center;
  font-weight: bold;
  border-width: 0 0 2px;
  border-style: solid;
  border-color: black;
}

table.misc td { 
  vertical-align: top;
  font-size: smaller;
  text-align: left;
  border-width: 0;
}

table.misc td,
table.misc th { 
  border-left-width: 2px;
  border-style: solid;
  border-color: black;
  padding: 0.3em;
}

table.misc td:first-child,
table.misc th:first-child { 
  border-left-width: 0;
  border-right-width: 2px;
}

table.misc tr.lineabove td { 
  border-top-width: 2px;
}


/*
table.sql { 
  margin-left: auto;
  margin-right: auto;
  margin-top: 0;
  margin-bottom: 2ex;
  background-color: rgb(200,200,210);
  border-collapse: collapse;
}

table.sql th,
table.sql caption { 
  text-align: center;
  font-weight: bold;
  border-width: 0;
  border-bottom-width: 2px;
  border-style: solid;
  border-color: black;
}*/

table.sql td { 
/*  vertical-align: top;
  font-size: smaller;
  text-align: left; */
  font-family: monospace;
/*  border-width: 0;*/
}

/*
table.sql td,
table.sql th { 
  border-left-width: 2px;
  border-style: solid;
  border-color: black;
  padding: 0.3em;
}

table.sql td:first-child,
table.sql th:first-child { 
  border-left-width: 0;
}

*/

div.toc { 
  float: right;
  width: 14em;
  max-width: 33%;
  border-width: 1px;
  border-style: solid;
  background-color: rgb(220,220,220);
  padding: 0.6em;

  font-size: smaller;
  text-align: left;
}

div.toc p { 
  margin-top: 0.2ex;
  margin-bottom: 0.2ex;
  margin-left: 2em;
  text-indent: -2em;
}

div.toc div.section { 
  margin-left: 1.3em;
}


.footnote {
  font-size: smaller;
  font-style: italic;
}

