/* v0.7.95: Keep seller hover rules strictly within seller workspace. */
.ezcat-hub :is(.ezcat-seller,.ezcat-products,.ezcat-orders-wrap,.ezcat-payment-settings) :is(button,input[type="button"],input[type="submit"],a.button):is(:hover,:active,:focus-visible) {
 background:#2563eb!important;color:#fff!important;border-color:#2563eb!important;
}
/* Buttons that are disabled retain their disabled appearance. */
:is(.ezcat-wrap,.ezcat-shop-page,.ezcat-hub,.ezcat-seller,.ezcat-seller-login,.ezcat-products,.ezcat-orders-wrap,.ezcat-cart-panel)
:is(button,input[type="button"],input[type="submit"],input[type="reset"]):disabled:hover {
 cursor:not-allowed;
}
/* Small visual transition without changing the default button colors. */
:is(.ezcat-wrap,.ezcat-shop-page,.ezcat-hub,.ezcat-seller,.ezcat-seller-login,.ezcat-products,.ezcat-orders-wrap,.ezcat-cart-panel)
:is(button,input[type="button"],input[type="submit"],input[type="reset"],a.button,a.btn){
 transition:background-color .15s ease,color .15s ease,border-color .15s ease;
}


/* v0.7.93 — public storefront interaction theme.
   Overrides legacy blue hover/focus rules only in the customer-facing UI.
   Seller dashboard keeps its independent blue palette. */
.ezcat-wrap :is(.ezcat-add,.ezcat-view-cart,.ezcat-proceed,.ezcat-send,.ezcat-variation-picker button):is(:hover,:active,:focus,:focus-visible),
.ezcat-wrap .ezcat-grid>.ezcat-product>.ezcat-add:is(:hover,:active,:focus,:focus-visible),
.ezcat-wrap .ezcat-checkout .ezcat-send:is(:hover,:active,:focus,:focus-visible),
.ezcat-shop-page .ezcat-shop-page-primary:is(:hover,:active,:focus,:focus-visible) {
 background:#d91e52!important;background-color:#d91e52!important;color:#fff!important;
 border:1px solid #d91e52!important;box-shadow:none!important;
}
.ezcat-wrap :is(.ezcat-add,.ezcat-view-cart,.ezcat-proceed,.ezcat-send,.ezcat-variation-picker button):focus-visible,
.ezcat-shop-page .ezcat-shop-page-primary:focus-visible{outline:2px solid #ee2d63!important;outline-offset:2px!important}
/* The selected category stays pink even after tapping or keyboard focus. */
.ezcat-wrap .ezcat-category-tab.is-active:is(:hover,:active,:focus,:focus-visible),
.ezcat-wrap .ezcat-category-tab[aria-pressed="true"]:is(:hover,:active,:focus,:focus-visible){
 background:#fff1f5!important;background-color:#fff1f5!important;color:#d91e52!important;
 border:1px solid #ee2d63!important;box-shadow:none!important;
}
.ezcat-wrap .ezcat-category-tab:not(.is-active):is(:hover,:active,:focus,:focus-visible){
 background:#fff7f9!important;background-color:#fff7f9!important;color:#d91e52!important;
 border:1px solid #f4a4bc!important;box-shadow:none!important;
}
.ezcat-wrap .ezcat-category-tab:focus-visible{outline:2px solid #ee2d63!important;outline-offset:2px!important}
.ezcat-wrap .ezcat-continue-shopping:is(:hover,:active,:focus,:focus-visible),
.ezcat-shop-page .ezcat-shop-page-secondary:is(:hover,:active,:focus,:focus-visible){
 background:#fff1f5!important;background-color:#fff1f5!important;color:#d91e52!important;
 border:1px solid #ee2d63!important;box-shadow:none!important;
}
/* Product gallery thumbnail selected state. */
.ezcat-wrap .ezcat-gallery-choice.is-active:is(:hover,:active,:focus,:focus-visible){
 border-color:#ee2d63!important;box-shadow:0 0 0 1px #ee2d63!important;
 background:#fff!important;
}
/* Marketplace-inspired: light neutral page, clean image-first tiles,
   compact product typography and subtle tactile button feedback. */
@media(max-width:767px){
 .ezcat-wrap .ezcat-grid{gap:6px!important}
 .ezcat-wrap .ezcat-grid>.ezcat-product{border-color:#f0f0f0!important;box-shadow:0 1px 2px rgba(0,0,0,.045)!important}
 .ezcat-wrap .ezcat-grid>.ezcat-product>strong{color:#20242b!important;font-weight:550!important;line-height:1.35!important}
 .ezcat-wrap .ezcat-grid>.ezcat-product>span{color:#e8275b!important;font-weight:700!important}
 .ezcat-wrap .ezcat-grid>.ezcat-product>.ezcat-add{border-radius:6px!important;letter-spacing:0!important}
 .ezcat-wrap .ezcat-category-tabs{scroll-snap-type:x proximity}
 .ezcat-wrap .ezcat-category-tab{scroll-snap-align:start;border-radius:7px!important}
}
@media(prefers-reduced-motion:no-preference){
 .ezcat-wrap .ezcat-add,.ezcat-wrap .ezcat-category-tab{transition:background-color .15s ease,border-color .15s ease,color .15s ease,transform .12s ease!important}
 .ezcat-wrap .ezcat-add:active{transform:scale(.985)}
}

/* v0.7.94: storefront hover/focus override, including theme and native button rules. */
:is(.ezcat-wrap,.ezcat-shop-page,.ezcat-shop-profile,.ezcat-store-about,.ezcat-cart-overlay,.ezcat-cart-panel) :is(button,input[type="button"],input[type="submit"],a.button,a.btn,.ezcat-add,.ezcat-view-cart,.ezcat-proceed,.ezcat-send):not(:disabled):is(:hover,:focus,:focus-visible,:active) {
  background:#d91e52!important;background-color:#d91e52!important;color:#fff!important;
  border-color:#d91e52!important;box-shadow:none!important;text-decoration:none!important;
}
:is(.ezcat-wrap,.ezcat-shop-page,.ezcat-shop-profile,.ezcat-store-about,.ezcat-cart-overlay,.ezcat-cart-panel) :is(button,input[type="button"],input[type="submit"],a.button,a.btn):focus-visible {outline:2px solid #ee2d63!important;outline-offset:2px!important;}
/* Category filters and secondary actions retain their light-pink appearance. */
.ezcat-wrap .ezcat-category-tab:is(:hover,:focus,:focus-visible,:active),
.ezcat-shop-page .ezcat-shop-page-secondary:is(:hover,:focus,:focus-visible,:active),
.ezcat-wrap .ezcat-continue-shopping:is(:hover,:focus,:focus-visible,:active) {
  background:#fff1f5!important;background-color:#fff1f5!important;color:#d91e52!important;
  border-color:#ee2d63!important;box-shadow:none!important;
}

/* v0.7.95: definitive customer-facing pink/red actions, including nested cart overlay. */
body :is(.ezcat-wrap,.ezcat-cart-overlay,.ezcat-cart-panel) :is(.ezcat-add,.ezcat-view-cart,.ezcat-proceed,.ezcat-send,.ezcat-variation-picker button,.ezcat-cart-controls button):not(:disabled),
body .ezcat-wrap .ezcat-grid .ezcat-product button.ezcat-add:not(:disabled) {
 background:#ee2d63!important;background-color:#ee2d63!important;color:#fff!important;
 border:1px solid #ee2d63!important;box-shadow:none!important;
}
body :is(.ezcat-wrap,.ezcat-cart-overlay,.ezcat-cart-panel) :is(.ezcat-add,.ezcat-view-cart,.ezcat-proceed,.ezcat-send,.ezcat-variation-picker button,.ezcat-cart-controls button):not(:disabled):is(:hover,:focus,:focus-visible,:active),
body .ezcat-wrap .ezcat-grid .ezcat-product button.ezcat-add:not(:disabled):is(:hover,:focus,:focus-visible,:active){
 background:#d91e52!important;background-color:#d91e52!important;color:#fff!important;
 border:1px solid #d91e52!important;box-shadow:none!important;
}
body :is(.ezcat-wrap,.ezcat-cart-overlay,.ezcat-cart-panel) .ezcat-continue-shopping:is(:hover,:focus,:focus-visible,:active),
body .ezcat-wrap .ezcat-category-tab:is(:hover,:focus,:focus-visible,:active){
 background:#fff1f5!important;color:#d91e52!important;border-color:#ee2d63!important;box-shadow:none!important;
}
body .ezcat-wrap .ezcat-variation-picker select:is(:focus,:focus-visible),
body .ezcat-wrap .ezcat-checkout select:is(:focus,:focus-visible){
 border-color:#ee2d63!important;outline:2px solid rgba(238,45,99,.3)!important;box-shadow:none!important;
}

/* EZCatalog product social share action: customer-facing only. */
.ezcat-wrap .ezcat-grid>.ezcat-product{position:relative}
.ezcat-wrap .ezcat-grid>.ezcat-product>.ezcat-share-product{align-self:center;width:100%;min-height:34px!important;padding:5px 8px!important;margin:0!important;border:1px solid #f4a3b9!important;border-radius:7px!important;background:#fff5f8!important;color:#d91e52!important;font-size:12px!important;font-weight:650!important;line-height:1.3!important;box-shadow:none!important;cursor:pointer}
.ezcat-wrap .ezcat-grid>.ezcat-product>.ezcat-share-product:hover,.ezcat-wrap .ezcat-grid>.ezcat-product>.ezcat-share-product:focus{background:#ffe5ed!important;border-color:#ee2d63!important;color:#b51645!important;box-shadow:none!important}
.ezcat-wrap .ezcat-grid>.ezcat-product>.ezcat-share-product:focus-visible{outline:2px solid #ee2d63!important;outline-offset:2px}
.ezcat-wrap .ezcat-share-menu{display:grid;gap:0;background:#fff;border:1px solid #f4a3b9;border-radius:9px;padding:4px;box-shadow:0 8px 24px #0002;z-index:12}
.ezcat-wrap .ezcat-share-menu a,.ezcat-wrap .ezcat-share-menu button{display:block;width:100%;text-align:left;background:#fff!important;border:0!important;color:#242424!important;padding:9px 10px!important;font-size:13px!important;font-weight:500!important;text-decoration:none!important;border-radius:5px!important;min-height:36px!important;cursor:pointer}
.ezcat-wrap .ezcat-share-menu a:hover,.ezcat-wrap .ezcat-share-menu button:hover{background:#fff1f5!important;color:#d91e52!important}

/* v0.7.98: compact secondary share action; override theme primary button states. */
body .ezcat-wrap .ezcat-grid > article.ezcat-product > button.ezcat-share-product,
body .ezcat-wrap .ezcat-grid > article.ezcat-product > button.ezcat-share-product:link,
body .ezcat-wrap .ezcat-grid > article.ezcat-product > button.ezcat-share-product:visited {
 display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:5px!important;
 align-self:center!important;width:auto!important;max-width:calc(100% - 16px)!important;
 min-height:28px!important;height:auto!important;padding:4px 12px!important;margin:5px auto 8px!important;
 background:#ffffff!important;background-image:none!important;border:1px solid #f3a3b9!important;
 border-radius:7px!important;color:#d91e52!important;font-size:11px!important;font-weight:600!important;
 line-height:1.3!important;text-decoration:none!important;box-shadow:none!important;transform:none!important;
}
body .ezcat-wrap .ezcat-grid > article.ezcat-product > button.ezcat-share-product:is(:hover,:focus,:focus-visible,:active) {
 background:#fff1f5!important;background-image:none!important;border:1px solid #ee2d63!important;
 color:#d91e52!important;box-shadow:none!important;transform:none!important;
}
body .ezcat-wrap .ezcat-grid > article.ezcat-product > button.ezcat-share-product span {color:inherit!important;font-size:13px!important}
body .ezcat-wrap .ezcat-grid > article.ezcat-product > button.ezcat-share-product:focus-visible {outline:2px solid #ee2d63!important;outline-offset:2px!important}

/* v0.8.00: WhatsApp-first sharing menu (scoped to customer catalogue). */
body .ezcat-wrap .ezcat-grid > article.ezcat-product > .ezcat-share-menu{
  width:calc(100% - 12px);box-sizing:border-box;display:flex;flex-direction:column;gap:8px;
  padding:10px;margin:2px auto 9px;border:1px solid #f3c5d0;border-radius:12px;
  background:#fff;box-shadow:0 6px 20px rgba(0,0,0,.08);z-index:15;
}
body .ezcat-wrap .ezcat-share-menu > a.ezcat-share-whatsapp,
body .ezcat-wrap .ezcat-share-menu > a.ezcat-share-whatsapp:hover,
body .ezcat-wrap .ezcat-share-menu > a.ezcat-share-whatsapp:focus{
  display:flex;align-items:center;justify-content:center;text-align:center;
  background:#25d366!important;color:#fff!important;border:1px solid #1fa855!important;
  border-radius:8px!important;font-weight:700!important;min-height:40px!important;
  padding:9px 7px!important;text-decoration:none!important;
}
body .ezcat-wrap .ezcat-share-menu .ezcat-share-secondary{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:4px}
body .ezcat-wrap .ezcat-share-menu .ezcat-share-secondary > a,
body .ezcat-wrap .ezcat-share-menu .ezcat-share-secondary > button{
  display:flex!important;justify-content:center!important;align-items:center!important;text-align:center!important;
  padding:7px 2px!important;min-width:0!important;min-height:34px!important;
  font-size:11px!important;color:#d91e52!important;border:1px solid #f3c5d0!important;
  background:#fff7f9!important;border-radius:7px!important;text-decoration:none!important;
}
body .ezcat-wrap .ezcat-share-menu > button.ezcat-share-more{
  text-align:center!important;color:#d91e52!important;border:1px solid #f3c5d0!important;
  background:#fff!important;border-radius:7px!important;font-size:12px!important;
}

/* v0.8.78: icon-first sharing menu, independent of legacy pink rules. */
body .ezcat-wrap .ezcat-share-menu.ezcat-share-icons {
 display:flex!important;flex-direction:column!important;gap:12px!important;
 padding:14px!important;width:calc(100% - 12px)!important;max-width:100%!important;
 background:#fff!important;border:1px solid var(--ezcat-share-border,#dbeafe)!important;
 border-radius:14px!important;box-shadow:0 8px 24px rgba(15,23,42,.09)!important;
 box-sizing:border-box!important;
}
body .ezcat-wrap .ezcat-share-icons .ezcat-share-heading {
 font-size:14px!important;font-weight:750!important;color:#1f2937!important;line-height:1.3!important;
}
body .ezcat-wrap .ezcat-share-icons .ezcat-share-icon-grid {
 display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:6px!important;
}
body .ezcat-wrap .ezcat-share-icons .ezcat-share-icon-grid > .ezcat-share-tile {
 display:flex!important;flex-direction:column!important;align-items:center!important;
 justify-content:flex-start!important;gap:7px!important;min-width:0!important;
 padding:5px 2px!important;margin:0!important;border:0!important;
 background:transparent!important;box-shadow:none!important;color:#374151!important;
 font-size:11px!important;font-weight:500!important;text-decoration:none!important;
 text-align:center!important;cursor:pointer!important;min-height:74px!important;
}
body .ezcat-wrap .ezcat-share-icons .ezcat-share-tile-icon {
 display:grid!important;place-items:center!important;width:44px!important;height:44px!important;
 min-width:44px!important;max-width:44px!important;min-height:44px!important;
 max-height:44px!important;border-radius:50%!important;
 background:var(--ezcat-share-pale,#eff6ff)!important;color:var(--ezcat-share-accent,#2563eb)!important;
 padding:0!important;margin:0!important;flex:none!important;
}
body .ezcat-wrap .ezcat-share-icons .ezcat-share-tile-icon svg {
 display:block!important;width:23px!important;height:23px!important;
 min-width:23px!important;min-height:23px!important;max-width:23px!important;max-height:23px!important;
 fill:none!important;stroke:currentColor!important;
}
body .ezcat-wrap .ezcat-share-icons .ezcat-share-whatsapp .ezcat-share-tile-icon {
 background:#e8faef!important;color:#159947!important;
}
body .ezcat-wrap .ezcat-share-icons .ezcat-share-facebook .ezcat-share-tile-icon {
 background:#eaf2ff!important;color:#1877f2!important;
}
body .ezcat-wrap .ezcat-share-icons .ezcat-share-telegram .ezcat-share-tile-icon {
 background:#e8f7ff!important;color:#229ed9!important;
}
body .ezcat-wrap .ezcat-share-icons .ezcat-share-tile-label {
 display:block!important;background:transparent!important;padding:0!important;margin:0!important;
 color:#374151!important;font-size:10px!important;line-height:1.3!important;
 white-space:normal!important;overflow-wrap:anywhere!important;
}
body .ezcat-wrap .ezcat-share-icons > button.ezcat-share-more {
 display:flex!important;align-items:center!important;justify-content:flex-start!important;
 gap:11px!important;padding:9px 11px!important;min-height:48px!important;
 background:var(--ezcat-share-pale,#eff6ff)!important;
 border:1px solid var(--ezcat-share-border,#dbeafe)!important;
 border-radius:10px!important;color:#374151!important;text-align:left!important;
}
body .ezcat-wrap .ezcat-share-icons > button.ezcat-share-more .ezcat-share-tile-icon {
 width:30px!important;height:30px!important;min-width:30px!important;max-width:30px!important;
 min-height:30px!important;max-height:30px!important;background:#fff!important;
}
body .ezcat-wrap .ezcat-share-icons > button.ezcat-share-more .ezcat-share-tile-icon svg {
 width:17px!important;height:17px!important;min-width:17px!important;min-height:17px!important;
 max-width:17px!important;max-height:17px!important;
}
body .ezcat-wrap .ezcat-share-icons > button.ezcat-share-more .ezcat-share-tile-label {
 font-size:12px!important;font-weight:650!important;
}
body .ezcat-wrap .ezcat-share-icons .ezcat-share-tile:is(:hover,:focus-visible) .ezcat-share-tile-icon {
 outline:2px solid var(--ezcat-share-accent,#2563eb)!important;outline-offset:2px!important;
}
body.ezcat-theme-classic {--ezcat-share-accent:#2563eb;--ezcat-share-border:#bfdbfe;--ezcat-share-pale:#eff6ff;}
body.ezcat-theme-marketplace {--ezcat-share-accent:#ee5a24;--ezcat-share-border:#f7c4aa;--ezcat-share-pale:#fff1e9;}
