.product-runtime{
  margin:18px 13px 28px;
  padding:22px;
  border:1px solid var(--border);
  border-radius:16px;
  background:var(--surface);
  color:var(--text);
}
.runtime-head{
  display:flex;
  justify-content:space-between;
  gap:20px;
  align-items:flex-end;
  margin-bottom:18px;
}
.runtime-head h2{
  margin:0;
  color:var(--text);
  font-size:1.35rem;
  letter-spacing:-.025em;
}
.runtime-head p{
  margin:5px 0 0;
  color:var(--muted);
  font-size:.82rem;
}
.page-chip{
  padding:7px 10px;
  border:1px solid var(--border);
  border-radius:999px;
  background:var(--surface-soft);
  color:var(--text);
  font-size:.72rem;
  font-weight:800;
  white-space:nowrap;
}
.product-grid{
  display:grid;
  grid-template-columns:repeat(4,minmax(0,1fr));
  gap:14px;
}
.product-card{
  overflow:hidden;
  min-width:0;
  border:1px solid var(--border);
  border-radius:13px;
  background:var(--surface);
  color:var(--text);
}
.product-image-link{
  height:170px;
  display:grid;
  place-items:center;
  padding:14px;
  background:var(--surface-soft);
  text-decoration:none;
}
.product-image-link img{
  display:block;
  max-width:100%;
  max-height:142px;
  width:auto;
  height:auto;
  object-fit:contain;
}
.image-placeholder{
  display:grid;
  place-items:center;
  width:72px;
  height:72px;
  border:1px dashed var(--border);
  border-radius:12px;
  color:var(--muted);
  font-weight:900;
  letter-spacing:.1em;
}
.product-card-body{
  padding:13px 14px 15px;
  background:var(--surface);
  color:var(--text);
}
.product-gtin{
  color:var(--muted);
  font-size:.64rem;
  font-weight:750;
  letter-spacing:.035em;
}
.product-card h3{
  min-height:3.5em;
  margin:7px 0 12px;
  color:var(--text);
  font-size:.86rem;
  line-height:1.35;
}
.product-card h3 a{
  color:inherit;
  text-decoration:none;
}
.product-card h3 a:hover{color:var(--accent)}
.product-price{
  display:flex;
  align-items:baseline;
  gap:6px;
  color:var(--text);
}
.product-price span{
  color:var(--muted);
  font-size:.72rem;
}
.product-price strong{
  color:var(--text);
  font-size:.95rem;
}
.pagination{
  display:grid;
  grid-template-columns:1fr auto 1fr;
  align-items:center;
  gap:15px;
  margin-top:22px;
  padding-top:17px;
  border-top:1px solid var(--border);
}
.pagination a{
  color:var(--accent);
  font-size:.8rem;
  font-weight:800;
  text-decoration:none;
}
.pagination a:last-child{text-align:right}
.pagination strong{
  color:var(--text);
  font-size:.76rem;
}
.empty-state{
  padding:30px;
  border:1px dashed var(--border);
  border-radius:13px;
  background:var(--surface-soft);
  color:var(--muted);
  text-align:center;
}
.runtime-metric{display:none}

html[data-theme="dark"] .product-runtime,
html[data-theme="dark"] .product-card,
html[data-theme="dark"] .product-card-body{
  background:var(--surface);
  color:var(--text);
}
html[data-theme="dark"] .product-image-link,
html[data-theme="dark"] .page-chip,
html[data-theme="dark"] .empty-state{
  background:var(--surface-soft);
}
html[data-theme="warm"] .product-runtime,
html[data-theme="warm"] .product-card,
html[data-theme="warm"] .product-card-body{
  background:var(--surface);
  color:var(--text);
}
html[data-theme="warm"] .product-image-link,
html[data-theme="warm"] .page-chip,
html[data-theme="warm"] .empty-state{
  background:var(--surface-soft);
}

@media(max-width:860px){
  .product-grid{grid-template-columns:repeat(3,minmax(0,1fr))}
}
@media(max-width:660px){
  .product-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .product-runtime{margin-left:8px;margin-right:8px;padding:15px}
  .runtime-head{align-items:flex-start}
  .product-image-link{height:145px}
}
@media(max-width:420px){
  .product-grid{grid-template-columns:1fr 1fr;gap:9px}
  .product-card-body{padding:10px}
  .product-card h3{font-size:.8rem}
  .product-image-link{height:125px;padding:9px}
  .pagination{grid-template-columns:1fr auto 1fr}
}

/* V1.3.66.6: compact, consistent separation between category rows. */
.category-button-row-spaced{margin-top:10px}
.category-rows-after-products{margin-top:0}
.selected-category-runtime{margin-top:0;margin-bottom:0}
.selected-category-ad{margin-top:16px!important;margin-bottom:16px!important}
@media(max-width:660px){
  .category-button-row-spaced{margin-top:10px}
  .selected-category-ad{margin-top:12px!important;margin-bottom:12px!important}
}


/* V1.3.67.0 production shell alignment */
.page-footer a {
  position: relative;
  left: -3px;
}
.category-button-row-spaced {
  margin-top: 10px;
}
