@media all and (orientation: portrait) { #content { background: none !important; } table#maincontent { margin: auto; } } * { margin: 0; padding: 0; } html, body { height: 100%; } body { font-family: Bitstream Vera Sans, Tahoma, sans-serif; font-size: 11px; color: #464646; background-color: #fbc2e5; } table { font-size: inherit; } a { color: #464646; text-decoration: none; } a:hover { color: #888888; } input[type="text"], input[type="password"], input[type="email"] { color: black; background-color: white; padding: 0 0 0 6px; font: 500 14px/29px Helvetica, Arial, sans-serif; width: 100%; box-sizing: border-box; } input[type="text"]:valid, input[type="password"]:valid, input[type="email"] { border-style: none; } input[type="text"]:invalid, input[type="password"]:invalid { border: none; border-right: 2px solid red; } #loginform > table, #recoverform > div > table { border-spacing: 1px; } #loginform #username, #recoverform #new_pass_1 { border-radius: 5px 5px 0 0; } #loginform input[type="submit"], #recoverform input[type="submit"] { width: 100%; background-color: white; font: 500 14px/29px Helvetica, Arial, sans-serif; border: none; border-radius: 0 0 5px 5px; cursor: pointer; } #loginform input[type="submit"]:hover, #recoverform input[type="submit"]:hover { background-color: #FFF7F7; } #recoverform .layout td:first-child { width: 140px; text-align: right; padding-right: 5px; } #head, #foot { height: 30px; width: 100%; background-color: #461640; overflow: hidden; } #head { text-align: right; } #foot { text-align: center; bottom: 0; position: absolute; } #foot > span, #head > span { line-height: 30px; margin: 10px; } #foot > span, #head > span { color: #a07c92; } #foot a, #head a { color: #b98fa9; } #content { height: calc(100% - 60px); overflow-y: scroll; box-sizing: border-box; background-repeat: no-repeat; background-size: contain; display: flex; align-items: center; margin: 0 10%; } #maincontent { margin: auto 0 auto auto; background-color: transparent; } #logo { height: 100px; background-image: url('images/logo.svg'); background-repeat: no-repeat; background-position: center; background-size: contain; } .centered { text-align: center; vertical-align: middle; } .hidden { display: none; } .info { color: green; font-weight: bold; } .warning { color: red; font-weight: bold; }