/**
 * CF7 Mailjet Public Styles
 */

/* Loader spinner */
.cideapps-cf7-loader {
	display: inline-block;
	width: 16px;
	height: 16px;
	margin-left: 8px;
	vertical-align: middle;
	border: 2px solid #f3f3f3;
	border-top: 2px solid #0073aa;
	border-radius: 50%;
	animation: cideapps-cf7-spin 1s linear infinite;
}

.cideapps-cf7-loader.hidden {
	display: none;
}

@keyframes cideapps-cf7-spin {
	0% { transform: rotate(0deg); }
	100% { transform: rotate(360deg); }
}

/* Submitting state — visual lock without HTML disabled (set on wpcf7submitting). */
input[type="submit"].cideapps-cf7-submitting,
button[type="submit"].cideapps-cf7-submitting,
.wpcf7-submit.cideapps-cf7-submitting {
	opacity: 0.6;
	cursor: not-allowed;
	position: relative;
}

.wpcf7-form.cideapps-cf7-form-submitting .wpcf7-submit:not(:disabled),
.wpcf7-form.cideapps-cf7-form-submitting input[type="submit"]:not(:disabled),
.wpcf7-form.cideapps-cf7-form-submitting button[type="submit"]:not(:disabled) {
	pointer-events: none;
}

/* Alternative loader with text */
.cideapps-cf7-loader-text {
	display: inline-block;
	margin-left: 8px;
	font-size: 0.9em;
	color: #666;
}

.cideapps-cf7-loader-text::after {
	content: '...';
	animation: cideapps-cf7-dots 1.5s steps(4, end) infinite;
}

@keyframes cideapps-cf7-dots {
	0%, 20% { content: '.'; }
	40% { content: '..'; }
	60%, 100% { content: '...'; }
}
