/* Williams Variation Table — styles scoped */
.wvt { --wvt-green:#386C5F; --wvt-mint:#A6C9BE; --wvt-pill:#C97B39; --wvt-gray:#91A19A; --wvt-oos:#C94D39; }

.wvt { display:grid; gap:12px; font-family:inherit; }
.wvt__header,
.wvt__row { display:grid; grid-template-columns: 1fr auto auto; align-items:center; gap:12px; }

.wvt__header { font-size:.875rem; color:#6b7a74; padding:2px 4px; }
.wvt__body   { display:grid; gap:10px; }

.wvt__row { padding:10px 12px; border:1px solid #E7EEEB; border-radius:14px; background:#fff; }

.wvt__name-text { color:var(--wvt-green); font-weight:600; /* Reade Pro SemiBold equiv */ }
.wvt__badge { margin-left:8px; font-size:.75rem; padding:2px 8px; border-radius:999px; }
.wvt__badge--oos { background:#FCEDEC; color:var(--wvt-oos); }

.wvt__price { display:flex; align-items:center; gap:8px; justify-self:end; }
.wvt__price-crossed { text-decoration:line-through; color:#b9c4bf; }
.wvt__price-pill { background:var(--wvt-pill); color:#fff; padding:6px 12px; border-radius:999px; font-weight:600; }
.wvt__save { color:#C97B39; font-size:.875rem; }

.wvt__qty { display:flex; align-items:center; gap:8px; }
.wvt__btn { width:76px; height:36px; border-radius:999px; border:0; background:#C5DBD4; color:#2F4D45; font-size:18px; font-weight:700; cursor:pointer; transition:transform .06s ease; }
.wvt__btn:active { transform:translateY(1px); }
.wvt__btn[disabled] { opacity:.4; cursor:not-allowed; }

.wvt__input { width:52px; text-align:center; border:0; background:#E6F0EC; color:#2F4D45; height:36px; border-radius:999px; font-weight:700; }

.wvt__footer { display:flex; align-items:center; gap:14px; margin-top:6px; }
.wvt__addall { background:var(--wvt-green); color:#fff; border:0; border-radius:999px; padding:10px 18px; font-weight:700; cursor:pointer; }
.wvt__addall[disabled] { opacity:.6; cursor:not-allowed; }
.wvt__note { font-size:.9rem; color:var(--wvt-green); min-height:1.2em; }

/* Responsive */
@media (max-width: 640px) {
  .wvt__header { display:none; }
  .wvt__row { grid-template-columns: 1fr; gap:8px; }
  .wvt__price { justify-self:start; }
}
