#product-image-viewer{width:96vw;max-width:1600px;height:94dvh;max-height:94dvh;margin:auto;padding:0;border:2px solid #111921;background:#f8f6ef;color:#111921;box-shadow:0 20px 80px #0007;overflow:hidden;font:16px/1.4 Arial,Helvetica,sans-serif}
#product-image-viewer[open]{display:grid;grid-template-rows:auto auto minmax(0,1fr) auto auto}
#product-image-viewer .picture-alternates{display:flex;gap:8px;overflow-x:auto;padding:8px 20px;max-height:88px;border-top:1px solid #ccc}
#product-image-viewer .picture-alternates[hidden]{display:none}
#product-image-viewer .picture-alternates button{padding:3px;min-width:64px;height:68px}
#product-image-viewer .picture-alternates button[aria-pressed="true"]{outline:3px solid #128396;outline-offset:-3px}
#product-image-viewer .picture-alternates img{display:block;width:60px;height:60px;object-fit:contain}
#product-image-viewer::backdrop{background:#000d;backdrop-filter:blur(4px)}
#product-image-viewer button{font:600 14px/1.3 Arial,Helvetica,sans-serif;min-height:44px;padding:10px 16px;border:1px solid #b6b8b5;border-radius:6px;background:#fff;color:#111921;cursor:pointer;white-space:nowrap}
#product-image-viewer button:focus-visible,#product-image-viewer .picture-viewport:focus-visible,.detail-enlarge:focus-visible{outline:3px solid #128396;outline-offset:-3px}
#product-image-viewer button:hover{background:#e4f6f7}
#product-image-viewer button:disabled{opacity:.4;cursor:default}
#product-image-viewer .picture-header{display:flex;align-items:center;justify-content:space-between;gap:16px;padding:14px 20px}
#product-image-viewer h2{margin:0;font:700 clamp(16px,2vw,24px)/1.3 Arial,Helvetica,sans-serif!important;letter-spacing:0;text-shadow:none;-webkit-text-stroke:0;overflow-wrap:anywhere}
#product-image-viewer .picture-close{flex:none;border-color:#111921}
#product-image-viewer .picture-toolbar{display:flex;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:8px;padding:0 20px 12px}
#product-image-viewer .picture-views,#product-image-viewer .picture-zoom{display:flex;align-items:center;gap:6px}
#product-image-viewer .picture-zoom{margin-left:auto}
#product-image-viewer [aria-pressed=true]{background:#111921;color:white}
#product-image-viewer output{min-width:54px;text-align:center;font-size:14px;font-variant-numeric:tabular-nums}
#product-image-viewer .picture-viewport{min-height:0;min-width:0;overflow:auto;overscroll-behavior:contain;background:#ecebe7;border-block:1px solid #d5d6d2;cursor:zoom-in;touch-action:pan-x pan-y pinch-zoom}
#product-image-viewer .picture-viewport.is-zoomed{cursor:grab}
#product-image-viewer .picture-viewport.is-dragging{cursor:grabbing}
#product-image-viewer .picture-canvas{margin:12px auto;max-width:none;flex:none;user-select:none}
#product-image-viewer .picture-canvas>img,#product-image-viewer .picture-canvas>svg{display:block;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;pointer-events:auto}
#product-image-viewer .picture-footer{display:flex;align-items:center;justify-content:space-between;gap:14px;padding:12px 20px;background:#f8f6ef}
#product-image-viewer .picture-footer p{margin:0;font:14px/1.4 Arial,Helvetica,sans-serif;color:#454c50}
#product-image-viewer .picture-customize{background:#111921;color:#fff;border-color:#111921}
#product-image-viewer .picture-customize:hover{background:#24505b}
.product-image[data-preview-product]{cursor:zoom-in}
.product-dialog button.detail-enlarge{display:flex;width:100%;cursor:zoom-in;text-align:left}
.detail-enlarge-hint{position:absolute;right:10px;bottom:5px;color:#fff;font:600 12px/1.3 Arial,Helvetica,sans-serif;z-index:3}
.product-card .product-customize{display:block;margin-top:10px;text-align:left;text-decoration:underline;font-size:12px;min-height:44px}
@media(max-width:600px){#product-image-viewer{width:100vw;max-width:100vw;height:100dvh;max-height:100dvh;border:0;border-radius:0}#product-image-viewer .picture-header{padding:10px 12px;gap:8px}#product-image-viewer .picture-toolbar{padding:0 12px 8px;gap:8px}#product-image-viewer .picture-zoom{margin-left:0}#product-image-viewer button{padding:9px 12px}#product-image-viewer .picture-footer{padding:10px 12px;flex-wrap:wrap;gap:8px}#product-image-viewer .picture-footer p{font-size:12px}#product-image-viewer .picture-customize{width:100%}}
