/* Liyomera — shop UX: mega menu, mobile accordion, filters, drawer,
   wishlist, live search, checkout redesign */

/* ============ MEGA MENU (desktop) ============ */
.header-main{ position:relative; }
.main-nav .menu-item-has-mega > a::after{
  content:""; display:inline-block; width:7px; height:7px; margin-inline-start:7px;
  border-inline-end:1.8px solid currentColor; border-bottom:1.8px solid currentColor;
  transform:rotate(45deg) translateY(-2px); transition:.18s;
}
.mega-panel{
  position:absolute; top:100%; inset-inline-start:0; z-index:60;
  width:min(720px,92vw); height:min(62vh,480px);
  background:#fff; border:1px solid var(--line); border-top:none;
  border-radius:0 0 var(--r-lg) var(--r-lg); box-shadow:var(--shadow-lg);
  padding:14px; opacity:0; visibility:hidden; transform:translateY(8px);
  transition:opacity .18s, transform .18s, visibility .18s;
}
.main-nav .menu-item-has-mega:hover .mega-panel,
.main-nav .menu-item-has-mega:focus-within .mega-panel{
  opacity:1; visibility:visible; transform:translateY(0);
}

/* rail: main categories stacked vertically (design-system nav style) */
.mega-cats{
  width:230px; height:100%; overflow-y:auto;
  display:flex; flex-direction:column; gap:2px;
  border-inline-end:1px solid var(--line); padding-inline-end:12px;
}
.mega-item{ width:100%; flex:none; }
.mega-cat-btn{
  display:flex; width:100%; align-items:center; justify-content:space-between; gap:8px;
  padding:11px 14px; border-radius:10px; font-size:14.5px; font-weight:600;
  color:var(--body); transition:.16s; white-space:nowrap;
}
.mega-cat-btn .li-ico{ transform:rotate(180deg); color:var(--muted); transition:.16s; flex:none; }
.mega-item.active > .mega-cat-btn,
.mega-item:focus-within > .mega-cat-btn{ color:var(--o-700); background:var(--o-50); }
.mega-item.active > .mega-cat-btn .li-ico,
.mega-item:focus-within > .mega-cat-btn .li-ico{ color:var(--o-600); }

/* children: vertical list shown beside the rail.
   Shown via .active set by JS (hover-intent) — pure :hover flickers when the
   pointer travels diagonally across other rail items. */
.mega-sub{
  position:absolute; top:14px; bottom:14px; inset-inline-start:256px; inset-inline-end:14px;
  padding:6px 14px; overflow-y:auto; display:none;
}
.mega-item.active .mega-sub,
.mega-item:focus-within .mega-sub{ display:block; }

.mega-sub-all{
  display:inline-flex; align-items:center; gap:8px; margin-bottom:12px;
  padding:9px 16px; border-radius:999px; border:1.5px solid var(--o-100); background:var(--o-50);
  font-size:13.5px; font-weight:700; color:var(--o-700); transition:.16s;
}
.mega-sub-all:hover{ background:var(--o-100); border-color:var(--o-200); }
.mega-sub-all .fa-num{ font-weight:500; font-size:12px; color:var(--muted); }
.mega-sub{ direction:rtl; text-align:right; }
/* .main-nav prefix needed: base.css `.main-nav ul{display:flex}` outranks a lone class */
.main-nav .mega-sub-list{ display:block; }
.main-nav .mega-sub-list li{ display:block; width:100%; }
.mega-sub-list li a{
  display:block; width:100%; padding:8px 2px; font-size:13.5px; color:var(--body);
  line-height:1.7; text-align:right; border-radius:8px;
}
.mega-sub-list li a:hover{ color:var(--o-700); padding-inline-start:6px; }

/* ============ MOBILE MENU: category accordion ============ */
.mm-nav .mm-list > li > a{
  padding:14px 12px; border-radius:12px; font-size:16px; font-weight:600;
  color:var(--ink); display:block;
}
.mm-nav .mm-list > li > a:hover{ background:var(--o-50); color:var(--o-700); }
.mm-cats details{ border-radius:12px; }
.mm-cats summary{
  list-style:none; display:flex; align-items:center; justify-content:space-between;
  cursor:pointer; padding:14px 12px; font-size:16px; font-weight:700; color:var(--ink);
  border-radius:12px;
}
.mm-cats summary::-webkit-details-marker{ display:none; }
.mm-cats summary .li-ico{ transition:transform .2s; color:var(--muted); }
.mm-cats details[open] > summary .li-ico{ transform:rotate(90deg); }
.mm-cats > details > summary{ background:var(--o-50); color:var(--o-700); }
.mm-cats > details > ul{ padding:4px 8px 4px 0; }
.mm-cats > details > ul > li > details > summary,
.mm-cats .mm-single{
  font-size:15px; font-weight:600; padding:11px 12px; display:flex;
  align-items:center; justify-content:space-between; color:var(--ink); border-radius:10px;
}
.mm-cats summary a{ flex:1; color:inherit; }
.mm-cats details details ul{ padding-inline-start:14px; border-inline-start:2px solid var(--o-100); margin-inline-start:10px; }
.mm-cats details details ul a{ display:block; padding:9px 10px; font-size:14px; color:var(--body); border-radius:8px; }
.mm-cats details details ul a:hover{ color:var(--o-700); background:var(--o-50); }
.mm-cats .mm-all{ font-weight:700; color:var(--o-600) !important; }
.mobile-menu{ overflow-y:auto; }

/* ============ BREADCRUMB ============ */
.li-breadcrumb{
  display:flex; flex-wrap:wrap; align-items:center; gap:2px;
  font-size:13px; color:var(--muted); margin:4px 0 18px;
}
.li-breadcrumb a{ color:var(--body); }
.li-breadcrumb a:hover{ color:var(--o-600); }
.bc-sep{ margin:0 8px; color:var(--o-400); }

/* ============ SUBCATEGORY CHIPS ============ */
.cat-chips{ display:flex; flex-wrap:wrap; gap:9px; margin:0 0 22px; }
.cat-chip{
  display:inline-flex; align-items:center; gap:6px; padding:8px 15px;
  border-radius:999px; background:var(--o-50); border:1.5px solid var(--o-100);
  font-size:13.5px; font-weight:600; color:var(--ink); transition:.16s;
}
.cat-chip:hover{ background:var(--o-100); border-color:var(--o-200); color:var(--o-700); }
.cat-chip .fa-num{ color:var(--muted); font-size:12px; font-weight:500; }

/* ============ FILTERS SIDEBAR ============ */
.shop-sidebar .li-filter{
  background:#fff; border:1px solid var(--line); border-radius:var(--r);
  padding:18px; margin-bottom:16px;
}
.shop-sidebar .widget-title{ font-size:15px; margin:0 0 12px; }
.lf-cats > li > a, .lf-brands a{
  display:flex; align-items:center; justify-content:space-between; gap:8px;
  padding:8px 4px; font-size:14px; font-weight:600; color:var(--ink); border-radius:8px;
}
.lf-cats ul{ padding-inline-start:14px; border-inline-start:2px solid var(--o-100); margin:2px 6px 8px 0; }
.lf-cats ul a{ font-weight:500; font-size:13.5px; color:var(--body); }
.lf-cats a:hover, .lf-brands a:hover{ color:var(--o-600); }
.lf-cats .current > a{ color:var(--o-700); font-weight:800; }
.lf-count{ font-size:11.5px; color:var(--muted); background:var(--surface); border-radius:999px; padding:1px 8px; }
.lf-price-row{ display:flex; gap:8px; margin-bottom:12px; }
.lf-price input[type="number"]{
  width:100%; height:42px; border:1.5px solid var(--line-2); border-radius:10px;
  padding:0 12px; font-family:inherit; font-size:14px; color:var(--ink); background:#fff;
}
.lf-price input[type="number"]:focus{ outline:none; border-color:var(--o-400); }
.lf-stock{ display:flex; align-items:center; gap:8px; font-size:13.5px; margin-bottom:14px; cursor:pointer; }
.lf-stock input{ width:17px; height:17px; accent-color:var(--o); }
.lf-apply{ width:100%; padding:12px; font-size:14px; }
.lf-clear{ display:block; text-align:center; margin-top:10px; font-size:13px; color:var(--muted); text-decoration:underline; }
.lf-clear:hover{ color:var(--sale); }
.lf-brands li{ border-bottom:1px dashed var(--line); }
.lf-brands li:last-child{ border-bottom:none; }

/* ============ WISHLIST ============ */
.li-wl{
  position:absolute; top:10px; inset-inline-end:10px; z-index:3;
  width:36px; height:36px; border-radius:50%; background:rgba(255,255,255,.95);
  color:var(--body); display:grid; place-items:center; box-shadow:var(--shadow-sm);
  transition:.16s;
}
.li-wl:hover{ color:var(--sale); transform:scale(1.08); }
.li-wl.on{ color:var(--sale); }
.li-wl.on svg{ fill:var(--sale); stroke:var(--sale); }
ul.products li.product{ position:relative; }
.li-wl-single-wrap{ display:flex; align-items:center; gap:10px; margin:14px 0; }
.li-wl-single-wrap .li-wl{ position:static; border:1.5px solid var(--line-2); box-shadow:none; }
.li-wl-label{ font-size:13.5px; color:var(--muted); }

/* mini product cards (wishlist page + recently viewed) */
.li-mini-grid{ display:grid; grid-template-columns:repeat(4,1fr); gap:16px; }
.li-mini-card{
  position:relative; background:#fff; border:1px solid var(--line); border-radius:var(--r);
  padding:12px; display:flex; flex-direction:column; gap:8px; transition:.18s;
}
.li-mini-card:hover{ box-shadow:var(--shadow); transform:translateY(-3px); }
.li-mini-card img{ width:100%; aspect-ratio:1/1; object-fit:cover; border-radius:var(--r-sm); }
.li-mini-title{ font-size:13.5px; font-weight:600; color:var(--ink); line-height:1.6; }
.li-mini-price{ font-size:13px; color:var(--o-700); font-weight:700; margin-top:auto; }
.li-mini-price del{ color:var(--muted); font-weight:400; margin-inline-end:6px; }
.li-mini-remove{
  position:absolute; top:8px; inset-inline-start:8px; z-index:2; width:28px; height:28px;
  border-radius:50%; background:#fff; color:var(--muted); font-size:18px; line-height:1;
  box-shadow:var(--shadow-sm); display:grid; place-items:center;
}
.li-mini-remove:hover{ color:var(--sale); }
.li-empty{ padding:40px 0; text-align:center; color:var(--muted); grid-column:1/-1; }
.li-recent{ padding-top:20px; }

/* ============ LIVE SEARCH ============ */
.ls-panel{
  position:absolute; top:calc(100% + 8px); inset-inline:0; z-index:80;
  background:#fff; border:1px solid var(--line); border-radius:14px;
  box-shadow:var(--shadow-lg); overflow:hidden; display:none; max-height:60vh; overflow-y:auto;
}
.ls-panel.open{ display:block; }
.ls-item{ display:flex; align-items:center; gap:12px; padding:10px 14px; border-bottom:1px solid var(--line); }
.ls-item:hover{ background:var(--o-50); }
.ls-item img{ width:46px; height:46px; border-radius:10px; object-fit:cover; flex:none; }
.ls-tx{ min-width:0; display:flex; flex-direction:column; gap:2px; }
.ls-title{ font-size:13.5px; font-weight:600; color:var(--ink); overflow:hidden; text-overflow:ellipsis; white-space:nowrap; }
.ls-price{ font-size:12.5px; color:var(--o-700); font-weight:700; }
.ls-price del{ color:var(--muted); font-weight:400; margin-inline-end:5px; }
.ls-loading{ padding:16px; font-size:13.5px; color:var(--muted); text-align:center; }
.ls-all{ display:block; padding:12px; text-align:center; font-size:13.5px; font-weight:700; color:var(--o-600); background:var(--o-50); }

/* ============ FREE-SHIPPING BAR ============ */
.li-shipbar{
  background:var(--o-50); border:1px solid var(--o-100); border-radius:14px;
  padding:14px 16px; margin-bottom:18px;
}
.li-shipbar p{ margin:0 0 10px; font-size:13.5px; color:var(--ink); }
.li-shipbar b{ color:var(--o-700); }
.li-shipbar b .woocommerce-Price-amount{ font-weight:800; }
.li-shipbar-track{ height:8px; border-radius:999px; background:#fff; border:1px solid var(--o-100); overflow:hidden; }
.li-shipbar-track span{ display:block; height:100%; border-radius:999px; background:linear-gradient(90deg,var(--o-400),var(--o)); transition:width .4s; }
.li-shipbar.done{ background:var(--sage-bg); border-color:#D5E6D9; }
.li-shipbar.done p{ color:var(--sage); font-weight:700; margin:0; }

/* ============ CART DRAWER ============ */
.drawer-overlay{
  position:fixed; inset:0; z-index:110; background:rgba(0,0,0,.4); backdrop-filter:blur(2px);
  opacity:0; visibility:hidden; transition:.25s;
}
.drawer-overlay.open{ opacity:1; visibility:visible; }
/* Physical `left` on purpose: logical inline-start flips to the right in RTL
   and the -110% shift then parks the drawer mid-viewport. */
.cart-drawer{
  position:fixed; top:0; bottom:0; left:0; right:auto; z-index:111; width:min(92vw,400px);
  background:#fff; box-shadow:10px 0 40px rgba(0,0,0,.2); display:flex; flex-direction:column;
  transform:translateX(-110%); visibility:hidden; transition:transform .3s cubic-bezier(.2,.9,.3,1), visibility .3s;
}
.cart-drawer.open{ transform:translateX(0); visibility:visible; }
.drawer-head{
  display:flex; align-items:center; justify-content:space-between;
  padding:22px 20px 18px; border-bottom:1px solid var(--line); font-size:16px; color:var(--ink);
}
.drawer-head b{ font-size:17px; font-weight:800; }
.drawer-body{ flex:1; overflow-y:auto; padding:18px 20px; }
.drawer-foot{ display:grid; grid-template-columns:1fr 1fr; gap:10px; padding:16px 20px; border-top:1px solid var(--line); }
.drawer-foot .btn{ padding:13px 10px; font-size:14px; }

/* mini cart list inside drawer.
   Everything scoped under .cart-drawer with an element in the selector so it
   outranks WooCommerce core's `.product_list_widget li a{display:block}` and
   `li img{float:right}` rules. */
.cart-drawer ul.woocommerce-mini-cart{ display:flex; flex-direction:column; gap:2px; margin:0; padding:0; }
.cart-drawer li.woocommerce-mini-cart-item{
  position:relative; list-style:none;
  padding:12px 0; margin:0; border-bottom:1px dashed var(--line);
}
/* remove (×) pinned to the physical LEFT edge, clear of the RTL text */
.cart-drawer li.woocommerce-mini-cart-item > a.remove{
  position:absolute; left:0; right:auto; top:50%; transform:translateY(-50%);
  width:26px; height:26px; border-radius:50%; display:grid; place-items:center;
  color:var(--muted); font-size:17px; line-height:1; background:var(--surface); text-decoration:none;
}
.cart-drawer li.woocommerce-mini-cart-item > a.remove:hover{ color:#fff; background:var(--sale); }
/* thumbnail (right) → name+price row. Explicit RTL flex so the image is
   always the first/rightmost element, clear of the × on the physical left. */
.cart-drawer .woocommerce-mini-cart-item a.li-mc-link,
.cart-drawer .woocommerce-mini-cart-item div.li-mc-link{
  display:flex; direction:rtl; align-items:center; gap:12px;
  /* left inset so the left-most element (price) clears the × at the edge */
  padding-left:36px;
  text-decoration:none; color:var(--ink);
}
.cart-drawer .li-mc-thumb{ flex:none; }
.cart-drawer .li-mc-thumb img{ width:60px; height:60px; border-radius:10px; object-fit:cover; display:block; float:none; margin:0; }
.cart-drawer .li-mc-info{
  display:flex; flex-wrap:wrap; align-items:baseline; gap:4px 10px; min-width:0; flex:1;
}
.cart-drawer .li-mc-name{ font-size:13.5px; font-weight:600; color:var(--ink); line-height:1.6; text-align:right; }
.cart-drawer .li-mc-price{ font-size:13px; color:var(--o-700); font-weight:700; white-space:nowrap; margin-inline-start:auto; text-align:left; }
.cart-drawer .li-mc-price .quantity{ color:var(--o-700); }
.cart-drawer .woocommerce-mini-cart__total{
  display:flex; justify-content:space-between; padding:16px 0 4px; font-size:15px; color:var(--ink);
}
.cart-drawer .woocommerce-mini-cart__buttons{ display:none; } /* theme renders its own footer buttons */
.cart-drawer .woocommerce-mini-cart__empty-message{ text-align:center; color:var(--muted); padding:40px 0; }

/* ============ FLOATING SUPPORT ============ */
.li-fab{ position:fixed; bottom:22px; inset-inline-start:22px; z-index:90; display:flex; flex-direction:column; gap:10px; }
.li-fab-btn{
  width:52px; height:52px; border-radius:50%; display:grid; place-items:center;
  color:#fff; box-shadow:var(--shadow-lg); transition:transform .15s;
}
.li-fab-btn:hover{ transform:scale(1.08); }
.li-fab-whatsapp{ background:#25D366; }
.li-fab-telegram{ background:#229ED9; }

/* ============ "COMING SOON" (no price) ============ */
.li-soon{
  display:inline-block; font-size:12.5px; font-weight:700; color:var(--muted);
  background:var(--surface); border:1px dashed var(--line-2); border-radius:999px; padding:4px 14px;
}
.li-soon-btn.button{ opacity:.65; }

/* ============ CHECKOUT ============ */
.woocommerce-checkout .site-main{ padding-bottom:60px; }
.woocommerce-checkout h1.entry-title, .woocommerce-cart h1.entry-title{ margin-bottom:26px; }

/* coupon + login toggles */
.woocommerce-form-coupon-toggle .woocommerce-info,
.woocommerce-checkout .woocommerce-info{
  background:var(--o-50); border:1px solid var(--o-100); border-radius:12px;
  padding:13px 18px; font-size:13.5px; color:var(--ink); margin-bottom:14px;
}
.woocommerce-form-coupon-toggle a, .woocommerce-checkout .woocommerce-info a{ color:var(--o-700); font-weight:700; }
form.checkout_coupon, form.woocommerce-form-login{
  border:1px solid var(--line) !important; border-radius:14px !important; padding:18px !important; margin-bottom:18px !important;
}

/* two-column layout */
form.checkout.woocommerce-checkout{ display:block; }
@media (min-width:961px){
  form.checkout.woocommerce-checkout{
    display:grid; grid-template-columns:minmax(0,1fr) 400px; gap:30px; align-items:start;
  }
  form.checkout.woocommerce-checkout #customer_details{ grid-column:1; grid-row:1 / span 4; }
  form.checkout.woocommerce-checkout #order_review_heading{ grid-column:2; grid-row:1; margin:0; }
  form.checkout.woocommerce-checkout #order_review{ grid-column:2; grid-row:2; position:sticky; top:96px; }
}

/* kill Woo's float halves that break RTL */
.woocommerce-checkout #customer_details .col-1,
.woocommerce-checkout #customer_details .col-2{ float:none !important; width:100% !important; }
.woocommerce-checkout #customer_details{
  background:#fff; border:1px solid var(--line); border-radius:var(--r-lg); padding:26px;
}
.woocommerce-checkout #customer_details h3,
#order_review_heading{ font-size:17px; margin-bottom:16px; }

/* field grid */
.woocommerce-billing-fields__field-wrapper,
.woocommerce-shipping-fields__field-wrapper{
  display:grid; grid-template-columns:1fr 1fr; gap:2px 16px;
}
.woocommerce-checkout .form-row{
  float:none !important; width:100% !important; margin:0 0 14px; padding:0; display:block;
}
.woocommerce-checkout .form-row-wide,
.woocommerce-checkout .notes{ grid-column:1 / -1; }
.woocommerce-checkout .form-row label{
  display:block; font-size:13px; font-weight:600; color:var(--ink); margin-bottom:6px;
}
.woocommerce-checkout .form-row label .required{ color:var(--sale); text-decoration:none; }
.woocommerce-checkout .form-row .woocommerce-input-wrapper{ display:block; }
.woocommerce-checkout .form-row input.input-text,
.woocommerce-checkout .form-row textarea,
.woocommerce-checkout .form-row select,
.woocommerce-checkout .form-row .select2-selection--single{
  width:100%; min-height:46px; border:1.5px solid var(--line-2); border-radius:12px;
  padding:10px 14px; font-family:inherit; font-size:14px; color:var(--ink); background:#fff;
  transition:border-color .15s;
}
.woocommerce-checkout .form-row textarea{ min-height:90px; resize:vertical; }
.woocommerce-checkout .form-row input.input-text:focus,
.woocommerce-checkout .form-row textarea:focus,
.woocommerce-checkout .form-row select:focus{ outline:none; border-color:var(--o-400); box-shadow:0 0 0 3px var(--o-50); }
.woocommerce-checkout .select2-selection--single{ display:flex; align-items:center; }
.woocommerce-checkout .select2-selection__rendered{ line-height:1.6 !important; padding:0 !important; color:var(--ink) !important; }
.woocommerce-checkout .select2-selection__arrow{ height:44px !important; inset-inline-end:10px; }
.woocommerce-checkout .form-row.woocommerce-invalid input.input-text{ border-color:var(--sale); }

/* order review card */
#order_review.woocommerce-checkout-review-order{
  background:#fff; border:1px solid var(--line); border-radius:var(--r-lg);
  padding:22px; box-shadow:var(--shadow-sm);
}
table.woocommerce-checkout-review-order-table{
  width:100%; border-collapse:collapse; font-size:13.5px; margin-bottom:6px;
}
table.woocommerce-checkout-review-order-table th,
table.woocommerce-checkout-review-order-table td{
  padding:11px 4px; text-align:start; vertical-align:top; border:none;
  border-bottom:1px dashed var(--line); word-break:break-word;
}
table.woocommerce-checkout-review-order-table thead th{
  font-size:12.5px; color:var(--muted); font-weight:600; border-bottom:1px solid var(--line-2);
}
table.woocommerce-checkout-review-order-table .product-name{ color:var(--ink); font-weight:600; line-height:1.7; padding-inline-end:10px; }
table.woocommerce-checkout-review-order-table .product-quantity{ color:var(--muted); font-weight:500; white-space:nowrap; }
table.woocommerce-checkout-review-order-table .product-total,
table.woocommerce-checkout-review-order-table td:last-child{ text-align:end; white-space:nowrap; }
table.woocommerce-checkout-review-order-table tfoot th{ color:var(--body); font-weight:600; }
table.woocommerce-checkout-review-order-table .order-total th,
table.woocommerce-checkout-review-order-table .order-total td{
  border-bottom:none; padding-top:14px; font-size:15.5px; color:var(--ink); font-weight:800;
}
table.woocommerce-checkout-review-order-table .order-total .woocommerce-Price-amount{ color:var(--o-700); }
#shipping_method{ list-style:none; margin:0; padding:0; text-align:end; }
#shipping_method li{ display:flex; justify-content:flex-end; gap:7px; align-items:center; margin-bottom:6px; }
#shipping_method input{ accent-color:var(--o); }

/* payment box */
#payment.woocommerce-checkout-payment{ background:transparent; border-radius:0; }
#payment ul.payment_methods{
  list-style:none; margin:0 0 16px; padding:14px 0 4px; border:none; border-top:1px solid var(--line);
}
#payment ul.payment_methods li{ margin-bottom:8px; }
#payment ul.payment_methods li > label{
  display:flex; align-items:center; gap:10px; font-size:14px; font-weight:700; color:var(--ink);
  padding:12px 14px; border:1.5px solid var(--line-2); border-radius:12px; cursor:pointer; width:100%;
}
#payment ul.payment_methods li input[type="radio"]{ position:absolute; opacity:0; pointer-events:none; }
#payment ul.payment_methods li input[type="radio"]:checked + label{ border-color:var(--o); background:var(--o-50); }
#payment ul.payment_methods li input[type="radio"]:checked + label::before{
  content:""; width:10px; height:10px; border-radius:50%; background:var(--o);
  box-shadow:0 0 0 3px #fff, 0 0 0 4.5px var(--o); margin-inline-end:4px; flex:none;
}
#payment ul.payment_methods li img.zp-logo{ height:30px; width:auto; margin-inline-start:auto; }
#payment div.payment_box{
  background:var(--surface); border-radius:10px; padding:12px 14px; font-size:13px; color:var(--body); margin:8px 0;
}
#payment div.payment_box p{ margin:0; }
.woocommerce-terms-and-conditions-wrapper{ font-size:13px; margin-bottom:12px; }
#place_order{
  width:100%; background:var(--o); color:#fff; border:none; border-radius:14px;
  padding:17px; font-family:inherit; font-size:16px; font-weight:800; cursor:pointer;
  box-shadow:0 8px 20px rgba(245,138,75,.32); transition:.18s;
}
#place_order:hover{ background:var(--o-600); }
.li-secure{
  display:flex; align-items:center; justify-content:center; gap:8px;
  font-size:12.5px; color:var(--sage); margin:12px 0 0; text-align:center;
}

/* ============ PAGINATION ============ */
.woocommerce nav.woocommerce-pagination{ margin:46px 0 10px; }
.woocommerce nav.woocommerce-pagination ul.page-numbers{
  display:flex; justify-content:center; align-items:center; gap:9px;
  border:none; margin:0; padding:0;
}
.woocommerce nav.woocommerce-pagination ul.page-numbers li{ border:none; margin:0; overflow:visible; float:none; }
.woocommerce nav.woocommerce-pagination ul.page-numbers li a,
.woocommerce nav.woocommerce-pagination ul.page-numbers li span{
  display:grid; place-items:center; width:42px; height:42px; padding:0;
  border-radius:50%; background:#fff; border:1.5px solid var(--line-2);
  font-family:inherit; font-size:14.5px; font-weight:700; color:var(--body);
  line-height:1; transition:.16s;
}
.woocommerce nav.woocommerce-pagination ul.page-numbers li a:hover{
  border-color:var(--o-400); color:var(--o-700); background:var(--o-50);
}
.woocommerce nav.woocommerce-pagination ul.page-numbers li span.current{
  background:var(--o); border-color:var(--o); color:#fff;
  box-shadow:0 6px 16px rgba(245,138,75,.35);
}
.woocommerce nav.woocommerce-pagination ul.page-numbers li span.dots{
  background:transparent; border:none; width:auto; color:var(--muted);
}
.woocommerce nav.woocommerce-pagination .li-ico{ display:block; }

/* ============ MY ACCOUNT ============ */
.woocommerce-MyAccount-navigation{ background:#fff; border:1px solid var(--line); border-radius:var(--r); padding:12px; }
.woocommerce-MyAccount-navigation ul{ display:flex; flex-direction:column; gap:3px; margin:0; padding:0; }
.woocommerce-MyAccount-navigation li{ border:none !important; list-style:none; }
.woocommerce-MyAccount-navigation li a{
  display:block; padding:11px 14px; border-radius:10px;
  font-size:14.5px; font-weight:600; color:var(--body);
  text-decoration:none !important; border-bottom:none !important; transition:.16s;
}
.woocommerce-MyAccount-navigation li a:hover{ background:var(--o-50); color:var(--o-700); }
.woocommerce-MyAccount-navigation li.is-active a{ background:var(--o-50); color:var(--o-700); }
.woocommerce-MyAccount-content{ min-width:0; }
.woocommerce-MyAccount-content .woocommerce-form-row input.input-text{
  width:100%; min-height:46px; border:1.5px solid var(--line-2); border-radius:12px;
  padding:10px 14px; font-family:inherit; font-size:14px; color:var(--ink); background:#fff;
}
.woocommerce-MyAccount-content .woocommerce-form-row input.input-text:focus{
  outline:none; border-color:var(--o-400); box-shadow:0 0 0 3px var(--o-50);
}
.woocommerce-MyAccount-content .woocommerce-form-row label{
  display:block; font-size:13px; font-weight:600; color:var(--ink); margin-bottom:6px;
}
.woocommerce-MyAccount-content fieldset{
  border:1.5px solid var(--line-2); border-radius:var(--r);
  padding:22px; margin:30px 0 26px;
}
.woocommerce-MyAccount-content fieldset legend{
  padding:0 12px; font-size:14.5px; font-weight:800; color:var(--ink);
}
.woocommerce-MyAccount-content button[type="submit"],
.woocommerce-MyAccount-content .woocommerce-Button{
  margin-top:22px;
}
.woocommerce-EditAccountForm .woocommerce-form-row{ margin-bottom:16px; }
.woocommerce-EditAccountForm span em{ font-size:12px; color:var(--muted); }

/* cart page tweaks */
.woocommerce-cart table.shop_table{ border-collapse:collapse; width:100%; border:none; }
.woocommerce-cart table.shop_table th, .woocommerce-cart table.shop_table td{
  border:none; border-bottom:1px dashed var(--line); padding:12px 8px; text-align:start;
}
.woocommerce-cart .cart_totals{ background:#fff; border:1px solid var(--line); border-radius:var(--r-lg); padding:22px; }
.woocommerce-cart .wc-proceed-to-checkout .checkout-button{
  display:block; text-align:center; background:var(--o); color:#fff; border-radius:14px;
  padding:16px; font-weight:800; font-size:15px;
}
.woocommerce-cart .wc-proceed-to-checkout .checkout-button:hover{ background:var(--o-600); }

/* ============ RESPONSIVE ============ */
@media (max-width:960px){
  #order_review_heading{ margin-top:24px; }
  .li-mini-grid{ grid-template-columns:repeat(2,1fr); }
}
@media (max-width:560px){
  .woocommerce-billing-fields__field-wrapper,
  .woocommerce-shipping-fields__field-wrapper{ grid-template-columns:1fr; }
  .woocommerce-checkout #customer_details{ padding:18px; }
  #order_review.woocommerce-checkout-review-order{ padding:16px; }
  .cat-chips{ gap:7px; }
  .cat-chip{ padding:7px 12px; font-size:12.5px; }
  .li-fab{ bottom:16px; inset-inline-start:16px; }
  .li-fab-btn{ width:46px; height:46px; }
}
