* {
    margin: 0;
}
html, body {
    height: 100%;
}
body {
    margin:0;
    padding:0;
    border:0;
    background-color:#FFFFFF;
    color:#333333;
    font-family:Arial,sans-serif;
    font-weight:normal;
}
body, input {
    font-size: 14px;
}
a {
    color:#4487d1;
}
p {
    padding:0.5em 0;
}
img {
    border:0;
}

h1, h2, h3, h4 {
    font-family:Arial,sans-serif;
    font-weight:normal;
    padding:1em 0 0.5em 0;
}
h1 {
    padding-top:0;
    font-size:22px;
}
h2 {
    font-size:14px;
    font-weight:bold;
}
h3 {
    font-size:14px;
}

div.error {
    font-weight:bold;
    color:#ff0000;
    padding-top:3px;
}

#center-container {
    display: table;
    height: 100%;
    width: 250px;
    margin: 0 auto;
}

#login-page {
    display: table-cell;
    vertical-align: middle;
}

.login-form label {
    display: block;
    padding: 8px 0 4px 0;
}

.login-form p {
    margin: 0;
    padding: 6px 0 4px 0;
}

.login-form input[type=text], .login-form input[type=password] {
    width: 100%;
    box-sizing: border-box;
    padding: 4px 6px;
    border: 1px solid #ccc;
}

.login-form input[type=checkbox] {
    vertical-align: middle;
}

.login-form input[type=submit] {
    padding: 8px;
    font-weight:bold;
}
#captcha-image {
    vertical-align: middle;
    margin: 4px 0;
    width: 140px;
    height: 40px;
}
#captcha-reload {
    text-decoration: none;
    border-bottom: 1px dotted #4487d1;
    font-size: 13px;
}
.login-form p.restore-password {
    font-size: 13px;
}
#captcha-line {
    padding-top: 12px;
}
.justify {
    text-align: justify;
}
.justify .spacer {
    display: inline-block;
    width: 100%;
    height: 0;
}
.login-form p.buttons {
    padding-top: 10px;
}
.ps {
    font-size: 13px;
}