/* iDigital Design — product card: swatches (color / image / button), color counter, variation thumbs, text. */
:where(.iddd-pc-sw){--iddd-sw-w:18px;--iddd-sw-h:18px;--iddd-sw-radius:50%;--iddd-sw-gap:6px;--iddd-sw-bw:1px;--iddd-sw-border:rgba(0,0,0,.15);--iddd-sw-hover:rgba(0,0,0,.45);--iddd-sw-selected:#111;--iddd-sw-ring-offset:2px;--iddd-sw-scale:1;--iddd-sw-oos-opacity:.45;--iddd-sw-oos-line:rgba(0,0,0,.65);--iddd-sw-tip-bg:#111;--iddd-sw-tip-color:#fff;--iddd-cnt-dot:18px;--iddd-cnt-overlap:7px;--iddd-cnt-ring:#fff;--iddd-th-size:40px;--iddd-th-radius:6px;display:flex;flex-wrap:wrap;align-items:center;gap:6px}
:where(.iddd-pc-sw.--shape-rounded){--iddd-sw-radius:4px}
:where(.iddd-pc-sw.--shape-square){--iddd-sw-radius:0}
:where(.iddd-pc-sw.--shape-pill){--iddd-sw-radius:999px;--iddd-sw-w:30px;--iddd-sw-h:16px}
:where(.iddd-pc-sw.--shape-line){--iddd-sw-radius:2px;--iddd-sw-w:20px;--iddd-sw-h:4px;--iddd-sw-bw:0px}
.iddd-pc-sw__list,.iddd-pc-sw__thumbs{display:flex;flex-wrap:wrap;align-items:center;gap:var(--iddd-sw-gap)}
.iddd-pc-sw-nowrap-yes .iddd-pc-sw__list,.iddd-pc-sw-nowrap-yes .iddd-pc-sw__thumbs{flex-wrap:nowrap;overflow-x:auto;scrollbar-width:none;padding:3px}
.iddd-pc-sw-nowrap-yes .iddd-pc-sw__list::-webkit-scrollbar,.iddd-pc-sw-nowrap-yes .iddd-pc-sw__thumbs::-webkit-scrollbar{display:none}
.iddd-pc-sw__item{position:relative;display:inline-flex;align-items:center;justify-content:center;flex:0 0 auto;color:inherit;line-height:1;text-decoration:none;cursor:pointer;transition:transform .2s ease}
.iddd-pc-sw[data-click="none"] .iddd-pc-sw__item{cursor:default}
.iddd-pc-sw__item:hover{transform:scale(var(--iddd-sw-scale))}
.iddd-pc-sw .iddd-pc-sw__swatch{display:block;box-sizing:border-box;width:var(--iddd-sw-w);height:var(--iddd-sw-h);border:var(--iddd-sw-bw) solid var(--iddd-sw-border);border-radius:var(--iddd-sw-radius);background-color:var(--sw-color,#ddd);background-position:center;background-size:cover;background-repeat:no-repeat;transition:box-shadow .2s ease,border-color .2s ease,opacity .2s ease,filter .2s ease}
.iddd-pc-sw .--type-color.--dual .iddd-pc-sw__swatch{background-image:linear-gradient(var(--rey-var-swatch-gradient-angle,90deg),var(--sw-color) 50%,var(--sw-color2) 50%)}
.iddd-pc-sw .--type-image .iddd-pc-sw__swatch{background-color:#f3f3f3;background-image:var(--sw-img)}
.iddd-pc-sw .--type-button .iddd-pc-sw__swatch{width:auto;min-width:var(--iddd-sw-w);height:auto;min-height:var(--iddd-sw-h);padding:.3em .65em;border-radius:6px;background:#fff;font-size:12px;line-height:1.3;white-space:nowrap}
.iddd-pc-sw__item:hover .iddd-pc-sw__swatch,.iddd-pc-sw__item:focus-visible .iddd-pc-sw__swatch{box-shadow:0 0 0 var(--iddd-sw-ring-offset) #fff,0 0 0 calc(var(--iddd-sw-ring-offset) + 1px) var(--iddd-sw-hover)}
.iddd-pc-sw__item.is-selected .iddd-pc-sw__swatch{box-shadow:0 0 0 var(--iddd-sw-ring-offset) #fff,0 0 0 calc(var(--iddd-sw-ring-offset) + 1.5px) var(--iddd-sw-selected)}
.iddd-pc-sw .--type-button.is-selected .iddd-pc-sw__swatch{border-color:var(--iddd-sw-selected)}
/* out of stock */
.iddd-pc-sw.--oos-dim .--oos .iddd-pc-sw__swatch,.iddd-pc-sw.--oos-cross .--oos .iddd-pc-sw__swatch,.iddd-pc-sw.--oos-strike .--oos .iddd-pc-sw__swatch{opacity:var(--iddd-sw-oos-opacity)}
.iddd-pc-sw.--oos-blur .--oos .iddd-pc-sw__swatch{opacity:var(--iddd-sw-oos-opacity);filter:blur(1px)}
.iddd-pc-sw.--oos-cross .--oos::after,.iddd-pc-sw.--oos-strike .--oos::after{content:"";position:absolute;inset:0;border-radius:var(--iddd-sw-radius);pointer-events:none}
.iddd-pc-sw.--oos-cross .--oos::after{background:linear-gradient(45deg,transparent calc(50% - .75px),var(--iddd-sw-oos-line) calc(50% - .75px) calc(50% + .75px),transparent calc(50% + .75px)),linear-gradient(-45deg,transparent calc(50% - .75px),var(--iddd-sw-oos-line) calc(50% - .75px) calc(50% + .75px),transparent calc(50% + .75px))}
.iddd-pc-sw.--oos-strike .--oos::after{background:linear-gradient(-45deg,transparent calc(50% - .75px),var(--iddd-sw-oos-line) calc(50% - .75px) calc(50% + .75px),transparent calc(50% + .75px))}
.iddd-pc-sw .--type-thumb.--oos .iddd-pc-sw__thumb{opacity:var(--iddd-sw-oos-opacity)}
/* "+N", label, text */
.iddd-pc-sw__more{padding:0 2px;color:inherit;font-size:12px;line-height:1;text-decoration:none;opacity:.75}
.iddd-pc-sw__label{font-size:12px;line-height:1.3;opacity:.8}
.iddd-pc-sw__label.--hover:empty{display:none}
.iddd-pc-sw__text{color:inherit;font-size:12px;text-decoration:none}
/* tooltip bubble */
/* hidden tips use display:none so they never create horizontal page overflow near the viewport edges */
.iddd-pc-sw__tip{position:absolute;bottom:calc(100% + 8px);left:50%;z-index:5;display:none;padding:3px 8px;border-radius:6px;background:var(--iddd-sw-tip-bg);color:var(--iddd-sw-tip-color);font-size:11px;line-height:1.5;white-space:nowrap;transform:translateX(-50%);pointer-events:none}
.iddd-pc-sw__tip::after{content:"";position:absolute;top:100%;left:50%;margin-left:-4px;border:4px solid transparent;border-top-color:var(--iddd-sw-tip-bg)}
.iddd-pc-sw__item:hover .iddd-pc-sw__tip,.iddd-pc-sw__item:focus-visible .iddd-pc-sw__tip{display:block;animation:iddd-sw-tip .18s ease both}
@keyframes iddd-sw-tip{from{opacity:0;transform:translate(-50%,4px)}to{opacity:1;transform:translate(-50%,0)}}
/* variation thumbs */
.iddd-pc-sw .--type-thumb{overflow:hidden;border:1.5px solid transparent;border-radius:var(--iddd-th-radius)}
.iddd-pc-sw__thumb{display:block;width:var(--iddd-th-size);height:var(--iddd-th-size);object-fit:cover}
.iddd-pc-sw .--type-thumb:hover,.iddd-pc-sw .--type-thumb.is-selected{border-color:var(--iddd-sw-selected)}
/* color counter (same look as iDigital Design count badge) */
.iddd-pc-sw .iddd-pc-sw__countwrap{display:inline-flex;align-items:center;gap:6px;box-sizing:border-box;height:32px;padding:0 9px;border-radius:999px;background:#fff;box-shadow:0 1px 4px rgba(0,0,0,.14);color:#1a1a1a;font-size:12px;line-height:1;pointer-events:auto;user-select:none}
.iddd-pc-sw .iddd-pc-sw__countwrap.iddd-color-variants--clickable{cursor:pointer}
.iddd-pc-sw__dots{display:inline-flex;align-items:center;flex-shrink:0;line-height:0}
.iddd-pc-sw .iddd-pc-sw__dot{position:relative;display:block;flex-shrink:0;box-sizing:border-box;width:var(--iddd-cnt-dot);height:var(--iddd-cnt-dot);border:1.5px solid var(--iddd-cnt-ring);border-radius:50%;background-color:var(--sw-color,#d9d9d9);background-image:var(--sw-img,none);background-position:center;background-size:cover;background-repeat:no-repeat}
.iddd-pc-sw .iddd-pc-sw__dot+.iddd-pc-sw__dot{margin-inline-start:calc(-1 * var(--iddd-cnt-overlap))}
.iddd-pc-sw__count{font-variant-numeric:tabular-nums}
@media (max-width:767px){.iddd-pc-sw .iddd-pc-sw__countwrap{height:28px;gap:5px;padding:0 7px;font-size:11px}:where(.iddd-pc-sw){--iddd-cnt-dot:16px;--iddd-cnt-overlap:6px}}
/* Rey output inside a card */
.iddd-pc-sw.--display-rey .rey-productVariations2{display:block!important}
