### Godot version

4.2 ff5c884

### System information

Windows 10.0.19045 - Vulkan (Forward+) - dedicated NVIDIA GeForce GTX 1060 (NVIDIA; 30.0.15.1403) - Intel(R) Core(TM) i7-7700HQ CPU @ 2.80GHz (8 Threads)

### Issue description

Using expressions, you can move a node to infinity. When you focus on the node afterwards, the 2D editor becomes unusable:

https://github.com/godotengine/godot/assets/2223172/ed4c252a-39e8-46a1-a513-340b26216210

You can't pan or center on other objects, no node is visible in the viewport. If you save the scene in this state, the edit state file saves `ofs = Vector2(nan, nan)`, making the scene uneditable until you fix the edit state file in the `.godot` folder.

### Steps to reproduce

1. Add some 2D node
2. Change it's position to infinity (can't be directly entered; use `pow()` method)
3. Focus on that object by pressing F

### Minimal reproduction project

N/A


EDIT:
Apparently #80699 is required to use `pow()`. Not sure how to make `inf` otherwise.
return shared->min;
}
double Range::get_max() const {
	return shared->max;
}
double Range::get_step() const {
	return shared->step;
}
double Range::get_page() const {
	return shared->page;
}
void Range::set_as_ratio(double p_value) {
	double v;
	if (shared->exp_ratio && get_min() >= 0) {
		double exp_min = get_min() == 0 ? 0.0 : Math::log(get_min()) / Math::log((double)2);
		double exp_max = Math::log(get_max()) / Math::log((double)2);
		v = Math::pow(2, exp_min + (exp_max - exp_min) * p_value);
	} else {
		double percent = (get_max() - get_min()) * p_value;
		if (get_step() > 0) {
			double steps = round(percent / get_step());
			v = steps * get_step() + get_min();
		} else {
			v = percent + get_min();
		}
	}
	v = CLAMP(v, get_min(), get_max());
	set_value(v);
}
double Range::get_as_ratio() const {