.catalog-list-item {
   border: 1px solid $border-color;
   margin-top: -1px;
   margin-bottom: 10px;
   padding: 20px 20px 10px 20px;
   border-radius: 5px;

   a {
      @include underline-never;
   }

   p {
      margin-bottom: 0;
   }

   img {
      position: relative;
   }

   .price {
      color: $black;
      text-align: right;
   }
}

.catalog-list-item-form-wrapper {
   position: relative;
   justify-content: flex-end;

   .submit-block {
      display: flex;
      position: relative;

      .buy-count-wrapper {
         margin-right: 10px;
         width: 70px;
      }

      .form-control {
         border: unset;
         width: 44px;
         min-height: 44px;
         padding: 8px 10px;
         border: 1px solid $border-color;
         border-radius: 5px;
         margin-right: 5px;
      }

      .btn-green {
         background-color: $green;
         border-color: $green;
         width: 86px;
         max-width: 100%;

         &:hover {
            background-color: $green-hover;
            border-color: $green-hover;
         }
      }
   }
}

.title-catalog {
   font-size: 20px;
   font-weight: 600;

   @media screen and (max-width: $sm - 1) {
      font-size: 16px;
      line-height: 1.4;
   }
}

.catalog-variations-wrapper {
   .catalog-content-variations {
      display: flex;
      overflow-x: auto;
      flex-wrap: nowrap;
      padding: 0 5px;
      scroll-snap-type: x mandatory;
      scroll-padding-left: 5px;

      &::-webkit-scrollbar {
         height: 6px;
      }

      &::-webkit-scrollbar-track {
         box-shadow: none;
         background: $border-color;
         border-radius: 3px;
      }

      &::-webkit-scrollbar-thumb {
         background: $black;
         border-radius: 3px;
      }

      .img {
         position: relative;
         padding: 51px 47px;
         margin-right: 20px;
         width: 197px;

         &::before {
            content: "";
            display: block;
            position: absolute;
            top: 0;
            left: 0;
            right: 0;
            bottom: 0;
            background-color: rgba(0, 0, 0, .02);
            opacity: 1;
            transition: opacity .3s ease;
            z-index: 2;
            pointer-events: none;
            border-radius: 10px;
         }

         @media screen and (max-width: $md - 1) {
            width: 170px;
            padding: 30px 35px;
         }
      }
   }

   .no-variations {
      align-items: center;

      .img {
         position: relative;
         padding: 10px 10px;
         margin-right: 20px;
         width: 85px;
      }
   }

   .variations-variations {
      display: flex;
      flex-direction: column;
      width: 100%;

      .var {
         display: flex;
         align-items: center;
         justify-content: space-between;
         padding: 10px 0;

         .row {
            width: 100%;
         }

         &:not(:last-child) {
            border-bottom: 1px solid $border-color;
         }
      }

      .price {
         color: $black;

         .product-price-block {
            display: flex;
            flex-direction: column;
            align-items: flex-end;
            line-height: 1.4;
         }

         .without-vat {
            display: flex;
            font-weight: 600;
            align-items: center;
            margin-bottom: -3px;

            .price-common {
               font-size: 18px;
            }

            .novat {
               font-size: 12px;
            }

            p:first-child {
               margin-right: 5px;
            }
         }

         .with-vat {
            display: flex;
            color: $text-hover;
            font-size: 12px;

            p:first-child {
               margin-right: 5px;
            }

            p:last-child {
               margin-left: 5px;
            }
         }
      }

      @media screen and (max-width: $sm - 1) {
         width: max-content;
      }
   }
}

.variations-content-wrapper {
   width: 100%;
   display: flex;
   justify-content: space-between;

   span {
      color: $text-hover;
      font-size: 12px;
   }

   .package {
      width: 80px;
   }

   .apply {
      width: 150px;
   }

   .code {
      width: 60px;
   }

   .ean {
      width: 110px;
   }

   .pieces {
      width: 120px;
   }
}

.price-list-b2b {
   display: flex;
   align-items: center;
   justify-content: flex-end;
   width: 465px;

   .product-price-block {
      margin-right: 20px;
   }

   .price {
      padding-right: 10px;
      width: 180px;
   }
}
