html.tuby-review-gallery-open{overflow:hidden}
.tuby-review-photos a{cursor:zoom-in}
dialog.tuby-review-gallery{
  position:fixed;
  inset:0;
  width:100%;
  height:100dvh;
  max-width:none;
  max-height:none;
  box-sizing:border-box;
  margin:0;
  padding:24px;
  border:0;
  background:transparent;
  color:#fff;
  overflow:hidden;
  font:400 15px/1.5 'Segoe UI',Arial,sans-serif;
}
dialog.tuby-review-gallery[open]{display:grid;place-items:center}
.tuby-review-gallery::backdrop{background:rgba(0,0,0,.88)}
.tuby-review-gallery-panel{
  display:grid;
  grid-template-rows:auto minmax(0,1fr) auto;
  width:min(1120px,100%);
  height:min(880px,calc(100dvh - 48px));
  min-width:0;
  overflow:hidden;
  border-radius:16px;
  background:#161412;
}
.tuby-review-gallery-header{display:flex;align-items:center;gap:12px;padding:12px 16px}
.tuby-review-gallery .tuby-review-gallery-header h2{flex:1;margin:0;color:#fff;font:600 15px/1.4 'Segoe UI',Arial,sans-serif;letter-spacing:0}
.tuby-review-gallery-count{white-space:nowrap;font-size:13px;font-variant-numeric:tabular-nums;color:#ead9c9}
.tuby-review-gallery button{
  display:grid;
  place-items:center;
  flex:none;
  width:44px;
  height:44px;
  min-width:44px;
  min-height:44px;
  padding:0;
  margin:0;
  border:1px solid rgba(255,255,255,.3);
  border-radius:50%;
  background:rgba(22,20,18,.8);
  color:#fff;
  font:400 32px/1 Arial,sans-serif;
  cursor:pointer;
  box-shadow:none;
  touch-action:manipulation;
}
.tuby-review-gallery button:hover{background:#39332e;color:#fff}
.tuby-review-gallery button:focus-visible{outline:2px solid #e7bc94;outline-offset:3px}
.tuby-review-gallery button[aria-disabled="true"]{opacity:.3;cursor:default}
.tuby-review-gallery [hidden]{display:none!important}
.tuby-review-gallery-stage{position:relative;min-width:0;min-height:0}
.tuby-review-gallery-viewport{
  display:flex;
  width:100%;
  height:100%;
  overflow-x:auto;
  overflow-y:hidden;
  scroll-snap-type:x mandatory;
  overscroll-behavior:contain;
  scrollbar-width:none;
  touch-action:pan-x pinch-zoom;
  cursor:grab;
}
.tuby-review-gallery-viewport::-webkit-scrollbar{display:none}
.tuby-review-gallery-viewport.is-dragging{scroll-snap-type:none;cursor:grabbing}
.tuby-review-gallery-slide{
  display:grid;
  place-items:center;
  flex:0 0 100%;
  width:100%;
  height:100%;
  min-width:0;
  box-sizing:border-box;
  margin:0;
  padding:8px 72px;
  scroll-snap-align:start;
  scroll-snap-stop:always;
}
.tuby-review-gallery .tuby-review-gallery-slide img{display:block;width:100%;height:100%;min-height:0;object-fit:contain;max-width:100%;max-height:100%;border:0;border-radius:0;user-select:none;-webkit-user-drag:none}
.tuby-review-gallery-prev,.tuby-review-gallery-next{position:absolute;top:50%;transform:translateY(-50%)}
.tuby-review-gallery-prev{left:12px}
.tuby-review-gallery-next{right:12px}
.tuby-review-gallery .tuby-review-gallery-hint{margin:0;padding:14px 20px;text-align:center;color:#ead9c9;font:400 13px/1.5 'Segoe UI',Arial,sans-serif}
@media(max-width:600px){
  dialog.tuby-review-gallery{padding:8px}
  .tuby-review-gallery-panel{height:calc(100dvh - 16px);border-radius:12px}
  .tuby-review-gallery-header{gap:8px;padding:8px 12px}
  .tuby-review-gallery-slide{padding:8px 0}
  .tuby-review-gallery-prev{left:8px}
  .tuby-review-gallery-next{right:8px}
  .tuby-review-gallery .tuby-review-gallery-hint{padding:12px 16px;font-size:12px}
}
