#floatingCart{position:fixed;right:24px;bottom:24px;z-index:35;display:grid;place-items:center;width:62px;height:62px;min-width:62px;padding:0;border:1px solid #d7e3c7;border-radius:50%;background:#e4edd8;color:#354d25;box-shadow:0 8px 26px #263b2426;font-size:0;cursor:pointer}#floatingCart:before{display:none}#floatingCart svg{display:block;width:29px;height:29px}#floatingCart:hover{background:#d8e7c5;transform:translateY(-3px)}#floatingCart b{top:-3px;right:-3px}#floatingCart.cart-bounce{animation:cart-pop .65s cubic-bezier(.22,.8,.3,1)}#floatingCart.cart-bounce svg{animation:cart-shake .65s ease}.back-to-top{bottom:102px!important}.cookie-notice{bottom:104px!important}body:has(#overlay.open) #floatingCart{visibility:hidden}@keyframes cart-pop{0%,100%{transform:translateY(0) scale(1)}35%{transform:translateY(-15px) scale(1.12)}65%{transform:translateY(2px) scale(.96)}}@keyframes cart-shake{20%{transform:rotate(-18deg)}50%{transform:rotate(16deg)}80%{transform:rotate(-6deg)}}[data-preview-product]{cursor:zoom-in}[data-preview-product]:focus-visible{outline:2px solid #77974e;outline-offset:4px}.product-photo-dialog{box-sizing:border-box;width:min(700px,calc(100% - 28px));max-height:calc(100dvh - 32px);overflow:auto;border:1px solid #e1e6d8;border-radius:26px;padding:28px;background:#fffef9;color:#273022}.product-photo-dialog::backdrop{background:#172213a6;backdrop-filter:blur(5px)}.product-photo-dialog>img{display:block;width:100%;height:auto;max-height:65dvh;object-fit:contain}.product-photo-dialog h2{font-size:21px;margin:18px 0 10px}.product-photo-dialog p{font-size:14px;line-height:1.7;margin:0;color:#718069}.photo-preview-close{position:absolute;right:12px;top:12px;width:40px;height:40px;border:0;border-radius:50%;background:#edf1e6;color:#34492a;font:28px/1 system-ui;cursor:pointer}.call-confirmation-note{font-size:12px;line-height:1.7;color:#536047;background:#edf2e5;border-radius:12px;padding:13px 15px;margin:18px 0 4px}.promotion-photo-wrap{position:relative;display:block;flex-shrink:0}.birthday-candle{position:absolute;width:5px;height:20px;background:repeating-linear-gradient(35deg,#ff9c35 0 4px,#fff6d9 4px 8px);border-radius:2px;left:54%;top:12%;transform:rotate(5deg);box-shadow:0 1px 2px #49361933}.birthday-candle:before{content:"";position:absolute;left:-1px;top:-10px;width:7px;height:10px;border-radius:70% 30% 60% 40%;background:#ffab21;box-shadow:0 0 6px #ffb93a80}@media(max-width:600px){#floatingCart{right:5%;bottom:calc(18px + env(safe-area-inset-bottom));width:56px;height:56px;min-width:56px}.cookie-notice{bottom:calc(90px + env(safe-area-inset-bottom))!important}.product-photo-dialog{padding:20px}.product-photo-dialog h2{font-size:18px}.back-to-top{right:5%;bottom:90px!important}body:has(.cookie-notice) .back-to-top{bottom:185px!important}}@media(prefers-reduced-motion:reduce){#floatingCart.cart-bounce,#floatingCart.cart-bounce svg{animation:none}#floatingCart:hover{transform:none}}

@keyframes cart-idle-sway{0%,72%,100%{transform:rotate(0)}78%{transform:rotate(-6deg)}84%{transform:rotate(5deg)}90%{transform:rotate(-3deg)}96%{transform:rotate(2deg)}}
#floatingCart:not(.cart-bounce) svg{animation:cart-idle-sway 5s ease-in-out infinite;transform-origin:50% 65%}
@media(prefers-reduced-motion:reduce){#floatingCart:not(.cart-bounce) svg{animation:none}}

.cart-promotions .promotion-row>button.cart-promotion-option>span.promotion-photo-wrap{position:relative;display:block;flex:0 0 55px;width:55px;height:55px;min-width:55px}
.cart-promotions .promotion-photo-wrap .birthday-candle{display:block;position:absolute;left:52%;top:24%;width:3px;height:14px;transform:rotate(4deg);z-index:1}
.cart-promotions .birthday-candle:before{width:5px;height:7px;left:-1px;top:-7px}
@media(max-width:360px){.cart-promotions .promotion-row>button.cart-promotion-option>span.promotion-photo-wrap{flex-basis:45px;width:45px;min-width:45px;height:49px}}

.back-to-top{display:grid;place-items:center;right:24px;width:62px;height:62px;min-width:62px;padding:0;gap:0;border:1px solid #d7e3c7;border-radius:50%;background:#e4edd8;color:#354d25;box-shadow:0 8px 26px #263b2426;box-sizing:border-box}
.back-to-top>span{display:none}.back-to-top svg{display:block;width:26px;height:26px}.back-to-top:hover{background:#d8e7c5}
@media(max-width:600px){.back-to-top{right:5%;width:56px;height:56px;min-width:56px}}
