CSS não funciona do Livraria-fx

O arquivo application.CSS do cap. 6 do livro “Explorando APIs e bibliotecas Java” não está sendo reconhecido pelo aplicativo. Segue abaixo o código do main e do arquivo css:

public class Main extends Application {

@Override
public void start(Stage primaryStage) { //esse é o ponto principal de toda aplicação feita em Java FX. Ele deve ser sobrescrito,
	//pois é abstrato da superclasse Application
	//Stage é o contêiner principal
	Group group = new Group(); //a tela é composta por dois elementos - um label e uma tabela
	
	Scene scene = new Scene(group, 690, 510); //cenário contendo os elementos, a largura e a algura em pixels
	scene.getStylesheets().add(getClass().getResource("application.css").toExternalForm());
	
	ObservableList<Produto> produtos = new ProdutoDAO().lista();
	
	
	TableView<Produto> tableView = new TableView<>(produtos);
		
	TableColumn<Produto,String> nomeColumn = new TableColumn<Produto, String>("Nome");
	nomeColumn.setMinWidth(180);
	nomeColumn.setCellValueFactory(new PropertyValueFactory<Produto, String>("nome"));
	
	TableColumn<Produto,String> descColumn = new TableColumn<Produto,String>("Descrição");
	descColumn.setMinWidth(230);
	descColumn.setCellValueFactory(new PropertyValueFactory<Produto,String>("descricao"));
	
	TableColumn<Produto,String> valorColumn = new TableColumn<Produto,String>("Valor");
	valorColumn.setMinWidth(60);
	valorColumn.setCellValueFactory(new PropertyValueFactory<Produto,String>("valor"));
	
	TableColumn<Produto,String> isbnColumn = new TableColumn<Produto,String>("ISBN");
	isbnColumn.setMinWidth(180);
	isbnColumn.setCellValueFactory(new PropertyValueFactory<Produto,String>("isbn"));
	
	tableView.getColumns().addAll(nomeColumn, descColumn, valorColumn, isbnColumn);
	
	final VBox vbox = new VBox(tableView);
	vbox.setId("vbox"); //identificador para uso do CSS
		
	Label label = new Label("Listagem de Livros");
	label.setId("label-listagem"); //identificador único da listagem para uso do CSS
	
	Label progresso = new Label(); //label para o exportador de CSV (mensagens de exportando... e concluído!)
	progresso.setId("label-progresso");
	progresso.setLayoutX(595);
	progresso.setLayoutY(25);

	Button button = new Button("Exportar CSV");
	button.setLayoutX(585); //a aplicação será direta no application.css
	button.setLayoutY(1);
		
		
	button.setOnAction(event -> {	
				
		Task<Void> task = new Task<Void>() { 
			@Override
			protected Void call() throws Exception {
				dormePorCincoSegundos();
				exportarEmCSV(produtos);
				return null;
			}				
		};
		
		task.setOnRunning(e -> progresso.setText("exportando...")); //utilizou o lambda no argumento pq EventHandler é uma interface funcional
		
		task.setOnSucceeded(e -> progresso.setText("concluído!")); //utilizou o lambda no argumento pq EventHandler é uma interface funcional
		
		new Thread(task).start();
	});

	double valorTotal = produtos.stream() //utilizando Stream
			.mapToDouble(Produto::getValor).sum();		
	Label labelFooter = new Label(String.format("Você tem R$%.2f em estoque, " + "com um total de %d produtos.", valorTotal, produtos.size()));
	labelFooter.setLayoutX(1); //a aplicação será direta no application.css
	labelFooter.setLayoutY(400);
	labelFooter.setId("label-footer");
			
	group.getChildren().addAll(label, vbox, button, progresso, labelFooter);

	primaryStage.setTitle("Sistema de livraria com Java FX");
	primaryStage.setScene(scene);
	primaryStage.show();
}

private void exportarEmCSV(ObservableList<Produto> produtos) {
	try {
		new Exportador().paraCSV(produtos); 
		
	}catch(IOException e) {
		System.out.println("Erro ao exportar: " + e);
	}
}

private void dormePorCincoSegundos() {
	try {
		Thread.sleep(5000);									
	}catch(InterruptedException e) {
		System.out.println("Ops, ocorreu um erro: " + e );
	}		
}

public static void main(String[] args) {
	launch(args); //método responsável por iniciar a aplicação
}

}

Agora o arquivo CSS:

#label-listagem{
-fx-font-size: 30px;
-fx-padding: 20 0 10 10;
}

#label-progreso{
-fx-translate-x: 485;
-fx-translate-y: 30;
}

.table-view{
-fx-min-width: 665;
-fx-max-width:
}

.table-column{
-fx-padding: 0 0 0 10;
}

#vbox{
-fx-padding: 70 0 0 10;
}

.button{
-fx-translate-x:595;
-fx-translate-y:25;
-fx-background-color: rgb(31, 149, 206);
-fx-text-fill: white;
}

.button:hover{
-fx-background-color:rgba(31, 149, 206, 0.71);
}

#label-footer{
-fx-font-size: 15px;
-fx-translate-x: 210;
-fx-translate-y: 480;
}