#billing_rk_city_search_field .woocommerce-input-wrapper {
  position: relative;
}
#billing_rk_city_search_field .woocommerce-input-wrapper .rk-city-dropdown {
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  z-index: 9999;
  background: #fff;
  border: 1px solid rgba(0, 0, 0, 0.12);
  max-height: 240px;
  overflow: auto;
  display: none;
  padding: 4px 0;
}
#billing_rk_city_search_field .woocommerce-input-wrapper .rk-city-dropdown.visible {
  display: block;
}
#billing_rk_city_search_field .woocommerce-input-wrapper .rk-city-dropdown .rk-city-option {
  padding: 8px 12px;
  cursor: pointer;
}
#billing_rk_city_search_field .woocommerce-input-wrapper .rk-city-dropdown .rk-city-option:hover {
  background: #f5f5f5;
}

.rk-message {
  display: block;
  padding: 12px 16px;
  border-radius: 6px;
  font-size: 14px;
  line-height: 1.4;
  margin: 10px 0;
  border: 1px solid #b7e4c7;
  background-color: #e6f7ed;
  color: #1e7e34;
}
.rk-message:empty {
  display: none;
}

.rk-city-info {
  display: none !important;
}

.rk-date-wrapper {
  margin-top: 8px;
}

/* Pickup Date Field Display Rules for Door-to-Door Cities */
body.rk-city-selected #billing_rk_pickup_date_field,
body.rk-city-found #billing_rk_pickup_date_field {
  display: block !important;
  visibility: visible !important;
  opacity: 1 !important;
}

body.rk-city-not-found #billing_rk_pickup_date_field {
  display: none !important;
}

#billing_rk_city_search_field {
  position: relative;
}
#billing_rk_city_search_field .woocommerce-input-wrapper {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 8px;
}

/* Phone Recognition Badge Styling */
.rk-phone-type-badge {
  display: inline-flex;
  align-items: center;
  gap: 6px;
  margin-top: 6px;
  padding: 5px 12px;
  border-radius: 6px;
  font-size: 12px;
  font-weight: 700;
  line-height: 1.2;
  transition: all 0.2s ease;
  width: fit-content;
}

.rk-phone-type-badge.rk-phone-mobile {
  background-color: #e2f5e9;
  color: #1e7e34;
  border: 1px solid #c3ebd0;
}

.rk-phone-type-badge.rk-phone-landline {
  background-color: #f0f0f0;
  color: #555555;
  border: 1px solid #dcdcdc;
}

.rk-phone-type-badge.rk-phone-invalid {
  background-color: #f8d7da;
  color: #721c24;
  border: 1px solid #f5c6cb;
}

/* ════════════════════════════════════════════════════════════════
   Order Review & Cart Summary Card Styling ("Details of your Request")
   ════════════════════════════════════════════════════════════════ */
.woocommerce-checkout #order_review table.shop_table thead th.product-total,
.woocommerce-checkout #order_review table.shop_table tbody td.product-total {
  display: none !important;
}

.woocommerce-checkout #order_review table.shop_table thead th.product-name,
.woocommerce-checkout #order_review table.shop_table tbody td.product-name {
  width: 100% !important;
}

.woocommerce-checkout #order_review table.shop_table td.product-name dl.variation,
.woocommerce-cart table.shop_table td.product-name dl.variation,
.woocommerce-checkout #order_review table.shop_table ul.wc-item-meta,
.woocommerce-cart table.shop_table ul.wc-item-meta {
  margin-top: 10px !important;
  margin-bottom: 6px !important;
  padding: 16px !important;
  background-color: #fdfbf7 !important;
  border: 1px solid #ebdcc5 !important;
  border-radius: 12px !important;
  display: block !important;
  box-shadow: 0 2px 6px rgba(0, 0, 0, 0.02) !important;
  box-sizing: border-box !important;
  width: 100% !important;
}

.woocommerce-checkout #order_review table.shop_table td.product-name dl.variation dt,
.woocommerce-cart table.shop_table td.product-name dl.variation dt {
  float: left !important;
  clear: both !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  color: #615a52 !important;
  line-height: 1.6 !important;
  margin: 0 !important;
  padding: 4px 0 !important;
  border-bottom: 1px solid #f2e9dc !important;
  width: 48% !important;
}

.woocommerce-checkout #order_review table.shop_table td.product-name dl.variation dd,
.woocommerce-cart table.shop_table td.product-name dl.variation dd {
  float: right !important;
  font-size: 13px !important;
  font-weight: 800 !important;
  color: #161821 !important;
  line-height: 1.6 !important;
  margin: 0 !important;
  padding: 4px 0 !important;
  text-align: right !important;
  border-bottom: 1px solid #f2e9dc !important;
  width: 48% !important;
}

.woocommerce-checkout #order_review table.shop_table td.product-name dl.variation dt:last-of-type,
.woocommerce-checkout #order_review table.shop_table td.product-name dl.variation dd:last-of-type,
.woocommerce-cart table.shop_table td.product-name dl.variation dt:last-of-type,
.woocommerce-cart table.shop_table td.product-name dl.variation dd:last-of-type {
  border-bottom: none !important;
}

.woocommerce-checkout #order_review table.shop_table td.product-name dl.variation dd del,
.woocommerce-cart table.shop_table td.product-name dl.variation dd del {
  text-decoration: line-through !important;
  opacity: 0.55 !important;
  font-weight: 500 !important;
  margin-right: 5px !important;
  color: #777 !important;
}

.woocommerce-checkout #order_review table.shop_table td.product-name dl.variation dt.variation-BillingExplanation,
.woocommerce-cart table.shop_table td.product-name dl.variation dt.variation-BillingExplanation {
  display: none !important;
}

.woocommerce-checkout #order_review table.shop_table td.product-name dl.variation dd.variation-BillingExplanation,
.woocommerce-cart table.shop_table td.product-name dl.variation dd.variation-BillingExplanation {
  width: 100% !important;
  float: none !important;
  clear: both !important;
  text-align: left !important;
  font-size: 12px !important;
  font-weight: 500 !important;
  color: #635c54 !important;
  line-height: 1.45 !important;
  margin-top: 10px !important;
  padding: 10px 12px !important;
  background: #f4ecdf !important;
  border-radius: 8px !important;
  border-bottom: none !important;
}

.woocommerce-checkout #order_review table.shop_table td.product-name dl.variation dd p,
.woocommerce-cart table.shop_table td.product-name dl.variation dd p {
  margin: 0 !important;
  display: inline !important;
  font-weight: inherit !important;
  font-size: inherit !important;
}

.woocommerce-checkout #order_review table.shop_table td.product-name dl.variation::after,
.woocommerce-cart table.shop_table td.product-name dl.variation::after {
  content: "";
  display: table;
  clear: both;
}

/* ════════════════════════════════════════════════════════════════
   Mobile Accessibility & Chat Widget Overlap Prevention
   ════════════════════════════════════════════════════════════════ */
@media (max-width: 768px) {
  .woocommerce-checkout #payment .place-order,
  .woocommerce-checkout #order_review #payment .form-row.place-order,
  .woocommerce-checkout #place_order {
    position: relative !important;
    z-index: 100000 !important;
    margin-bottom: 70px !important;
  }

  .woocommerce-checkout {
    padding-bottom: 80px !important;
  }

  /* Prevent chat widgets from obscuring Place Order controls */
  iframe[title*="chat" i],
  iframe[id*="chat" i],
  #tidio-chat,
  #crisp-chatbox,
  .chat-widget,
  #whatsapp-widget,
  .joinchat,
  .widget-floated,
  [class*="chat-widget"] {
    z-index: 9999 !important;
    max-bottom: 10px !important;
  }
}