html, body {
    height: 100%;
}
.input-icon {
	display: none; /* default for when standard icon CSS not included */
}
.lw-outer {
	min-height: 100%;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-ms-flex-direction: column;
	-webkit-flex-direction: column;
	flex-direction: column;
	-ms-flex-wrap: none;
	-webkit-flex-wrap: nowrap;
	flex-wrap: nowrap;
}
.mobile .lw-outer {
	min-height: 85%;
}
.with-form .lw-outer {
	max-width: 950px;
}
.lw-head {
	position: relative;
	margin: 0.8em auto 1em auto;
	-ms-flex-direction: column;
	-webkit-flex-direction: column;
	flex-direction: column;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
	-ms-flex-pack: end;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
}
.lw-head-link {
	position: absolute;
	right: 3em;
	bottom: 0;
	text-decoration: none;
}
.lw-main {
	padding: 1.5rem 1rem .5rem;
	border-radius: 4px;
	box-shadow: 0 1px 2px rgba(196, 196, 196, 0.8);
	-ms-flex: 0 1 auto;
	-webkit-flex: 0 1 auto;
	flex: 0 1 auto;
}
.lw-lead {
	margin-top: 0;
}
h2.lw-lead {
	font-size: 28px;
}
.form-outer {
	position: relative;
	margin: 0 auto;
}
.lw-form {
	-ms-flex: 1 1 auto;
	-webkit-flex: 1 1 auto;
	flex: 1 1 auto;
}
.install .lw-form {
	width: 100%;
}
.lw-form-buttons.lifted-1 {
	margin-top: -2.5em;
}
.lw-form-buttons.lifted-2 {
	margin-top: -3.3em;
}
.input-group-addon label {
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
}
.stop {
	color: #c33;
}
.go {
	color: #4b4;
}
.optional {
	color: #46f;
}
.required {
	color: #f22;
	font-weight: bold;
}
.required.glyphicon {
	font-size: 9px;
	font-weight: normal;
	margin-right: 0.2em;
}
p.notice {
	font-size: 110%;
}


.login-message {
	padding-bottom: 1em;
}
.login-message b {
	color: #555;
	font-size: 105%;
}
.login-form .alert {
	padding: 10px;
}
.login-util {
	font-size: 90%;
}
.login-part {
	margin-bottom: 0.5em;
	padding-left: 2em;
}
#login_button {
	position: absolute;
	right: 0;
	bottom: 0;
}
.login-foot {
	position: relative;
	min-height: 95px;
	padding-bottom: 2px;
}
.login-foot .form-group {
	margin-bottom: 10px;
}
.login-checks {
	min-height: 2rem;
	margin-right: 70px;
}
.login-status {
	margin-right: 70px;
}
.login-opts {
	position: absolute;
	left: 2px;
	bottom: 3px;
}
.login-opts a {
	text-decoration: none;
}
.login-form .input-check {
	margin-left: 2px;
}


.lw-footer {
	text-align: center;
	font-size: 80%;
}
.lw-footer {
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-ms-flex-direction: column;
	-webkit-flex-direction: column;
	flex-direction: column;
	-ms-flex: 1 1 auto;
	-webkit-flex: 1 1 auto;
	flex: 1 1 auto;
	-ms-flex-pack: end;
	-webkit-justify-content: flex-end;
	justify-content: flex-end;
}
.lw-footer .row {
	-ms-flex: 0 1 auto;
	-webkit-flex: 0 1 auto;
	flex: 0 1 auto;	
}
.lw-footer .column {
 	margin-bottom: 1rem;
}
.lw-footer img {
	vertical-align: baseline;
}

@keyframes animSpin {
	0%   { transform:scaleX(1); }
	50%  { transform:scaleX(0); }
	100% { transform:scaleX(1); }
}
.anim-spin {
	animation: animSpin 0.8s infinite;
}

/* installer */
.row.lw-form-buttons { padding-right: 15px; text-align: right }

@media (min-width: 768px) {
	/*.row.lw-form-buttons { float: right; }
	.sm-lifted-1 { position: relative; top: -2.5em; margin-bottom: -2.5em }
	.sm-lifted-2 { position: relative; top: -3.3em; margin-bottom: -3.3em }*/
	.footerLeft { text-align: left; }
	.footerRight { text-align: right; }
}
@media (min-width: 992px) {
	.login-message { font-size: 110%; }
	.login .form-outer { max-width: 300px; }
	.install .lw-outer { min-width: 700px; }
	/*.row.lw-form-buttons { float: right; }
	.md-lifted-1 { position: relative; top: -2.5em; margin-bottom: -2.5em; }
	.md-lifted-2 { position: relative; top: -3.3em; margin-bottom: -3.3em; }*/
}
@media (max-width: 767px) {
	.lw-head a { right: 2px; }
	.with-form .lw-outer { max-width: 450px; }
	.lw-head img { height: 35px; width: auto; }
}

