/* Featured / sort control — final responsive typography and fit. */
#sortControl,
#sortControl .custom-sort{min-width:0!important;max-width:100%!important;overflow:visible!important}
#sortButton{
  box-sizing:border-box!important;
  min-width:0!important;
  max-width:100%!important;
  width:100%!important;
  padding:0 clamp(8px,1.8vw,14px)!important;
  gap:clamp(6px,1vw,9px)!important;
  font-size:clamp(10px,1.15vw,12px)!important;
  line-height:1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}
#sortButton svg{flex:0 0 auto!important;width:15px!important;height:15px!important}
#sortMenu{
  width:min(236px,calc(100vw - 20px))!important;
  min-width:0!important;
  max-width:calc(100vw - 20px)!important;
}
#sortMenu button{
  box-sizing:border-box!important;
  min-width:0!important;
  width:100%!important;
  padding-inline:clamp(9px,2vw,12px)!important;
  font-size:clamp(10px,1.2vw,12px)!important;
  line-height:1.25!important;
  white-space:normal!important;
  overflow-wrap:anywhere!important;
  min-height:40px!important;
  height:auto!important;
}
@media (max-width:700px){
  #sortButton{font-size:clamp(10px,2.6vw,11.5px)!important;min-height:42px!important}
  #sortMenu button{font-size:clamp(10px,2.5vw,11.5px)!important}
}
@media (max-width:480px){
  #sortMenu{
    left:50%!important;
    right:auto!important;
    width:min(238px,calc(100vw - 18px))!important;
    max-width:calc(100vw - 18px)!important;
    transform:translate(-50%,-6px) scale(.985)!important;
    transform-origin:top center!important;
  }
  #sortMenu.open{transform:translate(-50%,0) scale(1)!important}
  #sortMenu button{min-height:42px!important;padding-block:9px!important}
}
@media (max-width:360px){
  #sortButton{padding-inline:7px!important;gap:5px!important;font-size:10px!important}
  #sortMenu{width:calc(100vw - 14px)!important;max-width:calc(100vw - 14px)!important}
}
