Transitions

Shared element

The trap: a press puts view-transition-name on the card inline and the page gives its hero the same name. That works once. The grid went into the history with the name on it, so after back the old card still carries it, and the next card you open makes two elements called hero: the browser refuses the transition (InvalidStateError in the panel). A cleanup on finished repairs the live page, never the copy in the history.