/*
 * IslaMarket - Register Popup Mobile Fix
 * Version: 20260516-register-popup-mobile-position-v1
 *
 * Corrige el popup global "Únete gratis a IslaMarket" en móvil:
 * - baja el modal debajo del header
 * - mantiene la X visible y tocable
 * - evita que el contenido quede pegado arriba
 */

@media (max-width: 767px) {
  .im-register-popup[hidden] {
    display: none !important;
  }

  .im-register-popup:not([hidden]) {
    position: fixed !important;
    inset: 0 !important;
    z-index: 2147482000 !important;

    display: flex !important;
    align-items: flex-start !important;
    justify-content: center !important;

    padding:
      calc(env(safe-area-inset-top, 0px) + 112px)
      14px
      calc(env(safe-area-inset-bottom, 0px) + 118px) !important;

    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;
  }

  .im-register-popup__backdrop {
    position: fixed !important;
    inset: 0 !important;
  }

  .im-register-popup__dialog {
    position: relative !important;
    width: min(100%, 440px) !important;
    max-height: calc(100dvh - 230px) !important;
    margin: 0 auto !important;

    overflow-y: auto !important;
    overflow-x: hidden !important;
    -webkit-overflow-scrolling: touch !important;

    transform: none !important;
    translate: none !important;
  }

  .im-register-popup__close {
    position: absolute !important;
    top: 12px !important;
    right: 12px !important;
    z-index: 50 !important;

    width: 42px !important;
    height: 42px !important;
    min-width: 42px !important;
    min-height: 42px !important;

    display: inline-flex !important;
    align-items: center !important;
    justify-content: center !important;

    border-radius: 999px !important;
    border: 1px solid rgba(15, 23, 42, .12) !important;
    background: rgba(255, 255, 255, .96) !important;
    color: #12131A !important;
    box-shadow: 0 10px 26px rgba(15, 23, 42, .12) !important;

    font-size: 28px !important;
    line-height: 1 !important;
    opacity: 1 !important;
    visibility: visible !important;
    pointer-events: auto !important;
  }

  .im-register-popup__content {
    padding-top: 18px !important;
  }

  .im-register-popup__main {
    padding-top: 20px !important;
  }
}

@media (max-width: 390px) {
  .im-register-popup:not([hidden]) {
    padding-top: calc(env(safe-area-inset-top, 0px) + 104px) !important;
  }

  .im-register-popup__dialog {
    max-height: calc(100dvh - 214px) !important;
  }
}
