.public-form-scroll {
  max-width: 100%;
  min-width: 0;
  overflow-x: auto;
  overscroll-behavior-x: contain;
}
.public-form-fields {
  min-width: 430px;
}
.public-form-fields .auth-field,
.public-form-fields .field {
  display: grid;
  grid-template-columns: 166px minmax(240px, 1fr);
  align-items: center;
  gap: 4px 12px;
  margin-bottom: 14px;
}
.public-form-fields label,
.public-form-fields small,
.pf-basic .pf-label,
.pf-basic .pf-hint,
.player-row label,
.player-row small,
.player-row .m-role {
  white-space: nowrap;
  letter-spacing: 0;
}
.public-form-fields .auth-field label,
.public-form-fields .field label {
  margin: 0;
}
.public-form-fields .auth-field small,
.public-form-fields .field small {
  grid-column: 2;
  margin: 0;
}
.public-form-fields .auth-field input,
.public-form-fields .field input {
  min-width: 0;
  height: 42px;
  border-radius: 8px;
}
.profile-form .pf-basic {
  overflow-x: auto;
}
.profile-form .pf-basic .pf-row {
  min-width: 438px;
  grid-template-columns: 180px minmax(240px, 1fr);
  align-items: center;
  gap: 4px 12px;
}
.profile-form .pf-basic .pf-label {
  padding-top: 0;
}
.profile-form .pf-basic .pf-hint {
  grid-column: 2;
  margin: 0;
}
.profile-form .pf-basic .pf-input {
  height: 42px;
  border-radius: 8px;
}
#tmMembers {
  margin-top: 14px;
}
.sf-row.player-row {
  min-width: 1040px;
  grid-template-columns: repeat(4, minmax(190px, 1fr)) 110px 80px;
  align-items: start;
}
.sf-row.player-row--solo {
  min-width: 790px;
  grid-template-columns: repeat(4, minmax(190px, 1fr));
}
.player-row .sf-field {
  display: grid;
  grid-template-rows: 20px 40px 20px;
  gap: 4px;
  min-width: 0;
}
.player-row .sf-field label,
.player-row .m-role {
  margin: 0;
  font-size: 12px;
  line-height: 20px;
  color: var(--txt-3);
}
.player-row .sf-field small {
  font-size: 12px;
  line-height: 20px;
  color: var(--txt-2);
}
.player-row input,
.player-row button {
  min-width: 0;
  height: 40px;
  border-radius: 8px;
  letter-spacing: 0;
  white-space: nowrap;
}
.player-row button:disabled,
#tmAdd:disabled {
  opacity: .5;
  cursor: not-allowed;
}
.setup-overlay .setup-box {
  width: min(640px, 100%);
  max-height: calc(100dvh - 40px);
  overflow-y: auto;
}
.slots .slot-dots {
  flex-wrap: nowrap;
}
.slots .slot-row {
  overflow-x: auto;
}
.slots .slot-row label,
.slots .slot-dots .dot {
  flex-shrink: 0;
  white-space: nowrap;
}
.topbar .navbar,
.topbar .topbar-right {
  min-width: 0;
  max-width: 100%;
  overflow-x: auto;
}
.topbar .navbar a,
.topbar .navbar button,
.topbar .topbar-right > * {
  flex-shrink: 0;
}
