/* style.css - CSS do Frontend */
.custom-avatar-logged-user {
    display: flex;
    align-items: center;
    gap: 12px;
    font-family: inherit;
    max-width: 100%;
}

/* Alinhamentos */
.custom-avatar-logged-user.align-center {
    justify-content: center;
    text-align: center;
}

.custom-avatar-logged-user.align-right {
    justify-content: flex-end;
    text-align: right;
}

.custom-avatar-logged-user.align-left {
    justify-content: flex-start;
    text-align: left;
}

/* Container do avatar */
.custom-avatar-logged-user .avatar-container {
    flex-shrink: 0;
    display: flex;
    align-items: center;
    justify-content: center;
}

/* Imagem do avatar */
.custom-avatar-logged-user .avatar-img {
    display: block;
    max-width: 100%;
    height: auto;
    transition: all 0.3s ease;
    border: 2px solid transparent;
}

/* Shapes do avatar */
.custom-avatar-logged-user.shape-circle .avatar-img {
    border-radius: 50%;
}

.custom-avatar-logged-user.shape-square .avatar-img {
    border-radius: 0;
}

.custom-avatar-logged-user.shape-rounded .avatar-img {
    border-radius: 8px;
}

/* Container das informações do usuário */
.custom-avatar-logged-user .user-info {
    display: flex;
    flex-direction: column;
    gap: 4px;
    min-width: 0; /* Permite truncar texto se necessário */
}

/* Nome do usuário */
.custom-avatar-logged-user .user-name {
    font-weight: 600;
    color: currentColor;
    margin: 0;
    line-height: 1.2;
}

/* Função do usuário */
.custom-avatar-logged-user .user-role {
    font-size: 0.875em;
    opacity: 0.75;
    color: currentColor;
    margin: 0;
    line-height: 1.2;
    text-transform: capitalize;
}

/* Usuário não logado */
.custom-avatar-logged-user.not-logged-in {
    padding: 16px;
    border: 1px solid #e0e0e0;
    border-radius: 8px;
    background: #f9f9f9;
}

.custom-avatar-logged-user.not-logged-in .avatar-message {
    font-style: italic;
    opacity: 0.7;
    margin: 0;
    color: #666;
    text-align: center;
}

/* Efeitos hover */
.custom-avatar-logged-user .avatar-img:hover {
    transform: scale(1.05);
    border-color: rgba(0, 115, 170, 0.3);
}

/* Alinhamentos específicos para informações */
.custom-avatar-logged-user.align-center .user-info {
    text-align: center;
}

.custom-avatar-logged-user.align-right .user-info {
    text-align: right;
}

.custom-avatar-logged-user.align-left .user-info {
    text-align: left;
}

/* Variações de tamanho */
.custom-avatar-logged-user .avatar-img[width="32"],
.custom-avatar-logged-user .avatar-img[width="48"] {
    /* Avatares pequenos */
}

.custom-avatar-logged-user .avatar-img[width="32"] ~ .user-info .user-name,
.custom-avatar-logged-user .avatar-img[width="48"] ~ .user-info .user-name {
    font-size: 0.9em;
}

.custom-avatar-logged-user .avatar-img[width="32"] ~ .user-info .user-role,
.custom-avatar-logged-user .avatar-img[width="48"] ~ .user-info .user-role {
    font-size: 0.8em;
}

/* Responsividade */
@media (max-width: 768px) {
    .custom-avatar-logged-user {
        gap: 8px;
    }
    
    .custom-avatar-logged-user .user-name {
        font-size: 0.9em;
    }
    
    .custom-avatar-logged-user .user-role {
        font-size: 0.8em;
    }
}

@media (max-width: 480px) {
    .custom-avatar-logged-user {
        flex-direction: column;
        text-align: center;
        gap: 8px;
    }
    
    .custom-avatar-logged-user .user-info {
        text-align: center;
    }
    
    .custom-avatar-logged-user.align-left,
    .custom-avatar-logged-user.align-right {
        align-items: center;
    }
}

/* Acessibilidade */
.custom-avatar-logged-user .avatar-img:focus {
    outline: 2px solid #0073aa;
    outline-offset: 2px;
}

/* Suporte a RTL */
[dir="rtl"] .custom-avatar-logged-user.align-left {
    justify-content: flex-end;
    text-align: right;
}

[dir="rtl"] .custom-avatar-logged-user.align-right {
    justify-content: flex-start;
    text-align: left;
}

/* Print styles */
@media print {
    .custom-avatar-logged-user .avatar-img {
        print-color-adjust: exact;
    }
}

/* Dark mode support */
@media (prefers-color-scheme: dark) {
    .custom-avatar-logged-user.not-logged-in {
        background: #2c2c2c;
        border-color: #404040;
    }
    
    .custom-avatar-logged-user.not-logged-in .avatar-message {
        color: #ccc;
    }
}