.product-addons{width:100%;margin:2rem 0}.product-addons__title{font-size:1.3rem;margin:0 0 .2rem 0;color:rgba(var(--color-foreground),.75)}.product-addons__wrapper{position:relative}.product-addons__list{display:flex;flex-direction:column;gap:.8rem;padding:0}.product-addons--stack .product-addons__list{flex-wrap:wrap}.product-addons--stack .product-addons__list>*{flex:1 1 calc(50% - 0.5rem);min-width:0}.product-addons__item{display:flex;align-items:center;gap:1rem;padding:.8rem 1.2rem;border:2px solid var(--gray-10);border-radius:8px;background:var(--gray-10);transition:all .3s ease}.product-addons__item~.product-addons__item{margin:.8rem 0 0 0}.product-addons__item[data-selected=true]{background:#1df0bb0a;border-color:var(--green-70)}.product-addons__item-wrapper{list-style-type:none}.product-addons__item-image{flex-shrink:0;width:80px;height:80px;overflow:hidden;border-radius:4px}.product-addons__item-image img{width:100%;height:100%;object-fit:cover}.product-addons__item-info{flex:1;min-width:0}.product-addons__item-message{font-size:1.2rem;color:var(--gray-60);margin-bottom:.4rem;font-weight:500}.product-addons__item-title{font-size:1.6rem;font-weight:600;margin-bottom:.4rem;line-height:normal}.product-addons__item-title-link{color:var(--gray-70);text-decoration:none;transition:color .2s ease}.product-addons__item-title-link:hover{color:var(--black);text-decoration:underline}.product-addons__item-variant{font-size:1.4rem;color:var(--gray-60);margin-bottom:.2rem}.product-addons__item-image-link{display:block;width:100%;height:100%}.product-addons__item-feature{font-size:.875rem;color:#666;margin-bottom:.25rem}.product-addons__item-price{font-size:1.6rem;font-weight:600;color:var(--black);white-space:nowrap;margin:0 .5rem}.product-addons__item-quantity{flex-shrink:0;order:3;display:flex;position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.quantity-selector{display:flex;flex:none;align-items:center;gap:0;border:2px solid #e5e5e5;border-radius:4px;overflow:hidden;background:#fff}.quantity-selector__button{width:32px;height:32px;border:none;background:#fff;cursor:pointer;font-size:1.6rem;line-height:1;color:#333;display:flex;align-items:center;justify-content:center;transition:background-color .2s ease;padding:0}.quantity-selector__button:hover{background-color:#f5f5f5}.quantity-selector__button:active{background-color:#e5e5e5}.quantity-selector__input{width:40px;height:32px;border:none;text-align:center;font-size:1.4rem;font-weight:600;padding:0;background:#fff;-moz-appearance:textfield;appearance:textfield}.quantity-selector__input::-webkit-inner-spin-button,.quantity-selector__input::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}.quantity-selector__input:focus{outline:0}.product-addons__item-toggle{flex-shrink:0}.product-addons__toggle-button{width:52px;height:32px;border:none;border-radius:16px;background-color:#ccc;cursor:pointer;position:relative;transition:background-color .3s ease;padding:0}.product-addons__toggle-button:hover{background-color:#b3b3b3}.product-addons__toggle-button[aria-pressed=true]{background-color:var(--green-70)}.product-addons__toggle-button[aria-pressed=true]:hover{background-color:var(--green-80,#1a8f5a)}.product-addons__toggle-button:focus-visible{outline:2px solid var(--green-70);outline-offset:2px}.product-addons__toggle-icon{width:28px;height:28px;background-color:#fff;border-radius:50%;position:absolute;top:2px;left:2px;transition:transform .3s ease;box-shadow:0 2px 4px rgba(0,0,0,.2)}.product-addons__toggle-button[aria-pressed=true] .product-addons__toggle-icon{transform:translateX(20px)}.product-addons__toggle-icon::after,.product-addons__toggle-icon::before{display:none}.product-addons--carousel{position:relative;flex-direction:row}.product-addons__carousel{position:relative;display:block}.product-addons--carousel .slider{display:flex;overflow-x:auto;scroll-snap-type:x mandatory;scroll-behavior:smooth;-webkit-overflow-scrolling:touch;scrollbar-width:none;padding:0;margin:0;list-style:none}.product-addons--carousel .slider::-webkit-scrollbar{display:none}.product-addons--carousel .slider__slide{flex:0 0 100%;min-width:100%;max-width:100%;scroll-snap-align:start;scroll-snap-stop:always}.product-addons--carousel .product-addons__list{flex-direction:row}.product-addons--stack.product-addons--carousel .product-addons__stack-container{display:flex;flex-direction:column}.slider__buttons{display:flex;justify-content:space-between;align-items:center;margin-top:1rem}.product-addons--carousel .slider-counter--dots{display:flex;gap:.6rem;margin:0}.product-addons--carousel .slider-counter__link--dots{padding:0;background:0 0;border:none;cursor:pointer}.product-addons--carousel .slider-counter__link--dots .dot{width:10px;height:10px;border-radius:50%;background-color:rgba(var(--color-foreground),.3);transition:background-color .1s ease;display:block;border:none}.product-addons--carousel .slider-counter__link--active.slider-counter__link--dots .dot{background:var(--green-70)}.product-addons__arrows{display:flex}.product-addons__arrow{background:0 0;border:none;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:opacity .3s ease;color:rgba(var(--color-foreground),.75);padding:0}.product-addons__arrow:not(:disabled):hover{color:rgb(var(--color-foreground))}.product-addons__arrow:disabled{opacity:.3;cursor:not-allowed}.product-addons__arrow:focus-visible{outline:2px solid rgb(var(--color-foreground));outline-offset:2px}.product-addons__arrow svg{width:1.2rem;height:1.2rem;stroke:currentColor}.product-addons__arrow+.product-addons__arrow{margin-left:.5rem}.product-addons__arrow--prev{transform:rotate(90deg)}.product-addons__arrow--next{transform:rotate(-90deg)}@media screen and (max-width:768px){.product-addons__item{flex-wrap:wrap;gap:.75rem}.product-addons__item-image{width:60px;height:60px}.product-addons__item-info{flex-basis:calc(100% - 80px)}.product-addons__item-price{order:4;margin:0}.product-addons__item-quantity{order:5}.product-addons__item-toggle{order:6}.product-addons--stack .product-addons__list>*{flex:1 1 100%}.product-addons__toggle-button{width:40px;height:40px}}@media screen and (max-width:480px){.product-addons__title{font-size:1rem}.product-addons__item{padding:.75rem}.product-addons__item-title{font-size:.875rem}.product-addons__item-price{font-size:1rem}.product-addons__quantity-input{width:50px;padding:.375rem}}