/* IPTV Charleroi v1.3.87 — Futuristic Cart + Login menu actions
   Scope: desktop header actions + mobile hamburger commerce actions.
   Replaces previous Support / Tester 24h button language with Cart + Se Connecter. */

.ipch-nav-actions.ipch-nav-actions--commerce {
  gap: 12px;
}

.topbar.ipch-command-header .ipch-nav-action {
  position: relative;
  isolation: isolate;
  min-height: 46px;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 10px;
  padding: 0 18px;
  border-radius: 999px;
  text-decoration: none;
  white-space: nowrap;
  font-size: 12px;
  line-height: 1;
  font-weight: 950;
  letter-spacing: -.01em;
  transform: translateZ(0);
  overflow: hidden;
  transition:
    transform .24s cubic-bezier(.2,.8,.2,1),
    box-shadow .24s cubic-bezier(.2,.8,.2,1),
    border-color .24s ease,
    background .24s ease;
}

.topbar.ipch-command-header .ipch-nav-action::before {
  content: "";
  position: absolute;
  inset: -60% auto -60% -38%;
  width: 32%;
  transform: rotate(18deg);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.68), transparent);
  opacity: .52;
  transition: left .55s cubic-bezier(.2,.8,.2,1);
  pointer-events: none;
}

.topbar.ipch-command-header .ipch-nav-action:hover::before,
.topbar.ipch-command-header .ipch-nav-action:focus-visible::before {
  left: 112%;
}

.topbar.ipch-command-header .ipch-nav-action:hover,
.topbar.ipch-command-header .ipch-nav-action:focus-visible {
  transform: translateY(-2px) translateZ(0);
}

.topbar.ipch-command-header .ipch-nav-action i {
  position: relative;
  width: 30px;
  height: 30px;
  min-width: 30px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
  z-index: 1;
  color: currentColor !important;
}

.topbar.ipch-command-header .ipch-nav-action span {
  position: relative;
  z-index: 1;
}

/* Cart: futuristic red commerce capsule. */
.topbar.ipch-command-header .ipch-nav-cart {
  min-width: 108px;
  color: #fff;
  background:
    radial-gradient(circle at 24% 0%, rgba(255,255,255,.28), transparent 32%),
    linear-gradient(135deg, #ff3642 0%, #ef121e 56%, #b9030d 100%);
  border: 1px solid rgba(255,255,255,.18);
  box-shadow:
    0 18px 38px rgba(239,18,30,.30),
    0 0 0 1px rgba(239,18,30,.16),
    inset 0 1px 0 rgba(255,255,255,.26);
}

.topbar.ipch-command-header .ipch-nav-cart i {
  background:
    radial-gradient(circle at 34% 24%, rgba(255,255,255,.32), transparent 34%),
    rgba(255,255,255,.13);
  border: 1px solid rgba(255,255,255,.18);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.24),
    0 10px 20px rgba(0,0,0,.10);
}

/* Login: clean light-glass premium capsule. */
.topbar.ipch-command-header .ipch-nav-login {
  min-width: 142px;
  color: #0e1528;
  background:
    radial-gradient(circle at 24% 0%, rgba(255,255,255,.96), transparent 36%),
    linear-gradient(180deg, rgba(255,255,255,.95), rgba(238,242,248,.90));
  border: 1px solid rgba(255,255,255,.72);
  box-shadow:
    0 16px 34px rgba(15,23,42,.16),
    inset 0 1px 0 rgba(255,255,255,.98);
}

.topbar.ipch-command-header .ipch-nav-login i {
  color: #ef121e !important;
  background:
    radial-gradient(circle at 34% 24%, rgba(255,255,255,.98), transparent 34%),
    linear-gradient(145deg, rgba(255,255,255,.98), rgba(246,248,252,.94));
  border: 1px solid rgba(239,18,30,.14);
  box-shadow:
    0 8px 18px rgba(239,18,30,.10),
    inset 0 1px 0 rgba(255,255,255,.95);
}

/* Stable local icon masks if the remote FontAwesome file is delayed. */
.topbar.ipch-command-header .ipch-nav-cart i::before,
.ipch-mobile-commerce-action.ipch-mobile-cart i::before {
  content: "" !important;
  width: 1em;
  height: 1em;
  display: inline-block;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 18a2 2 0 1 0 0 4 2 2 0 0 0 0-4Zm10 0a2 2 0 1 0 0 4 2 2 0 0 0 0-4ZM3 3h2.2l2.1 10.4A3 3 0 0 0 10.2 16h6.9a3 3 0 0 0 2.8-2l1.8-5.4A2 2 0 0 0 19.8 6H7.1L6.7 4A2 2 0 0 0 4.8 2H3v1Zm4.5 5h12.3l-1.7 5.4a1 1 0 0 1-1 .6h-6.9a1 1 0 0 1-1-.8L7.5 8Z'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M7 18a2 2 0 1 0 0 4 2 2 0 0 0 0-4Zm10 0a2 2 0 1 0 0 4 2 2 0 0 0 0-4ZM3 3h2.2l2.1 10.4A3 3 0 0 0 10.2 16h6.9a3 3 0 0 0 2.8-2l1.8-5.4A2 2 0 0 0 19.8 6H7.1L6.7 4A2 2 0 0 0 4.8 2H3v1Zm4.5 5h12.3l-1.7 5.4a1 1 0 0 1-1 .6h-6.9a1 1 0 0 1-1-.8L7.5 8Z'/%3E%3C/svg%3E") center / contain no-repeat;
}

.topbar.ipch-command-header .ipch-nav-login i::before,
.ipch-mobile-commerce-action.ipch-mobile-login i::before {
  content: "" !important;
  width: 1em;
  height: 1em;
  display: inline-block;
  background-color: currentColor;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 12a5 5 0 1 0-5-5 5 5 0 0 0 5 5Zm0 2c-4.4 0-8 2.2-8 5v1a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-1c0-2.8-3.6-5-8-5Zm5.5-6H19V6h-1.5V4.7a2.5 2.5 0 0 0-5 0V6H11v2h6.5ZM14 6V4.7a1 1 0 0 1 2 0V6h-2Z'/%3E%3C/svg%3E") center / contain no-repeat;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath fill='black' d='M12 12a5 5 0 1 0-5-5 5 5 0 0 0 5 5Zm0 2c-4.4 0-8 2.2-8 5v1a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2v-1c0-2.8-3.6-5-8-5Zm5.5-6H19V6h-1.5V4.7a2.5 2.5 0 0 0-5 0V6H11v2h6.5ZM14 6V4.7a1 1 0 0 1 2 0V6h-2Z'/%3E%3C/svg%3E") center / contain no-repeat;
}

/* Mobile hamburger panel version. */
.ipch-mobile-commerce-actions {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 10px;
}

.ipch-mobile-commerce-action {
  position: relative;
  min-height: 62px;
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 11px;
  padding: 0 14px;
  border-radius: 20px;
  color: #fff;
  font-size: 14px;
  font-weight: 950;
  line-height: 1;
  text-decoration: none;
  overflow: hidden;
  transform: translateZ(0);
}

.ipch-mobile-commerce-action::before {
  content: "";
  position: absolute;
  inset: -60% auto -60% -40%;
  width: 36%;
  transform: rotate(18deg);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.66), transparent);
  opacity: .50;
  pointer-events: none;
}

.ipch-mobile-commerce-action i,
.ipch-mobile-commerce-action span {
  position: relative;
  z-index: 1;
}

.ipch-mobile-commerce-action i {
  width: 34px;
  height: 34px;
  min-width: 34px;
  display: inline-grid;
  place-items: center;
  border-radius: 999px;
}

.ipch-mobile-cart {
  background:
    radial-gradient(circle at 28% 0%, rgba(255,255,255,.25), transparent 34%),
    linear-gradient(135deg, #ff3340 0%, #ef121e 58%, #b9040d 100%);
  box-shadow: 0 18px 42px rgba(239,18,30,.30), inset 0 1px 0 rgba(255,255,255,.22);
  border: 1px solid rgba(255,255,255,.16);
}

.ipch-mobile-cart i {
  background: rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.18);
}

.ipch-mobile-login {
  color: #11182c;
  background:
    radial-gradient(circle at 28% 0%, rgba(255,255,255,.98), transparent 36%),
    linear-gradient(180deg, rgba(255,255,255,.95), rgba(237,241,248,.90));
  box-shadow: 0 18px 42px rgba(15,23,42,.16), inset 0 1px 0 rgba(255,255,255,.98);
  border: 1px solid rgba(255,255,255,.74);
}

.ipch-mobile-login i {
  color: #ef121e;
  background: #fff;
  border: 1px solid rgba(239,18,30,.12);
}

@media (max-width: 1180px) {
  .ipch-nav-actions.ipch-nav-actions--commerce {
    display: none;
  }
}

@media (max-width: 520px) {
  .ipch-mobile-commerce-actions {
    grid-template-columns: 1fr;
  }

  .ipch-mobile-commerce-action {
    min-height: 58px;
    border-radius: 18px;
  }
}

@media (prefers-reduced-motion: reduce) {
  .topbar.ipch-command-header .ipch-nav-action,
  .topbar.ipch-command-header .ipch-nav-action::before {
    transition: none !important;
  }

  .topbar.ipch-command-header .ipch-nav-action:hover,
  .topbar.ipch-command-header .ipch-nav-action:focus-visible {
    transform: none !important;
  }

  .ipch-mobile-commerce-action::before {
    display: none !important;
  }
}


/* IPTV Charleroi v1.3.89 — LottieFiles-inspired animated cart button
   Direction chosen after reviewing LottieFiles cart animations:
   "add-to-cart": product cube drops into basket + cart bounce/wheels.
   Implemented locally with CSS/SVG-like spans to avoid external runtime, JSON asset, license and performance issues. */

.topbar.ipch-command-header .ipch-nav-cart,
.ipch-mobile-commerce-action.ipch-mobile-cart {
  --ipch-cart-motion-size: 31px;
}

.topbar.ipch-command-header .ipch-nav-cart > i,
.ipch-mobile-commerce-action.ipch-mobile-cart > i {
  display: none !important;
}

.ipch-cart-motion {
  position: relative;
  z-index: 1;
  width: var(--ipch-cart-motion-size);
  height: var(--ipch-cart-motion-size);
  min-width: var(--ipch-cart-motion-size);
  display: inline-block;
  border-radius: 999px;
  background:
    radial-gradient(circle at 34% 24%, rgba(255,255,255,.32), transparent 34%),
    rgba(255,255,255,.14);
  border: 1px solid rgba(255,255,255,.20);
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.24),
    0 10px 20px rgba(0,0,0,.10);
  overflow: hidden;
  transform: translateZ(0);
}

.ipch-cart-motion::before {
  content: "";
  position: absolute;
  inset: 5px;
  border-radius: 999px;
  background: radial-gradient(circle, rgba(255,255,255,.22), transparent 60%);
  opacity: 0;
  transform: scale(.55);
  animation: ipch-cart-pulse 2.35s cubic-bezier(.2,.8,.2,1) infinite;
}

.ipch-cart-motion__basket {
  position: absolute;
  left: 8px;
  top: 14px;
  width: 15px;
  height: 8px;
  border: 2px solid currentColor;
  border-top: 0;
  border-radius: 2px 2px 5px 5px;
  transform-origin: center;
  animation: ipch-cart-basket-bounce 2.35s cubic-bezier(.2,.8,.2,1) infinite;
}

.ipch-cart-motion__handle {
  position: absolute;
  left: 7px;
  top: 10px;
  width: 16px;
  height: 10px;
  border: 2px solid currentColor;
  border-bottom: 0;
  border-left: 0;
  border-radius: 0 7px 0 0;
  transform-origin: 8px 9px;
  animation: ipch-cart-handle-bounce 2.35s cubic-bezier(.2,.8,.2,1) infinite;
}

.ipch-cart-motion__wheel {
  position: absolute;
  top: 23px;
  width: 4px;
  height: 4px;
  border-radius: 999px;
  background: currentColor;
  animation: ipch-cart-wheel-spin 2.35s cubic-bezier(.2,.8,.2,1) infinite;
}

.ipch-cart-motion__wheel--one {
  left: 10px;
}

.ipch-cart-motion__wheel--two {
  left: 21px;
}

.ipch-cart-motion__box {
  position: absolute;
  left: 13px;
  top: 3px;
  width: 8px;
  height: 8px;
  border-radius: 2px;
  background: currentColor;
  box-shadow: inset 0 -2px 0 rgba(0,0,0,.10);
  transform-origin: center;
  animation: ipch-cart-box-drop 2.35s cubic-bezier(.2,.8,.2,1) infinite;
}

.topbar.ipch-command-header .ipch-nav-cart:hover .ipch-cart-motion,
.topbar.ipch-command-header .ipch-nav-cart:focus-visible .ipch-cart-motion,
.ipch-mobile-commerce-action.ipch-mobile-cart:hover .ipch-cart-motion,
.ipch-mobile-commerce-action.ipch-mobile-cart:focus-visible .ipch-cart-motion {
  animation: ipch-cart-hover-tilt .72s cubic-bezier(.2,.8,.2,1);
}

.topbar.ipch-command-header .ipch-nav-cart:hover .ipch-cart-motion__box,
.topbar.ipch-command-header .ipch-nav-cart:focus-visible .ipch-cart-motion__box,
.ipch-mobile-commerce-action.ipch-mobile-cart:hover .ipch-cart-motion__box,
.ipch-mobile-commerce-action.ipch-mobile-cart:focus-visible .ipch-cart-motion__box {
  animation-duration: 1.15s;
}

.ipch-mobile-commerce-action.ipch-mobile-cart .ipch-cart-motion {
  --ipch-cart-motion-size: 34px;
}

@keyframes ipch-cart-box-drop {
  0%, 20% {
    opacity: 0;
    transform: translateY(-12px) scale(.78) rotate(-16deg);
  }
  30% {
    opacity: 1;
    transform: translateY(1px) scale(1) rotate(8deg);
  }
  40%, 58% {
    opacity: 1;
    transform: translateY(8px) scale(.88) rotate(0deg);
  }
  68%, 100% {
    opacity: 0;
    transform: translateY(12px) scale(.62) rotate(12deg);
  }
}

@keyframes ipch-cart-basket-bounce {
  0%, 24%, 100% {
    transform: translateY(0) rotate(0deg);
  }
  34% {
    transform: translateY(2px) rotate(-5deg);
  }
  45% {
    transform: translateY(-1px) rotate(4deg);
  }
  58% {
    transform: translateY(0) rotate(0deg);
  }
}

@keyframes ipch-cart-handle-bounce {
  0%, 24%, 100% {
    transform: translateY(0) rotate(0deg);
  }
  34% {
    transform: translateY(2px) rotate(-6deg);
  }
  48% {
    transform: translateY(-1px) rotate(4deg);
  }
}

@keyframes ipch-cart-wheel-spin {
  0%, 28%, 100% {
    transform: rotate(0deg) scale(1);
  }
  40% {
    transform: rotate(140deg) scale(1.1);
  }
  58% {
    transform: rotate(260deg) scale(1);
  }
}

@keyframes ipch-cart-pulse {
  0%, 32%, 100% {
    opacity: 0;
    transform: scale(.55);
  }
  42% {
    opacity: .62;
    transform: scale(1.25);
  }
  62% {
    opacity: 0;
    transform: scale(1.55);
  }
}

@keyframes ipch-cart-hover-tilt {
  0%, 100% {
    transform: translateZ(0) rotate(0deg) scale(1);
  }
  38% {
    transform: translateZ(0) rotate(-7deg) scale(1.08);
  }
  68% {
    transform: translateZ(0) rotate(5deg) scale(1.04);
  }
}

@media (prefers-reduced-motion: reduce) {
  .ipch-cart-motion,
  .ipch-cart-motion::before,
  .ipch-cart-motion__basket,
  .ipch-cart-motion__handle,
  .ipch-cart-motion__wheel,
  .ipch-cart-motion__box {
    animation: none !important;
  }

  .ipch-cart-motion__box {
    opacity: 1;
    transform: translateY(8px) scale(.7);
  }
}


/* IPTV Charleroi v1.3.90 — Animated cart rendering fix
   The generic header rule `.ipch-nav-action span { position:relative; }`
   was overriding the small drawing pieces inside the animated cart. This made
   the cart render as a single white line. These selectors intentionally use
   higher specificity and !important to keep the icon pieces correctly placed. */

.topbar.ipch-command-header .ipch-nav-cart .ipch-cart-motion,
.ipch-mobile-commerce-action.ipch-mobile-cart .ipch-cart-motion {
  position: relative !important;
  display: inline-block !important;
  overflow: hidden !important;
  color: #ffffff !important;
  line-height: 1 !important;
}

.topbar.ipch-command-header .ipch-nav-cart .ipch-cart-motion span,
.ipch-mobile-commerce-action.ipch-mobile-cart .ipch-cart-motion span {
  z-index: auto !important;
  line-height: 1 !important;
  font-size: 0 !important;
}

.topbar.ipch-command-header .ipch-nav-cart .ipch-cart-motion__basket,
.ipch-mobile-commerce-action.ipch-mobile-cart .ipch-cart-motion__basket {
  position: absolute !important;
  display: block !important;
  left: 8px !important;
  top: 14px !important;
  width: 15px !important;
  height: 8px !important;
  min-width: 0 !important;
  border: 2px solid currentColor !important;
  border-top: 0 !important;
  border-radius: 2px 2px 5px 5px !important;
  background: transparent !important;
  transform-origin: center !important;
}

.topbar.ipch-command-header .ipch-nav-cart .ipch-cart-motion__handle,
.ipch-mobile-commerce-action.ipch-mobile-cart .ipch-cart-motion__handle {
  position: absolute !important;
  display: block !important;
  left: 7px !important;
  top: 10px !important;
  width: 16px !important;
  height: 10px !important;
  min-width: 0 !important;
  border: 2px solid currentColor !important;
  border-bottom: 0 !important;
  border-left: 0 !important;
  border-radius: 0 7px 0 0 !important;
  background: transparent !important;
  transform-origin: 8px 9px !important;
}

.topbar.ipch-command-header .ipch-nav-cart .ipch-cart-motion__wheel,
.ipch-mobile-commerce-action.ipch-mobile-cart .ipch-cart-motion__wheel {
  position: absolute !important;
  display: block !important;
  top: 23px !important;
  width: 4px !important;
  height: 4px !important;
  min-width: 0 !important;
  border-radius: 999px !important;
  background: currentColor !important;
}

.topbar.ipch-command-header .ipch-nav-cart .ipch-cart-motion__wheel--one,
.ipch-mobile-commerce-action.ipch-mobile-cart .ipch-cart-motion__wheel--one {
  left: 10px !important;
}

.topbar.ipch-command-header .ipch-nav-cart .ipch-cart-motion__wheel--two,
.ipch-mobile-commerce-action.ipch-mobile-cart .ipch-cart-motion__wheel--two {
  left: 21px !important;
}

.topbar.ipch-command-header .ipch-nav-cart .ipch-cart-motion__box,
.ipch-mobile-commerce-action.ipch-mobile-cart .ipch-cart-motion__box {
  position: absolute !important;
  display: block !important;
  left: 13px !important;
  top: 3px !important;
  width: 8px !important;
  height: 8px !important;
  min-width: 0 !important;
  border-radius: 2px !important;
  background: currentColor !important;
  box-shadow: inset 0 -2px 0 rgba(0,0,0,.10) !important;
  transform-origin: center !important;
}

/* Slightly improve the desktop cart capsule so the animated icon has breathing room. */
.topbar.ipch-command-header .ipch-nav-cart {
  min-width: 116px !important;
  gap: 11px !important;
}

.ipch-mobile-commerce-action.ipch-mobile-cart {
  gap: 12px !important;
}


/* IPTV Charleroi v1.3.91 — Premium SVG cart motion upgrade
   Screenshot review: the previous cart drawing was visible but too simple.
   This layer replaces the visible drawing with a crisp local SVG-mask cart,
   keeps a small add-to-cart cube animation, and avoids external Lottie/runtime dependencies. */

.topbar.ipch-command-header .ipch-nav-cart,
.ipch-mobile-commerce-action.ipch-mobile-cart {
  --ipch-cart-motion-size: 34px;
}

.topbar.ipch-command-header .ipch-nav-cart {
  min-width: 122px !important;
  padding-left: 13px !important;
  padding-right: 18px !important;
  gap: 11px !important;
}

.ipch-mobile-commerce-action.ipch-mobile-cart {
  gap: 13px !important;
}

.topbar.ipch-command-header .ipch-nav-cart .ipch-cart-motion,
.ipch-mobile-commerce-action.ipch-mobile-cart .ipch-cart-motion {
  width: var(--ipch-cart-motion-size) !important;
  height: var(--ipch-cart-motion-size) !important;
  min-width: var(--ipch-cart-motion-size) !important;
  color: #fff !important;
  background:
    radial-gradient(circle at 32% 24%, rgba(255,255,255,.38), transparent 32%),
    linear-gradient(145deg, rgba(255,255,255,.18), rgba(255,255,255,.08)) !important;
  border: 1px solid rgba(255,255,255,.24) !important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.26),
    0 10px 22px rgba(0,0,0,.13) !important;
}

/* Hide the old line-based cart pieces, but keep the product cube animation. */
.topbar.ipch-command-header .ipch-nav-cart .ipch-cart-motion__basket,
.topbar.ipch-command-header .ipch-nav-cart .ipch-cart-motion__handle,
.topbar.ipch-command-header .ipch-nav-cart .ipch-cart-motion__wheel,
.ipch-mobile-commerce-action.ipch-mobile-cart .ipch-cart-motion__basket,
.ipch-mobile-commerce-action.ipch-mobile-cart .ipch-cart-motion__handle,
.ipch-mobile-commerce-action.ipch-mobile-cart .ipch-cart-motion__wheel {
  display: none !important;
}

.topbar.ipch-command-header .ipch-nav-cart .ipch-cart-motion::after,
.ipch-mobile-commerce-action.ipch-mobile-cart .ipch-cart-motion::after {
  content: "" !important;
  position: absolute !important;
  left: 7px !important;
  top: 8px !important;
  width: 21px !important;
  height: 20px !important;
  display: block !important;
  background: currentColor !important;
  opacity: 1 !important;
  filter: drop-shadow(0 2px 2px rgba(0,0,0,.13));
  transform-origin: 50% 58%;
  animation: ipch-cart-svg-bounce 2.35s cubic-bezier(.2,.8,.2,1) infinite;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath fill='black' d='M20 48a5 5 0 1 0 0 10 5 5 0 0 0 0-10Zm26 0a5 5 0 1 0 0 10 5 5 0 0 0 0-10ZM8 8h7.2c2.4 0 4.4 1.7 4.9 4l1 5H53c2.7 0 4.7 2.6 3.9 5.2l-4.4 15.1A8 8 0 0 1 44.8 43H23a8 8 0 0 1-7.8-6.4L11.6 18H8a3 3 0 0 1 0-6Zm14.4 15 2.4 12.3A2 2 0 0 0 26.8 37h18a2 2 0 0 0 1.9-1.4L50.4 23H22.4Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath fill='black' d='M20 48a5 5 0 1 0 0 10 5 5 0 0 0 0-10Zm26 0a5 5 0 1 0 0 10 5 5 0 0 0 0-10ZM8 8h7.2c2.4 0 4.4 1.7 4.9 4l1 5H53c2.7 0 4.7 2.6 3.9 5.2l-4.4 15.1A8 8 0 0 1 44.8 43H23a8 8 0 0 1-7.8-6.4L11.6 18H8a3 3 0 0 1 0-6Zm14.4 15 2.4 12.3A2 2 0 0 0 26.8 37h18a2 2 0 0 0 1.9-1.4L50.4 23H22.4Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

/* Product cube now looks like a small package entering the real cart. */
.topbar.ipch-command-header .ipch-nav-cart .ipch-cart-motion__box,
.ipch-mobile-commerce-action.ipch-mobile-cart .ipch-cart-motion__box {
  left: 14px !important;
  top: 3px !important;
  width: 8px !important;
  height: 8px !important;
  border-radius: 2px !important;
  background:
    linear-gradient(135deg, #fff 0%, rgba(255,255,255,.86) 100%) !important;
  box-shadow:
    inset 0 -2px 0 rgba(0,0,0,.12),
    0 5px 10px rgba(0,0,0,.14) !important;
  animation: ipch-cart-box-drop-premium 2.35s cubic-bezier(.2,.8,.2,1) infinite !important;
}

/* Small red notification spark on hover/focus, like a cart action confirmation. */
.topbar.ipch-command-header .ipch-nav-cart .ipch-cart-motion::before,
.ipch-mobile-commerce-action.ipch-mobile-cart .ipch-cart-motion::before {
  inset: auto 5px 5px auto !important;
  width: 7px !important;
  height: 7px !important;
  border-radius: 999px !important;
  background: #ffffff !important;
  opacity: .95 !important;
  transform: scale(.72) !important;
  animation: ipch-cart-dot-pop 2.35s cubic-bezier(.2,.8,.2,1) infinite !important;
}

.topbar.ipch-command-header .ipch-nav-cart:hover .ipch-cart-motion::after,
.topbar.ipch-command-header .ipch-nav-cart:focus-visible .ipch-cart-motion::after,
.ipch-mobile-commerce-action.ipch-mobile-cart:hover .ipch-cart-motion::after,
.ipch-mobile-commerce-action.ipch-mobile-cart:focus-visible .ipch-cart-motion::after {
  animation-duration: 1.1s !important;
}

@keyframes ipch-cart-svg-bounce {
  0%, 23%, 100% {
    transform: translateY(0) rotate(0deg) scale(1);
  }
  34% {
    transform: translateY(1px) rotate(-5deg) scale(1.04);
  }
  48% {
    transform: translateY(-1px) rotate(4deg) scale(1.02);
  }
  62% {
    transform: translateY(0) rotate(0deg) scale(1);
  }
}

@keyframes ipch-cart-box-drop-premium {
  0%, 18% {
    opacity: 0;
    transform: translateY(-11px) translateX(-2px) scale(.72) rotate(-14deg);
  }
  29% {
    opacity: 1;
    transform: translateY(0) translateX(0) scale(1) rotate(8deg);
  }
  43%, 58% {
    opacity: 1;
    transform: translateY(10px) translateX(0) scale(.72) rotate(0deg);
  }
  69%, 100% {
    opacity: 0;
    transform: translateY(13px) translateX(2px) scale(.48) rotate(10deg);
  }
}

@keyframes ipch-cart-dot-pop {
  0%, 34%, 100% {
    opacity: .35;
    transform: scale(.54);
  }
  44% {
    opacity: 1;
    transform: scale(1);
  }
  62% {
    opacity: .62;
    transform: scale(.74);
  }
}

@media (prefers-reduced-motion: reduce) {
  .topbar.ipch-command-header .ipch-nav-cart .ipch-cart-motion::after,
  .ipch-mobile-commerce-action.ipch-mobile-cart .ipch-cart-motion::after,
  .topbar.ipch-command-header .ipch-nav-cart .ipch-cart-motion__box,
  .ipch-mobile-commerce-action.ipch-mobile-cart .ipch-cart-motion__box,
  .topbar.ipch-command-header .ipch-nav-cart .ipch-cart-motion::before,
  .ipch-mobile-commerce-action.ipch-mobile-cart .ipch-cart-motion::before {
    animation: none !important;
  }

  .topbar.ipch-command-header .ipch-nav-cart .ipch-cart-motion__box,
  .ipch-mobile-commerce-action.ipch-mobile-cart .ipch-cart-motion__box {
    opacity: 1 !important;
    transform: translateY(10px) scale(.64) !important;
  }
}


/* IPTV Charleroi v1.3.92 — Validated Cart model #2
   Visual target: dark luminous capsule, red neon outline, cart icon on the left,
   vertical divider, Cart label, red circular dynamic count badge.
   Applies to desktop header and mobile hamburger Cart button. */

.topbar.ipch-command-header .ipch-nav-cart.ipch-nav-cart--model-2,
.ipch-mobile-commerce-action.ipch-mobile-cart.ipch-mobile-cart--model-2 {
  --ipch-cart-model-red: #ff2635;
  --ipch-cart-model-red-2: #d60713;
  --ipch-cart-model-dark: rgba(14, 15, 24, .88);
  --ipch-cart-model-border: rgba(255, 38, 53, .58);
  position: relative !important;
  isolation: isolate !important;
  min-height: 52px !important;
  height: 52px !important;
  padding: 0 12px 0 13px !important;
  gap: 0 !important;
  border-radius: 999px !important;
  color: #fff !important;
  background:
    radial-gradient(circle at 82% 15%, rgba(255,38,53,.18), transparent 28%),
    radial-gradient(circle at 13% 50%, rgba(255,38,53,.18), transparent 30%),
    linear-gradient(180deg, rgba(31,31,42,.92), rgba(9,10,17,.90)) !important;
  border: 1px solid rgba(255, 38, 53, .42) !important;
  box-shadow:
    0 0 0 1px rgba(255, 38, 53, .17),
    0 12px 34px rgba(0,0,0,.26),
    0 0 28px rgba(239,18,30,.18),
    inset 0 1px 0 rgba(255,255,255,.08),
    inset 0 -1px 0 rgba(255,38,53,.18) !important;
  overflow: hidden !important;
  text-decoration: none !important;
}

.topbar.ipch-command-header .ipch-nav-cart.ipch-nav-cart--model-2 {
  width: 176px !important;
  min-width: 176px !important;
}

.ipch-mobile-commerce-action.ipch-mobile-cart.ipch-mobile-cart--model-2 {
  width: 100% !important;
  min-height: 62px !important;
  height: 62px !important;
  padding-left: 15px !important;
  padding-right: 14px !important;
}

.topbar.ipch-command-header .ipch-nav-cart.ipch-nav-cart--model-2::after,
.ipch-mobile-commerce-action.ipch-mobile-cart.ipch-mobile-cart--model-2::after {
  content: "";
  position: absolute;
  inset: 1px;
  border-radius: inherit;
  pointer-events: none;
  background:
    linear-gradient(90deg, transparent 8%, rgba(255,255,255,.20) 18%, transparent 34%),
    linear-gradient(135deg, rgba(255,38,53,.26), transparent 42%, rgba(255,38,53,.18));
  opacity: .58;
  mix-blend-mode: screen;
}

.topbar.ipch-command-header .ipch-nav-cart.ipch-nav-cart--model-2::before,
.ipch-mobile-commerce-action.ipch-mobile-cart.ipch-mobile-cart--model-2::before {
  content: "";
  position: absolute;
  inset: -50% auto -50% -38%;
  width: 30%;
  transform: rotate(18deg);
  background: linear-gradient(90deg, transparent, rgba(255,255,255,.42), transparent);
  opacity: .42;
  transition: left .72s cubic-bezier(.2,.8,.2,1);
  pointer-events: none;
  z-index: 2;
}

.topbar.ipch-command-header .ipch-nav-cart.ipch-nav-cart--model-2:hover::before,
.topbar.ipch-command-header .ipch-nav-cart.ipch-nav-cart--model-2:focus-visible::before,
.ipch-mobile-commerce-action.ipch-mobile-cart.ipch-mobile-cart--model-2:hover::before,
.ipch-mobile-commerce-action.ipch-mobile-cart.ipch-mobile-cart--model-2:focus-visible::before {
  left: 112%;
}

.topbar.ipch-command-header .ipch-nav-cart.ipch-nav-cart--model-2:hover,
.topbar.ipch-command-header .ipch-nav-cart.ipch-nav-cart--model-2:focus-visible {
  transform: translateY(-2px) translateZ(0) !important;
  box-shadow:
    0 0 0 1px rgba(255, 38, 53, .26),
    0 16px 38px rgba(0,0,0,.30),
    0 0 42px rgba(239,18,30,.28),
    inset 0 1px 0 rgba(255,255,255,.10),
    inset 0 -1px 0 rgba(255,38,53,.24) !important;
}

/* Left icon chamber with divider like the validated visual. */
.topbar.ipch-command-header .ipch-nav-cart--model-2 .ipch-cart-motion,
.ipch-mobile-commerce-action.ipch-mobile-cart--model-2 .ipch-cart-motion {
  position: relative !important;
  z-index: 3 !important;
  width: 50px !important;
  height: 50px !important;
  min-width: 50px !important;
  margin-right: 16px !important;
  display: inline-grid !important;
  place-items: center !important;
  color: #ff8e98 !important;
  border-radius: 999px !important;
  background:
    radial-gradient(circle at 50% 50%, rgba(255,38,53,.25), transparent 58%),
    linear-gradient(145deg, rgba(255,255,255,.08), rgba(255,255,255,.02)) !important;
  border: 0 !important;
  box-shadow:
    0 0 26px rgba(239,18,30,.24),
    inset 0 1px 0 rgba(255,255,255,.08) !important;
  overflow: visible !important;
}

.ipch-mobile-commerce-action.ipch-mobile-cart--model-2 .ipch-cart-motion {
  width: 54px !important;
  height: 54px !important;
  min-width: 54px !important;
  margin-right: 18px !important;
}

.topbar.ipch-command-header .ipch-nav-cart--model-2 .ipch-cart-motion::before,
.ipch-mobile-commerce-action.ipch-mobile-cart--model-2 .ipch-cart-motion::before {
  content: "";
  position: absolute !important;
  right: -9px !important;
  top: 9px !important;
  width: 1px !important;
  height: 32px !important;
  border-radius: 999px !important;
  background: linear-gradient(180deg, transparent, rgba(255,67,81,.34), transparent) !important;
  opacity: 1 !important;
  transform: none !important;
  animation: none !important;
}

.ipch-mobile-commerce-action.ipch-mobile-cart--model-2 .ipch-cart-motion::before {
  height: 38px !important;
  top: 8px !important;
}

/* Crisp cart pictogram. */
.topbar.ipch-command-header .ipch-nav-cart--model-2 .ipch-cart-motion::after,
.ipch-mobile-commerce-action.ipch-mobile-cart--model-2 .ipch-cart-motion::after {
  content: "" !important;
  position: absolute !important;
  left: 12px !important;
  top: 13px !important;
  width: 25px !important;
  height: 24px !important;
  display: block !important;
  background: currentColor !important;
  opacity: 1 !important;
  filter:
    drop-shadow(0 0 8px rgba(255,75,89,.62))
    drop-shadow(0 2px 2px rgba(0,0,0,.18)) !important;
  transform-origin: 50% 58% !important;
  animation: ipch-cart-model2-icon 2.8s cubic-bezier(.2,.8,.2,1) infinite !important;
  -webkit-mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath fill='black' d='M19 49a5 5 0 1 0 0 10 5 5 0 0 0 0-10Zm28 0a5 5 0 1 0 0 10 5 5 0 0 0 0-10ZM7 10h8c2.7 0 5 1.9 5.5 4.6l.8 4H55c3 0 5.2 2.9 4.3 5.8L54.8 39A8.5 8.5 0 0 1 46.7 45H25.1a8.5 8.5 0 0 1-8.3-6.8L13.1 19H7a3 3 0 1 1 0-6Zm15.5 15 2.4 12a2.5 2.5 0 0 0 2.4 2h19.4a2.5 2.5 0 0 0 2.4-1.8L52.8 25H22.5Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
  mask: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 64 64'%3E%3Cpath fill='black' d='M19 49a5 5 0 1 0 0 10 5 5 0 0 0 0-10Zm28 0a5 5 0 1 0 0 10 5 5 0 0 0 0-10ZM7 10h8c2.7 0 5 1.9 5.5 4.6l.8 4H55c3 0 5.2 2.9 4.3 5.8L54.8 39A8.5 8.5 0 0 1 46.7 45H25.1a8.5 8.5 0 0 1-8.3-6.8L13.1 19H7a3 3 0 1 1 0-6Zm15.5 15 2.4 12a2.5 2.5 0 0 0 2.4 2h19.4a2.5 2.5 0 0 0 2.4-1.8L52.8 25H22.5Z'/%3E%3C/svg%3E") center / contain no-repeat !important;
}

.ipch-mobile-commerce-action.ipch-mobile-cart--model-2 .ipch-cart-motion::after {
  left: 13px !important;
  top: 14px !important;
  width: 27px !important;
  height: 26px !important;
}

/* Product cube kept but more subtle; it should not cheapen the icon. */
.topbar.ipch-command-header .ipch-nav-cart--model-2 .ipch-cart-motion__box,
.ipch-mobile-commerce-action.ipch-mobile-cart--model-2 .ipch-cart-motion__box {
  position: absolute !important;
  display: block !important;
  left: 23px !important;
  top: 5px !important;
  width: 7px !important;
  height: 7px !important;
  min-width: 0 !important;
  border-radius: 2px !important;
  background: linear-gradient(135deg, #fff, rgba(255,255,255,.72)) !important;
  box-shadow: 0 0 9px rgba(255,255,255,.42) !important;
  opacity: .85 !important;
  transform-origin: center !important;
  animation: ipch-cart-model2-cube 2.8s cubic-bezier(.2,.8,.2,1) infinite !important;
  z-index: 4 !important;
}

.topbar.ipch-command-header .ipch-nav-cart--model-2 .ipch-cart-motion__basket,
.topbar.ipch-command-header .ipch-nav-cart--model-2 .ipch-cart-motion__handle,
.topbar.ipch-command-header .ipch-nav-cart--model-2 .ipch-cart-motion__wheel,
.ipch-mobile-commerce-action.ipch-mobile-cart--model-2 .ipch-cart-motion__basket,
.ipch-mobile-commerce-action.ipch-mobile-cart--model-2 .ipch-cart-motion__handle,
.ipch-mobile-commerce-action.ipch-mobile-cart--model-2 .ipch-cart-motion__wheel {
  display: none !important;
}

/* Text label. */
.topbar.ipch-command-header .ipch-nav-cart--model-2 .ipch-cart-label,
.ipch-mobile-commerce-action.ipch-mobile-cart--model-2 .ipch-cart-label {
  position: relative !important;
  z-index: 4 !important;
  flex: 1 1 auto !important;
  color: #fff !important;
  font-size: 13px !important;
  line-height: 1 !important;
  font-weight: 950 !important;
  letter-spacing: -.02em !important;
  text-shadow: 0 1px 10px rgba(255,255,255,.18) !important;
}

.ipch-mobile-commerce-action.ipch-mobile-cart--model-2 .ipch-cart-label {
  font-size: 15px !important;
}

/* Red circular dynamic counter on the right. */
.topbar.ipch-command-header .ipch-nav-cart--model-2 .ipch-cart-badge,
.ipch-mobile-commerce-action.ipch-mobile-cart--model-2 .ipch-cart-badge {
  position: relative !important;
  z-index: 5 !important;
  width: 38px !important;
  height: 38px !important;
  min-width: 38px !important;
  display: inline-grid !important;
  place-items: center !important;
  margin-left: 10px !important;
  border-radius: 999px !important;
  color: #fff !important;
  background:
    radial-gradient(circle at 34% 24%, rgba(255,255,255,.32), transparent 34%),
    linear-gradient(145deg, #ff3040, #d90613 72%) !important;
  border: 1px solid rgba(255,255,255,.16) !important;
  box-shadow:
    0 0 22px rgba(239,18,30,.44),
    0 12px 24px rgba(239,18,30,.22),
    inset 0 1px 0 rgba(255,255,255,.24) !important;
  font-size: 15px !important;
  font-weight: 950 !important;
  line-height: 1 !important;
  animation: ipch-cart-model2-badge 2.8s cubic-bezier(.2,.8,.2,1) infinite !important;
}

.ipch-mobile-commerce-action.ipch-mobile-cart--model-2 .ipch-cart-badge {
  width: 40px !important;
  height: 40px !important;
  min-width: 40px !important;
}

/* Hide the counter only when truly empty. */
.topbar.ipch-command-header .ipch-nav-cart--model-2 .ipch-cart-badge[data-count="0"],
.topbar.ipch-command-header .ipch-nav-cart--model-2[data-cart-count="0"] .ipch-cart-badge,
.ipch-mobile-commerce-action.ipch-mobile-cart--model-2 .ipch-cart-badge[data-count="0"],
.ipch-mobile-commerce-action.ipch-mobile-cart--model-2[data-cart-count="0"] .ipch-cart-badge {
  display: none !important;
}

@keyframes ipch-cart-model2-icon {
  0%, 24%, 100% {
    transform: translateY(0) rotate(0deg) scale(1);
  }
  36% {
    transform: translateY(1px) rotate(-4deg) scale(1.035);
  }
  54% {
    transform: translateY(-1px) rotate(3deg) scale(1.015);
  }
}

@keyframes ipch-cart-model2-cube {
  0%, 20% {
    opacity: 0;
    transform: translateY(-9px) scale(.65) rotate(-14deg);
  }
  32% {
    opacity: .95;
    transform: translateY(0) scale(1) rotate(8deg);
  }
  50%, 64% {
    opacity: .85;
    transform: translateY(12px) scale(.58) rotate(0deg);
  }
  76%, 100% {
    opacity: 0;
    transform: translateY(14px) scale(.42) rotate(8deg);
  }
}

@keyframes ipch-cart-model2-badge {
  0%, 32%, 100% {
    transform: scale(1);
    box-shadow:
      0 0 22px rgba(239,18,30,.44),
      0 12px 24px rgba(239,18,30,.22),
      inset 0 1px 0 rgba(255,255,255,.24);
  }
  45% {
    transform: scale(1.06);
    box-shadow:
      0 0 30px rgba(239,18,30,.60),
      0 14px 28px rgba(239,18,30,.30),
      inset 0 1px 0 rgba(255,255,255,.30);
  }
}

@media (max-width: 1180px) {
  .topbar.ipch-command-header .ipch-nav-cart.ipch-nav-cart--model-2 {
    display: none !important;
  }
}

@media (max-width: 520px) {
  .ipch-mobile-commerce-action.ipch-mobile-cart.ipch-mobile-cart--model-2 {
    min-height: 66px !important;
    height: 66px !important;
  }
}

@media (prefers-reduced-motion: reduce) {
  .topbar.ipch-command-header .ipch-nav-cart--model-2 .ipch-cart-motion::after,
  .topbar.ipch-command-header .ipch-nav-cart--model-2 .ipch-cart-motion__box,
  .topbar.ipch-command-header .ipch-nav-cart--model-2 .ipch-cart-badge,
  .ipch-mobile-commerce-action.ipch-mobile-cart--model-2 .ipch-cart-motion::after,
  .ipch-mobile-commerce-action.ipch-mobile-cart--model-2 .ipch-cart-motion__box,
  .ipch-mobile-commerce-action.ipch-mobile-cart--model-2 .ipch-cart-badge {
    animation: none !important;
  }
}

