The route knows a cycle track when it sees one.

• The bike now reads the provision a road carries — a protected track, a shared bus corridor, a painted lane, a pictogram — and stops detouring around a boulevard whose provision is real. Which side of the road counts follows the country of the city in service.
• The minutes announced stop believing a share bike coasts downhill at 45 km/h: both profiles now hold the 25 km/h a city rider actually brakes at, and an electric journey is sure again of its best pair of stations.
• A text shared with a sentence around its address — "Meet here: 12 rue Nationale, Lille" — now finds the street it names. Where several could answer, up to five are offered, each row saying its municipality and how far it is.
• A question — "Delete this data?" among nine — survives the phone turning over instead of vanishing unanswered.
• A connection dying in the middle of a download is announced as a lost connection, not an "unreadable file" — and checking for updates answers it the same way.
• A file imported that is not a dataset is refused by saying what the file really is, and a dataset offered on the wrong line is told apart from a file that is none of them.
• Held sideways, the welcome page and the journey result share the width instead of losing the height, and the keyboard no longer takes the whole screen for its own copy of a search field.
• The offline banner no longer covers the buttons it stood over, and no longer promises a "last known availability" you never had.
• With no city chosen, the station list asks "Which city?" with the button that answers it, instead of inviting a refresh that fetches nothing.
• At the largest text sizes, a button's label is no longer cut by its own outline, and a journey's place names are no longer justified bank to bank.
• A figure and its unit stay on one line.
• The map describes itself in your language, not only in the ones its library speaks.
