/* Cart experience, add-to-cart feedback and quantity controls. */
.woocommerce-cart .av-main{padding-top:30px;background:
 radial-gradient(circle at 8% 5%,rgba(44,188,124,.09),transparent 25%),
 radial-gradient(circle at 92% 14%,rgba(223,36,113,.11),transparent 24%),var(--av-blush)}
.av-cart-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.35fr) minmax(260px,.65fr);align-items:center;min-height:390px;overflow:hidden;padding:clamp(34px,6vw,72px);border:1px solid #f4cddd;border-radius:44px;background:linear-gradient(125deg,#fff 0%,#fff5fa 54%,#ffe0ed 100%);box-shadow:0 28px 90px rgba(92,15,53,.09)}
.av-cart-hero:before{content:"";position:absolute;z-index:-1;inset:auto auto -190px -140px;width:420px;height:420px;border-radius:50%;background:radial-gradient(circle,rgba(42,185,122,.14),transparent 66%)}
.av-cart-hero-copy{position:relative;z-index:2;max-width:720px}
.av-cart-kicker{display:inline-flex;align-items:center;gap:8px;padding:8px 14px;border-radius:999px;background:#ffe0ed;color:#ad0c4d;font-size:12px;font-weight:900;letter-spacing:.08em}
.av-cart-kicker .av-icon{width:16px}
.av-cart-hero h1{max-width:720px;margin:20px 0 16px;font-size:clamp(45px,6vw,76px);line-height:.94;letter-spacing:-.06em}
.av-cart-hero-copy>p{max-width:680px;margin:0;color:#68525e;font-size:18px}
.av-cart-hero-points{display:flex;flex-wrap:wrap;gap:9px;margin-top:28px}
.av-cart-hero-points span{display:flex;align-items:center;gap:7px;padding:10px 13px;border:1px solid #f1d6e1;border-radius:999px;background:rgba(255,255,255,.8);font-size:12px;font-weight:800}
.av-cart-hero-points .av-icon{width:16px;color:#d81e69}
.av-cart-hero-art{position:relative;min-height:280px}
.av-cart-mascot{position:absolute;z-index:3;top:42px;right:10px;display:grid;place-items:center;width:248px;height:186px;padding:26px;border:1px solid rgba(255,255,255,.8);border-radius:46% 54% 42% 58%/55% 42% 58% 45%;background:linear-gradient(145deg,#fff,#ffd5e6);box-shadow:0 26px 70px rgba(168,14,78,.2);animation:avCartFloat 4.2s ease-in-out infinite}
.av-cart-mascot img{width:100%;height:100%;object-fit:contain}
.av-cart-orbit{position:absolute;border:1px dashed rgba(191,15,81,.25);border-radius:50%}
.av-cart-orbit-one{inset:0 -30px 5px 8px;animation:avCartSpin 18s linear infinite}
.av-cart-orbit-two{inset:42px 5px 42px 44px;animation:avCartSpin 13s linear infinite reverse}
.av-cart-package,.av-cart-mini-truck{position:absolute;z-index:4;display:grid;place-items:center;border-radius:20px;background:#fff;color:#d81e69;box-shadow:0 16px 38px rgba(112,13,59,.18)}
.av-cart-package{left:10px;bottom:14px;width:70px;height:70px;transform:rotate(-8deg)}
.av-cart-package .av-icon,.av-cart-mini-truck .av-icon{width:31px;height:31px}
.av-cart-mini-truck{right:2px;top:4px;width:64px;height:64px;animation:avCartTruck 3.6s ease-in-out infinite}
.av-cart-progress{display:flex;align-items:center;justify-content:center;gap:12px;margin:28px auto 34px;padding:0 16px}
.av-cart-progress span{display:flex;align-items:center;gap:9px;color:#8b7380;font-size:13px;font-weight:800;white-space:nowrap}
.av-cart-progress span b{display:grid;place-items:center;width:31px;height:31px;border:1px solid #ead0dc;border-radius:50%;background:#fff;color:#9a7e8b}
.av-cart-progress .is-current{color:#a80e4b}
.av-cart-progress .is-current b{border-color:#dc1e69;background:#dc1e69;color:#fff;box-shadow:0 8px 20px rgba(220,30,105,.25)}
.av-cart-progress span i{font-style:normal}
.av-cart-progress em{width:72px;height:1px;background:#e7ceda}
.av-cart-workspace{position:relative;min-height:230px}
.av-cart-workspace>.wp-block-woocommerce-cart{margin:0!important}
.av-cart-workspace .wc-block-cart{display:grid;grid-template-columns:minmax(0,1.55fr) minmax(320px,.7fr);gap:24px;align-items:start}
.av-cart-workspace .wc-block-cart__main,.av-cart-workspace .wc-block-cart__sidebar{float:none!important;width:auto!important;padding:0!important}
.av-cart-workspace .wc-block-cart-items{overflow:hidden;margin:0!important;border:1px solid #f0d7e2!important;border-radius:30px;background:#fff;box-shadow:0 20px 65px rgba(91,20,56,.07);border-collapse:separate!important;border-spacing:0}
.av-cart-workspace .wc-block-cart-items thead{background:#fff7fa}
.av-cart-workspace .wc-block-cart-items th{padding:17px 22px!important;border:0!important;color:#8a6e7b!important;font-size:11px!important;font-weight:900!important;letter-spacing:.08em!important}
.av-cart-workspace .wc-block-cart-items td{padding:22px!important;border-top:1px solid #f3e1e8!important;vertical-align:middle!important}
.av-cart-workspace .wc-block-cart-item__image{width:132px!important}
.av-cart-workspace .wc-block-cart-item__image img{width:112px!important;height:112px!important;border-radius:22px;object-fit:cover;background:#fff6fa}
.av-cart-workspace .wc-block-components-product-name{color:#28131e!important;font-size:18px!important;line-height:1.2!important;font-weight:900!important;text-decoration:none!important}
.av-cart-workspace .wc-block-components-product-metadata,.av-cart-workspace .wc-block-components-product-price{color:#806b76!important;font-size:12px!important}
.av-cart-workspace .wc-block-components-quantity-selector{height:44px;margin-top:13px!important;border:1px solid #edcedb!important;border-radius:14px!important;background:#fff8fb}
.av-cart-workspace .wc-block-components-quantity-selector:after{display:none!important}
.av-cart-workspace .wc-block-components-quantity-selector__button{min-width:40px!important;color:#be1458!important;font-size:22px!important;font-weight:700!important}
.av-cart-workspace .wc-block-components-quantity-selector__input{min-width:44px!important;color:#24131d!important;font-size:14px!important;font-weight:900!important}
.av-cart-workspace .wc-block-cart-item__remove-link{margin-top:8px!important;color:#a77389!important;font-size:11px!important;text-decoration:underline!important;text-decoration-style:dotted!important}
.av-cart-workspace .wc-block-cart-item__total .wc-block-components-product-price{color:#27131e!important;font-size:19px!important;font-weight:900!important}
.av-cart-workspace .wc-block-cart__sidebar{position:sticky;top:104px;padding:25px!important;border:1px solid rgba(255,255,255,.13)!important;border-radius:30px;background:linear-gradient(145deg,#29131f,#140a11 66%,#3b1029);color:#fff;box-shadow:0 28px 75px rgba(54,7,31,.2)}
.av-cart-workspace .wc-block-cart__totals-title{padding:0 0 16px!important;border-bottom:1px solid rgba(255,255,255,.12)!important;color:#fff!important;font-size:20px!important;font-weight:900!important;text-align:left!important}
.av-cart-workspace .wc-block-components-totals-wrapper{padding:16px 0!important;border-color:rgba(255,255,255,.12)!important}
.av-cart-workspace .wc-block-components-totals-item__label,.av-cart-workspace .wc-block-components-totals-item__value,.av-cart-workspace .wc-block-components-totals-item__description{color:#fff!important}
.av-cart-workspace .wc-block-components-totals-item__label{font-weight:700!important}
.av-cart-workspace .wc-block-components-totals-item__description{color:#bdaab4!important;font-size:11px!important}
.av-cart-workspace .wc-block-cart__submit{margin-top:14px!important}
.av-cart-workspace .wc-block-cart__submit-button{min-height:58px!important;border:0!important;border-radius:999px!important;background:linear-gradient(135deg,#ef3b88,#bd0f54)!important;color:#fff!important;font-size:15px!important;font-weight:900!important;box-shadow:0 16px 34px rgba(216,25,103,.34)!important;transition:.25s transform,.25s box-shadow}
.av-cart-workspace .wc-block-cart__submit-button:hover{transform:translateY(-2px);box-shadow:0 20px 40px rgba(216,25,103,.43)!important}
.av-cart-workspace .wc-block-components-panel__button,.av-cart-workspace .wc-block-components-totals-coupon-link{color:#ffc5dc!important}
.av-cart-workspace .wc-block-components-validation-error{color:#ffbdd7!important}
.av-cart-workspace .wc-block-components-text-input input{border-radius:13px!important;background:#fff!important}
.av-cart-workspace .wp-block-woocommerce-empty-cart-block{overflow:hidden;padding:64px 28px;border:1px solid #efd5e0;border-radius:36px;background:linear-gradient(145deg,#fff,#fff3f8);text-align:center;box-shadow:0 22px 70px rgba(91,20,56,.08)}
.av-cart-workspace .wp-block-woocommerce-empty-cart-block:before{content:"";display:block;width:82px;height:82px;margin:0 auto 18px;border-radius:28px;background:linear-gradient(145deg,#ffe3ee,#fff);box-shadow:0 15px 34px rgba(211,26,99,.16)}
.av-cart-workspace .wp-block-woocommerce-empty-cart-block .wc-block-cart__empty-cart__title{margin-top:-70px;padding-top:88px;font-size:35px;letter-spacing:-.03em}
.av-cart-workspace .wp-block-woocommerce-empty-cart-block .wc-block-grid__products{margin-top:35px!important}
.av-cart-assurance{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin-top:26px}
.av-cart-assurance article{display:flex;gap:15px;padding:22px;border:1px solid #efd9e3;border-radius:24px;background:#fff}
.av-cart-assurance article>span{display:grid;place-items:center;flex:0 0 auto;width:46px;height:46px;border-radius:15px;background:#ffe5ef;color:#cf155f}
.av-cart-assurance article>span .av-icon{width:22px}
.av-cart-assurance h2{margin:1px 0 5px;font-size:16px;line-height:1.2}
.av-cart-assurance p{margin:0;color:#76616c;font-size:12px;line-height:1.55}
.av-cart-help{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:32px;margin-top:56px;padding:38px 42px;border-radius:32px;background:linear-gradient(135deg,#ffe4ee,#fff 62%);border:1px solid #f0cede}
.av-cart-help:after{content:"";position:absolute;right:-80px;bottom:-120px;width:260px;height:260px;border-radius:50%;background:radial-gradient(circle,rgba(44,188,124,.18),transparent 68%);pointer-events:none}
.av-cart-help h2{margin:12px 0 7px;font-size:30px;line-height:1.05}
.av-cart-help p{max-width:650px;margin:0;color:#705c67}
.av-cart-help-actions{position:relative;z-index:1;display:flex;flex-direction:column;align-items:stretch;gap:9px;min-width:245px}
.av-cart-help-actions a{display:flex;align-items:center;justify-content:center;gap:8px;padding:13px 18px;border:1px solid #ebabc5;border-radius:999px;color:#ad104e;text-decoration:none;font-size:13px;font-weight:900}
.av-cart-help-actions .av-cart-help-primary{border-color:transparent;background:linear-gradient(135deg,#e82e7c,#b80d50);color:#fff;box-shadow:0 14px 30px rgba(190,16,82,.22)}
.av-cart-help-actions .av-icon{width:18px}

/* Visible quantity on product pages. Products with the detailed lot calculator keep one control only. */
.av-order-card form.cart{display:grid!important;grid-template-columns:132px minmax(0,1fr);gap:10px!important;align-items:stretch}
.av-order-card form.cart .quantity{display:block!important;margin:0!important}
.av-order-card.has-lot-calculator form.cart{grid-template-columns:1fr}
.av-order-card.has-lot-calculator form.cart .quantity{position:absolute!important;width:1px!important;height:1px!important;overflow:hidden!important;clip:rect(0 0 0 0)!important;white-space:nowrap!important}
.av-product-quantity{display:grid!important;grid-template-columns:38px minmax(42px,1fr) 38px;align-items:center;min-height:52px;border:1px solid rgba(255,255,255,.18);border-radius:999px;background:#2d1723}
.av-product-quantity .qty{width:100%!important;height:48px!important;margin:0!important;padding:0!important;border:0!important;background:transparent!important;color:#fff!important;font-size:15px!important;font-weight:900!important;text-align:center!important;-moz-appearance:textfield}
.av-product-quantity .qty::-webkit-inner-spin-button,.av-product-quantity .qty::-webkit-outer-spin-button{-webkit-appearance:none;margin:0}
.av-product-quantity button{display:grid;place-items:center;width:34px;height:34px;margin:auto;padding:0;border:0;border-radius:50%;background:rgba(255,255,255,.08);color:#ff8fbd;font-size:20px;cursor:pointer;transition:.2s background,.2s transform}
.av-product-quantity button:hover{background:rgba(255,255,255,.16);transform:scale(1.05)}

/* Animated confirmation with editable quantity. */
.av-cart-toast{position:fixed;z-index:1002;right:22px;bottom:22px;width:min(430px,calc(100vw - 32px));overflow:hidden;border:1px solid rgba(255,255,255,.2);border-radius:28px;background:linear-gradient(145deg,#2b1420,#160a11 74%,#3e102b);color:#fff;box-shadow:0 30px 90px rgba(43,8,26,.38);opacity:0;transform:translateY(28px) scale(.96);pointer-events:none;transition:.35s opacity,.35s transform}
.av-cart-toast.is-visible{opacity:1;transform:none;pointer-events:auto}
.av-cart-toast.is-error{background:linear-gradient(145deg,#391621,#190b11)}
.av-cart-toast-progress{position:absolute;top:0;left:0;width:100%;height:3px;background:linear-gradient(90deg,#ef3a88,#55c98e);transform-origin:left;animation:avCartToastProgress 9s linear forwards}
.av-cart-toast:hover .av-cart-toast-progress{animation-play-state:paused}
.av-cart-toast-head{display:grid;grid-template-columns:64px minmax(0,1fr) 34px;gap:13px;align-items:center;padding:18px 18px 12px}
.av-cart-toast-thumb{position:relative;width:64px;height:64px;border-radius:18px;background:#fff1f6;object-fit:cover}
.av-cart-toast-check{position:absolute;top:45px;left:57px;display:grid;place-items:center;width:24px;height:24px;border:3px solid #24131d;border-radius:50%;background:#49c889;color:#fff;animation:avCartCheck .45s cubic-bezier(.2,.9,.3,1.4)}
.av-cart-toast-check .av-icon{width:13px}
.av-cart-toast-copy small{display:block;color:#ff8dbb;font-size:10px;font-weight:900;letter-spacing:.09em}
.av-cart-toast-copy strong{display:-webkit-box;overflow:hidden;margin-top:4px;font-size:15px;line-height:1.3;-webkit-line-clamp:2;-webkit-box-orient:vertical}
.av-cart-toast-close{display:grid;place-items:center;width:34px;height:34px;padding:0;border:1px solid rgba(255,255,255,.14);border-radius:50%;background:rgba(255,255,255,.06);color:#fff;font-size:20px;cursor:pointer}
.av-cart-toast-body{display:flex;align-items:center;justify-content:space-between;gap:12px;margin:0 18px;padding:13px 0;border-top:1px solid rgba(255,255,255,.11)}
.av-cart-toast-body>span{color:#bba8b2;font-size:11px;font-weight:700}
.av-toast-quantity{display:grid;grid-template-columns:35px 46px 35px;align-items:center;height:38px;border:1px solid rgba(255,255,255,.16);border-radius:999px;background:rgba(255,255,255,.05)}
.av-toast-quantity button{display:grid;place-items:center;width:34px;height:34px;padding:0;border:0;background:transparent;color:#ff7daf;font-size:20px;cursor:pointer}
.av-toast-quantity output{font-size:13px;font-weight:900;text-align:center}
.av-toast-quantity.is-updating{opacity:.55;pointer-events:none}
.av-cart-toast-actions{display:grid;grid-template-columns:1fr 1.15fr;gap:8px;padding:0 18px 18px}
.av-cart-toast-actions button,.av-cart-toast-actions a{display:flex;align-items:center;justify-content:center;min-height:43px;padding:9px 12px;border:1px solid rgba(255,255,255,.17);border-radius:999px;background:transparent;color:#fff;text-decoration:none;font-size:12px;font-weight:900;cursor:pointer}
.av-cart-toast-actions a{border-color:transparent;background:linear-gradient(135deg,#ed3583,#be0e53);box-shadow:0 11px 24px rgba(215,24,100,.28)}
.av-cart-toast-actions .av-icon{width:16px;margin-left:5px}
.av-fly-to-cart{position:fixed;z-index:1001;pointer-events:none;object-fit:cover;border:3px solid #fff;border-radius:22px;box-shadow:0 18px 45px rgba(97,10,51,.32);transition:transform .72s cubic-bezier(.2,.75,.25,1),opacity .72s,width .72s,height .72s,left .72s,top .72s}
.av-cart-pill.is-pulsing{animation:avCartPill .55s ease}
.single_add_to_cart_button.is-adding{position:relative;color:transparent!important;pointer-events:none}
.single_add_to_cart_button.is-adding:after{content:"";position:absolute;left:calc(50% - 10px);top:calc(50% - 10px);width:20px;height:20px;border:2px solid rgba(255,255,255,.4);border-top-color:#fff;border-radius:50%;animation:avCartSpin .7s linear infinite}

@keyframes avCartFloat{50%{transform:translateY(-10px) rotate(1deg)}}
@keyframes avCartTruck{50%{transform:translate(-12px,8px) rotate(-3deg)}}
@keyframes avCartSpin{to{transform:rotate(360deg)}}
@keyframes avCartCheck{from{opacity:0;transform:scale(.3) rotate(-20deg)}}
@keyframes avCartPill{50%{transform:scale(1.12);box-shadow:0 0 0 9px rgba(223,36,113,.13)}}
@keyframes avCartToastProgress{to{transform:scaleX(0)}}

@media(max-width:900px){
 .av-cart-hero{grid-template-columns:1fr;min-height:0}.av-cart-hero-art{min-height:220px;margin-top:14px}.av-cart-mascot{left:50%;right:auto;transform:translateX(-50%);animation:none}.av-cart-workspace .wc-block-cart{grid-template-columns:1fr}.av-cart-workspace .wc-block-cart__sidebar{position:static}.av-cart-assurance{grid-template-columns:1fr}.av-cart-help{align-items:flex-start;flex-direction:column}.av-cart-help-actions{width:100%}
}
@media(max-width:620px){
 .woocommerce-cart .av-main{padding-top:16px;overflow-x:hidden}.av-cart-hero{padding:28px 20px;border-radius:30px}.av-cart-hero h1{font-size:44px}.av-cart-hero-copy>p{font-size:15px}.av-cart-hero-points{display:grid}.av-cart-hero-points span{justify-content:flex-start}.av-cart-hero-art{min-height:190px}.av-cart-mascot{top:30px;width:205px;height:150px;padding:22px}.av-cart-package{width:55px;height:55px}.av-cart-mini-truck{width:50px;height:50px}.av-cart-progress{gap:7px;justify-content:space-between;overflow:hidden;padding:0}.av-cart-progress span{gap:5px;font-size:11px}.av-cart-progress span i{display:none}.av-cart-progress .is-current i{display:block}.av-cart-progress em{flex:1;width:auto}
 .av-cart-workspace,.av-cart-workspace>.wp-block-woocommerce-cart,.av-cart-workspace .wc-block-cart{width:100%!important;max-width:100%!important;min-width:0!important;overflow:hidden!important}.av-cart-workspace .wc-block-cart-items{width:100%!important;max-width:100%!important;border-radius:24px;table-layout:fixed}.av-cart-workspace .wc-block-cart-items thead{display:none!important}.av-cart-workspace .wc-block-cart-items tbody{display:block;width:100%}.av-cart-workspace .wc-block-cart-items__row{display:grid!important;grid-template-columns:78px minmax(0,1fr)!important;width:100%;padding:16px 12px;border-top:1px solid #f3e1e8}.av-cart-workspace .wc-block-cart-items__row:first-child{border-top:0}.av-cart-workspace .wc-block-cart-items td{display:block!important;width:auto!important;min-width:0!important;padding:0!important;border:0!important}.av-cart-workspace .wc-block-cart-item__image{grid-area:1/1/2/2!important}.av-cart-workspace .wc-block-cart-item__image img{width:66px!important;height:80px!important;border-radius:16px}.av-cart-workspace .wc-block-cart-item__product{grid-area:1/2/2/3!important}.av-cart-workspace .wc-block-components-product-name{overflow-wrap:anywhere;font-size:15px!important}.av-cart-workspace .wc-block-cart-items td.wc-block-cart-item__total{display:none!important}.av-cart-workspace .wc-block-components-quantity-selector{width:108px!important;max-width:108px!important}.av-cart-workspace .wc-block-components-quantity-selector__button{min-width:34px!important}.av-cart-workspace .wc-block-components-quantity-selector__input{min-width:38px!important}.av-cart-workspace .wc-block-cart__sidebar{width:100%!important;max-width:100%!important;min-width:0!important;padding:21px!important;border-radius:25px;overflow:hidden}.av-cart-workspace .wc-block-components-totals-item{min-width:0}.av-cart-workspace .wc-block-components-totals-item__label,.av-cart-workspace .wc-block-components-totals-item__value{min-width:0;font-size:15px!important}.av-cart-workspace .wc-block-cart__submit-button{width:100%!important;padding-left:12px!important;padding-right:12px!important;font-size:13px!important}
 .av-cart-assurance article{padding:18px}.av-cart-help{margin-top:36px;padding:28px 20px;border-radius:26px}.av-cart-help h2{font-size:26px}.av-order-card form.cart{grid-template-columns:116px minmax(0,1fr)}.av-product-quantity{grid-template-columns:34px minmax(36px,1fr) 34px}.av-cart-toast{right:16px;bottom:16px;border-radius:24px}.single-product .av-cart-toast{bottom:92px}.av-cart-toast-head{grid-template-columns:54px minmax(0,1fr) 32px;padding:15px 14px 11px}.av-cart-toast-thumb{width:54px;height:54px;border-radius:15px}.av-cart-toast-check{top:38px;left:48px}.av-cart-toast-body{margin:0 14px}.av-cart-toast-actions{padding:0 14px 14px}
}
@media(prefers-reduced-motion:reduce){.av-cart-mascot,.av-cart-mini-truck,.av-cart-orbit,.av-cart-toast-progress,.av-cart-pill.is-pulsing{animation:none!important}.av-fly-to-cart{display:none}}
