.vg-pwa-banner,
.vg-pwa-popup,
.vg-pwa-inline {
  --vg-green:#0d4b39;
  --vg-light:#f3f7f5;
  --vg-border:#dfe8e4;
  font-family:inherit;
}
.vg-pwa-banner[hidden],.vg-pwa-popup-wrap[hidden]{display:none!important}

.vg-pwa-banner{
  position:fixed;
  left:12px; right:12px; bottom:14px;
  z-index:999980;
  display:flex; align-items:center; gap:12px;
  max-width:760px; margin:0 auto;
  padding:13px 48px 13px 15px;
  background:#fff;
  border:1px solid var(--vg-border);
  border-radius:16px;
  box-shadow:0 10px 35px rgba(0,0,0,.18);
}
.vg-pwa-banner-copy{flex:1;min-width:0}
.vg-pwa-banner-copy strong{display:block;color:#103d31;font-size:16px;margin-bottom:2px}
.vg-pwa-banner-copy span{display:block;font-size:13px;line-height:1.35;color:#62736e}
.vg-pwa-close,.vg-pwa-popup-close{
  position:absolute;right:10px;top:8px;
  width:30px;height:30px;border:0;background:transparent;
  font-size:25px;line-height:1;color:#5f6e69;cursor:pointer
}
.vg-pwa-button{
  display:inline-flex;align-items:center;justify-content:center;
  border-radius:10px;background:var(--vg-green);color:#fff!important;
  text-decoration:none!important;padding:10px 14px;font-weight:700;font-size:14px;
  white-space:nowrap
}

.vg-pwa-popup-wrap{
  position:fixed;inset:0;z-index:999990;
  display:flex;align-items:center;justify-content:center;
  padding:18px;background:rgba(0,0,0,.46)
}
.vg-pwa-popup{
  position:relative;width:min(430px,100%);
  background:#fff;border-radius:20px;padding:28px;
  box-shadow:0 24px 80px rgba(0,0,0,.28);
  text-align:center
}
.vg-pwa-mark,.vg-pwa-inline-mark{
  background:var(--vg-green);color:#fff;font-weight:800;
  display:flex;align-items:center;justify-content:center
}
.vg-pwa-mark{
  width:56px;height:56px;border-radius:15px;margin:0 auto 16px;font-size:21px
}
.vg-pwa-popup h3{font-size:25px;color:#103d31;margin:0 0 10px}
.vg-pwa-popup p{font-size:15px;line-height:1.55;color:#62736e;margin:0 auto 20px;max-width:340px}
.vg-pwa-popup-button{width:100%;padding:13px 18px;font-size:16px}
.vg-pwa-not-now{margin-top:13px;border:0;background:transparent;color:#65736e;cursor:pointer}
body.vg-pwa-popup-open{overflow:hidden}

.vg-pwa-inline{
  display:flex;align-items:center;gap:14px;
  margin:28px 0;padding:16px;
  border:1px solid var(--vg-border);border-radius:14px;background:var(--vg-light)
}
.vg-pwa-inline-mark{width:44px;height:44px;flex:0 0 44px;border-radius:12px}
.vg-pwa-inline-copy{flex:1}
.vg-pwa-inline-copy strong{display:block;color:#103d31;margin-bottom:2px}
.vg-pwa-inline-copy span{display:block;color:#61726d;font-size:14px;line-height:1.4}

@media (max-width:700px){
  .vg-pwa-banner{align-items:flex-start;flex-wrap:wrap;padding-right:42px}
  .vg-pwa-banner .vg-pwa-button{width:100%}
  .vg-pwa-inline{align-items:flex-start;flex-wrap:wrap}
  .vg-pwa-inline-copy{width:calc(100% - 60px)}
  .vg-pwa-inline .vg-pwa-button{width:100%}
}
@media (min-width:769px){
  .vg-pwa-banner{display:none!important}
}
