/* Fotos de produtos, uploads e PIX, seguindo a identidade existente. */
.product-gallery { position:relative; width:100%; height:100%; min-width:0; touch-action:pan-y; }
.product-gallery > .product-photo { width:100%; height:100%; object-fit:cover; display:block; }
.product-gallery > [data-gallery-open] { cursor:zoom-in; }
.product-photo-expand { position:absolute;z-index:4;right:12px;top:12px;width:42px;height:42px;border:1px solid #dbe6df;border-radius:50%;background:#fffffff0;color:#214e45;font-size:22px;cursor:pointer;box-shadow:0 3px 12px #132e2520; }
.product-gallery-controls { position:absolute; left:12px; right:12px; bottom:12px; display:flex; align-items:center; justify-content:space-between; gap:12px; }
.product-gallery-controls button { width:44px; height:44px; border:1px solid #dbe6df; border-radius:50%; background:#fff; color:#214e45; font-size:30px; line-height:1; cursor:pointer; box-shadow:0 3px 12px #132e2520; }
.product-gallery-controls span { border-radius:30px; padding:6px 12px; background:#ffffffed; color:#214e45; font-size:13px; }
.product-gallery-controls button:focus-visible { outline:3px solid #ec7055; outline-offset:2px; }
.product-photo-list { display:grid; grid-template-columns:repeat(auto-fit,minmax(120px,1fr)); gap:12px; width:100%; }
.product-photo-item { border:1px solid var(--line,#d6e2dc); border-radius:12px; padding:8px; background:var(--white,#fff); }
.product-photo-item img { width:100%; aspect-ratio:1; object-fit:cover; border-radius:8px; }
.product-photo-item p { margin:6px 0; font-size:12px; text-align:center; }
.product-photo-actions { display:flex; flex-wrap:wrap; justify-content:center; gap:6px; }
.product-photo-actions button { min-width:36px; min-height:40px; border:1px solid var(--line,#d6e2dc); background:transparent; color:inherit; border-radius:8px; cursor:pointer; }
.photo-preview:has(.product-photo-list) { height:auto; min-height:180px; padding:12px; align-items:start; }
.mp-admin-card { margin-top:24px; }
.mp-admin-card textarea,.pix-copy-code { width:100%; max-width:100%; overflow-wrap:anywhere; resize:vertical; }
.mp-webhook-url { display:block; word-break:break-all; padding:12px; border-radius:10px; border:1px solid var(--line,#d6e2dc); font:13px/1.5 monospace; }
.intro-video-preview video { width:min(100%,600px); max-height:320px; background:#122c28; border-radius:12px; }
.intro-upload-actions { display:flex; flex-wrap:wrap; gap:12px; margin:14px 0; }
.mp-status { padding:14px 16px; border-radius:12px; border:1px solid var(--line,#d6e2dc); background:var(--light-green,#edf3ed); margin:14px 0; }
.pix-copy { display:grid; gap:10px; margin:18px 0; }
.pix-copy label { font-size:13px; font-weight:600; }
.pix-copy textarea { min-height:78px; padding:12px; border:1px solid var(--line,#d6e2dc); border-radius:10px; background:var(--white,#fff); color:inherit; font:12px/1.5 monospace; }
.mp-qr-actions { display:flex; flex-wrap:wrap; gap:12px; }
.mp-qr-actions > * { flex:1 1 180px; }
.mp-pending-note { color:#a44632; line-height:1.5; }
[data-theme="dark"] .product-photo-item,[data-theme="dark"] .pix-copy textarea { background:#20392f; border-color:#385447; }
[data-theme="dark"] .mp-status { background:#20392f; border-color:#385447; }
@media(max-width:480px){.product-gallery-controls{left:8px;right:8px;bottom:8px}.product-photo-list{grid-template-columns:repeat(2,minmax(0,1fr))}.intro-upload-actions{flex-direction:column}}

.product-gallery-controls { z-index:3; }
.modal-hero .product-gallery { height:320px; }
.photo-preview .product-photo-item img { height:auto; aspect-ratio:1; }
.photo-preview.has-photos { height:auto; min-height:180px; padding:12px; align-items:start; }
.product-lightbox { width:min(1100px,calc(100% - 24px));height:min(850px,calc(100dvh - 24px));padding:54px 70px 48px;border:0;border-radius:20px;background:#101815;color:#fff;box-shadow:0 24px 80px #0009;overflow:hidden; }
.product-lightbox::backdrop { background:#07100de8;backdrop-filter:blur(7px); }
.product-lightbox img { width:100%;height:100%;object-fit:contain;display:block; }
.product-lightbox-close,.product-lightbox-step { position:absolute;z-index:2;display:grid;place-items:center;border:1px solid #ffffff50;background:#17251fee;color:#fff;cursor:pointer; }
.product-lightbox-close { right:14px;top:14px;width:42px;height:42px;border-radius:50%;font-size:28px; }
.product-lightbox-step { top:50%;width:48px;height:70px;border-radius:12px;font-size:42px;transform:translateY(-50%); }
.product-lightbox-step.previous { left:12px; }.product-lightbox-step.next { right:12px; }
.product-lightbox [data-lightbox-counter] { position:absolute;bottom:14px;left:50%;transform:translateX(-50%);padding:6px 12px;border-radius:20px;background:#17251fee;font-size:12px; }
@media(max-width:600px){.product-lightbox{padding:58px 16px 48px}.product-lightbox-step{top:auto;bottom:8px;width:44px;height:40px;font-size:30px;transform:none}.product-lightbox-step.previous{left:12px}.product-lightbox-step.next{right:12px}.product-photo-expand{right:8px;top:8px}}
