The topic list is structured as a table, so I think it would be impossible to do this in CSS. You’d need to write a plugin that hijacks the topic-list template and the topic-list-item method to create <div>s instead. No small task.
EDIT: Hang on, you can’t display: inline-block a <tr> can you? that might work.
Yes it does work. Styling each card would be a bottomless pit of CSS despair, but I believe it can be done. Combine with the Topic List Previews plugin and you’d get an excerpt on each card.