/* v12.10.287 - mobile/tablet parity for logo, favorite and search-result feedback. */
:root{--m2-card-logo-size:24px;--m2-favorite-size:40px;--m2-action-gap:8px}

.m2-card{position:relative!important}
.m2-card .m2-role-merchant_logo{
  position:absolute!important;
  left:var(--op-logo-left,4px)!important;
  top:var(--op-logo-top,4px)!important;
  width:var(--m2-card-logo-size)!important;
  height:var(--m2-card-logo-size)!important;
  min-width:var(--m2-card-logo-size)!important;
  min-height:var(--m2-card-logo-size)!important;
  max-width:var(--m2-card-logo-size)!important;
  max-height:var(--m2-card-logo-size)!important;
  margin:0!important;
  padding:0!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  box-sizing:border-box!important;
  z-index:72!important;
}
.m2-card .m2-role-merchant_logo .op-merchant-logo{
  display:block!important;
  width:var(--m2-card-logo-size)!important;
  height:var(--m2-card-logo-size)!important;
  min-width:var(--m2-card-logo-size)!important;
  min-height:var(--m2-card-logo-size)!important;
  max-width:var(--m2-card-logo-size)!important;
  max-height:var(--m2-card-logo-size)!important;
  object-fit:contain!important;
}

html body .m2-main .m2-card button.m2-el.m2-role-favorite{
  position:absolute!important;
  left:auto!important;
  top:auto!important;
  right:var(--m2-action-gap)!important;
  bottom:var(--m2-action-gap)!important;
  width:var(--m2-favorite-size)!important;
  height:var(--m2-favorite-size)!important;
  min-width:var(--m2-favorite-size)!important;
  min-height:var(--m2-favorite-size)!important;
  max-width:var(--m2-favorite-size)!important;
  max-height:var(--m2-favorite-size)!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  outline:0!important;
  border-radius:0!important;
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  text-shadow:none!important;
  filter:none;
  transform:none!important;
  appearance:none!important;
  -webkit-appearance:none!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:visible!important;
  color:#17120d!important;
  font-family:Arial,"Helvetica Neue",sans-serif!important;
  font-size:28px!important;
  font-weight:400!important;
  line-height:1!important;
  cursor:pointer!important;
  pointer-events:auto!important;
  touch-action:manipulation!important;
  z-index:2147480000!important;
}
html body .m2-main .m2-card button.m2-el.m2-role-favorite[aria-pressed="true"],
html body .m2-main .m2-card button.m2-el.m2-role-favorite.is-favorite-active{color:#d50000!important}
html body .m2-main .m2-card button.m2-el.m2-role-favorite::before,
html body .m2-main .m2-card button.m2-el.m2-role-favorite::after{content:none!important;display:none!important}
html body .m2-main .m2-card button.m2-el.m2-role-favorite:focus-visible{outline:2px solid #1687ff!important;outline-offset:2px!important}

.m2-card.op-product-locate-animation{
  outline:4px solid #ffbf00!important;
  outline-offset:4px!important;
  animation:m2ProductLocatePulse 1.8s ease-out 1!important;
  z-index:2147481000!important;
}
@keyframes m2ProductLocatePulse{
  0%{outline-color:#fff3a0;filter:brightness(1.35) saturate(1.3);box-shadow:inset 0 0 0 8px rgba(255,191,0,.9),0 0 0 0 rgba(255,191,0,.95)}
  35%{outline-color:#ffb000;filter:brightness(1.12) saturate(1.2);box-shadow:inset 0 0 0 5px rgba(255,191,0,.55),0 0 0 16px rgba(255,191,0,.24)}
  72%{outline-color:#ffcf38;filter:brightness(1.05);box-shadow:inset 0 0 0 3px rgba(255,191,0,.3),0 0 0 7px rgba(255,191,0,.14)}
  100%{outline-color:transparent;filter:none;box-shadow:inset 0 0 0 0 rgba(255,191,0,0),0 0 0 0 rgba(255,191,0,0)}
}
@media (prefers-reduced-motion:reduce){
  .m2-card.op-product-locate-animation{animation:none!important;outline-color:#ffbf00!important}
}

/* v12.10.291 - heart on the image; store logo beside the offer action, 50% larger. */
:root{--m2-card-logo-size:40px;--m2-favorite-size:32px}
html body .m2-main .m2-card button.m2-el.m2-role-favorite{
  left:auto!important;right:8px!important;top:auto!important;bottom:8px!important;
}
html body .m2-main .m2-card .m2-role-merchant_logo{
  left:8px!important;right:auto!important;top:auto!important;bottom:8px!important;
  width:40px!important;height:40px!important;min-width:40px!important;min-height:40px!important;max-width:40px!important;max-height:40px!important;
}
html body .m2-main .m2-card .m2-role-merchant_logo .op-merchant-logo{
  width:100%!important;height:100%!important;min-width:0!important;min-height:0!important;max-width:100%!important;max-height:100%!important;object-fit:contain!important;
}
.m2-shopping-preview-button{width:100%;min-height:42px;margin-top:10px;border:1px solid #dbae37;border-radius:999px;background:#dbae37;color:#080604;font-weight:900}
.m2-shopping-preview-modal{position:fixed;inset:0;z-index:2147483600;display:none;place-items:center;padding:18px;background:rgba(0,0,0,.78);backdrop-filter:blur(8px)}
.m2-shopping-preview-modal.is-open{display:grid}
.m2-shopping-preview-card{width:min(420px,100%);padding:22px;border:1px solid rgba(219,174,55,.55);border-radius:22px;background:linear-gradient(145deg,#17130b,#050505);color:#fff7df;text-align:center;box-shadow:0 30px 100px rgba(0,0,0,.75)}
.m2-shopping-preview-card>span{width:52px;height:52px;margin:0 auto 12px;display:grid;place-items:center;border-radius:50%;background:#dbae37;color:#080604;font-size:27px}
.m2-shopping-preview-card h2{margin:0 0 8px;font-size:20px}.m2-shopping-preview-card p{margin:0;color:#cfc2a0;line-height:1.45}
.m2-shopping-preview-card>div{display:grid;grid-template-columns:1fr;gap:8px;margin-top:18px}.m2-shopping-preview-card button{min-height:42px;border:1px solid rgba(219,174,55,.5);border-radius:999px;background:transparent;color:#efd26f;font-weight:900}.m2-shopping-preview-card [data-m2-preview-yes]{background:#dbae37;color:#080604}
