/*
 * Spine step 4 — the roster screens.
 *
 * Layout only. Every colour, size, radius and duration is a token; this file
 * introduces no new visual language and authors no component. Where a screen
 * needs a control it renders one from app/components/ui/.
 */

/* The code and its copy control. Baseline-aligned rather than centred: the code
   is display-sized and centring drags the button down past the card's optical
   centre. */
.invite-code-row {
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  gap: var(--space-4);
}

.invite-code-row .invite-code { margin-top: 0; }

/* The player record page's stack of fields (D170: the sign-in screen's
   `auth-stack` it used to borrow). */
.membership-form {
  display: flex;
  flex-direction: column;
  gap: var(--space-4);
}

