@font-face {
	font-family: "Onest";
	src: url(../fonts/onset.woff2) format("woff2");
	font-style: normal;
	font-weight: 100 900;
	font-display: swap;
	unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD
}

@font-face {
	font-family: "Quicksand";
	src: url(../fonts/quicksand.woff2) format("woff2");
	font-style: normal;
	font-weight: 300 700;
	font-display: swap;
	unicode-range: U+0-FF, U+131, U+152-153, U+2BB-2BC, U+2C6, U+2DA, U+2DC, U+304, U+308, U+329, U+2000-206F, U+20AC, U+2122, U+2191, U+2193, U+2212, U+2215, U+FEFF, U+FFFD
}

@font-face {
	font-family: "SugarPeachy";
	src: url(../fonts/SugarPeachy.woff) format("woff"), url(../fonts/SugarPeachy.ttf) format("truetype");
	font-style: normal;
	font-weight: 900;
	font-display: swap
}
@font-face {
  font-family: "SugarPeachy";
  src: url("../fonts/SugarPeachyMedium.woff") format("woff"), url("./fonts/SugarPeachyMedium.ttf") format("truetype");
  font-style: normal;
  font-weight: 500;
  font-display: swap;
}


.input-shell:has(.form-input[type="email"]), .input-shell:has(.form-input[type="text"]:not(#password):not(#password_confirmation)), .form-group:has(.form-control[type="email"]), .form-group:has(.form-control[type="text"]:not(#password):not(#password_confirmation)) {
	background-repeat: no-repeat;
    background-position: calc(100% - 16px);
	background-image: url(../images/icon-user.svg) !important;
}
.form-input[type="email"], .form-control[type="email"], .form-control[type="text"], .form-control[type="password"], .form-input[type="text"], .form-input[type="password"] {
	max-width: calc(100% - 30px);
}
.form-control[type="password"] + .input-password-hide, .input-shell .fa-eye, .input-shell .fa-eye-slash {
	background-repeat: no-repeat;
    background-position: right;
	background-image: url(../images/icon-view.svg) !important;
	opacity: 0.7;
	width: 20px;
	height: 20px;
	top: 20px !important;
    margin-right: 0px !important;
    right: 18px !important;
}
.input-shell .fa-eye-slash {
	background-image: url(../images/eye-slash.svg) !important;
}
.input-shell .fa-eye::before, .input-shell .fa-eye-slash::before {
	display: none;
}
.cs-username-section button.password-toggle:not(:disabled) {
    width: 20px;
    height: 20px;
    position: relative;
    background-color: transparent !important;
	outline: none !important;
}
button#togglePassword::before {
    content: "";
    position: absolute;
    width: 20px;
    height: 20px;
    background-image: url(../images/icon-view.svg);
    background-repeat: no-repeat;
    background-position: center;
	opacity: .7;
}
.password-toggle svg {
	display: none;
}


/*------login page-------*/


a.mail-link {
	color: #C097F0;
	text-decoration: none;
	font-size: 16px;
	font-family: 'Quicksand';
	font-weight: 600;
	transition: .2s all ease;
}

a.mail-link:hover {
	transform: scale(0.98);
	opacity: 0.8;
}

.btn-chip:hover {
	background: #2c2c2c;
	color: #fff;
}

.btn-chip {
	border-radius: 27px;
	text-decoration: none;
	border: 1px solid #E5E5E5;
	color: #2C2C2C;
	padding: 7px 12px;
	background: transparent;
	font-size: 14px;
}

.btn-back {
	width: 44px;
	height: 44px;
	border-radius: 12px;
	border: 1px solid #E5E5E5;
	background: #fff;
	display: flex;
	align-items: center;
	justify-content: center;
}

.title, .login-group__title {
	font-family: 'SugarPeachy';
	font-weight: 700;
	color: #111;
	letter-spacing: .2px;
	font-size: 36px;
	text-align: center;
}

.muted {
	color: var(--muted);
}
p.text-muted {
    color: #787878 !important;
    margin-bottom: 45px !important;
    text-align: center;
}

/* Input styles */
.input-shell, .form-group.login-group__sub-title {
	position: relative;
	border-radius: 21px;
	display: flex;
	align-items: center;
	padding: 4px 20px 4px 20px;
	background: #fff;
	-webkit-font-smoothing: subpixel-antialiased;
	border: 1.5px solid #E5E5E5;
	margin-bottom: 15px;
}
.form-group.login-group__sub-title label, .form-group.login-group__sub-title .red {
	display: none;
}
.input-shell.valid {
	border-color: #C097F0;
	box-shadow: 0 0 0 2px rgba(139, 92, 246, .16);
}

.input-shell.invalid {
	border-color: #F43F5E;
	box-shadow: 0 0 0 2px rgba(239, 68, 68, .14);
}

.form-input, .form-control {
	border: none;
	outline: none;
	flex: 1;
	padding: .74rem .8rem;
	font-size: 1.05rem;
	color: #2b2b2b;
	background: transparent;
}
.form-control:focus {
	outline: none !important;
	box-shadow: none !important;
}
.form-input::placeholder, .form-control::placeholder {
	color: #9aa0a6;
}
.fa.fa-question-circle {
	display: none;
}

/* Password eye toggle */
.password-toggle {
	background: none;
	border: none;
	cursor: pointer;
	padding: 0;
	margin-left: 10px;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #666;
}

.password-toggle:hover {
	color: #333;
}

.password-toggle svg {
	width: 20px;
	height: 20px;
}

.helper {
	font-size: .86rem;
	margin-top: .5rem;
	margin-bottom: 10px;
}

.helper.invalid {
	color: var(--danger);
}

.helper.valid {
	color: var(--violet);
}

.btn-primary-soft {
	background: #111;
	color: #fff;
	border: none;
}

.btn-outline {
	background: #fff;
	border: 1px solid var(--ring);
	color: #111;
}

section.login-page {
	height: 100vh;
}

section.login-page .col-lg-6.col-left {
	background-color: #111;
	color: #fff;
	padding: 80px 0 0;
	height: -webkit-fill-available;
	align-items: center;
	justify-content: center;
	display: flex;
}

section.login-page img.left-cross {
	position: absolute;
	top: 0;
	left: -110px;
	width: 100%;
	z-index: 0;
	max-width: 510px;
}

section.login-page img.vector-two {
	width: 92px;
	position: absolute;
	bottom: 14%;
	right: 16%;
}

section.login-page .row {
	height: 100vh;
	width: 100%;
	margin: 0 auto;
	position: relative;
	z-index: 9;
	overflow-y: auto;
}

section.login-page img.vector-one {
	position: absolute;
	width: 72px;
	top: 20%;
	left: 20%;
}

section.login-page .section-title {
	margin-bottom: 24px;
	font-size: 48px;
	font-family: "SugarPeachy";
	font-weight: 500;
	margin-top: 15px;
}

section.login-page img.stars {
	position: absolute;
	left: 50%;
	transform: translate(-50%, -50%);
	top: 50%;
}

img.auth-logo {
	width: 100%;
	max-width: 416px;
}

section.login-page .col-right .form-otp {
	width: 100%;
	max-width: 415px;
	margin: 0 auto;
}

button#signin-btn,
button#resendBtn,
button#cs-facebook-btn {
	width: 100%;
	padding: 15px;
	font-family: 'Quicksand';
	border-radius: 21px !important;
	font-size: 18px;
	text-align: center;
	transition: .3s all ease;
	text-decoration: none;
	background: #fff;
	color: #787878;
	transition: .3s all ease;
	border: 1.5px solid #E5E5E5;
}

button#signin-btn:hover,
button#cs-facebook-btn:hover {
	background: #2C2C2C;
	color: #fff;
	border: 1.5px solid #2C2C2C;
}

button#resendBtn:hover {
	background: #2C2C2C;
	color: #fff;
}

button#signin-btn,
button#cnfBtn {
	background: #E5E5E5;
	border-radius: 21px !important;
}

button#signin-btn:not(:disabled) {
	background: #2C2C2C;
	color: #fff;
}

p.muted {
	color: #787878;
	margin-bottom: 45px;
}

section.login-page img.auth-logo {
	width: 100%;
	max-width: 240px;
	margin-bottom: 10px;
}

.logo-mob {
	display: none;
}

.helper.invalid {
	font-size: 12px;
	color: #F43F5E;
}

.mx-auto.cs-username-section {
	margin-top: 40px;
}
.cs-username-section button:not(:disabled), #registerBtn {
	background-color: black !important;
    color: white !important;
    border: none !important;
	border-radius: 21px !important;
}
 #registerBtn {
    padding: 1rem .75rem;
    width: 100%;
	font-size: 18px;
}
button#signin-btn.active {
	background: #2C2C2C;
	color: #fff;
}

.btn.black-bg path {
	stroke: #fff;
}

.btn-primary-soft {
	background: #E5E5E5;
	color: #787878;
	font-size: 18px;
	font-family: 'Quicksand';
	border: none;
	border-radius: 21px;
}

@media screen and (max-width: 1024px) {
	img.auth-logo {
		width: 100%;
		max-width: 330px;
	}
}

@media screen and (max-width: 991px) {
	section.login-page .col-lg-6.col-left {
		display: none;
	}

	.logo-mob {
		display: block;
		text-align: center;
	}
}

.btn.black-bg {
	background: #2C2C2C !important;
	color: #fff !important;
}

#signin-btn.active {
	background-color: black !important;
	color: white !important;
	border: none !important;
}

button#signin-btn:not(:disabled) {
	background: black !important;
	color: white !important;
	border: none !important;
}

button.cs-btn-primary-soft {
	background: #E5E5E5;
	border-radius: 21px !important;
}

button.btn-primary-active {
	background: black !important;
	color: white !important;
	border: none !important;
}

a.facebook {
	background: #1877F2;
	color: #fff;
	background-image: url(./image/facebook.svg);
	background-repeat: no-repeat;
	background-position: 20px 15px;
	width: 100%;
	padding: 15px;
	border-radius: 21px;
	font-size: 18px;
	text-align: center;
	transition: .3s all ease;
	text-decoration: none;
	margin-bottom: 20px;
}

.position-relative.or.text-center {
	font-size: 16px;
	color: #787878;
	padding: 5px 28px;
}

.position-relative.or.text-center:before {
	content: '';
	background: #EEEEEE;
	width: 42%;
	height: 1px;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0%, -50%);
}

.position-relative.or.text-center:after {
	content: '';
	background: #EEEEEE;
	width: 42%;
	height: 1px;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(0%, -50%);
}

.forgot-password {
	text-align: right;
	margin-bottom: 20px;
}

.forgot-password a {
	color: #787878;
	text-decoration: none;
	font-size: 14px;
}

.forgot-password a:hover {
	color: #2C2C2C;
}

button#cs-username-btn {
	width: 100%;
	padding: 15px;
	font-family: 'Quicksand';
	border-radius: 21px !important;
	font-size: 18px;
	text-align: center;
	transition: .3s all ease;
	text-decoration: none;
	background: #fff;
	color: #787878;
	transition: .3s all ease;
	border: 1.5px solid #E5E5E5;
}

button#cs-username-btn:hover {
	background: #2C2C2C;
	color: #fff;
	border: 1.5px solid #2C2C2C;
}

/*------register page------*/

.login-page.signup .button-set .row .back-btn {
	width: auto !important;
	padding: 0px !important;
	border-radius: 0px 1 !important;
}


/* Input shell styled like screenshot */
.phone-shell {
	position: relative;
	border-radius: 999px;
	border: 1.6px solid var(--ring);
	display: flex;
	align-items: center;
	padding: .18rem .3rem;
	background: #fff;
	transition: border-color .15s ease, box-shadow .15s ease;
}

.phone-shell.valid {
	border-color: var(--violet);
	box-shadow: 0 0 0 4px rgba(139, 92, 246, .16);
}

.phone-shell.invalid {
	border-color: var(--danger);
	box-shadow: 0 0 0 4px rgba(239, 68, 68, .14);
}

/* Flag chip (left) */
.flag-chip {
	display: flex;
	align-items: center;
	gap: .38rem;
	background: var(--chip);
	border-radius: 999px;
	padding: .38rem .56rem;
	margin-left: .1rem;
	border: 1px solid rgba(0, 0, 0, .04);
	cursor: pointer;
	user-select: none;
}

.flag-chip img {
	width: 28px;
	height: 20px;
	object-fit: cover;
	border-radius: 6px;
	box-shadow: 0 0 0 1px rgba(0, 0, 0, .06);
}

.flag-chip .caret {
	width: 18px;
	height: 18px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	color: #555;
}

/* Phone input */
.phone-input {
	border: none;
	outline: none;
	flex: 1;
	padding: .74rem .8rem;
	font-size: 1.05rem;
	color: #2b2b2b;
}

.phone-input::placeholder {
	color: #9aa0a6;
}

/* Trailing phone icon */
.trailing {
	width: 26px;
	height: 26px;
	margin-right: .65rem;
	color: #1f1f1f;
	opacity: .7;
}

/* Dropdown panel */
.country-menu {
	position: absolute;
	inset: auto auto 0 0;
	transform: translateY(calc(100% + 10px));
	width: 560px;
	max-width: 92vw;
	background: #fff;
	border: 1px solid var(--ring);
	border-radius: 16px;
	box-shadow: 0 14px 38px rgba(0, 0, 0, .12);
	padding: .6rem;
	z-index: 1000;
	display: none;
}

.country-menu.open {
	display: block;
}

.search {
	width: 100%;
	border: 1px solid var(--ring);
	border-radius: 10px;
	padding: .6rem .8rem;
	outline: none;
}

.list {
	margin-top: .5rem;
	max-height: 420px;
	overflow: auto;
}

.row-item {
	display: flex;
	align-items: center;
	gap: .65rem;
	padding: .6rem .65rem;
	border-radius: 10px;
	cursor: pointer;
}

.row-item:hover {
	background: #f7f7fb;
}

.row-item img {
	width: 22px;
	height: 16px;
	border-radius: 3px;
	object-fit: cover;
	box-shadow: 0 0 0 1px rgba(0, 0, 0, .05);
}

.row-item .name {
	flex: 1;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}


.login-page.signup .button-set .row {
	height: auto;
	max-width: 415px;
	gap: 16px;
}

.login-page.signup .button-set .row a:hover {
	transform: scale(.98);
}

.login-page.signup .button-set .row a {
	width: 100%;
	padding: 15px;
	border-radius: 21px;
	font-size: 18px;
	text-align: center;
	transition: .3s all ease;
	text-decoration: none;
	display: block;
    color: #272727;
    text-decoration: underline !important;
}

a.apple {
	background: #1A1A1A;
	color: #fff;
}

a.apple {
	background: #1A1A1A;
	color: #fff;
	background-image: url(./image/apple.svg);
	background-repeat: no-repeat;
	background-position: 20px 15px;
}

a.facebook {
	background: #1877F2;
	color: #fff;
	background-image: url(./image/facebook.svg);
	background-repeat: no-repeat;
	background-position: 20px 15px;
}

a.google {
	background: #fff;
	color: #787878;
	border: 1.5px solid #E5E5E5;
	background-image: url(./image/google.svg);
	background-repeat: no-repeat;
	background-position: 20px 15px;
}

a.sign-in {
	background: #fff;
	color: #1A1A1A;
	border: 1.5px solid #1A1A1A;
}

.sign-up {
	background: #C097F0;
	color: #1A1A1A;
	border: 1.5px solid #1A1A1A;
}

.position-relative.or.text-center {
	font-size: 16px;
	color: #787878;
	padding: 28px;
}

.login-page.signup .logo-mob img.auth-logo {
	width: 100%;
	max-width: 240px;
	margin-bottom: 50px;
}

.logo-mob {
	display: none;
}

.position-relative.or.text-center:before {
	content: '';
	background: #EEEEEE;
	width: 42%;
	height: 1px;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0%, -50%);
}

.position-relative.or.text-center:after {
	content: '';
	background: #EEEEEE;
	width: 42%;
	height: 1px;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translate(0%, -50%);
}
.button-set .pb-5 {
    padding-bottom: 0px !important;
}

@media screen and (max-width: 1024px) {
	img.auth-logo {
		width: 100%;
		max-width: 330px;
	}
}

@media screen and (max-width: 991px) {
	section.login-page .col-lg-6.col-left {
		display: none;
	}

	.logo-mob {
		display: block;
		text-align: center;
	}
}

@media screen and (max-width: 767px) {}

@media (max-width: 768px) {
	.login-page.signup .button-set .row a {
		z-index: 99;
	}
}

@media (max-width: 480px) {
	.login-page.signup .button-set .row a {
		z-index: 99;
	}
}