/* LOVIA — Barra de búsqueda fija · 30-10-2026 · Camila
   Sistema Monochrome Glass. Px y !important en tipografía (1rem = 10px).
   Nada por debajo de 14px; 16px mínimo en el campo (iOS no hace zoom).
   Sin el signo menor que en todo el archivo. */

/* ---------- Lupa en la cabecera ---------- */
.lovia-bb-lupa {
	-webkit-appearance: none !important; appearance: none !important;
	display: inline-flex !important; align-items: center !important; justify-content: center !important; gap: 8px !important;
	box-sizing: border-box !important; flex: none !important;
	width: 48px !important; height: 48px !important; min-width: 44px !important; min-height: 0 !important; max-height: none !important; margin: 0 !important; padding: 0 !important;
	border: 1px solid #D8D8D4 !important; border-radius: 14px !important;
	background: rgba(255, 255, 255, .78) !important;
	-webkit-backdrop-filter: blur(14px) saturate(140%) !important; backdrop-filter: blur(14px) saturate(140%) !important;
	color: #0A0A0A !important; box-shadow: 0 1px 2px rgba(10, 10, 10, .06) !important;
	cursor: pointer !important; line-height: 1 !important;
	font-family: 'Jost', sans-serif !important; font-size: 15px !important; font-weight: 400 !important; letter-spacing: 0 !important; text-transform: none !important;
	transition: background-color .18s ease, border-color .18s ease, box-shadow .18s ease !important;
}
.lovia-bb-lupa svg { width: 22px !important; height: 22px !important; flex: none !important; fill: none !important; stroke: currentColor !important; stroke-width: 1.8 !important; stroke-linecap: round !important; }
.lovia-bb-lupa:hover { background: #FFFFFF !important; border-color: #6E6E6A !important; box-shadow: 0 4px 14px rgba(10, 10, 10, .10) !important; }
/* El tema pinta de blanco el texto de los botones en :hover/:focus/:active; la lupa quedaba blanca sobre blanco (QA 30-10). */
html body .lovia-bb-lupa:hover, html body .lovia-bb-lupa:focus, html body .lovia-bb-lupa:active { color: #0A0A0A !important; }
.lovia-bb-lupa:focus-visible { outline: 2px solid #0A0A0A !important; outline-offset: 3px !important; }
.lovia-bb-lupa:active { background: #EFEFED !important; }
.lovia-bb-lupa__txt { display: none !important; }

/* Móvil y tableta: junto al botón del menú. */
#header .left-side.lovia-bb-con-lupa .lovia-bb-lupa--movil { margin-left: auto !important; margin-right: 8px !important; }
#header .left-side.lovia-bb-con-lupa .lovia-bb-lupa--movil + .mmenu-trigger { margin-left: 0 !important; }
@media (min-width: 1240px) { .lovia-bb-lupa--movil { display: none !important; } }

/* Escritorio: fuera del flujo, a la derecha de «Crear cuenta»; no mueve el menú
   (la fila va justa: un botón más en flujo la solapa a 1240, 1280 y 1440). */
.header-widget.lovia-bb-con-lupa { position: relative !important; }
#header .header-widget .lovia-bb-lupa--escritorio {
	position: absolute !important; left: 100% !important; top: 50% !important;
	margin: -22px 0 0 12px !important; width: 44px !important; height: 44px !important; border-radius: 999px !important;
}
@media (min-width: 1600px) {
	#header .header-widget .lovia-bb-lupa--escritorio { width: auto !important; margin-top: -22px !important; padding: 0 18px 0 14px !important; }
	.lovia-bb-lupa--escritorio .lovia-bb-lupa__txt { display: inline !important; }
	.lovia-bb-lupa--escritorio svg { width: 20px !important; height: 20px !important; }
}

/* Flotante: solo cuando la cabecera ya no se ve (la cabecera de Listeo no es fija en móvil ni en fichas). */
.lovia-bb-lupa.lovia-bb-lupa--flotante {
	position: fixed !important; top: calc(14px + env(safe-area-inset-top)) !important; right: 16px !important; z-index: 1012 !important;
	box-shadow: 0 6px 20px rgba(10, 10, 10, .16) !important; background: rgba(255, 255, 255, .86) !important;
	opacity: 0 !important; visibility: hidden !important; transform: translateY(-8px) !important;
	transition: opacity .2s ease, transform .2s ease, visibility 0s linear .2s !important;
}
.lovia-bb-lupa.lovia-bb-lupa--flotante.lovia-bb-lupa--visible { opacity: 1 !important; visibility: visible !important; transform: none !important; transition: opacity .2s ease, transform .2s ease, visibility 0s !important; }
.lovia-bb-lupa.lovia-bb-lupa--flotante:hover { background: #FFFFFF !important; }
html.lovia-bb-abierta .lovia-bb-lupa--flotante, html.mm-opened .lovia-bb-lupa--flotante { visibility: hidden !important; opacity: 0 !important; }
@media (min-width: 1240px) { .lovia-bb-lupa.lovia-bb-lupa--flotante { top: 8px !important; width: 44px !important; height: 44px !important; border-radius: 999px !important; } }
@media (prefers-reduced-motion: reduce) { .lovia-bb-lupa.lovia-bb-lupa--flotante { transition: none !important; } }

/* ---------- Capa de búsqueda ---------- */
html.lovia-bb-abierta, html.lovia-bb-abierta body { overflow: hidden !important; }
#lovia-bb[hidden] { display: none !important; }
#lovia-bb {
	position: fixed !important; inset: 0 !important; z-index: 2147483000 !important;
	font-family: 'Jost', sans-serif !important; color: #0A0A0A !important;
	-webkit-text-size-adjust: 100% !important;
}
#lovia-bb *, #lovia-bb *::before, #lovia-bb *::after { box-sizing: border-box !important; }
#lovia-bb .lovia-bb__velo { position: absolute !important; inset: 0 !important; background: rgba(10, 10, 10, .34) !important; -webkit-backdrop-filter: blur(3px) !important; backdrop-filter: blur(3px) !important; animation: lovia-bb-fundido .16s ease both; }
#lovia-bb .lovia-bb__caja {
	position: absolute !important; display: flex !important; flex-direction: column !important;
	background: #F7F7F5 !important; overflow: hidden !important;
	animation: lovia-bb-entra .2s cubic-bezier(.2, .7, .2, 1) both;
}
#lovia-bb .lovia-bb__oculto { position: absolute !important; width: 1px !important; height: 1px !important; overflow: hidden !important; clip: rect(0 0 0 0) !important; white-space: nowrap !important; margin: -1px !important; padding: 0 !important; border: 0 !important; }

/* Cabecera de la capa: campo + Cancelar */
#lovia-bb .lovia-bb__form { display: flex !important; align-items: center !important; gap: 8px !important; margin: 0 !important; padding: 12px 16px !important; flex: none !important; border-bottom: 1px solid #D8D8D4 !important; background: rgba(255, 255, 255, .82) !important; -webkit-backdrop-filter: blur(18px) saturate(140%) !important; backdrop-filter: blur(18px) saturate(140%) !important; }
#lovia-bb .lovia-bb__campo { position: relative !important; flex: 1 1 auto !important; min-width: 0 !important; display: flex !important; align-items: center !important; height: 52px !important; border: 1px solid #D8D8D4 !important; border-radius: 16px !important; background: #FFFFFF !important; transition: border-color .15s ease, box-shadow .15s ease !important; }
#lovia-bb .lovia-bb__campo:focus-within { border-color: #0A0A0A !important; box-shadow: 0 0 0 3px rgba(10, 10, 10, .10) !important; }
#lovia-bb .lovia-bb__lupa { display: flex !important; padding: 0 4px 0 14px !important; color: #63635F !important; flex: none !important; }
#lovia-bb .lovia-bb__lupa svg { width: 20px !important; height: 20px !important; fill: none !important; stroke: currentColor !important; stroke-width: 1.8 !important; stroke-linecap: round !important; }
#lovia-bb .lovia-bb__input {
	-webkit-appearance: none !important; appearance: none !important;
	flex: 1 1 auto !important; min-width: 0 !important; width: 100% !important; height: 50px !important; margin: 0 !important; padding: 0 8px !important;
	border: 0 !important; border-radius: 0 !important; background: transparent !important; box-shadow: none !important; outline: none !important;
	font-family: 'Jost', sans-serif !important; font-size: 17px !important; font-weight: 400 !important; line-height: 1.3 !important; color: #0A0A0A !important; letter-spacing: 0 !important;
}
#lovia-bb .lovia-bb__input::placeholder { color: #63635F !important; opacity: 1 !important; }
#lovia-bb .lovia-bb__input::-webkit-search-cancel-button, #lovia-bb .lovia-bb__input::-webkit-search-decoration { -webkit-appearance: none !important; display: none !important; }
#lovia-bb .lovia-bb__borrar, #lovia-bb .lovia-bb__cerrar {
	-webkit-appearance: none !important; appearance: none !important; margin: 0 !important; cursor: pointer !important; box-shadow: none !important;
	font-family: 'Jost', sans-serif !important; font-weight: 400 !important; letter-spacing: 0 !important; text-transform: none !important; line-height: 1 !important;
}
#lovia-bb .lovia-bb__borrar { display: flex !important; float: none !important; min-height: 0 !important; align-items: center !important; justify-content: center !important; flex: none !important; width: 44px !important; height: 44px !important; padding: 0 !important; margin-right: 3px !important; border: 0 !important; border-radius: 12px !important; background: transparent !important; color: #63635F !important; }
#lovia-bb .lovia-bb__borrar[hidden] { display: none !important; }
#lovia-bb .lovia-bb__borrar svg { width: 18px !important; height: 18px !important; fill: none !important; stroke: currentColor !important; stroke-width: 2 !important; stroke-linecap: round !important; }
#lovia-bb .lovia-bb__borrar:hover { background: #EFEFED !important; color: #0A0A0A !important; }
#lovia-bb .lovia-bb__cerrar { display: inline-flex !important; align-items: center !important; flex: none !important; width: auto !important; min-width: 0 !important; height: 44px !important; min-height: 0 !important; float: none !important; padding: 0 10px !important; border: 0 !important; border-radius: 14px !important; background: transparent !important; color: #0A0A0A !important; font-size: 16px !important; text-decoration: underline !important; text-decoration-color: #D8D8D4 !important; text-underline-offset: 4px !important; }
#lovia-bb .lovia-bb__cerrar:hover { background: #EFEFED !important; text-decoration-color: #0A0A0A !important; }
#lovia-bb .lovia-bb__borrar:focus-visible, #lovia-bb .lovia-bb__cerrar:focus-visible { outline: 2px solid #0A0A0A !important; outline-offset: 2px !important; }

/* Lista de sugerencias */
#lovia-bb .lovia-bb__lista { flex: 1 1 auto !important; overflow-y: auto !important; overscroll-behavior: contain !important; -webkit-overflow-scrolling: touch !important; padding: 8px 16px 24px !important; }
#lovia-bb .lovia-bb__grupo { margin: 0 0 8px !important; padding: 0 !important; }
#lovia-bb .lovia-bb__titulo { margin: 16px 0 6px !important; padding: 0 4px !important; font-family: 'Jost', sans-serif !important; font-size: 14px !important; font-weight: 400 !important; line-height: 1.3 !important; letter-spacing: .08em !important; text-transform: uppercase !important; color: #63635F !important; }

#lovia-bb .lovia-bb__opcion { text-decoration: none !important; color: #0A0A0A !important; -webkit-tap-highlight-color: transparent !important; }
#lovia-bb .lovia-bb__opcion[aria-selected="true"] { outline: 2px solid #0A0A0A !important; outline-offset: -2px !important; }

/* Intención destacada */
#lovia-bb .lovia-bb__intencion { display: grid !important; grid-template-columns: 1fr auto !important; grid-template-rows: auto auto !important; column-gap: 12px !important; align-items: center !important; margin: 8px 0 4px !important; padding: 14px 14px 14px 18px !important; border: 1px solid #D8D8D4 !important; border-radius: 22px !important; background: #FFFFFF !important; box-shadow: 0 6px 22px rgba(10, 10, 10, .06) !important; }
#lovia-bb .lovia-bb__intencion[aria-selected="true"], #lovia-bb .lovia-bb__intencion:hover { background: #EFEFED !important; }
#lovia-bb .lovia-bb__int-t { grid-column: 1 !important; font-family: 'Cormorant Garamond', serif !important; font-size: 23px !important; font-weight: 400 !important; line-height: 1.15 !important; color: #0A0A0A !important; }
#lovia-bb .lovia-bb__int-n { grid-column: 1 !important; grid-row: 2 !important; margin-top: 4px !important; font-size: 15px !important; line-height: 1.3 !important; color: #63635F !important; }
#lovia-bb .lovia-bb__int-f { grid-column: 2 !important; grid-row: 1 / span 2 !important; display: flex !important; align-items: center !important; justify-content: center !important; width: 44px !important; height: 44px !important; border-radius: 999px !important; background: #161616 !important; color: #FFFFFF !important; }
#lovia-bb .lovia-bb__int-f svg { width: 20px !important; height: 20px !important; fill: none !important; stroke: currentColor !important; stroke-width: 1.8 !important; stroke-linecap: round !important; stroke-linejoin: round !important; }

/* Filas: categoría, ciudad, proveedor */
#lovia-bb .lovia-bb__fila { display: flex !important; align-items: center !important; gap: 12px !important; min-height: 48px !important; padding: 8px 10px !important; border-radius: 14px !important; }
#lovia-bb .lovia-bb__fila:hover, #lovia-bb .lovia-bb__fila[aria-selected="true"] { background: #EFEFED !important; }
#lovia-bb .lovia-bb__ico { display: flex !important; align-items: center !important; justify-content: center !important; flex: none !important; width: 36px !important; height: 36px !important; border-radius: 12px !important; background: #FFFFFF !important; border: 1px solid #D8D8D4 !important; color: #242424 !important; }
#lovia-bb .lovia-bb__ico svg { width: 18px !important; height: 18px !important; fill: none !important; stroke: currentColor !important; stroke-width: 1.6 !important; stroke-linecap: round !important; stroke-linejoin: round !important; }
#lovia-bb .lovia-bb__nombre { flex: 1 1 auto !important; min-width: 0 !important; font-size: 16px !important; font-weight: 400 !important; line-height: 1.3 !important; color: #242424 !important; overflow: hidden !important; text-overflow: ellipsis !important; white-space: nowrap !important; }
#lovia-bb .lovia-bb__nombre b { font-weight: 500 !important; color: #0A0A0A !important; }
#lovia-bb .lovia-bb__meta { flex: none !important; max-width: 40% !important; font-size: 14px !important; line-height: 1.3 !important; color: #63635F !important; overflow: hidden !important; text-overflow: ellipsis !important; white-space: nowrap !important; }

/* Pastillas: inicio y atajos */
#lovia-bb .lovia-bb__chips { display: flex !important; flex-wrap: wrap !important; gap: 8px !important; padding: 2px 0 !important; }
#lovia-bb .lovia-bb__chip { display: inline-flex !important; align-items: center !important; min-height: 44px !important; padding: 0 16px !important; border: 1px solid #D8D8D4 !important; border-radius: 999px !important; background: #FFFFFF !important; font-size: 16px !important; font-weight: 400 !important; line-height: 1.2 !important; color: #0A0A0A !important; transition: border-color .15s ease, background-color .15s ease !important; }
#lovia-bb .lovia-bb__chip:hover, #lovia-bb .lovia-bb__chip[aria-selected="true"] { border-color: #0A0A0A !important; background: #EFEFED !important; }

/* Estados: cargando, sin resultados */
#lovia-bb .lovia-bb__cargando { display: flex !important; align-items: center !important; gap: 10px !important; padding: 20px 4px !important; font-size: 16px !important; color: #63635F !important; }
#lovia-bb .lovia-bb__giro { width: 18px !important; height: 18px !important; border: 2px solid #D8D8D4 !important; border-top-color: #0A0A0A !important; border-radius: 50% !important; animation: lovia-bb-giro .8s linear infinite; }
#lovia-bb .lovia-bb__vacio { padding: 18px 4px 4px !important; }
#lovia-bb .lovia-bb__vacio-t { margin: 0 0 6px !important; font-family: 'Cormorant Garamond', serif !important; font-size: 24px !important; font-weight: 400 !important; line-height: 1.2 !important; color: #0A0A0A !important; overflow-wrap: anywhere !important; }
#lovia-bb .lovia-bb__vacio-s { margin: 0 !important; font-size: 16px !important; line-height: 1.5 !important; color: #63635F !important; }
#lovia-bb.lovia-bb--yendo .lovia-bb__lista { opacity: .55 !important; pointer-events: none !important; transition: opacity .2s ease !important; }

#lovia-bb .lovia-bb__ayuda { display: none !important; }

/* Móvil: pantalla completa */
@media (max-width: 767px) {
	#lovia-bb .lovia-bb__velo { display: none !important; }
	#lovia-bb .lovia-bb__caja { inset: 0 !important; height: 100% !important; height: 100dvh !important; padding-top: env(safe-area-inset-top) !important; }
	#lovia-bb .lovia-bb__input { font-size: 16px !important; }
	#lovia-bb .lovia-bb__lista { padding-bottom: calc(24px + env(safe-area-inset-bottom)) !important; }
}

/* Tableta y escritorio: diálogo bajo la cabecera */
@media (min-width: 768px) {
	#lovia-bb .lovia-bb__caja {
		top: var(--lovia-bb-top, 96px) !important; left: 50% !important; transform: translateX(-50%) !important;
		width: 720px !important; max-width: calc(100vw - 48px) !important; max-height: calc(100vh - var(--lovia-bb-top, 96px) - 32px) !important;
		border: 1px solid rgba(216, 216, 212, .9) !important; border-radius: 28px !important; box-shadow: 0 24px 64px rgba(10, 10, 10, .22) !important;
	}
	#lovia-bb .lovia-bb__form { padding: 14px 14px 14px 18px !important; }
	#lovia-bb .lovia-bb__campo { height: 56px !important; }
	#lovia-bb .lovia-bb__input { height: 54px !important; font-size: 18px !important; }
	#lovia-bb .lovia-bb__lista { padding: 8px 18px 12px !important; }
	#lovia-bb .lovia-bb__ayuda { display: block !important; flex: none !important; margin: 0 !important; padding: 10px 18px 12px !important; border-top: 1px solid #D8D8D4 !important; font-size: 14px !important; line-height: 1.3 !important; color: #63635F !important; }
	#lovia-bb .lovia-bb__ayuda kbd { display: inline-block !important; min-width: 22px !important; margin: 0 2px !important; padding: 1px 6px !important; border: 1px solid #D8D8D4 !important; border-radius: 6px !important; background: #FFFFFF !important; font-family: 'Jost', sans-serif !important; font-size: 14px !important; color: #242424 !important; text-align: center !important; box-shadow: none !important; }
	#lovia-bb .lovia-bb__caja { animation-name: lovia-bb-entra-d; }
}
@keyframes lovia-bb-entra-d { from { opacity: 0; transform: translate(-50%, -8px); } to { opacity: 1; transform: translate(-50%, 0); } }

@keyframes lovia-bb-entra { from { opacity: 0; transform: translateY(8px); } to { opacity: 1; transform: none; } }
@keyframes lovia-bb-fundido { from { opacity: 0; } to { opacity: 1; } }
@keyframes lovia-bb-giro { to { transform: rotate(360deg); } }
@media (prefers-reduced-motion: reduce) {
	#lovia-bb .lovia-bb__caja, #lovia-bb .lovia-bb__velo { animation: none !important; }
	#lovia-bb .lovia-bb__giro { animation-duration: 2s; }
}

/* Pantallas táctiles: sin la ayuda de teclado. */
@media (hover: none) { #lovia-bb .lovia-bb__ayuda { display: none !important; } }
