/**
 * Mobile tap — remove default rectangular flash; keep press feedback inside rounded shapes.
 */

a,
button,
input,
textarea,
select,
summary,
label,
[role="button"],
[tabindex]:not([tabindex="-1"]) {
    -webkit-tap-highlight-color: transparent;
    tap-highlight-color: transparent;
}

button:focus,
a:focus,
input:focus,
textarea:focus,
select:focus {
    outline: none;
}

button:focus-visible,
a:focus-visible,
[role="button"]:focus-visible,
input:focus-visible,
select:focus-visible {
    outline: 2px solid rgba(40, 216, 236, 0.55);
    outline-offset: 2px;
}

@media (hover: none) and (pointer: coarse) {
    button,
    a,
    input[type="button"],
    input[type="submit"],
    input[type="reset"],
    [role="button"],
    .tag-pill,
    .icon-circle,
    .donate-btn,
    .donate-modal-item,
    .donate-modal-close,
    .more-menu-item,
    .settings-segmented button,
    .play-related-exit-exit,
    .embed-auth-close,
    .embed-auth-google,
    .embed-auth-toggle,
    .embed-auth-submit,
    #play-comments-login-btn,
    #play-comments-send-btn,
    .btn-game-back,
    .nav-item,
    .control-btn,
    .v-btn:not(.edit-mode) {
        touch-action: manipulation;
    }

    /* Clip :active background to border-radius (WebKit sometimes paints square otherwise). */
    .tag-pill,
    .icon-circle,
    .donate-btn,
    .donate-modal-item,
    .donate-modal-close,
    .play-related-exit-exit,
    .embed-auth-close,
    .embed-auth-google,
    .embed-auth-toggle,
    .embed-auth-submit,
    #play-comments-login-btn,
    #play-comments-send-btn,
    .btn-game-back,
    .settings-segmented button,
    .more-menu-item,
    .nav-item {
        overflow: hidden;
        -webkit-background-clip: padding-box;
        background-clip: padding-box;
    }
}
