<linearGradient gradientUnits="userSpaceOnUse" ...>
<svg class="inline-svg-icon" fill="url(#red-blue)"><use...>
по сути каждый элемент просто наследует этот атрибут fill. И по умолчанию градиент рисуется в границах элемента. Если же указать userSpaceOnUse, то градиент будет рисоваться в пределах текущего viewport.