/* ========================================
   ESTILOS PARA IMÁGENES DE PERFIL
   Sistema de Control de Ingreso SENA
   ======================================== */

/* ===== IMÁGENES EN LISTAS/TABLAS ===== */

/* Imagen de perfil estándar para tablas */
.imagen-perfil-tabla {
    width: 50px !important;
    height: 50px !important;
    object-fit: cover !important;
    border-radius: 50% !important;
    border: 2px solid !important;
    display: block !important;
    margin: 0 auto !important;
}

/* Imagen de perfil para estado activo (verde) */
.imagen-perfil-tabla.estado-activo {
    border-color: #28a745 !important;
}

/* Imagen de perfil para estado inactivo (rojo) */
.imagen-perfil-tabla.estado-inactivo {
    border-color: #dc3545 !important;
}

/* ===== IMÁGENES DE PERFIL GRANDES ===== */

/* Imagen de perfil para vista de perfil */
.imagen-perfil-grande {
    width: 150px !important;
    height: 150px !important;
    object-fit: cover !important;
    border-radius: 50% !important;
    border: 3px solid #28a745 !important;
    box-shadow: 0 4px 8px rgba(0,0,0,0.1) !important;
    transition: all 0.3s ease !important;
}

.imagen-perfil-grande:hover {
    transform: scale(1.05) !important;
    box-shadow: 0 6px 12px rgba(0,0,0,0.15) !important;
}

/* ===== IMÁGENES DE PERFIL MEDIANAS ===== */

/* Imagen de perfil para tarjetas y modales */
.imagen-perfil-mediana {
    width: 100px !important;
    height: 100px !important;
    object-fit: cover !important;
    border-radius: 50% !important;
    border: 2px solid #007bff !important;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1) !important;
}

/* ===== IMÁGENES DE PERFIL PEQUEÑAS ===== */

/* Imagen de perfil para elementos compactos */
.imagen-perfil-pequena {
    width: 40px !important;
    height: 40px !important;
    object-fit: cover !important;
    border-radius: 50% !important;
    border: 1px solid #dee2e6 !important;
}

/* ===== IMÁGENES DE PERFIL MINIATURA ===== */

/* Imagen de perfil para miniaturas */
.imagen-perfil-miniatura {
    width: 30px !important;
    height: 30px !important;
    object-fit: cover !important;
    border-radius: 50% !important;
    border: 1px solid #dee2e6 !important;
}

/* ===== IMÁGENES EN NAVBAR ===== */

/* Imagen de perfil específica para la navbar */
.header .profile-info .image img.imagen-perfil-pequena {
    width: 40px !important;
    height: 40px !important;
    object-fit: cover !important;
    border-radius: 50% !important;
    border: 2px solid #28a745 !important;
    box-shadow: 0 2px 4px rgba(0,0,0,0.1) !important;
    transition: all 0.3s ease !important;
    display: block !important;
}

.header .profile-info .image img.imagen-perfil-pequena:hover {
    transform: scale(1.05) !important;
    box-shadow: 0 4px 8px rgba(0,0,0,0.15) !important;
    border-color: #20c997 !important;
}

/* ===== CONTENEDORES DE IMÁGENES ===== */

/* Contenedor para imagen de perfil con indicador de estado */
.contenedor-imagen-perfil {
    position: relative;
    display: inline-block;
}

/* Indicador de estado superpuesto */
.indicador-estado {
    position: absolute;
    bottom: -2px;
    right: -2px;
    width: 20px;
    height: 20px;
    border-radius: 50%;
    border: 2px solid white;
    display: flex;
    align-items: center;
    justify-content: center;
    font-size: 10px;
    color: white;
}

.indicador-estado.activo {
    background-color: #28a745;
}

.indicador-estado.inactivo {
    background-color: #dc3545;
}

/* ===== RESPONSIVE ===== */

/* Ajustes para dispositivos móviles */
@media (max-width: 768px) {
    .imagen-perfil-grande {
        width: 120px !important;
        height: 120px !important;
    }
    
    .imagen-perfil-mediana {
        width: 80px !important;
        height: 80px !important;
    }
    
    .imagen-perfil-tabla {
        width: 40px !important;
        height: 40px !important;
    }
    
    .header .profile-info .image img.imagen-perfil-pequena {
        width: 35px !important;
        height: 35px !important;
    }
}

@media (max-width: 576px) {
    .imagen-perfil-grande {
        width: 100px !important;
        height: 100px !important;
    }
    
    .imagen-perfil-mediana {
        width: 60px !important;
        height: 60px !important;
    }
    
    .imagen-perfil-tabla {
        width: 35px !important;
        height: 35px !important;
    }
    
    .header .profile-info .image img.imagen-perfil-pequena {
        width: 30px !important;
        height: 30px !important;
    }
}

/* ===== UTILIDADES ===== */

/* Clase para forzar dimensiones */
.forzar-dimensiones {
    width: inherit !important;
    height: inherit !important;
    object-fit: cover !important;
}

/* Clase para mantener proporción */
.mantener-proporcion {
    object-fit: cover !important;
    object-position: center !important;
}

/* Clase para imagen con borde personalizado */
.borde-personalizado {
    border-style: solid !important;
    border-width: 2px !important;
    box-sizing: border-box !important;
}
