Как создать прозрачную сцену JavaFX с тенями только на границе?

Я прочитал много вопросов о прозрачности и тенях, но не думаю, что видел эту конкретную проблему.

Я могу успешно создать окно с прозрачностью и тенью, но не могу понять, как заставить цветную тень не влиять на цвет прозрачности.

Например, следующий код создает окно с серой прозрачностью и красной тенью. Тем не менее, красный цвет также влияет на прозрачность главного окна, но я хочу, чтобы тень выходила за границы окон.

Итак, что я получаю:

Но то, что я хочу, это: (отредактированное вручную изображение)

Есть идеи, как это сделать?

Мой тестовый код:

@Override
public void start(Stage stage) throws Exception {
    stage.initStyle(StageStyle.TRANSPARENT);

    StackPane stackPane = new StackPane();

    stackPane.setStyle(
        "-fx-background-color: rgba(255, 255, 255, 0.5);" +
        "-fx-effect: dropshadow(gaussian, red, 50, 0, 0, 0);" +
        "-fx-background-insets: 50;"
    );

    Scene scene = new Scene(stackPane, 450, 450);
    scene.setFill(Color.TRANSPARENT);

    stage.setScene(scene);

    stage.show();
}

Ответы на вопрос(1)

Ваш ответ на вопрос