/* A shared image frame keeps the print aligned at every screen width. */
.photo-preview{position:relative;width:100%;aspect-ratio:1;overflow:hidden;border:1px solid var(--sand-line,#e1d3ae);border-radius:22px;background:#f6edda;isolation:isolate}
.photo-preview #product-photo{position:absolute;inset:0;display:block;width:100%;height:100%;object-fit:contain;background:transparent;z-index:1}
.photo-preview .live-print{position:absolute;inset:0;display:block;width:100%;height:100%;overflow:visible;pointer-events:none;z-index:2;color:#f4f2e9}
.photo-preview .live-print[hidden]{display:none}
.photo-preview text{fill:currentColor;text-anchor:middle;paint-order:stroke fill;stroke:#7c211e;stroke-width:.7;stroke-opacity:.12}
.photo-preview .print-name{font-family:Impact,'Arial Narrow',Manrope,'Noto Sans Arabic',sans-serif;font-weight:400;letter-spacing:4px;unicode-bidi:plaintext}
.photo-preview .print-number{font-family:Impact,'Arial Narrow',Arial,sans-serif;font-weight:400;letter-spacing:18px;direction:ltr;unicode-bidi:isolate}
.preview-caption{display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:6px 16px;margin:13px 3px 0;font-size:11px;color:#5d614f}
.preview-caption #viewer-status{position:static;margin:0;text-align:start;font-size:inherit;color:inherit;pointer-events:auto;font-weight:800}
.preview-caption #preview-item{font-weight:500}
.product-gallery .photo-tabs{grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin-top:14px}
.product-gallery .photo-tabs button{flex-direction:column;justify-content:center;gap:7px;min-height:102px;padding:10px 5px;border-radius:15px;font-size:10px;line-height:1.4}
.product-gallery .photo-tabs img{width:58px;height:62px;object-fit:contain;flex-shrink:0;background:transparent}
.product-gallery .gallery-note{font-size:11px;line-height:1.65;margin-top:15px}
.product-gallery .preview-help{font-size:11px;line-height:1.65;margin-top:6px}
@media(max-width:700px){.photo-preview{border-radius:18px}.product-gallery .photo-tabs{gap:6px}.product-gallery .photo-tabs button{min-height:94px;font-size:9px;padding:8px 3px}.product-gallery .photo-tabs img{width:50px;height:56px}.preview-caption{font-size:10px}}
@media(max-width:360px){.product-gallery .photo-tabs button{font-size:8px}.product-gallery .photo-tabs img{width:44px;height:50px}}
