.woocommerce form .form-row input.input-text,
.woocommerce form .form-row textarea {
  height: 35px;
  border: .5px solid #000000 !important;
  color: #6f7070 !important;
  padding-right: 20px;
  font-size: 14px !important;
  font-weight: 500 !important;
  font-family: "Almoni", sans-serif !important;
  outline: 0;
  line-height: normal;
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0;
  background-clip: padding-box;
  -webkit-tap-highlight-color: transparent;
  box-shadow: none;
  -webkit-box-shadow: none;
}

.woocommerce .form-row .woocommerce-input-wrapper input,
.woocommerce .form-row textarea {
  border: .5px solid #000000 !important;
}

#order_comments::placeholder {
  color: #6f7070 !important;
  font-weight: normal !important;
  font-size: 14px !important;
}

.woocommerce form .form-row label {
  display: none;
}

.woocommerce form .form-row {
  margin-bottom: 7px !important;

  padding: 0 !important;
}

.before-billing-form-wrapper {
  padding-bottom: 9px;
  border-bottom: 0.5px solid #e0e0e0;
  margin-bottom: 16px !important;
}

.woocommerce-additional-fields {
  padding-bottom: 16px;
  border-bottom: 0.5px solid #e0e0e0;
  margin-bottom: 16px;
}

.minicart-checkout .woocommerce-mini-cart__buttons .woocommerce a.remove {
  display: none !important;
}

.checkout-leftside.minicart-checkout .miniCartOnly {
  display: none !important;
}

.popup-minicart-wrapper
  .button.checkout.wc-forward.arcaffe-button-go-to-checkout {
  background: #000000 !important;
  color: #fff !important;
}

.checkout-rightfields,
.checkout-leftfields {
  width: 100% !important;
}

.woocommerce-billing-fields__field-wrapper {
  display: flex;
  align-items: flex-start;
  gap: 17px;
}

.woocommerce form .form-row {
  width: 100%;
}

.form-row-small:nth-child(odd) {
  margin-left: 4.5px !important;
}

.form-row-small:nth-child(even) {
  margin-right: 4.5px !important;
}

.minicart-checkout .minicart-name span {
  font-size: 14px !important;
  white-space: nowrap;
  text-overflow: ellipsis;
  overflow: hidden;
  display: block;
  max-width: 130px;
  direction: rtl;
}

.minicart-checkout .minicart-subtotal {
  margin-right: auto;
  padding-top: 16px !important;
}

.minicart-checkout .minicart-subtotal bdi {
  color: #060706;
  font-size: 13px !important;
  line-height: 18px !important;
  font-weight: normal !important;
}

.minicart-checkout .minicart-content {
  height: fit-content !important;
}

.minicart-checkout .product_list_widget {
  max-height: 200px;
}

.minicart-checkout .cart-freeshipping-left {
  display: none;
}

.minicart-checkout .woocommerce-mini-cart__coupon {
  border-top: 1px solid #e0e0e0;
}

.minicart-checkout .delivery-slot-info:first-of-type {
  padding-top: 12px !important;
  border-top: 1px solid #e0e0e0;
}

.minicart-checkout .delivery-method-wrapper {
  display: flex;
  align-items: center;
  gap: 7px;
}

.delivery-method-wrapper strong {
  font-size: 18px;
}

.minicart-checkout .delivery-method-wrapper strong {
  font-size: 16px;
}

.nother-address-wraper {
  display: flex;
  justify-content: space-between;
  width: 100%;
}

.nother-address-wraper p.form-row {
  width: 48.5%;
}

input:disabled {
  opacity: 0.3;
  cursor: not-allowed;
}

.field-error {
  color: #e74c3c;
  font-size: 11px;
  margin-top: 3px;
}
.form-row .woocommerce-input-wrapper input.error-field {
  border-color: #e74c3c !important;
}

.woocommerce-terms-and-conditions-wrapper {
  display: none;
}
.form-row .woocommerce-input-wrapper input.error-field::placeholder {
  color: #cd0a3c;
}
.checkout-content label.error-field {
  color: #cd0a3c !important;
}

@media (max-width: 768px) {
  .minicart-checkout .woocommerce-mini-cart__coupon span {
    font-size: 18px !important;
  }

  .minicart-checkout .delivery-method-wrapper strong {
    font-weight: normal !important;
  }

  .checkout-arcaffe-wrapper-content
    .checkout-leftside.minicart-checkout
    .delivery-slot-info-wrapper.miniCartOnly {
    display: none !important; /* на странице чекаута в корзине дважды видно строку с доставкой, один раз нужно скрыть */
  }
}

.minicart-checkout #choosedCityCollaterals {
  font-size: 18px;
}

.minicart-checkout .woocommerce-mini-cart__coupon span {
  font-size: 16px;
}

.minicart-checkout .woocommerce-mini-cart__shipping {
  display: none;
}

.minicart-checkout .minicart-subtotal bdi span {
  color: #060706;
  font-size: 13px !important;
  line-height: 18px !important;
  font-weight: normal !important;
}

.minicart-checkout .cart-quantity-button-wrapper {
  padding: 0 10px !important;
}

.minicart-checkout .cart-quantity-buttons {
  width: 100px !important;
  max-width: 100px !important;
  min-width: 100px !important;
  height: 31px !important;
}

.minicart-checkout {
  padding: 0 20px !important;
  padding-top: 33px !important;
}

.minicart-checkout .minicart-thumbnail {
  height: 85px !important;
  margin-top: auto;
}

.minicart-checkout .minicart-thumbnail a {
  width: 78px !important;
  height: 85px !important;
  min-width: 78px !important;
}

.minicart-checkout .minicart-thumbnail a img,
.minicart-checkout .minicart-thumbnail img {
  width: 78px !important;
  height: 85px !important;
  min-width: 78px !important;
}

.minicart-checkout .wrapper-widjet-cart-buttons {
  display: none;
}

.woocommerce-input-wrapper textarea {
  resize: none !important;
  height: 35px !important;
  color: #6f7070 !important;
  font-weight: bold;
  font-size: 14px;
  padding-top: 8px !important;
  padding-bottom: 7px !important;
  box-sizing: border-box;
  overflow: hidden;
}

.woocommerce-input-wrapper textarea::placeholder {
  color: #6f7070 !important;
  font-size: 14px;
  opacity: 1;
}

.accordion-arrow-checkout {
  display: none;
}

.before-billing-form-wrapper h3 {
  font-size: 20px !important;
}

.billing-return-to-prev a {
  font-size: 16px !important;
  color: #707070 !important;
}

.minicart-checkout .minicart-header {
  padding-right: 29px;
  margin-bottom: 5px;
}

.minicart-checkout .woocommerce-mini-cart__coupon span {
  font-weight: bold !important;
}

#cartChooseCityPopup {
  text-decoration: underline !important;
  font-size: 14px;
  color: #707070 !important;
}

.minicart-checkout .minicart-header h2 {
  font-size: 16px !important;
}

.minicart-checkout .minicart-header span {
  font-size: 14px !important;
}
#payment.woocommerce-checkout-payment {
  display: none;
}

.checkout-content .radioAdresses {
  display: none !important;
}

.checkout-content .before-billing-form-wrapper span.billing-return-to-prev {
text-decoration-color: #707070 !important;
}

@media (max-width: 1250px) {
  .checkout-wrapper-arcaffe .woocommerce-breadcrumb {
    padding: 0 20px;
  }
}

@media (max-width: 1100px) {
  .woocommerce-checkout .checkout-arcaffe-wrapper-content .col2-set .col-1,
  .woocommerce-checkout .checkout-arcaffe-wrapper-content .col2-set .col-2 {
    flex-direction: column-reverse;
    gap: 12px !important;
  }

  .minicart-header {
    display: none;
  }

  .minicart-checkout .accordion-arrow-checkout {
    display: flex;
  }

  .minicart-checkout .woocommerce-mini-cart__total {
    justify-content: space-between !important;
    flex-direction: row !important;
    gap: 17px !important;
  }

  .custom-total-wrapper {
    display: flex;
    align-items: center;
    gap: 16px;
  }

  .minicart-checkout .woocommerce-mini-cart__total span {
    margin-right: auto;
  }

  .minicart-checkout .woocommerce-mini-cart__coupon {
    border-top: none !important;
    order: 1;
    display: none;
  }

  .minicart-checkout .woocommerce-mini-cart__coupon span {
    font-weight: bold !important;
  }

  .minicart-checkout .woocommerce-mini-cart__coupon span:nth-child(2) span {
    font-weight: bold !important;
  }

  .minicart-checkout .woocommerce-mini-cart__shipping {
    order: 2;
    display: none;
  }

  .minicart-checkout .delivery-slot-info-wrapper {
    order: 3;
    display: none;
    flex-direction: column;
  }

  .minicart-checkout .wrapper-total-mini-cart {
    display: flex;
    flex-direction: column;
  }

  /* .minicart-checkout .delivery-slot-info-wrapper {
    display: flex;
    flex-direction: column-reverse;
  } */
  .minicart-checkout {
    padding-top: 20px !important;
  }

  .minicart-checkout .woocommerce-mini-cart__total {
    border: none !important;
  }

  .minicart-checkout .wrapper-total-mini-cart {
    padding: 0 !important;
  }

  .minicart-checkout .minicart-content {
    height: fit-content !important;
  }

  .minicart-checkout .product_list_widget {
    display: none !important;
  }

  .billing-return-to-prev {
    text-decoration: none !important;
  }

  .billing-return-to-prev a {
    font-size: 14px !important;
    color: #707070 !important;
    text-decoration: none !important;
  }

  .woocommerce-billing-fields .nav-cart-is-mobile {
    margin-bottom: 28px !important;
    padding-right: 20px;
  }

  .checkout-buttons-wrapper {
    justify-content: space-between !important;
    box-sizing: border-box;
    height: 80px;
    box-shadow: 0pt 0pt 6pt rgba(0, 0, 0, 0.3);
    padding: 0 20px;
    padding-left: 20px !important;
    box-sizing: border-box;
    gap: 19px;
    position: fixed;
    width: 100%;
    bottom: 0;
    background: #fff;
    z-index: 998 !important;
  }

  .checkout-arcaffe-wrapper-content {
    margin: 0 !important;
  }

  .checkout-arcaffe-wrapper-content .checkout-leftside {
    max-width: 100% !important;
    padding: 12px 20px !important;
  }

  .before-billing-form-wrapper {
    padding: 0 20px 8px;
  }

  .address-selector {
    padding: 0 20px;
  }

  .woocommerce-billing-fields__field-wrapper,
  .woocommerce-additional-fields {
    padding: 0 20px;
  }
}

.rtl-checkbox-group {
  direction: rtl;
  display: flex;
  flex-direction: column;
  gap: 9.8px;
  font-family: "Almoni", sans-serif;
  font-size: 13px;
  color: #060706;
  padding-bottom: 17.84px;
}

@media (max-width: 1100px) {
  .rtl-checkbox-group {
    padding: 0 20px;
    padding-bottom: 17.84px;
  }
}

.rtl-checkbox {
  position: relative;
  padding-right: 22.08px;
  cursor: pointer;
  user-select: none;
  display: flex;
  gap: 8.08px;
  align-items: center;
}

.rtl-checkbox a {
  text-decoration: underline !important;
  font-family: "Almoni", sans-serif;
  font-size: 13px;
  color: #060706;
}

.rtl-checkbox input[type="checkbox"] {
  position: absolute;
  opacity: 0;
  cursor: pointer;
  height: 0;
  width: 0;
}

.rtl-checkbox .checkmark {
  position: absolute;
  right: 0;
  height: 14px;
  width: 14px;
  background-color: white;
  border: 0.5px solid #000000;
  box-sizing: border-box;
  display: flex;
  justify-content: center;
  align-items: center;
}

.rtl-checkbox input:checked ~ .checkmark:after {
  content: "";
  width: 2px;
  height: 4px;
  margin-bottom: 2px;
  border: solid #000000;
  border-width: 0 1.5px 1.5px 0;
  transform: rotate(45deg);
}

/* Wishlist (favorite) button on each checkout order-summary item.
   Hidden everywhere the mini-cart is shown (e.g. header popup)... */
.minicart-content .uw-wishlist-button-container {
  display: none;
}

/* ...and shown only inside the checkout order summary. */
.minicart-checkout .minicart-content .uw-wishlist-button-container {
  margin-top: 10px;
  display: inline-block;
}

.minicart-checkout .uw-wishlist-button-container .uw-not-in-wishlist .uw-button-icon svg path {
  fill: transparent;
}

.minicart-remove-wishlist-wrapper {
  display: flex;
  align-items: center;
  gap: 10px;
}

.minicart-checkout .minicart-wishlist-button {
  background: none;
  border: 0;
  padding: 0;
  margin: 0;
  cursor: pointer;
  line-height: 0;
}

.minicart-checkout .minicart-wishlist-button svg {
  width: 18px;
  height: 18px;
}

/* --- Gift / greeting-card / invoice collapsible sections (checkout redesign) --- */

.arcaffe-gift-sections {
  direction: rtl;
  padding-bottom: 16px;
  border-bottom: 0.5px solid #e0e0e0;
  margin-bottom: 16px;
}

.gift-section,
.invoice-section {
  margin-bottom: 14px;
}

.gift-toggle,
.greeting-toggle,
.invoice-toggle {
  margin-bottom: 12px;
}

.greeting-toggle {
  margin-bottom: 0;
}

/* Collapsed by default; custom-checkout.js flips the [hidden] attribute. */
.gift-collapsible[hidden],
.gift-greeting-field[hidden],
.invoice-collapsible[hidden] {
  display: none !important;
}

/* The gift section captures only the recipient's name + an optional greeting,
   so the fields stack in a single column. */
.gift-collapsible {
  display: flex;
  flex-direction: column;
  gap: 12px;
  max-width: 601.6px;
}

/* Recipient first + last name sit side by side (48.5% each). */
.gift-name-row {
  display: flex;
  justify-content: space-between;
  gap: 12px;
  width: 100%;
}

.gift-name-row p.form-row {
  width: 48.5%;
  margin-bottom: 0;
}

.gift-greeting-section {
  width: 100%;
}

.gift-greeting-field {
  margin-top: 5.5px;
}

.gift-greeting-field textarea[name="gift[greeting]"] {
  min-height: 48px !important;
  height: 48px !important;
}

.gift-greeting-field .form-row,
.gift-greeting-field .woocommerce-input-wrapper {
  width: 100%;
  flex: 1 1 auto;
  display: flex;
  min-height: 0;
  margin-bottom: 0 !important;
}

.gift-greeting-field textarea {
  width: 100%;
  flex: 1 1 auto;
  min-height: 60px !important;
  height: auto !important;
  border: 0.5px solid #000000 !important;
  color: #6f7070 !important;
  padding: 10px 20px 0 10px;
  font-size: 14px !important;
  font-weight: 500 !important;
  font-family: "Almoni", sans-serif !important;
  box-sizing: border-box;
  outline: 0;
  border-radius: 0;
  overflow: auto !important;
  resize: none !important;
}

/* Invoice reveal reuses .nother-address-wraper (two 48.5% columns). */
.invoice-collapsible {
  margin-top: 8px;
}

@media (max-width: 1100px) {
  .arcaffe-gift-sections {
    padding: 0 20px 16px;
  }

  .gift-name-row {
    flex-direction: column;
  }

  .gift-name-row p.form-row {
    width: 100%;
  }

  .invoice-collapsible.nother-address-wraper {
    flex-direction: column;
  }

  .invoice-collapsible.nother-address-wraper p.form-row {
    width: 100%;
  }

  .checkout-content #address-radios {
    padding: 0;
  }

  .gift-section, .invoice-section {
    max-width: 601.6px;
  }
}

/* Shown when a summary refresh fails, so a stale panel is not silent.
   Warning colours rather than the #e74c3c of .field-error: nothing the customer
   typed is wrong, and the order itself is unaffected — only the display may be
   out of date. */
.arcaffe-summary-error {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: 12px;
  flex-wrap: wrap;
  margin-bottom: 16px;
  padding: 10px 12px;
  border: 1px solid #e0b400;
  border-radius: 4px;
  background: #fdf6e0;
  color: #060706;
  font-size: 13px;
  line-height: 18px;
}

.arcaffe-summary-retry {
  flex-shrink: 0;
  padding: 0;
  border: none;
  background: none;
  color: #060706;
  font-size: 13px;
  font-weight: bold;
  text-decoration: underline;
  cursor: pointer;
}

.arcaffe-summary-retry:hover,
.arcaffe-summary-retry:focus-visible {
  opacity: 0.7;
}

/* What the refresh had to say about the cart, above the summary it describes:
   a coupon that stopped being valid, a stock complaint, anything else the cart
   checks queue. Same box as the banner above so the panel keeps one voice;
   errors take the #e74c3c of .field-error because something the customer had is
   gone, while everything else stays in the warning palette. */
.arcaffe-summary-notices {
  margin-bottom: 16px;
}

.arcaffe-summary-notice {
  padding: 10px 12px;
  border: 1px solid #e0b400;
  border-radius: 4px;
  background: #fdf6e0;
  color: #060706;
  font-size: 13px;
  line-height: 18px;
}

.arcaffe-summary-notice + .arcaffe-summary-notice {
  margin-top: 8px;
}

.arcaffe-summary-notice.is-error {
  border-color: #e74c3c;
  background: #fdeceb;
}

.arcaffe-summary-notice a {
  color: inherit;
  text-decoration: underline;
}
