/* v11.9.0 - themed favorites drawer, aligned with black / gold / magazine UI */
#opFavoritesPanel.op-favorites-panel{
  right:18px!important;
  top:78px!important;
  width:min(390px,calc(100vw - 28px))!important;
  max-height:calc(100vh - 104px)!important;
  border-radius:22px!important;
  border:1px solid rgba(219,174,55,.52)!important;
  background:
    radial-gradient(circle at 16% 0%, rgba(219,174,55,.16), transparent 34%),
    linear-gradient(145deg, rgba(14,13,10,.98), rgba(4,4,4,.98) 62%, rgba(28,18,5,.98))!important;
  color:#f8f0d8!important;
  box-shadow:0 26px 90px rgba(0,0,0,.62), inset 0 1px 0 rgba(255,255,255,.08)!important;
  overflow:hidden!important;
  backdrop-filter:blur(18px) saturate(130%)!important;
}
#opFavoritesPanel .op-favorites-head{
  min-height:52px!important;
  padding:14px 16px!important;
  border-bottom:1px solid rgba(219,174,55,.24)!important;
  background:linear-gradient(90deg, rgba(0,0,0,.92), rgba(38,27,9,.86))!important;
}
#opFavoritesPanel .op-favorites-head strong{
  color:#dbae37!important;
  font-size:15px!important;
  letter-spacing:.12em!important;
  line-height:1!important;
}
#opFavoritesPanel .op-favorites-head strong:before{
  content:'♡';
  margin-right:8px;
  color:#dbae37;
  font-size:17px;
}
#opFavoritesPanel .op-favorites-head button{
  width:30px!important;
  height:30px!important;
  border:1px solid rgba(219,174,55,.32)!important;
  background:rgba(255,255,255,.08)!important;
  color:#fff2c2!important;
  box-shadow:none!important;
  display:grid!important;
  place-items:center!important;
  padding:0!important;
  transition:background .18s ease, color .18s ease, transform .18s ease!important;
}
#opFavoritesPanel .op-favorites-head button:hover{background:#dbae37!important;color:#050505!important;transform:rotate(90deg)!important;}
#opFavoritesPanel .op-favorites-body{
  padding:12px!important;
  max-height:calc(100vh - 166px)!important;
  background:linear-gradient(180deg, rgba(255,255,255,.025), rgba(0,0,0,.08))!important;
}
#opFavoritesPanel .op-favorites-empty{
  margin:0!important;
  padding:18px 16px!important;
  border:1px dashed rgba(219,174,55,.4)!important;
  border-radius:16px!important;
  background:rgba(219,174,55,.06)!important;
  color:#d8ceb7!important;
  font-size:13px!important;
  line-height:1.45!important;
}
#opFavoritesPanel .op-favorites-row,
#opFavoritesPanel .op-favorites-row-v1170{
  position:relative!important;
  display:grid!important;
  grid-template-columns:minmax(0,1fr) auto!important;
  gap:10px!important;
  align-items:center!important;
  width:100%!important;
  margin:0 0 10px!important;
  padding:10px!important;
  border:1px solid rgba(219,174,55,.22)!important;
  border-left:3px solid #dbae37!important;
  border-radius:16px!important;
  background:linear-gradient(135deg, rgba(255,255,255,.075), rgba(219,174,55,.045) 48%, rgba(0,0,0,.22))!important;
  color:#fff!important;
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 8px 24px rgba(0,0,0,.22)!important;
  overflow:hidden!important;
}
#opFavoritesPanel .op-favorites-row:before,
#opFavoritesPanel .op-favorites-row-v1170:before{
  content:'';
  position:absolute;
  inset:0;
  pointer-events:none;
  background:linear-gradient(90deg, rgba(219,174,55,.08), transparent 34%);
}
#opFavoritesPanel .op-favorites-row:hover,
#opFavoritesPanel .op-favorites-row-v1170:hover{
  border-color:rgba(219,174,55,.48)!important;
  background:linear-gradient(135deg, rgba(219,174,55,.14), rgba(255,255,255,.06) 58%, rgba(0,0,0,.18))!important;
}
#opFavoritesPanel .op-favorites-go{
  position:relative!important;
  z-index:1!important;
  min-width:0!important;
  width:100%!important;
  display:grid!important;
  grid-template-columns:30px minmax(0,1fr)!important;
  gap:10px!important;
  align-items:center!important;
  padding:0!important;
  margin:0!important;
  border:0!important;
  border-radius:12px!important;
  background:transparent!important;
  color:#fff!important;
  box-shadow:none!important;
  text-align:left!important;
  cursor:pointer!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}
#opFavoritesPanel .op-favorites-go:hover{background:transparent!important;color:#fff!important;}
#opFavoritesPanel .op-fav-heart{
  width:30px!important;
  height:30px!important;
  border-radius:9px!important;
  display:grid!important;
  place-items:center!important;
  background:linear-gradient(135deg,#f1cf62,#b88413)!important;
  color:#090806!important;
  font-size:15px!important;
  font-weight:900!important;
  box-shadow:0 4px 14px rgba(219,174,55,.24)!important;
}
#opFavoritesPanel .op-fav-copy{min-width:0!important;display:block!important;}
#opFavoritesPanel .op-fav-copy b{
  display:block!important;
  color:#fff7df!important;
  font-size:13px!important;
  font-weight:900!important;
  letter-spacing:.01em!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  text-shadow:0 1px 0 rgba(0,0,0,.5)!important;
}
#opFavoritesPanel .op-fav-copy small{
  display:block!important;
  margin-top:3px!important;
  color:#c9b983!important;
  font-size:11px!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#opFavoritesPanel .op-favorites-remove{
  position:relative!important;
  z-index:2!important;
  height:30px!important;
  min-width:62px!important;
  padding:0 10px!important;
  border-radius:999px!important;
  border:1px solid rgba(219,174,55,.46)!important;
  background:rgba(0,0,0,.58)!important;
  color:#dbae37!important;
  font-size:11px!important;
  font-weight:900!important;
  letter-spacing:.02em!important;
  box-shadow:none!important;
  cursor:pointer!important;
  appearance:none!important;
  -webkit-appearance:none!important;
}
#opFavoritesPanel .op-favorites-remove:hover{background:#dbae37!important;color:#050505!important;border-color:#dbae37!important;}
button[data-open-favorites].has-favorites:after{
  background:#dbae37!important;
  color:#060606!important;
  border-color:#050505!important;
}
@media(max-width:760px){
  #opFavoritesPanel.op-favorites-panel{
    left:10px!important;
    right:10px!important;
    top:auto!important;
    bottom:10px!important;
    width:auto!important;
    max-height:68vh!important;
    border-radius:22px 22px 16px 16px!important;
  }
  #opFavoritesPanel .op-favorites-body{max-height:calc(68vh - 60px)!important;}
  #opFavoritesPanel .op-favorites-row-v1170{grid-template-columns:minmax(0,1fr) auto!important;}
  #opFavoritesPanel .op-favorites-remove{min-width:58px!important;font-size:10px!important;}
}


/* v12.10.109 - product thumbnail in desktop favorites dropdown */
#opFavoritesPanel .op-fav-thumb{
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  border-radius:12px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  overflow:hidden!important;
  background:rgba(255,255,255,.88)!important;
  border:1px solid rgba(219,174,55,.34)!important;
  box-shadow:0 8px 20px rgba(0,0,0,.22)!important;
}
#opFavoritesPanel .op-fav-thumb img{width:100%!important;height:100%!important;object-fit:contain!important;display:block!important;}
#opFavoritesPanel .op-fav-thumb-empty{background:#dbae37!important;color:#080704!important;font-weight:950!important;}
#opFavoritesPanel .op-fav-heart{display:none!important;}

/* v12.10.111 - fix desktop favorites thumbnail/text overlap. */
#opFavoritesPanel .op-favorites-go{
  grid-template-columns:44px minmax(0,1fr)!important;
  column-gap:12px!important;
  align-items:center!important;
}
#opFavoritesPanel .op-fav-thumb{
  grid-column:1!important;
  grid-row:1!important;
  width:44px!important;
  height:44px!important;
  min-width:44px!important;
  max-width:44px!important;
  flex:0 0 44px!important;
}
#opFavoritesPanel .op-fav-copy{
  grid-column:2!important;
  grid-row:1!important;
  min-width:0!important;
  max-width:100%!important;
  padding-left:0!important;
}
#opFavoritesPanel .op-favorites-row-v1170{
  grid-template-columns:minmax(0,1fr) auto!important;
}
