/* Vision Guard PWA UI: install banner, update toast, mobile bottom nav */
#vg-install{position:fixed;left:50%;transform:translateX(-50%);bottom:calc(14px + env(safe-area-inset-bottom));z-index:9998;
  display:none;align-items:center;gap:4px;max-width:min(300px,calc(100vw - 96px));padding:2px 4px 2px 10px;border-radius:999px;
  background:rgba(31,49,84,.62);color:#fff;font-size:.78rem;line-height:1.3;border:1px solid rgba(255,255,255,.14);
  -webkit-backdrop-filter:blur(8px);backdrop-filter:blur(8px);box-shadow:0 2px 10px rgba(0,0,0,.18)}
#vg-install.show{display:flex}
#vg-install .t{flex:1;padding:0 6px}
#vg-install button{min-height:44px;min-width:44px;border:0;background:transparent;font:inherit;cursor:pointer;color:inherit}
#vg-install .go{color:#05b3e9;font-weight:700;padding:0 8px}
#vg-install .x{color:rgba(255,255,255,.7);font-size:1.1rem}
#vg-install button:focus-visible{outline:2px solid #05b3e9;outline-offset:-2px;border-radius:999px}
html.vg-standalone #vg-install{display:none}
#vg-update{position:fixed;inset-inline:12px;top:calc(12px + env(safe-area-inset-top));z-index:9999;display:none;
  padding:12px 14px;border-radius:14px;background:#0667a5;color:#fff;align-items:center;gap:10px}
#vg-update.show{display:flex}
#vg-update button{min-height:44px;padding:0 14px;border:0;border-radius:10px;background:#fff;color:#0667a5;font:inherit;font-weight:700}

/* Bottom navigation: only in the installed app on phones */
#vg-nav{display:none}
@media (max-width:820px){
  html.vg-standalone body{padding-bottom:calc(64px + env(safe-area-inset-bottom))}
  html.vg-standalone #vg-nav{display:grid;grid-template-columns:repeat(5,1fr);position:fixed;inset-inline:0;bottom:0;z-index:9990;
    background:#1f3154;border-top:1px solid #3b5380;padding-bottom:env(safe-area-inset-bottom)}
  #vg-nav a{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:2px;min-height:56px;
    color:#cfd8e8;text-decoration:none;font-size:.72rem}
  #vg-nav a[aria-current="page"]{color:#05b3e9}
  #vg-nav svg{width:22px;height:22px;stroke:currentColor;fill:none;stroke-width:1.8;stroke-linecap:round;stroke-linejoin:round}
  #vg-nav a:focus-visible{outline:2px solid #05b3e9;outline-offset:-4px}
}
@keyframes vg-up{from{transform:translateY(16px);opacity:0}to{transform:none;opacity:1}}
