Ciao, chiaramente si può risolvere in svariati modi ma in genere ti basta applicare correttamente qualche float. Ho visto che hai cercato di farlo applicando float:right all'elemento form ma il problema è che questo elemento sta, a sua volta, dentro un elemento li, per cui il float andrebbe applicato a quest'ultimo.

Il tuo codice presenta inoltre alcuni errori di sintassi:
body header {
top:0 px;
Quel "px" genera un errore. Le unità di misura si scrivono sempre adiacenti ai relativi valori, senza lasciare spazi. In questo caso, dato che il valore è 0, puoi anche omettere l'unità di misura.

/*border: solid yellow;*/

height: 20px;
weight: 30px;
La proprietà weight non è una proprietà valida e genera un errore. Presumo volessi scrivere width.


NOTA: quando posti del codice sul forum è opportuno racchiuderlo tra gli appositi tag di formattazione (vedi regolamento di sezione).