/* ============================================================================
* 서명전에 — TDS IconButton 컴포넌트
* · 아이콘만으로 동작하는 버튼. variant: clear / fill / border.
* - clear : 평소 배경 없음, 누를 때 bgColor 표시
* - fill : 평소 bgColor 표시, 누를 때 배경 사라짐 (반전 — TDS 계약)
* - border : 평소 테두리 + 배경 없음, 누를 때 bgColor 표시
*
* · 아이콘 소스는 두 가지 — `src` (URL) 또는 `name` (IOSIcon 위임).
* 둘 중 하나만 쓰며, 동시에 주면 src 가 우선되고 콘솔 경고.
* · `-mono` 로 끝나는 URL (예: `icon-search-bold-mono.svg`) 은 CSS
* mask-image + background-color 트릭으로 색을 입혀요. `color` prop 이
* 이때 비로소 효과를 가져요. 일반(컬러) URL 은 `` 로 그대로 표시.
* · `name` 은 우리 IOSIcon 라이브러리에 위임 — 우리 라이브러리 자체가
* 모두 currentColor 기반 mono 아이콘이라 `color` 가 그대로 적용돼요.
*
* · 접근성: `aria-label` 은 사실상 필수. 누락 시 콘솔 경고.
*
* · props (IconButtonProps):
* variant "clear" | "fill" | "border" (기본 "clear")
* src string — 아이콘 URL
* name string — IOSIcon 이름
* color string — 아이콘 색 (mono 일 때만 효과)
* bgColor string — 배경색. 기본 var(--tds-grey-opacity-100).
* fill = 기본 배경 / clear, border = pressed 배경.
* iconSize number — px. 기본 24.
* disabled boolean
* type "button" | "submit" | "reset" — 기본 "button"
* onClick (e) => void
* className, style, aria-label, aria-* ...