/* ----------------------------------------------------------------
	Custom CSS

	Add all your Custom Styled CSS here for New Styles or
	Overwriting Default Theme Styles for Better Handling Updates
-----------------------------------------------------------------*/

/* --- General Styling --- */
body {
	font-family: 'Inter', sans-serif;
	background-color: #f8f9fa;
}

/* --- Page Header & Affiliate Login --- */
.header-container {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 1rem 0;
}

.existing-affiliate-login {
	text-align: right;
}

/* --- Form Styling --- */
.form-widget {
	max-width: 900px;
	margin: 2rem auto;
}
.form-step { display: none; }
.form-step.active { display: block; animation: fadeIn 0.5s; }
.form-input { border: 1px solid #ced4da !important; border-radius: 0.375rem; }
.form-input:focus { border-color: #86b7fe !important; box-shadow: 0 0 0 0.25rem rgba(13, 110, 253, .25); }
.is-invalid { border-color: #dc3545 !important; }
.form-check-input.is-invalid ~ .form-check-label { color: #dc3545; }
.terms-container.is-invalid {
	border: 1px solid #dc3545;
	padding: 0.5rem;
	border-radius: 0.375rem;
}

/* --- Post-Submission Message --- */
#success-message {
	display: none;
	text-align: center;
	padding: 4rem 2rem;
	border: 1px solid #d1e7dd;
	background-color: #f8f9fa;
	border-radius: 0.5rem;
}

@keyframes fadeIn {
	from { opacity: 0; }
	to { opacity: 1; }
}