:root{--csu-mobile-nav-h:calc(64px + env(safe-area-inset-bottom));--csu-mobile-nav-h-px:64px;--csu-sticky-buy-h-px:0px;--csu-mobile-bottom-total-px:64px;}
.csu-mobile-bottom-nav{display:none}@media(max-width:767px){
body{padding-bottom:0!important}.csu-mobile-bottom-nav{position:fixed;left:0;right:0;bottom:0;height:64px;z-index:99980;display:grid;grid-template-columns:repeat(5,minmax(0,1fr));align-items:stretch;background:rgba(255,255,255,.99);border-top:1px solid #e9edf2;box-shadow:0 -4px 18px rgba(20,25,35,.07);padding-bottom:env(safe-area-inset-bottom);box-sizing:content-box;direction:rtl}
.csu-mobile-nav__item{min-width:0;appearance:none;border:0;background:transparent;color:#5f6875;text-decoration:none!important;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:3px;padding:5px 2px 6px;font:inherit;font-size:12px;font-weight:700;line-height:1.2;cursor:pointer;-webkit-tap-highlight-color:transparent}
.csu-mobile-nav__icon{width:24px;height:24px;display:grid;place-items:center}.csu-mobile-nav__icon svg{width:22px;height:22px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
.csu-mobile-nav__item:active,.csu-mobile-nav__item[aria-expanded="true"],.csu-mobile-nav__item:focus,.csu-mobile-nav__item:focus-visible{color:#5f6875!important;outline:0!important;box-shadow:none!important;border:0!important;background:transparent!important}.csu-mobile-nav__home{color:#ed1944}.cfs-back-to-top,.csmm-mobile-fab{display:none!important}
footer{padding-bottom:0!important}
body.single-product .csu-sticky-buy-fixed{position:fixed!important;left:0!important;right:0!important;bottom:var(--csu-mobile-nav-h-px)!important;width:100%!important;margin:0!important;padding:0!important;z-index:99990!important;display:block!important;visibility:visible!important;opacity:1!important;transform:none!important;border-radius:0!important;box-sizing:border-box!important;background:#fff!important;border-top:1px solid #e7ebf0!important;box-shadow:0 -6px 22px rgba(20,25,35,.10)!important}
}
@media(min-width:768px){.csu-mobile-bottom-nav{display:none!important}}
@media(max-width:767px){body.cafestore-native-theme>.cs-main{padding-bottom:var(--csu-mobile-bottom-total-px)!important}}

/* Professional CafeStore sticky purchase bar */
.csu-sticky-buy{position:fixed;left:0;right:0;bottom:0;z-index:100010;background:rgba(255,255,255,.98);border-top:1px solid #e6eaf0;box-shadow:0 -10px 32px rgba(20,25,35,.13);padding:10px 16px calc(10px + env(safe-area-inset-bottom));box-sizing:border-box;direction:rtl;backdrop-filter:saturate(150%) blur(12px)}
.csu-sticky-buy__inner{width:min(100%,1180px);margin:0 auto;display:flex;align-items:center;justify-content:space-between;gap:18px}
.csu-sticky-buy__meta{min-width:0;display:flex;align-items:center;gap:10px;flex:1}
.csu-sticky-buy__caption{color:#66707d;font-size:13px;font-weight:650;white-space:nowrap}
.csu-sticky-buy__price{color:#20252d;font-size:16px;font-weight:850;white-space:nowrap;line-height:1.4}
.csu-sticky-buy__price .amount{font-weight:850}
.csu-sticky-buy__button{appearance:none;display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:260px;min-height:48px;padding:0 24px;border:0;border-radius:13px;background:#ed1944;color:#fff!important;text-decoration:none!important;font:inherit;font-size:15px;font-weight:850;line-height:1;cursor:pointer;box-shadow:0 7px 18px rgba(237,25,68,.20);transition:transform .15s ease,box-shadow .15s ease,filter .15s ease}
.csu-sticky-buy__button.is-loading{pointer-events:none;opacity:.72}.csu-sticky-buy__button.is-loading .csu-sticky-buy__icon{animation:csu-spin .8s linear infinite}.csu-sticky-buy__button:hover{filter:brightness(.97);transform:translateY(-1px);box-shadow:0 9px 22px rgba(237,25,68,.25)}
.csu-sticky-buy__button:active{transform:translateY(0);box-shadow:0 4px 12px rgba(237,25,68,.18)}
.csu-sticky-buy__button:focus-visible{outline:3px solid rgba(237,25,68,.25);outline-offset:3px}
.csu-sticky-buy__icon{font-size:18px;line-height:1}
@media(min-width:768px){body.single-product{padding-bottom:72px!important}.csu-sticky-buy{padding:11px 22px}.csu-sticky-buy__button{min-width:280px}}
@media(max-width:767px){body.single-product{padding-bottom:calc(var(--csu-mobile-bottom-total-px) + 78px)!important}.csu-sticky-buy{bottom:var(--csu-mobile-nav-h-px);padding:8px 10px calc(8px + env(safe-area-inset-bottom))}.csu-sticky-buy__inner{gap:8px}.csu-sticky-buy__meta{display:block;min-width:0}.csu-sticky-buy__caption{display:block;font-size:10px;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.csu-sticky-buy__price{display:block;font-size:13px;line-height:1.5;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.csu-sticky-buy__button{min-width:0;width:52%;min-height:48px;padding:0 12px;border-radius:12px;font-size:14px;box-shadow:0 6px 16px rgba(237,25,68,.18)}.csu-sticky-buy__icon{font-size:17px}}

@keyframes csu-spin{to{transform:rotate(360deg)}}

body.single-product .sticky-add-to-cart{display:none!important}
body.single-product .csu-sticky-buy{display:block!important;z-index:100050!important}
body.csu-mega-open .csu-sticky-buy{display:none!important}

/* Keep Woo's form in the DOM so the sticky CTA can submit it, but expose only
   variation/quantity controls when they are actually needed. */
body.single-product:not(.csu-product-type-variable) .entry-summary > form.cart,
body.single-product.csu-product-type-external .entry-summary > form.cart{display:none!important}
body.single-product .entry-summary > form.cart .single_add_to_cart_button,
body.single-product .entry-summary > form.cart button[name="add-to-cart"],
body.single-product .entry-summary > form.cart .add_to_cart_button,
body.single-product .entry-summary > form.cart .single_add_to_cart_button.disabled,
body.single-product .entry-summary > form.cart .quantity{margin-inline-end:8px}

/* The overlay must always sit above the sticky CTA. */
.csmm-overlay{z-index:100200!important}

/* 3.24.0 — Mobile product footer/sticky alignment.
   Reserve the fixed CTA + mobile navigation height inside the footer itself.
   The footer content never sits behind the CTA, and no blank strip is inserted
   after the footer. The footer background reaches the fixed UI edge naturally. */



/* 3.70.0 — exact RTL five-item mobile navigation. */
@media(max-width:767px){.csu-mobile-bottom-nav{grid-template-columns:repeat(5,minmax(0,1fr))!important}.csu-mobile-bottom-nav .csu-mobile-nav__item{min-width:0}.csu-mobile-bottom-nav .csu-mobile-nav__icon .csu-compare-icon{width:23px;height:23px;fill:none;stroke:currentColor;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}.csu-mobile-bottom-nav .csu-mobile-nav__top{display:grid!important}}

/* 3.81.0 — four-item mobile navigation: RTL order is categories, home, favorites, compare. */
@media(max-width:767px){
  .csu-mobile-bottom-nav{grid-template-columns:repeat(4,minmax(0,1fr))!important}
  .csu-mobile-bottom-nav .csu-mobile-nav__item{min-width:0}
  .csu-mobile-nav__count{position:absolute;top:4px;right:calc(50% - 18px);min-width:16px;height:16px;padding:0 4px;border-radius:999px;background:#ed1944;color:#fff;font:700 9px/16px sans-serif;text-align:center;box-sizing:border-box;pointer-events:none}
  .csu-mobile-nav__favorites,.csu-mobile-nav__compare{position:relative}
}
/* 4.6.0 — fullscreen search owns the mobile viewport; bottom navigation must not cover results. */
@media(max-width:767px){
  body.csu-search-open .csu-mobile-bottom-nav{display:none!important;visibility:hidden!important;pointer-events:none!important}
  body.csu-search-open{padding-bottom:0!important}
  body.csu-search-open .csu-native-search.is-open{padding-bottom:max(10px,env(safe-area-inset-bottom))!important}
}


@media(max-width:767px){
  .csu-mobile-bottom-nav{padding-bottom:max(env(safe-area-inset-bottom),0px)!important;height:64px!important;}
  body.single-product{padding-bottom:calc(var(--csu-mobile-bottom-total-px,64px) + var(--csu-sticky-reserve,82px) + env(safe-area-inset-bottom,0px) + 14px)!important;}
  .csu-sticky-buy{bottom:var(--csu-mobile-nav-h,calc(64px + env(safe-area-inset-bottom,0px)))!important;}
}
@media(prefers-color-scheme:dark){
  .csu-mobile-bottom-nav{background:rgba(15,17,21,.98)!important;border-color:#2b313b!important;box-shadow:0 -6px 22px rgba(0,0,0,.35)!important;}
  .csu-mobile-nav__item{color:#aeb6c2!important;}
  .csu-mobile-nav__home{color:#ff6b89!important;}
  .csu-sticky-buy{background:rgba(15,17,21,.98)!important;border-color:#2b313b!important;}
  .csu-sticky-buy__caption{color:#c5cbd4!important;}
  .csu-sticky-buy__price{color:#ff6b89!important;}
  .csu-sticky-buy__thumb{background:#171a20!important;border-color:#303641!important;}
}
