.zetpo-pwa-install[hidden], .zetpo-pwa-modal[hidden] { display: none !important; }
.zetpo-pwa-install {
	position: fixed;
	right: 22px;
	bottom: 22px;
	z-index: 99990;
	display: flex;
	align-items: center;
	padding: 7px 38px 7px 7px;
	border: 1px solid #e2e5e9;
	border-radius: 16px;
	background: #fff;
	box-shadow: 0 16px 42px rgba(22, 28, 38, .18);
}
.zetpo-pwa-install__main { display: flex; align-items: center; gap: 10px; padding: 0; border: 0; background: transparent; color: #20252d; text-align: left; cursor: pointer; }
.zetpo-pwa-install__main img { width: 46px; height: 46px; border-radius: 12px; }
.zetpo-pwa-install__main span { display: grid; }
.zetpo-pwa-install__main strong { color: #20252d; font-size: 13px; line-height: 1.25; }
.zetpo-pwa-install__main small { margin-top: 2px; color: #737c89; font-size: 10px; }
.zetpo-pwa-install__close { position: absolute; top: 4px; right: 7px; padding: 2px 6px; border: 0; background: transparent; color: #8a929e; font-size: 20px; line-height: 1; cursor: pointer; }
body:has(.zetpo-admin-launcher) .zetpo-pwa-install, body:has(.zetpo-chat) .zetpo-pwa-install { bottom: 88px; }
.zetpo-pwa-modal { position: fixed; inset: 0; z-index: 100000; display: grid; place-items: center; padding: 22px; background: rgba(18, 23, 32, .56); backdrop-filter: blur(4px); }
.zetpo-pwa-modal > div { position: relative; width: min(100%, 420px); padding: 34px; border-radius: 22px; background: #fff; box-shadow: 0 24px 80px rgba(0, 0, 0, .28); text-align: center; }
.zetpo-pwa-modal img { width: 76px; height: 76px; border-radius: 20px; }
.zetpo-pwa-modal h2 { margin: 18px 0 9px; color: #20252d; font-size: 23px; }
.zetpo-pwa-modal p { margin: 0 0 18px; color: #626c79; font-size: 14px; line-height: 1.55; }
.zetpo-pwa-modal__browser { padding: 11px 13px; border: 1px solid #ffd2d7; border-radius: 11px; background: #fff3f4; color: #343941 !important; text-align: left; }
.zetpo-pwa-modal__steps { display: grid; gap: 10px; margin: 0 0 22px; padding: 0; list-style: none; text-align: left; }
.zetpo-pwa-modal__steps li { display: grid; grid-template-columns: 38px minmax(0, 1fr); gap: 11px; align-items: center; padding: 10px; border: 1px solid #e6e8ec; border-radius: 12px; }
.zetpo-pwa-modal__step-icon { display: grid; width: 38px; height: 38px; place-items: center; border-radius: 10px; background: #fff0f2; color: #ed1b2f; font-size: 22px; font-weight: 900; }
.zetpo-pwa-modal__steps span:last-child { display: grid; gap: 2px; }
.zetpo-pwa-modal__steps strong { color: #252a32; font-size: 13px; }
.zetpo-pwa-modal__steps small { color: #747d89; font-size: 11px; line-height: 1.4; }
.zetpo-pwa-modal__close { position: absolute; top: 10px; right: 12px; padding: 4px 8px; border: 0; background: transparent; color: #87909b; font-size: 25px; cursor: pointer; }
.zetpo-pwa-modal__done { width: 100%; padding: 13px 18px; border: 0; border-radius: 11px; background: #ed1b2f; color: #fff; font-weight: 800; cursor: pointer; }
@media (max-width: 782px) {
	.zetpo-pwa-install { right: 12px; bottom: calc(12px + env(safe-area-inset-bottom)); left: 12px; }
	.zetpo-pwa-install__main { flex: 1; }
}
@media (max-width: 420px) {
	.zetpo-pwa-modal { align-items: end; padding: 10px; }
	.zetpo-pwa-modal > div { max-height: calc(100dvh - 20px); overflow: auto; padding: 24px 18px calc(18px + env(safe-area-inset-bottom)); border-radius: 20px; }
	.zetpo-pwa-modal img { width: 62px; height: 62px; border-radius: 17px; }
	.zetpo-pwa-modal h2 { margin-top: 12px; font-size: 21px; }
}
@media (display-mode: standalone) { .zetpo-pwa-install { display: none !important; } }
.zetpo-pwa-account-push { display: grid; grid-template-columns: 46px minmax(0, 1fr) auto; gap: 14px; align-items: center; margin: 0 0 22px; padding: 18px; border: 1px solid #e4e7eb; border-radius: 14px; background: #fff; box-shadow: 0 9px 24px rgba(20, 27, 38, .05); }
.zetpo-pwa-account-push__icon { display: grid; width: 44px; height: 44px; place-items: center; border-radius: 12px; background: #fff0f2; font-size: 22px; }
.zetpo-pwa-account-push h3 { margin: 0 0 3px; color: #222832; font-size: 16px; }
.zetpo-pwa-account-push p { margin: 0; color: #737c89; font-size: 12px; }
.zetpo-pwa-account-push button { padding: 10px 14px; border: 0; border-radius: 9px; background: #ed1b2f; color: #fff; font-weight: 800; cursor: pointer; }
.zetpo-pwa-account-push button:disabled { background: #d6d9de; cursor: not-allowed; }
.zetpo-pwa-account-push button.is-success { background: #168546; }
@media (max-width: 640px) {
	.zetpo-pwa-account-push { grid-template-columns: 42px minmax(0, 1fr); }
	.zetpo-pwa-account-push button { grid-column: 1 / -1; width: 100%; }
}
