/* iOS / Safari / touch: acabamento */
html{-webkit-text-size-adjust:100%;text-size-adjust:100%;-webkit-tap-highlight-color:transparent}
body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior-y:none}
a,button,summary,label,[role=button],.btn{-webkit-tap-highlight-color:transparent;touch-action:manipulation;-webkit-touch-callout:none}
button,input,select,textarea{-webkit-appearance:none;appearance:none}
input[type=checkbox],input[type=radio],input[type=range]{-webkit-appearance:auto;appearance:auto}
button{font-family:inherit}
img{-webkit-user-drag:none;-webkit-touch-callout:none}
@media(pointer:coarse){
  input,select,textarea,.gf-input,.dp-trigger{font-size:16px!important}
  .btn,button.gf-btn{min-height:44px}
}
/* hovers só em dispositivos com rato (iOS deixa o hover "preso" depois do toque) */
@media(hover:none){
  #view .client:hover,#view .media-card:hover,.btn:hover{transform:none!important}
  #view .client:hover .cover img{transform:none!important}
}
/* ecrã inteiro com barra dinâmica */
@supports(height:100dvh){
  body.wg,.wg-gate{min-height:100dvh}
  .ce-frame{height:calc(100dvh - 118px)}
}
/* zona segura (notch, barra inferior) */
body{padding-left:env(safe-area-inset-left);padding-right:env(safe-area-inset-right)}
dialog{max-height:calc(100dvh - 24px)}
@media(max-width:820px){
  dialog[open]{margin-bottom:max(12px,env(safe-area-inset-bottom))}
  .sidebar{padding-top:max(14px,env(safe-area-inset-top))!important}
  .nav,.wg-nav{padding-top:env(safe-area-inset-top)}
  .wg-dock{padding-bottom:calc(14px + env(safe-area-inset-bottom))!important}
  .foot,.shell.foot{padding-bottom:calc(24px + env(safe-area-inset-bottom))!important}
}
/* scroll suave nas listas horizontais e rodas */
.sidebar nav,.dp-wheel,.wg-toolbar{-webkit-overflow-scrolling:touch}
