/*
 * ============================================================================
 * AIFA - Estilos del Menú Lateral y Chatbot
 * ============================================================================
 * Este archivo contiene todos los estilos CSS para el menú lateral flotante
 * y el chatbot del sitio AIFA.
 * ============================================================================
 */

/* Estilos para mensajes de bienvenida del chatbot */
#chatText > .chat-greeting,
.parent-chat > div {
    min-height: 50px;
    color: #666;
    font-size: 1rem;
    font-family: Arial, sans-serif;
    background: rgb(247 247 247);
    margin: 5px;
    padding: 5px;
    border-radius: 4px;
}

/* Imágenes dentro del chat */
#chatText > div > img {
    width: 40px;
    border-radius: 20px;
    float: left;
    margin-right: 10px;
}

/* Mensajes destacados del chatbot */
#chatText .chat-highlighted {
    color: #FFF;
    font-size: 1rem;
    font-family: Arial, sans-serif;
    background: #00ab87;
    margin: 5px;
    padding: 8px;
    border-radius: 4px;
    text-align: left;
}

/* Enlaces del chatbot */
.parent-chat .chatbot-link {
    color: #FFF ;
    font-size: 1rem;
    font-family: Arial, sans-serif;
    background: #017a61;
    margin: 5px;
    padding: 8px;
    border-radius: 4px;
    text-align: center;
    text-decoration: none;
    display: block;
}

/* Imágenes dentro de los mensajes padre */
.parent-chat img {
    width: 40px;
    border-radius: 20px;
    float: left;
    margin-right: 10px;
}

/* Contenedor del iframe del chat */
#ifrChat {
    box-shadow: 2px 1px 5px black;
    right: 10px;
    border: none;
}

/* Responsive para móviles */
@media (max-width: 480px) {
    #ifrChat {
        max-width: 90%;
    }
}

/* Enlaces dentro del iframe del chat */
#ifrChat a {
    color: #666;
}

/* Enlaces dentro de los mensajes padre */
#ifrChat .parent-chat span a {
    color: #000;
}

#ifrChat .parent-chat span a:hover {
    color: #000 ;
}

/* Encabezado del chatbot */
#chatbot-header {
    background: #0e2c3b;
    display: block;
    padding: 10px;
    color: #FFF;
}

/* Preguntas del chatbot */
.chatbot-question {
    color: #666 ;
    font-size: 1rem;
    font-family: Arial, sans-serif;
    border: 1px solid #CCC;
    display: block;
    margin-left: 5px;
    margin-right: 5px;
    padding: 8px;
    text-decoration: none;
    text-align: left;
    font-weight: bold;
}

.chatbot-question:hover {
    color: #666 ;
    text-decoration: none;
}

/* Respuestas del chatbot */
.chatbot-answer {
    color: #666 ;
    font-size: 1rem;
    font-family: Arial, sans-serif;
    border: 1px solid #CCC;
    display: block;
    margin-left: 5px;
    margin-right: 5px;
    padding: 8px;
    text-decoration: none;
    text-align: left;
    font-weight: bold;
}

.chatbot-answer:hover {
    color: #666 ;
    text-decoration: none ;
}

/* Botones de acción del chat */
.siNoChat > a {
    color: #666 ;
    font-size: 1rem;
    font-family: Arial, sans-serif;
    border: 1px solid #CCC;
    display: block;
    margin-left: 5px;
    margin-right: 5px;
    padding: 8px;
    text-decoration: none;
    text-align: center;
    font-weight: bold;
}

.siNoChat > a:last-child {
    color: #FFF ;
    background: #017a61;
}

#ifrChat .chatbot-contactanos, #ifrChat a.chatbot-close, #ifrChat a.chatbot-link {
    color: #FFF;
}

#ifrChat a.chatbot-contactanos:hover {
    color: #FFF;
}

.bubble {
    background: #00ab87;
    color: #FFF;
    border-radius: 50%;
    width: 55px;
    height: 55px;
    display: flex;
    align-items: center;
    justify-content: center;
    position: relative;
    box-shadow: 2px 1px 5px black;
}

.icon-link, .icon-link:hover {
    color: #FFF;
    font-size: 25px;
}

.hvr-floating-nav-wrapper {
    z-index: 99;
}

/* Estilos para el label que aparece en hover */
.hvr-floating-nav-label-wrapper {
    position: absolute;
    right: 20px;
    background-color: #00855d;
    color: white;
    padding: 8px 40px 8px 20px;
    border-radius: 25px;
    display: flex;
    align-items: center;
    gap: 10px;
    opacity: 0;
    transform: translateX(20px);
    transition: all 0.3s ease;
    pointer-events: none;
    white-space: nowrap;
    z-index: -2;
}

.hvr-floating-nav-label-wrapper i {
    margin-right: 8px;
}

/* Mostrar el label cuando se hace hover sobre el bubble */
.bubble:hover .hvr-floating-nav-label-wrapper {
    opacity: 1;
    transform: translateX(0);
}

.bubble:hover   {
    transform: scale(1.1);
    transition: transform 0.3s ease;
}

button.lateral-icon-container, .lateral-icon-container {
    border: none;
    padding: 0;
    cursor: pointer;
    width: 55px;
    height: 55px;  
    background: #00ab87;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
}

i.lateral-icon {
    font-size: 25px;
}