:root {
  --hb-navy: #071126;
  --hb-surface: #0d1b34;
  --hb-cyan: #45d7ea;
  --hb-orange: #f47a1f;
  --hb-text: #e8f1ff;
  --hb-muted: #a9b8d0;
  --hb-line: rgba(69, 215, 234, 0.2);
}

body.hb-store-page {
  background: var(--hb-navy);
  color: var(--hb-text);
}

.hb-store-page a:focus-visible,
.hb-store-page button:focus-visible,
.hb-store-page input:focus-visible {
  outline: 3px solid var(--hb-cyan);
  outline-offset: 3px;
}

.hb-skip-link {
  position: fixed;
  top: 12px;
  left: 12px;
  z-index: 100000;
  padding: 10px 14px;
  border-radius: 8px;
  background: #fff;
  color: #071126;
  transform: translateY(-160%);
}

.hb-skip-link:focus { transform: translateY(0); }

.hb-store-hero {
  padding: 54px 0 26px;
  background: radial-gradient(circle at 85% 15%, rgba(69, 215, 234, .16), transparent 34%);
}

.hb-store-hero__inner {
  display: flex;
  align-items: end;
  justify-content: space-between;
  gap: 24px;
  padding: 34px;
  border: 1px solid var(--hb-line);
  border-radius: 24px;
  background: linear-gradient(145deg, rgba(13, 27, 52, .98), rgba(7, 17, 38, .96));
  box-shadow: 0 24px 64px rgba(0, 0, 0, .3);
}

.hb-store-hero h1 { margin: 0 0 8px; color: #fff; font-size: clamp(30px, 5vw, 52px); }
.hb-store-hero p { margin: 0; color: var(--hb-muted); }

.hb-store-nav { display: flex; flex-wrap: wrap; gap: 10px; }
.hb-store-nav a {
  display: inline-flex;
  align-items: center;
  min-height: 44px;
  padding: 10px 16px;
  border: 1px solid var(--hb-line);
  border-radius: 999px;
  color: var(--hb-text);
  font-weight: 700;
}
.hb-store-nav a:hover,
.hb-store-nav a[aria-current="page"] { border-color: var(--hb-orange); background: var(--hb-orange); color: #fff; }

.hb-store-main { padding: 30px 0 70px; }
.hb-panel {
  padding: 22px;
  border: 1px solid var(--hb-line);
  border-radius: 18px;
  background: rgba(13, 27, 52, .92);
}

.hb-filter-label { display: block; margin-bottom: 10px; color: #fff; font-weight: 700; }
.hb-filter-value { width: 100%; margin-bottom: 14px; color: var(--hb-muted); }
.slider-range { min-height: 54px; }
.slider-range input { width: 100%; accent-color: var(--hb-orange); }

.hb-empty-state {
  display: grid;
  justify-items: center;
  gap: 16px;
  padding: 56px 24px;
  border: 1px dashed rgba(69, 215, 234, .38);
  border-radius: 18px;
  background: rgba(13, 27, 52, .75);
  text-align: center;
}
.hb-empty-state i { color: var(--hb-cyan); font-size: 38px; }
.hb-empty-state h2 { max-width: 650px; margin: 0; color: #fff; font-size: clamp(20px, 3vw, 28px); }
.hb-empty-state p { max-width: 620px; margin: 0; color: var(--hb-muted); }

.hb-order-summary { position: sticky; top: 24px; }
.hb-order-summary h2 { color: #fff; }
.hb-total-row { display: flex; justify-content: space-between; gap: 20px; padding: 14px 0; border-top: 1px solid var(--hb-line); }
.hb-total-row strong { color: var(--hb-orange); }
.hb-action {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  min-height: 48px;
  padding: 12px 18px;
  border: 0;
  border-radius: 12px;
  background: var(--hb-orange);
  color: #fff;
  font-weight: 800;
  cursor: pointer;
}
.hb-action:hover { background: #d96416; color: #fff; }

.hb-store-page .shoping-cart-table { background: #fff; border-radius: 14px; overflow: hidden; }
.hb-store-page .shoping-cart-table table { margin: 0; }
.hb-store-page .shoping-cart-table td { vertical-align: middle; }
.hb-store-page .shoping-cart-table a { color: #15223a; }
.hb-store-page .cart-plus-minus-box { min-width: 74px; }
.hb-store-page #wishlist-product-container .product-title a { color: #fff; }
.hb-store-page #wishlist-product-container .ltn__product-item { background: var(--hb-surface); border: 1px solid var(--hb-line); }

@media (max-width: 991px) {
  .hb-store-hero__inner { align-items: flex-start; flex-direction: column; padding: 24px; }
  .hb-order-summary { position: static; margin-top: 20px; }
}

@media (max-width: 575px) {
  .hb-store-hero { padding-top: 26px; }
  .hb-store-nav { width: 100%; display: grid; grid-template-columns: 1fr 1fr; }
  .hb-store-nav a { justify-content: center; text-align: center; }
  .hb-panel { padding: 16px; }
}

@media (prefers-reduced-motion: reduce) {
  *, *::before, *::after { scroll-behavior: auto !important; transition-duration: .01ms !important; animation-duration: .01ms !important; }
}
