
.oc-satc-variations .oc-satc-variation-field { margin-bottom: 12px; }
.oc-satc-variations label { display:block; margin-bottom:6px; font-weight:600; }
.oc-satc-variations select { width:100%; max-width:100%; }

.oc-satc-qty { display:inline-flex; align-items:center; gap:8px; }
.oc-satc-qty button { border:1px solid #ddd; background:#f7f7f7; padding:6px 10px; cursor:pointer; }
.oc-satc-qty-input { width:70px; text-align:center; }

.oc-satc-btn { display:inline-flex; align-items:center; gap:.5em; border:1px solid transparent; cursor:pointer; transition:.2s; }
.oc-satc-size-xs { font-size:12px; }
.oc-satc-size-sm { font-size:14px; }
.oc-satc-size-md { font-size:16px; }
.oc-satc-size-lg { font-size:18px; }
.oc-satc-size-xl { font-size:20px; }
.oc-satc-btn.is-loading { opacity:.6; pointer-events:none; }
.oc-satc-btn-wrap .oc-satc-msg { margin-top:8px; font-size:13px; }
.oc-satc-btn-wrap .oc-satc-msg.ok { color:#2e7d32; }
.oc-satc-btn-wrap .oc-satc-msg.err { color:#c62828; }

.oc-satc-price-wrap .oc-satc-price { font-weight:600; display:inline-block; }


/* OC: Variations buttons/swatches */
.oc-satc-variation-field{ margin-bottom:14px; }
.oc-satc-variation-field label{ display:block; margin-bottom:6px; font-weight:600; }
.oc-satc-attr-options{ display:flex; flex-wrap:wrap; gap:10px; margin-top:6px; }
.oc-satc-attr-option{ display:inline-flex; align-items:center; justify-content:center; border:1px solid #ddd; background:transparent; padding:8px 12px; cursor:pointer; user-select:none; transition:.15s; border-radius:8px; }
.oc-satc-attr-option:hover{ border-color:#aaa; }
.oc-satc-attr-option.active{ border-color:#111; box-shadow:0 0 0 2px rgba(0,0,0,.06) inset; }
.oc-satc-swatch{ padding:2px; border-radius:999px; border:1px solid #ddd; }
.oc-satc-swatch .oc-satc-swatch-dot{ width:22px; height:22px; display:block; border-radius:999px; background:var(--oc-satc-swatch, transparent); border:1px solid rgba(0,0,0,.1); }

