﻿.UserInfo {
    display: flex;
    padding: 5px 0;
    justify-content: space-between;
    align-items: center;
    align-self: stretch;
    border-bottom: 1px solid #fff;
}

a {
    text-decoration: none;
}

.gap-16{
    display: flex;
    gap: 16px;
}

.title-section-container {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: -10px;
    padding: 15px 0;
}

.User-Container {
    width: 100%;
    background: transparent;
    border: 0;
    color: var(--Blanco);
}

    .User-Container:focus {
        border: none;
        outline: none;
        box-shadow: none;
    }

    .User-Container::placeholder {
        color: white;
        opacity: 1; /* algunos navegadores ponen opacidad baja por defecto */
    }

.input-label-container {
    display: flex;
    flex-direction: column;
    gap: 16px;
    align-self: stretch;
    width: 100%;
}

.input-container-text {
    display: flex;
    padding: 3px 5px;
    align-items: center;
    align-self: stretch;
    border-radius: 5px;
    position: relative;
    width: 100%;
    border: 1px solid var(--S-PardoGrisaceo);
}

    .input-container-text:focus {
        outline: 1px solid var(--AzulUltraMar);
        border-color: var(--AzulUltramar);
    }

    .input-text:focus {
        outline: none;
        border: 0;
    }

.input-password {
    display: flex;
    align-items: center;
    gap: 10px;
    width: 100%;
    border-radius: 5px;
    padding: 0 10px;
    background: #fff;
    border: 1px solid var(--S-PardoGrisaceo);
}

    .input-password:focus-within {
        border-color: var(--P-AzulUltramar);
        box-shadow: 0 0 0 4px rgba(63, 81, 181, 0.2);
        background-color: #fff;
    }

.input-container-password {
    display: flex;
    padding: 3px 5px;
    align-items: center;
    align-self: stretch;
    width: 100%;
    border: 0;
}

    .input-container-password:focus {
        outline: none;
        border-color: none;
    }

.toggle-notification {
    display: flex;
    gap: 12px;
    align-items: center;
}


.switch {
    position: relative;
    display: inline-block;
    width: 34px;
    height: 21px;
}

    .switch input {
        opacity: 0;
        width: 0;
        height: 0;
    }

.slider {
    position: absolute;
    cursor: pointer;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    background-color: #ccc;
    -webkit-transition: 0.4s;
    transition: 0.4s;
}

    .slider:before {
        position: absolute;
        content: "";
        height: 17px;
        width: 17px;
        left: 2px;
        bottom: 2px;
        background-color: white;
        -webkit-transition: 0.4s;
        transition: 0.4s;
    }

input:checked + .slider {
    background-color: #00b0c6;
}

input:focus + .slider {
    box-shadow: 0 0 1px #00b0c6;
}

input:checked + .slider:before {
    -webkit-transform: translateX(14px);
    -ms-transform: translateX(14px);
    transform: translateX(14px);
}

.slider.round {
    border-radius: 34px;
}

    .slider.round:before {
        border-radius: 50%;
    }

.password-rules {
    list-style: none;
    padding: 0;
    margin-top: 5px;
}

    .password-rules li {
        font-size: 14px;
        margin: 2px 0;
    }

        .password-rules li.valid {
            color: green;
        }

        .password-rules li.invalid {
            color: red;
        }

.show-reglas-container {
    display: flex;
    flex-direction: column;
    gap: 5px;
}


.custom-accordion {
    border: 1px solid #d0d0d0;
    border-radius: 8px;
    overflow: hidden;
    width: 100%;
    background-color: #f8f8f8;
}

.accordion-header {
    padding: 10px 15px;
    cursor: pointer;
    background-color: #e8e8f0;
    display: flex;
    width: 100%;
    justify-content: space-between;
    align-items: center;
    font-weight: 600;
    color: #3c3c6c;
    border-bottom: 1px solid #ddd;
}

.accordion-body {
    padding: 15px;
    background-color: white;
}

.animated-accordion {
    overflow: hidden;
    animation: slideDown 300ms ease-out;
    transform-origin: top;
}

.img-logo-miembro {
    width: 80px;
    height: 80px;
    border-radius: 100px;
    aspect-ratio: 1/1;
    border: 2px solid #000;
}

.photo-profile-container {
    display: inline-block;
    position: relative;
}

.cam-container {
    position: absolute;
    bottom: 0; /* pegado abajo */
    right: 0; /* pegado a la derecha */
    background: white; /* opcional: un fondo para que se destaque */
    border-radius: 50%; /* redondo */
    padding: 2px; /* espacio alrededor del ícono */
    display: flex;
    align-items: center;
    justify-content: center;
    cursor: pointer;
}

@keyframes slideDown {
    0% {
        max-height: 0;
        opacity: 0;
        transform: scaleY(0.95);
    }

    100% {
        max-height: 500px; /* suficiente para el contenido */
        opacity: 1;
        transform: scaleY(1);
    }
}

.arrow {
    display: inline-block;
    transition: transform 0.3s ease;
    font-size: 1.1rem;
}

    .arrow.rotated {
        transform: rotate(180deg);
    }

.search-bar {
    display: flex;
    padding: 8px 9px;
    align-items: center;
    gap: 8px;
    align-self: stretch;
    border-radius: 8px;
    border: 1px solid #fff;
}

.checkbox-table {
    width: 18px;
    height: 18px;
    appearance: none;
    border: 2px solid var(--S-GrisTele);
    border-radius: 4px;
    background-color: white;
    cursor: pointer;
    position: relative; /* Necesario para posicionar ::after */
    display: inline-block;
    vertical-align: middle;
}

    .checkbox-table:checked {
        background-color: var(--D-AzulTurquesa);
        border-color: var(--D-AzulTurquesa);
    }

        .checkbox-table:checked::after {
            content: "✔";
            color: white;
            font-size: 12px;
            font-weight: bold;
            position: absolute;
            top: 50%;
            left: 50%;
            transform: translate(-50%, -50%);
            line-height: 1;
            pointer-events: none;
        }

.custom-select {
    padding: 8px 26px 8px 12px;
    border: none;
    border-radius: 8px;
    background: #fff;
    color: #000;
    font-size: 14px;
    appearance: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    cursor: pointer;
    background-image: url("data:image/svg+xml;utf8,<svg xmlns='http://www.w3.org/2000/svg' width='8' height='9' viewBox='0 0 8 9' fill='none'><path d='M3.62326 6.07L1.22526 3.329C0.942261 3.0065 1.17226 2.5 1.60176 2.5H6.39776C6.49388 2.49992 6.58799 2.52754 6.66882 2.57957C6.74964 2.6316 6.81376 2.70582 6.85349 2.79335C6.89321 2.88087 6.90687 2.978 6.89282 3.07309C6.87877 3.16818 6.83761 3.2572 6.77426 3.3295L4.37626 6.0695C4.32933 6.1232 4.27145 6.16625 4.20652 6.19574C4.14158 6.22523 4.07108 6.24049 3.99976 6.24049C3.92844 6.24049 3.85794 6.22523 3.79301 6.19574C3.72807 6.16625 3.67019 6.1232 3.62326 6.0695V6.07Z' fill='black'/></svg>");
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 10px;
}

    /* Estilo al enfocar */
    .custom-select:focus {
        outline: none;
        box-shadow: 0 0 0 2px var(--P-AzulUltramar);
    }

.cb-custom {
    border-radius: 5px;
    width: 100%;
    padding: 3px 5px;
    border: 1px solid var(--S-PardoGrisaceo);
}


.dot {
    width: 10px;
    height: 10px;
    border-radius: 50%;
    display: inline-block;
    background-color: var(--dot-color, #C1C5D3);
    /* glow simple del mismo color */
    filter: drop-shadow(0 0 6px var(--dot-color, #C1C5D3));
}

.contenedor-estado {
    display: flex;
    gap: 8px;
    align-items: center;
}

@keyframes pulse {
    0% {
        box-shadow: 0 0 0 0 rgba(4, 188, 153, 0.8);
    }

    70% {
        box-shadow: 0 0 0 12px rgba(4, 188, 153, 0);
    }

    100% {
        box-shadow: 0 0 0 0 rgba(4, 188, 153, 0);
    }
}

/* Estado: Inactivo */
.dot-activo {
    background-color: var(--D-VerdeLuminoso);
    box-shadow: 0 0 10px rgba(4, 188, 153, 0.8);
}

.dot-inactivo {
    background-color: var(--D-RojoTrafico);
    box-shadow: 0 0 10px rgba(237, 26, 57, 0.5);
}

/* PENDIENTE */
.dot-pendiente {
    background-color: var(--D-AmarilloTrafico);
    box-shadow: 0 0 10px rgba(255, 211, 0, 0.5);
}

/* DESCONOCIDO */
.dot-desconocido {
    background-color: var(--S-GrisTele);
    box-shadow: 0 0 10px rgba(193, 197, 211, 0.5);
}

/* SUSPENDIDO */
.dot-suspendido {
    background-color: var(--S-AzulTrafico);
    box-shadow: 0 0 10px rgba(2, 29, 163, 0.5);
}

.data-member-data-container {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    width: 100%;
}

.input-text {
    display: flex;
    align-self: stretch;
    width: 100%;
    padding: 0;
    border: 0;
    align-items: center;
}

.input-bg-white {
    background: #fff;
}

.forms-container-aditional {
    display: flex;
    flex-direction: column;
    align-items: flex-start;
    align-self: stretch;
}

.aditional-form {
    display: flex;
    height: 72px;
    flex-direction: column;
    justify-content: space-between;
    align-items: flex-start;
    align-self: stretch;
}

.aditional-form-container {
    display: flex;
    height: 72px;
    padding: 0 15px;
    justify-content: space-between;
    align-items: center;
    flex-shrink: 0;
    align-self: stretch;
}

.input-aditional-form-container {
    display: flex;
    align-items: flex-start;
    align-self: stretch;
    border-bottom: 1px solid var(--D-AzulTurquesa, #00b0c6);
}

.input-form-aditional {
    display: flex;
    height: 22px;
    justify-content: center;
    align-items: center;
    gap: 5px;
    flex: 1 0 0;
    border: 0;
}

.adicional-form-content {
    display: none;
    flex-direction: column;
    gap: 12px;
    align-self: stretch;
}

.input-aditional-form {
    display: flex;
    flex-direction: column;
    gap: 8px;
    width: 100%;
}

.input-doble-container {
    display: flex;
    gap: 16px;
    align-items: center;
    align-self: stretch;
}

.form-inputs-add-delete {
    display: flex;
    flex-direction: column;
    align-self: stretch;
    gap: 16px;
}

.autocomplete-dropdown {
    position: absolute;
    top: 100%; /* debajo del input */
    left: 0;
    right: 0;
    background-color: #ffffff;
    border: 1px solid #ccc;
    z-index: 1000;
    list-style: none;
    padding: 0;
    margin: 2px 0 0 0; /* pequeño margen superior */
    max-height: 200px;
    overflow-y: scroll;
    box-shadow: 0px 4px 8px rgba(0, 0, 0, 0.1);
    border-radius: 4px;
    font-size: 14px;
}

    .autocomplete-dropdown li {
        padding: 8px 12px;
        cursor: pointer;
        white-space: nowrap; /* evita que se rompa el texto */
        overflow: hidden;
        text-overflow: ellipsis;
    }

        .autocomplete-dropdown li:hover {
            background-color: #f0f0f0;
        }