
.endcsui-checkout-address-box{
  border:1px solid #dde5ec;
  border-radius:16px;
  background:#fff;
  padding:18px;
  margin:0 0 22px;
  box-shadow:0 5px 18px rgba(22,41,58,.035);
  font-family:inherit;
}
.endcsui-checkout-address-head{
  display:flex;
  align-items:flex-start;
  gap:12px;
  margin-bottom:15px;
}
.endcsui-checkout-address-head h3{
  margin:0 0 3px;
  font-size:18px;
  line-height:1.4;
}
.endcsui-checkout-address-head p{
  margin:0;
  color:#677687;
  font-size:13px;
  line-height:1.65;
}
.endcsui-checkout-pin,
.endcsui-checkout-address-choice-icon{
  width:36px;
  height:36px;
  border-radius:10px;
  background:rgba(52,91,126,.09);
  color:#345B7E;
  display:grid;
  place-items:center;
  flex:0 0 auto;
}
.endcsui-checkout-pin svg,
.endcsui-checkout-address-choice-icon svg{
  width:18px;
  height:18px;
}
.endcsui-checkout-saved-addresses{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:10px;
  margin-bottom:15px;
}
.endcsui-checkout-address-choice{
  appearance:none;
  border:1px solid #dfe6ed;
  background:#fff;
  border-radius:13px;
  padding:12px;
  display:grid;
  grid-template-columns:auto minmax(0,1fr) auto;
  gap:10px;
  align-items:center;
  text-align:start;
  cursor:pointer;
  color:#243444;
}
.endcsui-checkout-address-choice:hover{
  border-color:#aebdca;
}
.endcsui-checkout-address-choice.is-selected{
  border-color:#345B7E;
  box-shadow:0 0 0 2px rgba(52,91,126,.08);
}
.endcsui-checkout-address-choice strong,
.endcsui-checkout-address-choice small{
  display:block;
}
.endcsui-checkout-address-choice strong{
  font-size:13px;
  margin-bottom:3px;
}
.endcsui-checkout-address-choice small{
  font-size:11px;
  color:#728191;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
}
.endcsui-checkout-address-choice em{
  font-style:normal;
  font-size:10px;
  border-radius:999px;
  padding:4px 7px;
  background:rgba(52,91,126,.08);
  color:#345B7E;
}
.endcsui-checkout-map-section{
  border-top:1px solid #edf1f4;
  padding-top:15px;
}
.endcsui-checkout-map-label{
  display:flex;
  justify-content:space-between;
  align-items:flex-start;
  gap:12px;
  margin-bottom:9px;
}
.endcsui-checkout-map-label strong,
.endcsui-checkout-map-label small{
  display:block;
}
.endcsui-checkout-map-label strong{font-size:13px}
.endcsui-checkout-map-label small{
  font-size:11px;
  color:#738191;
  margin-top:2px;
}
.endcsui-checkout-map-label a{
  font-size:11px;
  text-decoration:none;
}
#endcsui_checkout_map_url,
#endcsui_checkout_address_label{
  width:100%;
  min-height:42px;
  border:1px solid #d7e0e8;
  border-radius:10px;
  padding:8px 11px;
  box-sizing:border-box;
}
.endcsui-checkout-map-note{
  margin:8px 0 0;
  padding:9px 11px;
  border-radius:10px;
  background:rgba(52,91,126,.055);
  color:#536476;
  font-size:11px;
  line-height:1.65;
}
.endcsui-checkout-save-address{
  border-top:1px solid #edf1f4;
  margin-top:14px;
  padding-top:13px;
}
.endcsui-checkout-save-toggle{
  display:flex;
  align-items:center;
  gap:8px;
  cursor:pointer;
  font-size:12px;
}
.endcsui-checkout-address-label{
  margin-top:10px;
}
.endcsui-checkout-address-label label{
  display:block;
  font-size:12px;
  font-weight:600;
  margin-bottom:5px;
}
.endcsui-order-map-customer{
  margin-top:16px;
  padding:14px;
  border:1px solid #e0e6ec;
  border-radius:12px;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:12px;
}
.endcsui-order-map-customer a{
  display:inline-flex;
  align-items:center;
  gap:6px;
  text-decoration:none;
}
.endcsui-order-map-customer svg{width:16px;height:16px}
@media(max-width:680px){
  .endcsui-checkout-saved-addresses{grid-template-columns:1fr}
  .endcsui-checkout-map-label{display:block}
  .endcsui-checkout-map-label a{display:inline-block;margin-top:6px}
}


/* 0.11.4 — keep WooCommerce core address fields visually separate */
.woocommerce-checkout #customer_details{
  margin-top:18px;
}
.woocommerce-checkout #customer_details > .col-1,
.woocommerce-checkout #customer_details > .col-2{
  box-sizing:border-box;
  background:#fff !important;
  border:1px solid #dde5ec !important;
  border-radius:16px !important;
  padding:18px !important;
  box-shadow:0 5px 18px rgba(22,41,58,.035) !important;
}
.woocommerce-checkout #customer_details .woocommerce-billing-fields,
.woocommerce-checkout #customer_details .woocommerce-shipping-fields,
.woocommerce-checkout #customer_details .woocommerce-additional-fields{
  background:transparent !important;
  border:0 !important;
  box-shadow:none !important;
}
.woocommerce-checkout #customer_details h3{
  margin-top:0;
}

/* Map field locked by default for saved addresses */
.endcsui-checkout-map-input-row{
  display:grid;
  grid-template-columns:minmax(0,1fr) auto;
  gap:8px;
  align-items:center;
}
#endcsui_checkout_map_url.is-readonly,
#endcsui_checkout_map_url[readonly]{
  background:#f5f7f9 !important;
  color:#5d6a77 !important;
  cursor:default;
}
.endcsui-checkout-map-edit,
.endcsui-checkout-map-toggle,
.endcsui-checkout-map-open{
  min-height:42px;
  border-radius:10px;
  border:1px solid #d7e0e8;
  background:#fff;
  color:#345B7E;
  padding:8px 12px;
  font:inherit;
  font-size:12px;
  cursor:pointer;
  text-decoration:none;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  box-sizing:border-box;
}
.endcsui-checkout-map-edit:hover,
.endcsui-checkout-map-toggle:hover,
.endcsui-checkout-map-open:hover{
  border-color:#345B7E;
}
.endcsui-checkout-map-actions{
  display:flex;
  flex-wrap:wrap;
  gap:8px;
  margin-top:9px;
}
.endcsui-checkout-map-actions[hidden]{
  display:none !important;
}
.endcsui-checkout-map-preview{
  margin-top:10px;
  border:1px solid #dde5ec;
  border-radius:12px;
  overflow:hidden;
  background:#f5f7f9;
}
.endcsui-checkout-map-preview[hidden]{
  display:none !important;
}
.endcsui-checkout-map-preview iframe{
  display:block;
  width:100%;
  height:240px;
  border:0;
}
@media(max-width:680px){
  .woocommerce-checkout #customer_details > .col-1,
  .woocommerce-checkout #customer_details > .col-2{
    padding:14px !important;
  }
  .endcsui-checkout-map-input-row{
    grid-template-columns:1fr;
  }
  .endcsui-checkout-map-edit{
    width:100%;
  }
}


/* 0.11.5 — no saved map state */
.endcsui-checkout-map-empty{
  margin-top:9px;
  display:flex;
  align-items:center;
  gap:7px;
  min-height:38px;
  padding:8px 11px;
  border:1px solid #e1e7ec;
  border-radius:10px;
  background:#f7f9fb;
  color:#667584;
  font-size:11.5px;
  line-height:1.55;
}
.endcsui-checkout-map-empty[hidden]{
  display:none !important;
}
.endcsui-checkout-map-empty svg{
  width:16px;
  height:16px;
  flex:0 0 auto;
  color:#7b8996;
}

/* 0.11.5 — order information/review card matches address cards */
.woocommerce-checkout .woocommerce-checkout-review-order,
.woocommerce-checkout #order_review,
.woocommerce-checkout .woocommerce-checkout-review-order-table{
  box-sizing:border-box;
}


.woocommerce-checkout #order_review_heading{
  margin:0 0 12px !important;
  padding:0 !important;
  font-size:18px !important;
  line-height:1.4 !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table{
  margin:0 !important;
  border:0 !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
  background:transparent !important;
}

.woocommerce-checkout .woocommerce-checkout-review-order-table th,
.woocommerce-checkout .woocommerce-checkout-review-order-table td{
  border-color:#edf1f4 !important;
  padding:11px 8px !important;
  background:transparent !important;
}

.woocommerce-checkout #payment{
  margin-top:16px !important;
  border:1px solid #edf1f4 !important;
  border-radius:12px !important;
  background:#fafbfd !important;
  overflow:hidden;
}

.woocommerce-checkout #payment .payment_box{
  border-radius:10px !important;
}



/* 0.11.7 — WooCommerce cart cards */
.woocommerce-cart .woocommerce-cart-form table.shop_table,
.woocommerce-cart .cart_totals table.shop_table{
  margin:0 !important;
  border:0 !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
  background:transparent !important;
}

.woocommerce-cart .woocommerce-cart-form table.shop_table th,
.woocommerce-cart .woocommerce-cart-form table.shop_table td,
.woocommerce-cart .cart_totals table.shop_table th,
.woocommerce-cart .cart_totals table.shop_table td{
  background:transparent !important;
  border-color:#edf1f4 !important;
}

.woocommerce-cart .cart_totals h2{
  margin-top:0 !important;
  font-size:18px !important;
  line-height:1.4 !important;
}

.woocommerce-cart .wc-proceed-to-checkout{
  margin-bottom:0 !important;
}

.woocommerce-cart .woocommerce-cart-form .actions{
  padding-bottom:0 !important;
}

@media(max-width:680px){
  .woocommerce-cart .woocommerce-cart-form table.shop_table{
    border:0 !important;
  }
}


/* 0.11.8 — Google Maps help + validation */
.endcsui-checkout-map-help-toggle{
  border:0;background:transparent;padding:3px 0;color:#345B7E;
  display:inline-flex;align-items:center;gap:5px;cursor:pointer;
  font:inherit;font-size:11.5px;
}
.endcsui-checkout-map-help-toggle svg{width:15px;height:15px}
.endcsui-checkout-map-help{
  margin:0 0 11px;padding:12px;border:1px solid #e0e7ed;
  border-radius:11px;background:#f8fafb;
}
.endcsui-checkout-map-help[hidden]{display:none!important}
.endcsui-checkout-map-help ol{margin:0;padding:0 20px 0 0;display:grid;gap:8px}
.endcsui-checkout-map-help li strong,.endcsui-checkout-map-help li span{display:block}
.endcsui-checkout-map-help li strong{font-size:11.5px;margin-bottom:1px}
.endcsui-checkout-map-help li span,.endcsui-checkout-map-help p{
  font-size:10.8px;color:#687787;line-height:1.6;
}
.endcsui-checkout-map-help p{
  margin:9px 0 0;padding-top:8px;border-top:1px solid #e7ecef;
}
.endcsui-checkout-map-validation{
  margin-top:7px;padding:7px 9px;border-radius:9px;
  background:#fff3f3;color:#b42318;font-size:11px;line-height:1.55;
}
.endcsui-checkout-map-validation[hidden]{display:none!important}
#endcsui_checkout_map_url.has-error{
  border-color:#d92d20!important;
  box-shadow:0 0 0 2px rgba(217,45,32,.07)!important;
}


/* 0.15.5 — address selector must stay before checkout address fields/cards */
#customer_details > #endcsui-checkout-address-box.endcsui-checkout-address-first{
  order:-9999 !important;
  flex:0 0 100% !important;
  width:100% !important;
  max-width:none !important;
  grid-column:1 / -1 !important;
}
form.checkout #endcsui-checkout-address-box.endcsui-checkout-address-first,
form.woocommerce-checkout #endcsui-checkout-address-box.endcsui-checkout-address-first{
  position:relative;
  z-index:1;
}


/* 0.17.15 — stronger address distinction + map input location cue */
.endcsui-checkout-address-box{
  border-color:#7fa6ca;
  border-width:1.5px;
  box-shadow:0 0 0 3px rgba(52,91,126,.035),0 7px 20px rgba(22,41,58,.045);
}

.endcsui-checkout-address-choice{
  border-color:#c8d8e7;
}

.endcsui-checkout-address-choice:hover{
  border-color:#6f98bc;
  box-shadow:0 2px 10px rgba(52,91,126,.055);
}

.endcsui-checkout-address-choice.is-selected{
  border-color:#345B7E;
  border-width:1.5px;
  background:rgba(52,91,126,.025);
  box-shadow:0 0 0 3px rgba(52,91,126,.085);
}

.endcsui-checkout-map-input-row{
  grid-template-columns:42px minmax(0,1fr) auto;
}

.endcsui-checkout-map-input-icon{
  width:42px;
  height:42px;
  display:grid;
  place-items:center;
  border:1px solid #c9d8e5;
  border-radius:10px;
  background:rgba(52,91,126,.075);
  color:#345B7E;
  box-sizing:border-box;
}

.endcsui-checkout-map-input-icon svg{
  width:18px;
  height:18px;
}

#endcsui_checkout_map_url{
  min-width:0;
}

@media(max-width:680px){
  .endcsui-checkout-map-input-row{
    grid-template-columns:42px minmax(0,1fr);
  }

  .endcsui-checkout-map-edit{
    grid-column:1 / -1;
  }
}


/* 0.17.17 — stable priority placement for checkout address selector */
#endcsui-checkout-address-box.endcsui-checkout-address-pending{
  visibility:hidden !important;
  pointer-events:none !important;
}

#customer_details > #endcsui-checkout-address-box.endcsui-checkout-address-first{
  visibility:visible !important;
  pointer-events:auto !important;
  order:-9999 !important;
  flex:0 0 100% !important;
  width:100% !important;
  max-width:none !important;
  grid-column:1 / -1 !important;
  position:relative !important;
  inset:auto !important;
  z-index:auto !important;
  float:none !important;
  clear:both !important;
  transform:none !important;
  margin-top:0 !important;
  margin-bottom:18px !important;
}


/* 0.17.18 — optional promotion of selected saved address */
.endcsui-checkout-make-primary{
  margin-top:12px;
  padding:11px 12px;
  border:1px solid #c9d9e7;
  border-radius:11px;
  background:rgba(52,91,126,.045);
}

.endcsui-checkout-make-primary[hidden]{
  display:none!important;
}

.endcsui-checkout-make-primary label{
  display:flex;
  align-items:flex-start;
  gap:9px;
  margin:0;
  cursor:pointer;
}

.endcsui-checkout-make-primary input{
  margin-top:3px;
  flex:0 0 auto;
}

.endcsui-checkout-make-primary strong,
.endcsui-checkout-make-primary small{
  display:block;
}

.endcsui-checkout-make-primary strong{
  color:#294a68;
  font-size:12.5px;
  line-height:1.5;
}

.endcsui-checkout-make-primary small{
  margin-top:2px;
  color:#718191;
  font-size:11.5px;
  line-height:1.55;
}


/* 0.17.29 — checkout address context / review / cross-country notice */
.endcsui-checkout-address-mode,
.endcsui-checkout-review-notice,
.endcsui-checkout-country-warning{
  display:flex;
  align-items:flex-start;
  gap:10px;
  margin-top:12px;
  padding:11px 12px;
  border-radius:11px;
  font-size:12px;
  line-height:1.6;
}
.endcsui-checkout-address-mode[hidden],
.endcsui-checkout-review-notice[hidden],
.endcsui-checkout-country-warning[hidden]{
  display:none!important;
}
.endcsui-checkout-address-mode{
  background:#f4f8fc;
  border:1px solid #d6e3ef;
  color:#426078;
}
.endcsui-checkout-address-mode>.endcsui-svg,
.endcsui-checkout-review-notice>.endcsui-svg,
.endcsui-checkout-country-warning>.endcsui-svg{
  width:17px;
  height:17px;
  margin-top:2px;
  flex:0 0 17px;
}
.endcsui-checkout-review-notice{
  background:#fffaf0;
  border:1px solid #efd9a7;
  color:#75591e;
}
.endcsui-checkout-review-notice>div{
  flex:1;
  min-width:0;
}
.endcsui-checkout-review-notice strong,
.endcsui-checkout-review-notice small{
  display:block;
}
.endcsui-checkout-review-notice small{
  margin-top:2px;
  color:#80672f;
}
.endcsui-checkout-review-notice button{
  flex:0 0 auto;
  min-height:32px;
  padding:0 10px;
  border:1px solid #dfbf68;
  border-radius:8px;
  background:#fff;
  color:#745513;
  cursor:pointer;
  font:700 11px inherit;
}
.endcsui-checkout-country-warning{
  background:#fff5f1;
  border:1px solid #efc5b8;
  color:#7d3f2e;
}
.endcsui-checkout-country-warning label{
  display:flex;
  align-items:flex-start;
  gap:9px;
  margin:0;
  cursor:pointer;
}
.endcsui-checkout-country-warning input{
  margin-top:4px;
  flex:0 0 auto;
}
.endcsui-checkout-country-warning strong,
.endcsui-checkout-country-warning small{
  display:block;
}
.endcsui-checkout-country-warning small{
  margin-top:2px;
  color:#825646;
}
@media(max-width:680px){
  .endcsui-checkout-review-notice{
    flex-wrap:wrap;
  }
  .endcsui-checkout-review-notice button{
    margin-inline-start:27px;
  }
}


/* 0.17.30 — compact saved-address update prompt */
.endcsui-checkout-review-notice{
  padding:9px 10px;
  gap:8px;
}
.endcsui-checkout-review-notice strong{
  font-size:11px;
  line-height:1.45;
}
.endcsui-checkout-review-notice small{
  font-size:10px;
  line-height:1.55;
}
.endcsui-checkout-review-notice button{
  min-height:30px;
  padding:0 9px;
  font-size:10px;
  white-space:nowrap;
}


/* 0.17.31 — editing a saved checkout address keeps the same card selected */
.endcsui-checkout-address-choice.is-editing{
  border-color:#d2a846!important;
  box-shadow:0 0 0 3px rgba(210,168,70,.12)!important;
}
.endcsui-checkout-address-choice.is-editing::after{
  content:"قيد التحديث";
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:22px;
  margin-inline-start:auto;
  padding:0 7px;
  border-radius:999px;
  background:#fff7df;
  color:#846114;
  font-size:9px;
  font-weight:800;
  white-space:nowrap;
}


/* 0.17.42 — new checkout address must remain interactive */
.woocommerce-checkout form.checkout #customer_details input:not([type="hidden"]),
.woocommerce-checkout form.checkout #customer_details select,
.woocommerce-checkout form.checkout #customer_details textarea{
  pointer-events:auto;
}
.woocommerce-checkout form.checkout #customer_details .woocommerce-billing-fields__field-wrapper,
.woocommerce-checkout form.checkout #customer_details .woocommerce-shipping-fields__field-wrapper{
  pointer-events:auto;
}
