/* The full source image remains a normal link when JavaScript is unavailable. */
a[data-product-photo]{position:relative;cursor:zoom-in}
a[data-product-photo]:focus-visible{outline:3px solid #075ca9;outline-offset:3px}
.product-photo-hint{position:absolute;right:8px;bottom:8px;display:inline-flex;align-items:center;gap:5px;padding:5px 8px;border:1px solid #cbd9e4;border-radius:4px;background:#fffffff2;color:#244d6c;font-size:11px;font-weight:600;line-height:1.4;pointer-events:none}
.product-photo-hint svg{width:14px;height:14px}
.product-image-pending{flex-direction:column;gap:9px;text-align:center;background:linear-gradient(150deg,#f7fafc,#edf3f7);color:#45647b}
.product-image-pending strong{font-size:15px;line-height:1.5;font-weight:600;letter-spacing:.1px}
.product-image-pending>span{font-size:11px;line-height:1.5;color:#758a9a}
.supply-list-image.product-image-pending{padding:10px}
.supply-list-image.product-image-pending strong{font-size:11px;line-height:1.6}
.product-photo-pending-detail{width:100%;padding:36px 10px;text-align:center}
.product-photo-pending-detail .eyebrow{font-size:11px;color:#7890a2}
.product-photo-pending-detail h2{max-width:300px;margin:0 auto 16px;font-size:25px;line-height:1.3;color:#294d67;letter-spacing:-.4px}
.product-photo-pending-detail>p:not(.eyebrow){max-width:300px;margin:0 auto 18px;font-size:14px;line-height:1.8;color:#637c8f}
.product-photo-pending-detail>.text-link{justify-content:center;min-height:44px}
.product-photo-pending-detail .pending-reference{border-top:1px solid #e1e9ef;padding-top:22px;margin-top:27px!important}
.pending-reference a{font-size:12px;text-decoration:underline;text-underline-offset:3px;color:#4b6c86}
.pending-reference span{display:block;font-size:11px;line-height:1.7;margin-top:7px}
.detail-photo-link{display:flex;align-items:center;justify-content:center;min-height:200px;width:100%;padding:10px 10px 37px}
.detail-image .detail-photo-link img{display:block;max-width:100%;max-height:520px;width:auto;height:auto;object-fit:contain}
.detail-photo-link .product-photo-hint{right:50%;transform:translateX(50%);bottom:3px;white-space:nowrap;font-size:12px}
.supply-list-image .product-photo-hint{padding:3px;right:3px;bottom:3px;font-size:0;border-radius:3px}
.supply-list-image .product-photo-hint svg{width:14px;height:14px}
.product-photo-viewer{width:min(1120px,calc(100vw - 40px));height:min(940px,calc(100dvh - 40px));max-width:none;max-height:none;margin:auto;padding:0;border:0;border-radius:10px;background:#fff;color:#19374f;box-shadow:0 22px 90px #071e4370;overflow:hidden}
.product-photo-viewer::backdrop{background:#071b32d9;backdrop-filter:blur(4px)}
.product-photo-viewer:not([open]){display:none}
.photo-viewer-shell{display:flex;flex-direction:column;height:100%;min-height:0}
.photo-viewer-header{display:flex;align-items:flex-start;justify-content:space-between;gap:20px;padding:20px 24px 14px;border-bottom:1px solid #e4ebf0;flex-shrink:0}
.photo-viewer-header>div{min-width:0}
.photo-viewer-header p{font-size:11px;font-weight:700;letter-spacing:1px;text-transform:uppercase;color:#627b8c;margin:0 0 5px;line-height:1.4}
.photo-viewer-header h2{font-size:19px;line-height:1.4;letter-spacing:-.2px;margin:0;overflow-wrap:anywhere}
.photo-viewer-close,.photo-viewer-toolbar button{font:inherit;min-width:44px;min-height:44px;display:inline-flex;align-items:center;justify-content:center;border:1px solid #c6d5df;border-radius:5px;color:#18486b;background:#fff;cursor:pointer;flex-shrink:0}
.photo-viewer-close{font-size:30px;line-height:1;width:44px}
.photo-viewer-toolbar{display:flex;align-items:center;justify-content:center;gap:10px;padding:10px 20px;background:#f5f8fa;flex-shrink:0}
.photo-viewer-toolbar button{font-size:25px;line-height:1}
.photo-viewer-toolbar [data-photo-fit]{font-size:13px;font-weight:600;padding-inline:14px;margin-left:6px}
.photo-viewer-toolbar output{font-size:13px;color:#526e83;font-variant-numeric:tabular-nums;min-width:45px;text-align:center}
.photo-viewer-toolbar button:disabled{opacity:.4;cursor:default}
.photo-viewer-close:hover,.photo-viewer-toolbar button:not(:disabled):hover{background:#eaf3f9;border-color:#7d9fb9}
.product-photo-viewer button:focus-visible,.product-photo-viewer a:focus-visible,.photo-viewer-stage:focus-visible{outline:3px solid #075ca9;outline-offset:2px}
.photo-viewer-stage{position:relative;flex:1;min-height:100px;overflow:hidden;background:#fff;touch-action:none;user-select:none;-webkit-user-select:none;outline-offset:-4px!important}
.photo-viewer-stage.is-zoomed{cursor:grab}
.photo-viewer-stage.is-dragging{cursor:grabbing}
.photo-viewer-stage .photo-viewer-image{position:absolute;top:50%;left:50%;max-width:none;max-height:none;object-fit:contain;transform-origin:center;pointer-events:none;will-change:transform}
.photo-viewer-image[hidden],.product-photo-viewer [hidden]{display:none!important}
.photo-viewer-status{position:absolute;inset:0;display:flex;align-items:center;justify-content:center;padding:30px;text-align:center;font-size:15px;color:#526e83;margin:0}
.photo-viewer-footer{flex-shrink:0;padding:12px 24px 17px;border-top:1px solid #e4ebf0;background:#f9fbfc;max-height:27%;overflow-y:auto}
.photo-viewer-footer p{font-size:12px;line-height:1.6;color:#536f82;margin:0}
#product-photo-viewer-note{color:#705622;margin-top:7px}
.photo-viewer-links{display:flex;flex-wrap:wrap;gap:4px 24px;margin-top:5px}
.photo-viewer-links a{display:inline-flex;align-items:center;min-height:28px;font-size:12px;font-weight:600;color:#075ca9;text-decoration:underline;text-underline-offset:3px}
@media(max-width:640px){.product-photo-viewer{width:calc(100vw - 16px);height:calc(100dvh - 24px);border-radius:7px}.photo-viewer-header{padding:14px;gap:12px}.photo-viewer-header h2{font-size:16px}.photo-viewer-header p{font-size:10px}.photo-viewer-toolbar{padding:8px 12px;gap:8px}.photo-viewer-footer{padding:10px 14px 13px;max-height:28%}.photo-viewer-footer p{font-size:11px}.photo-viewer-links a{min-height:36px}.detail-image .detail-photo-link img{max-height:420px}}
@media(max-height:520px) and (min-width:641px){.photo-viewer-header{padding:9px 16px}.photo-viewer-header p{display:none}.photo-viewer-header h2{font-size:15px}.photo-viewer-toolbar{padding:5px}.photo-viewer-footer{padding:6px 16px}.photo-viewer-footer #product-photo-viewer-help{display:none}.photo-viewer-links{margin-top:0}}
@media print{.product-photo-viewer,.product-photo-hint{display:none!important}}
