body {
	background-position: center;
	background-image: url("../../images/bg.jpg");
	background-size: cover;
	background-repeat: no-repeat;
	font-size: 12px;
	background-attachment: fixed;
	height: 100%;
}

* {
	box-sizing: border-box;
}

a {
	border: medium none;
	color: #0E71B4;
	text-decoration: none;
}

::-webkit-scrollbar {
	width: 0;
	height: 0;
}

* {
	scrollbar-width: none;
}

a:hover {
	color: #fff;
}

#content {
	margin-top: 12%;
}

.loginblock {
	width: 35%;
	margin: 0 auto;
	text-align: center;
}

.signinmsg {
	color: #fff;
	font-size: 26px;
	margin-top: 0px;
	float: left;
	width: 100%;
	text-align: center;
}

.signinhint {
	color: #fff;
	font-size: 16px;
	margin: 10px 0;
	float: left;
	width: 100%;
}

.logofrm {
	width: 100%;
	float: left;
}

.loginfrm {
	width: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	margin-bottom: 30px;
}

.loginMessages {
	width: 100%;
	height: 50%;
	margin-bottom: 30px;
}

.maintenanceMessage {
	color: #fff;
	font-size: 16px;
	font-weight: 300;
	width: min(352px, 100% - 2px);
	max-height: 285%;
	margin: 20px auto;
	border-radius: 25px;
	border: 1px solid #fff;
	word-wrap: break-word;
}

.maintenanceMessage>div {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	margin-top: 22px;
	height: 24px;
	margin-left: 24px;
}

.maintenanceMessage #warningImage {
	height: 22px;
}

.maintenanceMessage p:not(.maintenanceTitle) {
	max-width: 280px;
	letter-spacing: 0.25px;
	padding-left: 61px;
	white-space: pre-line;
	margin-bottom: 22px;
}

.maintenanceMessage .maintenanceTitle {
	letter-spacing: 0.25px;
	margin-left: 15px;
}

.maintenanceTitle {
	font-size: 18px;
	font-weight: bold;
}

.maintenanceMessageButton {
	margin: 0 auto;
	text-align: center;
	width: 40% !important;
	display: table;
}

.loginfrm input {
	border-radius: 3px;
	padding: 7.5px 15px;
	font-size: 16px;
	border: none;
	width: 100%;
	margin: 5px auto;
	font-weight: 300;
}

#password_field {
	padding-right: 100px;
}

.loginfrm select {
	border-radius: 3px !important;
	padding: 7px 15px;
	font-size: 16px;
	color: #777 !important;
	margin: 5px 0;
	font-weight: 300;
}

.loginfrm select {
	border: none;
	padding: 7px 15px;
	background: url(../../images/icon-select.png) no-repeat 97% 50% rgb(255, 255, 255);
	appearance: none;
	-webkit-appearance: none;
	-moz-appearance: none;
	-o-appearance: none;
	-ms-appearance: none;
	color: #6a6a6a;
}

.loginfrm input[type="submit"],
#submitButton,
#maintenanceSubmitButton {
	background: rgba(0, 0, 0, 0);
	border: 1px solid #fff;
	color: #fff;
	padding: 12px 0;
	width: 60%;
	cursor: pointer;
	text-transform: uppercase;
	transition: all .4s
}

#verificationCodeButtonWrapper button,
.forcePasswordFooterWrapper button {
	background: rgba(0, 0, 0, 0);
	border: 1px solid #fff;
	color: #fff;
	padding: 12px 12px;
	cursor: pointer;
	text-transform: uppercase;
	transition: all .4s
}

.loginfrm input[type="submit"]:hover,
#submitButton:hover,
#maintenanceSubmitButton:hover,
#verificationCodeButtonWrapper button:hover,
.forcePasswordFooterWrapper button:hover {
	background: #2690cd;
	color: white;
	cursor: pointer;
	text-transform: uppercase;
	border: 1px solid #2690cd;
	transition: all .4s
}

button:-webkit-autofill,
button:-webkit-autofill:hover,
button:-webkit-autofill:focus,
textarea:-webkit-autofill,
textarea:-webkit-autofill:hover,
textarea:-webkit-autofill:focus,
select:-webkit-autofill,
select:-webkit-autofill:hover,
select:-webkit-autofill:focus {
	-webkit-box-shadow: 0 0 0 1000px #FFFFFF inset;
	transition: background-color 5000s ease-in-out 0s;
}

input::-webkit-contacts-auto-fill-button,
input::-webkit-credentials-auto-fill-button {
	position: absolute;
	right: 75px;
}

.loginfrm label {
	width: 100%;
	float: left;
	text-align: left;
	font-size: 14px;
	color: #fff;
}

p.checkterm {
	color: #fff;
	text-align: left;
	margin-bottom: 10px;
	margin-left: 10px
}

p.checkterm a {
	color: #fff;
	text-align: left;
	margin-bottom: 10px;
}

p.checkterm a:hover {
	text-decoration: underline;
}

.footer {
	font-weight: 300 !important;
	font-size: 12px;
}

.loginfrm input[type="checkbox"] {
	width: auto;
	margin-right: 10px;
}

.singuppage .signinmsg {
	margin-bottom: 10px;
}

.forgotpass {
	color: #fff;
	cursor: pointer;
	font-size: 14px;
}

.customlogus {
	margin-top: 8px;
	width: 100%;
	display: flex;
	justify-content: center;
	flex-direction: column;
}

.customlogus hr {
	border: none;
	margin: 20px auto 20px auto;
	position: relative;
	inline-size: 320px;
	background: linear-gradient(90deg, hsla(0, 0%, 100%, 0) 0, hsla(0, 0%, 100%, .5) 25%, hsla(0, 0%, 100%, .5) 75%, hsla(0, 0%, 100%, 0));
	height: 1px
}

#inputDialogWrapper {
	width: 700px;
	height: auto;
	background-color: white;
	overflow: hidden;
	position: absolute;
	left: calc(50% - 350px);
	top: calc(50% - 124px);
}

#loginImage:hover .not_hovered,
#loginImage:not(:hover) .hovered,
#forcePasswordSubmitIcon:hover .not_hovered,
#forcePasswordSubmitIcon:not(:hover) .hovered {
	display: none;
}

#loginImage:not(:hover) .not_hovered,
#loginImage:hover .hovered,
#forcePasswordSubmitIcon:not(:hover) .not_hovered,
#forcePasswordSubmitIcon:hover .hovered {
	display: block;
}

#loginImage img,
#forcePasswordSubmitIcon img {
	height: 25px;
	position: absolute;
	right: 8px;
	width: 25px;
	top: 10px;
}

#loginImage:hover,
#forcePasswordSubmitIcon:hover {
	background-image: url("../../images/button_hover.svg");
}

.customlogus h3 {
	color: #fff;
	font-weight: normal;
}

.customlogus a {
	color: #fff;
	display: flex;
	font-size: 14px;
	margin-top: 10px;
	width: 100%;
	justify-content: center;
}

.customlogus a:hover {
	text-decoration: underline;
}

.hoverline:hover {
	text-decoration: underline;
}

.forgotpass .signinmsg {
	color: #fff;
	font-size: 26px;
	margin-top: 0;
	margin-bottom: 0;
	float: left;
	width: 100%;
	font-weight: 300;
}

#confirmDialog {
	width: 100%;
}

#message {
	color: #fff;
	font-size: 16px;
	margin-top: 0;
	margin-bottom: 0;
	float: left;
	width: 100%;
	font-weight: 300;
}

.signupfrmDiv {
	width: 100%;
	margin-top: 70px;
	height: 250px;
}

ul {
	list-style: none;
}

#warningImage {
	height: 16px;
}

.center-background {
	background-image: url(/public/images/logbg.jpg);
	border-radius: 30px;
	background-attachment: fixed;
	background-clip: border-box;
	background-size: cover;
	background-position: center;
}

.higher .loginfrm {
	width: 70%;
}

.higher .loginMessages,
#loginForm,
#forgotPassword,
#forcePasswordChange,
.errorMessageLogin {
	width: min(100%, 316px);
}

.higher .signupfrmDiv {
	height: 430px;
	margin-top: 0;
}

.higher .logo .cnsmr-app-image {
	max-width: 180px;
	margin-top: 1px;
	height: auto;
}

.higher .signinmsg {
	margin-top: -10px;
}

.higher .logo {
	margin-bottom: 10px;
	position: relative;
}

.center-container {
	width: min(520px, 100%);
	height: auto;
	z-index: 1;
	max-height: 100vh;
}

.auth-container {
	display: flex;
	align-items: center;
	flex-direction: column;
	width: 100%;
}

.logo {
	text-align: center;
	margin-bottom: 0;
	margin-top: 30px;
}

.logo .cnsmr-app-image {
	max-width: min(300px, 100%);
	margin-bottom: 30px;
	margin-top: -3px;
}

.frmDiv {
	position: relative;
	width: 100%;
}

.errorMessage {
	width: calc(100% - 2px);
}

.errorMessageLogin,
.errorMessageVerificationCode,
.errorMessage {
	color: #fff;
	font-size: 16px;
	font-weight: 300;
	height: auto;
	min-height: 25px;
	border-radius: 4px;
	border: 1px solid #fff;
	word-wrap: break-word;
	margin-bottom: 8px;
	align-items: center;
}

.errorMessageVerificationCode {
	width: min(346px, 95vw);
}

#password_field+span {
	max-width: 85%;
}

.errordiv,
.errordivLogin,
.errordivVerificationCode {
	display: flex;
	align-items: center;
}

.errordiv #warningImage,
.errordivLogin #warningImage,
.errordivVerificationCode #warningImage {
	margin-left: 15px;
	height: 18px;
}

.errordivLogin p,
.errordiv p,
.errordivVerificationCode p {
	margin-left: 15px;
	letter-spacing: 0.25px;
	padding-top: 5px;
	padding-bottom: 5px;
}

#forgotPassword {
	display: flex;
	flex-direction: column;
	align-items: center;
}

#window-wrapper {
	background-image: url(../../images/grey-opaque.png);
	display: none;
	height: 100%;
	left: 0;
	position: fixed;
	top: 0;
	width: 100%;
	z-index: 1000;
}

.action-window {
	background-color: #FFFFFF;
	width: 700px;
}

.action-window .titlewrapper {
	background-color: #2690cd;
	color: #FFFFFF;
	padding: 15px 50px;
	letter-spacing: 0.5px;
}

.action-window #window-title {
	float: left;
	font-size: 28px;
	font-weight: bold;
}

.action-window .windowClose {
	cursor: pointer;
	float: right;
}

.clearer-block {
	clear: both;
	display: block;
}

#inputDialog {
	font-size: 20px;
	touch-action: pinch-zoom;
	margin: 20px 20px 0 50px;
	overflow: hidden;
	height: auto;
	display: flex;
}

#dialogButtonWrapper {
	padding-top: 10px;
	height: 45px !important;
}

#dialogButtonWrapper button {
	margin: 0;
	letter-spacing: 0.25px;
	border: 0 none;
	color: #ffffff;
	cursor: pointer;
	font-size: 1em;
	font-weight: bold;
	padding: 10px 20px !important;
	min-width: 10em;
	white-space: nowrap;
}

button#noaction {
	background-color: #cb4e40;
}

button#noaction:hover {
	background-color: #B93C2E;
}

button#noaction:active {
	background-color: #95180A;
}

button#yesaction {
	background-color: #35b316;
}

button#yesaction:hover {
	background-color: #1C9A00;
}

button#yesaction:active {
	background-color: #028000;
}

.form-entry {
	margin-bottom: 10px;
	display: flex;
	align-items: center;
}

.form-entry label {
	margin-right: 20px;
	width: 30%;
	min-width: 200px;
}

.form-entry input {
	width: 50%;
}

input[type="email"]::-webkit-contacts-auto-fill-button,
input[type="email"]::-webkit-credentials-auto-fill-button {
	visibility: hidden;
	display: none !important;
	pointer-events: none;
	height: 0;
	width: 0;
	margin: 0;
}

.digitInputWrapper {
	padding: 0 10px;
}

.digitInputEntry {
	height: 43px !important;
	max-width: 38px;
	text-align: center;
	-moz-box-shadow: 0 0 2px 3px #f5f5f5;
	-webkit-box-shadow: 0 0 2px 3px #f5f5f5;
	box-shadow: 0 0 2px 3px #f5f5f5;

	color: transparent;
	text-shadow: 0 0 0 black;
	cursor: pointer;
	padding: 0 !important;
}

.digitInputEntry:focus {
	-moz-box-shadow: 0 0 2px 3px var(--main-color);
	-webkit-box-shadow: 0 0 2px 3px var(--main-color);
	box-shadow: 0 0 2px 3px var(--main-color);
}

.digitInput {
	width: 100%;
	height: 65px;
	margin: 5px;
	text-align: center;
}

.digitInputWrapper svg {
	height: 6px;
	width: 6px;
}

#verificationCodeButtonWrapper {
	display: flex;
	width: auto !important;
}

#cancelVerificationCode {
	margin-right: 10px;
}

.fillWhite {
	fill: white;
}

.setChildrenInTheCenter {
	display: flex;
	align-items: center;
	justify-content: center;
}

#sendNewCode {
	display: none;
}

#sendNewCode:hover svg {
	fill: #2690cd !important;
}

.verificationCodeFooter {
	min-width: min(390px, 90vw);
}

.loginfrm select {
	width: 100%
}

.footer a {
	color: #fff;
}

.footer {
	font-size: 12px;
	position: fixed;
	right: 30px;
	color: #fff;
	bottom: 5px;
	padding-left: 10px;
	padding-right: 10px;
}

.signupfooter {
	background: rgba(0, 0, 0, 0.6);
	bottom: 0;
}

.verificationCodeInstructionText {
	width: min(346px, 95vw);
	margin-bottom: 15px;
	flex-direction: column;
	text-align: center;
}

.custom_alert_message {
	z-index: 1002;
}

/* media configuration */
/* width configuration */
@media (max-width:520px) {

	/* make login and recover password inputs smaller */
	.loginfrm {
		width: 80%;
	}

	.footer {
		left: 0;
		right: 0;
		text-align: center;
	}

	/* new default icon */
	.apptec {
		width: 150px;
		position: relative;
		top: 30px;
		margin: 0 auto;
	}

	/* make boxes smaller */
	.digitInputEntry {
		width: calc((100% - 80px)/6) !important;
	}

	.digitInputWrapper {
		padding: 0 5px;
	}
}

@media (min-width:520px) {
	.signupapptec {
		display: none;
	}

	.signupfooter {
		background: none;
		bottom: 10px;
	}

	.apptec {
		width: 200px;
		position: relative;
		top: 30px;
		left: 50px;
	}
}

/* height configuration */
@media only screen and (max-height: 675px) {
	.center-container.register .logo .cnsmr-app-image {
		margin-top: 10px !important;
		margin-bottom: 5px !important;
	}

	.center-container.register .logo {
		margin-top: 0 !important;
	}
}

@media only screen and (max-height: 500px) {
	.logo .cnsmr-app-image {
		margin-top: 10px !important;
		margin-bottom: 5px !important;
	}

	.logo {
		margin-top: 0 !important;
	}

	.signinmsg {
		margin-bottom: 15px !important;
	}

	.loginfrm {
		margin-bottom: 15px;
	}

	.customlogus hr {
		margin: 5px auto 5px auto;
	}

	.loginMessages {
		margin-bottom: 15px;
	}
}

@media only screen and (max-height: 400px) {

	/* maintenence message */
	.maintenanceMessage {
		margin: 15px auto;
	}

	.maintenanceMessage>div {
		margin-top: 12px;
	}

	.maintenanceMessage p:not(.maintenanceTitle) {
		margin-bottom: 12px;
	}
}

@media only screen and (max-height: 350px) {
	.footer {
		bottom: 0;
	}
}

#overlayDetector {
	height: 100%;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}

.forcePasswordFooterWrapper {
	margin-top: 20px;
}

.visibilityIcon {
    width: 32px;
	padding-left: 5px;
	padding-right: 5px;
	height: 33px;
	position: absolute;
	right: 40px;
}