개발자도구로 확인한 결과, svg path에는 정상적으로 fill 속성이 채워져있었다. fill의 색상이 border와 동일했지만, svg path가 좀 더 연하게 보였다.
element 탭을 눈여겨보던 와중에, 바로위에 <defs> tag가 있는 것을 발견했다. id="campaign_svg__a"
defs 아래에도 path가 있었는데, css 선택자가 'svg path'였기 때문에 defs에 있는 path에도 fill 속성이 들어가있었다.
Icon에 해당하는 path는 mask 아래 use를 통해 들어가있었고, '<path d="M-2-2h32v32H-2z"></path>' 라는 정사각형 path와 mask 를 조합해서 Icon을 그리고 있는 것이었다.
svg mask(https://developer.mozilla.org/en-US/docs/Web/SVG/Element/mask)는 fill="white"일 때 mask가 덮고 있는 영역이 모두 보이고, fill="black" 일때는 mask가 덮고 있는 영역이 보이지 않게 된다. 즉, 정사각형(d="M-2-2h32v32H-2z") 영역 중에서, Icon에 해당하는 path만 보이고 나머지는 보이지 않도록 mask가 작동해야한다. 정사각형의 색상이 원래 원하던 색상이므로, Icon에 해당하는 path(즉, mask안에 있는 campaign_svg__a path) 의 fill 값은 'white'여야한다. 하지만 현재는 모든 path의 색상이 빨간색(white와 black의 중간)이므로 원하던 색상보다 조금 연하게 보였던 것이다.(완전히 보이지도(white) 숨겨지지도(black) 않은 중간 상태)
defs 아래에 있는 (mask용) path는 제외하고 g 태그 아래에 있는 path에만 원하는 색상을 적용하도록 수정했다.
svg g > path {
fill: ${({ text }) => text.default};
}