/* ═══════════════════════════════════════════════════════════════════════
   O ENDURECIMENTO PRO WEBKIT (iPhone e iPad)  ·  17/09/2026
   ═══════════════════════════════════════════════════════════════════════
   O Boss testou no iPhone 16, com o app na tela de início, e viu telas
   PISCANDO. No Android não pisca. O que é diferente no iPhone é o motor:
   todo navegador de lá é WebKit, e o WebKit tem duas manias conhecidas
   que este app cutuca o tempo inteiro:

   1. CAMADA FIXA COM DESFOQUE (`position: fixed` + `backdrop-filter`) por
      cima de conteúdo que rola: a cada rolagem o WebKit refaz o desfoque
      inteiro, e quando a tela de trás troca (uma tela some, outra aparece)
      a camada pisca por um quadro. A barra de abas, a folha do MAIS, o
      véu dos avisos e o breadcrumb do legado são todas assim.

   2. A CAMADA DE FUNDO FIXA com máscara e degradê (`#app-fundo`): sem
      camada própria de composição, o WebKit repinta ela junto com a tela
      que rola por cima, e o repintar aparece como tremor. É a mesma razão
      pela qual `background-attachment: fixed` treme no iPhone (já estava
      anotado no fundo.css).

   O REMÉDIO É O MESMO PROS DOIS, e é o documentado pro WebKit: dar a cada
   uma dessas camadas uma CAMADA DE COMPOSIÇÃO PRÓPRIA (`translateZ(0)`
   ou `will-change`), pra ela ser composta na GPU em vez de repintada. E o
   `-webkit-backdrop-filter`, que o Safari só deixou de exigir na versão 18:
   quem está num iPhone mais velho não tinha desfoque nenhum.

   ⚠️ `translateZ(0)` NÃO ENTRA em camada que tem filho `position: fixed`
   dentro (a `#av-tela` e o `#mn-mais` têm a barra de cima fixa): um
   ancestral com `transform` vira o "viewport" dos filhos fixos e a barra
   deles sairia do lugar. Nessas, só o `will-change: transform`, que
   promove sem mudar a geometria. Medido no Chrome antes de subir: nenhuma
   medida das réguas mudou (menu, ÁREA VIP, prateleiras, convite).
   ═══════════════════════════════════════════════════════════════════════ */

/* o fundo do app: camada própria, composta uma vez */
#app-fundo { transform: translateZ(0); will-change: transform; }
#app-fundo::before, #app-fundo::after { transform: translateZ(0); }

/* as camadas fixas com desfoque do app novo */
#menu-barra { -webkit-backdrop-filter: blur(16px); transform: translateZ(0); }
#mn-mais    { -webkit-backdrop-filter: blur(14px); will-change: transform; }
#mn-breve   { -webkit-backdrop-filter: blur(10px); transform: translateZ(0); }
#av-festa   { -webkit-backdrop-filter: blur(6px);  transform: translateZ(0); }
#av-tela    { will-change: transform; }
#instalar   { transform: translateZ(0); }

/* as do legado que ficam fixas por cima de tudo */
#breadcrumb-bar   { -webkit-backdrop-filter: blur(12px); will-change: transform; }
#modal-overlay    { -webkit-backdrop-filter: blur(6px);  transform: translateZ(0); }
.gen-modal-overlay{ -webkit-backdrop-filter: blur(6px);  transform: translateZ(0); }
.tier-header      { -webkit-backdrop-filter: blur(12px); }

/* A rolagem com inércia do iPhone é padrão desde o iOS 13; a propriedade
   antiga é ignorada e fica aqui só pra quem ainda está num iOS velho. */
.av-tela-fundo, #mn-mais { -webkit-overflow-scrolling: touch; }
