diff --git a/PlayWall/src/main/java/de/tobias/playpad/layout/desktop/pad/DesktopPadView.java b/PlayWall/src/main/java/de/tobias/playpad/layout/desktop/pad/DesktopPadView.java
index 4a4468d3159e874ae5d2ec9b7a7538f3082eb861..1f22e8a009f5d727ee47fbb9a57377ebe1631963 100644
--- a/PlayWall/src/main/java/de/tobias/playpad/layout/desktop/pad/DesktopPadView.java
+++ b/PlayWall/src/main/java/de/tobias/playpad/layout/desktop/pad/DesktopPadView.java
@@ -92,7 +92,7 @@ public class DesktopPadView implements IPadView {
 
 		infoBox = new PadHBox(5);
 
-		preview = new HBox();
+		preview = PadHBox.deepStyled(STYLE_CLASS_PAD_TITLE, STYLE_CLASS_PAD_TITLE_INDEX);
 		HBox.setHgrow(preview, Priority.ALWAYS);
 		VBox.setVgrow(preview, Priority.ALWAYS);
 
@@ -148,8 +148,6 @@ public class DesktopPadView implements IPadView {
 					previewContent = connect.getPadContentPreview(pad, preview);
 					Node node = previewContent.getNode();
 
-					node.getStyleClass().addAll("pad-title", "pad" + pad.getPadIndex() + "-title");
-
 					// Copy Pseudoclasses
 					for (PseudoClass pseudoClass : superRoot.getPseudoClassStates()) {
 						node.pseudoClassStateChanged(pseudoClass, true);
@@ -163,11 +161,6 @@ public class DesktopPadView implements IPadView {
 			}
 		}
 		EmptyPadView view = new EmptyPadView(preview);
-		if (pad != null) {
-			view.getStyleClass().addAll("pad-title", "pad" + pad.getPadIndex() + "-title");
-		} else {
-			view.getStyleClass().addAll("pad-title");
-		}
 		preview.getChildren().setAll(view);
 	}
 
@@ -195,10 +188,6 @@ public class DesktopPadView implements IPadView {
 		this.indexLabel.setText(text);
 	}
 
-	ProgressBar getPlayBar() {
-		return playBar;
-	}
-
 	@Override
 	public void pseudoClassState(PseudoClass pseudoClass, boolean active) {
 		NodeWalker.getAllNodes(getRootNode())
@@ -247,8 +236,7 @@ public class DesktopPadView implements IPadView {
 		triggerLabel.setVisible(hasTriggerItems);
 	}
 
-	void
-	setTime(String time) {
+	void setTime(String time) {
 		if (time == null) {
 			timeLabel.setText("");
 		} else {
@@ -295,8 +283,6 @@ public class DesktopPadView implements IPadView {
 
 	@Override
 	public void applyStyleClasses(PadIndex index) {
-		preview.getChildren().forEach(i -> i.getStyleClass().addAll("pad-title", "pad" + index + "-title"));
-
 		NodeWalker.getAllNodes(getRootNode())
 				.stream()
 				.filter(node -> node instanceof PadIndexable)
@@ -305,8 +291,6 @@ public class DesktopPadView implements IPadView {
 
 	@Override
 	public void removeStyleClasses() {
-		preview.getChildren().forEach(i -> i.getStyleClass().removeIf(c -> c.startsWith("pad")));
-
 		NodeWalker.getAllNodes(getRootNode())
 				.stream()
 				.filter(node -> node instanceof PadIndexable)
diff --git a/PlayWall/src/main/java/de/tobias/playpad/layout/desktop/pad/DesktopPadViewController.java b/PlayWall/src/main/java/de/tobias/playpad/layout/desktop/pad/DesktopPadViewController.java
index 2c1973d80cd16a167511c4e3f0f371e6fa16e899..75cabd29dc71b2b324f49c3d25d6d0da935b0390 100644
--- a/PlayWall/src/main/java/de/tobias/playpad/layout/desktop/pad/DesktopPadViewController.java
+++ b/PlayWall/src/main/java/de/tobias/playpad/layout/desktop/pad/DesktopPadViewController.java
@@ -326,7 +326,7 @@ public class DesktopPadViewController implements IPadViewController, EventHandle
 			padView.getSettingsButton().setDisable(true);
 		}
 
-		// Alles Desktivieren, wenn nicht Play Mode
+		// Alles Deaktivieren, wenn nicht Play Mode
 		if (connect.getEditMode() != DesktopEditMode.PLAY) {
 			padView.getPlayButton().setDisable(true);
 			padView.getPauseButton().setDisable(true);
diff --git a/PlayWall/src/main/java/de/tobias/playpad/view/pad/PadHBox.java b/PlayWall/src/main/java/de/tobias/playpad/view/pad/PadHBox.java
index d82de13a2314ef70b0bf4add883442ea9249ebb1..3e0c2cdf37be559da5436023d84f375f701aa7e1 100644
--- a/PlayWall/src/main/java/de/tobias/playpad/view/pad/PadHBox.java
+++ b/PlayWall/src/main/java/de/tobias/playpad/view/pad/PadHBox.java
@@ -1,17 +1,46 @@
 package de.tobias.playpad.view.pad;
 
 import de.tobias.playpad.project.page.PadIndex;
+import javafx.beans.InvalidationListener;
 import javafx.beans.property.ObjectProperty;
 import javafx.beans.property.SimpleObjectProperty;
+import javafx.scene.Node;
 import javafx.scene.layout.HBox;
 
+import java.util.LinkedList;
+import java.util.List;
+
 public class PadHBox extends HBox implements PadIndexable {
 
 	private final ObjectProperty<PadIndex> indexProperty;
+	private final List<StyleIndexListener> styleListeners = new LinkedList<>();
+
+	public static PadHBox deepStyled(String... styleClasses) {
+		PadHBox padHBox = new PadHBox(styleClasses);
+
+		padHBox.getChildren().addListener((InvalidationListener) observable -> {
+			for (StyleIndexListener listener : padHBox.styleListeners) {
+				padHBox.indexProperty.removeListener(listener);
+			}
+
+			padHBox.styleListeners.clear();
+
+			for (Node child : padHBox.getChildren()) {
+				StyleIndexListener listener = new StyleIndexListener(child, styleClasses);
+				padHBox.indexProperty.addListener(listener);
+				padHBox.styleListeners.add(listener);
+
+				listener.changed(padHBox.indexProperty, null, padHBox.indexProperty.get());
+			}
+		});
+
+		return padHBox;
+	}
 
 	public PadHBox(String... styleClasses) {
 		this(0, styleClasses);
 	}
+
 	public PadHBox(double spacing, String... styleClasses) {
 		super(spacing);
 		indexProperty = new SimpleObjectProperty<>();
diff --git a/PlayWall/src/main/java/de/tobias/playpad/view/pad/PadVBox.java b/PlayWall/src/main/java/de/tobias/playpad/view/pad/PadVBox.java
index dc4e140b700bdb5952b1b3a995a5a6340bc6736c..33d999dc7349e03010453853977619ba086e468d 100644
--- a/PlayWall/src/main/java/de/tobias/playpad/view/pad/PadVBox.java
+++ b/PlayWall/src/main/java/de/tobias/playpad/view/pad/PadVBox.java
@@ -12,6 +12,7 @@ public class PadVBox extends VBox implements PadIndexable {
 	public PadVBox(String... styleClasses) {
 		this(0, styleClasses);
 	}
+
 	public PadVBox(double spacing, String... styleClasses) {
 		super(spacing);
 		indexProperty = new SimpleObjectProperty<>();