/* Full-screen shell for any page using [kanojo_psych_card].
   Other WordPress pages are not affected. */
html:has(.kanojo-psych-card-container),
body:has(.kanojo-psych-card-container) {
  overflow: hidden !important;
  overscroll-behavior: none !important;
}
body:has(.kanojo-psych-card-container) .kanojo-psych-card-container {
  position: fixed !important;
  inset: 0 !important;
  width: 100vw !important;
  max-width: none !important;
  height: 100dvh !important;
  margin: 0 !important;
  z-index: 2147482000 !important;
  background: #101322 !important;
}
body:has(.kanojo-psych-card-container) iframe.kanojo-psych-card-frame {
  display: block !important;
  position: absolute !important;
  inset: 0 !important;
  width: 100% !important;
  height: 100% !important;
  max-height: none !important;
  border: 0 !important;
  border-radius: 0 !important;
}

/* v2.22: The Cocoon/WordPress footer logo and copyright were visibly
   overlaid on the player's hand on mobile Safari. Only hide them when
   this specific game shortcode is on the page. Never change the rest
   of the site's header/footer or the iframe's game elements. */
body:has(.kanojo-psych-card-container) :is(
  #footer, #footer-in, #footer-bottom, #navi-footer,
  .footer-container, .footer-bottom, .footer-bottom-content,
  .footer-bottom-logo, .footer-site-logo-image, .copyright,
  .mobile-footer-menu-buttons
) {
  display: none !important;
  visibility: hidden !important;
  opacity: 0 !important;
  pointer-events: none !important;
}
/* The root stacking context may sit above the full-screen iframe; keep
   footer navigation hidden on the game page even in transformed layouts. */
body:has(.kanojo-psych-card-container) footer#footer,
body:has(.kanojo-psych-card-container) .footer-bottom-logo,
body:has(.kanojo-psych-card-container) .copyright {
  display:none !important;
}
