html {
	-webkit-touch-callout: none;
	-webkit-user-select: none;
	-khtml-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
	min-height:100%;
    -webkit-font-smoothing:antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-smoothing: antialiased;
    background-color:var(--ma-purple);
    -webkit-tap-highlight-color: rgba(0,0,0,0);
}

body, p {
	padding:0;
	margin:0;
}

#main {
	background-image: url(../img/svgs/ma-logo-purple-bg.svg);
	background-repeat: no-repeat;
	background-color: var(--ma-purple);
	background-position: top center;
	background-size: cover;
	display: flex;
	width: 100%;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	height: calc(100vh);
	will-change: filter;
}

#main.blur {
	filter:blur(5px);
	pointer-events: none;
}

#main .logo_wrapper {
	width:280px;
	height:44px;
	margin-bottom:3.3vh;
}

#main .logo_wrapper img {
	width:100%;
	height:100%;
}

#main .login_text {
	font-family:"Montserrat", sans-serif;
	font-weight:500;
	font-size:16px;
	color:#fff;
	margin-bottom:4.2vh;
}

#main .form_wrapper {
	width:27vw;
	text-align: center;
	min-width:280px;
}

#main .form_wrapper .fields {
	position: relative;
}

#main .form_wrapper .fields i {
	position: absolute;
	top: 0;
	left: 0px;
	width: 30px;
	text-align: left;
	color: #fff;
	line-height: 44px;
	font-size: 22px;
}

#main .form_wrapper input[type="email"], 
#main .form_wrapper input[type="password"] {
	display:flex;
	flex-direction:column;
	width:calc(100% - 33px);
	height:44px;
	line-height:44px;
	padding:0 0 0 33px;
	margin:0 0 8px 0;
	font-family:"Montserrat", sans-serif;
	font-weight:500;
	color:#fff;
	font-size:18px;
	background-color:transparent;
	border:none;
	outline:none;
	-moz-outline:none;
	border-bottom:4px solid rgba(255,255,255,0.5);
	transition:0.15s ease border;
}

#main .form_wrapper input[type="email"]:hover, 
#main .form_wrapper input[type="password"]:hover {
	border-bottom:4px solid rgba(255,255,255,0.75);
}

#main .form_wrapper input[type="email"]:focus, 
#main .form_wrapper input[type="password"]:focus {
	border-bottom:4px solid rgba(255,255,255,1);
}

#main .form_wrapper input[type="submit"] {
	height:44px;
	width:250px;
	font-size:16px;
	font-family:"Montserrat", sans-serif;
	font-weight:500;
	text-align:center;
	border:none;
	background-color:var(--ma-green);
	color:#fff;
	margin-top:6.5vh;
	outline:none;
	transition: 0.15s ease background-color;
	cursor: pointer;
	-webkit-appearance:none;
}

#main .form_wrapper input[type="submit"]:hover {
	background-color:var(--ma-green-alt);
}

#main .form_wrapper input[type="submit"]:active {
	transform:scale(0.98);
}

#main .form_wrapper input[type="submit"].loading {
	background-image:url(../img/white_256@2x.gif);
	background-position: 50%;
	background-size:20px;
	color:transparent;
	background-repeat: no-repeat;
}

#main .no_account {
	margin-top:2.7vh;
}

#main .no_account p {
	font-size:16px;
	font-family:"Montserrat", sans-serif;
	font-weight:500;
	color:#fff;
}

#main .no_account p a {
	color:var(--ma-yellow);
	font-weight:600;
	transition:0.15s ease color;
}

#main .no_account p a:hover {
	color:var(--ma-yellow)!important;
}

#main .no_account p a:visited {
	color:#fff;
}


#modal_bg {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1;
	background: rgba(0,0,0,0.1);
	display:none;
	opacity:0;
}

/* problem */
#okay_button {
	width: 60%;
	margin: 0 auto;
	text-align: center;
}

#okay_button a {
	display: block;
	padding: 8px 24px;
	text-decoration: none;
	color: #fff;
	background: var(--ma-green);
	font-size: 13px;
	font-family: "Montserrat";
	transition:0.15s ease;
}

#okay_button a:hover {
	background:var(--ma-green-alt);
}

#okay_button a:active {
	transform: scale(0.98);
}

#problem_modal_wrapper {
	display:none;
	position: absolute;
	width: 420px;
	left: 50%;
	margin-left: -230px;
	min-height: 90px;
	height:auto;
	top: 50%;
	margin-top: -80px;
	background: #232323;
	z-index: 99;
	padding: 20px;
	cursor:default;
	font-family: "Montserrat";
	font-size: 15px;
	box-shadow:5px 5px 0px rgba(0,0,0,0.2);
}

#problem_modal_wrapper.show {
	display:block;
}

#problem_modal_wrapper p {
	color: #fff;
	margin: 0;
	padding:0px;
	margin-bottom: 30px;
	text-align:center;
}

#problem_modal_wrapper p a {
	color: #fff;
	transition:0.15s ease background-color;
}

#problem_modal_wrapper.loading #reset_password {
    background-image: url(../img/white_256@2x.gif);
    background-size: 16px;
    background-position: 50%;
    background-repeat: no-repeat;
}

#problem_modal_wrapper.loading #reset_password a {
	color:transparent;
}

#problem_modal_wrapper.reset_sent #reset_password {
	background-image:url(../img/svgs/ma-tick.svg);
	background-repeat: no-repeat;
	background-size:36px;
	background-position:50%;
}

#problem_modal_wrapper.reset_sent #reset_password a {
	color:transparent!important;
	pointer-events: none;
}

#reset_password {
	text-align: center;
	margin-top: 19px;
}

#reset_password a {
	color:#fff;
	font-size: 12px;
	transition: 0.15s ease color;
}

#reset_password a:hover {
	color:var(--ma-orange);
}

#reset_password a:active {
	transform:scale(0.98);
}

/* end problem */

input[type="email"]::-webkit-input-placeholder {
	color: rgba(255,255,255,0.7);
}
input[type="password"]::-webkit-input-placeholder {
	color: rgba(255,255,255,0.7);
}
input[type="email"]:-moz-placeholder {
	color: rgba(255,255,255,0.7);
}
input[type="password"]:-moz-placeholder {
	color: rgba(255,255,255,0.7);
}
input[type="email"]::-moz-placeholder {
	color: rgba(255,255,255,0.7);
}
input[type="password"]::-moz-placeholder {
	color: rgba(255,255,255,0.7);
}
input[type="email"]:-ms-input-placeholder {
	color: rgba(255,255,255,0.7);
}
input[type="password"]:-ms-input-placeholder {
	color: rgba(255,255,255,0.7);
}

@media (max-width:650px) {
	#main .form_wrapper {
		width: 50vw;
	}
}

@media (max-width:450px) {

	#main .form_wrapper {
		width:90vw;
	}

	#main .no_account {
		margin-left: auto;
		margin-right: auto;
		max-width: 80vw;
	}

	#problem_modal_wrapper {
		width: calc(90vw - 40px);
		left: 5vw;
		margin-left: 0;
	}

	#okay_button {
		width:90%;
	}
}
