Como justificar campos de entrada de formulário com css?

Eu tenho um formulário de entrada de inscrição simples (haml por brevidade aqui :)

%form#signup
  %fieldset
    %input.email{type:'text'}
    %br
    .name
      %input.first-name{type:'text'}
      %input.last-name{type:'text'}

e css:

#signup { width: 350px; }
fieldset { width: 100%; }
.name { width: 100%; }
.first-name { width: 30%; }
.last-name { /* occupy remainder of 'name' line */ }

Como estilizar isso para que o.email campo é a largura total dofieldset e a.last-name e / ou.first-name campos expandir para também preencher toda a largura dofieldset e com a borda direita alinhada com o.email campo?

Sim, pode ser mais fácil usar umtable aqui, mas existe uma maneira simples com css? Ele só precisa funcionar para navegadores compatíveis com css3 e degradar razoavelmente para o IE8 e 9.

ligação do violino:http://jsfiddle.net/3UP9H/1

questionAnswers(3)

yourAnswerToTheQuestion