
.container-login {
    display: flex;
    align-items: center;
    justify-content: center;
    min-height: 80vh;
    overflow-x: hidden;
    background: #fff;
}

.container1 {
    width: 330px;
    background: #fff;
	box-shadow: 8px 8px 20px rgb(128, 128, 128);
    text-align: center;
    border-radius: 5px;
    padding: 10px 30px 10px 30px;
}
.container1 header {
    font-size: 30px;
    font-weight: 400;
    /*margin: 0 0 20px 0;*/
}


.container1 .form-outer {
    width: 100%;
    overflow: hidden;
}
.container1 .form-outer form {
    display: flex;
    width: calc(100% * var(--stepNumber));
}
.form-outer form .page {
    width: calc(100% / var(--stepNumber));
    transition: margin-left 0.3s ease-in-out;
}
.form-outer form .page .title {
    text-align: left;
    font-size: 25px;
    font-weight: 500;
}
.form-outer form .page .field {
    width: var(--containerWidth);
    height: 35px;
    margin: 25px 0;
    display: flex;
    position: relative;
}
form .page .field .label {
    position: absolute;
    top: -7px;
    font-weight: 300;
	display: inline;
    padding: 0px 5px 0px 5px;
    margin-left: 20px;
    background-color: #ffffff;
    line-height: 1;
    color: #333;
    text-align: center;
}
form .page .field input {
    box-sizing: border-box;
    height: 100%;
    width: 100%;
    border: 2px solid #ccc;
    border-radius: 50px;
    padding-left: 15px;
    margin: 0 1px;
    font-size: 18px;
    transition: border-color 150ms ease;
}
form .page .field input.invalid-input {
    border-color: #ff0000;
}
form .page .field select {
	height: 100%;
    width: 100%;
	border: 2px solid #ccc;
	border-radius: 50px;
    padding-left: 15px;
	margin: 0 1px;
    font-size: 18px;
    transition: border-color 150ms ease;
}
form .page .field select.invalid-input {
    border-color: #ff0000;
}
form .page .field button {
    width: 100%;
    height: calc(100% + 5px);
    border: none;
    background: #e4144d;
    margin-top: 5px;
    border-radius: 50px;
    color: #fff;
    cursor: pointer;
    font-size: 18px;
    font-weight: 500;
    letter-spacing: 1px;
    text-transform: uppercase;
    transition: 0.5s ease;
}
form .page .field button:hover {
    background: #000;
}
form .page .btns button {
    margin-top: 5px !important;
}
form .page .btns button.prev {
    margin-right: 3px;
    font-size: 17px;
}
form .page .btns button.next {
    margin-left: 3px;
}
.container1 .progress-bar1 {
    display: flex;
    /*margin: 10px 0;*/
    user-select: none;
}
.container1 .progress-bar1 .step {
    text-align: center;
    width: 100%;
    position: relative;
}
.container1 .progress-bar1 .step p {
    font-weight: 500;
    font-size: 15px;
    color: #000;
    margin-bottom: 8px;
}
.progress-bar1 .step .bullet {
    height: 25px;
    width: 25px;
    border: 2px solid #000;
    display: inline-block;
    border-radius: 50%;
    position: relative;
    transition: 0.2s;
    font-weight: 400;
    font-size: 14px;
    line-height: 20px;
}
.progress-bar1 .step .bullet.active {
    /*border-color: #1d8606;
    background: #f00;*/
	border-color: #05b31c;
	color: #ff0000;
	background: #f3553d;
}
.progress-bar1 .step .bullet span {
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
}
.progress-bar1 .step .bullet.active span {
    display: none;
}
.progress-bar1 .step .bullet:before,
.progress-bar1 .step .bullet:after {
    position: absolute;
    content: "";
    bottom: 9px;
    right: -35px;
    height: 3px;
    width: 35px;
    background: #262626;
}
.progress-bar1 .step .bullet.active:after {
    background: #05b31c;
    transform: scaleX(0);
    transform-origin: left;
    animation: animate 0.3s linear forwards;
}
@keyframes animate {
    100% {
        transform: scaleX(1);
    }
}
.progress-bar1 .step:last-child .bullet:before,
.progress-bar1 .step:last-child .bullet:after {
    display: none;
}
.progress-bar1 .step p.active {
    color: #05b31c;
    transition: 0.2s linear;
}
.progress-bar1 .step .check {
    position: absolute;
    left: 50%;
    top: 70%;
    font-size: 15px;
    transform: translate(-50%, -50%);
    display: none;
}
.progress-bar1 .step .check.active {
    display: block;
    color: #fff;
}

@media screen and (max-width: 660px) {
    :root {
        --containerWidth: 250px;
    }
    .progress-bar1 .step p {
        display: none;
    }
    .progress-bar1 .step .bullet::after,
    .progress-bar1 .step .bullet::before {
        display: none;
    }
    .progress-bar1 .step .bullet {
        display: flex;
        align-items: center;
        justify-content: center;
    }
    .progress-bar1 .step .check {
        position: absolute;
        left: 50%;
        top: 50%;
        font-size: 15px;
        transform: translate(-50%, -50%);
        display: none;
    }
    .step {
        display: flex;
        align-items: center;
        justify-content: center;
    }
}
@media screen and (max-width: 490px) {
    :root {
        --containerWidth: 100%;
    }
    .container1 {
        box-sizing: border-box;
        border-radius: 0;
    }
}

.user-dp {
	width: 100px;
	height: 100px;
	border-radius: 100%;
	border:2px solid #FFFFFF;
	/*box-shadow: 0 0 8px 3px #B8B8B8;*/
	position:relative;
}

.user-dp img {
	height: 100px;
	width: 100px;
	border-radius: 50%;
}

span.dp-icon {
	position: absolute;
	top: 70px;
	right: 0px;
	background: #c2c2c2;
	border-radius: 100%;
	width: 30px;
	height: 30px;
	line-height: 30px;
	vertical-align: middle;
	text-align: center;
	color: #e4144d;
	font-size: 14px;
	cursor: pointer;
}
span.dp-icon:hover {
	background: #e4144d;
	color: #ffffff;
}

span.dp-alpha {
	position: absolute;
	top: 70px;
	right: 80px;
	background: #c2c2c2;
	border-radius: 100%;
	width: 30px;
	height: 30px;
	line-height: 30px;
	vertical-align: middle;
	text-align: center;
	color: #e4144d;
	font-size: 14px;
	cursor: pointer;
}
span.dp-alpha:hover {
	background: #e4144d;
	color: #ffffff;
}
.btn-primary:hover {
	color: #e4144d;
	}
	
.label {
	display: inline;
    padding: 7px 7px 7px 7px;
	margin-left: 20px;
	background-color: #ffffff;
    line-height: 1;
    color: #333;
    text-align: center;
}
//*.error-message {
    color: red;
    font-size: 12px;
    margin-top: 5px;
}*//



.input-wrapper {
    position: relative;
    display: flex;
    flex-direction: column;
}

.error-message {
    position: absolute;
    bottom: -20px; /* Adjust depending on layout */
    //*left: 0;*//
	text-align: right;
    color: red;
    font-size: 10px;
}