﻿/* ==========================================
CONTACTOOVERLAY COMPONENT
========================================== */
/* Etiqueta: <div id="ContactoOverlay" class="Contacto-overlay">
   ID: ContactoOverlay
   Class: Contacto-overlay
*/
.Contacto-overlay {
    position: fixed;
    left: 0;
    right: 0;
    bottom: 65px;
    height: 0;
    z-index: 15000;
    overflow: hidden;
    transition: height 0.45s ease;
    pointer-events: none;
    left: 50%; /* Mueve el borde izquierdo al centro exacto */
    transform: translateX(-50%); /* Recula la mitad del ancho del elemento para centrarlo perfecto */

}

    /* Clase de estado para mostrar el overlay animado */
    .Contacto-overlay.show {
        height: calc(100vh - 65px);
        pointer-events: auto;
    }

/* Etiqueta: <div class="Contacto-window">
   Class: Contacto-window
*/
.Contacto-window {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    background: #fff;
    overflow: hidden; /* Ya no hace scroll */
    border-radius: 21px 21px 0 0;
    box-sizing: border-box;
    box-shadow: 0 0 10px rgba(0,0,0,.5);
    margin-top: 10px;
}
/* Etiqueta: <span id="txtHeaderWa" class="txt-header">
   ID: txtHeaderWa
   Class: txt-header
*/
.txtContacto-header {
    font-size: 20px;
    font-weight: 600;
    user-select: none;
}
.Contacto-header {
    flex-shrink: 0;
    background-color: transparent;
    margin-top: 5px;
    z-index: 10;
    height: 80px;
    display: flex;
    cursor: grab;
    border-bottom: 0.5px solid #c7c7c7;
    align-items: center;
    justify-content: space-between;
    padding: 0px 16px;
}
.Contacto-drag-area {
    position: absolute;
    top: 3px;
    left: 50%;
    transform: translateX(-50%);
    margin-top: 10px;
    width: 60px;
    height: 12px;
    align-items: flex-start;
    justify-content: center;
    cursor: grab;
    z-index: 2;
}
.Contacto-drag-area:active {
    cursor: grabbing;
}

.Contacto-drag-pill {
    width: 42px;
    height: 5px;
    border-radius: 999px;
    background: rgba(0, 0, 0, 0.25);
}
.exitContacto-arrowhelp {
    display: none;
    align-items: center;
    justify-content: center;
    width: 28px;
    height: 100%;
    margin-right: 6px;
    font-size: 28px;
    line-height: 1;
    color: #444;
    flex: 0 0 28px;
    cursor: pointer;
    user-select: none;
}
/* Etiqueta: <button id="btnIconWa" class="Contacto-icon">
   ID: btnIconWa
   Class: Contacto-icon
*/
.Contacto-back {
    border: none;
    background: transparent;
    font-size: 24px;
    line-height: 1;
    cursor: none;
    padding: 0;
    user-select: none;
    display: flex;
    align-items: center;
    justify-content: center;
}
#ContactoDragHandle {
    touch-action: none; /* Bloquea el scroll nativo del dedo solo en el handle */
}

#ContactoHeader {
    touch-action: none; /* Bloquea el scroll nativo del dedo solo en el handle */
}
/* ==========================================
   SCROLLBAR - CONTACTO CONTENT (CORREGIDO)
   ========================================== */

/* 1. Estructura Base y Navegadores Firefox / Estándar */
.Contacto-content {
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
    width: 100%;
    height: 100%;
    overflow-y: auto;
    overflow-x: hidden;
    padding: 10px;
    box-sizing: border-box;
    /* Estándar (Firefox) */
    scrollbar-width: none;
    scrollbar-color: #c7c7c7 transparent;
}

    /* 2. Motores WebKit (Chrome, Edge, Safari, Opera) */
    .Contacto-content::-webkit-scrollbar {
        width: 6px;
        height: 6px;
    }

    .Contacto-content::-webkit-scrollbar-track {
        background: transparent;
    }

    .Contacto-content::-webkit-scrollbar-thumb {
        background: #c7c7c7;
        border-radius: 999px;
        transition: background .2s ease;
    }

        .Contacto-content::-webkit-scrollbar-thumb:hover {
            background: #8f8f8f;
        }

    .Contacto-content::-webkit-scrollbar-corner {
        background: transparent;
    }

    /* Eliminar flechas correctamente */
    .Contacto-content::-webkit-scrollbar-button {
        display: none !important;
        width: 0 !important;
        height: 0 !important;
    }

    /* 3. Control de Visibilidad mediante JavaScript */
    .Contacto-content.hide-scrollbar {
        scrollbar-width: none; /* Firefox */
    }

        .Contacto-content.hide-scrollbar::-webkit-scrollbar {
            display: none; /* WebKit */
        }

    .Contacto-content.visible-scrollbar {
        scrollbar-width: none; /* Firefox */
    }

        .Contacto-content.visible-scrollbar::-webkit-scrollbar {
            display: block; /* WebKit */
        }
/* Badge de Próximamente */
.Contacto-badge-coming-soon {
    display: inline-block;
    background-color: #e8f5e9;
    color: #2e7d32;
    font-size: 0.75rem;
    font-weight: 700;
    text-transform: uppercase;
    letter-spacing: 0.5px;
    padding: 3px 10px;
    border-radius: 12px;
    margin-bottom: 8px;
}

/* Contenedor de Iconos */
.Contacto-icons-wrapper {
    position: relative;
    width: 64px;
    height: 64px;
    margin-bottom: 12px;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* SVG Chat (Principal) */
.Contacto-svg-user {
    width: 50px;
    height: 50px;
    color: #25d366; /* Verde característico o usa el azul de tu marca #007bff */
}

/* SVG Lupa (Badge secundario) */
.Contacto-svg-key-badge {
    position: absolute;
    bottom: -2px;
    right: -2px;
    background-color: #007bff;
    color: #ffffff;
    border-radius: 50%;
    padding: 5px;
    display: flex;
    align-items: center;
    justify-content: center;
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.15);
}

    .Contacto-svg-key-badge svg {
        width: 13px;
        height: 13px;
    }

/* Textos */
.Contacto-info-title {
    font-size: 1.1rem;
    font-weight: 600;
    color: #2c3e50;
    margin: 0 0 8px 0;
}

.Contacto-info-description {
    font-size: 0.88rem;
    color: #6c757d;
    margin: 0;
    line-height: 1.4;
    max-width: 290px;
}
/* Formulario y Campos */
.Contacto-form {
    width: 100%;
    max-width: 320px;
    margin-top: 20px;
    display: flex;
    flex-direction: column;
    gap: 14px;
    text-align: left;
}

.Contacto-field-group {
    display: flex;
    flex-direction: column;
    gap: 5px;
}

.Contacto-label {
    font-size: 0.82rem;
    font-weight: 600;
    color: #333;
}

.Contacto-input-wrapper {
    position: relative;
    display: flex;
    align-items: center;
}

.Contacto-input-icon {
    position: absolute;
    left: 12px;
    color: #888;
    font-size: 1rem;
    pointer-events: none;
}

.Contacto-input, .Contacto-textarea {
    width: 100%;
    padding: 10px 12px 10px 38px;
    border: 1px solid #d0d0d0;
    border-radius: 8px;
    font-size: 0.9rem;
    outline: none;
    box-sizing: border-box;
    transition: border-color 0.2s ease, box-shadow 0.2s ease;
}

.Contacto-textarea {
    padding: 10px 12px;
    resize: vertical;
    min-height: 80px;
    font-family: inherit;
}

    .Contacto-input:focus, .Contacto-textarea:focus {
        border-color: #007bff;
        box-shadow: 0 0 0 3px rgba(0, 123, 255, 0.12);
    }

.Contacto-btn-submit {
    margin-top: 10px;
    margin-bottom: 40px;
    width: 100%;
    padding: 12px;
    background-color: #007bff;
    color: #fff;
    border: none;
    border-radius: 8px;
    font-weight: 600;
    font-size: 0.95rem;
    cursor: pointer;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 8px;
    transition: background-color 0.2s ease;
}

    .Contacto-btn-submit:hover {
        background-color: #0056b3;
    }
@media (min-width: 600px) {

        /* Clase de estado para mostrar el overlay animado */
        .Contacto-overlay.show {
            left: 50%; /* Mueve el borde izquierdo al centro exacto */
            transform: translateX(-50%); /* Recula la mitad del ancho del elemento para centrarlo perfecto */
            padding-left: 10px;
            padding-right: 10px;
        }
    .Contacto-window {
 
        margin-top: 20px;
      
    }
    .exitContacto-arrowhelp {
        display: none;
        
    }
  
    .Contacto-drag-area {
  
        display: flex;
    
    }
}
/* ==========================================
   ESTILOS MÓVIL (PANTALLAS HASTA 599px)
   ========================================== */
