label.fancy-checkbox :checked + span:after { top: 0; }

#kc-container-wrapper {	background-color: white; }

/* Header */
#kc-header {
	background-color: #0168B5;
	height: 100px;
	color: white;
	display: flex;
	justify-content: center;
	align-items: center;
}

#kc-header-wrapper {
	display: flex;
	font-size: 16px;
}

#kc-header-icon {
	margin-top: -0.5em;
}

#kc-header-text {
	margin-left: 0.8em;
}

#kc-header-text > div:first-child {
	font-size: 1.2em;
	font-weight: bold;
	padding-bottom: 0.4em;
	margin-top: 0.3em;
}

#kc-header-text > div:last-child {
	margin-left: 0.6em;
}

#kc-locale {
	position: absolute;
	top: 0.5em;
	right: 0.9em;
	padding: 0.5em;
}
#kc-locale:hover { background-color: #035898; }
#kc-locale:hover #kc-locale-dropdown > ul { display: block; }

#kc-locale-dropdown > ul {
	list-style-type: none;
    margin-bottom: 0;
	padding: 0;
	display: none;
}

#kc-locale-dropdown > ul > li { margin-bottom: .4em }

#kc-current-locale-link {
	color: white;
	text-decoration: none;
}
#kc-current-locale-link:hover { text-decoration: underline; }


/* Content */
#kc-content {
	padding: 40px;
}

#kc-form-options-wrapper {
	display: flex;
	align-items: center;
	justify-content: space-between;
	margin-top: 25px;
}

#kc-login-form-buttons, #kc-form-buttons {
	display: flex;
}

/* kc-social-providers */
#kc-social-providers {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

#kc-social-providers > a {
	min-width: 60%;
	text-align: center;
}
#kc-social-providers > a:not(:last-child) {
	margin-bottom: 1em;
}

#kc-forgot-password {
	position: absolute;
	bottom: -3.5em;
	color: white;
	left: 17.5em;
}

#kc-registration {
	position: absolute;
	bottom: -2.5em;
	right: 14em;
	color: white;
}
#kc-registration a, #kc-forgot-password a { color: white; }

/* Footer */
#footer {
	background-color: #F5F5F5;
	position: absolute;
	bottom: 0;
	left: 0;
	right: 0;
	height: 60px;
	display: flex;
	justify-content: center;
	align-items: center;
}

#footer-text {
	position: absolute;
	color: #a0a0a0;
	direction: rtl;
	right: 20px;
	top: 13px;
}

@media (max-width: 400px) {
	#ssl-icon { display: none; }
}

@media (max-width: 600px) {
	#kc-form-options-wrapper {
		flex-direction: column-reverse;
		align-items: stretch;
	}
	#kc-form-options-wrapper > div:not(:first-child), #kc-form-buttons > .btn:not(:first-child) {
		margin-bottom: 1em;
	}
	#kc-form-options-wrapper *, #kc-form-buttons, #kc-form-buttons .btn {
		width: 100%;
	}

	#kc-login-form-buttons, #kc-form-buttons {
		flex-direction: column-reverse;
	}
	#kc-login-form-buttons > div:not(:first-child), #kc-form-buttons > .btn:not(:first-child) {
		margin-bottom: 1em;
	}

	#footer {
		justify-content: space-between;
		align-items: center;
		padding: 0 2em;
		position: relative;
	}
}

@media (min-width: 601px) {
	#kc-container {
		width: 100%;
		height: 100vh;
		display: flex;
		justify-content: center;
		align-items: center;
	}

	#kc-container-wrapper {
		width: 560px;
		background-color: white;
		box-shadow: 0px 3px 3px 0px rgba(0,0,0,0.25);
		position: relative;
		margin-top: -100px;
	}
}