Shared normalization and lookup helpers for recipe override metadata.
@spec merge_override_maps(map() | keyword() | term(), map() | keyword() | term()) :: map()
@spec normalize_empty_state(map() | keyword() | binary() | term()) :: map()
@spec normalize_override(term()) :: map()
@spec normalize_override_map(map() | keyword() | term()) :: map()
@spec normalize_recipe_overrides(map() | keyword() | term()) :: map()
@spec recipe_class(map() | struct() | nil, atom()) :: String.t() | nil
@spec recipe_hidden?(map() | struct() | nil, atom()) :: boolean()