Sorry to bother you all again, but now my shader is rendering wrong. I did try to look around for an answer somewhere before asking another question, but I wasn’t able to. The shader appears purple when applied to a material. I am completely stumped and need help.
What shader looks like:

Shader Script:
Shader "Custom/WitnessFoliage" {
Properties {
_EdgeTransparency ("Edge Transparency", Range (0, 1)) = 0.3
_Cutoff ("Alpha Cutoff", Range (0, 1)) = 0.5
_Color ("Tint", Color) = (1, 1, 1, 1)
_MainTex ("Leaf Texture", 2D) = "white"
}
SubShader {
Tags {
"Queue"="AlphaTest"
"RenderType"="TransparentCutout"
}
Pass {
Name "ShadowCaster"
Tags { "LightMode"="ShadowCaster" }
ZWrite On
ZTest LEqual
CGPROGRAM
#pragma vertex vert
#pragma fragment frag
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
struct Attributes {
float4 vertex : POSITION;
float2 uv : TEXCOORD0;
};
struct Varying {
float2 uv : TEXCOORD0;
float4 vertex : SV_POSITION;
};
sampler2D _MainTex;
float4 _Color;
float _Cutoff;
float _EdgeTransparency;
Varying vert (Attributes v) {
Varying o;
o.vertex = TransformObjectToHClip(v.vertex);
o.uv = v.uv;
return o;
}
half4 frag (Varying i) : SV_Target {
half4 texColor = tex2D(_MainTex, i.uv);
half alpha = texColor.a * _EdgeTransparency;
clip(alpha - _Cutoff);
half4 finalColor = _Color * texColor;
finalColor.a = step(_Cutoff, alpha);
return finalColor;
}
ENDCG
}
Pass {
Name "RenderMesh"
Tags { "LightMode"="ForwardBase" }
HLSLPROGRAM
#pragma vertex vert
#pragma fragment frag
#include "Packages/com.unity.render-pipelines.universal/ShaderLibrary/Core.hlsl"
struct Attributes {
float4 vertex : POSITION;
float2 uv : TEXCOORD0;
};
struct Varyings {
float2 uv : TEXCOORD0;
float4 vertex : SV_POSITION;
};
sampler2D _MainTex;
float4 _Color;
float _Cutoff;
float _EdgeTransparency;
Varyings vert (Attributes IN) {
Varyings o;
o.vertex = TransformObjectToHClip(IN.vertex);
o.uv = IN.uv;
return o;
}
half4 frag (Varyings I) : SV_Target {
half4 texColor = tex2D(_MainTex, I.uv);
half alpha = texColor.a * _EdgeTransparency;
clip(alpha - _Cutoff);
half4 finalColor = _Color * texColor;
finalColor.a = step(_Cutoff, alpha);
return finalColor;
}
ENDHLSL
}
}
}