html, body { height: 100%; width: 100%; }
body, div, padding, input, p, img, form {
    margin: 0;
    padding: 0;
    border: 0;
    background-color: #fff;
}
#pageWrap {
    height:100%;
    width:100%;
    display: flex;
    /* flex and justify content to center content*/
    flex-direction: column;
    justify-content: center;
}
#branding {
    width: 20%;
    height: 20%;
}
#loginBlock {
    width: 100%;
    height: 100%;
}
#imageWrap {
    width: 100%;
}

#whitelistTable {
    border-top: 1px solid black;
    border-bottom: 1px solid black;
    margin: 2em auto 2em auto;
}

#whitelistTable tr:nth-child(even) { background: #fff; }
#whitelistTable tr:nth-child(odd) { background: #ddd; }

#loginButton {
    width: 200px;
}

/* specificity override / OSHA frontend development violations */
#whitelistTable #currentIPRow.plus1.plus2 {
    background: #d9e1ff;
}

.actionButton {
    display: inline-block;
    background: white;
    color: #444;
    border-radius: 5px;
    border: solid #888;
    padding: .75em;
    box-shadow: 1px 1px 1px grey;
    white-space: nowrap;
}

.actionButton:hover {
    cursor: pointer;
}
span.label {
    font-family: serif;
    font-weight: normal;
}
span.buttonIcon {
    background: url("./g-normal.png")  transparent 5px 50% no-repeat;
    display: inline-block;
    vertical-align: middle;
    width: 42px;
    height: 42px;
}
span.buttonText {
    display: inline-block;
    vertical-align: middle;
    padding-top: 10px;
    padding-bottom: 10px;
    padding-left: 20px;
    padding-right: 20px;
    font-size: 1em;
    font-weight: bold;
}
div.centerText { text-align: center; }
div#metaLine { margin-top:2.5em; }
div#legalNotice {}