.shop-page .product-photo-trigger{display:grid;place-items:center;width:100%;min-width:44px;min-height:44px;margin:0;padding:0;border:0;border-radius:10px;background:transparent;color:inherit;cursor:zoom-in}
.shop-page .product-photo-trigger:focus-visible{outline:3px solid #087f99;outline-offset:-3px}
.shop-page .product-photo-thumb-trigger{display:none}
.product-photo-dialog{position:fixed;inset:0;width:min(1100px,calc(100vw - 32px));height:min(850px,calc(100dvh - 32px));max-width:none;max-height:none;margin:auto;padding:0;border:0;border-radius:16px;background:#fff;color:#17243b;box-shadow:0 24px 80px #0005;color-scheme:light}
.product-photo-dialog::backdrop{background:rgba(10,20,35,.82)}
.product-photo-panel{display:flex;flex-direction:column;width:100%;height:100%;min-height:0}
.product-photo-dialog header{display:flex;align-items:center;gap:16px;flex:none;padding:12px 16px;border-bottom:1px solid #e0e7ef}
.product-photo-dialog h2{flex:1;min-width:0;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;margin:0;font-size:17px;line-height:1.4;color:#17243b;letter-spacing:normal}
.product-photo-dialog .product-photo-close{display:grid;place-items:center;flex:none;width:44px;height:44px;margin:0;padding:0;border:1px solid #cbd8e5;border-radius:10px;background:#eef4f8;color:#17243b;font:30px/1 sans-serif;cursor:pointer}
.product-photo-close:focus-visible{outline:3px solid #087f99;outline-offset:2px}
.product-photo-stage{flex:1;min-height:0;display:grid;place-items:center;padding:16px;overflow:hidden}
.product-photo-stage img{display:block;width:100%;height:100%;min-height:0;object-fit:contain}
.product-photo-stage [hidden]{display:none}
.product-photo-stage p{padding:16px;text-align:center}
@media(max-width:680px){
  .shop-page .product-photo-thumb-trigger{display:grid;width:64px;height:64px}
  .product-photo-dialog{width:calc(100vw - 16px);height:calc(100dvh - 16px);border-radius:12px}
  .product-photo-dialog header{padding:8px 10px;padding-top:max(8px,env(safe-area-inset-top))}
  .product-photo-dialog h2{font-size:15px}
  .product-photo-stage{padding:8px;padding-bottom:max(8px,env(safe-area-inset-bottom))}
}
