.review-portal {
  min-width: 0;
}

.review-portal .login-intro {
  margin-bottom: 8px;
}

.review-portal .login-note {
  margin: 0 0 22px;
}

.review-portal .login-note-break {
  display: none;
}

.review-portal .standard-edit-label {
  white-space: nowrap;
}

.review-portal .management-section {
  margin-top: 22px;
}

.review-portal .card h3 {
  font: 600 20px 'Space Grotesk', sans-serif;
  margin-bottom: 14px;
  overflow-wrap: anywhere;
}

.review-portal #reviewPermanentQr canvas,
.review-portal #reviewPermanentQr img {
  max-width: 100%;
  height: auto;
}

.review-portal .collection-heading {
  margin-top: 22px;
}

.review-portal > h2 {
  font: 700 25px 'Space Grotesk', sans-serif;
  margin-bottom: 12px;
}

.review-portal .card h2 {
  overflow-wrap: anywhere;
}

.review-portal .actions > * {
  max-width: 100%;
  text-align: center;
}

@media (max-width: 560px) {
  .review-portal .login-note {
    font-size: 13px;
    line-height: 1.55;
  }

  .review-portal #reviewLogin label {
    font-size: 11px;
  }

  .review-portal #reviewLogin button {
    white-space: nowrap;
  }
}

@media (max-width: 430px) {
  .review-portal:has(#reviewLogin) {
    padding-bottom: 32px;
  }

  .review-portal:has(#reviewLogin) > h1 {
    font-size: clamp(29px, 8.3vw, 34px);
    line-height: 1.12;
    margin-bottom: 16px;
  }

  .review-portal .login-intro {
    font-size: 15.5px;
    line-height: 1.5;
    margin-bottom: 14px;
  }

  .review-portal .login-note {
    font-size: clamp(13px, 3.74vw, 15px);
    line-height: 1.5;
    margin-bottom: 26px;
    text-wrap: pretty;
  }

  .review-portal .login-note-break {
    display: inline;
  }

  .review-portal #reviewLogin .fields {
    gap: 20px;
  }

  .review-portal #reviewLogin .actions {
    margin-top: 22px;
  }

  .review-portal #reviewLogin .status:empty {
    min-height: 0;
    margin-top: 0;
  }
}
