/****** Limit Order Product button ******/
#amLimitOrders-productSection {
  padding: 1rem 0;
}
#amLimitOrders-productSection #amLimitOrders-addToBasketButton {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: .6rem;
}

/****** Limit Order Checkout - Modal ******/
#am_limitorders-modal .modal-dialog {
  width: clamp(768px, 80vw, 1200px);
  max-width: none;
}
@media screen and (max-width: 768px) {
  #am_limitorders-modal .modal-dialog {
    width: 100vw;
    margin: 2rem 0;
  }
  #am_limitorders-modal .btn {
    white-space: normal;
  }
}
#am_limitorders-modal .modal-dialog .modal-body.amlimitorders-loader {
  min-height: clamp(200px, 80vh, 800px);
}

/****** Limit Order Checkout - Globals ******/
#am_limitorders-process .hidden {
  display: none;
}
#am_limitorders-process .sectionHeader {
  padding: 1rem 1rem 0 1rem;
}
#am_limitorders-process .processSection .sectionContent {
  padding: 1rem 2rem 2rem 2rem;
}
@media screen and (max-width: 768px) {
  #am_limitorders-process .sectionHeader {
    padding: 0;
  }
  #am_limitorders-process .processSection .sectionContent {
    padding: 1rem 1rem 2rem 1rem;
  }
}
#am_limitorders-process .price-limit-input.is-invalid {
  border: 1px solid #dc3545;
}

/****** Limit Order Checkout - Product ******/
.basketSection .basketProductListRow{
  display: flex;
  gap: 1rem;
}
@media screen and (max-width: 768px) {
  .basketSection .basketProductListRow {
    flex-direction: column;
  }
}
#am_limitorders-process .productContainer {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  width: 50%;
}
@media screen and (max-width: 768px) {
  #am_limitorders-process .productContainer {
    width: 100%;
  }
}
#am_limitorders-process .productContainer .product-title {
  margin-bottom: 2rem;
}
#am_limitorders-process .amLimitOrders-productForm {
  padding: 1rem;
  box-shadow: rgba(99,99,99,.2) 0 2px 8px 0;
  width: 50%;
}
@media screen and (max-width: 768px) {
  #am_limitorders-process .amLimitOrders-productForm {
    width: 100%;
  }
}
.amLimitOrders-productForm .formBlock { 
  display: flex;
  margin-bottom: 1rem;
  flex-wrap: wrap;
  align-items: center;
}
.amLimitOrders-productForm .expirationChoiceBlock.formBlock {
  align-items: flex-start;
}
.amLimitOrders-productForm .formBlockLabel {
  min-width: 200px;
  font-size: 1rem;
  text-align: left;
  margin: 0;
}
.amLimitOrders-productForm .form-value {
  display: flex;
  align-items: center;
  flex: 1;
  min-width: 150px;
  justify-content: end;
}
.amLimitOrders-productForm .expirationChoiceList {
  display: flex;
  flex-direction: column;
  flex-wrap: wrap;
  gap: .4rem;
}
.amLimitOrders-productForm .product-price-value {
  font-size: 1.2rem;
  font-weight: 500;
  padding-right: .6rem;
}
.amLimitOrders-productForm .price-limit-input input{
  font-size: 1.2rem;
  font-weight: 500;
  border: 1px solid #e2e2e2;
  border-right: none;
  max-width: 150px;
  line-height: 2rem;
  text-align: end;
}
.amLimitOrders-productForm .price-limit-input .suffix{
  font-size: 1.2rem;
  font-weight: 500;
  border: 1px solid #e2e2e2;
  border-left: none;
  line-height: 2.16rem;
  padding: 0 .6rem 0 .2rem;
}

/****** Limit Order Checkout - Basket summary ******/
.basketSummarySection {
  padding: 0 2rem;
}
.basketSummarySection .basketSummaryPriceRow {
  display: flex;
  justify-content: end;
  align-items: center;
  font-size: 1rem;
  text-align: right;
  margin: 0 0 .4rem 0;
}
@media screen and (max-width: 576px) {
  .basketSummarySection .basketSummaryPriceRow {
    flex-direction: column;
    align-items: end;
  }
}
.basketSummarySection .basketSummaryPriceRow .summaryLabel{
  flex: 1;
}
.basketSummarySection .basketSummaryPriceRow .summaryPrice{
  font-size: 1.2rem;
  min-width: 150px;
}
.basketSummarySection .basketSummaryPriceRow.totalPriceDiff .summaryPrice{
  font-weight: 600;
}

/****** Limit Order Checkout - Customer ******/
.customerSection .loginChoices {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
  justify-content: center;
}

/****** Limit Order Checkout - Address ******/
#am_limitorders-process__address .address-list-wrapper {
  margin-bottom: 1rem;
}
#am_limitorders-process__address .address-list {
  display: flex;
  flex-wrap: wrap;
  gap: 1rem;
}
@media screen and (max-width: 576px) {
  #am_limitorders-process__address .address-list {
    flex-direction: column;
  }
}
#am_limitorders-process__address .address-item {
  width: calc(50% - .5rem);
  box-shadow: rgba(99,99,99,.2) 0 2px 8px 0;
  display: flex;
}
@media screen and (max-width: 576px) {
  #am_limitorders-process__address .address-item {
    width: 100%;
  }
}
#am_limitorders-process__address .address-item .radio-block {
  padding: .8rem;
  text-align: left;
  cursor: pointer;
  margin: 0;
  width: 100%;
}
#am_limitorders-process__address .address-item .radio-block_header {
  display: flex;
  align-items: center;
  margin-bottom: .4rem;
}
#am_limitorders-process__address .address-item .radio-block_header .alias {
  font-size: 1.1rem;
  font-weight: 500;
}
#am_limitorders-process__address .address-item .radio-block_content {
  margin-left: 1.7rem;
  line-height: 1.1rem;
  color: #555;
}

/****** Limit Order Checkout - Delivery ******/
#am_limitorders-process__delivery .deliveryOptions {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
#am_limitorders-process__delivery .deliveryOption_wrapper {
  box-shadow: rgba(99,99,99,.2) 0 2px 8px 0;
  padding: 1rem;
}
#am_limitorders-process__delivery .deliveryOption_label {
  display: flex;
  text-align: left;
  cursor: pointer;
  margin-bottom: 0;
}
#am_limitorders-process__delivery .deliveryOption_radio {
  display: flex;
}
#am_limitorders-process__delivery .deliveryOption_radio .custom-radio {
  margin-right: 1rem;
}
#am_limitorders-process__delivery .deliveryOption_description {
  width: 100%;
}
#am_limitorders-process__delivery .deliveryOption_description .carrierName {
  font-size: 1rem;
  font-weight: 500;
}
#am_limitorders-process__delivery .deliveryOption_description .carrierDelay {
  margin-top: .25rem;
  color: #777;
}
#am_limitorders-process__delivery .deliveryOption_price {
  text-align: right;
  margin-left: 1rem;
}

/****** Limit Order Checkout - Delivery ******/
#am_limitorders-process__payment .paymentOptions {
  display: flex;
  flex-direction: column;
  gap: 1rem;
}
#am_limitorders-process__payment .paymentOption_label {
  display: flex;
  text-align: left;
  box-shadow: rgba(99,99,99,.2) 0 2px 8px 0;
  padding: 1rem;
  cursor: pointer;
  margin-bottom: 0;
}
#am_limitorders-process__payment .paymentOption_radio {
  display: flex;
}
#am_limitorders-process__payment .paymentOption_radio .custom-radio {
  margin-right: 1rem;
}
#am_limitorders-process__payment .paymentOption_description {
  width: 100%;
}
#am_limitorders-process__payment .paymentOption_description .paymentName {
  font-size: 1rem;
  font-weight: 500;
}

/****** Limit Order Checkout - Final summary ******/
#am_limitorders-process__summary .priceRow {
  display: flex;
  justify-content: space-between;
  margin-bottom: 1rem;
}
#am_limitorders-process__summary .priceRow {
  font-size: 1rem;
  font-weight: 500;
}
#am_limitorders-process__summary .priceRow.total {
  margin-top: 1rem;
  border-top: 1px solid #e2e2e2;
  padding-top: 1rem;
  font-size: 1.2rem;
  font-weight: 600;
}

/****** Limit Order Checkout - Terms ******/
#am_limitorders-process__terms .sectionContent .termsSection {
  padding-bottom: 2rem;
}
#am_limitorders-process__terms .termsContent {
  display: flex;
  flex-direction: column;
  align-items: center;
}



/****** Limit Order Confirmation ******/
#am_limitorders-confirmation {
  text-align: center;
}
#am_limitorders-confirmation .confirmationContent {
  padding: 2rem 0;
}
#am_limitorders-confirmation .header{
  margin-bottom: 2rem;
}
#am_limitorders-confirmation .buttonBox {
  display: flex;
  justify-content: center;
  gap: 1rem;
  padding: 1rem 0;
  flex-wrap: wrap;
}


/* loader */
.amlimitorders-loader {
  position: relative;
  opacity: .6;
}

.amlimitorders-loader:after {
  content: "";
  position: absolute;
  z-index: 11;
  top: calc(50% - 1rem);
  left: calc(50% - 1rem);
  transform: translate(-50%, -50%);
  width: 2rem;
  height: 2rem;
  border: .3rem solid #f6f6f6;
  border-top-color: #d9bb64;
  border-radius: 50%;
  animation: amlimitorders-loader 1s linear infinite;
}

@keyframes amlimitorders-loader {
  from {
    transform: rotate(0turn);
  }

  to {
    transform: rotate(1turn);
  }
}

/* loader overrides */
.amlimitorders-modal .modal-body.amlimitorders-loader:after {
  top: calc(50% - 2.6rem);
  left: calc(50% - 2.6rem);
  width: 5.2rem;
  height: 5.2rem;
  border-width: .5rem;
}