/* CLS Studio Shop: minimal styles so it works in any theme. The
   Caitlin's Little Studio theme restyles all of this. */
.cls-hidden-select { position: absolute; left: -9999px; }
.cls-swatch-wrap { position: relative; }
.cls-swatch-group { display: flex; gap: 10px; flex-wrap: wrap; margin-top: 8px; }
.cls-swatch-btn { width: 34px; height: 34px; border-radius: 50%; border: 2px solid transparent; padding: 0; cursor: pointer; }
.cls-swatch-btn.is-selected { outline: 1.5px solid #3A2F28; outline-offset: 3px; }
.cls-swatch-btn.is-light { border-color: #8A7A6C; }
.cls-swatch-btn[disabled] { opacity: 0.25; cursor: not-allowed; }
.cls-swatch-btn--text { width: auto; height: auto; border-radius: 4px; border: 1px solid #8A7A6C; padding: 8px 14px; font: inherit; font-size: 13px; background: transparent; }
.cls-swatch-btn--text.is-selected { outline: 0; border-color: #3A2F28; }
.cls-swatch-current { font-size: 13px; color: #8A7A6C; float: right; }
.cls-badge--oneofone { color: #C9A24E; font-size: 11px; letter-spacing: 0.2em; text-transform: uppercase; font-weight: 700; }
.cls-reserve { display: block; color: #C9A24E; font-size: 12px; letter-spacing: 0.15em; text-transform: uppercase; margin-top: 6px; }
.cls-reserve__note { display: block; text-transform: none; letter-spacing: 0; color: #8A7A6C; }
.cls-lead-note { font-size: 13px; color: #8A7A6C; text-align: center; }
.cls-variation-note { background: #EBD5D0; padding: 14px 16px; border-radius: 6px; font-size: 13px; margin-top: 20px; }
.cls-gift-wrap { display: flex; align-items: center; gap: 8px; font-size: 13px; margin-top: 12px; }
