/* Mobile Cart preview shares Variation's bottom-edge sheet geometry. */
body.hc-mini-sheet-open {overscroll-behavior:none}
.hc-mini-sheet-host {z-index:100050!important;overflow:visible!important;transform:none!important;filter:none!important;perspective:none!important;contain:none!important}
.hc-mini-sheet-positioned {position:relative}
.hc-mini-cart[data-hc-mini-sheet] {z-index:100050}
.hc-mini-cart[data-hc-mini-sheet]>.hc-mini-toggle {position:relative;z-index:3}
.hc-mini-cart[data-hc-mini-sheet]>.hc-mini-sheet-backdrop {position:fixed;inset:0;z-index:1;background:rgb(0 0 0 / 44%);animation:hc-mini-backdrop-enter-v142 .22s ease both}
.hc-mini-cart[data-hc-mini-sheet]>.hc-mini-panel {position:fixed;inset:auto max(0px,calc((100vw - 620px)/2)) var(--hc-mini-sheet-bottom,0px);z-index:4;width:auto;max-width:none;max-height:calc(100vh - 16px);max-height:min(calc(var(--hc-mini-sheet-height,100dvh) - var(--hc-mini-sheet-reserved,0px) - max(16px,env(safe-area-inset-top))),780px);margin:0;padding:0;gap:0;border:0;border-radius:14px 14px 0 0;background:#fff;box-shadow:0 -8px 36px #0002;overflow:hidden;animation:hc-mini-sheet-enter-v142 .22s cubic-bezier(.2,.7,.3,1) both}
.hc-mini-cart[data-hc-mini-sheet] .hc-mini-heading {flex:0 0 auto;min-height:62px;padding:8px max(16px,env(safe-area-inset-right)) 8px max(18px,env(safe-area-inset-left));border-bottom:1px solid #ececef}
.hc-mini-cart[data-hc-mini-sheet] .hc-mini-heading h2 {font-size:16px!important}
.hc-mini-cart[data-hc-mini-sheet] .hc-mini-close {width:44px;min-width:44px;height:44px}
.hc-mini-cart[data-hc-mini-sheet] .hc-mini-items {flex:1 1 auto;min-height:0;padding:4px max(18px,env(safe-area-inset-right)) 4px max(18px,env(safe-area-inset-left));overflow-y:auto;overscroll-behavior:contain;-webkit-overflow-scrolling:touch}
.hc-mini-cart[data-hc-mini-sheet] .hc-mini-status:not(:empty) {flex:0 0 auto;margin:0;padding:8px 18px;max-height:88px;overflow-y:auto}
.hc-mini-cart[data-hc-mini-sheet] .hc-mini-footer {flex:0 0 auto;min-height:68px;margin:0;padding:12px max(18px,env(safe-area-inset-right)) calc(12px + env(safe-area-inset-bottom)) max(18px,env(safe-area-inset-left));border:0;border-top:1px solid #ececef;border-radius:0;background:#fff}
.hc-mini-cart[data-hc-mini-sheet] .hc-mini-footer .hc-mini-cta {min-height:46px}
.hc-mini-cart[data-hc-mini-sheet="closing"]>.hc-mini-panel {pointer-events:none;animation:hc-mini-sheet-exit-v142 .22s ease-in both}
.hc-mini-cart[data-hc-mini-sheet="closing"]>.hc-mini-sheet-backdrop {pointer-events:none;animation:hc-mini-backdrop-exit-v142 .22s ease-in both}
.hc-mini-cart[data-hc-mini-short="true"]>.hc-mini-panel {max-height:calc(var(--hc-mini-sheet-height,100dvh) - var(--hc-mini-sheet-reserved,0px) - 8px);overflow-y:auto;overscroll-behavior:contain}
.hc-mini-cart[data-hc-mini-short="true"] .hc-mini-items {flex:0 0 auto;min-height:96px;overflow:visible}
.hc-mini-cart[data-hc-mini-short="true"] .hc-mini-heading {min-height:52px;padding-block:4px}
@keyframes hc-mini-sheet-enter-v142 {from{transform:translateY(100%)}to{transform:translateY(0)}}
@keyframes hc-mini-sheet-exit-v142 {from{transform:translateY(0)}to{transform:translateY(100%)}}
@keyframes hc-mini-backdrop-enter-v142 {from{opacity:0}to{opacity:1}}
@keyframes hc-mini-backdrop-exit-v142 {from{opacity:1}to{opacity:0}}
@media(prefers-reduced-motion:reduce){.hc-mini-cart[data-hc-mini-sheet]>.hc-mini-panel,.hc-mini-cart[data-hc-mini-sheet]>.hc-mini-sheet-backdrop{animation:none!important}}

/* Wide fine-pointer Cart uses the same canonical panel as a right drawer. */
.h88-desktop-cart-shortcut { display:none!important; }
body.woocommerce-cart .hc-purchase-club-v135 { display:none!important; }
@media(min-width:1200px) and (any-pointer:fine) {
 .hc-mini-cart[data-hc-mini-layout="drawer"][data-hc-mini-sheet]>.hc-mini-panel { inset:0 0 0 auto; width:min(480px,90vw); height:var(--hc-mini-sheet-height,100dvh); max-height:var(--hc-mini-sheet-height,100dvh); border-radius:0; box-shadow:-3px 0 20px rgb(0 24 52 / 18%); animation:hc-cart-drawer-enter .22s cubic-bezier(.2,.7,.3,1) both; }
 .hc-mini-cart[data-hc-mini-layout="drawer"][data-hc-mini-sheet="closing"]>.hc-mini-panel { animation:hc-cart-drawer-exit .22s ease-in both; }
 .hc-mini-cart[data-hc-mini-layout="drawer"][data-hc-mini-sheet]>.hc-mini-toggle { visibility:hidden; }
 .hc-mini-cart[data-hc-mini-layout="drawer"][data-hc-mini-sheet] .hc-mini-items { flex:1 1 auto; min-height:0; overflow:auto; }
 .hc-mini-cart[data-hc-mini-floating]:not([data-hc-mini-sheet])>.hc-mini-panel { position:fixed; right:82px; top:auto; bottom:20px; max-height:calc(100dvh - 40px); }
 .h88-category-desktop body .h88-mobile-category-shortcut { right:max(18px,env(safe-area-inset-right)); bottom:calc(128px + env(safe-area-inset-bottom)); }
 .h88-category-desktop body .h88-back-to-top { right:max(18px,env(safe-area-inset-right)); bottom:calc(184px + env(safe-area-inset-bottom)); }
 .h88-category-desktop .h88-desktop-chat-shortcut { right:max(18px,env(safe-area-inset-right)); bottom:0; width:240px; box-sizing:border-box; min-height:56px; padding:14px 22px; gap:10px; border-radius:8px 8px 0 0; font-size:19px; }
 .h88-category-desktop .h88-desktop-chat-shortcut svg { width:24px; height:24px; flex:0 0 24px; }
 .h88-category-desktop .hc-mini-cart>.h88-desktop-cart-shortcut { position:fixed; display:flex!important; align-items:center; justify-content:center; right:max(18px,env(safe-area-inset-right)); bottom:calc(72px + env(safe-area-inset-bottom)); z-index:800; width:46px; height:46px; min-width:46px; margin:0; padding:0; border:1px solid #e0e6ec; border-radius:50%; background:#fff; color:#344151; box-shadow:0 3px 12px rgb(0 25 56 / 15%); text-decoration:none; touch-action:manipulation; }
 html.h88-category-desktop .hc-mini-cart>.h88-desktop-cart-shortcut .dashicons { color:#344151!important; font-size:22px!important; width:22px!important; height:22px!important; }
 html.h88-category-desktop .hc-mini-cart>.h88-desktop-cart-shortcut .dashicons::before { color:#344151!important; font-size:22px!important; }
 .h88-desktop-cart-shortcut .h88-fixed-cart-count { position:absolute; right:-4px; top:-5px; min-width:18px; height:18px; border-radius:9px; padding:0 4px; box-sizing:border-box; font-size:10px; line-height:18px; background:#cd000f; color:white; }
 .h88-desktop-cart-shortcut:focus-visible { outline:2px solid #cd000f; outline-offset:3px; }
 .h88-category-desktop body:is(.h88-auth-page-active,.woocommerce-checkout) .hc-mini-cart>.h88-desktop-cart-shortcut { display:none!important; }
 .h88-category-desktop .site-footer .club-footer-bottom { padding-right:calc(280px + env(safe-area-inset-right)); }
}
@keyframes hc-cart-drawer-enter { from { transform:translateX(100%); } to { transform:translateX(0); } }
@keyframes hc-cart-drawer-exit { from { transform:translateX(0); } to { transform:translateX(100%); } }

/* Compact Cart footer: total and selected unit count share one summary column. */
.hc-mini-cart .hc-mini-footer { display:flex; align-items:center; flex-wrap:nowrap; gap:16px; }
.hc-mini-cart .hc-mini-footer .hc-mini-subtotal { display:grid; grid-template-columns:auto minmax(0,1fr); align-items:baseline; column-gap:5px; row-gap:3px; flex:1 1 auto; min-width:0; max-width:none; }
.hc-mini-cart .hc-mini-footer .hc-mini-total-label { color:#262b32; font-size:14px; font-weight:500; line-height:1.35; }
.hc-mini-cart .hc-mini-footer .hc-mini-subtotal strong { min-width:0; font-size:15px!important; }
.hc-mini-cart .hc-mini-footer .hc-mini-subtotal strong :is(.amount,bdi) { white-space:normal; overflow-wrap:anywhere; }
.hc-mini-cart .hc-mini-footer .hc-mini-item-count { grid-column:1 / -1; color:#707780; font-size:12px; font-weight:400; line-height:1.4; }
.hc-mini-cart .hc-mini-footer .hc-mini-cta { flex:0 0 auto!important; width:auto!important; min-width:112px; max-width:45%; margin-left:auto; padding:10px 20px!important; white-space:nowrap; }

/* Hover preview follows the reference's wider, right-aligned cart action. */
@media(min-width:1200px) and (any-pointer:fine) {
 .hc-mini-cart:not([data-hc-mini-sheet]) .hc-mini-footer .hc-mini-cta { flex:0 0 44%!important; width:44%!important; min-width:0; max-width:44%; padding:10px 12px!important; }
 /* Keep the original stacked native variation form; tighten only desktop spacing. */
 .hc-mini-cart .hc-variation-fields { display:block; width:min(260px,100%); margin-top:4px; padding:6px; }
 .hc-mini-cart .hc-variation-fields label { margin:2px 0; font-size:12px; }
 .hc-mini-cart .hc-variation-fields select { min-height:32px; height:32px; margin:0 0 4px; padding:3px 7px; font-size:13px; }
 .hc-mini-cart .hc-variation-buttons { gap:6px; margin-top:0; }
 .hc-mini-cart .hc-variation-buttons button { min-height:32px; padding:5px 10px; }
 .hc-mini-cart .hc-variation-fields > small { margin-top:3px; }
}
/* Desktop utility controls: stronger definition without changing the compact stack. */
@media(min-width:1200px) and (any-pointer:fine) {
 html.h88-category-desktop body :is(.h88-back-to-top,.h88-mobile-category-shortcut,.hc-mini-cart>.h88-desktop-cart-shortcut) { box-sizing:border-box; border-color:#aebbc8; background:#fff; color:#18324b; box-shadow:0 2px 5px rgb(0 24 52 / 12%),0 5px 16px rgb(0 24 52 / 16%); }
 html.h88-category-desktop body :is(.h88-back-to-top,.h88-mobile-category-shortcut,.hc-mini-cart>.h88-desktop-cart-shortcut) :is(.dashicons,svg) { width:24px!important; height:24px!important; font-size:24px!important; line-height:1; color:#18324b!important; }
 html.h88-category-desktop body :is(.h88-back-to-top,.h88-mobile-category-shortcut,.hc-mini-cart>.h88-desktop-cart-shortcut) .dashicons::before { font-size:24px!important; color:#18324b!important; }
 html.h88-category-desktop body :is(.h88-back-to-top,.h88-mobile-category-shortcut,.hc-mini-cart>.h88-desktop-cart-shortcut):hover { background:#f3f6f9; border-color:#7890a6; }
 html.h88-category-desktop body :is(.h88-back-to-top,.h88-mobile-category-shortcut,.hc-mini-cart>.h88-desktop-cart-shortcut):focus-visible { outline:2px solid #18324b; outline-offset:3px; }
 html.h88-category-desktop .h88-desktop-cart-shortcut .h88-fixed-cart-count { box-shadow:0 0 0 2px #fff; font-weight:700; }
 html.h88-category-desktop .h88-desktop-chat-shortcut { border-color:#aebbc8; box-shadow:0 2px 5px rgb(0 24 52 / 12%),0 5px 16px rgb(0 24 52 / 16%); }
}
