* { margin: 0; padding: 0; box-sizing: border-box; font-size: 1em; line-height: 1.4em; }
body { background: #8C9D66; color: #404040; font-family: verdana, arial, helvetica, sans-serif; }
#header { background: #E3DEC0; color: #584628; }
#header a { color: #584628; }
#header h1 { text-align: center; font-size: 2em; padding: 0.2em 0.5em; }
#main, #footer { width: 100%; max-width: 40em; margin-left: auto; margin-right: auto; }
#main { background: white; padding: 1em; margin-top: 1em; }
#main:after { content: ""; display: table; clear: both; }
#footer { text-align: center; padding: 1em; font-size: 0.85em; }

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

h2 { text-align: center; margin-bottom: 1em; font-size: 1.5em; }
h2 a:link, h2 a:visited, h2 a:active { color: black; }
.cachelink { text-align: center; margin-top: -1em; }

h3 { margin-top: 1em; font-size: 1.2em; }
h3.success { color: #00800A; }
h3.fail { color: #AD1818; }
h3.wait { color: #AD6818; }

p { margin-top: 0.5em; margin-bottom: 0.5em; }

.coords select, .coords input { font-family: courier; text-align: right; font-weight: bold; font-size: 1.2em; background: #FCFFCD; border: solid 0.1em #c0c0c0; padding: 0.2em 0.5em; }
input[type=submit] { background: #2D4F15; color: white; padding: 0.5em 2em; font-weight: bold; border: none; }
input[type=text] { background: #FCFFCD; border: solid 0.1em #c0c0c0; padding: 0.2em 0.5em; }

form { text-align: center; }
form label { display: block; margin-top: 1em; margin-bottom: 0.5em; font-weight: bold; }

.buttons { margin-top: 1em; }

.captcha { display: inline-block; }
.captcha input { width: 100%; min-width: 10em; }

.semaphore { width: 3.8em; background: black; float: left; padding: 0.2em; border-radius: 0.2em; }
.semaphore span { display: block; width: 3em; height: 3em; border-radius: 1.5em; margin: 0.4em auto; }
.semaphore .black { background: #202020; }
.semaphore .red { background-color: #AD1818; }
.semaphore .orange { background-color: #AD6818; }
.semaphore .green { background-color: #00800A; }

.next-to-semaphore { margin-left: 5em; }

code { display: block; font-size: 0.85em; font-family: courier; background: #FCFFCD; border: solid 0.1em #c0c0c0; padding: 0.2em 0.5em; overflow: auto; }
.preview { text-align: center; background: white; padding: 0.5em; border: solid 0.1em #c0c0c0; margin-bottom: 1em; }

p.error { color: #AD1818; font-weight: bold; }