/* Catalog pages and home catalog blocks (products_build.py), on top of the Bench Notes style.css. */
.m5{background:var(--muted)}
.pgrid.catalog{grid-template-columns:repeat(auto-fill,minmax(300px,1fr))}
.pgrid.catalog .pcard h3{font-size:clamp(1.3rem,2vw,1.7rem)}
.pcard.bundle{border-style:dashed}
.soonlist{margin-top:56px;border-top:1px solid var(--line);padding-top:24px}
.soongrid{display:grid;grid-template-columns:repeat(auto-fit,minmax(260px,1fr));gap:12px 32px}
.soongrid ul{list-style:none;padding:0;margin:0 0 18px;font-size:.82rem}
.soongrid li{display:flex;justify-content:space-between;gap:10px;padding:7px 0;border-bottom:1px solid var(--line)}
.soongrid li a{color:var(--ink);text-decoration:none}
.soongrid li a:hover{color:var(--neutral)}
.soongrid li b{display:inline-block;min-width:3.2em;color:var(--muted);font-weight:500}
.soongrid li span{color:var(--muted);white-space:nowrap}
.buybox ul.compare li a{color:var(--ink)}
.bundlelist li{grid-template-columns:1fr auto}
.bundlelist li a{color:var(--ink)}
.gallery.g4{grid-template-columns:repeat(4,minmax(0,1fr))}
.gallery.g4 .sheets{grid-column:1/-1;grid-template-columns:repeat(4,minmax(0,1fr))}
@media(max-width:900px){.gallery.g4,.gallery.g4 .sheets{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:520px){.gallery.g4,.gallery.g4 .sheets{grid-template-columns:1fr}}
#upgrade{background:var(--surface);border:1px solid var(--line);border-radius:10px;padding:18px;margin:24px 0}
