/* ============================================================
   Loja Core (Obra Certa) — busca instantânea Algolia — .kmac-* (port km-search.css; tokens --mh-* são aliases dos --lc-* no header-mo-v2.css)
   Painel denso estilo varejo sob a barra de busca do header.
   ============================================================ */

.mo-hdr-main__search { position: relative; }

.kmac-panel {
	position: absolute;
	top: calc(100% + 8px);
	left: 0;
	right: 0;
	z-index: 1200;
	background: #fff;
	border: 1px solid var(--mh-line, #E3E6E1);
	border-radius: 12px;
	box-shadow: 0 18px 44px rgba(11, 61, 46, .22), 0 2px 8px rgba(11, 61, 46, .10);
	overflow: hidden;
	max-height: min(72vh, 620px);
	overflow-y: auto;
	overscroll-behavior: contain;
	text-align: left;
}

/* Chips (categorias/marcas) */
.kmac-chips {
	display: flex;
	flex-wrap: wrap;
	gap: 6px;
	padding: 10px 12px 4px;
}
.kmac-chip {
	display: inline-block;
	padding: 4px 10px;
	border: 1px solid var(--mh-line, #E3E6E1);
	border-radius: 999px;
	background: var(--mh-paper, #F6F8F5);
	color: var(--mh-purple, #0B3D2E);
	font: 700 11.5px/1.4 'Inter', 'Open Sans', sans-serif;
	text-decoration: none;
	white-space: nowrap;
}
.kmac-chip:hover { background: var(--mh-purple-100, #DCEAE2); color: var(--mh-purple, #0B3D2E); }
.kmac-chip--brand { border-style: dashed; }

.kmac-label {
	padding: 10px 14px 2px;
	font: 800 10.5px/1.4 'Inter', 'Open Sans', sans-serif;
	letter-spacing: .09em;
	text-transform: uppercase;
	color: var(--mh-ink-3, #5D6862);
}

/* Lista de produtos */
.kmac-list { list-style: none; margin: 4px 0 0; padding: 0; }
.kmac-item + .kmac-item { border-top: 1px solid var(--mh-paper, #F6F8F5); }
.kmac-link {
	display: flex;
	align-items: center;
	gap: 10px;
	padding: 8px 12px;
	text-decoration: none;
	color: inherit;
}
.kmac-item.is-active .kmac-link,
.kmac-link:hover { background: var(--mh-paper, #F6F8F5); }

.kmac-img {
	flex: 0 0 52px;
	width: 52px;
	height: 52px;
	object-fit: contain;
	border-radius: 8px;
	border: 1px solid var(--mh-line, #E3E6E1);
	background: #fff;
}
.kmac-img--ph { display: block; background: var(--mh-paper, #F6F8F5); }

.kmac-info { flex: 1 1 auto; min-width: 0; }
.kmac-name {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;
	font: 600 13px/1.35 'Inter', 'Open Sans', sans-serif;
	color: var(--mh-ink, #101512);
}
.kmac-name mark {
	background: none;
	color: var(--mh-green-2, #007A2F);
	font-weight: 800;
}
.kmac-meta {
	display: block;
	margin-top: 2px;
	font: 600 11px/1.3 'Inter', 'Open Sans', sans-serif;
	color: var(--mh-ink-3, #5D6862);
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
}

/* Bloco de preço */
.kmac-buy {
	flex: 0 0 auto;
	display: flex;
	flex-direction: column;
	align-items: flex-end;
	gap: 1px;
	font-variant-numeric: tabular-nums;
}
.kmac-old {
	font: 600 10.5px/1.2 'Inter', sans-serif;
	color: var(--mh-ink-3, #5D6862);
}
.kmac-price {
	font: 800 14px/1.2 'Poppins', 'Inter', sans-serif;
	color: var(--mh-ink, #101512);
}
.kmac-pix {
	font: 700 10.5px/1.3 'Inter', sans-serif;
	color: var(--mh-green-2, #007A2F);
}
.kmac-inst {
	font: 600 10px/1.3 'Inter', sans-serif;
	color: var(--mh-ink-3, #5D6862);
}
.kmac-oos {
	font: 700 10px/1.3 'Inter', sans-serif;
	color: #B45309;
}

/* Rodapé "ver todos" */
.kmac-all {
	display: block;
	padding: 11px 14px;
	border-top: 1px solid var(--mh-line, #E3E6E1);
	background: var(--mh-paper, #F6F8F5);
	text-align: center;
	font: 800 12.5px/1.3 'Inter', 'Open Sans', sans-serif;
	color: var(--mh-purple, #0B3D2E);
	text-decoration: none;
}
.kmac-all:hover { background: var(--mh-purple-100, #DCEAE2); color: var(--mh-purple, #0B3D2E); }

/* Card de atendimento (intenções institucionais: telefone, cnpj, cancelar…) */
.kmac-contact {
	padding: 14px 14px 12px;
	border-bottom: 1px solid var(--mh-line, #E3E6E1);
	background: var(--mh-paper, #F6F8F5);
}
.kmac-contact-title {
	font: 800 12px/1.3 'Inter', 'Open Sans', sans-serif;
	letter-spacing: .06em;
	text-transform: uppercase;
	color: var(--mh-purple, #0B3D2E);
	margin-bottom: 9px;
}
.kmac-contact-actions { display: flex; flex-wrap: wrap; gap: 8px; align-items: center; }
.kmac-contact .kmac-wa { margin-top: 0; }
.kmac-tel {
	display: inline-block;
	padding: 8px 14px;
	border-radius: 999px;
	border: 1.5px solid var(--mh-purple, #0B3D2E);
	color: var(--mh-purple, #0B3D2E) !important;
	font: 800 12px/1.3 'Inter', sans-serif;
	text-decoration: none;
	white-space: nowrap;
}
.kmac-tel:hover { background: var(--mh-purple-100, #DCEAE2); }
.kmac-contact-links { display: flex; gap: 14px; margin-top: 10px; }
.kmac-contact-links a {
	font: 700 12px/1.3 'Inter', sans-serif;
	color: var(--mh-green-2, #007A2F);
	text-decoration: underline;
}
.kmac-contact-legal {
	margin-top: 8px;
	font: 600 10.5px/1.4 'Inter', sans-serif;
	color: var(--mh-ink-3, #5D6862);
}

/* Estado vazio */
.kmac-empty { padding: 18px 16px 16px; text-align: center; }
.kmac-empty p { margin: 0 0 4px; font: 600 13px/1.45 'Inter', sans-serif; color: var(--mh-ink, #101512); }
.kmac-empty-sub { font-weight: 500 !important; color: var(--mh-ink-3, #5D6862) !important; font-size: 12px !important; }
.kmac-wa {
	display: inline-block;
	margin-top: 10px;
	padding: 8px 16px;
	border-radius: 999px;
	background: var(--mh-wa-green, #25D366);
	color: #fff !important;
	font: 800 12px/1.3 'Inter', sans-serif;
	text-decoration: none;
}
.kmac-wa:hover { filter: brightness(.95); }

/* Mobile: painel ocupa a largura da tela sob o header */
@media (max-width: 767px) {
	.kmac-panel {
		position: fixed;
		top: var(--kmac-mobile-top, 108px);
		left: 8px;
		right: 8px;
		max-height: calc(100dvh - var(--kmac-mobile-top, 108px) - 76px);
	}
	.kmac-buy { max-width: 118px; }
	.kmac-name { font-size: 12.5px; }
}

/* Produto variável: "a partir de" antes do preço */
.kmac-price small {
	display: block;
	font: 600 9.5px/1.1 'Inter', sans-serif;
	color: var(--mh-ink-3, #5D6862);
	text-transform: lowercase;
}

/* Sugestões de busca (índice oc_suggestions) */
.kmac-suggs {
	display: flex;
	flex-direction: column;
	padding: 6px 6px 0;
}
.kmac-sg {
	display: flex;
	align-items: center;
	gap: 8px;
	padding: 6px 8px;
	border-radius: 8px;
	font: 600 12.5px/1.3 'Inter', 'Open Sans', sans-serif;
	color: var(--mh-ink, #101512);
	text-decoration: none;
}
.kmac-sg svg { color: var(--mh-ink-3, #5D6862); flex: 0 0 auto; }
.kmac-sg b { font-weight: 800; color: var(--mh-green-2, #007A2F); }
.kmac-sg:hover { background: var(--mh-paper, #F6F8F5); color: var(--mh-ink, #101512); }
