html,
body {
    text-align: center;
}

body {
    padding: 0 3% 3% 3%;
    margin: 0 auto;
    max-width: 800px;
    background: #ddd;
    font-family: Georgia, serif;
}

main {
    background: white;
    padding: 6% 7% 7% 7%;
    text-align: left;
}

a,
a:focus,
a:active {
    color: indianred;
}

a:hover {
    color: indigo;
}

hr,
caption {
    display: none;
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: normal;
    padding-bottom: 0.5em;
}

header h1 {
    margin: 1em 0;
    padding: 0;
}

header h1 a {
    text-decoration: none;
    color: #333;
}

p, li, dd, textarea {
    line-height: 155%;
}

nav ul {
    padding: 0 0 2em 0;
    list-style: none;
}

nav li {
    display: inline-block;
    margin-right: 1em;
}

nav li:last-of-type {
    margin-right: 0;
}

nav a,
button,
li button + a {
    line-height: 200%;
    border: 0;
    padding: 0.5em 1em;
    text-decoration: none;
    background: indianred;
    color: whitesmoke;
}

nav a:hover,
nav a:focus,
nav a:active,
button:hover,
button:active,
button:focus,
li button + a:hover,
li button + a:focus,
li button + a:active {
    background: indigo;
    color: whitesmoke;
}

table {
    width: 100%;
    background: white;
    border: 1px solid #ccc;
    background: whitesmoke;
}

th,
td {
    padding: 1em 0.5em;
    border-bottom: 0.1em solid #ccc;
}

th {
    background: white;
}

th a {
    display: block;
}

tr:last-of-type td {
    border-bottom: 0;
}

input[type=text],
input[type=url],
input[type=email],
select,
textarea {
    padding: 0.5em;
}

textarea {
    width: 80%;
    max-width: 800px;
    padding: 1em;
}

button {
    font-size: 1em;
}

select,
option,
label,
button {
    cursor: pointer;
}

article form {
    padding-top: 1em;
    padding-bottom: 1em;
}

form ul {
    padding: 0;
    list-style: none;
}

form li {
    padding-bottom: 1em;
    vertical-align: baseline;
}

li button + a {
    vertical-align: top;
    margin-left: 0.5em;
}

fieldset {
    border: 0.1em solid #ccc;
    padding: 2em 2em 1em 2em;
    background: whitesmoke;
}

label {
    display: block;
}

input,
select,
textarea,
button {
    font-family: Georgia, serif;
}

mark {
    background-color: gold;
    padding-left: 0.2em;
    padding-right: 0.2em;
}

code, samp {
    font-size: 1.2em;
}

footer {
    padding-top: 2.5em;
}

form q {
    -moz-user-select: none;
    -webkit-user-select: none;
    cursor: default;
}

q:before,
q:after {
    content: "\"";
}

#kirjoitettava {
    text-align: center;
    font-size: 1.4em;
    padding-bottom: 1em;
}

dl {
    padding: 1em 0 0 0;
    margin: 0;
    text-align: center;
    font-size: 2em;
}

dt {
    font-size: 0.7em;
}

dt,
dd {
    padding: 0;
    margin: 0;
}

ol ul {
    padding-bottom: 1em;
    padding-top: 1em;
}

.virhe mark {
    background-color: red;
    color: #fff;
}

th span {
    color: blue;
}
