.variant-selector{flex-direction:column;gap:14px;display:flex}.variant-selector__group{flex-direction:column;gap:8px;display:flex}.variant-selector__label{color:color-mix(in srgb, var(--foreground) 70%, transparent);text-transform:uppercase;letter-spacing:.04em;font-size:13px;font-weight:600}.variant-selector__values{flex-wrap:wrap;gap:8px;display:flex}.variant-selector__chip{border:1.5px solid color-mix(in srgb, var(--foreground) 20%, transparent);color:var(--foreground);cursor:pointer;background:0 0;border-radius:6px;padding:6px 16px;font-size:13px;font-weight:500;transition:border-color .15s,background .15s,color .15s}.variant-selector__chip:hover{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 8%, transparent)}.variant-selector__chip--selected{border-color:var(--accent);background:color-mix(in srgb, var(--accent) 12%, transparent);color:var(--accent)}.variant-selector__swatch{cursor:pointer;outline-offset:2px;border:2.5px solid #0000;border-radius:50%;outline:2px solid #0000;width:32px;height:32px;transition:transform .15s,outline .15s}.variant-selector__swatch:hover{transform:scale(1.1)}.variant-selector__swatch--selected{outline-color:var(--accent)}
.favorite-btn{border:1.5px solid color-mix(in srgb, var(--foreground) 20%, transparent);cursor:pointer;background:0 0;border-radius:50%;flex-shrink:0;justify-content:center;align-items:center;width:44px;height:44px;transition:background .2s,border-color .2s,transform .15s;display:flex}.favorite-btn:hover{background:#ef44441a;border-color:#ef4444;transform:scale(1.05)}.favorite-btn--active{background:#ef444426;border-color:#ef4444}.favorite-btn__icon{opacity:.6;filter:brightness(0);transition:filter .2s}[data-theme=dark] .favorite-btn__icon{filter:brightness(0)invert()}.favorite-btn--active .favorite-btn__icon{opacity:1;filter:invert(28%)sepia(95%)saturate(700%)hue-rotate(330deg)brightness()contrast(90%)}[data-theme=dark] .favorite-btn--active .favorite-btn__icon{filter:invert(40%)sepia(85%)saturate(600%)hue-rotate(320deg)brightness(110%)contrast(90%)}
.action-buttons{flex-direction:column;gap:10px;width:100%;display:flex}
