/* ============================================================
   Propague Price - CPF/CNPJ Field Styles
   ============================================================ */

/* === Campo no Checkout Clássico e Minha Conta === */

.propague-cpf-cnpj-field input {
	font-size: 15px !important;
	letter-spacing: 0.5px;
}

/* Estado de erro */
.propague-cpf-cnpj-error {
	border-color: #e44d26 !important;
	box-shadow: 0 0 0 1px #e44d26 !important;
}

.propague-cpf-cnpj-error-msg {
	display: block;
	color: #e44d26;
	font-size: 13px;
	font-weight: 500;
	margin-top: 6px;
	line-height: 1.3;
}

/* Estado de sucesso */
.propague-cpf-cnpj-valid {
	border-color: #38a169 !important;
	box-shadow: 0 0 0 1px #38a169 !important;
}

/* === Campo no Checkout de Blocos (Floating Label nativo) === */

/*
 * O campo segue o padrão WC Blocks: .wc-block-components-text-input
 * A label é posicionada absolutamente dentro do input e "sobe" ao focar (is-active).
 * NÃO usamos placeholder para evitar sobreposição de texto.
 */

#propague-cpf-cnpj-blocks {
	flex: 0 0 100%; /* Largura total no grid do WC Blocks */
}

#propague-cpf-cnpj-blocks input[type="text"] {
	letter-spacing: 0.5px;
}

/* Erro no campo de blocos */
#propague-cpf-cnpj-blocks.has-error input,
#propague-cpf-cnpj-blocks.has-error input:focus {
	border-color: #cc1818 !important;
}

#propague-cpf-cnpj-blocks.has-error label {
	color: #cc1818 !important;
}

/* Sucesso no campo de blocos */
#propague-cpf-cnpj-blocks input.propague-cpf-cnpj-valid {
	border-color: #38a169 !important;
	box-shadow: 0 0 0 0.5px #38a169 !important;
}

/* === Botão Finalizar Pedido — border-radius reduzido === */

.wc-block-components-checkout-place-order-button {
	border-radius: calc(var(--wp--custom--button--border--radius, 5px) * 0.75) !important;
}

/* === Campo no Formulário de Registro === */

.woocommerce-form-register .propague-cpf-cnpj-field input {
	font-size: 15px;
	letter-spacing: 0.5px;
}

/* === Responsividade === */

@media (max-width: 768px) {
	#propague-cpf-cnpj-blocks input[type="text"] {
		font-size: 16px; /* Evita zoom no mobile iOS */
	}
}
