body {
    background: #e1e2e4 url( ../images/page-background.gif ) repeat;
}

.header {
    background: #000626 url( ../images/header-background.gif ) bottom repeat-x;
}

.header .container {
    position: relative;

}

.header h1 {
    color: white;
    font-size: 5em;
    margin: 0;
    padding: 15px 0 22px 80px;
}

h1 {
    font-size: 1.7em;
    border-bottom: #d7dbe3 solid 2px;
    padding: 0 0 0 10px;
    margin: 15px 5px 5px 0px;
}
h2 {
    font-size: 1.4em;
    border-bottom: #d7dbe3 solid 1px;
    padding: 0 0 0 10px;
    margin: 15px 5px 5px 0px;
}
h3 {
    font-size: 1.2em;
    padding: 0 0 0 10px;
    margin: 25px 5px 5px 0px;
}

p, pre {
    padding: 0 10px 0 10px;
    margin: 0 0 7px;
}

.source a {
    color: #000;
    text-decoration: none;
}

.source a:hover {
    text-decoration: none;
}

.source p a:link, .source p a:visited, .source p a:hover {
    text-decoration: underline;
}

.contents a:hover {
    text-decoration: underline;
}

a:link, a:visited {
    color: #000;
    text-decoration: none;
}

a:hover {
    color: #000;
    text-decoration: underline;
}

a.done, h2.done {
    text-decoration: line-through;
}

h2.here {
    background-image: url( ../images/here.jpg );
    background-position: top left;
}

pre.prettyprint {
    margin: 0 0 7px 20px;
    border-left: #d7dbe3 solid 5px;
    padding: 0 0px 0 10px;
}

.header img {
    left: 0px;
    position: absolute;
    top: 0px;
}

.header #play {
    left: 700px;
    position: absolute;
    top: 40px;
    font-style: italic;
    color: white;
    font-size: 2em;
}

.menu {
    background-color: #28314f;
    color: white;
    border-bottom: white solid 1px;
}

.menu ul {
    margin: 0;
}

.menu li {
    display: inline;
    list-style-type: none;
    padding-right: 20px;
}

.menu a:link, .menu a:visited {
    color: #fff;
    text-decoration: none;
}

.menu a:hover {
    color: #fff;
    text-decoration: underline;
}

.page .container {
    margin-top: 15px;
    padding: 10px;
    border: #d7dbe3 solid 1px;
    background-color: #eff0f1;
}

.contents {
    padding: 0px 10px;
}

.contents dt {
    font-weight: normal;
}

.contents dl {
    margin: 0px;
}

.footer .container {
    margin-top: 15px;
    margin-bottom: 10px;
    padding: 3px 10px 3px 10px;
    border: #d7dbe3 solid 1px;
    background-color: #eff0f1;
    font-size: 10px;
}


#disclaimer {
    background-image: url( ../images/disclaimer-background.gif );
    background-repeat: no-repeat;
    margin-bottom: 15px;
}

#disclaimer p {
    font-weight: bold;
    font-size: 18px;
    margin: 0;
    padding: 1px 15px 3px 7px;
}

#download {
    height: 88px;
    background-image: url( ../images/download-background.gif );
    background-repeat: no-repeat;
}

#download h3 {
    color: white;
    position: relative;
    top: 25px;
    left: 75px;
    text-decoration: underline;
}

#download div {
    color: white;
    position: relative;
    top: 25px;
    left: 115px;
}

.kwd { color: #000088; }
.typ { color: #660066; }
.str { color: #008800; }
.pun { color: #666600; }
.com { color: #880000; }
.lit { color: #006666; }
.atn { color: #660066; }
