I use the mental model of nested maps for "column order matters".
For example, an index "published, low_quality_probability, lang" is just a Map<date, Map<number, Map<lang, rowId>>> in my mental model.
These maps are ordered by the order the index possesses. That explains why column order matters and why one cannot skip columns and why it stops at range queries.
Just imagine getting a final rowId from these nested maps and you'll see why the index works for some queries and doesn't for others.