/* EASYPRINT MOBILE LANDING UPLOAD V2.66
   Mobile-only presentation. Desktop guest handoff, uploader, and modal remain unchanged.
   The guest landing button uses the pre-existing guest file selection and review flow.
*/
@media screen and (max-width: 1023px) {
  /* The handoff's hidden input and status node must not create a second CTA. */
  #home .ep-guest-landing-mobile-entry {
    position: absolute !important;
    inset: auto 0 auto 0;
    width: 100%;
    height: 0;
    min-height: 0;
    margin: 0 !important;
    padding: 0;
    border: 0;
    gap: 0;
    pointer-events: none;
  }
  #home .ep-guest-landing-mobile-entry .ep-guest-landing-choose,
  #home .ep-guest-landing-mobile-entry .ep-guest-landing-choose[hidden] {
    display: none !important;
  }
  #home .ep-hero-actions {
    position: relative;
  }
  #home .ep-guest-landing-mobile-entry .ep-guest-landing-message:not(:empty) {
    position: absolute;
    top: 53px;
    left: 0;
    width: 100%;
    box-sizing: border-box;
    padding: 0 8px;
    pointer-events: auto;
    color: #255875;
    font: 400 12px/1.4 Arial, Helvetica, sans-serif;
  }

  /* Existing V2.65 owns the dimensions of the ONE original hero upload CTA. */

  /* Guest review uses the desktop modal's exact iframe and upload code on mobile. */
  html.ep-guest-modal-open { overflow: hidden !important; }
  .ep-guest-modal-overlay {
    position: fixed;
    inset: 0;
    z-index: 2147483000;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    padding: max(10px, env(safe-area-inset-top)) max(10px, env(safe-area-inset-right))
             max(10px, env(safe-area-inset-bottom)) max(10px, env(safe-area-inset-left));
  }
  .ep-guest-modal-backdrop {
    position: absolute;
    inset: 0;
    background: rgba(17,49,80,.48);
    backdrop-filter: blur(3px);
  }
  .ep-guest-modal-window {
    position: relative;
    z-index: 1;
    box-sizing: border-box;
    width: 100%;
    max-width: 600px;
    height: 100%;
    max-height: 760px;
    min-height: 0;
    overflow: hidden;
    border-radius: 17px;
    border: 1px solid #d2e8f4;
    background: #fff;
    box-shadow: 0 24px 70px rgba(9,59,94,.23);
  }
  .ep-guest-modal-frame {
    display: block;
    width: 100%;
    height: 100%;
    border: 0;
    background: #fff;
  }
  .ep-guest-modal-close {
    position: absolute;
    z-index: 4;
    top: 10px;
    right: 10px;
    width: 33px;
    height: 33px;
    display: grid;
    place-items: center;
    border: 1px solid #d2e8f4;
    border-radius: 50%;
    background: #fff;
    color: #305b77;
    font: 22px/1 Arial, Helvetica, sans-serif;
    cursor: pointer;
  }
  .ep-guest-modal-close[aria-disabled=true] { opacity: .5; }
  .ep-modal-note {
    position: absolute;
    z-index: 5;
    left: 10px;
    right: 10px;
    bottom: 10px;
    pointer-events: none;
    text-align: center;
    color: #1b547b;
    font: 400 11px/1.4 Arial, Helvetica, sans-serif;
  }
}
@media screen and (max-width: 380px) and (max-height: 640px) {
  .ep-guest-modal-overlay { padding: 6px; }
  .ep-guest-modal-window { border-radius: 13px; }
}
@media screen and (max-width: 1023px) and (prefers-reduced-motion: reduce) {
  .ep-guest-modal-backdrop { backdrop-filter: none; }
}
/* Exactly 1024px is desktop-modal territory in V1, but V2.65's tablet CTA
   !important display rule can reveal the intentionally hidden original link.
   Correct that one seam without changing widths >= 1025px. */
@media screen and (min-width: 1024px) and (max-width: 1024px) {
  body #home.ep-hero-v2 .ep-hero-actions > a.ep-hero-primary.upload-btn[style*="display: none"] {
    display: none !important;
  }
}
