/*
 * Catalog v2 — page-specific styles.
 * Load AFTER storefront-v2.css on /v2/catalog
 */

.layout-v2 .v2-catalog-sidebar {
  border: 1px solid var(--v2-border, #e5e7e9);
  border-radius: 0.75rem;
  padding: 1rem 1.1rem;
  background: #fff;
}

.layout-v2 .v2-catalog-sidebar__title {
  font-size: 1rem;
  font-weight: 700;
  margin: 0 0 0.85rem;
  color: #374151;
}

.layout-v2 .v2-catalog-tree__item {
  margin-bottom: 0.65rem;
}

.layout-v2 .v2-catalog-tree__toggle {
  width: 1.1rem;
  color: #6b7280;
  line-height: 1.4;
  text-decoration: none;
}

.layout-v2 .v2-catalog-tree__spacer {
  display: inline-block;
  width: 1.1rem;
}

.layout-v2 .v2-catalog-tree__link,
.layout-v2 .v2-catalog-tree__sublink {
  color: #545454;
  text-decoration: none;
  font-size: 0.9rem;
  line-height: 1.4;
}

.layout-v2 .v2-catalog-tree__link:hover,
.layout-v2 .v2-catalog-tree__sublink:hover,
.layout-v2 .v2-catalog-tree__link.is-active,
.layout-v2 .v2-catalog-tree__sublink.is-active {
  color: var(--v2-primary, #048b32);
}

.layout-v2 .v2-catalog-tree__children {
  margin: 0.35rem 0 0 1.35rem;
}

.layout-v2 .v2-catalog-tree__children li {
  margin-bottom: 0.3rem;
}

.layout-v2 .v2-catalog-banner {
  border-radius: 0.75rem;
  overflow: hidden;
  background: #eef2f1;
}

.layout-v2 .v2-catalog-banner__img {
  width: 100%;
  height: auto;
  display: block;
  object-fit: contain;
  background: #eef2f1;
}

.layout-v2 .v2-catalog-banner-indicators {
  margin-bottom: 0.4rem;
}

.layout-v2 .v2-catalog-banner-indicators [data-bs-target] {
  width: 7px;
  height: 7px;
  border-radius: 50%;
  margin: 0 4px;
  background-color: rgba(255, 255, 255, 0.55);
  border: 0;
  opacity: 1;
}

.layout-v2 .v2-catalog-banner-indicators .active {
  background-color: #fff;
}

.layout-v2 .v2-catalog-toolbar .form-select {
  min-width: 10rem;
}

.layout-v2 .v2-catalog-pagination .pagination {
  margin-bottom: 0;
  flex-wrap: wrap;
  gap: 0.25rem;
}

.layout-v2 .v2-catalog-pagination .page-link {
  border-radius: 0.35rem !important;
  min-width: 2rem;
  height: 2rem;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  padding: 0 0.45rem;
  color: var(--v2-primary, #048b32);
  border-color: #dee2e6;
}

.layout-v2 .v2-catalog-pagination .page-item.active .page-link {
  background-color: var(--v2-primary, #048b32);
  border-color: var(--v2-primary, #048b32);
  color: #fff;
}
