.pwa-install-banner {
	display: none;
	position: fixed;
	left: 16px;
	bottom: 16px;
	z-index: 1000;
	width: calc(100% - 32px);
	max-width: 360px;
	gap: 14px;
	background: #fff;
	border-radius: 16px;
	box-shadow: 0 12px 32px rgba(0, 0, 0, 0.18), 0 2px 8px rgba(0, 0, 0, 0.08);
	padding: 20px 20px 20px 18px;
	animation: pwaInstallBannerIn 0.25s ease-out;
}

@keyframes pwaInstallBannerIn {
	from { opacity: 0; transform: translateY(12px); }
	to { opacity: 1; transform: translateY(0); }
}

.pwa-install-banner__close {
	position: absolute;
	top: 10px;
	right: 10px;
	width: 28px;
	height: 28px;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: none;
	border: none;
	border-radius: 50%;
	color: var(--iakg-mute, #848688);
	cursor: pointer;
}

.pwa-install-banner__close:hover {
	background: var(--iak-bg-soft, #f3f1ee);
	color: var(--iakg-ink, #18181a);
}

.pwa-install-banner__icon {
	flex: 0 0 auto;
	width: 56px;
	height: 56px;
	border-radius: 14px;
	object-fit: cover;
}

.pwa-install-banner__content {
	flex: 1 1 auto;
	min-width: 0;
}

.pwa-install-banner__title {
	margin: 0 0 4px;
	font-family: var(--font-primary, 'Public Sans', sans-serif);
	font-size: 0.9375rem;
	font-weight: 700;
	color: var(--iakg-ink, #18181a);
}

.pwa-install-banner__desc {
	margin: 0 0 12px;
	font-size: 0.8125rem;
	line-height: 1.4;
	color: var(--iakg-mute, #848688);
}

.pwa-install-banner__instructions {
	display: none;
	margin: -4px 0 12px;
}

.pwa-install-banner__steps {
	list-style: decimal;
	margin: 0;
	padding-left: 1.125rem;
	font-size: 0.8125rem;
	line-height: 1.5;
	color: var(--iakg-ink, #18181a);
}

.pwa-install-banner__steps li + li {
	margin-top: 4px;
}

.pwa-install-banner__cta {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	height: 2.125rem;
	padding: 0 1rem;
	background: var(--iakg-accent, #C13538);
	color: #fff;
	border: none;
	border-radius: var(--iak-radius-md, 8px);
	font-size: 0.8125rem;
	font-weight: 600;
	cursor: pointer;
	transition: background 0.2s;
}

.pwa-install-banner__cta:hover {
	background: var(--iakg-accent-hover, #A1282B);
}

[data-theme="dark"] .pwa-install-banner {
	background: var(--iakg-card, #1a1a1c);
	box-shadow: 0 12px 32px rgba(0, 0, 0, 0.5), 0 2px 8px rgba(0, 0, 0, 0.3);
}

[data-theme="dark"] .pwa-install-banner__title {
	color: var(--iakg-ink, #f5f5f7);
}

[data-theme="dark"] .pwa-install-banner__steps {
	color: var(--iakg-ink, #f5f5f7);
}

[data-theme="dark"] .pwa-install-banner__desc {
	color: var(--iakg-mute, #8a8a8e);
}

@media (max-width: 420px) {
	.pwa-install-banner {
		left: 10px;
		bottom: 10px;
		width: calc(100% - 20px);
	}
}
