body { -webkit-font-smoothing: antialiased; }

/* 브랜드 그라데이션 — 단일 시맨틱 토큰으로 표현 불가능한 멀티컬러 값, 예외 허용 */
.gradient-accent {
  background: linear-gradient(90deg, #fd4752 0%, #ff60cd 100%);
}

.step-bar-active {
  background: linear-gradient(90deg, #fd4752 0%, #ff60cd 100%);
}

/* 체크박스 아이콘 레이아웃 + ::after 체크마크 (색상은 Tailwind 클래스로 별도 적용) */
.check-icon {
  width: 24px;
  height: 24px;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-shrink: 0;
  transition: background 0.15s, border-color 0.15s;
}
/* checked 상태 그라데이션 — 브랜드 예외 */
.check-icon.checked {
  background: linear-gradient(90deg, #fd4752 0%, #ff60cd 100%);
  border-color: transparent;
}
.check-icon::after {
  content: '';
  width: 9px;
  height: 5px;
  border-left: 2px solid white;
  border-bottom: 2px solid white;
  transform: rotate(-45deg) translateY(-1px);
  opacity: 0;
}
.check-icon.checked::after {
  opacity: 1;
}
