body,
form {
  margin: 0;
  padding: 0;
}

h1 {
  margin: 0.5ex 1ex;
  padding: 0;
}

h1 span {
  margin-left: 0.5ex;
}

h2 {
  margin: 0;
  padding: 0.5ex 2ex 0.5ex 0;
}

/* General "content" (section) block elements. */

fieldset,
h3,
h4,
p,
pre,
table {
  margin: 2ex 0;
  padding: 0;
}

/*  Table layouts. */

td,
th {
  margin: 0;
  padding: 0 0.5ex;
}

td.center {
  text-align: center;
}

td.right {
  text-align: right;
}

table.vertical th,
th.vertical {
  text-align: right;
}

table.horizontal th,
th.horizontal {
  text-align: center;
}

/* Site layout in general. */

#header,
#footer {
  border-style: solid;
  border-width: 1px 0;
  margin: 0;
  padding: 1px 1ex;
}

#footer {
  /* The navigation menu is floating and needs to be cleared
    in order to not overlap the footer. */
  clear: both;
  /* A small margin between the lower end of the footer
    and the browser window makes it look neat. */
  margin-bottom: 1ex;
  text-align: center;
}

#navigation {
  float: left;
  margin: 0;
  padding: 2ex;
  /* same as #content border: remember: padding-left + width + padding-right */
  width: 16ex;
}

#navigation a {
  border-style: solid;
  border-top-left-radius: 0.5ex;
  border-width: 1px;
  padding: 0 1ex;
}

#navigation li {
  margin: 1ex 0;
  list-style: none inside;
}

#section {
  border-style: solid;
  border-width: 1px 0;
  margin: 0;
  /* The missing 2ex for top/bottom are generated using the
    top/bottom margin for p. */
  padding: 1ex 3ex;
}

#section ol,
#section ul {
  margin: 2ex 0 2ex 5ex;
  padding: 0;
}

#section li {
  margin: 2ex 0;
  padding: 0;
}

ul.compact li {
  margin: 0 ! important;
  padding: 0 ! important;
}

#content {
  border-left-style: solid;
  border-left-width: 20ex;
  margin: 0;
  padding: 0;
}

#anti-collapse {
  height: 1ex;
}

/* Specialized setup for fieldset content. */

fieldset {
  border: 1px solid;
}

legend {
  border: 1px solid;
  margin: 0 1ex;
  padding: 0 1ex;
}

fieldset p,
fieldset table {
  margin: 1ex;
  padding: 0;
}
