/* Wrapper um Logo + Widget */
#cart-widget-wrapper {
  position: fixed;
  top: 60%;
  right: 20px;
  transform: translateY(-50%);
  z-index: 9999;
  display: flex;
  flex-direction: column;
  align-items: end;
  gap: 0.5rem;
  transition: bottom .2s ease
}

/* Cart-Widget (bestehend, leicht angepasst) */
.cart-widget {
  background-color: var(--navigation-main-background);
  color: var(--navigation-main-text);
  padding: 0.4rem 0.8rem;
  border-radius: 30px;
  font-weight: bold;
  box-shadow: 0 4px 6px rgba(0,0,0,0.2);
  transition: all 0.3s ease;
}

.cart-widget:hover {
  background-color: var(--navigation-links-hover);
  cursor: pointer;
}

/* Spiel-Logo über dem Widget */
.cart-game-logo img {
  width: 80px;
  height: auto;
  border-radius: 0.5rem;
  /*box-shadow: 0 2px 4px rgba(0,0,0,0.15);*/
  background: #f8f8f8;
  padding: 3px;
}

/* AJAX Highlight-Effekt */
#cart-widget.highlight-green {
  background-color: #28a745 !important;
  color: white;
}

#cart-widget.highlight-red {
  background-color: #d92d20 !important;
  color: white;
}

.cart-widget a {
  color: var(--navigation-main-text);
}

/* Haupt-Layout: Icon+Anzahl links, Preis rechts */
.cart-widget .cart-link {
  display: flex;
  align-items: center;     /* Preis vertikal mittig zu Icon/Anzahl */
  gap: .6rem;
  text-decoration: none;
}

/* Linke Spalte: Icon oben, Anzahl darunter – beides zentriert */
.cart-left {
  display: flex;
  flex-direction: column;
  align-items: center;
  line-height: 1.1;        /* enger, damit Icon + Zahl kompakt wirken */
}

/* Optik feinjustieren */
.icon {
  display: block;
  font-size: 1.2rem;       /* ggf. anpassen */
}

.cartWidgetArticleCount {
  font-size: 10px;
  display: block;
  font-weight: 700;
  margin-top: .15rem;
  white-space: nowrap;     /* Zahl bleibt unter dem Icon, keine Umbrüche in den Klammern */
}

/* Preis rechts, nicht umbrechen */
.cart-price {
  font-weight: 700;
  white-space: nowrap;
}


/* Responsive: auf kleinen Bildschirmen unten rechts */
@media (max-width: 896px) {
  #cart-widget-wrapper {
    top: auto;
    bottom: 20px;
    right: 20px;
    transform: none;
    flex-direction: column;
    align-items: end;
    gap: 0.5rem;
  }
  
  /*#cart-widget-wrapper.above-footer {
    bottom: 65px;
  }*/

  .cart-widget {
    font-size: 14px;
    border-radius: 20px;
    padding: 0.4rem 0.8rem;
  }
}

@media screen and (max-width: 850px) and (min-height: 1000px) and (orientation: portrait) {
  #cart-widget-wrapper {
    /*top: 23%;*/
    bottom: 60%;
  }
}