Mira, yo te recomendaría que quitaras el ancho del div botones, y que pongas text-align: center, y así se te ajusta todo como tu quieres, siendo el div botones de ancho variable.
Te ilustro con código:
Código CSS:
Ver original.botones {
height: 30px;
overflow: hidden;
border: 1px solid #444;
text-align: center;
}
De esta forma no deberías tener ningún problema, aunque quizás sería conveniente que quitaras el float left del link, porque te podría dar problemas en algunos navegadores... Ya que no hace falta porque se verá a la izquierda y el formulario a la derecha.
Un saludo y ya me comentas.