#sb-pwa-splash {
	position: fixed;
	inset: 0;
	z-index: 2147483000;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #FFFFFF;
	opacity: 1;
	transition: opacity .5s ease;
}

#sb-pwa-splash[hidden] { display: none; }

#sb-pwa-splash.is-done {
	opacity: 0;
	pointer-events: none;
}

#sb-pwa-splash img {
	width: min(92vw, 640px);
	max-height: 58vh;
	height: auto;
	object-fit: contain;
	animation: sb-pwa-fade .9s ease both;
}

@keyframes sb-pwa-fade {
	from { opacity: 0; transform: scale(.97); }
	to   { opacity: 1; transform: none; }
}

@media (prefers-reduced-motion: reduce) {
	#sb-pwa-splash img { animation: none; }
	#sb-pwa-splash { transition: none; }
}

/* hold the page still behind the splash while the app boots */
.sb-pwa-booting body { overflow: hidden; }