.toastify {
  box-shadow: none;

  max-width: 520px;
  width: fit-content;
  font-family: 'Poppins', sans-serif;
  background: hsl(var(--primary));
  border: 1px solid hsl(var(--primary));
  
  display: flex;
  gap: 16px;
  align-items: center;
  justify-content: space-between;
}

.toastify.error {
  background-color: rgb(200, 0, 0);
  border: 1px solid rgb(200, 0, 0);
}

.toastify::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background: black;
  z-index: -1;
  opacity: 0.8;
  pointer-events: none;
}

.cc__checkout___form_field:not(.not-required) label::after {
  content: '*';
  color: red;
  margin-left: 4px;
}

.post-shadow {
  background: linear-gradient(0deg, hsl(var(--background)) 20%, transparent 100%);
}

/* ===================================
   PRODUTO MAIS POPULAR
=================================== */

.produto-popular {
    position: relative !important;

    padding-top: 38px !important;

    border: 3px solid #a855ff !important;
    border-radius: 24px !important;

    background: linear-gradient(
        180deg,
        #1f2230 0%,
        #141720 100%
    ) !important;

    box-shadow:
        0 0 18px rgba(168, 85, 255, 0.45),
        0 0 45px rgba(168, 85, 255, 0.18) !important;

    transform: scale(1.03) !important;

    overflow: visible !important;

    z-index: 2;
}

.produto-popular:hover {
    transform: scale(1.05) !important;

    box-shadow:
        0 0 24px rgba(168, 85, 255, 0.65),
        0 0 60px rgba(168, 85, 255, 0.28) !important;
}

/* ===================================
   SELO CENTRALIZADO
=================================== */

.produto-popular::before {
    content: "Economize 14%" !important;

    position: absolute !important;

    top: -22px !important;
    left: 50% !important;

    transform: translateX(-50%) !important;

    background: linear-gradient(
        90deg,
        #7c3aed 0%,
        #a855ff 100%
    ) !important;

    color: #fff !important;

    padding: 13px 38px !important;

    border-radius: 999px !important;

    font-size: 18px !important;
    font-weight: 800 !important;

    white-space: nowrap !important;

    box-shadow:
        0 10px 25px rgba(0,0,0,0.35),
        0 0 18px rgba(168,85,255,0.55) !important;

    border: 2px solid rgba(255,255,255,0.08) !important;

    z-index: 999 !important;
}