.ty-avatar {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-family: "Open Sans", "Helvetica Neue", -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "PingFang SC", "Microsoft YaHei", Helvetica, Arial, sans-serif;
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  text-align: center;
  background: #ccc;
  color: #fff;
  white-space: nowrap;
  position: relative;
  vertical-align: middle;
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
  border: 2px solid #fff; }
  .ty-avatar__img {
    width: 100%;
    height: 100%; }
  .ty-avatar__icon {
    color: #fff; }
  .ty-avatar__text {
    position: absolute;
    left: 50%;
    -webkit-transform-origin: 0 center;
            transform-origin: 0 center;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%); }
  .ty-avatar__presence {
    position: absolute;
    bottom: 0;
    right: 0;
    border-radius: 50%;
    -webkit-box-shadow: 0 0 0 0.1rem #fff;
            box-shadow: 0 0 0 0.1rem #fff;
    height: 0.4em;
    width: 0.4em; }
    .ty-avatar__presence_online {
      background-color: #52c41a; }
    .ty-avatar__presence_busy {
      background-color: #f44336; }
    .ty-avatar__presence_away {
      background-color: #ff9800; }
    .ty-avatar__presence_offline {
      background-color: #bcc3ce; }
  .ty-avatar_circle {
    border-radius: 50%; }
    .ty-avatar_circle .ty-avatar__img {
      border-radius: 50%; }
  .ty-avatar_square {
    border-radius: 2px; }
  .ty-avatar_clickable {
    cursor: pointer; }
  .ty-avatar-group .ty-avatar {
    z-index: 1; }
    .ty-avatar-group .ty-avatar + .ty-avatar {
      margin-left: -0.7em; }
    .ty-avatar-group .ty-avatar:hover {
      z-index: 2; }
