### 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)

DisplayServer::get_singleton()->window_set_ime_position(pos, get_viewport()->get_window_id());
			}
			show_virtual_keyboard();
		} break;
		case NOTIFICATION_FOCUS_EXIT: {
			_validate_caret_can_draw();
			if (get_viewport()->get_window_id() != DisplayServer::INVALID_WINDOW_ID && DisplayServer::get_singleton()->has_feature(DisplayServer::FEATURE_IME)) {
				DisplayServer::get_singleton()->window_set_ime_position(Point2(), get_viewport()->get_window_id());
				DisplayServer::get_singleton()->window_set_ime_active(false, get_viewport()->get_window_id());
			}
			ime_text = "";
			ime_selection = Point2();
			_shape();
			set_caret_column(caret_column); 
			if (DisplayServer::get_singleton()->has_feature(DisplayServer::FEATURE_VIRTUAL_KEYBOARD) && virtual_keyboard_enabled) {
				DisplayServer::get_singleton()->virtual_keyboard_hide();
			}
			if (deselect_on_focus_loss_enabled && !selection.drag_attempt) {
				deselect();
			}
		} break;
		case MainLoop::NOTIFICATION_OS_IME_UPDATE: {
			if (has_focus()) {
				ime_text = DisplayServer::get_singleton()->ime_get_text();
				ime_selection = DisplayServer::get_singleton()->ime_get_selection();
				if (!ime_text.is_empty()) {
					selection_delete();
				}
				_shape();
				set_caret_column(caret_column);