#aib-root { --aib-brand: #D4A017; }

.aib-float-btn {
	position: fixed;
	z-index: 999998;
	display: inline-flex;
	align-items: center;
	gap: 8px;
	background: var(--aib-brand);
	color: #0B1D3A;
	border: none;
	border-radius: 999px;
	padding: 13px 22px;
	font-size: 1rem;
	font-weight: 700;
	cursor: pointer;
	box-shadow: 0 8px 22px rgba(0, 0, 0, .3);
	transition: transform .2s ease, opacity .2s ease;
}
.aib-float-btn:hover { transform: translateY(-2px); }
.aib-float-btn.aib-hidden { display: none; }

.aib-btn-logo { width: 22px; height: 22px; border-radius: 50%; object-fit: cover; flex-shrink: 0; }
.aib-btn-icon { width: 20px; height: 20px; flex-shrink: 0; }

.aib-modal-overlay {
	position: fixed;
	inset: 0;
	background: rgba(0, 0, 0, .65);
	z-index: 999999;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 20px;
}
.aib-modal-overlay[hidden] { display: none; }

.aib-modal-box {
	position: relative;
	background: #ffffff;
	color: #111111;
	border-radius: 18px;
	padding: 38px 30px 30px;
	max-width: 380px;
	width: 100%;
	text-align: center;
	box-shadow: 0 20px 60px rgba(0, 0, 0, .35);
}

.aib-modal-close {
	position: absolute;
	top: 10px;
	right: 14px;
	background: none;
	border: none;
	color: #555555;
	font-size: 22px;
	cursor: pointer;
	line-height: 1;
}
.aib-modal-close:hover { color: #111111; }

.aib-modal-logo {
	width: 76px;
	height: 76px;
	border-radius: 18px;
	object-fit: cover;
	margin: 0 auto 16px;
	display: block;
	box-shadow: 0 6px 16px rgba(0, 0, 0, .25);
}

.aib-modal-title { margin: 0 0 8px; font-size: 1.4rem; font-weight: 800; color: #0D47A1; }
.aib-modal-subtitle { margin: 0 0 22px; color: #111111; font-size: 1rem; line-height: 1.55; font-weight: 500; }

.aib-install-cta {
	background: #0D47A1;
	color: #ffffff;
	border: none;
	border-radius: 999px;
	padding: 15px 30px;
	font-size: 1.05rem;
	font-weight: 700;
	cursor: pointer;
	width: 100%;
	margin-bottom: 10px;
}
.aib-install-cta:hover { opacity: .9; }
.aib-install-cta[hidden] { display: none; }

.aib-guide-cta {
	display: block;
	background: #0D47A1;
	color: #ffffff;
	border: none;
	border-radius: 999px;
	padding: 16px 28px;
	font-size: 1.1rem;
	font-weight: 800;
	text-decoration: none;
	text-align: center;
	cursor: pointer;
	box-shadow: 0 8px 20px rgba(0,0,0,.2);
}
.aib-guide-cta:hover { opacity: .9; transform: translateY(-1px); }
.aib-guide-cta[hidden] { display: none; }

.aib-status {
	margin: 14px 0 0;
	font-size: .85rem;
	color: #111111;
	min-height: 1em;
	font-weight: 600;
}
