/*
 * CSS estrutural do widget. Cores, fontes e espaçamentos vêm dos controles
 * de estilo do Elementor (gerados automaticamente com seletores próprios) —
 * este arquivo só cuida do layout (grid de campos, estados de carregamento).
 */

.wfe-form {
	width: 100%;
}

.wfe-fields {
	display: flex;
	flex-wrap: wrap;
	--wfe-col-gap: 15px;
	--wfe-row-gap: 15px;
}

.wfe-field {
	box-sizing: border-box;
	flex: 1 1 calc(var(--wfe-field-width, 100%) - var(--wfe-col-gap, 0px));
	max-width: calc(var(--wfe-field-width, 100%) - var(--wfe-col-gap, 0px));
	margin-right: var(--wfe-col-gap, 0px);
	margin-bottom: var(--wfe-row-gap, 15px);
	display: flex;
	flex-direction: column;
}

.wfe-field input,
.wfe-field select,
.wfe-field textarea {
	width: 100%;
	box-sizing: border-box;
	font: inherit;
}

.wfe-field__label {
	margin-bottom: 6px;
}

.wfe-required {
	color: #c0392b;
}

.wfe-field__helper {
	margin-top: 4px;
	opacity: 0.75;
}

.wfe-options {
	display: flex;
	flex-direction: column;
	gap: 6px;
}

.wfe-option {
	display: flex;
	align-items: center;
	gap: 6px;
	font-weight: normal;
}

.wfe-option input {
	width: auto;
}

.wfe-message {
	margin-bottom: 15px;
}

.wfe-hidden {
	display: none !important;
}

.wfe-submit-btn {
	cursor: pointer;
	border: none;
	display: inline-flex;
	align-items: center;
	justify-content: center;
}

.wfe-form--loading .wfe-submit-btn {
	opacity: 0.7;
	cursor: progress;
}
