html,
body {
    margin: 0;
}

body {
    font-family: sans-serif;
}

#loginSection {
    margin: auto;
    position: absolute;
    top: 0; left: 0; bottom: 0; right: 0;

    height: 16em;
    width: 22em;
}

section.login .message {
    color: red;
}

header {
    text-align: center;
}

.message {
    position: absolute;
    left: 100%;
    width: 75%;
}

form.login p {
    margin: .25em 0;
}

form.login label,
form.login input {
    display: inline-block;
    margin: 0;
}
form.login label {
    width: 6em;
    padding: .25em;
    text-align: right;
}
form.login input {
    width: 14em;
}
form.login .controls {
    margin-left: 6.5em;
}
form.login .controls:before {
    content: "";
    display: inline-block;
}
form.login .controls label,
form.login .controls input {
    width: inherit;
}

footer {
    position: fixed;
    bottom: 0;
    width: 100%;
    padding: .25em 0;
    font-size: .75em;
    text-align: center;
    color: gray;
    background-color: white;
    box-shadow: 0 -6px 6px white;
}
