* {
	margin: 0 auto;
	user-select: none;
	-ms-user-select: none;
	-moz-user-select: none;
	-webkit-user-select: none;
	-webkit-text-size-adjust: none;
}
*:active, *:focus {
	outline: none;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
	-webkit-tap-highlight-color: transparent;
}
a, p, span {
	cursor: default;
}
.hidden {
	display: none !important;
}
.invisible {
	visibility: hidden !important;
}
html {
	background: #F7F5F2;
	overflow: hidden;
}
body {
	color: #888888;
	font-family: "Source Sans Pro", "Segoe UI", "Open Sans", Tahoma, "Droid Sans", Arial, sans-serif;
	font-size: 1em;
}
#loggedout {
	background: #53C2FF;
	color: #fff;
	font-weight: bold;
	padding: 6px;
	text-align: center;
}
#login {
	left: 50%;
	max-width: 420px;
	position: absolute;
	top: 50%;
	transform: translate(-50%,-50%);
	-moz-transform: translate(-50%,-50%);
	-webkit-transform: translate(-50%,-50%);
	width: 90%;
}
#login p {
	margin: 12px auto;
	text-align: center;
}
.brand {
	color: #35B0EC;
	font-family: 'Dosis', sans-serif;
	text-shadow: 0 0 2px rgba(0,0,0,0.3);
	font-weight: 300;
	font-size: 3em;
	margin: 12px auto;
	text-align: center;
}
#email, #password {
	-webkit-appearance: none;
	background: #fff;
	border: none;
	box-sizing: border-box;
	-moz-box-sizing: border-box;
	-webkit-box-sizing: border-box;
	box-shadow: 0 0 2px rgba(234,230,225,0.55);
	-moz-box-shadow: 0 0 2px rgba(234,230,225,0.55);
	-webkit-box-shadow: 0 0 2px rgba(234,230,225,0.55);
	color: #4F4F4F;
	display: block;
	font-size: 1em;
	padding: 10px 6px;
	user-select: text;
	-ms-user-select: text;
	-moz-user-select: text;
	-webkit-user-select: text;
	vertical-align: middle;
	width: 100%;
}
#email {
	border-radius: 4px 4px 0 0;
	-moz-border-radius: 4px 4px 0 0;
	-webkit-border-radius: 4px 4px 0 0;
}
#password {
	border-radius: 0 0 4px 4px;
	-moz-border-radius: 0 0 4px 4px;
	-webkit-border-radius: 0 0 4px 4px;
}
#email:focus, #password:focus {
	color: #000;
}
#submit {
	-webkit-appearance: none;
	background: #35B0EC;
	border: 0;
	border-radius: 4px;
	-moz-border-radius: 4px;
	-webkit-border-radius: 4px;
	box-shadow: 0 0 2px rgba(53,176,236,0.55);
	-moz-box-shadow: 0 0 2px rgba(53,176,236,0.55);
	-webkit-box-shadow: 0 0 2px rgba(53,176,236,0.55);
	color: #fff;
	display: block;
	font-size: 1em;
	font-weight: bold;
	margin: 12px auto;
	padding: 10px 6px;
	text-shadow: 0 -1px rgba(34,34,34,0.22);
	width: 100%;
}
#submit:hover {
	box-shadow: 0 0 2px rgba(53,176,236,0.55), 0 0 20px rgba(255,255,255,0.2) inset;
	-moz-box-shadow: 0 0 2px rgba(53,176,236,0.55), 0 0 20px rgba(255,255,255,0.2) inset;
	-webkit-box-shadow: 0 0 2px rgba(53,176,236,0.55), 0 0 20px rgba(255,255,255,0.2) inset;
}
#submit:active {
	background: #2B8FBF;
	box-shadow: 0 0 2px rgba(43,143,191,0.55), 0 0 20px rgba(255,255,255,0.2) inset;
	-moz-box-shadow: 0 0 2px rgba(43,143,191,0.55), 0 0 20px rgba(255,255,255,0.2) inset;
	-webkit-box-shadow: 0 0 2px rgba(43,143,191,0.55), 0 0 20px rgba(255,255,255,0.2) inset;
}
#error {
	background: #FFCF10;
	color: #fff;
	font-weight: bold;
	padding: 6px;
	text-align: center;
}
.fadeToRight {
	-webkit-animation: fadeToRight 0.3s !important;
	visibility: hidden;
}

footer {
	bottom: 12px;
	font-size: 0.75em;
	left: 6px;
	position: fixed;
	right: 6px;
	text-align: center;
	width: 100%;
}

@media only screen and (max-width: 420px) {
	.brand {
		font-size: 2.3em;
	}
}
@media only screen and (max-height: 350px) {
	html {
		overflow: auto;
	}
	#login {
		left: unset;
		position: static;
		top: unset;
		transform: none;
		-moz-transform: none;
		-webkit-transform: none;
	}
	footer {
		margin-bottom: 12px;
		position: static;
	}
}

::-webkit-input-placeholder {
	color: #888;
	font-family: "Segoe UI", "Open Sans", Tahoma, "Droid Sans", Arial, sans-serif;
}
