pub fn card_columns(avail_w: f64, min_card_w: f64, gap: f64) -> usize
How many columns of at least min_card_w fit in avail_w with gap between them. Always at least 1.
min_card_w
avail_w
gap