Thank you for your reply! That's a very interesting idea!
I have one question though. Since colored coin is using some kind of input-output matching to trace colors. So bitcoins with the same color should be in the "same" position in inputs and outputs. Say the bitcoins in input0 is "red", then the bitcoins in output0 must also be "red". If I remember this colored coin mechanism correctly, then in the example, if Alice puts colored bitcoins in input0 and 1BTC in output0. Then that 1 BTC would become "red". I'm kind of confused how this problem is solved.
Balloon