.boyPwaToast{position:fixed;left:50%;bottom:max(18px,calc(env(safe-area-inset-bottom) + 12px));transform:translateX(-50%);z-index:2147482001;width:min(92vw,360px);background:#171022f4;color:#fff;border:1px solid #604384;border-radius:14px;padding:11px 13px;font:700 12px/1.45 Arial,sans-serif;box-shadow:0 14px 42px #000a;text-align:center;backdrop-filter:blur(10px)}
.boyPwaToast button{margin-top:8px;border:0;border-radius:9px;background:#7c4ce6;color:#fff;padding:8px 11px;font-weight:900}
.boyPwaUpdate{position:fixed;z-index:2147482000;right:12px;bottom:max(14px,calc(env(safe-area-inset-bottom) + 10px));width:min(360px,calc(100vw - 24px));background:linear-gradient(145deg,#171022f4,#0e0815f4);backdrop-filter:blur(12px);border:1px solid #7651a1;border-radius:14px;padding:10px 11px;color:#fff;box-shadow:0 14px 46px #000a;display:grid;grid-template-columns:1fr auto;gap:8px;align-items:center}
.boyPwaUpdate b{font:900 12px/1.25 Arial,sans-serif}.boyPwaUpdate small{display:block;color:#b8a9c5;margin-top:2px;line-height:1.3;font-size:10px}.boyPwaUpdate>div:last-child{display:flex;gap:5px}.boyPwaUpdate button{border:1px solid #5a3c78;background:#21152f;color:#fff;border-radius:8px;padding:7px 9px;font-size:10px;font-weight:800;white-space:nowrap}.boyPwaUpdate button[data-update]{background:#8b5cf6;border-color:#8b5cf6}
.boyPwaInstallBackdrop{position:fixed;inset:0;z-index:2147482002;background:#0006;display:flex;align-items:flex-end;justify-content:center;padding:8px;backdrop-filter:blur(2px)}
.boyPwaInstallSheet{width:min(480px,100%);background:linear-gradient(180deg,#171022,#0f0917);border:1px solid #6e4b91;border-radius:18px 18px 14px 14px;color:#fff;box-shadow:0 -18px 60px #000b;padding:10px 12px calc(12px + env(safe-area-inset-bottom));font-family:Arial,sans-serif}
.boyPwaInstallHandle{width:42px;height:4px;border-radius:999px;background:#ffffff40;margin:0 auto 9px}.boyPwaInstallSheet h3{margin:0;font-size:16px}.boyPwaInstallSheet p{margin:6px 0 0;color:#c9bdd4;font-size:12px;line-height:1.45}.boyPwaInstallSteps{margin:9px 0 0;padding:9px 10px;background:#0d0814;border:1px solid #342341;border-radius:11px;font-size:12px;line-height:1.5;color:#eee}.boyPwaInstallActions{display:flex;gap:8px;margin-top:10px}.boyPwaInstallActions button,.boyPwaInstallActions a{flex:1;display:grid;place-items:center;text-decoration:none;border-radius:10px;padding:9px 11px;font-size:12px;font-weight:900;cursor:pointer}.boyPwaInstallClose{border:1px solid #4b365f;background:#1b1126;color:#fff}.boyPwaInstallCheck{border:1px solid #8b5cf6;background:#8b5cf6;color:#fff}
.pwaMenuInstall{display:none!important}
@media(max-width:780px){nav.open .pwaMenuInstall:not([hidden]){display:block!important;width:100%;border:1px solid color-mix(in srgb,var(--theme-light) 35%,transparent);background:color-mix(in srgb,var(--theme-main) 16%,#0b0711);color:#fff;padding:12px 14px;border-radius:12px;font:800 13px/1.2 Inter,Arial,sans-serif;text-align:left}}
@media(max-width:620px){.boyPwaUpdate{left:12px;right:12px;width:auto;grid-template-columns:1fr auto}.boyPwaUpdate small{max-width:190px}}
@media(max-width:720px){body.boy-pwa-admin .boyPwaUpdate{bottom:calc(104px + env(safe-area-inset-bottom))}.boyPwaToast{bottom:calc(104px + env(safe-area-inset-bottom))}}
@media print{.boyPwaToast,.boyPwaUpdate,.boyPwaInstallBackdrop,.pwaMenuInstall{display:none!important}}
