
/* Bonanza-inspired font sizing & UI polish */
:root{
  --border:#e6e6e6;
  --text:#111;
  --muted:#6b6b6b;
}
html,body{ font-family: Inter, system-ui, -apple-system, Segoe UI, Roboto, Arial, sans-serif; color:var(--text); }
h1{ font-size: 28px; font-weight: 700; letter-spacing:.015em; }
h2{ font-size: 22px; font-weight: 600; letter-spacing:.01em; }
h3{ font-size: 16px; font-weight: 600; }
p,li,span,small{ font-size: 14px; }
small{ color:var(--muted); }

/* Tabs */
.bnz-tabs{
  border-top:1px solid var(--border);
  background:#fff;
}

/* Center tab rail on all screen sizes */
.bnz-tabs .container-narrow{
  justify-content:center;
  position:relative;
}
.bnz-tab{ display:inline-flex; align-items:center; padding:8px 14px; border-radius:999px; background:#f0f0f0; color:#111; text-decoration:none; font-size:14px; }
.bnz-tab:hover{ background:#e5e5e5; }
.bnz-tab.is-active{ background:#111; color:#fff; }

/* Search bar */
.bnz-search{ display:flex; align-items:center; border:1px solid var(--border); border-radius:999px; padding:6px 10px; background:#fff; position:relative; }
.bnz-search input[type="search"]{ border:0; outline:0; min-width:220px; height:30px; padding-left:8px; }
.bnz-search button{ border:0; background:transparent; cursor:pointer; padding:0 6px; }

/* Product cards */
.pc.card-soft{ border:1px solid #e9e9e9; border-radius:0; box-shadow:none; }
.pc__title{ font-size:13px; letter-spacing:.02em; text-transform:uppercase; color:#111; line-height:1.35; min-height:calc(1.35em * 2); }
.pc__price .price--new{ font-weight:600; }
.pc__price .price--old{ font-size:12px; color:#777; }

/* Swatch row (used on listing cards) */
.pc__swatches{ display:flex; gap:6px; padding-top:8px; }
.pc__swatch{ width:10px; height:10px; border-radius:999px; display:inline-block; border:1px solid rgba(0,0,0,.08); }
.pc__swatch.more{ font-size:12px; color:#555; padding-left:4px; }


/* --- Bonanza-style tabs rail with rounded gray background and separators --- */
.bnz-tabs{ padding:10px 0; margin-bottom:12px; }
/* Horizontal tab fade indicator */
.bnz-tabs::after{
  content:"";
  position:absolute;
  right:0; top:0; bottom:0;
  width:30px;
  background:linear-gradient(to right, transparent, #fff);
  pointer-events:none;
}
.bnz-tabs__rail{
  display:flex;
  align-items:center;
  gap:24px;
  padding:10px 16px;
  background:#f3f3f3;
  border-radius:14px;
  overflow:auto;
  white-space:nowrap;
}
.bnz-tab{
  display:inline-flex;
  align-items:center;
  color:#111;
  text-decoration:none;
  padding:8px 4px;
  border-radius:0;
  font-size:14px;
}
/* thin divider like Bonanza between items */
.bnz-tab + .bnz-tab{ 
  border-left:1px solid #e2e2e2;
  padding-left:24px;
  margin-left:0;
}
/* active text weight + underline */
.bnz-tab.is-active{
  background:transparent;
  color:#000;
  font-weight:700;
  text-decoration:underline;
  text-underline-offset:4px;
}

/* === Override Bonanza card flattening on product cards === */
body .pc.card-soft{ border-radius: 14px !important; box-shadow: 0 1px 2px rgba(0,0,0,.04) !important; border:1px solid var(--border) !important; }
body .pc__title{ text-transform: none !important; letter-spacing: 0 !important; }


/* === Highest-priority fix: sticky only for summary on desktop === */
.cart-summary .pm-section.card{ position: static !important; top:auto !important; z-index:auto !important; }
.cart-summary .summary-card{ position: sticky !important; top: var(--space-6) !important;  }
/* Disable sticky on smaller viewports (avoid stacking issues) */
@media (max-width: 900px){
  .cart-summary .summary-card{ position: static !important; top:auto !important; }
}



/* Disable sticky entirely when forms are present in the aside */
.cart-summary.has-forms .summary-card{ position: static !important; top:auto !important; z-index:auto !important; }


.coupon-block{ margin-top:12px; }
.coupon-row{ display:flex; gap:8px; }
