.connection-state-wrapper {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;

  transition: transform 300ms ease, opacity 300ms ease;
  opacity: 1;

  &:not(.open) {
    transform: translateY(-3rem);
    opacity: 0;
  }

  &:not(.shown) {
    display: none;
  }
}

#ConnectionStatusOverlay {
  height: 2.9375rem;
  flex: 0 0 auto;
  display: flex;
  align-items: center;
  margin: 0.375rem 0.5rem;
  padding: 0 0.75rem;
  background: var(--color-yellow);
  border-radius: var(--border-radius-default);

  &.interactive {
    cursor: pointer;
  }

  > .Spinner {
    --spinner-size: 1.75rem;
  }

  > .state-text {
    flex: 1;
    color: var(--color-text-lighter);
    font-size: 0.9375rem;
    font-weight: 500;
    padding-bottom: 0.0625rem;
    margin-inline-start: 1.875rem;
    white-space: nowrap;
  }

  @media (max-width: 950px) {
    > .state-text {
      margin-inline-start: 1.25rem;
    }
  }

  .Transition {
    width: 100%;
    // https://dfmcphee.com/flex-items-and-min-width-0/
    // https://stackoverflow.com/questions/36247140/why-dont-flex-items-shrink-past-content-size
    min-width: 0;

    > div {
      display: flex;
      align-items: center;
      width: 100%;
    }
  }
}
