.lp-modal-overlay {
    position: fixed; inset: 0; background: rgba(0,0,0,.65);
    display: none; align-items: center; justify-content: center;
    z-index: 9999; padding: 20px;
}
.lp-modal-overlay.is-open { display: flex; }
.lp-modal {
    position: relative; max-width: 92vw; max-height: 92vh;
    border-radius: 12px; overflow: hidden; background: #0000;
    box-shadow: 0 20px 50px rgba(0,0,0,.5);
    animation: lp-pop .2s ease-out;
}
@keyframes lp-pop { from { transform: scale(.96); opacity: 0; } to { transform: scale(1); opacity: 1; } }
  .lp-modal img { display: block; max-width: 100%; height: auto; }
  .lp-close {
    position: absolute; top: 8px; right: 8px;
    width: 36px; height: 36px; border-radius: 50%;
    border: none; background: rgba(0,0,0,.6); color: #fff;
    font: 700 18px/36px system-ui, -apple-system, "Segoe UI", Roboto, Arial, sans-serif;
    cursor: pointer;
}
.lp-close:focus { outline: 2px solid #fff; outline-offset: 2px; }
  body.lp-no-scroll { overflow: hidden; }
  /* toque extra: reduz em telas muito pequenas */
  @media (max-width: 420px) {
    .lp-close { width: 32px; height: 32px; font-size: 16px; line-height: 32px; }
}
