body {
	 /*background-color: #eee;*/
	 margin: 0;
}
.v-application{
	display: block !important;
}
 [ng\:cloak], [ng-cloak], [data-ng-cloak], [x-ng-cloak], .ng-cloak, .x-ng-cloak {
	 display: none !important;
}
/* remove standard-styles */
 input[type="text"], input[type="email"], input[type="password"], select, textarea {
	 -webkit-appearance: none;
	 -moz-appearance: none;
	 appearance: none;
	 border: none;
	 border-radius: 0;
	 font-size: 1em;
	 width: 100%;
}
/* Input & Textarea */
 input[type="text"], input[type="email"], input[type="password"], textarea {
	 background-color: white;
	 border: 1px solid #bbb;
	 padding: 0.75em 1em 0.5em 1em;
	 box-shadow: inset 0 2px 1px 0 rgba(0, 0, 0, 0.2);
}
 #selfservice-wrapper {
	 width: 100%;
	 color: #848484;
	 display: flex;
	 flex-direction: column;
	 align-content: center;
	 justify-content: center;
	 align-items: center;
}
 input[type="text"]:hover, input[type="text"]:active, input[type="password"]:hover, input[type="password"]:active, input[type="email"]:hover, input[type="email"]:active, textarea:hover, textarea:active {
	 border: 1px solid #313b47;
}
 #selfservice-container {
	 display: flex;
	 flex-direction: column;
	 background-color: #fff;
	 border: 1px solid #313b47;
	 max-width: 530px;
	 -webkit-box-shadow: 0px 0px 8px -1px rgba(0, 0, 0, 1);
	 -moz-box-shadow: 0px 0px 8px -1px rgba(0, 0, 0, 1);
	 box-shadow: 0px 0px 8px -1px rgba(0, 0, 0, 1);
}
 #selfservice-container .selfservice-form {
	 display: -webkit-box;
	 display: -moz-box;
	 display: -ms-flexbox;
	 display: -webkit-flex;
	 display: flex;
	 -ms-flex-direction: column;
	 flex-direction: column;
	 padding: 15px;
}
 #selfservice-container .selfservice-form .selfservice-caption {
	 font-size: 21px;
	 display: flex;
	 color: #313b47;
	 flex-direction: row;
	 align-items: center;
}
#selfservice-container .selfservice-form .selfservice-caption i {
	margin-right: 5px;
	color: #ff9800;
}
 #selfservice-container .selfservice-form .selfservice-caption-text {
	 font-size: 14px;
	 color: #848484;
	 margin: 10px 0;
	 display: flex;
	 flex-direction: row;
}
#selfservice-container .selfservice-form .selfservice-data-container{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	margin: 10px 0;
}
#selfservice-container .selfservice-form .selfservice-data-container .selfservice-data-line {
	margin-top: 10px;
	display: flex;
	flex-direction: column;
	width: 100%;
}
#selfservice-container .selfservice-form .selfservice-data-container .selfservice-data-line:first-of-type {
	margin-top: 0;
}
 #selfservice-container .selfservice-form .selfservice-data-container .selfservice-data-line .selfservice-data-line-caption {
	 font-size: 14px;
	 margin-bottom: 5px;
}

 #selfservice-container .selfservice-form .selfservice-data-container .selfservice-data-line .selfservice-data-line-data {
	 display: flex;
	 align-items: center;
	 justify-content: flex-end;
}
#selfservice-container .selfservice-form .selfservice-data-container .selfservice-data-line .selfservice-data-line-data input {
	 color: #313b47;
	 font-size: 14px;
}
 #selfservice-container .selfservice-form .selfservice-data-container .selfservice-data-line .selfservice-data-line-data .input-field-readonly {
	 box-shadow: none;
	 border-color: rgba(0, 0, 0, 0);
	 pointer-events: none;
	 -webkit-appearance: none;
	 -moz-appearance: none;
	 appearance: none;
}
 #selfservice-container .selfservice-form .selfservice-data-container .selfservice-data-line .selfservice-data-line-data .passwordRevealIcon {
	 position: absolute;
	 font-size: 19px;
	 color: #bbb;
	 padding: 8px;
	 /*background-color: white;*/
}
 #selfservice-container .selfservice-form .selfservice-data-container .selfservice-data-line .selfservice-data-line-data .passwordRevealIcon:hover {
	 color: #384454;
	 cursor: pointer;
}
#selfservice-container .selfservice-form .selfservice-data-container .selfservice-data-line .selfservice-data-line-data-rules .passwordRevealIcon {
	margin-right: 30px;
}
 #selfservice-container .selfservice-form .selfservice-data-container .selfservice-data-line .password-rules {
	 background: #eee;
	 display: flex;
	 padding: 5px 10px 10px 10px;
	 flex-direction: column;
	 margin-top: 10px;
	 margin-right: 30px;
	 z-index: 999;
}
 #selfservice-container .selfservice-form .selfservice-data-container .selfservice-data-line .password-rules #password-rules-header {
	 color: #666;
	 line-height: 30px;
	 font-weight: bolder;
}
 #selfservice-container .selfservice-form .selfservice-data-container .selfservice-data-line .password-rules .password-rule {
	 margin-top: 3px;
	 display: flex;
	 flex-direction: row;
}
 #selfservice-container .selfservice-form .selfservice-data-container .selfservice-data-line .password-rules .password-rule .password-rule-text {
	 line-height: 18px;
	 margin-left: 5px;
	 color: #333;
	 display: block;
	 height: 18px;
	 float: left;
}
 #selfservice-container .selfservice-form .selfservice-data-container .selfservice-data-line .password-rules::after {
	 content: " ";
	 position: absolute;
	 top: 55px;
	 right: 100%;
	 margin-top: 10px;
	 border-width: 15px;
	 border-style: solid;
	 border-color: transparent #ccc transparent transparent;
}
 #selfservice-container .selfservice-form .selfservice-data-container .selfservice-data-line i.validation-failed {
	 color: #f00;
	 font-size: 19px;
}
 #selfservice-container .selfservice-form .selfservice-data-container .selfservice-data-line i.validation-successfull {
	 color: #009149;
	 font-size: 19px;
}
 #selfservice-container .selfservice-form .selfservice-data-container .selfservice-data-line i.password-validation-icon {
	 cursor: default;
	 margin: 0 5px;
}
 #selfservice-container .selfservice-form .message {
	 border-width: 1px;
	 border-style: solid;
	 padding: 10px 10px;
	 display: flex;
	 flex-direction: row;
	 align-items: center;
	 align-content: center;
	 margin: 5px 0;
}
 #selfservice-container .selfservice-form .message .message-text {
	 margin-left: 5px;
}
#selfservice-container .selfservice-form .info {
	border-color: #71c5e8 !important;
	background-color: rgba(113, 197, 232, 0.1) !important;
	color: #71c5e8 !important;
}
#selfservice-container .selfservice-form .info .message-icon {
	color: #71c5e8;
}
 #selfservice-container .selfservice-form .warning {
	 border-color: #ff9800 !important;
	 background-color: rgba(255, 152, 0, 0.1) !important;
	 color: #ff9800 !important;
}
 #selfservice-container .selfservice-form .warning .message-icon {
	 color: #ff9800;
}
 #selfservice-container .selfservice-form .error {
	 color: #f00 !important;
	 border-color: #f00 !important;
	 background-color: #fbefef !important;
}
#selfservice-container .selfservice-form .error .message-icon {
	color: #f00;
}

 #selfservice-container .selfservice-form .selfservice-button-container {
	 display: flex;
	 flex-direction: row;
	 justify-content: space-between;
	 margin-top: 20px;
}
 .datepickerDialog .selfservice-button,
 #selfservice-container .selfservice-form .selfservice-button-container .selfservice-button {
	 padding: 12px;
	 display: flex;
	 flex-direction: row;
	 align-items: center;
	 justify-content: center;
	 align-content: center;
}
.datepickerDialog .selfservice-button i,
 #selfservice-container .selfservice-form .selfservice-button-container .selfservice-button i {
	 margin-right: 5px;
}
#selfservice-container .message-container{
	display: flex;
	flex-direction: column;
	align-items: flex-start;
	justify-content: center;
}
.datepickerDialog .selfservice-button span i,
 #selfservice-container .selfservice-form .selfservice-button-container .selfservice-button span i {
	 width: 100%;
}
.datepickerDialog .selfservice-button span{
	font-size: 13px !important;
}
.datepickerDialog .selfservice-button-able,
 #selfservice-container .selfservice-form .selfservice-button-container .selfservice-button-able {
	 background-color: #009149;
	 color: white;
}
.datepickerDialog .selfservice-button-able:hover,
 #selfservice-container .selfservice-form .selfservice-button-container .selfservice-button-able:hover {
	 background-color: #313b47;
	 cursor: pointer;
}
 #selfservice-container .selfservice-form .selfservice-button-container .selfservice-button-disable {
	 color: #efefef;
	 background-color: #999;
}
 #selfservice-container .selfservice-form .selfservice-button-container .selfservice-button-disable:hover {
	 cursor: context-menu;
}
 #selfservice-container .selfservice-form .selfservice-button-container .selfservice-backToLogin-button {
	 clear: both;
}
 #selfservice-container .selfservice-form .selfservice-button-container .selfservice-forgetPassword-button {
	 float: right;
}
 #selfservice-container #loader-wrapper {
	 position: fixed;
	 display: block;
	 top: 0;
	 left: 0;
	 width: 100%;
	 height: 100%;
	 z-index: 1000;
	 background-color: #efefef;
	 -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=50)";
	 filter: alpha(opacity=50);
	 -moz-opacity: 0.5;
	 -khtml-opacity: 0.5;
	 opacity: 0.5;
}
 #selfservice-container #loader {
	 display: block;
	 position: relative;
	 left: 50%;
	 top: 50%;
	 width: 100px;
	 height: 100px;
	 margin: -75px 0 0 -75px;
	 border-radius: 50%;
	 border: 4px solid transparent;
	 border-top-color: #313b47;
	 -webkit-animation: spin 2s linear infinite;
	/* Chrome, Opera 15+, Safari 5+ */
	 animation: spin 2s linear infinite;
	/* Chrome, Firefox 16+, IE 10+, Opera */
	 -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
	 filter: alpha(opacity=100);
	 -moz-opacity: 1;
	 -khtml-opacity: 1;
	 opacity: 1;
}
 #selfservice-container #loader:before {
	 content: "";
	 position: absolute;
	 top: 5px;
	 left: 5px;
	 right: 5px;
	 bottom: 5px;
	 border-radius: 50%;
	 border: 4px solid transparent;
	 border-top-color: #009149;
	 -webkit-animation: spin 3s linear infinite;
	/* Chrome, Opera 15+, Safari 5+ */
	 animation: spin 3s linear infinite;
	/* Chrome, Firefox 16+, IE 10+, Opera */
}
 #selfservice-container #loader:after {
	 content: "";
	 position: absolute;
	 top: 15px;
	 left: 15px;
	 right: 15px;
	 bottom: 15px;
	 border-radius: 50%;
	 border: 4px solid transparent;
	 border-top-color: #999;
	 -webkit-animation: spin 1.5s linear infinite;
	/* Chrome, Opera 15+, Safari 5+ */
	 animation: spin 1.5s linear infinite;
	/* Chrome, Firefox 16+, IE 10+, Opera */
}
 @-webkit-keyframes spin {
	 0% {
		 -webkit-transform: rotate(0deg);
		/* Chrome, Opera 15+, Safari 3.1+ */
		 -ms-transform: rotate(0deg);
		/* IE 9 */
		 transform: rotate(0deg);
		/* Firefox 16+, IE 10+, Opera */
	}
	 100% {
		 -webkit-transform: rotate(360deg);
		/* Chrome, Opera 15+, Safari 3.1+ */
		 -ms-transform: rotate(360deg);
		/* IE 9 */
		 transform: rotate(360deg);
		/* Firefox 16+, IE 10+, Opera */
	}
}
 @keyframes spin {
	 0% {
		 -webkit-transform: rotate(0deg);
		/* Chrome, Opera 15+, Safari 3.1+ */
		 -ms-transform: rotate(0deg);
		/* IE 9 */
		 transform: rotate(0deg);
		/* Firefox 16+, IE 10+, Opera */
	}
	 100% {
		 -webkit-transform: rotate(360deg);
		/* Chrome, Opera 15+, Safari 3.1+ */
		 -ms-transform: rotate(360deg);
		/* IE 9 */
		 transform: rotate(360deg);
		/* Firefox 16+, IE 10+, Opera */
	}
}
 #logo-box {
	 display: block;
	 width: 100%;
}
 .language-box {
	 text-align: center;
}
 .language-box img {
	 border: none;
	 margin: 0 2px;
}
 .language-box .help-link {
	 float: right;
	 color: #313b47;
	 cursor: pointer;
}
 .language-box .help-link:hover {
	 color: #313b47;
}
.selfservice-data-line .input-field-box {
	float: left;
	font-size: 14px;
	clear: left;
	width: 100%;
	border: 1px solid #bbb;
	color: #333;
	display: flex;
	position: relative;
}
.selfservice-data-line .input-field-box input {
	flex: 1;
	padding-right: 35.5px;
}
.selfservice-data-line .input-field-box input ::-ms-clear, .selfservice-data-line .input-field-box input ::-ms-reveal {
	display: none;
}
.selfservice-data-line .input-field-box i {
	position: absolute;
	font-size: 19px;
	right: 0;
	padding: 8px 8px;
	color: #bbb;
}
.selfservice-data-line .input-field-box i:hover {
	color: #384454;
	cursor: pointer;
}

.selfservice-data-line .mailrules {
	background: #eee;
	flex-direction: column;
	padding: 5px 10px 10px 10px;
	min-width: 275px;
	transition: visibility 0s, opacity 0.5s linear;
	margin-top: 5px;
}
.selfservice-data-line .mailrules .mailrules-header {
	color: #666;
	font-weight: bolder;
	border-bottom: 1px solid #eee;
}
.selfservice-data-line .mailrules .mailrules-whitelist {
	margin-bottom: 10px;
}
.selfservice-data-line .mailrules .mailrules-list {
	display: flex;
	flex-direction: column;
}
.selfservice-data-line .mailrules .mailrules-list .mailrules-list-header {
	color: #666;
	font-weight: bolder;
	line-height: 22px;
}
.selfservice-data-line .mailrules .mailrules-list .mailrule-whitelist {
	margin-left: 18px;
}
.selfservice-data-line .mailrules .mailrules-list .mailrule {
	margin-top: 3px;
	display: flex;
	flex-direction: row;
	padding-left: 10px;
}
.selfservice-data-line .mailrules .mailrules-list .mailrule .mailrule-text {
	line-height: 18px;
	margin-left: 5px;
	color: #333;
	display: block;
	height: 18px;
	float: left;
}
.selfservice-data-line i.validation-failed {
	color: #f00;
	font-size: 18px;
	clear: both;
}
.selfservice-data-line i.validation-successfull {
	color: #009149;
	font-size: 18px;
	clear: both;
}
.selfservice-data-line i.validation-whitelist {
	color: #696969;
	font-size: 18px;
	clear: both;
}