* { 
  border-width: 2px;
  border-color: rgb(150,150,110);
  border-style: none;
}

h1, h2, h3, h4, h5, h6 { 
  text-align: left;
  font-weight: normal;
}

h2, h3 {
  border-bottom-style: solid;
}


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

li.good, li.bad { 
  list-style: none;
  text-indent: -4ex;
}

li.good:before,
li.bad:before {
  font-size: larger;
  padding-right: 2ex;
} 

li.good:before {
  content: '\2713';
}

li.bad:before { 
  content: '\2717  ';
}

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

dd { 
  margin-bottom: 0.4ex;
}

:link, :visited { 
  text-decoration: underline;
}

:link { 
  color: rgb(30,30,230);
}

:visited { 
  color: rgb(80,80,130);
}

:link:hover,
:visited:hover { 
  color: red;
}

input { 
  background-color: white;
}

input:focus { 
  background-color: rgb(255,255,130);
}


body { 
  background-color: rgb(250,250,210);
  margin-top: 0;
  margin-left: auto;
  margin-right: auto;
  max-width: 100ex;

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


div#title,
div#bodywrapper,
ul#navbar { 
  margin: 1ex;
}


div.toc { 
  border-style: solid;
  background-color: rgb(230,230,240);
}


.topright {
  float: right;
  font-size: smaller;
}

div#title { 
  padding-top: 3ex;
  padding-bottom: 1ex;
  padding-left: 1ex;
  border-bottom-style: solid;
}

div#title h1 { 
  margin-top: 0;
  font-size: 300%;
  letter-spacing: 0.1em;
  margin-bottom: 0;
}

div#title :link, div#title :visited {
  text-decoration: none;
  color: black;
}

div#title h1:first-letter {
  border-color: rgb(63,63,161);
  border-style: solid;
  border-width: 0.5ex 0.15ex 0.15ex;
  background-color: white;
  padding: 0 0.2ex;
  font-weight: bold;
}

div#title p#strapline { 
  margin-top: 0.2ex;
  font-size: 140%;
  font-style: italic;
  margin-bottom: 0;
}


div#bodywrapper { 
  padding-left: 21ex;
}


ul#navbar { 
  float: left;
  width: 19ex;
  display: block;
  text-align: left;
  padding: 0;
}

ul#navbar li { 
  display: block;
  margin: 0;
  padding: 0.2ex 1ex;
}

ul#navbar li.submenu { 
}

ul#navbar ul { 
  margin-left: 0;
  padding-left: 1ex;
}

ul#navbar ul li { 
  border-style: none;
}

div#bodycontent { 
/* padding-top: 0; */
}


form { 
  border-style: solid;
  background-color: rgb(210,210,160);
  padding: 0.5ex;
}

form label,
form input { 
  float: left;
}

form br { 
  clear: both;
}

form label { 
  width: 10em;
}

form input { 
  margin: 0.1ex;
  width: 15em;
  border-style: solid;
}

form input[type=submit] { 
  float: right;
  width: auto;
}

form input[type=image] { 
  width: auto;
  float: none;
  border: none;
}



form .error { 
  color: red;
  font-weight: bold;
  white-space: pre;
}





table.form { 
  margin-top: 1.5em;
  border-width: 3px;
  border-style: solid;
  border-color: black;
  background-color: rgb(220,220,255);
  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(220,220,255);
  background-color: rgb(190,190,240);
}


div.interaction,
div.code { 
  margin: 2ex 0;
  border-style: solid;
  background-color: rgb(230,230,240);
  padding: 0.6em;
  font-family: monospace;
  font-size: smaller;
  white-space: pre;
  text-align: left;
  overflow: auto;
}


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

object.figure, object.figure-border { 
  width: 100%;
}

.figure-border { 
  border-style: solid;
}

img.image { 
  display: block;
  margin-left: auto;
  margin-right: auto;
  max-width: 1000px;
  border-width: 0;
/*  width: auto; */
}


table.misc { 
  margin: 2ex auto;
  border-style: solid;
  background-color: rgb(230,230,240);
  border-collapse: collapse;
}

table.misc td,
table.misc th { 
  padding: 0.3em;
}

table.misc th { 
  text-align: center;
  font-weight: bold;
  border-style: solid;
}

table.misc td { 
  vertical-align: top;
  text-align: left;
  font-size: smaller;
  border-style: none solid;
}



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;
}

table.sql caption { 
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 0;
  background-color: rgb(200,200,210);
  padding: 0.3em;
}


div.toc { 
  float: right;
  margin: 0 0 0.5em 1em;
  max-width: 33%;
  padding: 0.6em;
  font-size: smaller;
  text-align: left;
}

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

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


div#footer { 
  clear: both;
  border-top-style: solid;
  margin-top: 4em;
  padding-top: 1em;
  font-size: smaller;
  text-align: center;
}


.ak { 
/* text-decoration: underline; */
  display: none;
}


.smallprint { 
  font-size: smaller;
}
