/* Acabamento único para marcas e pessoas, em qualquer contexto. */
:root{--identity-border-width:1px;--identity-border-color:#dce3eb;--identity-shadow:none;--identity-radius:7px;--identity-image-background:#fff}

.entity-avatar{--avatar-size:28px;display:inline-flex;position:relative;align-items:center;justify-content:center;width:var(--avatar-size);height:var(--avatar-size);min-width:var(--avatar-size);flex:0 0 var(--avatar-size);overflow:hidden;vertical-align:middle;border:0;background:#edf2f7;color:#526780;box-shadow:var(--identity-shadow);line-height:1;isolation:isolate}
.entity-avatar--brand{border-radius:var(--identity-radius);background:var(--identity-image-background)}
.entity-avatar--person{border-radius:var(--identity-radius)}
.entity-avatar--md{--avatar-size:34px}
.entity-avatar--lg{--avatar-size:44px}
.entity-avatar__fallback{font-size:calc(var(--avatar-size)*.35);font-weight:600;letter-spacing:.02em;user-select:none}
.entity-avatar__fallback::before{content:attr(data-initials)}
.entity-avatar img{position:absolute;inset:0;display:block;width:100%!important;height:100%!important;max-width:none;margin:0!important;border:0!important;border-radius:0!important;box-shadow:none!important;object-fit:contain;background:#fff;transform:none!important}
.entity-avatar--brand img{padding:2px}
.entity-avatar--person img{object-fit:cover;padding:0}
.entity-identity{display:inline-flex;align-items:center;gap:9px;max-width:100%;vertical-align:middle;line-height:1.35;text-align:left;color:inherit}
.entity-identity__name{min-width:0;overflow-wrap:anywhere}
.entity-empty{color:#778392}
.navbar .nav-link .entity-avatar,.nav-link>.entity-avatar,.navbar-brand>.entity-avatar{margin-right:7px}
.navbar .nav-link .entity-identity{vertical-align:middle}
.select2-results__option .entity-identity,.select2-selection__rendered .entity-identity{display:flex;min-width:0;padding:2px 0}
.select2-selection__rendered .entity-avatar{--avatar-size:24px}
.select2-results__option .entity-identity__name,.select2-selection__rendered .entity-identity__name{white-space:normal;overflow-wrap:anywhere}
.select2-container .select2-selection--single{box-sizing:border-box;display:flex;align-items:center;min-height:38px;height:38px;padding:0 .75rem}
.select2-container .select2-selection--single .select2-selection__rendered{display:flex;align-items:center;width:100%;height:100%;min-height:0;margin:0;padding:0 20px 0 0;line-height:1.35}
.select2-container .select2-selection--single .select2-selection__arrow{top:0;height:100%}
.select2-selection--single .select2-selection__rendered .entity-identity{padding:0;overflow:hidden}
.select2-selection--single .select2-selection__rendered .entity-identity__name{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}
#stepperInspecao .step-trigger>.entity-avatar{margin-right:8px}
/* Compatibilidade com imagens de edição/pré-visualização que precisam manter o id. */
img.profile-reg-xs,img.profile-reg-md{object-fit:contain;border:var(--identity-border-width) solid var(--identity-border-color);box-shadow:var(--identity-shadow);transform:none!important;vertical-align:middle;margin-top:0!important}
img.profile-reg-xs{width:28px;height:28px;border-radius:var(--identity-radius)}
img.profile-reg-md{width:34px;height:34px;border-radius:var(--identity-radius)}
img[src*="/profile/"].profile-reg-xs,img[src*="/profile/"].profile-reg-md,#profilePicturePreview{object-fit:cover;border-radius:var(--identity-radius)}
/* Select2 guarda a largura inicial; limita ao campo ao redimensionar a tela. */
.select2-container{max-width:100%}

/* O símbolo branco do Gioos usa o fundo azul da marca. */
.entity-avatar--system,.entity-avatar--system img{background:#007bff;color:#fff}

/* O contorno pertence à moldura e fica acima da foto, inclusive nos cantos. */
.entity-avatar::after{content:"";position:absolute;inset:0;z-index:2;box-sizing:border-box;border:var(--identity-border-width) solid var(--identity-border-color);border-radius:inherit;pointer-events:none}

/* Variantes da marca renderizadas no tamanho exato do avatar. */
.entity-avatar--system img{padding:0}

/* Marcas predominantemente brancas precisam de contraste sobre páginas claras. */
.entity-avatar--contrast,.entity-avatar--contrast img{background:#263342}
