pub fn kv_get_value(data: &[String], key: &str) -> String
Returns value or empty string if not found (matching original forgiving behavior).