Review

## First commit

Simple cleanup and format.
I also formatted the CSS files guessing you wrote them. If they were imported, you can omit their formatting.

## Second commit

I renamed some variables overriding inherited ones.

About exceptions, I followed http://doc.nuxeo.com/display/CORG/Catching+Exceptions
I didn't change the current logic but you may want to manage them at the level of:
        try {
            runner.runUnrestricted();
        } catch (ClientException e) {
            throw WebException.wrap(e);
        }
Optionally not using WebException.wrap()...
On the email exception for instance, you could remove the specific try/catch and manage with MessagingException and AddressException in the upper wrapping try/catch.

About the EasyShareUnrestrictedRunner, I made it extend UnrestrictedSessionRunner and reuse its implementation instead of your custom runUnrestricted() method. Check I didn't break your logic.

Note you still have things like:
                            mailProps.put("mail.from", "mobrebski@nuxeo.com");
                            mailProps.put("mail.to", "mobrebski@nuxeo.com");

"Response.status(Status.NOT_FOUND).build()" is better than "Response.serverError().status(Response.Status.NOT_FOUND).build()" (looking at the implementation explains why).