.blm-tb-wrap{margin:16px 0;padding:14px;border:1px solid #e5e7eb;border-radius:12px;background:#fff}
.blm-tb-title{margin:0 0 10px;font-size:18px}
.blm-tb-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:12px}
.blm-tb-card{border:1px solid #eef2f7;border-radius:12px;padding:12px;background:#fafafa}
.blm-tb-label{display:block;font-weight:600;margin-bottom:6px}
.blm-tb-hint{margin-top:6px;color:#6b7280;font-size:12px}
.blm-tb-slots{display:flex;flex-wrap:wrap;gap:8px}
.blm-tb-slot{padding:10px 10px;border-radius:999px;border:1px solid #d1d5db;background:#fff;cursor:pointer;font-size:14px}
.blm-tb-slot.is-selected{border-color:#111827;box-shadow:0 0 0 2px rgba(17,24,39,.08)}
.blm-tb-slot.is-full{opacity:.5;cursor:not-allowed;text-decoration:line-through}
.blm-tb-loading,.blm-tb-empty{color:#6b7280;font-size:13px;padding:6px 0}
.blm-tb-note{margin-top:10px;color:#374151;font-size:13px}
@media (max-width: 900px){
  .blm-tb-grid{grid-template-columns:1fr}
  .blm-tb-slot{width:100%;text-align:left}
}

.blm-tb-grid--simple{grid-template-columns:repeat(2,1fr)}
@media (max-width: 900px){.blm-tb-grid--simple{grid-template-columns:1fr}}

/* Quantity label improvements (variation-specific label) */
.single-product form.cart .quantity label{
  display:block;
  margin-bottom:6px;
  font-weight:600;
}

/* Injected quantity label (when theme doesn't render a <label>) */
.single-product form.cart .quantity .blm-tb-qty-label{
  display:block;
  margin-bottom:6px;
  font-weight:600;
  font-size:14px;
  line-height:1.2;
}
