/* NÉP 1.8 — XAMPP mobile cart + checkout repair. Desktop remains minimal. */
:root{--nep-v18-green:#27342d}
html{overflow-x:clip} .shop-shell,.generic-page.shop-shell,.generic-page.shop-shell .container,.woocommerce{min-width:0;max-width:100%}
/* One dismiss control: the header hamburger becomes an X; don't duplicate it inside drawer. */
@media(max-width:960px){
  .nep-drawer-heading .nep-drawer-close{display:none!important}
  .primary-nav,.primary-nav.is-open{position:fixed!important;top:var(--nep-drawer-top,75px)!important;left:0!important;right:auto!important;bottom:0!important;height:calc(100dvh - var(--nep-drawer-top,75px))!important;max-height:none!important;min-height:0!important;overflow:auto!important;overscroll-behavior:contain;width:min(390px,90vw)!important;box-shadow:12px 12px 30px rgba(16,30,20,.14)!important;padding:22px 22px 36px!important;z-index:111!important}
  .primary-nav:not(.is-open){transform:translateX(-105%)!important;visibility:hidden!important;pointer-events:none!important}
  .primary-nav.is-open{transform:translateX(0)!important;visibility:visible!important;pointer-events:auto!important}
  .nep-drawer-heading{display:block!important;padding:6px 2px 15px!important}
  .nep-menu-backdrop:not([hidden]){position:fixed!important;inset:0!important;z-index:89!important}
  body.nep-menu-open{overflow:hidden!important}
  .mobile-menu-toggle{z-index:140!important}
  .header-actions{z-index:101}
  .header-search:not([hidden]){z-index:142!important;position:absolute;left:0;right:0;background:#fff;box-shadow:0 13px 25px #00000014}
}
/* Price of lowest available variation: show the real "before" value. */
.nep-price-from{font-size:12px;font-weight:400;color:#626962;margin-right:2px}
.nep-before-price,.nep-variation-price del{font-size:.73em!important;font-weight:400!important;color:#858b83!important;opacity:1!important;margin-right:7px;text-decoration:line-through;white-space:nowrap}
.nep-current-price,.nep-variation-price ins{text-decoration:none!important;font-weight:700!important;color:#27342d!important;white-space:nowrap}
.nep-you-save{display:inline-block;margin:5px 0 2px;font-size:11px!important;font-weight:600;color:#5a674c;white-space:normal}
.product-tile__price .nep-you-save{display:block}
.woocommerce div.product p.price,.woocommerce div.product span.price{min-width:0;line-height:1.6}
.woocommerce div.product .single_variation .nep-variation-price{display:block;line-height:1.6}
/* Hide dead magnifier for catalog stock image without a Woo attachment/lightbox link. */
.woocommerce-product-gallery.nep-gallery-no-zoom .woocommerce-product-gallery__trigger{display:none!important}
.woocommerce-product-gallery img[src$="photo-unavailable.svg"]{object-fit:contain;background:#f3f4f0}
/* Cart + checkout: no narrow article column, no squeezed sidebar, no unexpected horizontal scrollbar. */
body.woocommerce-cart .generic-page__wrap,body.woocommerce-checkout .generic-page__wrap{max-width:var(--max)!important;width:100%!important}
body.woocommerce-cart .entry-content,body.woocommerce-checkout .entry-content{width:100%!important;max-width:none!important}
body.woocommerce-cart .wp-block-woocommerce-cart,body.woocommerce-checkout .wp-block-woocommerce-checkout{width:100%;max-width:none;box-sizing:border-box;padding:0!important}
.wc-block-cart,.wc-block-checkout{min-width:0;max-width:100%}
.wc-block-components-sidebar-layout,.wc-block-components-main,.wc-block-components-sidebar{min-width:0}
.wc-block-components-order-summary-item__image img,.wc-block-cart-item__image img,.woocommerce-cart .product-thumbnail img{width:100%;height:auto;aspect-ratio:4/5;object-fit:contain;background:#f4f5f1}
.woocommerce-cart .wc-block-components-product-price__regular,.woocommerce-checkout .wc-block-components-product-price__regular{font-size:12px;color:#838b83}
/* Demo shipping row is removed visually when demo shipping rate has been reset to zero; billing address remains. */
.nep-zero-demo-shipping.woocommerce-cart .cart_totals .woocommerce-shipping-totals{display:none!important}
.nep-zero-demo-shipping.woocommerce-cart .wc-block-components-shipping-rates-control,.nep-zero-demo-shipping.woocommerce-cart .wc-block-components-totals-shipping{display:none!important}
/* Voucher cards always appear next to 'Thêm mã giảm giá' – never at the page footer. */
.nep-coupon-inline{display:block!important;position:relative;clear:both;max-width:100%;width:100%;margin:12px 0 20px!important;box-sizing:border-box}
.nep-coupon-inline .nep-checkout-offers__list{grid-template-columns:minmax(0,1fr)!important;gap:8px!important}
.nep-coupon-inline .nep-checkout-offers__head h2{font-size:18px}
.nep-coupon-inline .nep-checkout-offers__note,.nep-coupon-inline .nep-checkout-offers__foot{font-size:11px}
.nep-coupon-inline .nep-checkout-offer{padding:11px!important}
.nep-no-coupons{font-size:12px;background:#f3f5f1;color:#677265;padding:13px;border-radius:6px}
/* Modal notification even when XAMPP cannot download SweetAlert2 CDN. */
.nep-v18-dialog{position:fixed;inset:0;z-index:100010;display:grid;place-items:center;padding:18px;background:rgba(14,22,16,.38)}
.nep-v18-dialog__panel{background:#fff;width:min(390px,100%);padding:31px 24px;border-radius:14px;text-align:center;box-shadow:0 26px 70px #17211736}
.nep-v18-dialog__symbol{width:58px;height:58px;display:grid;place-items:center;border:2px solid #6a946b;border-radius:100%;font-size:30px;font-weight:600;color:#477a4c;margin:0 auto 17px}
.nep-v18-dialog__message{color:#263029;font-size:16px;line-height:1.55;font-weight:600;margin:0 0 22px;overflow-wrap:anywhere}
.nep-v18-dialog__actions{display:flex;justify-content:center;flex-wrap:wrap;gap:10px}
.nep-v18-dialog__actions button,.nep-v18-dialog__actions a{border:1px solid #dce2db;min-height:42px;display:inline-flex;justify-content:center;align-items:center;padding:0 17px;border-radius:6px;color:#27342d;background:#fff;font-size:13px;font-weight:600}
.nep-v18-dialog__actions .nep-v18-dialog__primary{color:#fff;background:#27342d;border-color:#27342d}
.nep-v18-dialog.is-ready .nep-v18-dialog__panel{animation:nep-v18-pop .22s ease-out}
@keyframes nep-v18-pop{from{opacity:0;transform:translateY(12px) scale(.98)}to{opacity:1;transform:none}}
@media(max-width:780px){
  .wc-block-components-sidebar-layout{display:flex!important;flex-direction:column!important;gap:24px}
  .wc-block-components-sidebar-layout .wc-block-components-main,.wc-block-components-sidebar-layout .wc-block-components-sidebar{width:100%!important;flex:0 0 auto!important;max-width:100%!important;padding:0!important;margin:0!important}
  .wc-block-checkout__sidebar,.wc-block-cart__sidebar{order:2!important}
  .woocommerce-checkout #customer_details,.woocommerce-checkout #order_review{float:none!important;width:100%!important;max-width:none!important;min-width:0!important}
  .woocommerce-checkout .woocommerce-checkout-review-order-table{width:100%!important;max-width:100%;table-layout:auto}
  .wc-block-components-totals-wrapper{padding:14px 0!important}
}
@media(max-width:480px){
  .generic-page.shop-shell{padding-top:23px!important}
  .generic-page.shop-shell h1{font-size:clamp(28px,9vw,36px);margin-bottom:28px}
  .container{padding-inline:16px!important}
  .wc-block-cart-items,.woocommerce-cart-form__contents{width:100%!important;max-width:100%!important}
  .wc-block-cart-items__row{grid-template-columns:80px minmax(0,1fr)!important;column-gap:10px!important}
  .wc-block-cart-item__image{grid-row:1 / 4!important;max-width:80px!important}
  .wc-block-cart-item__product{min-width:0!important;overflow-wrap:anywhere}
  .wc-block-components-product-name{font-size:13px!important;line-height:1.5!important}
  .wc-block-components-product-details{font-size:11px!important}
  .wc-block-components-product-badge{font-size:10px!important}
  .wc-block-components-order-summary-item{grid-template-columns:58px minmax(0,1fr)!important;gap:10px!important}
  .wc-block-components-order-summary-item__image{width:58px!important}
  .wc-block-components-order-summary-item__description{min-width:0!important}
  .wc-block-components-sidebar-layout .wc-block-components-sidebar{padding:0!important}
  .nep-checkout-offers__head{align-items:center}
  .nep-checkout-offers__head h2{font-size:17px}
  .nep-coupon-inline{padding:14px 12px!important}
  .woocommerce-message .button.wc-forward{display:inline-block;float:none;margin:6px 0}
}
@media(prefers-reduced-motion:reduce){.nep-v18-dialog__panel{animation:none!important}}
