@ -34,42 +34,32 @@ function handleClick() {
< / script >
< / script >
< template >
< template >
< Transition
< Transition enter -active -class = " transition -all duration -200 ease -out " enter -from -class = " scale -0 opacity -0 "
enter - active - class = "transition-all duration-200 ease-out"
enter - to - class = "scale-100 opacity-100" leave - active - class = "transition-all duration-150 ease-in"
enter - from - class = "scale-0 opacity-0"
leave - from - class = "scale-100 opacity-100" leave - to - class = "scale-0 opacity-0" >
enter - to - class = "scale-100 opacity-100"
leave - active - class = "transition-all duration-150 ease-in"
leave - from - class = "scale-100 opacity-100"
leave - to - class = "scale-0 opacity-0"
>
< div v-if ="isVisible" class="fixed bottom-20 right-4 z-40" >
< div v-if ="isVisible" class="fixed bottom-20 right-4 z-40" >
<!-- FAB Button -- >
<!-- FAB Button -- >
< Button
< Button @click ="handleClick"
@ click = "handleClick"
class = "h-16 w-16 rounded-full shadow-gray-900 shadow-lg transition-all duration-200 hover:scale-110 active:scale-95"
class = "h-14 w-14 rounded-full shadow-lg transition-all duration-200 hover:scale-110 active:scale-95"
variant = "default" size = "icon" aria - label = "Warenkorb öffnen" >
variant = "default"
size = "icon"
aria - label = "Warenkorb öffnen"
>
<!-- Cart icon with relative positioning for badge -- >
<!-- Cart icon with relative positioning for badge -- >
< div class = "relative" >
< div class = "relative" >
< ShoppingCart class = "h-6 w-6" / >
< ShoppingCart class = "h-6 w-6 scale-150" / >
<!-- Item count badge -- >
<!-- Item count badge -- >
< Badge
< Badge
class = "absolute -top-2 -right-2 h-5 min-w-[20px] px-0.5 flex items-center justify-center bg-experimenta-accent text-white text-xs font-bold border border-white dark:border-zinc-950"
class = "absolute -top-4 -right-4 h-5.5 min-w-[22px] px-1.5 flex items-center justify-center bg-experimenta-accent text-white text-xs font-bold border-2 border-purple-darkest shadow-lg scale-75" >
>
{ { itemCount > 99 ? '99+' : itemCount } }
{ { itemCount > 99 ? '99+' : itemCount } }
< / Badge >
< / Badge >
< / div >
< / div >
< / Button >
< / Button >
<!-- Price text below button -- >
<!-- Price text below button -- >
< div class = "mt-2 text-center" >
<!-- < div class = "mt-2 text-center" >
< p class = "text-xs font-semibold text-foreground whitespace-nowrap" >
< p class = "text-xs font-semibold text-foreground whitespace-nowrap" >
{ { formattedTotal } }
{ { formattedTotal } }
< / p >
< / p >
< / div >
< / div > -- >
< / div >
< / div >
< / Transition >
< / Transition >
< / template >
< / template >