html, body {
    background-color: #3d3d3d;
    color: #f0f0f0;
    font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;
    font-size: 16px;
    line-height: 18px;
    text-shadow: rgba(0,0,0,.25) 0px 2px 0px;
}
header {
    background: #474745 url('/static/images/header-back.png') repeat-x;
    border-bottom: 1px #f0f0f0 solid;
    display: block;
    height: 65px;
}
li {
    margin: 0 0 .25em 0;
}
a, a:visited {
    color: #2a8bb5;
    text-shadow: none;
}
a:hover {
    color: #43c4e7;
}
strong {
    font-weight: bold;
}
h1, h2, h3, h4, h5, h6, legend {
    font-weight: bold;
    margin: 0 0 18px 0; padding: 0;
    text-shadow: rgba(0,0,0,.25) 0px 3px 0px;
}
h1 {
    font-size: 34px;
    line-height: 54px;
}
h2 {
    font-size: 26px;
    line-height: 36px;
}
h3 {
    font-size: 21px;
    line-height: 36px;
}
h3 small {
    font-size: 14px;
    font-weight: normal;
    text-shadow: none;
}
h4 {
    font-size: 16px;
    line-height: 18px;
}
h5, h6 {
    line-height: 18px;
}
#main { min-width: 800px; padding: 2em }
table, th, td {
    border: none;
}
label,input,textarea,select {
    display: block;
}
header nav {
    position: absolute;
    right: 0;
    top: 0;
}
textarea {
    resize: none;
    -webkit-appearance: textfield;
}
header a {
    margin: 0 0 0 7px; padding: 0;
}
header > nav {
    padding: 16px 12px 0 0;
}
body > nav ul {
    padding: 0; margin: 0 0 0 .75em;
}
body > nav ul li {
    display: block;
    float: right;
    padding: 0; margin: 0 12px 0 0;
}
body > nav ul li a {
    -webkit-border-bottom-left-radius: 5px;
    -webkit-border-bottom-right-radius: 5px;
    -moz-border-radius-bottomleft: 5px;
    -moz-border-radius-bottomright: 5px;
    background-color: #e5e5e5;
    border-bottom-left-radius: 5px;
    border-bottom-right-radius: 5px;
    border: 1px solid white;
    border-top: none;
    color: #3470a9;
    display: block;
    margin: 0; padding: 2px 0 2px 0;
    text-align: center;
    text-decoration: none;
    width: 8em;
    text-shadow: none;
}
body > nav ul li a:hover {
    padding: 5px 0 4px 0;
}
body > footer {
    background: #3d3d3d url('/static/images/chc-water.png') no-repeat top right;
    display: block;
    clear: both;
    position: relative;
    text-align: center;
}
body > footer nav {
    clear: both;
    display: block;
    font-size: 14px;
    padding: 0 2em 0 2em; margin: 10px auto;
}
body > footer nav dl {
    float: left;
    margin: 0; padding: 0;
    text-align: left;
    width: 20%;
}
body > footer nav dl  {
    display: block;
    float: left;
    margin: 0; padding: 0;
    width: 33%;
}
body > footer nav dt,
body > footer nav dd {
    margin: 0; padding: 0;
}
body > footer nav dt {
    border-bottom: 1px solid #353535;
    color: #101010;
    margin: 0 6em .5em 0; padding: 0 0 .1em 0;
    text-transform: uppercase;
    text-shadow: none;
}
body > footer nav dd {
    padding: 0 0 .25em 0;
}
body > footer nav dd a {
    text-decoration: none;
}
body > footer p {
    clear: both;
    color: #202020;
    font-size: 14px;
    margin: 0 0 0 0; padding: .75em 0 0 0;
    text-shadow: none;
}
fieldset {
    background-color: #e5e5e5;
    border: 1px solid #fff;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    color: #555;
    float: left;
    margin: 0 0 1em 0; padding: 1em;
    text-shadow: #fff 0 1px 0;
    width: 50%;
}
fieldset label {
    font-size: 21px;
    line-height: 36px;
}
fieldset input, fieldset textarea {
    margin: 0 0 1em 0; padding: 0;
}
fieldset input[type="image"] {
    margin: 0; padding: 0;
}
fieldset.cwrap {
    border: none;
    display: block;
    margin: 0 0 1em 1em; padding: 0;
}
fieldset.cwrap label {
    clear: both;
    display: block;
    float: left;
    font-size: 16px;
    line-height: 18px;
    margin: 0 0 .75em 0; padding: 0;
}
fieldset.cwrap input {
    clear: both;
    float: left;
    margin: .1em 5px 0 0;
}
fieldset.paste {
    text-align: right;
    width: 80%;
}
fieldset.paste label {
    font-size: 16px;
}
fieldset.paste textarea {
    width: 100%; height: 32em;
}
fieldset.paste label, fieldset.paste select, fieldset.paste input {
    display: inline;
}
fieldset.paste textarea {
    margin: 1em 0 1em 0;
}
fieldset footer {
    clear: both;
    display: block;
    margin: 1em .5em .5em 0;
    text-align: right;
}
fieldset.narrow table {
    width: 50%;
}
span.req {
    color: #ef512e;
}
#notice {
    background: #e5e5e5 url('/static/images/notice-back.png') repeat-y;
    border: 1px solid #fff;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    color: #fff;
    display: block;
    height: 80px;
    float: left;
    margin: 0 0 1em 1em; padding: 0;
    width: 160px;
}
#ad {
    float: left;
    margin: 0 0 0 1em;
}
br {
    clear: both;
}
section.highlight {
    float: left;
    margin: 0; padding: 12px 5px 0 5px;
    width: 75%;
    overflow: auto;
}
section.highlight pre {
    margin: 0; padding: 0;
    text-shadow: none;
}
#output section {
    min-height: 250px;
}
ul.linenums {
    float: left;
    font-family: monospace;
    list-style: none;
    margin: 0; padding: 12px 5px 0 7px;
    min-height: 250px;
    text-shadow: none;
}
ul.linenums li {
    list-style: none;
    margin: 0; padding: 0;
    text-align: right;
}
section.about {
    background-color: #e5e5e5;
    border: 1px solid #fff;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    color: #555;
    display: block;
    font-size: 12px;
    margin: 0 0 1em 0; padding: 1em;
    text-shadow: #fff 0 1px 0;
    width: 91%;
}
section.about h1 {
    color: #555;
    font-size: 26px;
    line-height: 18px;
    margin: 0 0 .5em 0; padding: 0;
    text-shadow: #fff 0 1px 0;
}
section.about h2 {
    color: #555;
    font-size: 14px;
    line-height: 18px;
    margin: 0 0 .5em 0; padding: 0;
    text-shadow: #fff 0 1px 0;
}
section.about ul {
    background-color: #eee;
    border: 1px solid white;
    -webkit-border-radius: 3px;
    -moz-border-radius: 3px;
    border-radius: 3px;
    display: inline;
    margin: 0; padding: 5px;
}
section.about ul li {
    display: inline;
    list-style: none;
    margin: 0 .5em 0 0;
}
section.about table {
    float: right;
}
section.info {
    float: left;
    font-size: 12px;
    text-shadow: #fff 0 1px 0;
    width: 150px;
}
section.info table {
    margin: 0 0 1em 1em; padding: 7px 5px 5px 5px;
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    display: block;
    background-color: #e5e5e5;
    border: 1px solid #fff;
    border-radius: 5px;
    color: #555;
    width: 100%;
}
section.info table tr td:first-child,
section.about table tr td:first-child {
    text-align: right;
}
section.info table td,
section.about table td {
    margin: 0; padding: 0 0 1em .5em;
    text-align: left;
    vertical-align: top;
}
.message aside {
    -webkit-border-radius: 5px;
    -moz-border-radius: 5px;
    border-radius: 5px;
    color: #fff;
    display: block;
    font-size: 14px;
    margin: 0 0 1em 0; padding: 0 0 0 0;
    overflow: hidden;
    width: 100%;
}
.message aside p {
    font-size: 16px;
    margin: 0; padding: .25em .5em;
}
.message aside.gmessage {
    background-color: #55aa2a;
    background: -webkit-gradient(linear, left top, left bottom, from(#72b94f), to(#55aa2a));
    background: -moz-linear-gradient(top, #72b94f, #55aa2a);
    text-shadow: #558342 0 -1px;
}
.message aside.rmessage {
    background-color: #b31f1e;
    background: -webkit-gradient(linear, left top, left bottom, from(#ba3433), to(#b31f1e));
    background: -moz-linear-gradient(top, #ba3433, #b31f1e);
    text-shadow: #84372b 0 -1px;
}
.message aside.omessage {
    background-color: #de691f;
    background: -webkit-gradient(linear, left top, left bottom, from(#e3782f), to(#de691f));
    background: -moz-linear-gradient(top, #e3782f, #de691f);
    text-shadow: #95582d 0 -1px;
}
.message aside a {
    color: #fff;
    display: block;
    text-decoration: none;
}

