/* Estilos del Buscador IA */
.ia-search-container { position: relative; width: 100%; max-width: 400px; }
.ia-search-input-wrapper { position: relative; }
#ia-search-input { width: 100%; padding: 12px; border: 1px solid #ccc; border-radius: 5px; box-sizing: border-box; }
#ia-search-results-popup { display: none; position: absolute; top: 100%; left: 0; right: 0; background: white; border: 1px solid #ddd; box-shadow: 0 4px 8px rgba(0,0,0,0.1); border-radius: 0 0 5px 5px; z-index: 1000; }
.ia-search-result-item { display: flex; align-items: center; padding: 10px; border-bottom: 1px solid #eee; text-decoration: none; color: #333; }
.ia-search-result-item:last-child { border-bottom: none; }
.ia-search-result-item:hover { background-color: #f9f9f9; }
.ia-search-result-item img { width: 50px; height: 50px; margin-right: 10px; object-fit: cover; border-radius: 4px; }
.ia-search-filters { display: none; padding: 15px; border-top: 1px solid #eee; }
.filter-options label { display: block; margin-bottom: 8px; font-size: 0.9em; }
.ia-search-close-btn { display: none; }

/* Estilos para Overlay en Móvil */
@media (max-width: 768px) {
    .ia-search-container.mobile-active { position: fixed; top: 0; left: 0; width: 100%; height: 100%; background: white; z-index: 99999; padding: 15px; display: flex; flex-direction: column; }
    .ia-search-container.mobile-active #ia-search-input { font-size: 1.1em; }
    .ia-search-container.mobile-active #ia-search-results-popup { display: block; position: static; border: none; box-shadow: none; flex-grow: 1; overflow-y: auto; margin-top: 15px; }
    .ia-search-container.mobile-active .ia-search-filters { display: block; }
    .ia-search-close-btn { position: absolute; top: 15px; right: 20px; font-size: 2.5em; line-height: 1; color: #555; cursor: pointer; z-index: 10000; }
    .ia-search-container.mobile-active .ia-search-close-btn { display: block; }
}