I think the answer is that green/red on trade.kraken don't mean buy/sell. Instead green means higher than last price and red means lower (and color doesn't change if price is the same as last price).
this is correct. green means the price is higher, red means lower. color remains the same if it's equal.
the reason for this is Cryptowatch (trade.kraken.com engine) was originally designed to work with as many different exchanges as possible, and most exchanges don't say if a trade was a bid or ask in their public API.