#lp-image-modal { box-sizing:border-box; position:fixed; inset:0; width:fit-content; max-width:calc(100vw - 32px); max-height:calc(100dvh - 32px); margin:auto; padding:48px 16px 12px; border:0; border-radius:14px; background:#fff; color:#25364a; overflow:auto; box-shadow:0 12px 60px #0005; }
#lp-image-modal::backdrop { background:rgba(12,24,38,.75); }
#lp-image-modal #lp-image-expanded { display:block; width:auto; height:auto; max-width:100%; max-height:calc(100dvh - 160px); object-fit:contain; margin:auto; }
#lp-image-modal .lp-image-close { position:absolute; top:8px; right:10px; display:flex; align-items:center; justify-content:center; width:36px; height:36px; padding:0; border:0; border-radius:50%; background:#eef5f8; color:#24516a; font:28px/1 Arial,sans-serif; cursor:pointer; }
#lp-image-modal .lp-image-close:hover { background:#d8f1fa; }
#lp-image-modal .lp-image-close:focus-visible { outline:2px solid #009dc3; outline-offset:2px; }
#lp-image-caption { margin:12px 0 0; text-align:center; font-size:14px; overflow-wrap:anywhere; }
.lp-product-image { cursor:zoom-in; }

/* Detalhes completos, sem o corte de texto aplicado aos cards. */
#lp-image-modal{width:860px;max-width:calc(100vw - 24px);padding:52px 24px 24px;font:14px/1.6 Arial,sans-serif;text-align:left}
#lp-image-modal .lp-detail-grid{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr);gap:24px;align-items:start}
#lp-image-modal .lp-detail-media{min-width:0;background:#f7f9fb;border-radius:10px;padding:10px}
#lp-image-modal #lp-image-expanded{width:100%;max-height:65dvh;object-fit:contain}
#lp-image-modal .lp-detail-content{min-width:0;overflow-wrap:anywhere}
#lp-image-modal #lp-image-caption{margin:0 0 8px;text-align:left;font-size:22px;line-height:1.3}
#lp-image-modal #lp-detail-code{font-size:12px;color:#667789;margin:0 0 16px}
#lp-image-modal #lp-detail-description{white-space:pre-wrap;display:block;overflow:visible;margin:0 0 20px;font-size:14px;line-height:1.6}
#lp-image-modal #lp-detail-discount{color:#16834b;margin:0 0 4px;font-size:13px}
#lp-image-modal #lp-detail-price{display:block;font-size:26px;margin:0 0 16px}
#lp-image-modal #lp-detail-contact{display:inline-flex;align-items:center;justify-content:center;min-height:44px;padding:10px 18px;border-radius:8px;background:#008fb9;color:white;text-decoration:none;font-weight:bold}
#lp-image-modal #lp-detail-contact:hover{background:#007b9e}
#lp-image-modal #lp-detail-contact:focus-visible{outline:3px solid #ec278d;outline-offset:3px}
#lp-image-modal [hidden]{display:none!important}
@media(max-width:600px){#lp-image-modal{padding:48px 16px 20px}.lp-detail-grid{gap:16px}#lp-image-modal .lp-detail-grid{grid-template-columns:minmax(0,1fr)}#lp-image-modal #lp-image-expanded{max-height:35dvh}#lp-image-modal #lp-image-caption{font-size:20px}#lp-image-modal #lp-detail-contact{width:100%}}

/* Fotos da loja usam o mesmo modal, sem informações de produto. */
.lp-gallery a{cursor:zoom-in}
#lp-image-modal.lp-photo-mode .lp-detail-grid{grid-template-columns:minmax(0,1fr);gap:12px}
#lp-image-modal.lp-photo-mode .lp-detail-content>:not(#lp-image-caption){display:none!important}
#lp-image-modal.lp-photo-mode #lp-image-expanded{width:auto;max-width:100%;max-height:calc(100dvh - 180px)}
#lp-image-modal.lp-photo-mode #lp-image-caption{text-align:center;font-size:14px;margin:0}

#lp-image-modal .lp-detail-media{position:relative}
#lp-image-modal .lp-photo-prev,#lp-image-modal .lp-photo-next{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:48px;padding:0;border:1px solid #ffffff80;border-radius:8px;background:#ffffffb8;color:#174b60;font:36px/1 Arial,sans-serif;cursor:pointer;box-shadow:0 2px 8px #0002}
#lp-image-modal .lp-photo-prev{left:8px}#lp-image-modal .lp-photo-next{right:8px}
#lp-image-modal .lp-photo-prev:hover,#lp-image-modal .lp-photo-next:hover{background:#fff}
#lp-image-modal .lp-photo-prev:focus-visible,#lp-image-modal .lp-photo-next:focus-visible{outline:3px solid #008fb9;outline-offset:2px}
#lp-photo-count{position:absolute;bottom:14px;left:50%;transform:translateX(-50%);padding:3px 10px;border-radius:20px;background:#183347bf;color:white;font-size:12px}
