.pwa-update-banner {
	position: fixed;
	left: 50%;
	bottom: max(18px, env(safe-area-inset-bottom));
	z-index: 2147483000;
	display: flex;
	align-items: flex-start;
	gap: 14px;
	width: min(92vw, 520px);
	box-sizing: border-box;
	padding: 18px;
	border: 1px solid rgba(255, 122, 0, .24);
	border-radius: 18px;
	background: #fff;
	box-shadow: 0 18px 55px rgba(0, 0, 0, .24);
	font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Arial, sans-serif;
	transform: translate(-50%, calc(100% + 50px));
	opacity: 0;
	transition: transform .24s ease, opacity .24s ease;
}

.pwa-update-banner.is-visible {
	transform: translate(-50%, 0);
	opacity: 1;
}

.pwa-update-icon {
	flex: 0 0 48px;
	display: grid;
	place-items: center;
	width: 48px;
	height: 48px;
	border-radius: 14px;
	background: #ff7a00;
	color: #fff;
	font-size: 30px;
	font-weight: 700;
	line-height: 1;
}

.pwa-update-content {
	min-width: 0;
	flex: 1;
}

.pwa-update-title {
	display: block;
	margin: 1px 0 6px;
	color: #171717;
	font-size: 16px;
	font-weight: 800;
	line-height: 1.25;
}

.pwa-update-text {
	margin: 0;
	color: #555;
	font-size: 13px;
	line-height: 1.45;
}

.pwa-update-actions {
	display: flex;
	flex-wrap: wrap;
	gap: 9px;
	margin-top: 13px;
}

.pwa-update-primary,
.pwa-update-later {
	min-height: 42px;
	padding: 0 17px;
	border-radius: 11px;
	font: inherit;
	font-size: 13px;
	font-weight: 800;
	cursor: pointer;
}

.pwa-update-primary {
	border: 1px solid #ff7a00;
	background: #ff7a00;
	color: #fff;
	box-shadow: 0 7px 18px rgba(255, 122, 0, .25);
}

.pwa-update-primary:disabled,
.pwa-update-later:disabled {
	cursor: default;
	opacity: .68;
}

.pwa-update-later {
	border: 1px solid #ddd;
	background: #fff;
	color: #555;
}

@media (max-width: 480px) {
	.pwa-update-banner {
		align-items: center;
		width: calc(100vw - 24px);
		padding: 15px;
		border-radius: 16px;
	}
	.pwa-update-icon {
		flex-basis: 42px;
		width: 42px;
		height: 42px;
		font-size: 26px;
	}
	.pwa-update-actions {
		width: 100%;
	}
	.pwa-update-primary,
	.pwa-update-later {
		flex: 1 1 auto;
	}
}
