/* Forge N Build — site chrome (header/nav/PDP/cart/form). Namespaced pv-/forge-. */
.pv-header {
  position: sticky; top: 0; z-index: 50;
  background: rgba(247,245,241,0.92);
  backdrop-filter: blur(10px);
  border-bottom: 1px solid var(--forge-line);
}
.pv-header__bar {
  display: flex; align-items: center; gap: var(--forge-space-4);
  min-height: 60px;
}
.pv-logo {
  font-weight: 750; letter-spacing: -0.02em; font-size: 1.15rem;
  color: var(--forge-ink); text-decoration: none; display: inline-flex; align-items: center; gap: 0.5rem;
}
.pv-logo__mark { width: 26px; height: 26px; border-radius: 6px; background: var(--forge-ink); color: #fff; display: grid; place-items: center; font-size: 0.8rem; font-family: var(--forge-font-mono); }
.pv-nav { display: none; gap: var(--forge-space-6); margin-left: var(--forge-space-6); }
.pv-nav a { color: var(--forge-ink); text-decoration: none; font-weight: 550; font-size: 0.95rem; padding: 0.5rem 0; }
.pv-nav a:hover { color: var(--forge-accent-strong); }
.pv-nav a[aria-current="page"] { color: var(--forge-accent-strong); box-shadow: inset 0 -2px 0 var(--forge-accent); }
.pv-actions { margin-left: auto; display: flex; align-items: center; gap: var(--forge-space-2); }
.pv-iconbtn {
  display: inline-flex; align-items: center; justify-content: center;
  width: var(--forge-tap-target); height: var(--forge-tap-target);
  border: none; background: transparent; border-radius: var(--forge-radius-sm);
  color: var(--forge-ink); cursor: pointer; text-decoration: none;
}
.pv-iconbtn:hover { background: rgba(22,24,26,0.06); }
.pv-iconbtn:focus-visible { outline: none; box-shadow: var(--forge-focus-ring); }
.pv-cart-count {
  position: absolute; transform: translate(10px, -10px);
  background: var(--forge-accent); color: #fff; font-size: 0.65rem; font-weight: 700;
  min-width: 16px; height: 16px; border-radius: 999px; display: grid; place-items: center; padding: 0 4px;
}
@media (min-width: 990px) {
  .pv-nav { display: flex; }
  .pv-menu-toggle { display: none; }
}
.pv-drawer { display: none; border-top: 1px solid var(--forge-line); background: var(--forge-paper); }
.pv-drawer[data-open] { display: block; }
.pv-drawer a {
  display: flex; align-items: center; min-height: var(--forge-tap-target);
  padding: 0 var(--forge-gutter); color: var(--forge-ink); text-decoration: none; font-weight: 550;
}
.pv-drawer a:hover { background: rgba(22,24,26,0.05); }

/* search overlay */
.pv-search { border-top: 1px solid var(--forge-line); background: var(--forge-paper); display: none; }
.pv-search[data-open] { display: block; }
.pv-search form { display: flex; gap: var(--forge-space-2); padding: var(--forge-space-3) var(--forge-gutter); }
.pv-search input {
  flex: 1; font: inherit; min-height: var(--forge-tap-target);
  padding: 0 0.85rem; border: 1px solid var(--forge-line); border-radius: var(--forge-radius-sm);
}

/* breadcrumbs */
.pv-crumbs { font-size: var(--forge-text-sm); color: var(--forge-steel-dark); padding-block: var(--forge-space-4); }
.pv-crumbs a { color: inherit; }

/* PDP */
.pv-pdp { display: grid; gap: var(--forge-space-8); padding-block: var(--forge-space-8); }
@media (min-width: 990px) { .pv-pdp { grid-template-columns: 1.15fr 1fr; gap: var(--forge-space-16); } }
.pv-gallery__main {
  border-radius: var(--forge-radius); overflow: hidden; background: #edeae4;
  border: 1px solid var(--forge-line); cursor: zoom-in;
}
.pv-gallery__main img { width: 100%; height: auto; display: block; }
.pv-gallery__thumbs { display: flex; gap: var(--forge-space-2); margin-top: var(--forge-space-3); }
.pv-gallery__thumbs button {
  width: 72px; height: 72px; border-radius: var(--forge-radius-sm); overflow: hidden;
  border: 2px solid transparent; padding: 0; cursor: pointer; background: #edeae4;
}
.pv-gallery__thumbs button[aria-current="true"] { border-color: var(--forge-accent); }
.pv-gallery__thumbs img { width: 100%; height: 100%; object-fit: cover; display: block; }
.pv-buybox { display: grid; gap: var(--forge-space-4); align-content: start; }
.pv-qty { display: inline-flex; align-items: center; border: 1px solid var(--forge-line); border-radius: var(--forge-radius-sm); }
.pv-qty button { width: var(--forge-tap-target); height: var(--forge-tap-target); border: none; background: transparent; font-size: 1.1rem; cursor: pointer; }
.pv-qty input { width: 3rem; text-align: center; border: none; font: inherit; height: var(--forge-tap-target); }
.pv-pending {
  font-family: var(--forge-font-mono); font-size: 0.75rem; letter-spacing: 0.06em;
  color: #8a6d1a; background: #faf3dd; border: 1px dashed #d9c68a;
  padding: 0.5rem 0.75rem; border-radius: var(--forge-radius-sm);
}

/* lightbox */
.pv-lightbox { position: fixed; inset: 0; z-index: 100; background: rgba(15,17,18,0.92); display: none; place-items: center; padding: 2rem; }
.pv-lightbox[data-open] { display: grid; }
.pv-lightbox img { max-width: 100%; max-height: 90vh; border-radius: var(--forge-radius-sm); }
.pv-lightbox button { position: absolute; top: 1rem; right: 1rem; }

/* cart page */
.pv-cart-row {
  display: grid; grid-template-columns: 88px 1fr auto; gap: var(--forge-space-4);
  align-items: center; padding-block: var(--forge-space-4); border-bottom: 1px solid var(--forge-line);
}
.pv-cart-row img { width: 88px; height: 88px; object-fit: cover; border-radius: var(--forge-radius-sm); background:#edeae4; }

/* skip link */
.pv-skip {
  position: absolute; left: -9999px; top: 0; z-index: 200;
  background: var(--forge-ink); color: #fff; padding: 0.75rem 1.25rem; border-radius: 0 0 8px 0;
}
.pv-skip:focus { left: 0; }

body { margin: 0; font-family: var(--forge-font-sans); font-size: var(--forge-text-base); line-height: var(--forge-lh-body); background: var(--forge-paper); color: var(--forge-ink); }
