/* header */
header {
    background: url("header-background.png") repeat scroll 0 0 #666363;
    height: 71px;
    width: 100%;
    min-width: 1000px;
}

header h1 {
    color: white;
    position: absolute;
    font-family: sans-serif;
    padding-top: 0;
}

header a {
    color: white;
    display: inline-block;
    font-family: "Calibri", "HelveticaNeue-Light", "Helvetica Neue Light", sans-serif;
    font-size: 18px;
    margin: 12px 0;
    padding: 5px 0 8px;
    text-decoration: none;
    vertical-align: middle;
}

header section {
    margin: auto;
    padding: 0 40px;
    width: 920px;
    text-align: right;
}

header a + a {
    border-left: 1px solid white;
}

header .log {
    padding: 0 8px;
    margin: 20px 1px;
}


/* login */
.login {
    background-image: linear-gradient(#F5F5F5, #E2E2E2);
    box-shadow: 0 0 7px #BBBBBB;
    padding: 2px 40px 40px;
    width: 920px;
}

.login h2 {
    width: 400px;
    margin-bottom: 30px;
}

.login h2, .content .explain {
    color: #C82026;
    font-family: "Calibri", "HelveticaNeue-Light", "Helvetica Neue Light", sans-serif;
    font-size: 37px;
    font-weight: 100;
    line-height: 44px;
}

.login input[type="submit"] {
    width: 100px;
}

.login input[type="text"], .login input[type="password"] {
    -moz-appearance: none;
    border: 2px solid lightgray;
    display: block;
    height: 35px;
    margin-bottom: 10px;
    width: 440px;
}

.login input[type="submit"] {
    -moz-appearance: none;
    background-color: #666363;
    border: medium none;
    border-radius: 3px 3px 3px 3px;
    color: white;
    font-family: "Calibri", "HelveticaNeue-Light", "Helvetica Neue Light", sans-serif;
    font-size: 16px;
    font-weight: bold;
    padding: 8px 25px;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
}

.login label {
    color: #666363;
    display: block;
    font-family: helvetica, sans-serif;
    font-size: 14px;
    font-weight: bold;
    padding-bottom: 3px;
}

.login, .featured {
    width: 920px;
    margin: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.login p {
    color: #666363;
    float: right;
    font-family: Helvetica, sans-serif;
    font-size: 16px;
    line-height: 90px;
    padding: 28px 0 0 10px;
    width: 380px;
}

.login .explain {
    text-align: left;
}

/* about */
.about {
    width: 100%;
    text-align: center;
    padding-bottom: 5rem;
}

.about img {
    margin-right: 20px;
}

.about p {
    color: white;
    font-family: Helvetica, sans-serif;
    font-size: 14px;
    line-height: 20px;
    margin: auto;
    padding: 30px 40px 0;
    width: 920px;
}


/* footer */
footer {
    bottom: 0;
    position: absolute;
    width: 100%;
}

footer ul {
    color: white;
    display: block;
    font-family: Helvetica, sans-serif;
    font-size: 12px;
    list-style: none outside none;
    margin: -30px auto auto;
    padding: 15px 40px;
    position: relative;
    text-align: right;
    top: 100%;
    width: 920px;
}

footer li {
    display: inline;
    margin: 0;
    padding: 0 6px;
}

footer li + li {
    border-left: 1px solid white;
}

footer h2 {
    display: block;
    margin: auto;
    padding: 0 40px;
    position: relative;
    top: 100%;
    width: 920px;
}

footer h2 img {
    height: 25px;
}


/* app */
.app {
    display: block;
    height: 180px;
    position: relative;
    vertical-align: top;
    width: 480px;
    margin: auto;
    text-align: center;
}

.app h2 {
    color: #666363;
    font-family: "Calibri", "HelveticaNeue-Light", "Helvetica Neue Light", sans-serif;
    font-size: 32px;
    line-height: 32px;
    margin-bottom: 30px;
}

.app p {
    color: #666363;
    font-family: Helvetica, sans-serif;
    font-size: 17px;
    line-height: 25px;
    margin-top: 0;
    margin-bottom: 1rem;
}


p {
    margin: 0;
    padding: 0;
}

html {
    height: 100%;
}

body {
    height: 100%;
    margin: 0;
    padding: 0;
}

.go {
    background-color: #666363;
    border: medium none;
    border-radius: 3px 3px 3px 3px;
    color: white;
    font-size: 16px;
    font-weight: bold;
    padding: 8px 25px;
    text-decoration: none;
    text-transform: uppercase;
    position: relative
}

.disabled {
    background-color: #e3e3e3;
}

body {
    background-color: black;
}

.page {
    min-height: 100vh;
    position: relative;
}

h1, h2, h3, h4, h5, h6 {
    margin: 0;
    padding: 0;
}

.content {
    background-color: white;
    min-width: 1000px;
    position: relative;
    height: 550px;
}

.contentLogin {
    background-color: white;
    min-width: 1000px;
    margin: 0;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}

.explain {
    color: #C82026;
    font-family: "Calibri", "HelveticaNeue-Light", "Helvetica Neue Light", sans-serif;
    font-size: 37px;
    font-weight: 100;
    line-height: 44px;
    text-align: center;
}

.statusIn {
    color: #C82026;
    font-family: "Calibri", "HelveticaNeue-Light", "Helvetica Neue Light", sans-serif;
    font-size: 37px;
    font-weight: 100;
    line-height: 44px;
    text-align: center;
}

.statusOut {
    color: #C82026;
    font-family: "Calibri", "HelveticaNeue-Light", "Helvetica Neue Light", sans-serif;
    font-size: 37px;
    font-weight: 100;
    line-height: 44px;
    text-align: center;
}

.partialLogOut {
    color: #C82026;
    font-family: "Calibri", "HelveticaNeue-Light", "Helvetica Neue Light", sans-serif;
    font-size: 25px;
    font-weight: 100;
    line-height: 44px;
    text-align: center;
}

.info {
    text-align: center;
}

.section {
    background-color: white;
    min-width: 1000px;
    padding: 144px 0;
    text-align: center;
}

.js-focus-visible :focus:not(.focus-visible) {
    outline-width: 3px;
}

:focus-visible {
    outline: 3px solid #C82026;
}