locking question around INSERT during UPDATE query
If there in an index on color then only the red colored rows will be locked. The rest of this answer assumes there is this index.

Another query looking to update the rows will either deadlock or lock wait, or success (with your query deadlocking or waiting). Depending on what locks are in place an in which order. Either way concurrent updates of the same row are prevented.

A new inserted red row will be delayed or deadlock under the concept of the isolation level being repeatable read (the default) and mysql having a gap lock covering red rows. A lower isolation level of read committed will allow an insert.

ref: isolation levels