.ksrs-customer-photos{max-width:1450px;margin:26px auto 32px;padding:0 6px;box-sizing:border-box}
.ksrs-customer-photos-header{display:flex;justify-content:space-between;align-items:center;gap:16px;margin-bottom:14px}
.ksrs-customer-photos-header h2{font-size:21px;line-height:1.25;font-weight:600;color:#303534;margin:0 0 5px}
.ksrs-customer-photos-header p{margin:0;color:#7b8281;font-size:13px}
.ksrs-photos-open-all{border:0;background:transparent;color:#287451;text-decoration:underline;white-space:nowrap;cursor:pointer;font-size:14px}
.ksrs-customer-photos-row{display:grid;grid-template-columns:repeat(5,minmax(0,1fr));gap:10px;max-width:865px}
.ksrs-photo-tile{display:block;min-width:0;aspect-ratio:1 / 1;padding:0;border:1px solid #e2e6e4;border-radius:12px;background:#f6f7f7;overflow:hidden;cursor:pointer}
.ksrs-photo-tile img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .2s ease}
.ksrs-photo-tile:hover img{transform:scale(1.045)}
.ksrs-photos-more{display:flex;flex-direction:column;gap:6px;align-items:center;justify-content:center;color:#34403d}
.ksrs-photos-more span{font-size:23px;font-weight:600}.ksrs-photos-more small{font-size:13px}
/* XStore may override the browser's automatic dialog margins. Force viewport centering. */
.ksrs-photo-dialog[open]{
    position:fixed !important;
    top:50% !important;
    left:50% !important;
    right:auto !important;
    bottom:auto !important;
    transform:translate(-50%,-50%) !important;
    margin:0 !important;
    box-sizing:border-box !important;
    width:min(850px, calc(100vw - 28px)) !important;
    max-width:calc(100vw - 28px) !important;
    max-height:calc(100vh - 28px) !important;
    max-height:calc(100dvh - 28px) !important;
    padding:0 !important;
    border:0 !important;
    border-radius:15px;
    background:#fff;
    overflow-y:auto;
    box-shadow:0 20px 80px #0005;
    z-index:2147483647;
}
.ksrs-photo-dialog::backdrop{background:rgba(10,16,18,.75)}
.ksrs-photo-shell{padding:16px;background:#fff;display:flex;flex-direction:column;align-items:center;gap:12px}
.ksrs-photo-toolbar{display:flex;align-items:center;justify-content:space-between;width:100%;gap:12px}
.ksrs-photo-toolbar strong{font-size:16px}.ksrs-photo-close{border:1px solid #ddd;border-radius:7px;background:#fff;padding:5px 12px;cursor:pointer}
.ksrs-photo-main{display:block;width:auto;height:auto;max-height:64vh;max-height:64dvh;max-width:100%;object-fit:contain;border-radius:8px}
.ksrs-photo-nav{display:flex;align-items:center;justify-content:space-between;width:100%;gap:14px}
.ksrs-photo-prev,.ksrs-photo-next,.ksrs-photo-load{border:1px solid #d8ddda;border-radius:8px;padding:9px 13px;background:#fafafa;cursor:pointer}
.ksrs-photo-description{flex:1;text-align:center;font-size:13px;color:#5e6965;display:flex;flex-direction:column;align-items:center;gap:5px;line-height:1.4}.ksrs-photo-product-title{font-size:15px;font-weight:600;color:#303534}.ksrs-photo-counter{font-size:12px;color:#7b8281}
.ksrs-photo-description a{color:#287451;display:block;text-decoration:underline}
@media(max-width:700px){.ksrs-customer-photos{margin:18px 0 24px}.ksrs-customer-photos-row{display:flex;max-width:none;overflow-x:auto;gap:9px;padding-bottom:4px;scroll-snap-type:x mandatory}.ksrs-photo-tile{flex:0 0 clamp(110px,32vw,155px);scroll-snap-align:start}.ksrs-customer-photos-header h2{font-size:18px}.ksrs-customer-photos-header p{font-size:12px}.ksrs-photo-main{max-height:56vh;max-height:56dvh}.ksrs-photo-shell{padding:10px}}
