The recipe I suggested works. Say you want to size file input and it's progress bar.
First the Browse button and a file name.
Pick this element in Firebug. It corresponds to the <input id="fileInp" class="shiny-bound-input" type="file">
You can change it by id (fileInp is how I called it in R) and write #fileInp{width:100%;}. "#" means id selection in CSS. In that case only this file input will resize.
If you want to change multiple elements at once you need do select a group. You can navigate to style tab in firebug and notice that it is set to auto in bootstrap.min.css input[type="file"]{width:auto;}
auto means it would fit its content. So if your filename is long, your control would be to wide and will go outside the sidebar. So we need to either set it to fixed px/em or in % of parent width.
Therefore, add input[type="file"]{width:100%;} to your styles to override the whole group, or input{width:100%;} to change all inputs.
Now the progress bar.
By default its width is set inline to 100% and the bar is located inside
<div id="fileInp_progress" class="progress progress-striped shiny-file-input-progress" style="visibility: visible;">
So you can either select it by id like #fileInp_progress:{width:80px;} to change individually, or by class with a (.progress) selector:
.progress{width:80px}
That's the easiest way to do it. If you want extra work, all the class names can be found in bootstrap.min.css and shiny.css, try to figure them out :)