No. 1 city is Budapest (thermal pools, brilliant architecture, great public transport, pinball museum, great nightlife of all types, been 4 times)
Seville (just great, warm, beautiful city, alcazar, airport miles out, been once)
Prague (like bits of it, but not all of it, been 3 times)
Krakow (beautiful, cheap, great nightlife, great public transport, salt mines, been 4 times, not everyone's choice, but Auschwitz is not far away, defo 4 days worth of stuff to do)
I would also consider Warsaw (not Modlin airport it is over an hour away, been twice and it is has plenty to offer) Riga is nice enough but not sure about 3-4 days it is not that big, nor is Vilnius (although I personally love Vilnius), Porto is pretty but not a 4 day place unless you are going in summer and can get to the beaches.
There is something about the Milan to Venice route (easily done by train, cheaply, and they are regular) that is good. You get Milan (not for everyone, enjoyed it more on second visit than first, cemetery a must, then Bergamo (old town on the hill is gorgeous, area around the train station, not so much) then Lake Garda, then Padova (an acquired taste, but a bit of a hidden gem, esp, if you have a side trip to completely relax in Abano Terme's spa hotels) then onto Venice (another marmitey place, and expensive, but somewhere I have been that is "not like any other place" and for that it gets a vote. Good thing is you can sometimes fly into A and out of B.
Hope this helps, have a lovely time choosing and going x