/* Toura Passport STAGING 015E — bounded Member My Account mobile finish batch.
   Scope: My Account header stability, Refer & Invite viewport discipline,
   Member Card QR / hierarchy, Membership portal handoff, Wishlist CTA polish. */
@media(max-width:760px){
  /* Keep accepted universal header physically stationary on signed-in Member routes. */
  html.tp011i-auth-likely body.tp012a-member-route{padding-top:var(--tp011i-header-h,58px)!important}
  html.tp011i-auth-likely body.tp012a-member-route>.tp011i-app-header{
    position:fixed!important;top:0!important;left:0!important;right:0!important;z-index:4000!important;
  }

  /* iOS-safe overlay lane between fixed header and persistent bottom rail. */
  #memberReferralModal,#memberCardModal{
    top:var(--tp011i-header-h,58px)!important;
    bottom:calc(78px + env(safe-area-inset-bottom))!important;
    left:0!important;right:0!important;height:auto!important;min-height:0!important;
    padding:10px 12px!important;box-sizing:border-box!important;
    align-items:center!important;justify-items:center!important;overflow:hidden!important;
    overscroll-behavior:none!important;
  }
  #memberReferralModal .member-referral-card,
  #memberCardModal .member-card-sheet{
    width:min(520px,100%)!important;max-height:100%!important;height:auto!important;min-height:0!important;
    margin:auto!important;overflow-y:auto!important;overscroll-behavior:contain!important;
    -webkit-overflow-scrolling:touch!important;touch-action:pan-y!important;
  }
  #memberReferralModal .member-referral-card{padding:18px 20px 22px!important}
  #memberReferralModal .member-referral-close{
    position:sticky!important;top:0!important;z-index:5!important;display:grid!important;place-items:center!important;
    width:34px!important;height:34px!important;margin:-4px -4px -2px auto!important;border-radius:50%!important;
    background:#0b1f2d!important;
  }
  body.tp015e-overlay-lock{overflow:hidden!important;overscroll-behavior:none!important}

  /* Member Card: centered credential with scan-first validation identity. */
  #memberCardModal .member-card-sheet{border-radius:24px!important}
  #memberCardModal .member-card-body{padding:18px 22px 24px!important}
  #memberCardModal .member-card-qr-wrap{
    display:grid;grid-template-columns:118px minmax(0,1fr);gap:14px;align-items:center;
    margin:15px 0 14px;padding:12px;border:1px solid #dbe7e1;border-radius:16px;background:#f8fbf9;
  }
  #memberCardModal .member-card-qr-frame{
    width:118px;height:118px;padding:7px;box-sizing:border-box;border-radius:14px;background:#fff;
    border:1px solid #d9e4df;display:grid;place-items:center;
  }
  #memberCardModal .member-card-qr-frame img{display:block;width:100%;height:100%;object-fit:contain}
  #memberCardModal .member-card-qr-copy{display:grid;gap:4px;min-width:0}
  #memberCardModal .member-card-qr-copy small{font-size:8px;font-weight:900;letter-spacing:.14em;color:#2b8656;text-transform:uppercase}
  #memberCardModal .member-card-qr-copy strong{font-size:13px;line-height:1.25;color:#173247}
  #memberCardModal .member-card-qr-copy span{font-size:9px;line-height:1.4;color:#77857f}
  #memberCardModal .member-card-actions{display:grid!important;gap:8px!important}
  #memberCardModal .member-stamp-toggle:not(.tpb-ready){
    display:flex!important;background:#eef8f2!important;color:#246d49!important;border:1px solid #c8dfd0!important;
    box-shadow:0 7px 18px rgba(35,121,77,.07)!important;opacity:1!important;
  }
  #memberCardModal .member-stamp-toggle:not(.tpb-ready):after{content:none!important;display:none!important}
  #memberCardModal .member-stamp-toggle.tpb-ready{
    background:linear-gradient(135deg,#2f9a61,#23794d)!important;color:#fff!important;
    box-shadow:0 12px 26px rgba(35,121,77,.22)!important;
  }
  #memberCardModal .member-ready-visit-hint{
    margin:0 4px 2px;color:#7d8b84;font-size:9px;line-height:1.4;text-align:center;
  }

  /* Wishlist shortcut is visible at the bottom whenever an expanded preview has items. */
  #tpbProfile .member-marketplace-wishlist.tp012f-mobile-wishlist.is-expanded.has-items .member-marketplace-wishlist-actions{
    display:flex!important;justify-content:flex-end!important;
  }
  #tpbProfile .member-marketplace-wishlist.tp012f-mobile-wishlist .member-marketplace-wishlist-link{
    display:inline-flex;align-items:center;justify-content:center;gap:6px;min-width:118px;
    border:1px solid #dce8e2;color:#21764c;font-weight:850;text-decoration:none;
  }

  /* Canonical membership account surfaced inside the mobile My Account shell. */
  #tpbMembershipPortalView{padding:12px 14px 24px!important;box-sizing:border-box!important}
  #tpbMembershipPortalView .tp015e-membership-back{
    appearance:none;border:0;background:transparent;color:#2b7c55;font:800 12px/1.2 Inter,system-ui,sans-serif;
    padding:5px 2px 11px;cursor:pointer;
  }
  #tpbMembershipPortalMount .partner-network-portal{margin:0!important;border-radius:20px!important}
  #tpbMembershipPortalMount .network-portal-hero{padding:18px 18px 14px!important;gap:13px!important}
  #tpbMembershipPortalMount .network-portal-brand{align-items:flex-start!important;gap:12px!important}
  #tpbMembershipPortalMount .network-portal-logo-stage{width:66px!important;height:66px!important;border-radius:16px!important}
  #tpbMembershipPortalMount .network-portal-logo-stage .network-portal-logo{width:56px!important;height:56px!important}
  #tpbMembershipPortalMount .network-portal-brand h2{font-size:22px!important;line-height:1.05!important}
  #tpbMembershipPortalMount .network-portal-marquee{margin:12px 18px 0!important}
  #tpbMembershipPortalMount .network-portal-feature-grid{padding:12px 18px!important}
  #tpbMembershipPortalMount .network-portal-bottom{padding:2px 18px 18px!important}
  #tpbMembershipPortalMount #networkPortalBack{display:none!important}
}

@media(max-width:390px){
  #memberCardModal .member-card-qr-wrap{grid-template-columns:104px minmax(0,1fr);gap:11px}
  #memberCardModal .member-card-qr-frame{width:104px;height:104px}
}
