/* Guide product module. Markup comes from lib/guide-products.mjs. */
/* display:flex below and on the guide's inline .rl-sb-* rules would beat the browser's [hidden]. */
.gpm [hidden], .rl-sb-prices[hidden], .rl-sb-price-row[hidden] { display: none; }
.gpm { margin: 22px 0; padding: 16px 18px; background: #0a0d12; border: 1px solid #1a1d24; border-left: 3px solid #01D3A0; border-radius: 10px; }
.gpm-hdr { font-family: 'Geist Mono', monospace; font-size: 0.68rem; font-weight: 500; letter-spacing: 0.1em; text-transform: uppercase; color: #01D3A0; margin-bottom: 12px; }
.gpm-cards { display: grid; grid-template-columns: repeat(auto-fit, minmax(190px, 1fr)); gap: 10px; }
.gpm-card { display: flex; flex-direction: column; gap: 8px; padding: 12px 14px; background: #030407; border: 1px solid #232732; border-radius: 8px; text-decoration: none; transition: border-color .15s; }
.gpm-card:hover { border-color: #01D3A0; text-decoration: none; }
.gpm-card-lead { border-color: rgba(1,211,160,.45); }
.gpm-name { color: #F3F4F6; font-size: 1rem; font-weight: 700; line-height: 1.3; }
.gpm-sizes { display: flex; flex-wrap: wrap; gap: 4px 12px; }
.gpm-size { color: #9CA3AF; font-size: 0.82rem; }
.gpm-size b { color: #F3F4F6; font-weight: 600; }
.gpm-go { margin-top: auto; color: #01D3A0; font-size: 0.82rem; font-weight: 600; }
.gpm-meta { margin-top: 10px; color: #9CA3AF; font-size: 0.76rem; }
.gpm-browse { display: inline-block; padding: 10px 16px; background: #01D3A0; color: #030407; font-weight: 700; font-size: 0.875rem; border-radius: 8px; text-decoration: none; }
.gpm-browse:hover { background: #00bfbf; text-decoration: none; }
.gpm .gpm-ruo { margin: 8px 0 0; color: #6B7280; font-size: 0.74rem; line-height: 1.5; }
@media (max-width: 480px) {
  .gpm { padding: 14px; }
  .gpm-cards { grid-template-columns: 1fr; }
  .gpm-card, .gpm-browse { min-height: 44px; }
  .gpm-browse { display: block; text-align: center; }
}
