Tim Grindlay
Mega Sage

Thanks! This worked really well! 

I also used Anil's method of using a macro with a label, but I found a drawback with that is it also shows the question/label, (which I'm unable to blank out) and the expand/collapse button.

I decided to use a widget, which is a new field you can specify on the variable. Initially I just used straight html, but a colleague helped to recreate the functionality of the macro. I switched back to a macro, and it now renders the instructions html on both SP and CMS correctly. Edit: We're on Madrid patch 3.

HTML Template

<div ng-bind-html="data.instructions"></div>

Client Script

function ($scope) {
	var c = this;
	
	// Variable sys_id
	$scope.data.sys_id = $scope.$parent.$parent.field.sys_id;
	c.server.update();
}

Server Script

if (input) {
	var gr = new GlideRecord('item_option_new');
	gr.get(input.sys_id);
	data.instructions = gr.getValue('instructions');
}