/* v40: shared touch feedback. Independent scale preserves existing transforms. */
:where(button,a[href],summary,[role="button"],[role="tab"],.lista-row,.wheel-item,.weight-pick){
  -webkit-tap-highlight-color:transparent;
  touch-action:manipulation;
}
.ios-pressable{
  --press-scale:.95;
  transition:scale 100ms cubic-bezier(.2,.8,.2,1),filter 100ms ease!important;
  transform-origin:center;
}
.ios-pressable:is(.meal-tap,.lista-row,summary){--press-scale:.985}
.ios-pressable:is(.seg,.tab,.tt){--press-scale:.94}
.ios-pressable.ios-pressed{
  scale:var(--press-scale);
  filter:brightness(.90)!important;
  animation:none!important;
}
.ios-pressable.ios-releasing{
  animation:ios-press-release 320ms cubic-bezier(.2,.8,.2,1) both!important;
}
@keyframes ios-press-release{
  0%{scale:var(--press-scale);filter:brightness(.90)}
  55%{scale:1.018;filter:brightness(1)}
  100%{scale:1;filter:brightness(1)}
}
@media(prefers-color-scheme:dark){
  .ios-pressable.ios-pressed{filter:brightness(1.16)!important}
  @keyframes ios-press-release{0%{scale:var(--press-scale);filter:brightness(1.16)}55%{scale:1.018;filter:brightness(1)}100%{scale:1;filter:brightness(1)}}
}
@media(prefers-reduced-motion:reduce){
  .ios-pressable{transition:filter 80ms linear!important}
  .ios-pressable.ios-pressed{scale:1!important}
  .ios-pressable.ios-releasing{animation:none!important;scale:1!important}
}
