/* Registration phone verification. Mobile-first: 17/19 of the players who used the
   earlier flow were on a phone, so this is sized for a thumb and a soft keyboard.
   100dvh (not vh) because iOS Safari's toolbars make vh taller than the visible
   viewport, which is what previously hid the top of a bounded scroller. */
.pr-overlay{position:fixed;inset:0;z-index:100000;display:flex;align-items:flex-end;
  justify-content:center;background:rgba(6,8,20,.78);backdrop-filter:blur(4px);
  overscroll-behavior:contain}
body.pr-open{overflow:hidden}
.pr-sheet{position:relative;width:100%;max-width:440px;max-height:100dvh;overflow-y:auto;
  -webkit-overflow-scrolling:touch;background:#12162b;color:#eef1ff;
  border-radius:18px 18px 0 0;padding:28px 22px calc(26px + env(safe-area-inset-bottom));
  box-shadow:0 -12px 44px rgba(0,0,0,.5)}
@media(min-width:560px){.pr-overlay{align-items:center}
  .pr-sheet{border-radius:18px;max-height:88dvh}}
.pr-x{position:absolute;top:10px;right:12px;width:40px;height:40px;border:0;border-radius:50%;
  background:transparent;color:#8f98c4;font-size:28px;line-height:1;cursor:pointer}
.pr-x:hover{color:#eef1ff}
.pr-title{margin:2px 0 6px;font-size:1.25rem;font-weight:700}
.pr-lead{margin:0 0 4px;color:#a6aed6;font-size:.94rem}
.pr-number{margin:0 0 18px;font-size:1.22rem;font-weight:700;letter-spacing:.02em;
  word-break:break-all}
.pr-err{margin:0 0 12px;padding:10px 12px;border-radius:10px;background:rgba(255,86,110,.12);
  border:1px solid rgba(255,86,110,.35);color:#ffb3bd;font-size:.9rem}
/* 16px minimum: anything smaller makes iOS zoom the page on focus, which is what
   froze the lobby rails in the earlier incident. */
.pr-code{width:100%;box-sizing:border-box;margin:0 0 14px;padding:15px 16px;font-size:1.5rem;
  letter-spacing:.42em;text-align:center;border-radius:12px;border:1px solid #2b3157;
  background:#0c1024;color:#eef1ff}
.pr-code:focus{outline:none;border-color:#6f7cff;box-shadow:0 0 0 3px rgba(111,124,255,.25)}
.pr-btn{width:100%;min-height:52px;border:0;border-radius:12px;font-size:1rem;font-weight:700;
  cursor:pointer;background:linear-gradient(135deg,#6f7cff,#a45cff);color:#fff}
.pr-btn[disabled]{opacity:.55;cursor:default}
.pr-link{display:block;width:100%;margin-top:12px;padding:12px;border:0;background:transparent;
  color:#9aa3d0;font-size:.92rem;cursor:pointer;text-decoration:underline}
.pr-link[disabled]{opacity:.6;cursor:default;text-decoration:none}
/* The dial-code select sits inline with the number field on the register form. */
.reg-phone-row{display:flex;gap:8px}
.reg-phone-row select{flex:0 0 auto;max-width:42%;font-size:16px}
.reg-phone-row input{flex:1 1 auto;min-width:0}
