/* Reserve scroll space only in the focused form's own scroll container. */
html .play77-input-scroll {
    padding-top: var(--play77-input-top) !important;
    padding-bottom: var(--play77-input-padding) !important;
    scroll-behavior: auto !important;
    overscroll-behavior-y: contain;
    -webkit-overflow-scrolling: touch;
}
/* A fixed footer must join the form so it can be scrolled above the keyboard. */
html.play77-keyboard-open body .play77-form-bottom {
    position: static !important;
    width: 100%;
    max-width: 100%;
    padding: 20px 0 16px;
    transform: none;
}
html.play77-keyboard-active body > #tabBar { visibility: hidden; pointer-events: none; }
html.play77-keyboard-open body > .gax-floating-service { visibility: hidden; }
/* Deposit iframes have a bounded app but an auto-height inner main. */
html.play77-keyboard-open body.gax-deposit-page #app { overflow-y: auto; }
/* The drawer's code input sits in its footer, outside its usual main scroller. */
html.play77-keyboard-open body.gax-home-page .gax-home-drawer { overflow-y: auto; }
html.play77-keyboard-open body.gax-home-page .gax-home-drawer-main {
    flex: none;
    min-height: auto;
    overflow: visible;
}
/* Safari may zoom a focused field below 16px, independently of keyboard resize. */
@supports (-webkit-touch-callout: none) {
    html body .play77-pin-entry > input,
    html body .play77-search-panel-bar input { font-size: 16px; }
    html body.gax-home-page .play77-drawer-code input {
        font-size: max(16px, calc(var(--drawer-unit, 5px) * 3.733333));
    }
    html body #auth_window .gax-field input {
        font-size: max(16px, min(4.533322vw, 23.573322px));
    }
}
