@import url("/assets/css/samay-font.css");

.auth-brand {
	isolation: isolate;
}

.auth-brand::before {
	animation: authGridMove 16s linear infinite;
	background:
		linear-gradient(90deg, rgba(255,255,255,.08) 1px, transparent 1px),
		linear-gradient(0deg, rgba(255,255,255,.08) 1px, transparent 1px);
	background-size: 42px 42px;
	content: "";
	inset: 0;
	opacity: .22;
	position: absolute;
	z-index: 0;
}

.samay-auth-orbit {
	align-items: center;
	aspect-ratio: 1;
	border: 1px solid rgba(255,255,255,.22);
	border-radius: 50%;
	display: grid;
	height: 260px;
	justify-items: center;
	position: absolute;
	right: 48px;
	top: 132px;
	z-index: 1;
}

.samay-auth-orbit::before,
.samay-auth-orbit::after {
	border: 1px dashed rgba(255,255,255,.22);
	border-radius: 50%;
	content: "";
	position: absolute;
}

.samay-auth-orbit::before {
	inset: 28px;
}

.samay-auth-orbit::after {
	inset: 58px;
}

.orbit-center {
	align-items: center;
	background: rgba(255,255,255,.16);
	border: 1px solid rgba(255,255,255,.25);
	border-radius: 8px;
	display: grid;
	font-size: 34px;
	height: 72px;
	justify-items: center;
	width: 72px;
	backdrop-filter: blur(10px);
}

.orbit-item {
	align-items: center;
	animation: orbitPulse 2.7s ease-in-out infinite;
	background: #fff;
	border-radius: 50%;
	box-shadow: 0 12px 26px rgba(15,23,42,.2);
	color: #0d6efd;
	display: grid;
	font-size: 20px;
	height: 48px;
	justify-items: center;
	position: absolute;
	width: 48px;
}

.orbit-item:nth-child(2) {
	left: 18px;
	top: 44px;
}

.orbit-item:nth-child(3) {
	right: 0;
	top: 90px;
	animation-delay: .25s;
	color: #14a46c;
}

.orbit-item:nth-child(4) {
	bottom: 16px;
	left: 98px;
	animation-delay: .5s;
	color: #f59e0b;
}

.auth-flow-strip {
	background: #f8fbff;
	border: 1px solid #e5edf5;
	border-radius: 8px;
	display: grid;
	gap: 10px;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	margin: 0 0 22px;
	padding: 10px;
}

.auth-flow-step {
	align-items: center;
	color: #475467;
	display: flex;
	font-size: 12px;
	font-weight: 800;
	gap: 7px;
	min-height: 38px;
}

.auth-flow-step i {
	align-items: center;
	background: #e9fbf6;
	border-radius: 8px;
	color: #08705c;
	display: inline-flex;
	height: 28px;
	justify-content: center;
	width: 28px;
}

.auth-card {
	animation: authCardIn .55s ease both;
}

.btn-auth {
	position: relative;
	overflow: hidden;
}

.btn-auth::after {
	animation: authButtonSweep 2.8s ease-in-out infinite;
	background: linear-gradient(90deg, transparent, rgba(255,255,255,.34), transparent);
	content: "";
	inset: 0;
	position: absolute;
	transform: translateX(-100%);
}

@media (prefers-reduced-motion: no-preference) {
	.brand-content,
	.brand-metrics,
	.brand-checklist {
		animation: authContentUp .7s ease both;
	}
}

@media (max-width: 1200px) {
	.samay-auth-orbit {
		height: 210px;
		opacity: .8;
		right: 24px;
		top: 118px;
	}
}

@media (max-width: 992px) {
	.samay-auth-orbit {
		display: none;
	}
}

@media (max-width: 576px) {
	.auth-flow-strip {
		grid-template-columns: 1fr;
	}
}

@keyframes authGridMove {
	from {
		background-position: 0 0, 0 0;
	}
	to {
		background-position: 84px 42px, 42px 84px;
	}
}

@keyframes orbitPulse {
	0%, 100% {
		transform: translateY(0) scale(1);
	}
	50% {
		transform: translateY(-6px) scale(1.04);
	}
}

@keyframes authCardIn {
	from {
		opacity: 0;
		transform: translateY(14px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes authContentUp {
	from {
		opacity: 0;
		transform: translateY(18px);
	}
	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@keyframes authButtonSweep {
	0%, 45% {
		transform: translateX(-110%);
	}
	70%, 100% {
		transform: translateX(110%);
	}
}
