/* Product dialog: keep the close control out of the content grid. */
.product-dialog{position:fixed;padding-top:60px;max-height:90dvh;overflow-y:auto;overscroll-behavior:contain}
.product-dialog>.detail-close{float:none;position:absolute;top:8px;right:8px;width:44px;height:44px;display:grid;place-items:center;z-index:2;border-radius:50%;color:#20251e;background:#fafaf6;line-height:1}
.product-dialog>.detail-close:hover{background:#e9ebe3}
.product-dialog>.detail-close:focus-visible{outline:2px solid #283321;outline-offset:2px}
.product-dialog .product-detail{width:100%;min-width:0;clear:both;grid-template-columns:minmax(0,1fr) minmax(0,1fr)}
.product-dialog .product-detail>div{min-width:0}
.product-dialog .detail-photo{display:block;margin-inline:auto}
.fit-dialog{padding-top:60px;max-height:90dvh;overflow-y:auto;overscroll-behavior:contain}
.fit-dialog>.gallery-close{position:absolute;top:8px;right:8px;width:44px;height:44px;display:grid;place-items:center;border-radius:50%;line-height:1}
@media(max-width:640px){
 .product-dialog{width:calc(100vw - 24px);max-width:calc(100vw - 24px);padding:60px 18px 24px}
 .product-dialog .product-detail{grid-template-columns:minmax(0,1fr);gap:24px}
 .product-dialog .detail-photo{width:100%;height:auto;aspect-ratio:3/4;max-height:45dvh;object-fit:contain}
 .product-dialog .detail-placeholder{height:min(100vw,45dvh);aspect-ratio:auto;place-items:center}
 .product-dialog .gallery-view .detail-photo{max-height:45dvh}
 .fit-dialog{width:calc(100vw - 24px);max-width:calc(100vw - 24px);padding:60px 18px 24px}
 .fit-dialog h2{margin-top:0}
}

.product-dialog,.fit-dialog{scrollbar-width:none}
.product-dialog::-webkit-scrollbar,.fit-dialog::-webkit-scrollbar{display:none}
