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

if (!clear_button_enabled || !has_point(p_pos)) {
		return false;
	}
	Ref<Texture2D> icon = theme_cache.clear_icon;
	int x_ofs = theme_cache.normal->get_margin(SIDE_RIGHT);
	return p_pos.x > get_size().width - icon->get_width() - x_ofs;
}
void LineEdit::_update_theme_item_cache() {
	Control::_update_theme_item_cache();
	theme_cache.normal = get_theme_stylebox(SNAME("normal"));
	theme_cache.read_only = get_theme_stylebox(SNAME("read_only"));
	theme_cache.focus = get_theme_stylebox(SNAME("focus"));
	theme_cache.font = get_theme_font(SNAME("font"));
	theme_cache.font_size = get_theme_font_size(SNAME("font_size"));
	theme_cache.font_color = get_theme_color(SNAME("font_color"));
	theme_cache.font_uneditable_color = get_theme_color(SNAME("font_uneditable_color"));
	theme_cache.font_selected_color = get_theme_color(SNAME("font_selected_color"));
	theme_cache.font_outline_size = get_theme_constant(SNAME("outline_size"));
	theme_cache.font_outline_color = get_theme_color(SNAME("font_outline_color"));
	theme_cache.font_placeholder_color = get_theme_color(SNAME("font_placeholder_color"));
	theme_cache.caret_width = get_theme_constant(SNAME("caret_width"));
	theme_cache.caret_color = get_theme_color(SNAME("caret_color"));
	theme_cache.minimum_character_width = get_theme_constant(SNAME("minimum_character_width"));
	theme_cache.selection_color = get_theme_color(SNAME("selection_color"));
	theme_cache.clear_icon = get_theme_icon(SNAME("clear"));
	theme_cache.clear_button_color = get_theme_color(SNAME("clear_button_color"));
	theme_cache.clear_button_color_pressed = get_theme_color(SNAME("clear_button_color_pressed"));
	theme_cache.base_scale = get_theme_default_base_scale();
}
void LineEdit::_notification(int p_what) {