### Godot version

4.0.2.stable.official [7a0977ce2]

### System information

Windows 10

### Issue description

LineEdit node with enabled "expand_to_text_length" option and "minimum_character_width = 0" and cleared margins in style overrides still has some empty space inside
![node](https://github.com/godotengine/godot/assets/23380802/86c79678-8422-4a98-8406-602edd7dc48b)
![node settings](https://github.com/godotengine/godot/assets/23380802/11d04d71-bbf1-4c16-8155-fe39b5bbd66b)
![style overrides](https://github.com/godotengine/godot/assets/23380802/6b3c3925-b4bd-455b-aac1-ddeb54a4d796)


### Steps to reproduce

1. Add LineEdit node
2. Set expand_to_text_length = true
3. Set minimum_character_width in theme overrides = 0
4. Set normal to StyleBoxEmpty


### Minimal reproduction project

[LineEdit can't be zero sized.zip](https://github.com/godotengine/godot/files/11566017/LineEdit.can.t.be.zero.sized.zip)

_reset_caret_blink_timer();
		if (b->is_pressed()) {
			accept_event(); 
			if (!text.is_empty() && is_editable() && _is_over_clear_button(b->get_position())) {
				clear_button_status.press_attempt = true;
				clear_button_status.pressing_inside = true;
				queue_redraw();
				return;
			}
			if (b->is_shift_pressed()) {
				shift_selection_check_pre(true);
			}
			set_caret_at_pixel_pos(b->get_position().x);
			if (b->is_shift_pressed()) {
				selection_fill_at_caret();
				selection.creating = true;
			} else {
				if (selecting_enabled) {
					const int triple_click_timeout = 600;
					const int triple_click_tolerance = 5;
					const bool is_triple_click = !b->is_double_click() && (OS::get_singleton()->get_ticks_msec() - last_dblclk) < triple_click_timeout && b->get_position().distance_to(last_dblclk_pos) < triple_click_tolerance;
					if (is_triple_click && text.length()) {
						
						selection.enabled = true;
						selection.begin = 0;
						selection.end = text.length();
						selection.double_click = true;
						last_dblclk = 0;
						set_caret_column(selection.begin);
						if (!pass && DisplayServer::get_singleton()->has_feature(DisplayServer::FEATURE_CLIPBOARD_PRIMARY)) {