.product_list_widget{
  list-style: none;
  margin: 0;
  li{
    @include clearfix();
    position: relative;
    + li{
      margin-top: 30px;
    }
    img{
      float: left;
      max-width: 70px;
      margin-right: 20px;
      border: 1px solid $border-color;
    }
  }
  a{
    display: block;
    line-height: normal;
    margin: 0 0 5px;
  }
  .quantity{
    font-size: .857em;
    > .amount{
      margin-left: 5px;
    }
  }
  a.remove{
    display: block;
    font-weight: normal;
    font-size: 14px;
    height: 20px;
    line-height: 17px;
    overflow: hidden;
    position: absolute;
    right: 0;
    text-align: right;
    width: 20px;
    font-family: Verdana,sans-serif;
  }
  dl{
    margin: 0;
    font-size: 12px;
    display: none;
    p{
      margin: 0;
    }
    dd,dt{
      display: inline-block;
      font-weight: normal;
    }
  }
}
.widget_shopping_cart_content{
  @include clearfix;
  .total{
    padding-top: 20px;
  }
}

p.woocommerce-mini-cart__buttons.buttons {
  display: flex;
  flex-direction: column-reverse;
}

.cart-flyout {
  position: fixed;
  top: 0;
  width: 420px;
  padding: 50px;
  min-height: 100vh;
  bottom: 0;
  z-index: 111;
  visibility: hidden;
  content-visibility: hidden;
  opacity: 0;
  @include transition(all 250ms ease-in);
  @include box-shadow(0px 0px 87px 0px rgba(0, 0, 0, 0.09));
  background-color: #fff;
  max-width: 100%;
  .ltr & {
    right: 0;
    @include translate2d(200px, 0);
  }
  .rtl & {
    left: 0;
    @include translate2d(-200px, 0);
  }

  .cart-flyout--inner {
    display: block;
    height: 100%;
    position: relative;
  }

  .btn-close-cart {
    position: absolute;
    top: 0;
    right: 0;
    font-size: 36px;
    line-height: 36px;
    i {
      vertical-align: top;
    }

    &:hover {
      @include rotate(90)
    }
  }

  .cart-flyout__content {
    padding-top: 50px;
  }

  .cart_list {
    margin: 0 -30px 0 0;
    padding: 0 30px 0 0;
    max-height: calc(100vh - 410px);
    overflow: auto;

    li.empty {
      padding: 50px 0;
    }
  }

  .cart-flyout__heading {
    margin-bottom: 40px;
    font-size: var(--theme-h5-font-size);
  }

  .widget_shopping_cart_content {
    overflow: hidden;
    opacity: 1;

    .total {
      @include display();
      @include justify-content(space-between);
      .amount {
        font-weight: $heading-font-weight;
      }
    }
    .button {
      width: 100%;
      margin: 10px 0 0;
      line-height: 24px;
      font-size: .875em;
      padding: 15px 20px;
      text-transform: uppercase;
    }
  }

  .cart-flyout__loading {
    text-align: center;
    display: block;
    opacity: 0;
    visibility: hidden;
    height: 0;
  }

  &.cart-flyout--loading {
    .cart-flyout__loading {
      height: auto;
      visibility: inherit;
      opacity: 1;
    }

    .widget_shopping_cart_content {
      opacity: 0;
      transition: opacity 400ms ease-out;
    }
  }

  .product_list_widget li {
    padding-right: 15px;
  }
}

.open-cart-aside {

  .cart-flyout {
    visibility: inherit;
    content-visibility: auto;
    opacity: 1;
    @include translate2d(0, 0);
  }

  .la-overlay-global {
    visibility: inherit;
    opacity: 0.7;
  }
}
.shop_table {
  th, td {
    vertical-align: middle;
  }

  &.woocommerce-cart-form__contents {
    border: none;
    thead {
      background-color: #f7f7f7;
    }
    th {
      border: none;
      padding: 10px 0;
    }

    td {
      border-width: 0;
      padding: 20px 0;
    }

    td.actions {
      border-width: 0;

      &:before {
        content: '';
        display: block;
        border-top: 1px solid #DBDBDB;
        padding-bottom: 20px;
        opacity: 0.5;
      }

      .button {
        float: right;
        min-width: 180px;
        cursor: pointer;
        .rtl & {
          float: left;
        }
      }
    }

    .product-stock,
    .product-price,
    .product-quantity,
    .product-subtotal {
      text-align: center;
    }
  }

  td.product-subtotal {
    color: $secondary-color;
  }

  .product-quantity {
    width: 100px;
    .quantity {
      margin: 0 auto;
    }
  }

  .product-remove {
    width: 30px;
    .remove {
      font-size: 0;

      &:before {
        @include lastudio-icon();
        content: "\ea3a";
        font-size: 14px;

        line-height: 30px;
      }
    }
  }

  .product-thumbnail {
    width: 90px;
    a{
      display: block;
      padding-right: 20px;
      .rtl & {
        padding-right: 0;
        padding-left: 20px;
      }
    }
  }

  dl {
    margin: 0;
    font-size: .875em;
    p {
      display: inline;
    }

    dt, dd {
      float: left;
      margin: 0;
      .rtl & {
        float: right;
      }
    }

    dt {
      clear: both;
      font-weight: normal;
    }
  }
}


.cart-collaterals {

  .cart_totals {
    .checkout-button {
      width: 100%;
      text-align: center;
    }
    tr{
      display: flex;
      justify-content: space-between;
      &.woocommerce-shipping-totals{
        flex-direction: column;
      }
    }
  }

  .shop_table {
    th {
      font-weight: 600;
      color: $secondary-color;
    }

    th,
    td{
      border: none;
      vertical-align: top;
      padding: 5px 0;
    }

    .amount {
      color: $secondary-color;
    }
  }

  .shipping {
    li {
      margin-bottom: 0;
    }
  }

  .woocommerce-shipping-calculator {
    .input-text:placeholder-shown {
      font-size: 14px;
    }
  }

  h2 {
    font-size: 24px;
    padding: 10px 0;
    margin-bottom: 20px;
    font-weight: 600;
    + p {
      font-size: 12px;
    }
  }

  .form-row {
    margin-bottom: 10px;
  }
}

.btn-clear-cart {
  margin-right: 10px;
}

.woocommerce > .return-to-shop,
.woocommerce > p.cart-empty {
  text-align: center;
}

.woocommerce > p.cart-empty {
  font-size: 34px;
  margin-top: 50px;
  background: none;
  padding: 0;
  margin-bottom: 0;
  color: var(--theme-secondary-color);
  &:before {
    position: static;
    content: '';
    display: block;
    padding-top: 200px;
    margin-bottom: 30px;
    background: {
      image: url(../images/cart-empty.svg);
      repeat: no-repeat;
      position: 48% top;
      size: 200px auto;
    }
  }
}

.woocommerce > .return-to-shop {
  margin-bottom: 90px;
  padding-top: 2em;
  .button{
    padding: 18px 25px;
    line-height: 20px;
    font-size: 15px;
    text-decoration: none;
    text-transform: uppercase;
    font-weight: 500;
    border: 1px solid $border-color;
    color: $secondary-color;
    background-color: transparent;
    &:hover{
      background-color: $primary-color;
      border-color: $primary-color;
      color: #fff;
    }
  }
}

.cart-collaterals .cart_totals .la-shipping-form {
  width: 100%;
  display: none !important;
}

.place-order .button,
.wc-proceed-to-checkout .button {
  display: block;
  cursor: pointer;
  padding: 20px 30px;
  transition: all 300ms ease;
  border-width: 0;
  line-height: 20px;
  font-weight: normal;
  font-size: 20px;
}

.place-order .button{
  width: 100%;
  @media(min-width: 992px){
    width: calc( 100% + var(--lakit-checkout-review-padding) * 2 );
    margin-left: calc( var(--lakit-checkout-review-padding) * -1 );
    margin-right: calc( var(--lakit-checkout-review-padding) * -1 );
  }
}

.custom-product-wrap.cross-sells {
  margin-top: 70px;
}

.woocommerce-cart .woocommerce {
  .cart_totals {
    background: #F9F9F9;
    padding: 30px 20px 0;
  }
}

.cart_totals{
  .ltr & {
    text-align: left;
  }
  .rtl & {
    text-align: right;
  }
}

.wc-proceed-to-checkout {
  margin-left: -30px;
  margin-right: -30px;
}

@media(min-width: 992px) {
  .woocommerce-cart .woocommerce {
    .cart-collaterals,
    .woocommerce-cart-form {
      display: table-cell;
      vertical-align: top;
    }
    .cart_totals {
      padding: 30px 30px 0;
      position: relative;
      position: -webkit-sticky;
      position: sticky;
      top: calc( 30px + var(--lakit-header-height, 0) + var(--adminbar-height) );
    }

    .cart-collaterals {
      min-width: 370px;
    }

    .woocommerce-cart-form {
      width: 100%;
      padding-right: 30px;
    }

    .cart-collaterals {

      .input-text {
        height: 40px;
        line-height: 38px;
        text-transform: none;
        padding: 0 15px;
        background-color: #fff;
      }

      .select2-container{
        text-align: left;
        .select2-selection--single {
          height: 40px;
          border-radius: 0;
          background: #fff;
        }
        .select2-selection__arrow {
          top: 7px;
        }
        .select2-selection__rendered {
          margin-top: 5px;
          font-size: 14px;
          padding-left: 15px;
        }
      }

      .woocommerce-shipping-calculator {
        padding-top: 0;
      }

      .order-total {
        border-top: 1px solid #DBDBDB;
        padding-top: 10px;
        margin-top: 10px;
      }
    }

    .shop_table.woocommerce-cart-form__contents {
      margin-top: 0;

      thead {
        background: none;
        th{
          color: $heading-font-color;
          border-bottom: 1px solid #DBDBDB;
        }
      }

      dl {
        font-size: 12px;
      }
    }

    td.actions {
      .coupon {
        display: inline-block;
        border-bottom: 1px solid #D8D8D8;
        width: 50%;

        label {
          display: none;
        }

        .input-text {
          padding: 0 10px 0 0;
          border: none;
          height: 34px;
          width: auto;
          min-height: 34px;
        }
      }

      .btn {
        display: none;
      }

      .button {
        background: none ;
        padding: 0;
        min-width: 0;
        border: none;
        height: auto;
        text-transform: none;
        font-weight: $heading-font-weight;
        line-height: 34px;
        color : $secondary-color;
        &:hover {
          color: $primary-color;
        }
      }
    }
  }
  .rtl.woocommerce-cart .woocommerce .cart-collaterals .select2-container{
    text-align: right;
  }
}

.woocommerce-shipping-destination {
  margin-bottom: 0;
  color: $secondary-color
}

@media(max-width: 1400px) and (min-width: 992px) {
  .woocommerce-cart .not-active-fullpage > .woocommerce .cart-collaterals {
    min-width: 300px;
  }
  .woocommerce-cart .not-active-fullpage > .woocommerce .cart_totals {
    padding: 20px 20px 0;
  }
  .woocommerce-cart .not-active-fullpage > .woocommerce .wc-proceed-to-checkout {
    margin-left: -20px;
    margin-right: -20px;
  }
  .woocommerce-cart .not-active-fullpage > .woocommerce .cart-collaterals .woocommerce-shipping-calculator {
    margin-left: -80px;
  }
}


@media (max-width: 767px) {

  .cart-flyout{
    padding: 50px 20px;
  }

  .shop_table .product-thumbnail a{
    padding: 0 !important;
  }

  .shop_table.woocommerce-cart-form__contents .product-price,
  .shop_table.woocommerce-cart-form__contents .product-quantity,
  .shop_table.woocommerce-cart-form__contents .product-subtotal {
    text-align: right;
  }
  table.shop_table_responsive tbody th,
  table.shop_table_responsive thead {
    display: none;
  }
  table.shop_table_responsive tr td {
    display: block;
    text-align: right;
    clear: both;
    min-width: 100%;
    padding: 0 0 10px;
  }
  table.shop_table_responsive tr td[data-title]:before {
    content: attr(data-title) ": ";
    float: left;
    font-size: 13px;
    color: $secondary-color;
    .rtl & {
      float: right;
    }
  }

  table.shop_table_responsive {
    dl {
      dt, dd {
        display: inline-block;
        float: none;
      }
    }
  }

  .shop_table.woocommerce-cart-form__contents tr td.product-thumbnail {
    text-align: center;
  }
  .shop_table.woocommerce-cart-form__contents tr td.product-thumbnail img {
    max-width: 50px;
  }
  .shop_table.woocommerce-cart-form__contents tr td.product-remove {
    border-width: 0;
    padding: 0;
    text-align: left;
    position: relative;
  }

  .shop_table.woocommerce-cart-form__contents tr td {
    padding: 10px;
  }

  .shop_table.woocommerce-cart-form__contents tr td.actions {
    overflow: hidden;
    padding: 10px 0;
  }


  form.track_order .button {
    width: 100%;
  }
  form.track_order .form-row .input-text {
    height: 55px;
  }

  .shop_table.woocommerce-cart-form__contents td.actions .button {
    width: 100%;
    margin-top: 10px;
  }

  .shop_table.woocommerce-cart-form__contents td.actions:before {
    display: none;
  }


  .shop_table.woocommerce-cart-form__contents {
    tr {
      position: relative;
      display: block;
      padding-top: 10px;
      padding-bottom: 20px;
      background: none;
      border: 1px solid #eee;
      margin-bottom: 17px;
      overflow: hidden;

      .ltr & {
        padding-left: 100px;
        padding-right: 25px;
      }
      .rtl & {
        padding-left: 25px;
        padding-right: 100px;
      }

      td {
        padding: 0;
        width: auto;
        border: none;
        display: block;
        min-width: 0;

        .ltr & {
          text-align: left;
        }
        .rtl & {
          text-align: right;
        }

        &:before {
          padding-right: 15px;
          font-size: 12px;
          line-height: 24px;

          .rtl & {
            padding-right: 0;
            padding-left: 15px;
          }
        }

        &.product-remove {
          position: absolute;
          top: 15px;
          z-index: 2;
          .ltr & {
            right: 10px;
          }
          .rtl & {
            left: 10px;
          }
        }

        &.product-thumbnail {
          position: absolute;
          width: 70px;
          display: inline-block;
          top: 15px;
          bottom: 15px;
          overflow: hidden;
          .ltr & {
            left: 15px;
          }

          .rtl & {
            right: 15px;
          }

          img {
            max-width: 100%;
          }
        }

        &.product-price {
          display: none;
        }

        &.product-price,
        &.product-subtotal {
          font-size: 14px;
        }

        &.product-name {
          &:before {
            display: none;
          }
        }
      }

      div.quantity {
        margin: 0;
        .qty {
          height: 20px;
          min-height: 20px;
          padding: 0;
          width: 40px;
          font-size: 13px;
          line-height: 20px;
        }
        span {
          display: none;
        }
      }
      .actions {
        label {
          display: none;
        }
      }
    }
  }
  .cart.shop_table.woocommerce-cart-form__contents tr:not(.cart_item) {
    padding: 0;
    border: none;
  }

  .cart-collaterals{
    .shipping li{
      font-size: 13px;
    }
    .wc-proceed-to-checkout {
      margin-left: -20px;
      margin-right: -20px;
    }
    h2 {
      font-size: 24px;
      margin: 0 0 20px;
      padding: 0;
    }
  }

  .shop_table.woocommerce-cart-form__contents{
    margin-bottom: 0;
  }

}
.section-checkout-step,
.lasf-extra-cart {
  display: none;
}


/*Woocommerce goal free shipping bar*/
.lakit-goal-free-shipping {
  --bar-bg: #EBEBEB;
  --bar-require-bg: #E6992F;
  --bar-require-text: #707070;
  --bar-success-bg: #3d9851;
  --bar-success-text: #3d9851;
  text-align: center;
  margin-bottom: 2em;
  width: 100%;
  color: var(--bar-success-text);
  &.required-notice{
    color: var(--bar-require-text);
    .load-percent{
      background-color: var(--bar-require-bg);
      color: var(--bar-require-bg);
    }
  }
  .la-loading-bar {
    width: 100%;
    height: 6px;
    background-color: var(--bar-bg);
    display: block;
    position: relative;
    margin-top: 0.7em;
    margin-bottom: 0.7em;
  }
  .load-percent {
    display: block;
    height: 100%;
    position: absolute;
    max-width: 100%;
    background-color: var(--bar-success-bg);
    color: var(--bar-success-bg);
    &:after {
      content: '\ea5f';
      font-family: 'LaStudioIcons';
      border: 1px solid;
      border-radius: 50%;
      top: 50%;
      position: absolute;
      display: block;
      height: auto;
      line-height: 1;
      padding: .15em;
      transform: translateY(-50%);
      background: #fff;
      font-size: 20px;
      .ltr & {
        right: 0;
      }
      .rtl & {
        left: 0
      }
    }
  }
  .label-free-shipping {
    position: relative;
    z-index: 1;
    width: 100%;
    display: block;
    font-size: 1.125em;
    line-height: 1.2;
    .amount {
      color: inherit
    }
  }
  svg {
    width: 1.5em;
    height: 1.5em;
    display: inline-block;
    vertical-align: middle;
    margin-right: 5px
  }
}

.cart-footer-actions {
  display: flex;
  align-items: center;
  justify-content: space-evenly;
  font-size: .875em;
  margin-bottom: 10px;
  a {
    flex: 1;
    display: flex;
    align-items: center;
    justify-content: center;
    padding: 5px;
    gap: 8px;
    position: relative;
    &:before {
      content: '';
      border-left: 1px solid;
      height: 20px;
      left: 0;
      position: absolute;
      opacity: .5;
      top: 50%;
      transform: translateY(-50%);
      .ltr & {
        left: 0;
      }
      .rtl & {
        right: 0;
      }
    }
    &:first-child{
      &:before{
        display: none;
      }
    }
  }
}
.cart-totals-table{
  font-weight: 600;
  table{
    margin-bottom: 10px;
    tr{
      display: flex;
      align-items: center;
    }
    td,
    th{
      border: none;
      padding: 0;
      font-weight: inherit;
    }
    td{
      margin-left: auto;
    }
  }
  .cart-subtotal,
  .order-total{
    td{
      color: $secondary-color;
      font-size: 1.125em;
    }
  }
  #shipping_method{
    margin: 0;
    text-align: right;
    font-weight: normal;
    line-height: 1.2;
  }
}
.lakit-minicart--footer{
  margin-top: auto;
  .lakit-goal-free-shipping{
    margin-bottom: 0;
    margin-top: 15px;
  }
}
.lakit-cart__list{
  .woocommerce-mini-cart__total{
    display: none;
  }
}
.lakit-cart{
  --lakit-cart-list-height: 510px;
  .lakit-cart__close-button{
    border: 1px solid;
    border-radius: 50%;
    padding: 0.4em;
    font-size: 18px;
    i{
      vertical-align: top;
    }
    &:hover{
      color: $primary-color;
    }
  }
  .lakit-cart__list{
    width: 450px;
    padding: 40px;
    max-width: 100vw;
    display: flex;
    flex-direction: column;
    height: 100% !important;
    overflow: auto;
    @media(max-width: 992px){
      padding-left: 30px;
      padding-right: 30px;
      padding-bottom: 10px;
    }
    @media(max-width: 767px){
      padding-left: 20px;
      padding-right: 20px;
    }
    .product_list_widget{
      max-height: calc( 100vh - var(--lakit-cart-list-height));
      margin-right: -6px;
      padding-right: 0;
      &::-webkit-scrollbar {
        width: 6px;
        height: 6px;
      }
      a{
        color: $secondary-color;
        font-size: 18px;
      }
    }
    &::-webkit-scrollbar {
      width: 6px;
      height: 6px;
      background-color: transparent
    }

    &::-webkit-scrollbar-track {
      border-radius: 6px;
      background-color: transparent
    }

    &::-webkit-scrollbar-thumb {
      border-radius: 6px;
      background-color: var(--theme-border-color)
    }

    &::-webkit-scrollbar-corner {
      background-color: transparent;
      border-color: transparent
    }
  }
  .lakit-cart__list-title {
    color: $secondary-color;
    margin-top: 10px;
    margin-bottom: 30px;
  }
  .widget_shopping_cart_content {
    flex-grow: 1;
    display: flex;
    flex-direction: column;
    &:before,
    &:after{
      display: none;
    }
  }
  .label-free-shipping{
    font-size: 1em;
  }
}

@media(max-height: 700px){
  .lakit-cart {
    --lakit-cart-list-height: 250px;
  }
}