/* Avisos push: ventana y tarjeta de invitación */
.pz-back{position:fixed;inset:0;z-index:10000;background:rgba(10,12,18,.55);display:flex;align-items:center;justify-content:center;padding:16px;animation:pzf .18s ease-out}
.pz-box{position:relative;width:min(100%,440px);max-height:92vh;overflow:auto;background:#fff;color:var(--text,#1b1b1f);border-radius:20px;padding:28px 24px 22px;text-align:center;box-shadow:0 20px 60px rgba(0,0,0,.35);animation:pzu .22s ease-out}
.pz-x{position:absolute;top:8px;right:10px;width:38px;height:38px;border:0;border-radius:50%;background:none;font-size:1.7rem;line-height:1;cursor:pointer;color:var(--muted,#5f6368)}
.pz-x:hover{background:var(--soft,#f6f7f9)}
.pz-ic{width:64px;height:64px;margin:0 auto 10px;border-radius:50%;background:var(--primary,#0b5fa5);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.9rem;box-shadow:0 6px 18px rgba(0,0,0,.2)}
.pz-box h2{margin:0 0 6px;font-size:1.3rem;line-height:1.25}
.pz-p{margin:0 0 16px;color:var(--muted,#5f6368);font-size:.98rem}
.pz-opts{display:grid;gap:10px;text-align:left;margin:0 0 18px}
.pz-opt{display:flex;gap:12px;align-items:flex-start;padding:12px 14px;border:2px solid var(--border,#e3e5e8);border-radius:14px;cursor:pointer}
.pz-opt:has(input:checked){border-color:var(--primary,#0b5fa5);background:var(--soft,#f6f7f9)}
.pz-opt input{margin-top:4px;accent-color:var(--primary,#0b5fa5)}
.pz-opt span{display:flex;flex-direction:column;gap:2px}
.pz-opt small{color:var(--muted,#5f6368)}
.pz-row{display:flex;flex-direction:column;align-items:center;gap:8px}
.pz-btn{display:inline-block;font:inherit;font-weight:700;cursor:pointer;border:0;border-radius:999px;padding:12px 30px;background:var(--primary,#0b5fa5);color:#fff;text-decoration:none}
.pz-btn:disabled{opacity:.6;cursor:wait}
.pz-link{font:inherit;background:none;border:0;color:var(--muted,#5f6368);text-decoration:underline;cursor:pointer;padding:8px}
.pz-priv{display:block;margin-top:10px;font-size:.85rem;color:var(--muted,#5f6368)}
.pz-msg{margin:14px 0 0;padding:10px 12px;border-radius:10px;font-size:.95rem}
.pz-msg.ok{background:#e7f6ec;color:#14532d}
.pz-msg.err{background:#fdeaea;color:#7f1d1d}
.pz-btn:focus-visible,.pz-link:focus-visible,.pz-x:focus-visible{outline:3px solid #1b1b1f;outline-offset:2px}
.pz-card{position:fixed;z-index:9998;left:12px;right:12px;bottom:12px;max-width:480px;margin:0 auto;background:#fff;color:var(--text,#1b1b1f);border:1px solid var(--border,#d5d8dd);border-radius:18px;padding:14px 16px;display:flex;flex-wrap:wrap;gap:12px;align-items:center;box-shadow:0 10px 34px rgba(0,0,0,.28);animation:pzu .25s ease-out}
.pz-ci{width:44px;height:44px;border-radius:50%;background:var(--primary,#0b5fa5);color:#fff;display:flex;align-items:center;justify-content:center;font-size:1.3rem;flex:none}
.pz-ct{display:flex;flex-direction:column;flex:1;min-width:180px;gap:2px}
.pz-ct span{color:var(--muted,#5f6368);font-size:.92rem}
.pz-ca{display:flex;gap:6px;align-items:center;margin-left:auto}
.pz-card .pz-btn{padding:10px 20px}
@keyframes pzf{from{opacity:0}to{opacity:1}}
@keyframes pzu{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:none}}
@media (prefers-reduced-motion:reduce){.pz-back,.pz-box,.pz-card{animation:none}}
@media (prefers-color-scheme:dark){.pz-box,.pz-card{background:#1d1f24;color:#f1f2f4;border-color:#3a3d45}.pz-p,.pz-ct span,.pz-opt small,.pz-link,.pz-priv,.pz-x{color:#b9bdc6}.pz-opt{border-color:#3a3d45}.pz-opt:has(input:checked){background:#262a31}}
