:root {
	--prim-color: #1b1a55; /* Primary color */
	--sec-color: #070f2b; /* Secondary color - darker shade of primary */
	--tert-color: #535c91; /* Tertiary color - lighter shade of primary */
	--quart-color: #9290c3; /* Quaternary color - tint of primary */
	--font-color: white;
	--fady-back-color: rgb(36, 1, 82, 0.2); /* Faded background color */
	--shadow-color: rgba(7, 15, 43, 0.7);
	--gold-color: #ffd700;
	--silver-color: #dddddd;
	--bronze-color: #a7631f;
}

/********************Default styles******************/
* {
	padding: 0;
	margin: 0;

	/* customize scroll */
	&::-webkit-scrollbar {
		width: 5px;
		height: 5px;
		border-radius: 30px;
	}

	&::-webkit-scrollbar-track {
		background: var(--tert-color);
		padding: 5px;
	}

	&::-webkit-scrollbar-thumb {
		background: var(--sec-color);
		border-radius: 50px;
		margin: 0;
	}
}

body {
	background-color: var(--tert-color);
	color: var(--font-color);
	overflow-x: hidden;
}

a {
	text-decoration: none;
	color: var(--font-color);
}

li {
	list-style: none;
}

button {
	padding: 10px;
	width: fit-content;
	margin: 20px auto;
	background-color: var(--prim-color);
	border: none;
	border-radius: 10px;
	font-size: 17px;
	color: var(--font-color);
	box-shadow: 1px 1px 5px 0 var(--font-color);
	text-wrap: nowrap;
}

button:hover {
	background-color: var(--sec-color);
	box-shadow: 3px 3px 5px 0 var(--shadow-color);
}

button:active {
	box-shadow: 2px 2px 5px 0 var(--shadow-color) !important;
	scale: 0.9;
}

.btn-active {
	background-color: var(--quart-color) !important;
	box-shadow: 3px 3px 5px 0 var(--shadow-color) !important;
}

.bx {
	margin: 0 5px;
}

.error-message {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-content: center;
	color: red;
	width: 100%;
	text-align: center;
	min-height: 20px;
	background-color: transparent;
	max-width: 250px;
	min-width: 250px;
}

.social-login-btn {
	display: flex;
	justify-content: center;
	align-items: center;
	background: linear-gradient(var(--tert-color), var(--silver-color));
	border-radius: 10px;
	color: var(--prim-color);
	font-size: 23px;
	min-width: 50px;
	aspect-ratio: 1/1;
	box-shadow: 2px 2px 4px 0 var(--prim-color);
	padding: 0;
}

.social-login-btn:hover {
	background: linear-gradient(var(--font-color), var(--tert-color));
	font-size: 20px;
}

/***********************************************/
.offline-div {
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background-color: #000;
	color: #fff;
	display: none;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	font-size: 2rem;
	text-align: center;
	z-index: 100;
}
.wallet-address {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	margin: 0 auto;
	max-width: 150px;
	overflow-x: hidden;
	overflow-y: hidden;
	text-align: center;
}

.wallet-address button {
	display: flex;
	position: relative;
	background-color: transparent;
	max-width: 20px;
	box-shadow: none;
	display: inline;
	max-width: 20px;
	aspect-ratio: 1/1;
	margin: 0;
	margin-left: 10px;
	padding: 0;
	cursor: pointer;
}

#wallet-address-val {
	max-width: 120px;
	overflow-x: auto;
	overflow-y: hidden;
	padding: 0 5px;

	/* Add scrollbar styles */
	&::-webkit-scrollbar {
		width: 20px;
		height: 3px;
	}

	&::-webkit-scrollbar-track {
		background: var(--font-color);
		padding: 0;
	}

	&::-webkit-scrollbar-thumb {
		background: var(--sec-color);
		border-radius: 50px;
		margin: 0;
	}

	&::-webkit-scrollbar-thumb:hover {
		background: #555;
	}
}
.landing-overlay {
	display: flex;
	position: fixed;
	height: 100%;
	width: 100%;
	z-index: 1;
	backdrop-filter: blur(4px);
}

.landing-content {
	display: flex;
	position: fixed;
	background: linear-gradient(var(--prim-color), var(--tert-color));
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	z-index: 2;
	overflow: hidden;
	max-width: 400px;
	border-radius: 20px;
	flex-direction: column;
	text-align: center;
	padding: 20px;
	color: var(--font-color);
	gap: 10px;
	justify-content: center;
	font-size: 20px;
	border: none;
	max-width: 250px;
	min-width: 220px;
}

.landing-content h1 {
	font-size: 35px;
	border-bottom: 1px solid var(--quart-color);
	width: fit-content;
	margin: auto;
	color: var(--quart-color);
	font-size: 40px;
	display: none;
}

.landing-content img {
	max-width: 90%;
	margin: 10px auto;
	background-color: var(--font-color);
	padding: 0;
	border-radius: 20px;
	background-color: transparent;
}

.landing-content .overlay-buttons {
	display: flex;
	justify-content: space-evenly;
	margin: auto;
	gap: 20px;
}

.main-content {
	display: block !important;
	z-index: 2;
	color: black;
}

.main-header {
	display: block;
	background-color: var(--tert-color);
	color: var(--font-color);
	text-align: center;
	padding: 20px 0;
	min-height: 35px;
	transition: all ease-in-out 800ms;
	margin-bottom: 10px;
}

.main-content {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
	background-color: var(--tert-color);
}
.circular-button {
	position: absolute;
	top: 10px;
	right: 50px;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	background-color: transparent;
	display: flex;
	justify-content: center;
	align-items: center;
	cursor: pointer;
	z-index: 0;
}

.circular-button i {
	color: var(--font-color);
	font-size: 24px;
}

.logo {
	position: absolute;
	top: 10px;
	left: 50px;
	width: 50px;
	height: 50px;
	border-radius: 50%;
	overflow: hidden;
}

.logo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.profile-link {
	display: flex;
	justify-content: center;
	align-items: center;
	background-color: var(--prim-color);
	color: var(--font-color);
	border-radius: 50%;
	min-width: 50px;
	aspect-ratio: 1/1;
}

.profile-link i {
	color: inherit;
	font-size: 30px;
}

.profile-link:hover {
	background-color: var(--font-color);
	color: var(--prim-color);
}

.main-heading {
	display: block;
	position: relative;
	color: var(--font-color);
	font-size: 28px;
	font-weight: bold;
	margin-top: 80px;
	text-align: center;
	width: 100%;
	background: linear-gradient(
		transparent,
		transparent,
		var(--quart-color),
		transparent,
		transparent
	);
	padding: 0;
	transition: all ease-in-out 800ms;
}

.main-heading h1 {
	background-color: var(--tert-color);
	width: fit-content;
	margin: auto;
	padding: 3px 10px;
	border-radius: 40px;
	box-shadow: 2px 2px 3px 0 var(--shadow-color);
}

.main-heading h1:hover {
	background-color: var(--sec-color);
	color: var(--font-color);
}

.fullheight {
	min-height: 80vh;
}

.container {
	display: grid;
	grid-template-columns: repeat(auto-fill, minmax(200px, 400px));
	grid-gap: 30px 10px;
	align-items: grid-items;
	justify-content: center;
	margin-top: 80px;
	margin-bottom: 50px;
	border-radius: 20px;
	width: fit-content;
	margin-inline: auto;
	padding: 0 20px;
	transition: all ease-in-out 800ms;
	width: 90%;
	min-width: 90%;
}

.quiz-card {
	width: 80%;
	height: fit-content;
	text-align: center;
	transition: all 300ms;
	border-radius: 20px;
	background-color: var(--quart-color);
	box-shadow: 15px 9px 10px 0px var(--shadow-color);
	color: var(--sec-color);
	padding: 20px 20px 0px 20px;
}

.btn {
	height: 40px;
	width: 70px;
	border-radius: 15px;
	margin-top: 70px;
	background-color: var(--prim-color);
	color: floralwhite;
}

.quiz-img {
	width: 100%;
	border-radius: 10px;
	margin: 20px 0 0 0;
}

.quiz-card:hover {
	width: 70%;
}

.quiz-card:nth-child(2),
.quiz-card:nth-child(4) {
	margin-top: 20px;
}

footer {
	position: relative;
	background-color: var(--tert-color) !important;
	padding: 0;
	bottom: 0px;
	height: 100%;
	margin-top: 0px;
	margin-bottom: 0;
	overflow: hidden;
}

.navbar {
	text-align: center;
	border-radius: 50px 5px; /* Add border radius */
	background-color: var(--quart-color); /* Add background color */
	padding: 10px;
	margin: 0;
	font-size: 17px;
	font-family: inherit;
}

.navbar ul {
	display: flex;
	flex-direction: row;
	justify-content: center;
	list-style-type: none;
	padding: 0;
}

.navbar ul li {
	margin-right: 20px;
}

.navbar ul li:last-child {
	margin-right: 0;
}

.navbar ul li a {
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: center;
	color: var(--font-color);
	text-decoration: none;
}

.quiz-options {
	display: none;
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	justify-content: center;
	align-items: center;
	flex-direction: column;
	background-color: var(--prim-color);
	padding: 20px;
	border-radius: 20px;
	box-shadow: 2px 2px 5px 0 var(--shadow-color);
}

.quiz-options .head {
	margin-top: 15px;
	color: var(--font-color);
	text-align: center;
}

.quiz-options #close-btn {
	position: absolute;
	top: 5px;
	right: 10px;
	color: var(--quart-color);
	border: none;
	border-radius: 20%;
	padding: 5px;
	font-size: 20px;
}

.quiz-options #close-btn:hover {
	background-color: var(--tert-color);
}

.quiz-options .body {
	margin-top: 15px;
	display: flex;
	flex-direction: row;
	gap: 20px;
}

.quiz-options .body button {
	background-color: var(--sec-color);
	color: var(--font-color);
}

.body-content {
	background-color: transparent;
	margin: 0;
	padding: 50px 0;
	min-height: 85vh;
}

.no-background {
	background-color: var(--font-color) !important;
	padding: 0 !important;
	margin: 0;
}

footer .navbar ul li a:hover {
	color: var(--prim-color) !important;
	/* font-weight: bold; */
}

/* wallet token container styles */
.close-on-wallet {
	position: absolute;
	top: 5px;
	right: 10px;
	color: var(--quart-color);
	border: none;
	border-radius: 50%;
	padding: 5px;
	font-size: 20px;
}

#close-wallet:hover {
	color: var(--font-color);
	scale: 1.1;
}

.wallet-container {
	display: none;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
	margin: 0 auto;
	background-color: var(--prim-color);
	min-width: 230px;
	max-width: 90%;
	width: 30%;
	min-width: fit-content;
	border-radius: 20px;
	box-shadow: 2px 2px 5px 0 var(--shadow-color);
	padding: 0 20px 20px 20px;
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	max-height: 80vh;
	overflow: hidden;
	z-index: 2;
}

/* style the scroll bar  */
.wallet-container::-webkit-scrollbar {
	width: 5px;
	height: 3px;
	border-radius: 30px;
}

.wallet-container::-webkit-scrollbar-track {
	border-radius: 30px;
}

.wallet-container::-webkit-scrollbar-thumb {
	background: transparent;
	border-radius: 0 30px 30px 0;
}

.wallet-container::-webkit-scrollbar-thumb:hover {
	background: var(--tert-color);
}

.wallet-container .wallet-options {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	border-bottom: 1px solid var(--quart-color);
	width: 100%;
	gap: 10px;
	margin-top: 20px;
}

.wallet-container .wallet-options button {
	background-color: var(--tert-color);
	color: var(--font-color);
	border: none;
	border-radius: 10px;
	padding: 10px;
	box-shadow: 2px 2px 5px 0 var(--sec-color);
	min-width: 140px;
	min-height: 40px;
	margin: 20px 0;
}

.wallet-container .wallet-content {
	display: none;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
	width: 100%;
	overflow-x: hidden;
	overflow-y: auto;

	&::-webkit-scrollbar {
		display: none;
	}
}

.wallet-container .wallet-content .wallet-header {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	color: var(--font-color);
	border-bottom: 1px solid var(--quart-color);
	margin-bottom: 30px;
	font-size: 13px;
	width: 100%;
}

.wallet-container .wallet-content .wallet-body {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	min-width: 100%;
}

.wallet-container .wallet-content .wallet-body .wallet-nfts {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: flex-start;
	flex-wrap: wrap;
	padding: 10px;
	background-color: var(--tert-color);
	border-radius: 20px;
	overflow: hidden;
}

.wallet-container .wallet-content .wallet-body .wallet-nfts .nft-card {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	border-radius: 20px;
	box-shadow: 2px 2px 5px 0 var(--shadow-color);
	margin: 10px;
	padding: 0px;
	max-width: 100px;
	min-width: 100px;
	max-height: 100px;
	min-height: 100px;
}

.wallet-container .wallet-content .wallet-body .wallet-nfts .nft-card img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	border-radius: 20px;
}

.wallet-container .tx-content {
	display: none;
	flex-direction: column;
	justify-content: flex-start;
	align-items: center;
	width: 100%;
	max-width: 100%;
	overflow-y: auto;
	overflow-x: hidden;
}

.wallet-container .tx-content::-webkit-scrollbar {
	display: none;
}

.wallet-container .tx-content .tx-header {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	color: var(--font-color);
	border-bottom: 2px solid var(--quart-color);
	margin-bottom: 30px;
	width: 100%;
	font-size: 13px;
}

.wallet-container .tx-content .tx-body {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100%;
	font-size: 16px;
}

.wallet-container .tx-content .tx-body .tx-items {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100%;
	min-width: 100%;
}

.wallet-container .tx-content .tx-body .tx-item {
	display: flex;
	flex-direction: column;
	justify-content: flex-start;
	align-items: flex-start;
	border-radius: 10px;
	box-shadow: 2px 2px 5px 0 var(--sec-color);
	margin: 10px auto;
	padding: 10px;
	background-color: var(--tert-color);
	width: calc(100% - 20px);
	gap: 5px;
	max-width: 100%;
	overflow: hidden;
}

.wallet-container .tx-content .tx-body .tx-item span {
	display: flex;
	flex-direction: row;
	justify-content: space-between;
	align-items: center;
	min-width: 100%;
	width: 100%;
	text-align: left;
	border-bottom: 1px solid var(--quart-color);
	overflow-x: auto;
	overflow-y: hidden;
}

.wallet-container .tx-content .tx-body .tx-item span::-webkit-scrollbar {
	width: 5px;
	height: 3px;
	border-radius: 30px;
}
.wallet-container .tx-content .tx-body .tx-item span::-webkit-scrollbar-track {
	background: transparent;
	padding: 0;
}

.wallet-container .tx-content .tx-body .tx-item span::-webkit-scrollbar-thumb {
	background: transparent;
	border-radius: 50px;
	margin: 0;
}

.wallet-container .tx-content .tx-body .tx-item span:hover {
	background-color: var(--prim-color);
	color: var(--font-color);
	backdrop-filter: blur(0px);
}

.wallet-container .tx-content .tx-body .tx-item span:hover > .tx-item-p {
	color: var(--font-color);
}

.wallet-container .tx-content .tx-body .tx-item span .tx-item-p {
	font-weight: bold;
	color: var(--sec-color);
}

.countdown-container {
	display: none;
	flex-direction: column;
	position: fixed;
	top: 50%;
	right: 0;
	transform: translate(0, -50%);
	background-color: var(--prim-color);
	min-width: 70px;
	aspect-ratio: 1/1;
	z-index: 1;
	border-radius: 20px 0 0 20px;
	font-size: 40px;
	text-align: center;
	align-items: center;
	justify-content: center;
	box-shadow: 2px 2px 5px 0 var(--shadow-color);
	padding: 15px;
}

.countdown-container .countdown {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	color: var(--font-color);
	font-weight: bold;
}

.countdown-container .spinner-animator {
	position: absolute;
	color: var(--tert-color);
	margin-top: 5px;
	font-size: 90px;
}

.social-login {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	margin-top: -10px;
	gap: 10px;
	width: 100%;
}

.social-login .social-icons {
	display: flex;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	gap: 15px;
	width: 100%;
	margin-top: 10px;
}

.recover {
	padding-left: 15px;
	width: 100%;
}

.social-login button {
	background-color: var(--font-color);
	color: var(--prim-color);
	border: none;
	border-radius: 10px;
	padding: 5px !important;
	box-shadow: 2px 2px 5px 0 var(--shadow-color);
	min-width: 40px;
	min-height: 40px;
	max-width: 40px;
	margin: 0;
}

/* error detection */
.error {
	color: rgb(255, 2, 2);
}

.warning {
	color: rgb(255, 174, 0);
}

.info {
	color: rgb(30, 220, 30);
}

.error-container {
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	width: 100%;
	border-radius: 5px;
	box-shadow: 2px 2px 5px 0px rgba(0, 0, 0, 0.75);
	overflow: hidden;
	background-color: var(--prim-color);
	height: fit-content;
}

.error-block {
	display: none;
	position: fixed;
	grid-template-columns: 1fr;
	padding: 100px 20px;
	background-color: transparent;
	top: 0;
	right: 0;
	gap: 10px;
	max-width: 350px;
	min-width: 350px;
	transition: all 0.5s ease-in-out;
	z-index: 5;
	font-size: 18px;
	color: inherit;
}

.error-block .error-element {
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: nowrap;
	gap: 10px;
	padding: 0px;
	position: relative;
	justify-content: space-between;
	align-items: center;
	min-height: 50px;
	min-width: 200px;
	width: 100%;
	color: inherit;
}

.error-block .error-element i {
	font-size: 30px;
	margin: 0 5px;
	color: inherit;
}

.error-block .error-element span {
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
	margin-right: 50px;
	text-align: left;
	width: 100%;
	height: 100%;
	color: inherit;
}

.error-block .error-element button {
	position: absolute;
	border-radius: 0px;
	background-color: rgba(0, 0, 0, 0.35);
	color: inherit;
	font-size: 20px;
	font-weight: bold;
	cursor: pointer;
	min-height: 60px;
	border: none;
	max-width: 30px;
	top: 0;
	right: 0;
	margin: 0;
}

.error-block .expiry-block {
	max-height: 5px;
	min-width: 100%;
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
	background-color: transparent;
	padding: 2px 0;
}

.error-block .expiry-block .expiry-span {
	width: 97%;
	max-width: 310px;
	min-height: 3px;
	max-height: 3px;
	background-color: lightgrey;
	display: flex;
	flex-direction: row;
	justify-content: flex-start;
	align-items: center;
	border-radius: 50px;
}

.error-block .error-element button:hover {
	background-color: #00000080;
}

/* responsive css */
@media (max-width: 1800px) {
	.container {
		grid-template-columns: repeat(3, 1fr);
		margin-top: 50px;
	}
}
@media (max-width: 1000px) {
	.container {
		grid-template-columns: repeat(2, 1fr);
		margin-top: 50px;
	}
}
@media (max-width: 500px) {
	.profile-link {
		background-color: var(--tert-color);
		color: var(--font-color) !important;
	}

	.profile-link i {
		color: var(--font-color) !important;
	}

	.profile-link:hover {
		background-color: var(--font-color);
		color: var(--tert-color) !important;
	}

	.profile-link:hover i {
		color: var(--tert-color) !important;
	}

	.container {
		grid-template-columns: repeat(1, 1fr);
		margin-top: 50px;
	}

	.quiz-card {
		margin: 10px auto;
	}

	.main-header {
		background-color: var(--sec-color);
		border-radius: 0 0 20px 20px;
		margin-bottom: 10px;
	}

	.wallet-btn {
		background-color: var(--quart-color);
		box-shadow: none;
	}

	.wallet-btn:hover {
		background-color: var(--tert-color);
	}

	.circular-button i {
		color: var(--sec-color);
	}

	.circular-button {
		top: 10px;
		right: 10px !important;
	}

	.logo {
		top: 10px;
		left: 10px !important;
	}

	.wallet-address {
		display: flex;
		flex-direction: row;
		margin: 0 auto;
		padding: 5px 0px;
		background-color: var(--tert-color);
		color: var(--font-color);
		border-radius: 20px;
		flex-wrap: nowrap;
		font-size: 18px;
		border: 8px solid var(--tert-color);
		border-bottom: none;
		border-top: none;
	}

	.wallet-address p {
		padding: 0;
		margin: 0;
		/* remove scrollbar */
		&::-webkit-scrollbar {
			display: none;
		}

		&::-webkit-scrollbar-track {
			background: transparent;
			padding: 0;
		}

		&::-webkit-scrollbar-thumb {
			background: transparent;
			border-radius: 50px;
			margin: 0;
		}
	}

	.wallet-address::-webkit-scrollbar-track {
		display: none;
		background: transparent;
		padding: 0;
	}

	.wallet-address::-webkit-scrollbar-thumb {
		display: none;
		background: transparent;
		border-radius: 50px;
		margin: 0;
	}

	.main-heading {
		font-size: 25px;
		margin-top: 50px;
	}

	.wallet-container {
		min-width: 80% !important;
	}

	.wallet-container .wallet-content .wallet-header {
		font-size: 13px;
	}
}
@media (max-width: 400px) {
	.container {
		grid-template-columns: repeat(1, 1fr);
	}

	footer .navbar ul li i {
		font-size: 25px;
	}
	footer .navbar ul li p {
		display: none;
	}
}
