/* Form Submission Success/Error Messages */

.fs-message-final {
	position: fixed;
	top: 50%;
	left: 50%;
	z-index: 10000;
	max-width: 600px;
	width: 90%;
	padding: 2.5em;
	background: var(--color-mode-design-dark, #0a051ec2);
	border: 2px solid var(--color-mode-design, #8860ff);
	border-radius: 5px;
	color: var(--color-body-text, #a29f9f);
	font-size: var(--font-md, 1.5rem);
	text-align: center;
	opacity: 0;
	visibility: hidden;
	-webkit-transform: translate3d(-50%, -50%, 0) scale3d(0.9, 0.9, 1);
	transform: translate3d(-50%, -50%, 0) scale3d(0.9, 0.9, 1);
	-webkit-transition: opacity 0.3s, visibility 0.3s, -webkit-transform 0.3s;
	transition: opacity 0.3s, visibility 0.3s, transform 0.3s;
}

.fs-message-final.fs-show {
	opacity: 1;
	visibility: visible;
	-webkit-transform: translate3d(-50%, -50%, 0) scale3d(1, 1, 1);
	transform: translate3d(-50%, -50%, 0) scale3d(1, 1, 1);
}

.fs-message-success {
	border-color: #6dcc9e;
}

.fs-message-success p {
	margin: 0;
	font-weight: 700;
	color: #6dcc9e;
}

.fs-message-final p {
	margin: 0;
	line-height: 1.6;
}

/* Disabled submit button state */
button.fs-submit:disabled {
	opacity: 0.6;
	cursor: not-allowed;
	pointer-events: none;
}

/* Form fade out after submission */
.fs-form[style*="opacity: 0.5"] {
	-webkit-transition: opacity 0.5s ease-out;
	transition: opacity 0.5s ease-out;
}

@media screen and (max-width: 40em) {
	.fs-message-final {
		font-size: var(--font-base, 1.2rem);
		padding: 1.5em;
		width: 95%;
	}
}
