.hl-detail-gallery, .hl-detail-gallery *, .hl-gallery-dialog, .hl-gallery-dialog * { box-sizing: border-box; }
.hl-product-detail .hl-price-page-photo { display: block; max-height: none; min-height: 0; min-width: 0; }
.hl-detail-gallery { display: block; width: 100%; min-width: 0; margin: 0; overflow: hidden; background: #f1f5f7; color: #163c50; border: 1px solid #dce6ec; border-radius: 8px; font-family: inherit; line-height: 1.5; }
.hl-detail-gallery[hidden], .hl-detail-gallery [hidden], .hl-gallery-dialog [hidden] { display: none !important; }
.hl-detail-gallery button, .hl-gallery-dialog button { font: inherit; cursor: pointer; -webkit-tap-highlight-color: transparent; }
.hl-detail-gallery button:focus-visible, .hl-gallery-dialog button:focus-visible { outline: 3px solid #e88935; outline-offset: -3px; }
.hl-detail-gallery .hl-detail-gallery__viewport { position: relative; display: block; width: 100%; aspect-ratio: 16 / 9; min-height: 0; margin: 0; padding: 0; overflow: hidden; border: 0; border-radius: 0; background: #f1f5f7; cursor: zoom-in; touch-action: pan-y; }
.hl-detail-gallery__stage { position: absolute; inset: 0; display: block; }
.hl-detail-gallery .hl-detail-gallery__image, .hl-gallery-dialog .hl-detail-gallery__image { position: absolute; inset: 0; display: block; width: 100%; height: 100%; max-width: none; max-height: none; margin: 0; padding: 0; border: 0; border-radius: 0; object-fit: contain; object-position: center; transform: none; transition: none; user-select: none; -webkit-user-drag: none; }
.hl-detail-gallery__hint { position: absolute; right: 12px; bottom: 12px; display: block; margin: 0; padding: 5px 9px; border: 1px solid #d4e0e6; border-radius: 3px; background: rgb(255 255 255 / 94%); color: #36596c; font-size: 11px; font-weight: 400; line-height: 1.5; pointer-events: none; }
.hl-detail-gallery__controls { display: flex; align-items: center; gap: 6px; min-height: 46px; margin: 0; padding: 3px 9px 3px 14px; border-top: 1px solid #dce6ec; background: #fff; }
.hl-detail-gallery__count { flex: 1; color: #536f7e; font-size: 12px; font-variant-numeric: tabular-nums; }
.hl-detail-gallery .hl-detail-gallery__pause { min-width: 0; min-height: 38px; margin: 0 5px 0 0; padding: 6px 9px; border: 0; border-radius: 3px; background: transparent; color: #36596c; font-size: 12px; line-height: 1.5; }
.hl-detail-gallery .hl-detail-gallery__arrow { display: grid; place-items: center; flex: 0 0 38px; width: 38px; min-height: 38px; margin: 0; padding: 0; border: 1px solid #dce6ec; border-radius: 4px; background: #fff; color: #163c50; font-size: 25px; line-height: 1; }
.hl-detail-gallery .hl-detail-gallery__arrow:hover, .hl-detail-gallery .hl-detail-gallery__pause:hover { background: #eef4f7; }
.hl-detail-gallery__sr { position: absolute; width: 1px; height: 1px; padding: 0; margin: -1px; overflow: hidden; clip: rect(0, 0, 0, 0); white-space: nowrap; border: 0; }

.hl-gallery-dialog { position: fixed; inset: 0; z-index: 2147482200; width: min(1120px, calc(100vw - 32px)); max-width: none; max-height: calc(100vh - 32px); max-height: calc(100dvh - 32px); margin: auto; padding: 0; overflow: hidden; border: 1px solid #b9cdd8; border-radius: 8px; background: #fff; color: #163c50; box-shadow: 0 20px 80px rgb(4 23 36 / 35%); font-family: "Microsoft YaHei", "PingFang SC", Arial, sans-serif; line-height: 1.5; }
.hl-gallery-dialog:not([open]) { display: none; }
.hl-gallery-dialog[open] { display: flex; flex-direction: column; }
.hl-gallery-dialog::backdrop { background: rgb(5 22 35 / 82%); }
.hl-gallery-dialog__header { display: flex; align-items: center; justify-content: space-between; flex: none; gap: 16px; min-height: 62px; padding: 8px 12px 8px 22px; background: #fff; }
.hl-gallery-dialog .hl-gallery-dialog__title { margin: 0; color: #163c50; font-family: inherit; font-size: 17px; font-weight: 600; line-height: 1.5; }
.hl-gallery-dialog .hl-gallery-dialog__close { display: grid; place-items: center; flex: 0 0 44px; width: 44px; height: 44px; min-height: 0; margin: 0; padding: 0; border: 0; border-radius: 4px; background: #eef4f7; color: #163c50; font-size: 29px; font-weight: 400; line-height: 1; }
.hl-gallery-dialog__stage { position: relative; flex: 1 1 auto; width: 100%; height: min(72vh, 780px); min-height: 120px; background: #edf3f6; touch-action: pan-y; }
.hl-gallery-dialog__footer { display: flex; align-items: center; justify-content: center; flex: none; gap: 22px; min-height: 62px; padding: 8px 16px; background: #fff; }
.hl-gallery-dialog__count { min-width: 58px; color: #536f7e; font-size: 14px; text-align: center; font-variant-numeric: tabular-nums; }
.hl-gallery-dialog .hl-gallery-dialog__arrow { display: grid; place-items: center; width: 44px; height: 44px; min-height: 0; margin: 0; padding: 0; border: 1px solid #cddce5; border-radius: 4px; background: #fff; color: #163c50; font-size: 28px; line-height: 1; }
.hl-gallery-dialog .hl-gallery-dialog__arrow:hover, .hl-gallery-dialog .hl-gallery-dialog__close:hover { background: #dfeaf0; }

@media (max-width: 720px) {
  .hl-detail-gallery .hl-detail-gallery__viewport { aspect-ratio: 4 / 3; }
  .hl-detail-gallery__controls { min-height: 50px; padding: 3px 6px 3px 12px; }
  .hl-detail-gallery .hl-detail-gallery__arrow { flex-basis: 44px; width: 44px; min-height: 44px; }
  .hl-detail-gallery .hl-detail-gallery__pause { min-height: 44px; margin-right: 0; }
  .hl-detail-gallery__hint { right: 9px; bottom: 9px; font-size: 10px; }
  .hl-gallery-dialog { width: calc(100vw - 16px); max-height: calc(100vh - 16px); max-height: calc(100dvh - 16px); border-radius: 6px; }
  .hl-gallery-dialog__header { min-height: 58px; padding: 7px 8px 7px 15px; gap: 8px; }
  .hl-gallery-dialog .hl-gallery-dialog__title { font-size: 15px; }
  .hl-gallery-dialog__stage { height: min(72vh, 620px); height: min(72dvh, 620px); }
  .hl-gallery-dialog__footer { min-height: 60px; padding-bottom: max(8px, env(safe-area-inset-bottom)); }
}
@media (prefers-reduced-motion: reduce) {
  .hl-detail-gallery *, .hl-gallery-dialog * { animation: none !important; transition: none !important; }
}
@media print {
  .hl-detail-gallery__controls, .hl-detail-gallery__hint, .hl-gallery-dialog { display: none !important; }
}
