/* Keep every page brand on the exact horizontal centerline. */
.topbar {
  position: sticky;
}

.topbar > .brand {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
  margin: 0 !important;
  max-width: calc(100% - 160px) !important;
}

.auth-centered-brand {
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  max-width: calc(100% - 210px);
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 18px;
  color: inherit;
  white-space: nowrap;
}

.auth-centered-brand strong {
  min-width: 0;
  overflow: hidden;
  text-overflow: ellipsis;
}

.game-header,
.history-header {
  position: relative;
}

.game-header > .brand,
.history-header > .history-brand {
  position: absolute !important;
  left: 50% !important;
  top: 50% !important;
  transform: translate(-50%, -50%) !important;
  width: max-content !important;
  max-width: calc(100% - 110px) !important;
  margin: 0 !important;
}

@media (max-width: 600px) {
  .topbar > .brand {
    max-width: calc(100% - 110px) !important;
  }

  .topbar > .brand b {
    overflow: hidden;
    text-overflow: ellipsis;
  }

  .auth-centered-brand {
    max-width: calc(100% - 112px);
    gap: 8px;
  }

  .auth-centered-brand .auth-bottom-brand-logo {
    width: 42px;
    height: 42px;
    flex-basis: 42px;
  }

  .auth-centered-brand strong {
    font-size: clamp(15px, 4.5vw, 19px);
  }
}
