body {
    background: #5C5C5C;
    color: #FAFAFA;
    margin: 0;
    padding: 0;
    
    font-family: "dejavu sans", "verdana", "nimbus sans l", sans-serif;
    font-size: 12pt;
}

td {
    padding: 0.1em;
}

form {
    margin: 0;
    padding: 0;
}

/*
 * Headers
 */

h1 {
    font-size: 200%;
    font-weight: bold;
    text-align: left;
    padding: 0;
    margin: 0 0 0.5em 0;
}

h2 {
    font-size: 150%;
    font-weight: bold;
    text-align: left;    
}

h3 {
    font-size: 125%;
    font-weight: normal;
    text-align: left;
}

/*
 * Layout
 */

div#content {
    background-image: url("images/design2/panel-left.png");
    background-position: left top;
    background-repeat: repeat-y;
    margin: 0;
    padding: 0;
}

h1#title {
    background: #D55;
    padding: 8px 24px 0.25em 32px;
    margin: 0;
    font-weight: bold;
    font-size: 15pt;
}

h1#title a,
h1#title a:link,
h1#title a:visited,
h1#title a:active,
h1#title a:hover {
    text-decoration: none;
    color: #FAFAFA;
    padding: 0 1pt;
}

h1#title a:hover {
    background: #E77;
}

div#menu {
    background: #D55;
    background-image: url("images/design2/panel-top-shadow.png");
    background-position: left bottom;
    background-repeat: repeat-x;
    padding: 0 24px 24px 32px;
    margin: 0;
}

div#menu ul, div#section_menu ul {
    padding: 0;
    margin: 0;
}

div#menu li, div#section_menu li {
    display: inline;
    list-style-image: none;
    list-style-type: none;    
    margin-right: 0.35em;
}

div#menu li {
    font-weight: bold;
}

div#menu li.active_item {
    border-left: solid 2px #E77;
    border-top: solid 2px #E77;
}

div#section_menu {
    padding: 0 8px 0.5em 8px;    
    margin: -8px 8px 0.75em 40px;
    border-bottom: solid 2px #DDD;
    
    /* Internet Explorer hack */
    position: relative;
}

div#section_menu h1 {
    display: none;
}

div#main_content {
    margin: 0;
    padding: 0 192px 0.25em 48px;
}

div#footer {
    background-color: #5C5C5C;
    background-image: url("images/design2/panel-left-bottom.png");
    background-position: left top;
    background-repeat: no-repeat;
    margin: 0;
    padding: 0.25em 8px 0.5em 40px;
    clear: both;
}

div#panel_top {    
    background-image: url("images/design2/corner-top-left.png");
    background-position: left top;
    background-repeat: no-repeat;
    margin: -16px 0 0 0;
    height: 16px;
}

div#ads_side {
    float: right;
    padding: 8px 16px 8px 16px;
    margin: 0;
}

#main_content p, #content pre {
    margin-left: 1em;
}

#main_content p.top_level {
    margin-left: 0;
}

#main_content div.top_level p {
    margin-left: 0;
}

#footer td {
    padding: 0 8px;
}

/*
 * Links
 */

a, a:link, a:visited, a:active, a:hover {
    color: #FDD;
    text-decoration: underline;
}

a:hover {
    background: #707070;
}

div#menu a,
div#menu a:link,
div#menu a:visited,
div#menu a:active,
div#menu a:hover {
    color: #FFC;
    padding: 0 1pt;
}

div#menu a:hover {
    background: #E77;
}

/*
 * Miscellaneous
 */

ul {
    margin: 1em 0;
}

hr {
    width: 100%;
    height: 2px;
    background: #DDD;
    border: none;
}

textarea {
    font-family: monospace;
    font-size: 10pt;
    background: #5C5C5C;
    color: #FFF;
    border: solid 1px #DDD;
    padding: 0.25em;
}

td#sign {
    font-size: 85%;
    font-style: italic;
    vertical-align: top;
}

#buttons {
    padding: 0 0 0 0.5em;
    text-align: right;
}

#buttons a, #buttons a:link, #buttons a:visited, 
#buttons a:active, #buttons a:hover, #buttons a:hover {
    color: #FFF;
    background: #5C5C5C;
    text-decoration: none;
    padding: 0;
    border: none;
}

.grayed {
    margin-left: 1ex;
    font-size: 80%;
    color: #607060;
    font-style: italic;
}

.grayed a, .grayed a:link, .grayed a:visited, .grayed a:active {
    background: #FFFFFF;
    color: #607060;
    padding: 0em 0.05em;
}

.warning, .warning a {
    color: #A02020;
}

.selected {
    background: #707070;
}

.no_java {
    font-size: 120%;
    font-weight: bold;
    background: #707070;
    padding: 1em;
}

.photo {
    text-align: center;
    float: left;
    margin: 1em;
}

.photo img, img.normal_photo {
    border: solid 2px #FDD;
}

.photo .photo_description {
    margin-top: 0.25em;
}

.photo a:hover {
    background: inherit;
}

/*
 * Game applet
 */

p.game_applet {
    text-align: center;
}

table.game_applet {
    margin: 0 auto;
    padding: 0;
    clear: left;
}

table.game_applet td {
    border: solid 2px #AA5;
    padding: 0;
    margin: 0;
}

.key {
    font-family: monospace;
    border: solid 1px #AAA;
    padding: 0em 0.1em;
    line-height: 150%;
}
