/* Default Product Switcher styling. :where() keeps specificity at zero so any theme overrides it. */
:where(.product-switcher) { margin-top: 1.25rem; }
:where(.product-switcher__label) { margin: 0 0 .5rem; font-weight: 600; }
:where(.product-switcher__value) { font-weight: 400; }
:where(.product-switcher__options) { display: flex; flex-wrap: wrap; gap: .5rem; margin: 0; padding: 0; list-style: none; }
:where(.product-switcher__option) { display: inline-flex; flex-direction: column; align-items: center; gap: .25rem; border: 1px solid #d1d5db; border-radius: 9999px; padding: .4rem .9rem; font-size: .875rem; color: inherit; text-decoration: none; }
:where(.product-switcher__option--current) { border-color: currentColor; box-shadow: inset 0 0 0 1px currentColor; }
:where(.product-switcher__option--oos) { opacity: .5; text-decoration: line-through; }
:where(.product-switcher__option--image) { width: 5.5rem; border-radius: .375rem; padding: .25rem; font-size: .75rem; text-align: center; }
:where(.product-switcher__option--image img) { width: 100%; aspect-ratio: 1; object-fit: cover; border-radius: .25rem; }
:where(.product-switcher__option--swatch) { padding: .2rem; }
:where(.product-switcher__dot) { display: block; width: 1.75rem; height: 1.75rem; border-radius: 9999px; }
:where(.product-switcher__sr) { position: absolute; width: 1px; height: 1px; overflow: hidden; clip: rect(0 0 0 0); white-space: nowrap; }
