table.tbl-config-params {
    text-align: justify!important;
}
/*
table.tbl-config-params th {
    text-align: left!important;
}
*/

.si-container {
    display: grid;
    place-items: center;
    /* height: 100vh; */
}

select#condiciones {
    width: 100%;
}

div#logo-preview-wrapper {
    margin-bottom: 10px;
}

img#logo-preview {
    max-width: 150px;
}

div#sac-output {
    box-sizing: border-box;
    /*float: left;*/
    width: 100%;
    max-width: 800px;
    height: 400px;
    overflow: auto;
    margin: 0;
    /*padding: 20px;*/
    border-radius: 2px;
    color: #eee;
    background-color: #333;
}

#sac-output {
    scroll-behavior: smooth;
}

div#sac-panel {
    box-sizing: border-box;
    /*float: right;*/
    width: 100%;
    padding-top: 5px;
}

div#sac-user-info {
    display: none;
}

textarea#sac_chat {
    width: 100%;       /* Ocupa todo el ancho de su contenedor */
    max-width: 800px;  /* Límite opcional de expansión horizontal */
    height: 150px;     /* Altura inicial fija */
    padding: 10px;     /* Espacio interno para que el texto no toque los bordes */
    box-sizing: border-box; /* Crucial para que el padding no aumente el tamaño total */
}

/*
ul#sac-messages {
    list-style-type: none;
}
*/

.btn-contenedor {
    display: flex!important; /* Forzamos el comportamiento flex */
    flex-direction: row; /* Alineación horizontal */
    justify-content: space-between; /* Empuja los grupos a los extremos */
    align-items: center;
    width: 100%;
    flex-wrap: nowrap; /* PROHIBIDO saltar de línea */
    gap: 10px; /* Espacio entre los botones de la izquierda */
    /*padding: 10px;*/
    box-sizing: border-box;
}

.btn-group-left, 
.btn-group-right {
    display: flex;
    flex-direction: row;
    align-items: center;
    gap: 8px; /* Espacio interno entre los botones de cada grupo */
    flex-shrink: 0; /* Evita que los grupos se achiquen o colapsen */
}

/* Opcional: si el grupo de la derecha está vacío, 
   esto asegura que no afecte al diseño */
.btn-group-right:empty {
    display: none;
}

a#btn-enviar, a#btn-enviar-voice {
    /*float: right;*/
    display: none;
}

a#btn-enviar a#btn-adjuntar {
    text-decoration: none!important;
}

.a-btn-enviar {
    white-space: nowrap; /* Evita que el texto del botón se parta en dos */
}

span.required, span.text-danger {
    color: red;
}

/*
.a-btn-push {
    margin-left: auto; /* Esto empuja el botón a la derecha 
}
*/

input[type="date"] {
    padding: 10px;
    border: 1px solid #ccc;
    border-radius: 5px;
    font-family: Arial, sans-serif;
    color: #333;
}

div#preview-container {
    margin-top: 10px;
}

img#preview-img {
    max-width: 200px; 
    display: none; 
    border: 1px solid #ccc; 
    padding: 5px;
}

span.span-alert {
    display:none;
    color: red;
    font-size: .7em;
}

input#file-input
, span#file-name-display {
    display:none;
}

div#voice-preview-container
, a#stop-recording
, a#cancel-recording {
    display:none;
}

div#voice-preview-container {
    margin-top:10px;
}

/* Cambia el color del icono del calendario en Chrome/Edge */
input[type="date"]::-webkit-calendar-picker-indicator {
    cursor: pointer;
    filter: invert(0.5); /* Oscurece el icono */
}

span.span-chat-time {
    font-size: .6em;
}

span.sac-chat-date {
    font-size: .8em;
}

.li-ver-anteriores, .sac-date-separator {
    text-align: center;
    list-style: none; /* Quita el bullet */
    list-style-type: none; /* Asegura compatibilidad */
}