/*
Theme Name: Hello Elementor Child
Theme URI: https://elementor.com/hello-theme/
Description: Child theme for Hello Elementor
Author: Moaz
Template: hello-elementor
Version: 1.0.0
Text Domain: hello-elementor-child
*/
/* Put currency on new line */
.woocommerce .price .woocommerce-Price-currencySymbol{
  display:block;
  margin-top:4px;
  line-height:1;

}
/* =========================
   Henna Hamda ATC (Clean)
   ========================= */

.hh-atc{
  --hh-accent:#C9A46A;                 /* gold */
  --hh-text:#F6E7D0;                   /* light text */
  --hh-stroke:rgba(201,164,106,.65);   /* border */
  --hh-glass:rgba(255,255,255,.03);    /* subtle bg */
  --hh-wrap:rgba(15,11,7,.45);         /* wrapper bg */
}

/* Font */
.hh-atc,
.hh-atc *{
  font-family:"IBM Plex Sans Arabic","Tajawal",Arial,sans-serif !important;
}

/* Wrapper border */
.hh-atc form.cart{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  direction:rtl;

  border:2px solid var(--hh-stroke) !important;
  border-radius:22px !important;
  padding:16px 18px !important;
  background:var(--hh-wrap) !important;

  box-shadow:0 0 0 1px rgba(201,164,106,.10), 0 18px 40px rgba(0,0,0,.35) !important;
}

/* Buttons base */
.hh-atc form.cart .single_add_to_cart_button,
.hh-atc form.cart .hh-buy-now{
  border-radius:999px !important;
  padding:14px 26px !important;
  font-weight:900 !important;
  font-size:2em !important;
  line-height:1 !important;
  margin:0 !important;
  white-space:nowrap !important;
  transition:transform .18s ease, box-shadow .18s ease, border-color .25s ease, color .25s ease;
}

/* Buy button (filled) */
.hh-atc form.cart .hh-buy-now{
  background:var(--hh-accent) !important;
  border:1px solid var(--hh-accent) !important;
  color:#fff !important;
}
.hh-atc form.cart .hh-buy-now:hover{
  transform:translateY(-1px);
  box-shadow:0 10px 24px rgba(201,164,106,.18);
}

/* Add button (outline + fill on hover from right to left) */
.hh-atc form.cart .single_add_to_cart_button{
  position:relative !important;
  overflow:hidden !important;
  isolation:isolate !important; /* keeps layers inside */
  background:transparent !important;
  border:1px solid var(--hh-stroke) !important;
  color:var(--hh-text) !important;
  text-shadow:none !important;
}

/* fill layer BEHIND text */
.hh-atc form.cart .single_add_to_cart_button::before{
  content:"" !important;
  position:absolute !important;
  inset:0 !important;
  background:var(--hh-accent) !important;
  transform:scaleX(0) !important;
  transform-origin:right !important;      /* right -> left */
  transition:transform .35s ease !important;
  z-index:-1 !important;
  pointer-events:none !important;
}

/* kill any theme overlay pseudo */
.hh-atc form.cart .single_add_to_cart_button::after{
  content:none !important;
}

/* Hover: fill + keep text WHITE (as requested) */
.hh-atc form.cart .single_add_to_cart_button:hover{
  border-color:var(--hh-accent) !important;
  color:#fff !important;                  /* ✅ white on hover */
  transform:translateY(-1px);
}
.hh-atc form.cart .single_add_to_cart_button:hover::before{
  transform:scaleX(1) !important;
}

/* Quantity capsule (keep + on the left like reference) */
.hh-atc form.cart .quantity{
  display:flex !important;
  align-items:center !important;
  gap:10px !important;
  direction:ltr !important;

  padding:10px 14px !important;
  border:2px solid var(--hh-stroke) !important;
  border-radius:999px !important;
  background:var(--hh-glass) !important;
}

/* Remove default arrows */
.hh-atc form.cart .quantity input.qty{
  -moz-appearance:textfield;
}
.hh-atc form.cart .quantity input.qty::-webkit-outer-spin-button,
.hh-atc form.cart .quantity input.qty::-webkit-inner-spin-button{
  -webkit-appearance:none;
  margin:0;
}

/* Qty input */
.hh-atc form.cart .quantity input.qty{
  width:52px !important;
  border:none !important;
  background:transparent !important;
  color:var(--hh-text) !important;
  text-align:center !important;
  font-weight:900 !important;
  font-size:20px !important;
  padding:0 !important;
  outline:none !important;
}

/* Plus button (from our JS) */
.hh-atc form.cart .quantity .hh-qty-plus{
  width:44px !important;
  height:44px !important;
  border-radius:999px !important;
  border:2px solid var(--hh-stroke) !important;
  background:transparent !important;
  color:var(--hh-text) !important;
  font-size:28px !important;
  font-weight:900 !important;
  line-height:1 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  cursor:pointer !important;
  padding:0 !important;
  transition:background .25s ease, transform .18s ease;
}
.hh-atc form.cart .quantity .hh-qty-plus:hover{
  background:rgba(201,164,106,.12) !important;
  transform:translateY(-1px);
}
/* Correct visual order (RTL): Buy -> Add -> Quantity */
.hh-atc form.cart .hh-buy-now{ order: 1 !important; }
.hh-atc form.cart .single_add_to_cart_button{ order: 2 !important; }
.hh-atc form.cart .quantity{ order: 3 !important; margin-inline-start: 0 !important; }


/* Mobile fix */
@media  (max-width: 1260px){

  .hh-atc form.cart{
    flex-wrap: wrap !important;
    justify-content: center !important;
    gap: 10px !important;
  }

  /* buttons side by side, full readability */
  .hh-atc form.cart .hh-buy-now,
  .hh-atc form.cart .single_add_to_cart_button{
    flex: 1 1 45% !important;       /* two buttons in one row */
    min-width: 140px !important;     /* prevents text cut */
    text-align: center !important;
    font-size: 1.4em !important;     /* smaller than desktop */
    padding: 14px 16px !important;
  }

  /* quantity goes to next line full width */
  .hh-atc form.cart .quantity{
    flex: 1 1 100% !important;
    justify-content: center !important;
    order: 3 !important;
  }

  /* keep + and number centered */
  .hh-atc form.cart .quantity input.qty{
    font-size: 18px !important;
  }
}

/* Product page only + Desktop only */
@media (min-width: 1025px){

  /* 1) Hide wc-order-attribution-inputs tag */
  body.single-product wc-order-attribution-inputs{
    display: none !important;
  }

  /* 2) Hide Stripe clear block */
  body.single-product .wc-stripe-clear{
    display: none !important;
  }

  /* 3) Hide Stripe product checkout container (bottom active) */
  body.single-product .wc-stripe-product-checkout-container.bottom.active{
    display: none !important;
  }

}
/* Product page: make all H2 white */
.single-product h2{
  color: #fff !important;
}
.single-product 

/* Phone field: placeholder RTL, typing LTR */
.woocommerce-checkout input#billing_phone{
  text-align: right !important;
  direction: ltr;
}

/* While placeholder is visible (field empty) keep it RTL so placeholder aligns right */
.woocommerce-checkout input#billing_phone:placeholder-shown{
  text-align: right;
  direction: rtl;
}

/* 1) Hide Elementor footer buttons inside mini cart (View cart / Checkout) */
.pa-woo-mc__content-wrapper .elementor-menu-cart__footer-buttons{
  display: none !important;
}

/* (اختياري) Hide Elementor subtotal block too if you want only PA footer */
.pa-woo-mc__content-wrapper .elementor-menu-cart__subtotal{
  display: none !important;
}

/* 2) Card + shadow around each product row */
.pa-woo-mc__content-wrapper .elementor-menu-cart__product.woocommerce-cart-form__cart-item{
  border: 1px solid rgba(201,164,106,.25) !important;
  border-radius: 16px !important;
  padding: 12px !important;
  margin: 0 0 12px !important;
  background: rgba(255,255,255,.03) !important;
  box-shadow: 0 18px 40px rgba(0,0,0,.35) !important;
}

/* Make the product row layout clean */
.pa-woo-mc__content-wrapper .elementor-menu-cart__product{
  display: grid !important;
  grid-template-columns: 64px 1fr 28px !important;
  grid-template-areas:
    "img name remove"
    "img price remove";
  column-gap: 12px !important;
  row-gap: 6px !important;
  align-items: start !important;
}

.pa-woo-mc__content-wrapper .elementor-menu-cart__product-image{ grid-area: img; }
.pa-woo-mc__content-wrapper .elementor-menu-cart__product-name{ grid-area: name; }
.pa-woo-mc__content-wrapper .elementor-menu-cart__product-price{ grid-area: price; }
.pa-woo-mc__content-wrapper .elementor-menu-cart__product-remove{ grid-area: remove; }

/* 3) Force remove icon to appear (some themes set opacity/size to 0) */
.pa-woo-mc__content-wrapper .elementor-menu-cart__product-remove a{
  display: inline-flex !important;
  width: 28px !important;
  height: 28px !important;
  align-items: center !important;
  justify-content: center !important;
  opacity: 1 !important;
  visibility: visible !important;
  position: relative !important;
}

/* If the remove link has no visible icon, draw one */
.pa-woo-mc__content-wrapper .elementor-menu-cart__product-remove a::before{
  content: "×" !important;
  font-size: 22px !important;
  font-weight: 900 !important;
  line-height: 1 !important;
  color: rgba(246,231,208,.85) !important;
}

/* Hover */
.pa-woo-mc__content-wrapper .elementor-menu-cart__product-remove a:hover::before{
  color: #fff !important;
}
/* Hide duplicate remove link (keep only .remove_from_cart_button) */
.pa-woo-mc__content-wrapper .elementor-menu-cart__product-remove a.elementor_remove_from_cart_button{
  display: none !important;
}

/* Also force link color (in case pseudo inherits) */
.pa-woo-mc__content-wrapper .elementor-menu-cart__product-remove a:hover,
.pa-woo-mc__content-wrapper .elementor-menu-cart__product-remove:hover a{
  color: red !important;
  opacity: 1 !important;
  visibility: visible !important;
  background:red !important;
}
/* Remove strange scroll/steppers in empty mini cart view */
.pa-woo-mc__widget-shopping-outer-wrapper,
.pa-woo-mc__widget-shopping-outer-wrapper .widget_shopping_cart_content{
  overflow: hidden !important;
}

/* In case it's number input steppers leaking from other styles */
.pa-woo-mc__widget-shopping-outer-wrapper input[type="number"]::-webkit-outer-spin-button,
.pa-woo-mc__widget-shopping-outer-wrapper input[type="number"]::-webkit-inner-spin-button{
  -webkit-appearance: none !important;
  margin: 0 !important;
}
.pa-woo-mc__widget-shopping-outer-wrapper input[type="number"]{
  -moz-appearance: textfield !important;
}

/* Quantity input padding (Cart Block) */
.wc-block-components-quantity-selector__input{
  padding: 0 14px !important;   /* زوّد/قلّل الرقم حسب اللي يعجبك */
}

/* Proceed to checkout button colors + remove underline */
.wc-block-cart__submit a.wc-block-cart__submit-button{
  background: #C9A46A !important;
  border-color: #C9A46A !important;
  text-decoration: none !important; /* remove underline */
}

.wc-block-cart__submit a.wc-block-cart__submit-button .wc-block-components-button__text{
  color: #120C07 !important;
  font-weight: 900 !important;
}

/* Hover */
.wc-block-cart__submit a.wc-block-cart__submit-button:hover{
  filter: brightness(1.03);
}


/* =========================================================
   Henna Hamda — Checkout Page (Warm Light Edition)
   Target: body.woocommerce-checkout
   Font stack: IBM Plex Arabic (Arabic) —
   ========================================================= */


/* ── Design Tokens ──────────────────────────────────────── */
body.woocommerce-checkout {
  --hh-bg:       #FAF7F2;
  --hh-surface:  #FFFFFF;
  --hh-surface2: #F5F0E8;
  --hh-stroke:   #E2D4BC;
  --hh-stroke-s: rgba(174,139,87,.20);
  --hh-accent:   #AE8B57;
  --hh-accent-d: #8C6E3F;
  --hh-accent-l: rgba(174,139,87,.12);
  --hh-text:     #2B2117;
  --hh-muted:    #7A6650;
  --hh-error:    #C0392B;
  --hh-success:  #27AE60;
  --hh-r:        20px;
  --hh-r-sm:     12px;
  --hh-shadow:   0 4px 24px rgba(43,33,23,.08);
  --hh-shadow-l: 0 2px 10px rgba(43,33,23,.05);

  background: var(--hh-bg) !important;
  color: var(--hh-text) !important;
  font-family: 'IBM Plex Sans Arabic', Arial, sans-serif !important;
}

/* ── Noise texture overlay for warmth ───────────────────── */
body.woocommerce-checkout::before {
  content: '';
  position: fixed;
  inset: 0;
  pointer-events: none;
  z-index: 0;
  background-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='n'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.9' numOctaves='4' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23n)' opacity='0.03'/%3E%3C/svg%3E");
  background-size: 256px 256px;
  opacity: .4;
}

body.woocommerce-checkout .woocommerce { position: relative; z-index: 1; }

/* ── Wrapper ─────────────────────────────────────────────── */
body.woocommerce-checkout .woocommerce {
  max-width: 1100px;
  margin: 0 auto;
  padding: 32px 20px 80px;
}

/* ── Page title / header strip ───────────────────────────── */
body.woocommerce-checkout .woocommerce > h1,
body.woocommerce-checkout .woocommerce > h2 {
  text-align: center;
  font-weight: 900;
  color: var(--hh-text) !important;
  font-size: 28px;
  margin-bottom: 28px;
}

/* ── Coupon notice ───────────────────────────────────────── */
body.woocommerce-checkout .woocommerce-form-coupon-toggle {
  margin-bottom: 16px;
}
body.woocommerce-checkout .woocommerce-info {
  background: var(--hh-accent-l) !important;
  border: 1px solid var(--hh-stroke) !important;
  border-right: 4px solid var(--hh-accent) !important;
  color: var(--hh-text) !important;
  border-radius: var(--hh-r-sm) !important;
  padding: 14px 18px !important;
  font-size: 14px;
  box-shadow: none !important;
}
body.woocommerce-checkout .woocommerce-info::before { display: none !important; }
body.woocommerce-checkout .woocommerce-info a.showcoupon {
  color: var(--hh-accent) !important;
  font-weight: 700;
  text-decoration: underline;
}



/* ── Error / Notice messages (full-width, doesn't crash layout) ── */
body.woocommerce-checkout .woocommerce-notices-wrapper {
  grid-column: 1 / -1 !important;
  width: 100% !important;
  margin-bottom: 12px;
}
body.woocommerce-checkout .woocommerce-notices-wrapper:empty { display: none; }
body.woocommerce-checkout .woocommerce-error,
body.woocommerce-checkout ul.woocommerce-error {
  background: #FEF2F2 !important;
  border: 1px solid #FECACA !important;
  border-right: 4px solid var(--hh-error) !important;
  border-radius: var(--hh-r-sm) !important;
  color: var(--hh-error) !important;
  padding: 14px 18px !important;
  font-size: 14px;
  list-style: none !important;
  box-shadow: none !important;
  margin: 0 0 16px !important;
}
body.woocommerce-checkout .woocommerce-error li { padding: 2px 0; }
body.woocommerce-checkout .woocommerce-error::before { display: none !important; }
body.woocommerce-checkout .woocommerce-message {
  background: #F0FDF4 !important;
  border: 1px solid #BBF7D0 !important;
  border-right: 4px solid var(--hh-success) !important;
  border-radius: var(--hh-r-sm) !important;
  color: var(--hh-success) !important;
  padding: 14px 18px !important;
  box-shadow: none !important;
  margin: 0 0 16px !important;
}
body.woocommerce-checkout .woocommerce-message::before { display: none !important; }

/* ── Main checkout grid ───────────────────────────────────── */
body.woocommerce-checkout form.checkout.woocommerce-checkout {
  display: grid !important;
  grid-template-columns: 1.15fr 0.85fr !important;
  grid-template-rows: auto auto !important;
  gap: 24px !important;
  align-items: start !important;
}

/* Grid placement */
body.woocommerce-checkout #customer_details   { grid-column: 1; grid-row: 1; }
body.woocommerce-checkout #order_review_heading { grid-column: 2; grid-row: 1; align-self: end; }
body.woocommerce-checkout #order_review       { grid-column: 2; grid-row: 1; position: sticky; top: 100px; }

/* Hide duplicate heading */
h3#order_review_heading { display: none !important; }

/* ── Left card: billing details ───────────────────────────── */
body.woocommerce-checkout #customer_details {
  background: var(--hh-surface) !important;
  border: 1.5px solid var(--hh-stroke) !important;
  border-radius: var(--hh-r) !important;
  padding: 32px 28px !important;
  box-shadow: var(--hh-shadow) !important;
}
body.woocommerce-checkout #customer_details .col-1,
body.woocommerce-checkout #customer_details .col-2 {
  float: none !important;
  width: 100% !important;
}

/* Section heading inside the card */
body.woocommerce-checkout #customer_details h3 {
  font-size: 20px !important;
  font-weight: 900 !important;
  color: var(--hh-text) !important;
  margin: 0 0 22px !important;
  padding-bottom: 14px !important;
  border-bottom: 1.5px solid var(--hh-stroke) !important;
  display: flex;
  align-items: center;
  gap: 8px;
}
body.woocommerce-checkout #customer_details h3::before {
  content: '';
  display: inline-block;
  width: 4px;
  height: 22px;
  background: var(--hh-accent);
  border-radius: 4px;
}

/* ── Form rows ───────────────────────────────────────────── */
body.woocommerce-checkout .form-row {
  margin: 0 0 16px !important;
}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper {
  display: flex !important;
  flex-wrap: wrap !important;
  gap: 0 14px !important;
}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-first,
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-last {
  flex: 1 1 calc(50% - 7px) !important;
  min-width: 140px !important;
}
body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-wide {
  flex: 1 1 100% !important;
  width: 100% !important;
}


/* ── Labels ──────────────────────────────────────────────── */
body.woocommerce-checkout label,
body.woocommerce-checkout label.Label {
  color: var(--hh-muted) !important;
  font-size: 13px !important;
  font-weight: 700 !important;
  margin-bottom: 6px !important;
  display: block;
  letter-spacing: .3px;
}
body.woocommerce-checkout .required { color: var(--hh-error) !important; }

/* ── Inputs, selects, textareas ──────────────────────────── */
body.woocommerce-checkout input.input-text,
body.woocommerce-checkout textarea,
body.woocommerce-checkout select {
  width: 100% !important;
  background: var(--hh-bg) !important;
  border: 1.5px solid var(--hh-stroke) !important;
  border-radius: var(--hh-r-sm) !important;
  padding: 13px 15px !important;
  color: var(--hh-text) !important;
  font-family: inherit !important;
  font-size: 15px !important;
  outline: none !important;
  box-shadow: none !important;
  transition: border-color .18s, background .18s, box-shadow .18s;
  -webkit-appearance: none;
  appearance: none;
}
body.woocommerce-checkout textarea#order_comments {
  resize: none !important;
}
body.woocommerce-checkout input.input-text:focus,
body.woocommerce-checkout textarea:focus,
body.woocommerce-checkout select:focus {
  border-color: var(--hh-accent) !important;
  background: #FFFFFF !important;
  box-shadow: 0 0 0 3px rgba(174,139,87,.14) !important;
}
body.woocommerce-checkout input::placeholder,
body.woocommerce-checkout textarea::placeholder {
  color: #C4B49A !important;
}

/* Phone: number LTR, placeholder RTL */
body.woocommerce-checkout input#billing_phone {
  direction: ltr;
  text-align: left;
}
body.woocommerce-checkout input#billing_phone:placeholder-shown {
  direction: rtl;
  text-align: right;
}

/* Select arrow */
body.woocommerce-checkout select {
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12' height='8' viewBox='0 0 12 8'%3E%3Cpath d='M1 1l5 5 5-5' stroke='%23AE8B57' stroke-width='2' fill='none' stroke-linecap='round'/%3E%3C/svg%3E") !important;
  background-repeat: no-repeat !important;
  background-position: left 14px center !important;
  padding-left: 36px !important;
}

/* select2 override */
body.woocommerce-checkout .select2-container .select2-selection {
  background: var(--hh-bg) !important;
  border: 1.5px solid var(--hh-stroke) !important;
  border-radius: var(--hh-r-sm) !important;
  height: auto !important;
  padding: 13px 15px !important;
  color: var(--hh-text) !important;
}
body.woocommerce-checkout .select2-container--open .select2-selection,
body.woocommerce-checkout .select2-container--focus .select2-selection {
  border-color: var(--hh-accent) !important;
  box-shadow: 0 0 0 3px rgba(174,139,87,.14) !important;
}
body.woocommerce-checkout .select2-dropdown {
  background: var(--hh-surface) !important;
  border: 1.5px solid var(--hh-stroke) !important;
  border-radius: var(--hh-r-sm) !important;
  box-shadow: var(--hh-shadow) !important;
}
body.woocommerce-checkout .select2-results__option--highlighted {
  background: var(--hh-accent-l) !important;
  color: var(--hh-accent) !important;
}

/* Field validation states */
body.woocommerce-checkout .woocommerce-invalid input.input-text,
body.woocommerce-checkout .woocommerce-invalid select,
body.woocommerce-checkout .woocommerce-invalid textarea {
  border-color: var(--hh-error) !important;
  box-shadow: 0 0 0 3px rgba(192,57,43,.10) !important;
}
body.woocommerce-checkout .woocommerce-validated input.input-text,
body.woocommerce-checkout .woocommerce-validated select {
  border-color: var(--hh-success) !important;
}

/* ── Right panel: order review ───────────────────────────── */
body.woocommerce-checkout .woocommerce-checkout-review-order {
  background: var(--hh-surface) !important;
  border: 1.5px solid var(--hh-stroke) !important;
  border-radius: var(--hh-r) !important;
  padding: 24px 22px !important;
  box-shadow: var(--hh-shadow) !important;
}

/* Order table */
body.woocommerce-checkout table.shop_table {
  width: 100% !important;
  border-collapse: collapse !important;
  background: transparent !important;
  color: var(--hh-text) !important;
}
body.woocommerce-checkout table.shop_table th {
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: .8px !important;
  color: var(--hh-muted) !important;
  padding: 0 8px 12px !important;
  border-bottom: 1.5px solid var(--hh-stroke) !important;
}
body.woocommerce-checkout table.shop_table td {
  padding: 13px 8px !important;
  border-bottom: 1px solid rgba(226,212,188,.5) !important;
  vertical-align: top;
  font-size: 14px;
}
body.woocommerce-checkout table.shop_table tbody tr:last-child td {
  border-bottom: 0 !important;
}

/* Parent bundle item */
body.woocommerce-checkout .woosb-item-parent td .product-name,
body.woocommerce-checkout .woosb-item-parent td {
  font-weight: 700 !important;
  color: var(--hh-text) !important;
}
/* Child bundle items */
body.woocommerce-checkout .woosb-item-child td {
  color: var(--hh-muted) !important;
  font-size: 13px !important;
  padding-top: 6px !important;
  padding-bottom: 6px !important;
  padding-right: 20px !important;
}
/* woosb child name links */
body.woocommerce-checkout .woosb-name a,
body.woocommerce-checkout .woosb-name a:hover {
  color: var(--hh-muted) !important;
}

/* Subtotal / shipping / total rows */
body.woocommerce-checkout table.shop_table tfoot tr th,
body.woocommerce-checkout table.shop_table tfoot tr td {
  padding: 10px 8px !important;
  font-size: 14px;
  border-bottom: 1px solid rgba(226,212,188,.5) !important;
}
body.woocommerce-checkout table.shop_table tfoot tr.order-total th,
body.woocommerce-checkout table.shop_table tfoot tr.order-total td {
  border-top: 2px solid var(--hh-stroke) !important;
  border-bottom: 0 !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  padding-top: 14px !important;
  color: var(--hh-text) !important;
}
body.woocommerce-checkout table.shop_table tfoot tr.order-total .woocommerce-Price-amount {
  color: var(--hh-accent) !important;
}

/* Price amounts */
body.woocommerce-checkout .woocommerce-Price-amount { color: var(--hh-accent-d) !important; font-weight: 700; }

/* ── Payment section ─────────────────────────────────────── */
body.woocommerce-checkout #payment {
  background: var(--hh-surface2) !important;
  border: 1.5px solid var(--hh-stroke) !important;
  border-radius: var(--hh-r) !important;
  padding: 20px !important;
  margin-top: 16px !important;
  box-shadow: none !important;
}

/* Payment section label */
body.woocommerce-checkout #payment::before {
  content: 'طريقة الدفع';
  display: block;
  font-size: 13px;
  font-weight: 700;
  color: var(--hh-muted);
  text-transform: uppercase;
  letter-spacing: .8px;
  margin-bottom: 14px;
}
/* Stripe card element — full width, no clipping */
body.woocommerce-checkout #wc-stripe-card-element {
  width: 100% !important;
  min-width: 0 !important;
  box-sizing: border-box !important;
  padding: 10px 12px !important;
}

body.woocommerce-checkout #wc-stripe-card-element iframe,
body.woocommerce-checkout #wc-stripe-card-element .__PrivateStripeElement,
body.woocommerce-checkout #wc-stripe-card-element .__PrivateStripeElement iframe {
  width: 100% !important;
  min-width: 100% !important;
  max-width: 100% !important;
}

/* Card icons — wrap cleanly, don't push text */
body.woocommerce-checkout .wc-stripe-card-icons-container {
  display: inline-flex !important;
  flex-wrap: wrap !important;
  gap: 3px !important;
  flex-shrink: 1 !important;
  min-width: 0 !important;
}
body.woocommerce-checkout .wc-stripe-card-icons-container img {
  height: 20px !important;
  width: auto !important;
}

/* Credit/Debit Cards label — allow text to wrap naturally */
body.woocommerce-checkout #payment_method_stripe_cc + label {
  flex-wrap: wrap !important;
  white-space: normal !important;
  gap: 6px 8px !important;
  font-size: 14px !important;
}
body.woocommerce-checkout #payment ul.payment_methods {
  list-style: none !important;
  margin: 0 0 16px !important;
  padding: 0 !important;
  background: transparent !important;
  border: 0 !important;
  display: flex;
  flex-direction: column;
  gap: 8px;
}

body.woocommerce-checkout #payment ul.payment_methods li {
  background: var(--hh-surface) !important;
  border-radius: var(--hh-r-sm) !important;
  padding: 13px 5px !important;
  cursor: pointer;
  transition: border-color .18s, box-shadow .18s;
  position: relative;
}
body.woocommerce-checkout #payment ul.payment_methods li:has(input:checked) {
  border-color: var(--hh-accent) !important;
  background: var(--hh-accent-l) !important;
  box-shadow: 0 0 0 3px rgba(174,139,87,.10) !important;
}
body.woocommerce-checkout #payment ul.payment_methods li label {
  display: flex !important;
  align-items: center !important;
  gap: 10px !important;
  cursor: pointer;
  font-size: 14px !important;
  font-weight: 600 !important;
  color: var(--hh-text) !important;
  margin: 0 !important;
}
body.woocommerce-checkout #payment ul.payment_methods li label img {
  height: 22px !important;
  width: auto !important;
  max-width: 60px !important;
  object-fit: contain;
  border-radius: 4px;
}

/* Custom radio indicator */
body.woocommerce-checkout #payment ul.payment_methods li input[type="radio"] {
  accent-color: var(--hh-accent);
  width: 17px;
  height: 17px;
  flex-shrink: 0;
  cursor: pointer;
}

body.woocommerce-checkout #payment .payment_box {
  background: transparent !important;
  border: 0 !important;
  padding: 10px 0 0 !important;
  margin: 0 !important;
}

/* ── Place order button ───────────────────────────────────── */
body.woocommerce-checkout button#place_order {
  width: 100% !important;
  background: var(--hh-accent) !important;
  color: #FFFFFF !important;
  border: 0 !important;
  border-radius: 999px !important;
  font-family: inherit !important;
  font-size: 18px !important;
  font-weight: 900 !important;
  padding: 17px 24px !important;
  margin-top: 16px !important;
  cursor: pointer;
  box-shadow: 0 8px 24px rgba(174,139,87,.30);
  transition: transform .18s ease, box-shadow .18s ease, background .18s ease;
  letter-spacing: .2px;
  position: relative;
  overflow: hidden;
}
body.woocommerce-checkout button#place_order::after {
  content: '';
  position: absolute;
  inset: 0;
  background: linear-gradient(135deg, rgba(255,255,255,.15) 0%, transparent 60%);
  pointer-events: none;
}
body.woocommerce-checkout button#place_order:hover {
  background: var(--hh-accent-d) !important;
  transform: translateY(-2px);
  box-shadow: 0 14px 36px rgba(174,139,87,.35);
}
body.woocommerce-checkout button#place_order:active {
  transform: translateY(0);
}

/* ── Shipping row ─────────────────────────────────────────── */
body.woocommerce-checkout .woocommerce-shipping-methods {
  list-style: none !important;
  padding: 0 !important;
  margin: 0 !important;
}
body.woocommerce-checkout .woocommerce-shipping-methods li label {
  font-size: 13px !important;
  font-weight: 500 !important;
  color: var(--hh-muted) !important;
}

/* ── Privacy text ────────────────────────────────────────── */
body.woocommerce-checkout .woocommerce-privacy-policy-text {
  color: var(--hh-muted) !important;
  font-size: 12px;
  line-height: 1.8;
  text-align: center;
  margin-top: 12px;
}
body.woocommerce-checkout .woocommerce-privacy-policy-text a {
  color: var(--hh-accent) !important;
  text-decoration: none;
  border-bottom: 1px dashed var(--hh-accent);
}

/* ── Tabby / Tamara widgets ───────────────────────────────── */
body.woocommerce-checkout #installmentsCard,
body.woocommerce-checkout .tamara-gateway-checkout-description {
  padding: 8px 0 0 !important;
}
body.woocommerce-checkout .tamara-gateway-checkout-description p {
  color: var(--hh-muted) !important;
  font-size: 13px !important;
}

/* ── Loading overlay ─────────────────────────────────────── */
body.woocommerce-checkout .blockUI.blockOverlay {
  background: rgba(250,247,242,.75) !important;
  backdrop-filter: blur(4px);
}

/* ── Stripe iframe container ─────────────────────────────── */
body.woocommerce-checkout #wc-stripe-card-element {
  background: var(--hh-bg) !important;
  border: 1.5px solid var(--hh-stroke) !important;
  border-radius: var(--hh-r-sm) !important;
  padding: 14px !important;
}

/* ── Save card checkbox ──────────────────────────────────── */
body.woocommerce-checkout .wc-stripe-save-source {
  display: flex;
  align-items: center;
  gap: 8px;
  margin-top: 10px;
}
body.woocommerce-checkout .wc-stripe-save-source label.save-source-label {
  font-size: 13px !important;
  color: var(--hh-muted) !important;
  font-weight: 500 !important;
}

/* ── Responsive ──────────────────────────────────────────── */
@media (max-width: 900px) {
  body.woocommerce-checkout form.checkout.woocommerce-checkout {
    display: flex !important;
    flex-direction: column !important;
    gap: 16px !important;
  }
  body.woocommerce-checkout #customer_details {
    order: 1 !important;
    grid-column: unset !important;
    grid-row: unset !important;
    width: 100% !important;
    float: none !important;
  }
  body.woocommerce-checkout #order_review_heading {
    order: 2 !important;
    grid-column: unset !important;
    grid-row: unset !important;
  }
  body.woocommerce-checkout #order_review {
    order: 3 !important;
    grid-column: unset !important;
    grid-row: unset !important;
    position: static !important;
    top: auto !important;
    width: 100% !important;
  }
  body.woocommerce-checkout .woocommerce-notices-wrapper {
    order: 0 !important;
    grid-column: unset !important;
  }
  body.woocommerce-checkout #customer_details .col-1,
  body.woocommerce-checkout #customer_details .col-2 {
    float: none !important;
    width: 100% !important;
    display: block !important;
  }
  body.woocommerce-checkout #customer_details {
    padding: 22px 18px !important;
  }
  body.woocommerce-checkout .woocommerce-checkout-review-order {
    padding: 18px 14px !important;
  }
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper {
    flex-direction: column !important;
  }
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-first,
  body.woocommerce-checkout .woocommerce-billing-fields__field-wrapper .form-row-last {
    flex: 1 1 100% !important;
    width: 100% !important;
  }
  body.woocommerce-checkout button#place_order {
    font-size: 16px !important;
  }
  body.woocommerce-checkout #customer_details h3 {
    font-size: 17px !important;
  }
}


/* ===== Henna Beauty Menu Item (special) ===== */
.hh-menu-feature > a{
  background: linear-gradient(135deg, #C9A46A, #E2C46D) !important;
  color: #120C07 !important;
  padding: 10px 16px !important;
  border-radius: 999px !important;
  font-weight: 900 !important;
  border: 1px solid rgba(201,164,106,.65) !important;
  box-shadow: 0 10px 28px rgba(201,164,106,.22) !important;
  position: relative !important;
  overflow: hidden !important;
}

/* subtle shine */
.hh-menu-feature > a::after{
  content:"";
  position:absolute;
  top:-40%;
  left:-30%;
  width:50%;
  height:180%;
  background: rgba(255,255,255,.35);
  transform: rotate(25deg);
  filter: blur(2px);
  opacity:.0;
  transition: opacity .2s ease, left .6s ease;
}

.hh-menu-feature > a:hover{
  transform: translateY(-1px);
  box-shadow: 0 16px 38px rgba(201,164,106,.30) !important;
}

.hh-menu-feature > a:hover::after{
  opacity:.6;
  left:110%;
}

/* (اختياري) فاصل بسيط قبل الزر عشان يبان منفصل */
.hh-menu-feature{
  margin-inline-start: 14px !important;
}

/* لو المينو عندك RTL وتبي الزر يكون آخر شي واضح */
.rtl .hh-menu-feature{
  margin-inline-start: 14px !important;
  margin-inline-end: 0 !important;
}

/* =========================================================
   Henna Hamda — Cart Page (Block Cart)
   ========================================================= */

/* ── Page wrapper centering + sticky header offset ──────── */
.woocommerce-cart .wp-block-woocommerce-cart {
  max-width: 1100px !important;
  margin: 0 auto !important;
  padding: 100px 20px 80px !important;
}

/* ── Overall cart block layout ──────────────────────────── */
.wc-block-cart {
  background: transparent !important;
}

/* ── Desktop: prevent sidebar wrapping ──────────────────── */
@media (min-width: 769px) {
  .wc-block-components-sidebar-layout {
    display: flex !important;
    flex-wrap: nowrap !important;
    align-items: flex-start !important;
    gap: 24px !important;
  }
  .wc-block-components-main {
    flex: 1 1 0% !important;
    min-width: 0 !important;
  }
  .wc-block-components-sidebar {
    flex: 0 0 340px !important;
    width: 340px !important;
    position: sticky !important;
    top: 100px !important;
  }
}

/* ── Cart items table ───────────────────────────────────── */
.wc-block-cart-items {
  border: 1.5px solid #E2D4BC !important;
  border-radius: 20px !important;
  background: #FFFFFF !important;
  overflow: hidden;
  box-shadow: 0 4px 24px rgba(43,33,23,.07) !important;
  width: 100% !important;
}

/* Header row */
.wc-block-cart-items__header {
  background: #F5F0E8 !important;
  border-bottom: 1.5px solid #E2D4BC !important;
}
.wc-block-cart-items__header th {
  padding: 14px 16px !important;
  font-size: 12px !important;
  font-weight: 700 !important;
  text-transform: uppercase !important;
  letter-spacing: .7px !important;
  color: #7A6650 !important;
  font-family: 'IBM Plex Sans Arabic', 'Tajawal', sans-serif !important;
}

/* Item rows */
.wc-block-cart-items__row {
  border-bottom: 1px solid rgba(226,212,188,.5) !important;
}
.wc-block-cart-items__row:last-child {
  border-bottom: 0 !important;
padding-inline: 29px !important;
}
.wc-block-cart-items__row td {
  padding: 18px 16px !important;
  vertical-align: middle !important;
  background: transparent !important;
}

/* Product image */
.wc-block-cart-item__image img {
  border-radius: 12px !important;
  width: 80px !important;
  height: 80px !important;
  object-fit: cover !important;
  border: 1px solid #E2D4BC !important;
}

/* Product name — no underline, no hover effect */
.wc-block-components-product-name,
.wc-block-components-product-name:hover,
.wc-block-components-product-name:focus,
.wc-block-components-product-name:visited {
  color: #2B2117 !important;
  font-weight: 700 !important;
  font-size: 15px !important;
  text-decoration: none !important;
  border-bottom: none !important;
  outline: none !important;
  font-family: 'IBM Plex Sans Arabic', 'Tajawal', sans-serif !important;
}

/* Product description */
.wc-block-components-product-metadata__description p {
  color: #7A6650 !important;
  font-size: 13px !important;
  line-height: 1.6 !important;
  margin: 4px 0 0 !important;
}

/* Product unit price */
.wc-block-cart-item__prices .wc-block-components-product-price {
  color: #AE8B57 !important;
  font-weight: 700 !important;
  font-size: 14px !important;
}

/* Total price per row */
.wc-block-cart-item__total .wc-block-components-product-price {
  color: #8C6E3F !important;
  font-weight: 800 !important;
  font-size: 16px !important;
}

/* ── Quantity selector ──────────────────────────────────── */
.wc-block-components-quantity-selector {
  display: flex !important;
  align-items: center !important;
  gap: 0 !important;
  border: 1.5px solid #E2D4BC !important;
  border-radius: 999px !important;
  overflow: hidden !important;
  background: #FAF7F2 !important;
  width: fit-content !important;
  margin-top: 10px !important;
}
.wc-block-components-quantity-selector__input {
  width: 40px !important;
  text-align: center !important;
  border: none !important;
  background: transparent !important;
  color: #2B2117 !important;
  font-size: 15px !important;
  font-weight: 700 !important;
  padding: 6px 0 !important;
  box-shadow: none !important;
  outline: none !important;
  -moz-appearance: textfield !important;
}
.wc-block-components-quantity-selector__input::-webkit-outer-spin-button,
.wc-block-components-quantity-selector__input::-webkit-inner-spin-button {
  -webkit-appearance: none !important;
}
.wc-block-components-quantity-selector__button {
  background: transparent !important;
  border: none !important;
  color: #AE8B57 !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  padding: 6px 12px !important;
  cursor: pointer !important;
  transition: background .15s, color .15s !important;
  line-height: 1 !important;
}
.wc-block-components-quantity-selector__button:hover:not(:disabled) {
  background: rgba(174,139,87,.12) !important;
  color: #8C6E3F !important;
}
.wc-block-components-quantity-selector__button:disabled {
  opacity: .35 !important;
  cursor: not-allowed !important;
}

/* ── Remove button ──────────────────────────────────────── */
.wc-block-cart-item__remove-link {
  background: transparent !important;
  border: none !important;
  color: #C4B49A !important;
  cursor: pointer !important;
  padding: 6px !important;
  margin-right: 8px !important;
  transition: color .15s !important;
  display: inline-flex !important;
}
.wc-block-cart-item__remove-link:hover {
  color: #C0392B !important;
}
.wc-block-cart-item__remove-link svg {
  width: 18px !important;
  height: 18px !important;
}

/* ── Sidebar / totals ───────────────────────────────────── */
.wc-block-components-sidebar {
  background: #FFFFFF !important;
  border: 1.5px solid #E2D4BC !important;
  border-radius: 20px !important;
  padding: 24px 20px !important;
  box-shadow: 0 4px 24px rgba(43,33,23,.07) !important;
}

.wp-block-woocommerce-cart-order-summary-heading-block {
  font-size: 18px !important;
  font-weight: 900 !important;
  color: #2B2117 !important;
  margin: 0 0 18px !important;
  padding-bottom: 14px !important;
  border-bottom: 1.5px solid #E2D4BC !important;
  font-family: 'IBM Plex Sans Arabic', 'Tajawal', sans-serif !important;
}

/* Totals rows */
.wc-block-components-totals-item {
  display: flex !important;
  justify-content: space-between !important;
  align-items: center !important;
  padding: 10px 0 !important;
  border-bottom: 1px solid rgba(226,212,188,.4) !important;
  font-family: 'IBM Plex Sans Arabic', 'Tajawal', sans-serif !important;
}
.wc-block-components-totals-item__label {
  color: #7A6650 !important;
  font-size: 14px !important;
}
.wc-block-components-totals-item__value {
  color: #AE8B57 !important;
  font-weight: 700 !important;
  font-size: 14px !important;
}

/* Footer total */
.wc-block-components-totals-footer-item {
  border-bottom: 0 !important;
  padding-top: 14px !important;
}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__label {
  color: #2B2117 !important;
  font-size: 17px !important;
  font-weight: 900 !important;
}
.wc-block-components-totals-footer-item .wc-block-components-totals-item__value {
  color: #8C6E3F !important;
  font-size: 20px !important;
  font-weight: 900 !important;
}

/* ── Proceed to checkout button ─────────────────────────── */
.wc-block-cart__submit-button,
.wc-block-cart__submit-button.contained {
  width: 100% !important;
  background: #AE8B57 !important;
  color: #FFFFFF !important;
  border: 0 !important;
  border-radius: 999px !important;
  font-family: 'IBM Plex Sans Arabic', 'Tajawal', sans-serif !important;
  font-size: 17px !important;
  font-weight: 900 !important;
  padding: 16px 24px !important;
  text-align: center !important;
  text-decoration: none !important;
  display: block !important;
  box-shadow: 0 8px 24px rgba(174,139,87,.28) !important;
  transition: background .18s, transform .18s, box-shadow .18s !important;
  margin-top: 16px !important;
}
.wc-block-cart__submit-button:hover,
.wc-block-cart__submit-button.contained:hover {
  background: #8C6E3F !important;
  transform: translateY(-2px) !important;
  box-shadow: 0 14px 36px rgba(174,139,87,.32) !important;
  color: #fff !important;
  text-decoration: none !important;
}

/* ── Express payment (Google Pay strip) ─────────────────── */
.wc-block-components-express-payment {
  border: 1.5px solid #E2D4BC !important;
  border-radius: 14px !important;
  padding: 12px !important;
  background: #FAF7F2 !important;
  margin-bottom: 12px !important;
}
.wc-block-components-express-payment-continue-rule {
  color: #7A6650 !important;
  font-size: 13px !important;
  text-align: center !important;
  margin: 8px 0 !important;
}

/* ── Tabby promo ────────────────────────────────────────── */
.wc-block-components-order-meta {
  border: 1.5px solid #E2D4BC !important;
  border-radius: 14px !important;
  padding: 12px 14px !important;
  background: #FAF7F2 !important;
  margin: 10px 0 !important;
}

/* ── Mobile ─────────────────────────────────────────────── */
@media (max-width: 768px) {
  .woocommerce-cart .site-main,
  .woocommerce-cart #content {
    padding-top: 80px !important;
    padding-left: 14px !important;
    padding-right: 14px !important;
  }
  .wc-block-components-sidebar-layout {
    flex-direction: column !important;
    gap: 16px !important;
  }
  .wc-block-components-sidebar {
    width: 100% !important;
    position: static !important;
    border-radius: 14px !important;
  }
  .wc-block-components-main {
    width: 100% !important;
  }
  .wc-block-cart-items {
    border-radius: 14px !important;
  }
  .wc-block-cart-items__header th:first-child {
    display: none !important;
  }
  .wc-block-cart-item__image {
    display: none !important;
  }
}
/* ── Cart discover button — remove underline & lock text black ── */
.cart-discover-btn,
.cart-discover-btn:hover,
.cart-discover-btn:focus,
.cart-discover-btn:visited,
.cart-discover-btn:active {
  text-decoration: none !important;
  color: #000000 !important;
  border-bottom: none !important;
  outline: none !important;
}
/* ── 1) Replace empty cart message with Arabic ──────────── */
.pa-woo-mc__content-wrapper .woocommerce-mini-cart__empty-message {
  font-size: 0 !important; /* hide original English text */
}
.pa-woo-mc__content-wrapper .woocommerce-mini-cart__empty-message::after {
  content: "سلتك فارغة حالياً 🛒" !important;
  font-size: 15px !important;
  color: #7A6650 !important;
  font-family: 'IBM Plex Sans Arabic', 'Tajawal', sans-serif !important;
  font-weight: 600 !important;
  display: block !important;
  text-align: center !important;
  padding: 24px 0 !important;
}

/* ── 2) Remove all products button — black hover, no effect ─ */
.pa-woo-mc__remove-all-btn,
.pa-woo-mc__remove-all-btn:hover,
.pa-woo-mc__remove-all-btn:focus {
  color: #000000 !important;
  background: transparent !important;
  text-decoration: none !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;
  opacity: 1 !important;
  filter: none !important;
}

/* ── 3) Remove (×) button — clean styled ───────────────── */

/* Hide the duplicate elementor button, keep only one */
.pa-woo-mc__content-wrapper .elementor-menu-cart__product-remove a.elementor_remove_from_cart_button {
  display: none !important;
}

/* Style the visible remove button */
.pa-woo-mc__content-wrapper .elementor-menu-cart__product-remove a.remove_from_cart_button {
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;
  width: 26px !important;
  height: 26px !important;
  border-radius: 50% !important;
  background: #F5F0E8 !important;
  border: 1.5px solid #E2D4BC !important;
  opacity: 1 !important;
  visibility: visible !important;
  position: relative !important;
  transition: background .18s, border-color .18s !important;
  text-decoration: none !important;
}

/* The × character */
.pa-woo-mc__content-wrapper .elementor-menu-cart__product-remove a.remove_from_cart_button::before {
  content: "×" !important;
  font-size: 18px !important;
  font-weight: 700 !important;
  line-height: 1 !important;
  color: #7A6650 !important;
}

/* Hover: red tint */
.pa-woo-mc__content-wrapper .elementor-menu-cart__product-remove a.remove_from_cart_button:hover {
  background: #FEF2F2 !important;
  border-color: #FECACA !important;
}
.pa-woo-mc__content-wrapper .elementor-menu-cart__product-remove a.remove_from_cart_button:hover::before {
  color: #C0392B !important;
}
/* ── Mini cart price — darker, more visible ─────────────── */
.pa-woo-mc__content-wrapper .elementor-menu-cart__product-price,
.pa-woo-mc__content-wrapper .elementor-menu-cart__product-price .woocommerce-Price-amount,
.pa-woo-mc__content-wrapper .elementor-menu-cart__product-price bdi {
  color: #8C6E3F !important;
  opacity: 1 !important;
  font-weight: 700 !important;
  font-size: 14px !important;
}

/* ── Product name — no hover fade or color change ───────── */
.pa-woo-mc__content-wrapper .elementor-menu-cart__product-name a,
.pa-woo-mc__content-wrapper .elementor-menu-cart__product-name a:hover,
.pa-woo-mc__content-wrapper .elementor-menu-cart__product-name a:focus {
  color: #2B2117 !important;
  opacity: 1 !important;
  text-decoration: none !important;
  border-bottom: none !important;
}