
.biogeo-pwa-backdrop{
	position:fixed;
	inset:0;
	z-index:999997;
	background:rgba(20,16,28,.58);
	backdrop-filter:blur(5px);
	-webkit-backdrop-filter:blur(5px);
	animation:biogeoPwaFade .2s ease;
}

.biogeo-pwa-modal{
	position:fixed;
	left:50%;
	top:50%;
	z-index:999998;
	width:min(92vw,480px);
	transform:translate(-50%,-50%);
	background:var(--biogeo-pwa-bg);
	color:var(--biogeo-pwa-text);
	border-radius:24px;
	box-shadow:0 28px 80px rgba(19,12,29,.28);
	overflow:hidden;
	font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
	animation:biogeoPwaPop .28s cubic-bezier(.2,.8,.2,1);
}

.biogeo-pwa-modal::before{
	content:"";
	position:absolute;
	inset:0 0 auto 0;
	height:8px;
	background:linear-gradient(90deg,var(--biogeo-pwa-primary),var(--biogeo-pwa-secondary));
}

.biogeo-pwa-close{
	position:absolute;
	top:18px;
	right:18px;
	width:36px;
	height:36px;
	border:0;
	border-radius:50%;
	background:#f3f4f6;
	color:#4b5563;
	font-size:25px;
	line-height:1;
	cursor:pointer;
}

.biogeo-pwa-brand{
	display:flex;
	justify-content:center;
	padding:34px 28px 14px;
}

.biogeo-pwa-brand img,
.biogeo-pwa-fallback-icon{
	width:84px;
	height:84px;
	border-radius:22px;
	object-fit:cover;
	box-shadow:0 12px 28px rgba(111,22,143,.14);
}

.biogeo-pwa-fallback-icon{
	display:grid;
	place-items:center;
	background:linear-gradient(135deg,var(--biogeo-pwa-primary),var(--biogeo-pwa-secondary));
	color:#fff;
	font-size:28px;
	font-weight:800;
}

.biogeo-pwa-copy{
	padding:0 34px;
	text-align:center;
}

.biogeo-pwa-kicker{
	display:inline-flex;
	align-items:center;
	padding:6px 10px;
	border-radius:999px;
	background:color-mix(in srgb,var(--biogeo-pwa-primary) 18%,white);
	color:var(--biogeo-pwa-secondary);
	font-size:12px;
	font-weight:800;
	letter-spacing:.02em;
}

.biogeo-pwa-copy h2{
	margin:15px 0 10px;
	color:var(--biogeo-pwa-secondary);
	font-size:27px;
	line-height:1.2;
}

.biogeo-pwa-copy p{
	margin:0;
	color:#62666d;
	font-size:15px;
	line-height:1.65;
}

.biogeo-pwa-ios{
	margin-top:18px;
	padding:16px;
	border-radius:16px;
	background:#f7f8fa;
	text-align:left;
}

.biogeo-pwa-ios h3{
	margin:0 0 6px;
	font-size:16px;
	color:var(--biogeo-pwa-secondary);
}

.biogeo-pwa-ios-steps{
	display:grid;
	gap:7px;
	margin-top:12px;
	font-size:13px;
	color:#51545b;
}

.biogeo-pwa-actions{
	display:grid;
	grid-template-columns:1fr 1fr;
	gap:10px;
	padding:26px 34px 34px;
}

.biogeo-pwa-actions button{
	min-height:48px;
	border-radius:12px;
	font:inherit;
	font-weight:800;
	cursor:pointer;
}

.biogeo-pwa-install{
	border:0;
	background:linear-gradient(135deg,var(--biogeo-pwa-primary),color-mix(in srgb,var(--biogeo-pwa-primary) 76%,var(--biogeo-pwa-secondary)));
	color:#10251c;
	box-shadow:0 10px 24px color-mix(in srgb,var(--biogeo-pwa-primary) 25%,transparent);
}

.biogeo-pwa-later{
	border:1px solid #e2e4e8;
	background:#fff;
	color:#555961;
}

.biogeo-pwa-install:hover{
	transform:translateY(-1px);
}

@keyframes biogeoPwaFade{
	from{opacity:0}
	to{opacity:1}
}

@keyframes biogeoPwaPop{
	from{opacity:0;transform:translate(-50%,-47%) scale(.97)}
	to{opacity:1;transform:translate(-50%,-50%) scale(1)}
}

@media(max-width:520px){
	.biogeo-pwa-modal{
		width:calc(100vw - 24px);
		border-radius:20px;
	}
	.biogeo-pwa-copy{
		padding:0 22px;
	}
	.biogeo-pwa-actions{
		grid-template-columns:1fr;
		padding:22px;
	}
	.biogeo-pwa-brand{
		padding-top:30px;
	}
}


/* Botão fixo para voltar a abrir o convite */
.biogeo-pwa-reopen{
	position:fixed;
	left:22px;
	bottom:22px;
	z-index:999996;
	display:inline-flex;
	align-items:center;
	gap:9px;
	min-height:46px;
	padding:10px 15px;
	border:1px solid color-mix(in srgb,var(--biogeo-pwa-primary) 60%,#ffffff);
	border-radius:999px;
	background:linear-gradient(135deg,var(--biogeo-pwa-primary),color-mix(in srgb,var(--biogeo-pwa-primary) 78%,var(--biogeo-pwa-secondary)));
	color:#10251c;
	box-shadow:0 10px 26px rgba(0,0,0,.14);
	font-family:Inter,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
	font-size:13px;
	font-weight:800;
	cursor:pointer;
	transition:transform .18s ease, box-shadow .18s ease;
}

.biogeo-pwa-reopen:hover{
	transform:translateY(-2px);
	box-shadow:0 14px 32px rgba(0,0,0,.18);
}

.biogeo-pwa-reopen-icon{
	display:grid;
	place-items:center;
	width:25px;
	height:25px;
	border-radius:50%;
	background:rgba(255,255,255,.62);
	font-size:14px;
	line-height:1;
}

.biogeo-pwa-status{
	margin:18px 34px -8px;
	padding:11px 13px;
	border-radius:11px;
	background:#f7f3fa;
	border:1px solid #eadff0;
	color:#5f4568;
	font-size:13px;
	line-height:1.45;
	text-align:center;
}

@media(max-width:520px){
	.biogeo-pwa-reopen{
		left:14px;
		bottom:14px;
	}
	.biogeo-pwa-status{
		margin:16px 22px -4px;
	}
}
