/* Guest-only navigation controls: match the player-benefits back control. */
html body .login-action-screen.login-action-screen .standalone-page-header.standalone-page-header > .standalone-back-button.standalone-back-button,
html body .login-back.login-back.login-back,
html body .guest-shell.player-action-shell .player-action-page.common-tool-action-page > .player-action-page-header > .player-action-page-back,
html body.player-support-route .player-support-portal > .common-tool-support-header > .player-action-page-back {
  position: absolute !important;
  z-index: 2 !important;
  left: 14px !important;
  top: calc(env(safe-area-inset-top) + 11px) !important;
  width: 56px !important;
  min-width: 56px !important;
  max-width: 56px !important;
  height: 34px !important;
  min-height: 34px !important;
  max-height: 34px !important;
  margin: 0 !important;
  padding: 0 !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid #d9a52d !important;
  border-radius: 999px !important;
  background:
    radial-gradient(circle at 24% 31%, rgba(255, 255, 255, .82) 0 7%, transparent 17%),
    linear-gradient(rgba(255, 255, 255, .94), rgba(255, 249, 232, .95) 48%, rgba(237, 205, 135, .86)) !important;
  color: #0a2f5c !important;
  box-shadow:
    0 4px 9px rgba(120, 76, 8, .15),
    0 1px 0 rgba(255, 255, 255, .7),
    inset 0 1px 0 rgba(255, 255, 255, .96),
    inset 0 -2px 4px rgba(154, 93, 5, .16) !important;
  filter: none !important;
  transform: none !important;
}

html body .login-action-screen.login-action-screen .standalone-page-header.standalone-page-header > .standalone-back-button.standalone-back-button svg,
html body .login-back.login-back.login-back svg,
html body .guest-shell.player-action-shell .player-action-page.common-tool-action-page > .player-action-page-header > .player-action-page-back svg,
html body.player-support-route .player-support-portal > .common-tool-support-header > .player-action-page-back svg {
  width: 20px !important;
  height: 20px !important;
  color: inherit !important;
  stroke: currentColor !important;
}

/* Safari otherwise stacks a blue focus outline and a gold focus shadow. */
body .login-action-screen .register-page .register-page-card
  :is(.register-id-row, .register-password-row, .register-phone-row, .register-otp-row)
  > input:focus,
body .login-action-screen .register-page .register-page-card
  :is(.register-id-row, .register-password-row, .register-phone-row, .register-otp-row)
  > input:focus-visible {
  outline: none !important;
  box-shadow: none !important;
}

/* Keep one iOS scroll owner so the page remains draggable after the keyboard closes. */
html body .login-action-screen:has(.register-page) {
  height: 100dvh !important;
  min-height: 100dvh !important;
  max-height: none !important;
  overflow-x: hidden !important;
  overflow-y: auto !important;
  overscroll-behavior-y: contain !important;
  touch-action: pan-y !important;
  -webkit-overflow-scrolling: touch !important;
}

html body .login-action-screen:has(.register-page) > .register-page {
  height: auto !important;
  min-height: 100% !important;
  max-height: none !important;
  overflow: visible !important;
  touch-action: pan-y !important;
}

/* Registration-complete card: replace the empty full-width success strip. */
html body .login-action-screen .register-page-card:has(> .modal-icon.success:first-child) {
  padding: 26px 18px 18px !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  gap: 0 !important;
  border-color: rgba(193, 146, 45, .72) !important;
  background:
    radial-gradient(circle at 50% 0, rgba(235, 249, 244, .9), transparent 42%),
    #fffdf8 !important;
  box-shadow: 0 14px 34px rgba(84, 59, 18, .08) !important;
  text-align: center !important;
}

html body .login-action-screen .register-page-card > .modal-icon.success:first-child {
  width: 68px !important;
  min-width: 68px !important;
  height: 68px !important;
  min-height: 68px !important;
  margin: 0 0 14px !important;
  display: grid !important;
  place-items: center !important;
  border: 1px solid rgba(62, 151, 126, .28) !important;
  border-radius: 50% !important;
  background: linear-gradient(145deg, #eaf8f4, #d9f0ea) !important;
  color: #378f78 !important;
  box-shadow: 0 8px 22px rgba(54, 138, 115, .14), inset 0 1px rgba(255, 255, 255, .92) !important;
}

html body .login-action-screen .register-page-card > .modal-icon.success:first-child svg {
  width: 34px !important;
  height: 34px !important;
}

html body .login-action-screen .register-page-card:has(> .modal-icon.success:first-child) > .register-step-label {
  margin: 0 0 6px !important;
  padding: 4px 12px !important;
  border: 1px solid rgba(177, 132, 38, .3) !important;
  border-radius: 999px !important;
  background: #fff9e9 !important;
  color: #9b6d16 !important;
  font-size: 12px !important;
  line-height: 18px !important;
  font-weight: 700 !important;
}

html body .login-action-screen .register-page-card:has(> .modal-icon.success:first-child) > h2 {
  margin: 0 0 18px !important;
  color: #102f50 !important;
  font-size: 25px !important;
  line-height: 1.25 !important;
  font-weight: 850 !important;
  letter-spacing: -.02em !important;
}

html body .login-action-screen .register-page-card:has(> .modal-icon.success:first-child) > .notice {
  box-sizing: border-box !important;
  width: 100% !important;
  min-height: 72px !important;
  margin: 0 0 20px !important;
  padding: 14px 16px !important;
  display: grid !important;
  grid-template-columns: 22px minmax(0, 1fr) !important;
  align-items: center !important;
  gap: 11px !important;
  border: 1px solid rgba(66, 151, 128, .2) !important;
  border-radius: 16px !important;
  background: #edf8f5 !important;
  color: #397f6f !important;
  font-size: 14px !important;
  line-height: 1.55 !important;
  text-align: left !important;
  box-shadow: none !important;
}

html body .login-action-screen .register-page-card:has(> .modal-icon.success:first-child) > .notice svg {
  width: 22px !important;
  height: 22px !important;
  color: #3e9a82 !important;
}

html body .login-action-screen .register-page-card:has(> .modal-icon.success:first-child) > button.primary.full {
  width: 100% !important;
  min-height: 52px !important;
  margin: 0 !important;
  border-radius: 15px !important;
  font-size: 17px !important;
  font-weight: 800 !important;
  box-shadow: 0 8px 18px rgba(156, 106, 14, .16) !important;
}
