$order-product-vertical-padding: 10px;
$order-product-image-width: 74px !default;
$order-product-image-overlay: true !default;

@import "@css[shared]/page/order/_order-products";

.order-products {
   padding-bottom: 20px;

   .product:first-child {
      border-top: 0;
   }

   .image {
      a {
         display: inline-flex;
         align-items: center;
         justify-content: center;
         border-radius: $border-radius-base;
         position: relative;

         @if ($order-product-image-overlay) {
            @include image-overlay(7px);
         }

         .c-product-discountlabel {
            position: absolute;
            top: 5px;
            left: 5px;
         }
      }
   }

   .title {
      margin-left: 20px;

      a {
         @include underline-hover;
      }
   }

   .variation {
      font-size: $font-size-smaller;
      margin-top: 3px;
   }

   .availability {
      width: auto;
   }

   .buy_count {
      width: 40px;

      button {
         color: $text-dark;
      }
   }

   .price-total {
      text-align: right;
      width: 120px;

      .flag {
         display: none;
      }
   }

   .delete-product {
      font-size: 18px;
   }
}

@media screen and (min-width: $lg) and (max-width: $ordering-products-breakpoint),
   screen and (max-width: $md) {
   .order-products:not(.order-products-summary) {
      .product {
         flex-wrap: wrap;
         align-items: flex-start;
         justify-content: flex-start;
         position: relative;
         padding-left: 84px;
      }

      .image {
         position: absolute;
         top: 5px;
         left: 0;
      }

      .title {
         margin-left: 10px;
         margin-bottom: 10px;
         width: 100%;
      }

      .availability {
         display: none;
      }

      .availability-resp {
         display: block;
         font-size: $font-size-smaller;
      }

      .pieces {
         position: static;
         margin-left: 10px;
      }

      .price-total {
         position: absolute;
         right: 0;
         bottom: 20px;
      }

      .delete-product {
         align-self: flex-end;
         margin-bottom: 13px;
         margin-left: 0;
         order: 1;
      }
   }
}

@media screen and (min-width: $md) and (max-width: $lg - 1) {
   .order-products {
      .availability {
         display: block;
      }

      .availability-resp {
         display: none;
      }
   }
}

@media screen and (max-width: $xs - 1) {
   .order-products:not(.order-products-summary) {
      .title,
      .pieces {
         margin-left: 7px;
      }

      .pieces {
         width: 80px;
         margin-right: 15px;

         .form-control {
            width: 50px;
         }
      }
   }
}
