body {
  font-size: 13px;
  font-family: sans-serif;
  background-color: #F0F1FA;
  line-height: 1.4;
}

#header {
  width: 900px;
  height: 110px;
/*  overflow: hidden;*/
}

#container {
  width: 900px;
  margin-top: -20px;
  margin-right: auto;
  margin-left: auto;
/*  overflow: hidden;*/
  background-color: white;
  box-shadow: 5px 5px 2px #E0D8E0; /* Gainsboro */
}

#sidebar {
  float: left;
  width: 70px;
  /* The following two lines (along with overlow: hidden in #container)
     make the sidebar to stretch in height with the web page content.
     See http://stackoverflow.com/questions/791231/css-sidebar-height-100 */
/*  margin-bottom: -5000px; /* any large number will do */
/*  padding-bottom: 5000px;*/
  /* background: lightcyan; */
}

#sidebar ul {
  margin-top: 0px;
  margin-right: 0px;
  margin-bottom: 0px;
  margin-left: 0px;
  padding: 0;
  list-style-type: none;
  line-height: 2;
  text-indent: 10px;
}

#sidebar li {
  border-bottom: 3px solid white;
}

#sidebar a:link, #sidebar a:visited {
  display: block; 
  width: 70px;
  background-color: #E0E8F0; /* a lavender-like color */
  text-decoration: none;
  color: black;
}

#sidebar a:hover, #sidebar a:active {
  background-color: #BCC6CC; /* Metalic silver */
}

#sidebar a.missing {
  display: block; 
  width: 70px;
  background-color: #E0E8F0; /* a lavender-like color */
  text-decoration: none;
  color: grey;
}

#main {
  margin-top: 0px;
  margin-right: 0px;
  margin-bottom: 0px;
  margin-left: 70px;
  padding-top: 0px;
  padding-right: 10px;
  padding-left: 10px;
  /* background-color: lightpink; */
}

h1 {
  margin-top: 30px;
  border-bottom: 2px solid MidnightBlue;
  font-size: 150%;
  color: MidnightBlue;
}

h2 {
  margin-top: 20px;
  font-size: 110%;
  color: MidnightBlue;
}

h3 {
  margin-top: 10px;
  font-size: 100%;
  color: MidnightBlue;
}

td, th {
  vertical-align: top;
  border: 1px solid #505050;
  padding: 5px;
}

table {
  border-collapse: collapse;
}

tr.alignCenter {
  text-align: center;
}

td.noBorder, th.noBorder {
  border-style: none;
}

td.noBorderAlignBottom, th.noBorderAlignBottom {
  border-style: none;
  vertical-align: bottom;
}

td.bgVeryLightGrey { 
  background-color: #EFEEEC;
}

tr.bgVeryVeryLightGrey { 
  background-color: #F9F8F6;
}

tr.bgVeryLightGrey { 
  background-color: #EFEEEC;
}

tr.bgPlatinumGrey { 
  background-color: #E5E4E2;
}

tr.bgLightGrey { 
  background-color: LightGrey;
}

#footer, #title {
  margin-left: 70px;
  margin-right: 10px; 
  background: #E0E8F0; /* a lavender-like color */
}

#footer p, #title p {
  padding: 5px 10px;
}

#footer p {
  font-size: 80%;
  text-align: center;
}

#toc {
  width: 200px;
  background-color: #F9F8F6;
  border: 1px solid black; 
  list-style: none;
  display: inline-block;
}

#toc_wide {
  width: 300px;
  background-color: #F9F8F6;
  border: 1px solid black; 
  list-style: none;
  display: inline-block;
}

#toc li {
  text-indent: 10px;
}
