.product-main{position:relative;border-radius:18px}
.product-gallery .thumbnails{margin-top:8px}
.photo-control{position:absolute;top:0;bottom:0;width:clamp(44px,10%,68px);padding:0;border:0;border-radius:0;display:flex;align-items:center;justify-content:center;background:transparent!important;color:var(--ink);cursor:pointer;z-index:2;box-shadow:none;touch-action:pan-y pinch-zoom}
.photo-control-prev{left:0}.photo-control-next{right:0}
.photo-control[hidden]{display:none!important}
.photo-control svg{display:block;flex:none;pointer-events:none;filter:drop-shadow(0 0 2px #fff) drop-shadow(0 0 1px #fff);transition:transform .18s ease}
.photo-control:hover svg,.photo-control:focus-visible svg{transform:scale(1.15)}
.photo-control:focus-visible{outline:2px solid var(--link);outline-offset:-4px;border-radius:8px}
.kr-card-gallery{position:relative;overflow:hidden;touch-action:pan-y pinch-zoom}
.kr-card-photo-link{display:block;width:100%;height:100%}
.kr-card-gallery img{width:100%;height:100%;object-fit:contain}
.kr-card-gallery .photo-control{width:clamp(36px,14%,48px)}
.kr-card-gallery .photo-control svg{width:20px;height:20px}
.kr-card-title:hover,.kr-card-title:hover h3{text-decoration:none!important}
.kr-photo-dialog{border:0;border-radius:16px;padding:42px 12px 12px;width:fit-content;max-width:calc(100vw - 24px);max-height:calc(100dvh - 24px);overflow:hidden;background:#fff;color:var(--ink);box-shadow:0 20px 80px #0005}
.kr-photo-dialog::backdrop{background:#11202cbf}
.kr-review-stage{position:relative;max-width:min(1000px,calc(100vw - 48px))}
.kr-review-stage>img{display:block;max-width:100%;max-height:calc(100dvh - 90px);width:auto;height:auto;object-fit:contain;border-radius:10px;margin:auto}
.kr-photo-close{position:absolute;right:6px;top:2px;display:flex;justify-content:center;align-items:center;width:40px;height:40px;border:0;border-radius:8px;padding:0;background:transparent;color:var(--ink);cursor:pointer}
.kr-photo-close:hover{background:var(--accent-soft)}
.kr-photo-close svg{pointer-events:none}
.kr-cart-layout .kr-cart-remove{display:inline-flex!important;align-items:center;justify-content:center;padding:0;line-height:1}
.kr-cart-remove svg{display:block;flex:none;margin:0}
@media(max-width:620px){.product-main{border-radius:14px}.photo-control{width:44px}.kr-photo-dialog{padding-top:42px;border-radius:12px}.kr-review-stage{max-width:calc(100vw - 48px)}}
@media(prefers-reduced-motion:reduce){.photo-control svg{transition:none}.photo-control:hover svg,.photo-control:focus-visible svg{transform:none}}

@media(hover:hover) and (pointer:fine){
  .kr-card-gallery .photo-control{opacity:0;pointer-events:none;transition:opacity .15s ease}
  .product-card:hover .kr-card-gallery .photo-control,.kr-card-gallery .photo-control:focus-visible{opacity:1;pointer-events:auto}
}
.kr-card-gallery .photo-control:focus-visible{outline:none}
.kr-card-gallery .photo-control:focus-visible svg{outline:2px solid var(--link);outline-offset:3px;border-radius:2px}

@media(hover:none),(pointer:coarse){.product-card:hover{transform:none;outline-color:transparent;box-shadow:none}}
