﻿*,
*::before,
*::after {
	box-sizing: border-box;
}

html {
	height: 100%;
	font-family: sans-serif;
	line-height: 1.15;
}

body {
	margin: 0;
	padding: 0;
	font: 400 14px/20px Roboto, "Helvetica Neue", sans-serif;
	color: rgba(0, 0, 0, .87);
	height: 100%;
	overflow-x: hidden;
}

a {
	background-color: transparent;
	text-decoration: none;
	color: #00aabc;
}

hr {
	display: block;
	height: auto;
	min-height: 2px;
	width: 100%;
	overflow: visible;
	border: 0;
	background: linear-gradient(to right, transparent, #e0e0e0 10%, #e0e0e0 90%, transparent) center/100% 1px no-repeat;
}

input::-ms-clear, input::-ms-reveal {
	display: none;
}

.button {
	margin-top: 8px;
	margin-bottom: 8px;
	margin-left: 8px;
	box-shadow: 0 3px 1px -2px rgba(0, 0, 0, .2), 0 2px 2px 0 rgba(0, 0, 0, .14), 0 1px 5px 0 rgba(0, 0, 0, .12);
	background-color: #00aabc;
	color: #fff;
	font-family: Roboto, "Helvetica Neue", sans-serif;
	font-size: 14px;
	font-weight: 500;
	box-sizing: border-box;
	position: relative;
	user-select: none;
	cursor: pointer;
	outline: 0;
	border: none;
	display: inline-block;
	white-space: nowrap;
	text-decoration: none;
	text-align: center;
	min-width: 64px;
	line-height: 36px;
	padding: 0 16px;
	border-radius: 4px;
	overflow: visible;
	transform: translate3d(0, 0, 0);
	transition: background .4s cubic-bezier(.25, .8, .25, 1), box-shadow 280ms cubic-bezier(.4, 0, .2, 1);
	min-height: 0;
	text-transform: none;
}

.button-disabled {
	background-color: #e0e0e0;
	color: #a8afc4;
	cursor: default;
	box-shadow: none;
}

.transparent-button {
	line-height: 36px;
	font-family: Roboto, "Helvetica Neue", sans-serif;
	font-size: 14px;
	font-weight: 500;
	color: inherit;
	background: 0 0;
	padding: 0;
	min-width: 0;
	border-radius: 50%;
	box-sizing: border-box;
	position: relative;
	user-select: none;
	cursor: pointer;
	outline: 0;
	border: none;
	display: inline-block;
	white-space: nowrap;
	text-decoration: none;
	vertical-align: baseline;
	text-align: center;
	margin: 0;
	overflow: visible;
	text-transform: uppercase;
}

.main-wrapper {
	display: flex;
	flex-direction: column;
	height: 100%;
	width: 100%
}

/*Header*/
.header {
	display: flex;
	align-content: center;
	position: relative;
	box-shadow: 0 1px 5px rgba(0, 0, 0, .2), 0 2px 4px rgba(0, 0, 0, .14), 0 3px 4px rgba(0, 0, 0, .12);
}

.header-container {
	display: flex;
	flex: 1 1 auto;
	align-items: center;
	justify-content: space-between;
	flex-flow: row wrap;
	min-height: 48px;
}

.header-container-1 {
	display: flex;
	flex-grow: 1;
	justify-content: flex-start;
	align-items: center;
	margin-left: 8px;
	margin-right: 8px;
}

.header-container-2 {
	display: flex;
	flex-shrink: 1;
	justify-content: flex-end;
	align-items: center;
	margin-left: 8px;
	margin-right: 8px;
}

.language-button {
	display: flex;
	align-items: center;
	width: 36px;
	height: 36px;
}

.h1 {
	display: block;
	margin-right: 0;
	margin-left: 0;
	font: 400 24px/32px Roboto, "Helvetica Neue", sans-serif;
	margin-top: 0;
	margin-bottom: 16px;
}

.h1 span {
	display: block;
	font: 400 14px/20px Roboto, "Helvetica Neue", sans-serif;
}

.logged-in-name {
	padding-left: 8px;
	padding-right: 8px;
	border-left: 1px solid #e0e0e0;
	display: flex;
	height: 36px;
	align-items: center;
	display: flex;
}

.logged-in-logout-button {
	padding-left: 8px;
	padding-right: 8px;
	border-left: 1px solid #e0e0e0;
	border-right: 1px solid #e0e0e0;
	height: 36px;
	display: flex;
	align-items: center;
	text-decoration: none;
	color: #00aabc;
	font-weight: 500;
	text-transform: uppercase;
}

.logged-in-logout-button:hover {
	background-color: #e0f5f7;
}

.header-link {
	font-size: 0;
	line-height: 1;
	text-decoration: none;
	cursor: pointer;
}

.header-logo {
	width: 80px;
	height: 24px;
	display: inline-block;
	vertical-align: middle;
	background-position: 0 50%;
	background-size: contain;
	background-repeat: no-repeat;
	background-image: url(../images/bss-logo.svg);
}

.header-lang {
	color: #616161;
}

.header-lang:hover {
	background-color: transparent;
}

.dropdown-content {
	display: none;
	position: absolute;
	background-color: #f1f1f1;
	min-width: 160px;
	overflow: auto;
	box-shadow: 0px 8px 16px 0px rgba(0, 0, 0, 0.2);
	z-index: 1;
	margin-right: 8px;
}

.dropdown-content a {
	color: black;
	padding: 12px 16px;
	text-decoration: none;
	display: block;
}

.dropdown-content a:hover {
	background-color: #ddd
}

.dropdown-content-item {
	text-transform: uppercase;
}

.dropdown-content-item:hover {
	cursor: pointer;
}

/*Header End*/

/*Main Layout Wrapper*/
.wrapper {
	display: flex;
	flex: 1 1 auto;
	flex-flow: column;
	overflow: auto;
}

.content {
	display: flex;
	flex: 1 1 auto;
	flex-flow: row wrap;
}

.welcome-screen {
	width: auto;
	border-left: 1px solid #e0e0e0;
	display: flex;
	flex: 1 1 auto;
	overflow: hidden;
	position: relative;
}

.welcome-media, .welcome-media > img {
	position: absolute;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
}

.welcome-media > img {
	object-fit: cover;
}

/*Main Layout Wrapper End*/

/*Entry Content*/
.entry-content {
	display: flex;
	width: 33.33333%;
}

.entry-content-wrapper {
	width: 100%;
	word-wrap: break-word;
}

.entry-content-header {
	padding-left: 16px;
	padding-top: 16px;
	padding-right: 16px;
	border-bottom: 1px solid #e0e0e0;
	background-color: #fafafa;
}

.entry-content-header-wrapper {
	margin: auto;
	max-width: 400px;
}

.entry-content-main {
	padding: 16px;
}

.entry-content-main-wrapper {
	margin: auto;
	max-width: 400px;
}

@media (max-width: 960px) {
	.welcome-screen {
		width: 0;
		border: none;
		background: none;
	}

	.entry-content {
		width: 100%;
	}
}

/*Entry Content End*/

/*Navigation Tab Content*/
.tab-content {
	display: none;
}

.tab-button {
	display: flex;
	flex: 1 1 auto;
	position: relative;
	align-items: center;
	justify-content: center;
	height: 48px;
	text-transform: uppercase;
	cursor: pointer;
	text-decoration: none;
}

.tab-button:hover {
	color: #00aabc;
}

.navigation-tabs {
	display: flex;
}

.navigation-tabs button.active {
	color: #00aabc;
	border-bottom: 2px solid #00aabc;
	border-radius: 0;
}

/*Navigation Tab Content End*/

/*Login External Providers Tab*/
.login-external-providers-wrapper {
	display: flex;
	flex-flow: column;
}

.login-external-provider {
	width: 100%;
	border: none;
	border-radius: 4px;
	margin: 6px 0;
	opacity: 0.85;
	display: inline-block;
	font-size: 17px;
	line-height: 20px;
	text-decoration: none; /* remove underline from anchors */
	background-color: #00aabc;
	color: white;
	padding-top: 6px;
	padding-bottom: 6px;
	text-indent: 6px;
}

/*Login External Providers Tab End*/

/*Login User Tab*/
.login-wrapper {
	display: flex;
	flex-flow: column;
}

.base-form {
	display: flex;
	flex-flow: column;
	flex: 1 1 auto;
}

.login-form-errors ul {
	list-style: none;
	margin-top: 0;
	padding: 0;
	color: #d00;
}

.login-input-wrapper {
	align-items: center;
	display: flex;
	flex-flow: column
}

/*Login Remember*/
.login-remember {
	display: flex;
	align-items: center;
}

.login-remember div {
	flex-grow: 1;
}

.login-remember-container {
	display: block;
	position: relative;
	padding-left: 25px;
	cursor: pointer;
	-webkit-user-select: none;
	-moz-user-select: none;
	-ms-user-select: none;
	user-select: none;
}

.login-remember-container input {
	position: absolute;
	opacity: 0;
	cursor: pointer;
	height: 0;
	width: 0;
}

.login-remember-checkmark {
	position: absolute;
	top: 0;
	left: 0;
	border-color: rgba(0, 0, 0, .54);
	border-width: 2px;
	border-style: solid;
	height: 16px;
	width: 16px;
	border-radius: 2px;
	margin: 2px 0;
}


.login-remember-container input:checked ~ .login-remember-checkmark {
	-webkit-appearance: none;
	background-color: #00aabc;
	align-items: center;
	display: inline-flex;
	justify-content: center;
	transition: background-color 90ms cubic-bezier(0, 0, .2, .1), opacity 90ms cubic-bezier(0, 0, .2, .1);
	border-color: transparent;
}

.login-remember-checkmark:after {
	content: "";
	position: absolute;
	display: none;
}

.login-remember-container input:checked ~ .login-remember-checkmark:after {
	display: block;
}

.login-remember-container .login-remember-checkmark:after {
	top: 0;
	left: 3px;
	width: 5px;
	height: 10px;
	border: solid white;
	border-width: 0 2px 2px 0;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}


.login-remember .button {
	flex-shrink: 1;
}

/*Login Remember*/

/*Login User Tab End*/

/*Input wrapper*/
.input-wrapper {
	width: 100%;
	height: 78px;
	margin: .25em 0;
	padding-bottom: 1.34375em;
}

.input-wrapper select {
	text-indent: 3px !important;
}

.form-control {
	height: 100%;
	width: 100%;
	padding: 0;
	background-color: #fff;
	border: 1px solid #e0e0e0;
	border-radius: 4px;
	font: 400 16px/1.125 Roboto, "Helvetica Neue", sans-serif;
	outline: none;
	text-indent: 10px;
}

.form-control:not(:disabled):focus {
	border-color: #00aabc !important;
	border-width: 2px;
}

.form-control:not(:disabled):hover {
	border-color: black;
	border-width: 2px;
	color: black;
}

.p-floating-container {
	position: relative;
}

.p-floating-container label {
	left: 8px;
	position: absolute;
	top: 0;
	opacity: 0;
	transition-property: all;
	transition-duration: 200ms;
	padding-left: 3px;
	padding-right: 3px;
	color: #00aabc;
}

.p-floating-container .form-control:focus + label {
	background: #FFF;
	transform: translate(0, -50%);
	opacity: 1;
	color: #00aabc !important;
}

.p-floating-container .form-control:not(:placeholder-shown) + label {
	background: #FFF;
	transform: translate(0, -50%);
	opacity: 1;
	color: #757575
}

.p-select-container {
	position: relative;
}

.p-select-container label {
	position: absolute;
	left: 8px;
	top: 0;
	transform: translate(0, -50%);
	background: #fff;
	z-index: 100;
	color: #757575;
	padding-left: 3px;
	padding-right: 3px;
}

.form-control:focus::placeholder {
	color: transparent;
}

.password-show-icon, .confirm-password-show-icon, .change-password-show-icon {
	display: none;
	margin-left: -36px;
}

.password-container {
	flex-flow: row;
}

/*Input Wrapper End*/
/*Login Phone Tab*/
.login-phone-info-panel {
	margin-top: 16px;
	margin-bottom: 16px;
}

.enviroment-select-dropdowns {
	display: flex;
	flex-flow: column;
}

.mfa-select-dropdowns {
	display: flex;
	flex-flow: column;
}

.login-phone-redirect-back {
	align-self: center;
	cursor: pointer;
}

.login-phone-send-to-title {
	display: block;
	color: #00aabc;
	font: 400 12px/20px Roboto, "Helvetica Neue", sans-serif;
}

.phone-form-wrapper {
	display: flex;
	flex-flow: column;
}

.phone-form-inputs {
	display: flex;
}

.phone-select-list {
	min-width: 85px;
	max-width: 110px;
	margin-right: 8px;
}

.login-phone-number {
	display: none;
}

.login-phone-code {
	display: none;
}

/*Login Phone Tab End*/
/*Logout*/
.PostLogoutRedirectUri {
	color: #00aabc;
	background: 0 0;
	border: none;
	cursor: pointer;
}

/*Logout End*/
/*Error*/
.error-redirect-to-login {
	padding-top: 16px;
	padding-left: 0px;
	display: flex;
}

.error-state-input {
	border-color: #ff0c3e;
	border-width: 2px;
}

.error-state-input:hover {
	border-color: #ff0c3e;
	border-width: 2px;
}

.p-floating-container .error-state-input-label {
	color: #ff0c3e !important;
}

/*Error End*/
/*Return Back*/
.return-back {
	display: flex;
	cursor: pointer;
	max-height: 20px;
}

.return-back span {
	align-self: center;
}

.return-back:hover {
	background-color: rgb(0, 170, 188, 0.1);
	border-radius: 4px;
}

/*Return Back End*/

/*Progress Bar*/
.ui-progress-bar {
	position: fixed;
	top: 0;
	right: 0;
	left: 0;
	z-index: 10000;
	display: none;
	overflow: hidden;
	pointer-events: none;
	height: 3px;
	background-color: #b3e6eb;
}

.ui-progress-bar::before, ui-progress-bar::after {
	content: '';
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	display: block;
	will-change: left, right;
	background-color: #00aabc;
}

.ui-progress-bar::before {
	animation: progress-long 2s cubic-bezier(0.65, 0.815, 0.735, 0.395) infinite;
}

.ui-progress-bar::after {
	animation: progress-short 2s cubic-bezier(0.165, 0.84, 0.44, 1) infinite;
	animation-delay: 1s;
}

.ui-progress-bar.-completed {
	display: none;
}


@keyframes progress-long {
	0% {
		right: 100%;
		left: -40%;
	}

	60%, 100% {
		right: -90%;
		left: 100%;
	}
}

@keyframes progress-short {
	0% {
		right: 100%;
		left: -200%;
	}

	60%, 100% {
		right: -10%;
		left: 110%;
	}
}

/*Progress Bar End*/

/*Password Reminder*/
.remind-password-link {
	text-align: center;
	margin-top: 8px;
	margin-bottom: 0;
	align-self: center;
}

.remind-password-link a:hover {
	text-decoration: underline;
	cursor: pointer;
}

.remind-password-form, .confirm-password-form, .change-password-form, .select-mfa-form, .confirm-mfa-configuration-form, .confirm-mfa-from {
	align-items: flex-end;
}

.remind-password-success {
	margin-bottom: 14px;
	color: #0d0;
}

.remind-password-error {
	margin-bottom: 14px;
	color: #d00;
}

/*Password Reminder End*/

/*Environment Select*/
.environment-select-error {
	margin-bottom: 14px;
	color: #d00;
}

.environment-select-error.hide {
	display: none;
}

/*Environment Select End*/

.show {
	display: block;
}

.info-message {
	display: flex;
	align-items: center;
	flex: 1 1 100%;
	justify-content: center;
	font-weight: bold;
	text-transform: uppercase;
	color: #fff;
	background-color: #ff031b;
	height: 36px;
	max-height: 36px;
	min-height: 36px;
}

.info-message.hide {
	display: none;
}

/*MFA*/
.mfa-qrCode {
	padding: 10px;
	align-self: center;
}

.confirm-mfa-configuration-form p,
.confirm-mfa-from p {
	align-self: flex-start;
}

.uppercase {
	text-transform: uppercase;
}

::-webkit-input-placeholder {
	text-transform: none;
}

:-moz-placeholder {
	text-transform: none;
}

::-moz-placeholder {
	text-transform: none;
}

:-ms-input-placeholder {
	text-transform: none;
}

::placeholder {
	text-transform: none;
}

.btn-wrapper {
	display: flex;
	justify-content: flex-end;
}

.sso-turnstile {
	width: 100%;
}
