diff --git a/apps/player/src/components/desktop/BetSlipPanel.vue b/apps/player/src/components/desktop/BetSlipPanel.vue
index a39bfc1..d3d8436 100644
--- a/apps/player/src/components/desktop/BetSlipPanel.vue
+++ b/apps/player/src/components/desktop/BetSlipPanel.vue
@@ -979,8 +979,8 @@ onUnmounted(() => {
{{ activeTab === 'parlay' ? t('bet.slip_parlay_empty_hint') : t('bet.slip_empty_hint') }}
-
-
{{ parlayWarning }}
+
+ {{ parlayWarning }}
{
-
+
{{ t('bet.slip_parlay_count', { n: slip.parlayItems.length }) }}
{{ t('bet.slip_parlay_odds', { odds: totalOddsText }) }}
-
+
@@ -1992,4 +1992,25 @@ onUnmounted(() => {
opacity: 0.5;
cursor: not-allowed;
}
+
+/* Transition group list animation */
+.list-slide-enter-active,
+.list-slide-leave-active {
+ transition: all 0.3s cubic-bezier(0.4, 0, 0.2, 1);
+}
+
+.list-slide-enter-from {
+ opacity: 0;
+ transform: translateY(-20px) scale(0.95);
+}
+
+.list-slide-leave-to {
+ opacity: 0;
+ transform: translateY(20px) scale(0.95);
+}
+
+/* Ensure smooth moving when list changes */
+.list-slide-move {
+ transition: transform 0.35s cubic-bezier(0.4, 0, 0.2, 1);
+}