/* Origem: pi-services shared/web/jeito-de-app.css @ c4d5e9c7 (copia congelada). */
/*!
 * jeito-de-app.css — OPCIONAL. O app liga com `class="pi-app"` no <html>.
 *
 * Sem a classe este arquivo nao muda nada: nenhum layout e alterado por
 * surpresa. Com ela, o app aberto pela Tela de Inicio passa a se comportar
 * como app e nao como site:
 *
 *  - puxar a tela para baixo nao recarrega a pagina por acidente
 *    (`overscroll-behavior-y: contain`);
 *  - botoes e abas nao piscam cinza ao toque e nao selecionam texto;
 *  - as variaveis de area segura (entalhe, barra inferior do iPhone) ficam
 *    prontas para o CSS do app usar, sem cada um repetir `env(...)`.
 *
 * O que NUNCA entra aqui: `user-select:none` em texto ou campo (a pessoa
 * precisa copiar e digitar) e trava do zoom da pagina (a pinca continua).
 * Para o zoom ao focar campo, a regra mora em campos.css.
 *
 * Para as variaveis valerem, o viewport do app precisa de `viewport-fit=cover`.
 */
:root.pi-app {
  --pi-area-segura-topo: env(safe-area-inset-top, 0px);
  --pi-area-segura-direita: env(safe-area-inset-right, 0px);
  --pi-area-segura-baixo: env(safe-area-inset-bottom, 0px);
  --pi-area-segura-esquerda: env(safe-area-inset-left, 0px);
}

/* Antes, puxar para baixo no topo da pagina recarregava o app sem querer
   (o gesto de atualizar do navegador), perdendo o que a pessoa digitava. */
html.pi-app,
html.pi-app body {
  overscroll-behavior-y: contain;
}

/* So controles: texto e campos continuam selecionaveis. */
html.pi-app button,
html.pi-app [role="button"],
html.pi-app [role="tab"],
html.pi-app summary {
  -webkit-tap-highlight-color: transparent;
  -webkit-user-select: none;
  user-select: none;
}

/* Dentro de campo o botao de limpar/lista nao herda o bloqueio. */
html.pi-app input,
html.pi-app textarea,
html.pi-app select {
  -webkit-user-select: text;
  user-select: text;
}
