/* Bind full-screen layouts to the same visual viewport used by #app. */
#app .app-wrapper { height: 100% !important; min-height: 0 !important; }
#app .page-container > .slot-page {
  height: 100% !important;
  min-height: 0 !important;
  overflow: hidden !important;
}
#app .slot-page .core-content,
#app .slot-page .right-area { min-height: 0 !important; }
#app .slot-page .game-scroll-area,
#app .slot-page .platform-sidebar {
  overflow-y: auto !important;
  touch-action: pan-y;
  -webkit-overflow-scrolling: touch;
  padding-bottom: calc(16px + env(safe-area-inset-bottom, 0px)) !important;
}
.registration-captcha { min-width: 0; gap: 8px; }
.registration-captcha .custom-input { min-width: 0; width: 0; flex: 1; }
.captcha-refresh { flex: 0 0 120px; width: 120px; height: 44px; border: 0; padding: 0; background: #f9f7ed; color: #333; position: relative; border-radius: 6px; overflow: hidden; cursor: pointer; }
.captcha-refresh img { width: 120px; height: 44px; object-fit: contain; }
.captcha-refresh span:not(:empty) { position: absolute; inset: 0; display: grid; place-items: center; background: #f9f7ed; font-size: 12px; }
