L’intestazione è passata dall’utilizzo di position: fixed a position: sticky (REFACTOR: Remove position fixed from the header and use sticky instea… · discourse/discourse@da5841d · GitHub) - questo è uno degli aggiornamenti che abbiamo potuto realizzare grazie alla rimozione del supporto per IE11.
La modifica risolve alcuni piccoli problemi che abbiamo avuto con l’intestazione fin dall’esistenza di Discourse… dal punto di vista funzionale, significa che invece di essere in una posizione fissa (e non correlata alla posizione di altri elementi nella pagina), l’intestazione fa ora parte del flusso naturale degli elementi della pagina… ed è per questo che non sono più necessari il padding e il margine dell’outlet principale.
Quando la modifica è stata inizialmente applicata, c’era un padding extra su mobile nel CSS predefinito, ma è stato corretto un giorno o due dopo… immagino che tu abbia aggiornato il sito nel giorno intercorrente tra la modifica iniziale e la correzione; se aggiorni di nuovo, il problema dovrebbe risolversi (in alternativa puoi aggiungere .mobile-view #main-outlet { padding-top: 0.25em; } se non vuoi effettuare un altro aggiornamento).
La tua soluzione con .d-header-wrap mi sembra sostenibile.