diff --git a/Partie_3_GUI/src/main/java/ch/hepia/GameManager.java b/Partie_3_GUI/src/main/java/ch/hepia/GameManager.java
index e9cb84ef2e0119fa4e54d093e98e85b0664e1e88..1da51ee89abd2c7091234f08fd355bbac95b6b12 100644
--- a/Partie_3_GUI/src/main/java/ch/hepia/GameManager.java
+++ b/Partie_3_GUI/src/main/java/ch/hepia/GameManager.java
@@ -31,8 +31,8 @@ public class GameManager {
     private ArrayList<Joueur> Players;
     private JoueurCroupier Dealer;
     private int ComputerPlayers;
-    private int Step;
     private boolean GameOver;
+    private int CurrentHand;
 
     public GameManager(int nbPlayer, int startMoney, int computerStrategy) {
 
@@ -90,7 +90,7 @@ public class GameManager {
     // Ask the player how much he wan't to bid
     public void StartTurn(Stage primaryStage) {
 
-        this.Step = 0;
+        this.CurrentHand = 0;
 
         Font font = Font.font("Courier New", FontWeight.BOLD, 25);
 
@@ -110,6 +110,38 @@ public class GameManager {
                 BackgroundPosition.CENTER,
                 new BackgroundSize(550, 400, false, false, true, true));
 
+        Image deckImage = new Image("file:img/deck.png");
+        ImageView deckView = new ImageView(deckImage);
+        deckView.setFitHeight(50);
+        deckView.setPreserveRatio(true);
+
+        Image moneyImage = new Image("file:img/money.png");
+        ImageView moneyView = new ImageView(moneyImage);
+        moneyView.setFitHeight(50);
+        moneyView.setPreserveRatio(true);
+
+        Text cardsInDeck = new Text(String.valueOf(this.Deck.GetNbCards()));
+        cardsInDeck.setFill(Color.WHITE);
+        cardsInDeck.setFont(Font.font("Courier New", FontWeight.BOLD, 20));
+
+        Text moneyPlayer = new Text(String.valueOf(this.Players.get(0).GetMoney()));
+        moneyPlayer.setFill(Color.WHITE);
+        moneyPlayer.setFont(Font.font("Courier New", FontWeight.BOLD, 20));
+
+        HBox deckBox = new HBox(5);
+        deckBox.getChildren().addAll(deckView, cardsInDeck);
+        deckBox.setAlignment(Pos.CENTER_LEFT);
+
+        HBox moneyBox = new HBox(5);
+        moneyBox.getChildren().addAll(moneyView, moneyPlayer);
+        moneyBox.setAlignment(Pos.CENTER_LEFT);
+
+        VBox moneyDeckInsuredBox = new VBox(10);
+        moneyDeckInsuredBox.getChildren().addAll(deckBox, moneyBox);
+        moneyDeckInsuredBox.setAlignment(Pos.CENTER_LEFT);
+
+        moneyDeckInsuredBox.setTranslateX(5);
+
         if (this.GameOver) {
 
             Button exitButton = createButtonWithText("Exit", "file:img/red_button.png", 200,
@@ -128,7 +160,7 @@ public class GameManager {
 
             StackPane root = new StackPane();
 
-            root.getChildren().add(layout);
+            root.getChildren().addAll(moneyDeckInsuredBox, layout);
 
             root.setBackground(new Background(background));
             layout.setBackground(new Background(backgroundPopup));
@@ -181,7 +213,7 @@ public class GameManager {
             layout.setMinSize(550, 400);
             layout.setMaxSize(550, 400);
 
-            root.getChildren().add(layout);
+            root.getChildren().addAll(moneyDeckInsuredBox, layout);
 
             root.setBackground(new Background(background));
             layout.setBackground(new Background(backgroundPopup));
@@ -212,7 +244,9 @@ public class GameManager {
 
                     // Set the Computer players bid for this turn
                     for (int x = 1; x <= this.ComputerPlayers; x++) {
-                        Players.get(x).SetBet(10, 0);
+                        if (!this.Players.get(x).IsGameOver()) {
+                            Players.get(x).SetBet(10, 0);
+                        }
                     }
 
                     layout.setVisible(false);
@@ -235,8 +269,6 @@ public class GameManager {
     // Ask the player for all his interactions with this cards
     public void PlayTurn(Stage primaryStage) {
 
-        this.Step = 0;
-
         Image backgroundImage = new Image("file:img/background.jpg");
         BackgroundImage background = new BackgroundImage(
                 backgroundImage,
@@ -286,7 +318,7 @@ public class GameManager {
         moneyPlayer.setFill(Color.WHITE);
         moneyPlayer.setFont(Font.font("Courier New", FontWeight.BOLD, 20));
 
-        Text insured = new Text(String.valueOf(this.Players.get(0).HasInsured()));
+        Text insured = new Text("0.0");
         insured.setFill(Color.WHITE);
         insured.setFont(Font.font("Courier New", FontWeight.BOLD, 20));
 
@@ -319,28 +351,45 @@ public class GameManager {
         dealerCardsStrengthBox.getChildren().addAll(dealerCardsBox, strengthDealer);
         dealerCardsStrengthBox.setAlignment(Pos.TOP_CENTER);
 
-        HBox playerCardsBox = new HBox(-70);
-        playerCardsBox.getChildren().addAll(playerCard1View, playerCard2View);
-        playerCardsBox.setAlignment(Pos.TOP_CENTER);
+        HBox[] playerCardsBox = new HBox[3];
+
+        Text[] strengthHand = new Text[3];
+
+        Text[] betHand = new Text[3];
+
+        VBox[] playerCardsStrengthBox = new VBox[3];
+
+        for (int x = 0; x < 3; x++) {
+            strengthHand[x] = new Text();
+            strengthHand[x].setTextAlignment(TextAlignment.CENTER);
+            strengthHand[x].setFill(Color.WHITE);
+            strengthHand[x].setFont(Font.font("Courier New", FontWeight.BOLD, 30));
+
+            playerCardsBox[x] = new HBox();
+            playerCardsBox[x] = new HBox(-70);
+            playerCardsBox[x].setAlignment(Pos.TOP_CENTER);
+
+            betHand[x] = new Text();
+            betHand[x].setFill(Color.WHITE);
+            betHand[x].setTextAlignment(TextAlignment.CENTER);
+            betHand[x].setFont(Font.font("Courier New", FontWeight.BOLD, 25));
+
+            playerCardsStrengthBox[x] = new VBox(20);
+            playerCardsStrengthBox[x].setAlignment(Pos.TOP_CENTER);
+
+            playerCardsStrengthBox[x].getChildren().addAll(strengthHand[x], playerCardsBox[x], betHand[x]);
+        }
 
-        Text strengthHand1 = new Text();
         if (this.Players.get(0).GetStrength(0) == 99) {
-            strengthHand1.setText("BlackJack");
+            strengthHand[0].setText("BlackJack");
+            strengthHand[0].setFill(Color.GOLD);
         } else {
-            strengthHand1.setText(String.valueOf(this.Players.get(0).GetStrength(0)));
+            strengthHand[0].setText(String.valueOf(this.Players.get(0).GetStrength(0)));
         }
-        strengthHand1.setFill(Color.WHITE);
-        strengthHand1.setTextAlignment(TextAlignment.CENTER);
-        strengthHand1.setFont(Font.font("Courier New", FontWeight.BOLD, 30));
 
-        Text betHand1 = new Text(String.valueOf(this.Players.get(0).GetBet(0)));
-        betHand1.setFill(Color.WHITE);
-        betHand1.setTextAlignment(TextAlignment.CENTER);
-        betHand1.setFont(Font.font("Courier New", FontWeight.BOLD, 25));
+        playerCardsBox[0].getChildren().addAll(playerCard1View, playerCard2View);
 
-        VBox playerCardsStrengthBox = new VBox(20);
-        playerCardsStrengthBox.getChildren().addAll(strengthHand1, playerCardsBox, betHand1);
-        playerCardsStrengthBox.setAlignment(Pos.TOP_CENTER);
+        betHand[0].setText(String.valueOf(this.Players.get(0).GetBet(0)));
 
         VBox computers = new VBox(15);
         computers.setAlignment(Pos.CENTER_RIGHT);
@@ -378,21 +427,29 @@ public class GameManager {
         HBox actions = new HBox(10);
         actions.setAlignment(Pos.BOTTOM_CENTER);
 
+        Button insureButton = createButtonWithText("Insure", "file:img/red_button.png", 175, 4.0);
+        Button splitButton = createButtonWithText("Split", "file:img/red_button.png", 175, 4.0);
+        Button doubleButton = createButtonWithText("Double", "file:img/gray_button.png", 175, 4.0);
+        Button hitButton = createButtonWithText("Hit", "file:img/light_green_button.png", 175, 4.0);
+        Button keepButton = createButtonWithText("Stand", "file:img/light_blue_button.png", 175, 4.0);
+
         // Insurance
-        // Can only insure if it's the first thing that the players does
-        // AND
         // That he hasn't already insured during this round
-        if (this.Step == 0 && this.Dealer.HasOnlyAs() && !this.Players.get(0).HasInsured()) {
-            Button insureButton = createButtonWithText("Insure", "file:img/red_button.png", 175, 4.0);
+        if (this.Dealer.HasOnlyAs() && !this.Players.get(0).HasInsured()) {
+
             actions.getChildren().add(insureButton);
 
             insureButton.setOnAction(event -> {
                 this.Players.get(0).Insure();
-                insured.setText(String.valueOf(this.Players.get(0).HasInsured()));
+                insured.setText(String.valueOf(this.Players.get(0).GetInsured()));
+                moneyPlayer.setText(String.valueOf(this.Players.get(0).GetMoney()));
                 actions.getChildren().remove(insureButton);
             });
         }
 
+        HBox playerCardBox = new HBox(10);
+        playerCardBox.setAlignment(Pos.BOTTOM_CENTER);
+
         // Split
         // Can only split if this hand can be split (if it wasn't already split AND if
         // the 2 cards have the same strength)
@@ -400,10 +457,133 @@ public class GameManager {
         // if we have less that 3 hands already (Max 2 splits)
         // AND
         // if the player has enough money
-        if (this.Players.get(0).CanSplit(0) && this.Players.get(0).GetNbHands() < 3
-                && this.Players.get(0).GetBet(0) <= this.Players.get(0).GetMoney()) {
-            Button splitButton = createButtonWithText("Split", "file:img/red_button.png", 175, 4.0);
+        if (this.Players.get(0).CanSplit(this.CurrentHand) && this.Players.get(0).GetNbHands() < 3
+                && this.Players.get(0).GetBet(this.CurrentHand) <= this.Players.get(0).GetMoney()) {
+
             actions.getChildren().add(splitButton);
+
+            splitButton.setOnAction(event -> {
+
+                this.Players.get(0).Split(this.CurrentHand, Deck);
+                moneyPlayer.setText(String.valueOf(this.Players.get(0).GetMoney()));
+
+                playerCardsBox[this.CurrentHand].getChildren().clear();
+
+                Image Card1 = new Image("file:img/" + this.Players.get(0).GetCard(this.CurrentHand, 0) + ".png");
+                Image Card2 = new Image("file:img/" + this.Players.get(0).GetCard(this.CurrentHand, 1) + ".png");
+
+                ImageView Card1View = new ImageView(Card1);
+                Card1View.setFitHeight(150);
+                Card1View.setPreserveRatio(true);
+
+                ImageView Card2View = new ImageView(Card2);
+                Card2View.setFitHeight(150);
+                Card2View.setPreserveRatio(true);
+
+                playerCardsBox[this.CurrentHand].getChildren().addAll(Card1View, Card2View);
+
+                playerCardsBox[this.Players.get(0).GetNbHands() - 1].getChildren().clear();
+
+                Image Card3 = new Image(
+                        "file:img/" + this.Players.get(0).GetCard(this.Players.get(0).GetNbHands() - 1, 0) + ".png");
+                Image Card4 = new Image(
+                        "file:img/" + this.Players.get(0).GetCard(this.Players.get(0).GetNbHands() - 1, 1) + ".png");
+
+                ImageView Card3View = new ImageView(Card3);
+                Card3View.setFitHeight(150);
+                Card3View.setPreserveRatio(true);
+
+                ImageView Card4View = new ImageView(Card4);
+                Card4View.setFitHeight(150);
+                Card4View.setPreserveRatio(true);
+
+                playerCardsBox[this.Players.get(0).GetNbHands() - 1].getChildren().addAll(Card3View, Card4View);
+
+                if (this.Players.get(0).GetStrength(this.CurrentHand) == 99) {
+                    strengthHand[this.CurrentHand].setText("BlackJack");
+                    strengthHand[this.CurrentHand].setFill(Color.GOLD);
+                } else {
+                    strengthHand[this.CurrentHand]
+                            .setText(String.valueOf(this.Players.get(0).GetStrength(this.CurrentHand)));
+                }
+
+                if (this.Players.get(0).GetStrength(this.Players.get(0).GetNbHands() - 1) == 99) {
+                    strengthHand[this.Players.get(0).GetNbHands() - 1].setText("BlackJack");
+                    strengthHand[this.Players.get(0).GetNbHands() - 1].setFill(Color.GOLD);
+                } else {
+                    strengthHand[this.Players.get(0).GetNbHands() - 1]
+                            .setText(String
+                                    .valueOf(this.Players.get(0).GetStrength(this.Players.get(0).GetNbHands() - 1)));
+                }
+
+                betHand[this.Players.get(0).GetNbHands() - 1]
+                        .setText(String.valueOf(this.Players.get(0).GetBet(this.Players.get(0).GetNbHands() - 1)));
+
+                for (int x = 0; x < this.Players.get(0).GetNbHands(); x++) {
+                    playerCardsStrengthBox[x].setTranslateY(0);
+                }
+
+                playerCardsStrengthBox[this.CurrentHand].setTranslateY(-20);
+
+                playerCardBox.getChildren().add(playerCardsStrengthBox[this.Players.get(0).GetNbHands() - 1]);
+
+                if (actions.getChildren().contains(insureButton)) {
+                    actions.getChildren().remove(insureButton);
+                }
+
+                if (actions.getChildren().contains(doubleButton)) {
+                    actions.getChildren().remove(doubleButton);
+                }
+
+                if (this.Players.get(0).GetNbHands() == 3 || !this.Players.get(0).CanSplit(this.CurrentHand)) {
+                    actions.getChildren().remove(splitButton);
+                }
+
+            });
+        }
+
+        // Double
+        // Can only double if this hand wasn't already doubled
+        // AND
+        // if the hand has only 2 cards
+        // AND
+        // if the hand is not a BlackJack
+        // AND
+        // if the player has enough money
+        if (!this.Players.get(0).HasDoubled(this.CurrentHand)
+                && this.Players.get(0).GetNbCards(this.CurrentHand) == 2
+                && this.Players.get(0).GetStrength(this.CurrentHand) != 99
+                && this.Players.get(0).GetBet(this.CurrentHand) <= this.Players.get(0).GetMoney()) {
+
+            actions.getChildren().add(doubleButton);
+
+            doubleButton.setOnAction(event -> {
+
+                actions.getChildren().clear();
+                actions.getChildren().add(keepButton);
+
+                this.Players.get(0).Double(this.CurrentHand, Deck);
+
+                Image playerCard = new Image(
+                        "file:img/" + this.Players.get(0).GetCard(this.CurrentHand,
+                                this.Players.get(0).GetNbCards(this.CurrentHand) - 1) + ".png");
+                ImageView playerCardView = new ImageView(playerCard);
+                playerCardView.setFitHeight(150);
+                playerCardView.setPreserveRatio(true);
+
+                playerCardsBox[this.CurrentHand].getChildren().add(playerCardView);
+                if (this.Players.get(0).GetStrength(this.CurrentHand) > 21) {
+                    strengthHand[this.CurrentHand].setText("BUSTED");
+                    strengthHand[this.CurrentHand].setFill(Color.RED);
+                } else {
+                    strengthHand[this.CurrentHand]
+                            .setText(String.valueOf(this.Players.get(0).GetStrength(this.CurrentHand)));
+                }
+
+                betHand[0].setText(String.valueOf(this.Players.get(0).GetBet(this.CurrentHand)));
+                moneyPlayer.setText(String.valueOf(this.Players.get(0).GetMoney()));
+
+            });
         }
 
         // Draw a Card (Hit)
@@ -414,15 +594,51 @@ public class GameManager {
         // if the player has a BlackJack
         // AND
         // if the strength of the hand is more than 21
-        if (!(this.Players.get(0).HasDoubled(0) && this.Players.get(0).GetNbCards(0) == 3)
-                && !(this.Players.get(0).HasSplit(0) && this.Players.get(0).GetCardStrength(0, 0) == 1)
-                && this.Players.get(0).GetStrength(0) < 21) {
-            Button hitButton = createButtonWithText("Hit", "file:img/light_green_button.png", 175, 4.0);
+        if (!(this.Players.get(0).HasDoubled(this.CurrentHand) && this.Players.get(0).GetNbCards(this.CurrentHand) == 3)
+                && !(this.Players.get(0).HasSplit(this.CurrentHand)
+                        && this.Players.get(0).GetCardStrength(this.CurrentHand, 0) == 1)
+                && this.Players.get(0).GetStrength(this.CurrentHand) < 21) {
             actions.getChildren().add(hitButton);
+
+            hitButton.setOnAction(event -> {
+
+                if (actions.getChildren().contains(splitButton)) {
+                    actions.getChildren().remove(splitButton);
+                }
+
+                if (actions.getChildren().contains(insureButton)) {
+                    actions.getChildren().remove(insureButton);
+                }
+
+                if (actions.getChildren().contains(doubleButton)) {
+                    actions.getChildren().remove(doubleButton);
+                }
+
+                this.Players.get(0).DrawCard(this.CurrentHand, Deck);
+
+                Image playerCard = new Image(
+                        "file:img/" + this.Players.get(0).GetCard(this.CurrentHand,
+                                this.Players.get(0).GetNbCards(this.CurrentHand) - 1) + ".png");
+                ImageView playerCardView = new ImageView(playerCard);
+                playerCardView.setFitHeight(150);
+                playerCardView.setPreserveRatio(true);
+
+                playerCardsBox[this.CurrentHand].getChildren().add(playerCardView);
+                if (this.Players.get(0).GetStrength(this.CurrentHand) > 21) {
+                    strengthHand[this.CurrentHand].setText("BUSTED");
+                    strengthHand[this.CurrentHand].setFill(Color.RED);
+
+                    actions.getChildren().clear();
+                    actions.getChildren().add(keepButton);
+                } else {
+                    strengthHand[this.CurrentHand]
+                            .setText(String.valueOf(this.Players.get(0).GetStrength(this.CurrentHand)));
+                }
+
+            });
         }
 
         // Keep (Stand)
-        Button keepButton = createButtonWithText("Stand", "file:img/light_blue_button.png", 175, 4.0);
         actions.getChildren().add(keepButton);
 
         StackPane deckMoney = new StackPane();
@@ -436,16 +652,43 @@ public class GameManager {
         StackPane computer = new StackPane();
 
         keepButton.setOnAction(event -> {
-            if (this.Players.get(0).GetNbHands() == 1) {
+
+            if (this.CurrentHand == this.Players.get(0).GetNbHands() - 1) {
                 actions.getChildren().clear();
                 ResolveTurn(primaryStage, cardsInDeck, dealerCardsBox, strengthDealer, computers, actions, player,
-                        moneyPlayer);
+                        moneyPlayer, insured);
+            } else {
+                actions.getChildren().remove(keepButton);
+
+                if (actions.getChildren().contains(hitButton)) {
+                    actions.getChildren().remove(hitButton);
+                }
+
+                this.CurrentHand++;
+
+                if (this.Players.get(0).GetNbHands() < 3 && this.Players.get(0).CanSplit(this.CurrentHand)) {
+                    actions.getChildren().add(splitButton);
+                }
+
+                if (this.Players.get(0).GetStrength(this.CurrentHand) < 21) {
+                    actions.getChildren().add(hitButton);
+                }
+
+                actions.getChildren().add(keepButton);
+
+                for (int x = 0; x < this.Players.get(0).GetNbHands(); x++) {
+                    playerCardsStrengthBox[x].setTranslateY(0);
+                }
+
+                playerCardsStrengthBox[this.CurrentHand].setTranslateY(-20);
             }
 
         });
 
+        playerCardBox.getChildren().add(playerCardsStrengthBox[0]);
+
         dealer.getChildren().add(dealerCardsStrengthBox);
-        player.getChildren().addAll(playerCardsStrengthBox);
+        player.getChildren().addAll(playerCardBox);
         action.getChildren().addAll(actions);
         deckMoney.getChildren().add(moneyDeckInsuredBox);
         computer.getChildren().add(computers);
@@ -461,38 +704,6 @@ public class GameManager {
 
         root.getChildren().addAll(deckMoney, dealer, player, computer, action);
 
-        // Hit
-        // if (choice == 'h') {
-        // this.Players.get(0).DrawCard(HandNb, this.Deck);
-        // // Go back 1 hand to stay on the same hand in the for loop
-        // HandNb--;
-        // }
-        // Split
-        // else if (choice == 's') {
-        // this.Players.get(0).Split(HandNb, this.Deck);
-        // // Go back 1 hand to stay on the same hand in the for loop
-        // HandNb--;
-        // }
-        // Double
-        // else if (choice == 'd') {
-        // this.Players.get(0).Double(HandNb, this.Deck);
-        // // Go back 1 hand to stay on the same hand in the for loop
-        // HandNb--;
-        // }
-
-        // Step++;
-
-        // Insure
-        // if (choice == 'i') {
-        // this.Players.get(0).Insure();
-        // EndTurn = false;
-        // }
-        // If this point is reached (and not because of the insurance), all hands have
-        // been played
-        // else {
-        // EndTurn = true;
-        // }
-
         Scene scene_4 = new Scene(root, 1400, 800);
 
         primaryStage.setScene(scene_4);
@@ -503,7 +714,7 @@ public class GameManager {
     // Do all the math for the player gains and losses
     // Check if the player can continue et prepare for the next round
     public void ResolveTurn(Stage primaryStage, Text cardsInDeck, HBox dealerCardsBox, Text strengthDealer,
-            VBox computers, HBox actions, StackPane player, Text moneyPlayer) {
+            VBox computers, HBox actions, StackPane player, Text moneyPlayer, Text insured) {
 
         // Computer Players take turn to play
         for (int x = 1; x <= this.ComputerPlayers; x++) {
@@ -726,8 +937,14 @@ public class GameManager {
 
         if (this.Dealer.GetStrength(0) == 99) {
             strengthDealer.setText("BlackJack");
+            strengthDealer.setFill(Color.GOLD);
         } else {
-            strengthDealer.setText(String.valueOf(this.Dealer.GetStrength(0)));
+            if (this.Dealer.GetStrength(0) > 21) {
+                strengthDealer.setText("BUSTED");
+                strengthDealer.setFill(Color.RED);
+            } else {
+                strengthDealer.setText(String.valueOf(this.Dealer.GetStrength(0)));
+            }
         }
 
         dealerCardsBox.getChildren().clear();
@@ -826,21 +1043,42 @@ public class GameManager {
         for (int HandNb = 0; HandNb < this.Players.get(0).GetNbHands(); HandNb++) {
 
             hand[HandNb] = new VBox(20);
+            HBox cards = new HBox(-70);
             hand[HandNb].setAlignment(Pos.TOP_CENTER);
 
             Text strengthHand = new Text();
+            strengthHand.setFill(Color.WHITE);
+
             if (this.Players.get(0).GetStrength(HandNb) == 99) {
                 strengthHand.setText("BlackJack");
+                strengthHand.setFill(Color.GOLD);
             } else {
-                strengthHand.setText(String.valueOf(this.Players.get(0).GetStrength(0)));
+                if (this.Players.get(0).GetStrength(HandNb) > 21) {
+                    strengthHand.setText("BUSTED");
+                    strengthHand.setFill(Color.RED);
+                } else {
+                    strengthHand.setText(String.valueOf(this.Players.get(0).GetStrength(HandNb)));
+                }
             }
-            strengthHand.setFill(Color.WHITE);
+
             strengthHand.setTextAlignment(TextAlignment.CENTER);
             strengthHand.setFont(Font.font("Courier New", FontWeight.BOLD, 30));
 
+            ImageView[] card = new ImageView[this.Players.get(0).GetNbCards(HandNb)];
+            for (int z = 0; z < this.Players.get(0).GetNbCards(HandNb); z++) {
+
+                Image cardImage = new Image("file:img/" + this.Players.get(0).GetCard(HandNb, z) + ".png");
+
+                card[z] = new ImageView(cardImage);
+                card[z].setFitHeight(150);
+                card[z].setPreserveRatio(true);
+
+                cards.getChildren().add(card[z]);
+            }
+
             Text betHand = new Text();
             betHand.setTextAlignment(TextAlignment.CENTER);
-            betHand.setFont(Font.font("Courier New", FontWeight.BOLD, 30));
+            betHand.setFont(Font.font("Courier New", FontWeight.BOLD, 25));
 
             // If the player is Busted (strength > 21 but not BlackJack (99))
             if (this.Players.get(0).GetStrength(HandNb) > 21 && this.Players.get(0).GetStrength(HandNb) != 99) {
@@ -887,7 +1125,7 @@ public class GameManager {
                 betHand.setFill(Color.LIGHTGREEN);
             }
 
-            hand[HandNb].getChildren().addAll(strengthHand, betHand);
+            hand[HandNb].getChildren().addAll(strengthHand, cards, betHand);
 
             hands.getChildren().add(hand[HandNb]);
         }
@@ -902,6 +1140,13 @@ public class GameManager {
             if (this.Dealer.GetStrength(0) == 99) {
 
                 this.Players.get(0).AddMoney(this.Players.get(0).GetInsured() * 3);
+
+                insured.setText("+" + String.valueOf(this.Players.get(0).GetInsured() * 3));
+                insured.setFill(Color.LIGHTGREEN);
+
+            } else {
+                insured.setText(String.valueOf(this.Players.get(0).GetInsured() * -1));
+                insured.setFill(Color.RED);
             }
         }
 
diff --git a/Partie_3_GUI/target/classes/ch/hepia/BlackjackGUI$1.class b/Partie_3_GUI/target/classes/ch/hepia/BlackjackGUI$1.class
index 9ff25729f7579aedf8ab30375c5973a07af7109e..dfb5471cba8b04ad6653a41ecd555366c06feec5 100644
Binary files a/Partie_3_GUI/target/classes/ch/hepia/BlackjackGUI$1.class and b/Partie_3_GUI/target/classes/ch/hepia/BlackjackGUI$1.class differ
diff --git a/Partie_3_GUI/target/classes/ch/hepia/BlackjackGUI.class b/Partie_3_GUI/target/classes/ch/hepia/BlackjackGUI.class
index 8ee7e93d237978efad496f9ce73fb34732281f78..6fe366d35383b346eafd305a8fc28ad162058b8a 100644
Binary files a/Partie_3_GUI/target/classes/ch/hepia/BlackjackGUI.class and b/Partie_3_GUI/target/classes/ch/hepia/BlackjackGUI.class differ
diff --git a/Partie_3_GUI/target/classes/ch/hepia/GameManager$1.class b/Partie_3_GUI/target/classes/ch/hepia/GameManager$1.class
index cf32a393bd62ad299b967bad90ea50167be45046..35904b8df7ab6a76c55e5d1e7abc30e5863ea0d3 100644
Binary files a/Partie_3_GUI/target/classes/ch/hepia/GameManager$1.class and b/Partie_3_GUI/target/classes/ch/hepia/GameManager$1.class differ
diff --git a/Partie_3_GUI/target/classes/ch/hepia/GameManager.class b/Partie_3_GUI/target/classes/ch/hepia/GameManager.class
index 5e98dbb8e06ebf2f79381a08b225403e58f64803..52570a3f5d1db32a7353a8a3b3e82ef9cf5ff9ac 100644
Binary files a/Partie_3_GUI/target/classes/ch/hepia/GameManager.class and b/Partie_3_GUI/target/classes/ch/hepia/GameManager.class differ