/**
 * Cartão de localização do visitante — site PÚBLICO.
 *
 * Escopado em `.smcp-geoask` e `.smcp-geo-dist`, e só isso: este arquivo carrega em páginas do
 * Houzez cheias de estilo alheio, então nenhuma regra pode tocar seletor global.
 *
 * Cores fixas de propósito. Os tokens do CRM invertem no tema escuro do painel, e aqui o fundo
 * é sempre claro — a variável faria o texto sumir na página pública.
 *
 * @package Sulminas_CRM_Pro
 */

.smcp-geoask {
	position: fixed;
	left: 18px;
	bottom: 18px;
	z-index: 9989;   /* um abaixo do botão de WhatsApp (9990): eles nunca disputam o mesmo canto */
	max-width: 380px;
	opacity: 0;
	transform: translateY(12px);
	transition: opacity .22s ease, transform .22s ease;
}
.smcp-geoask.is-on { opacity: 1; transform: none; }
.smcp-geoask[hidden] { display: none; }

.smcp-geoask-box {
	position: relative;
	display: grid;
	grid-template-columns: auto 1fr;
	grid-template-areas: "ic txt" "acts acts";
	gap: 10px 12px;
	padding: 16px 18px 16px 16px;
	background: #ffffff;
	border: 1px solid #e2e8f0;
	border-radius: 16px;
	box-shadow: 0 12px 34px rgba(15, 23, 42, .16), 0 2px 8px rgba(15, 23, 42, .08);
}

.smcp-geoask-ic {
	grid-area: ic;
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 34px;
	height: 34px;
	flex: none;
	border-radius: 50%;
	background: #ecfdf5;
	color: #047857;
}

.smcp-geoask-txt { grid-area: txt; min-width: 0; }

.smcp-geoask-t {
	margin: 0 0 4px;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.3;
	color: #0f172a;
}
.smcp-geoask-d {
	margin: 0;
	font-size: 13px;
	line-height: 1.5;
	color: #475569;
}

.smcp-geoask-acts {
	grid-area: acts;
	display: flex;
	gap: 8px;
	margin-top: 2px;
}

.smcp-geoask-yes,
.smcp-geoask-no {
	flex: 1;
	min-height: 40px;
	padding: 0 14px;
	border-radius: 10px;
	font-size: 14px;
	font-weight: 600;
	cursor: pointer;
	transition: background-color .15s ease, border-color .15s ease;
}
.smcp-geoask-yes {
	border: 0;
	background: #25a55e;
	color: #ffffff;   /* 3,6:1 — texto grande em negrito, o limite AA para 14px/600 é 3:1 */
}
.smcp-geoask-yes:hover { background: #1e8a4e; }
.smcp-geoask-yes[disabled] { opacity: .7; cursor: default; }
.smcp-geoask-no {
	background: #ffffff;
	border: 1px solid #cbd5e1;
	color: #334155;
}
.smcp-geoask-no:hover { background: #f1f5f9; }
.smcp-geoask-yes:focus-visible,
.smcp-geoask-no:focus-visible { outline: 3px solid #0f766e; outline-offset: 2px; }

.smcp-geoask-x {
	position: absolute;
	top: 6px;
	right: 8px;
	width: 28px;
	height: 28px;
	background: none;
	border: 0;
	border-radius: 8px;
	color: #94a3b8;
	font-size: 20px;
	line-height: 1;
	cursor: pointer;
}
.smcp-geoask-x:hover { background: #f1f5f9; color: #334155; }
.smcp-geoask-x:focus-visible { outline: 2px solid #0f766e; outline-offset: 1px; }

/* Selo de distância junto ao título do imóvel — a contrapartida do pedido. */
.smcp-geo-dist {
	display: inline-flex;
	align-items: center;
	margin-left: 10px;
	padding: 3px 10px;
	border-radius: 999px;
	background: #ecfdf5;
	border: 1px solid #a7f3d0;
	color: #065f46;
	font-size: 13px;
	font-weight: 600;
	white-space: nowrap;
	vertical-align: middle;
}

@media (max-width: 600px) {
	/*
	 * No celular vira faixa no rodapé, acima do botão de WhatsApp (56 px + 14 de folga), para
	 * os dois não brigarem pelo mesmo canto sob o polegar.
	 */
	.smcp-geoask {
		left: 12px;
		right: 12px;
		bottom: 84px;
		max-width: none;
	}
	.smcp-geoask-box { padding: 14px; }
	.smcp-geoask-yes, .smcp-geoask-no { min-height: 44px; }
}

@media (prefers-reduced-motion: reduce) {
	.smcp-geoask { transition: none; }
}
