/* Floating contact panel */
.contact-float {
	right: max(20px, env(safe-area-inset-right));
	bottom: calc(max(20px, env(safe-area-inset-bottom)) + var(--analiza-contact-bottom-offset, 0px));
	z-index: 40;
	color: var(--analiza-color-ink);
	font-family: var(--analiza-font-interface, Arial, sans-serif);
	position: fixed;
}
.contact-float-toggle {
	color: var(--analiza-color-brand);
	cursor: pointer;
	background: var(--analiza-color-surface-soft);
	border: 0;
	border-radius: 50%;
	place-items: center;
	width: 56px;
	height: 56px;
	margin-left: auto;
	padding: 0;
	display: grid;
	box-shadow: 0 4px 16px #0002;
}
.contact-float-toggle:hover {
	color: #960824;
	background: #ececec;
}
.contact-float-toggle svg {
	width: 28px;
	height: 28px;
	display: block;
}
.contact-float-toggle .contact-close-icon {
	display: none;
}
.contact-float-toggle[aria-expanded="true"] .contact-info-icon {
	display: none;
}
.contact-float-toggle[aria-expanded="true"] .contact-close-icon {
	display: block;
}
.contact-float-panel {
	overscroll-behavior: contain;
	background: var(--analiza-color-white);
	border: 1px solid #eadfe2;
	border-radius: 16px;
	width: 288px;
	max-width: calc(100vw - 32px);
	max-height: calc(100dvh - 112px - var(--analiza-contact-bottom-offset, 0px));
	padding: 12px;
	position: absolute;
	bottom: 68px;
	right: 0;
	overflow: auto;
	box-shadow: 0 8px 32px #0002;
}
.contact-float-panel[hidden] {
	display: none !important;
}
.contact-float-panel h2 {
	color: var(--analiza-color-ink);
	margin: 4px 8px 12px;
	font:
		var(--analiza-weight-bold) 16px/1.4 var(--analiza-font-interface, Arial, sans-serif);
}
.contact-float-panel a {
	color: var(--analiza-color-ink);
	border-radius: 8px;
	flex-direction: column;
	justify-content: center;
	gap: 4px;
	min-height: 48px;
	padding: 12px;
	font-size: 15px;
	line-height: 1.4;
	text-decoration: none;
	display: flex;
}
.contact-float-panel a:hover {
	color: var(--analiza-color-brand);
	background: #fbf1f3;
}
.contact-float :is(button, a):focus-visible {
	outline-offset: 3px;
	outline: 2px solid var(--analiza-color-brand);
}
:is(body:has(dialog[open]), body:has(.ao-sheet:not([hidden])), body:has(.mobile-toggle[aria-expanded="true"]), body.az-navigation-open) .contact-float {
    display: none !important;
}
@media (min-width: 981px) {
	.contact-float-toggle {
		color: var(--analiza-color-white);
		background: var(--analiza-color-brand);
	}
	.contact-float-toggle:hover {
		color: var(--analiza-color-white);
		background: #960824;
	}
}
@media (max-width: 767px) {
	.contact-float {
		right: max(16px, env(safe-area-inset-right));
		bottom: calc(max(16px, env(safe-area-inset-bottom)) + var(--analiza-contact-bottom-offset, 0px));
	}
}
