body
{
  background-image:  linear-gradient(#444444, #444444);
  background-repeat: repeat-x;
  background-size:   auto 3.2em;
  border-left:       15em solid lightgray;
  border-top:        3.2em solid #444444;
  font-family:       Helvetica, Sans-serif;
  margin:            0px;
}

header, nav, aside
{
  line-height: 1.15;
  position:    absolute;
  top:         0px;
}

header, nav, aside a, main
{
  padding: 1em;
}

header, nav
{
  border-bottom:  1px solid black;
  height:         2.2em;
  padding-bottom: 0px;
}

header, aside
{
  border-right: 1px solid transparent;
  left:         0px;
}

header
{
  background-color:   #222222;
  border-right-color: black;
  color:              white;
  width:              13em;
  z-index:            3;
}

nav
{
  background-color: #444444;
  color:            lightgray;
  right:            0px;
  text-align:       right;
  width:            100%;
  z-index:          2;
}

aside
{
  background-color:   lightgray;
  border-right-color: gray;
  min-height:         100%;
  width:              15em;
  z-index:            1;
}

main
{
  border-left: 1px solid gray;
  border-top:  1px solid black;
  box-sizing:  border-box;
  display:     inline-block;
  width:       100%;
}

header > h1
{
  font-size:   inherit;
  font-weight: inherit;
  margin:      0px;
}

nav > a
{
  color:           inherit;
  margin-right:    0.5em;
  text-decoration: none;
}

nav > a:hover
{
  color: white;
}

aside > ul
{
  background-color: #E8E8E8;
  border-top:       1px solid transparent;
  list-style-type:  none;
  margin:           0px;
  padding:          3.2em 0px 0px;
}

aside li
{
  border-bottom: 1px solid black;
}

aside a
{
  color:           inherit;
  display:         block;
  padding-bottom:  0.5em;
  padding-top:     0.5em;
  text-decoration: none;
}

aside a:hover
{
  text-decoration: underline;
}

aside > p
{
  text-align: center;
}

main h2
{
  margin-top: 0px;
}
