@charset "UTF-8";

.hebang-catalog-grid {
  grid-template-columns: repeat(3, minmax(0, 1fr));
}

.hebang-catalog-card .hebang-image-shell,
.hebang-model-detail .hebang-detail-photo .hebang-image-shell,
.hebang-model-detail .hebang-detail-related .hebang-image-shell,
.hebang-model-detail .hebang-detail-related picture,
.hebang-model-detail .hebang-detail-related img {
  height: auto;
  aspect-ratio: 3 / 2;
}

.hebang-model-detail .hebang-detail-gallery {
  display: flex;
  flex-direction: column-reverse;
  gap: 12px;
  min-height: 0;
}

.hebang-model-detail .hebang-detail-photo {
  width: 100%;
  margin-left: 0;
}

.hebang-model-detail .hebang-detail-thumbs {
  position: static;
  display: grid;
  grid-template-columns: 44px minmax(0, 1fr) 44px;
  align-items: center;
  gap: 12px;
  width: 100%;
}

.hebang-detail-thumb-track {
  display: flex;
  gap: 12px;
  min-width: 0;
  overflow-x: auto;
  overscroll-behavior-inline: contain;
  padding: 4px;
  scroll-snap-type: x proximity;
  scrollbar-width: none;
}

.hebang-detail-thumb-track::-webkit-scrollbar {
  display: none;
}

.hebang-model-detail .hebang-detail-thumb {
  flex: 0 0 96px;
  width: 96px;
  height: auto;
  aspect-ratio: 3 / 2;
  scroll-snap-align: start;
}

.hebang-model-detail .hebang-detail-thumb-nav {
  display: grid;
  width: 44px;
  height: 44px;
  border: 1px solid var(--hebang-color-border-strong);
  border-radius: var(--hebang-radius-circle);
  background: var(--hebang-color-surface);
  color: var(--hebang-color-ink);
}

.hebang-model-detail .hebang-detail-thumb-nav:hover,
.hebang-model-detail .hebang-detail-thumb-nav:focus-visible {
  border-color: var(--hebang-color-primary-text);
  background: var(--hebang-color-primary-tint);
  color: var(--hebang-color-primary-text);
}

.hebang-model-detail .hebang-detail-thumb-nav svg {
  width: 20px;
  height: 20px;
}

.hebang-model-detail .hebang-detail-thumb[aria-current="true"] {
  border: 2px solid var(--hebang-color-primary-text);
  outline: none;
}

@media (max-width: 1199px) {
  .hebang-catalog-grid {
    grid-template-columns: repeat(2, minmax(0, 1fr));
  }
}

@media (width < 768px) {
  .hebang-detail-thumb-track { scrollbar-width: thin; scrollbar-color: var(--hebang-color-border-strong) var(--hebang-color-surface-alt); }
  .hebang-detail-thumb-track::-webkit-scrollbar { display: block; height: 6px; }
  .hebang-detail-thumb-track::-webkit-scrollbar-thumb { background: var(--hebang-color-border-strong); border-radius: 3px; }
  .hebang-model-detail .hebang-detail-thumbs {
    grid-template-columns: 44px minmax(0, 1fr) 44px;
    gap: 10px;
  }

  .hebang-model-detail .hebang-detail-thumb {
    flex-basis: 82px;
    width: 82px;
  }
}
