One card is carrying three different kinds of thing, drawn identically and stacked in one column:
| Kind | Which rows | What you do with it |
|---|---|---|
| Settings | Invite-only gate switch · Invites per user · Daily limit | Change — rarely |
| Numbers | The Codes row · the WHERE FROM table · "0 became accounts · 0 still waiting" | Read — every time |
| Actions | Mint codes · Revoke · Waitlist | Press — the decision moment |
| WHERE FROM | OUT | UNUSED |
|---|---|---|
| Shared by users | ||
| From their own quota | 4 | 4 |
| Official — from HOOP | ||
| Minted by you | 0 | 0 |
| Emailed to waiting list | 0 | 0 |
Three cards, each with a kind label
One card becomes three, each with a kind label (Gate / Rules / Codes). Nothing is removed — things are only grouped. The three-line Daily-limit explanation moves to the foot of its card instead of swelling a settings row into a paragraph.
Smallest change, easiest to ship. Everything you have today stays exactly where it is — the eye can finally tell a setting from a number.
Still one long column; the scroll barely shortens. It tidies the mess but never answers "what did I open this screen to find out".
One status line, one row of numbers, detail folded away
"Is the gate open" becomes the first sentence on the screen — it is why you opened it. The four numbers that matter collapse into one strip. The WHERE FROM table folds away behind a one-line summary. Buttons get a rank: Mint is the solid primary, the other two are secondary.
Highest density: one screen answers "is the gate on / how many codes are out there / how many are waiting". The breakdown is not something you read every visit, so it should not permanently own half the screen.
One extra tap for the breakdown. The four numbers need their scope pinned down first (see the red note above) — four numbers side by side invite comparison even harder than a table does.
This screen answers "how are things"; doing happens on the pages that own it
This screen stops doing things: the gate switch, two rules, and two "summary + go in" doorways.
Mint / Revoke move into the AdminCodesScreen that already exists (added in v2.431);
waiting-list actions move into the AdminWaitlistScreen that has existed for weeks.
Those two pages already exist — this card duplicates them: same numbers, same actions, each place doing half the job. When one thing lives in one place, this screen can never be overloaded again — and being overloaded is exactly how it got here.
One hop further to act. Biggest change: the buttons and their dialogs have to move, and those two pages must be checked for gaps first — Revoke currently exists only on this card.
C, with B as second choice. Not on looks: this card is cluttered because it is trying to be a dashboard and a control panel at once — v2.431 gave codes their own page, the waiting list has had one for weeks, and this card still keeps a second copy of both the numbers and the buttons. A tidies what is in front of you today, but in six months it will fill up the same way again.
⚠️ All three are layout drafts, not final visuals: sizes and spacing follow the app's current dark-card language,
but real colours, radii and icons must be checked against DESIGN_SYSTEM at build time. The numbers shown are the real ones from your screenshot (4 / 4 / 0 / 0).