.ca-pwa-pill{
  position:fixed; right:18px; bottom:18px; z-index:99990;
  display:inline-flex; align-items:center; gap:9px;
  background:#0C3B42; color:#fff; border:1px solid #B0842F;
  padding:10px 16px 10px 12px; border-radius:40px; cursor:pointer;
  font:600 14px/1 "IBM Plex Sans",system-ui,-apple-system,sans-serif;
  box-shadow:0 6px 22px rgba(12,59,66,.28);
  opacity:0; transform:translateY(12px); transition:opacity .22s, transform .22s, background .15s;
}
.ca-pwa-pill.is-in{opacity:1; transform:none}
.ca-pwa-pill:hover{background:#0e454d}
.ca-pwa-pill:focus-visible{outline:2px solid #d8b064; outline-offset:2px}
.ca-pwa-pill img{display:block; border-radius:6px}

.ca-pwa-back{
  position:fixed; inset:0; background:rgba(12,59,66,.5); z-index:99991;
  opacity:0; transition:opacity .22s;
}
.ca-pwa-back.is-in{opacity:1}
.ca-pwa-sheet{
  position:fixed; left:50%; bottom:0; transform:translate(-50%,100%);
  z-index:99992; width:min(420px,94vw); box-sizing:border-box;
  background:#fff; color:#14232B; border-radius:16px 16px 0 0;
  padding:22px 22px calc(22px + env(safe-area-inset-bottom));
  text-align:center; box-shadow:0 -8px 40px rgba(12,59,66,.25);
  transition:transform .26s cubic-bezier(.2,.8,.2,1);
  font-family:"IBM Plex Sans",system-ui,-apple-system,sans-serif;
}
.ca-pwa-sheet.is-in{transform:translate(-50%,0)}
.ca-pwa-sheet-icon{border-radius:12px; margin-bottom:6px}
.ca-pwa-sheet h2{font-family:"Archivo","IBM Plex Sans",sans-serif; font-size:18px; margin:6px 0 8px}
.ca-pwa-sheet p{color:#5D6B6E; font-size:14px; line-height:1.55; margin:0 0 16px}
.ca-pwa-share{display:inline-flex; vertical-align:-5px; color:#0C3B42}
.ca-pwa-share svg{width:18px; height:18px}
.ca-pwa-sheet-close{
  width:100%; background:#0C3B42; color:#fff; border:0; border-radius:10px;
  padding:12px; font:600 14px "IBM Plex Sans",sans-serif; cursor:pointer;
}
.ca-pwa-sheet-close:hover{background:#0e454d}
@media (prefers-reduced-motion:reduce){
  .ca-pwa-pill,.ca-pwa-back,.ca-pwa-sheet{transition:none}
}

/* Install-sheet self-check readout */
.ca-pwa-checks{margin-top:14px;text-align:left;display:flex;flex-direction:column;gap:8px}
.ca-pwa-chk{display:flex;align-items:flex-start;gap:9px;font-size:13.5px;line-height:1.4;color:#22333a}
.ca-pwa-chk i{flex:0 0 auto;width:18px;height:18px;border-radius:50%;display:grid;place-items:center;font-style:normal;font-size:11px;font-weight:700;color:#fff;margin-top:1px}
.ca-pwa-chk.ok i{background:#1C7A4E}
.ca-pwa-chk.bad i{background:#B23A2E}
.ca-pwa-chk em{font-style:normal;color:#5D6B6E;font-size:12.5px}
.ca-pwa-chk.bad em{color:#B23A2E}
