:root {
	--bg-color-toast: #000000bf;
	--bg-color-toast-hover: #333333;
	--text-color-light: #ffffff;
	--border-color-toast: #ffffff1a;
	--progress-bar-color: #ffffff;
	--toast-close-hover: #b1b1b1;
}

.toast {
	position: fixed !important;
	top: 20px;
	right: 20px;
	padding: 10px 20px;
	margin: 5px;
	border-radius: 15px;
	color: var(--text-color-light);
	font-weight: bold;
	z-index: 9999;
	border: 1px solid var(--border-color-toast);
	transition: right 0.3s ease-in-out;
	animation: fadeIn 2s ease;
	display: flex;
	justify-content: space-between;
	align-items: center;
	overflow: hidden;
}

.toast.success {
	background-color: var(--bg-color-toast);
	backdrop-filter: blur(10px);
}

.toast.error {
	background-color: var(--bg-color-toast);
	backdrop-filter: blur(10px);
}

.toast a {
	margin-left: 5px;
	display: inline-block;
}

.toast.show {
	animation: slideIn 0.3s forwards;
}

.toast.hide {
	animation: slideOut 0.3s forwards;
}

.toast .progress-bar {
	position: absolute;
	bottom: 0;
	left: 0;
	height: 4px;
	background-color: var(--progress-bar-color);
	width: 100%;
	border-radius: 20px;
	animation: progress 3s linear forwards;
}

@keyframes slideIn {
	0% {
		right: -300px;
	}

	100% {
		right: 20px;
	}
}

@keyframes slideOut {
	0% {
		right: 20px;
	}

	100% {
		right: -1000px;
	}
}

@keyframes progress {
	0% {
		width: 100%;
	}

	100% {
		width: 0%;
	}
}

.toast .toast-close {
	background: none;
	border: none;
	color: var(--text-color-light);
	font-size: 18px;
	cursor: pointer;
	padding: 0;
	margin-left: 10px;
	transition: 0.3s;
}

.toast-close:hover {
	color: var(--toast-close-hover);
}

