igual un poco tarde, pero para los que tengas problemas como yo hasta el día de hoy para encontrar la solución tal vez sirva de ayuda.
Finalmente lo que he hecho para utilizar reglas @media ha sido utilizarlo en un fichero .css donde incluyo por ejemplo tus reglas. Guarda este fichero .css en la propia carpeta de estilos de VAADIN/themes/mytheme (puedes haberlo configurado con distinto nombre) y en tu clase UI inyectalo:
-Ejemplo 1: @StyleSheet("vaadin://themes/mytheme/myCss.css")
-Ejemplo2: incluirlo sobre el propio init por ejemplo UI.getPage().getStyles().add("rootToYoutStyle");