/* Copper light and motion belong only to the support assistant. */
.sav-panel{isolation:isolate;border-color:#dfc1a6;box-shadow:0 18px 70px #59371430,0 0 0 1px #d6a06b18,0 0 32px #bb6e3415}
.sav-head{position:relative;isolation:isolate;overflow:hidden;background:#bb6e34}
.sav-head::before{content:'';position:absolute;inset:0;z-index:-1;background-image:radial-gradient(#ffead34d .8px,transparent 1px);background-size:19px 19px;opacity:.35}
.sav-head::after{content:'';position:absolute;inset:0 auto 0 -90px;width:72px;background:linear-gradient(100deg,transparent,#fff4df45,transparent);transform:skewX(-24deg);animation:sav-header-beam 7.5s ease-in-out infinite;pointer-events:none;z-index:-1}
.sav-avatar{position:relative;border-radius:50%;background:radial-gradient(circle,#fff1dc70,#ffffff17);border:1px solid #ffe5c973;box-shadow:0 0 17px #ffdfae2b;overflow:visible}
.sav-avatar img{display:block;width:41px;height:41px;object-fit:contain;animation:sav-avatar-float 3.8s ease-in-out infinite;filter:drop-shadow(0 2px 3px #6b3c2033)}
.sav-avatar::before{content:'';position:absolute;inset:-4px;border:1px solid #ffe9cd38;border-radius:50%;animation:sav-avatar-halo 3.8s ease-in-out infinite;pointer-events:none}
.sav-panel[data-busy=true] .sav-avatar::before{border:1px solid #ffedce29;border-top-color:#fff4dc;border-right-color:#ffe1b0;animation:sav-orbit 1.6s linear infinite}
.sav-mini-avatar{width:24px;height:24px;border-radius:50%;background:#f3e3d2;box-shadow:0 0 0 1px #ddbc9c55;overflow:hidden;flex:none}
.sav-mini-avatar img{display:block;width:23px;height:23px;object-fit:contain}
#sav-launcher .viticolis-sticky-buttons__icon img,.sav-mobile-launcher>img{width:33px;height:33px;object-fit:contain;animation:sav-avatar-float 4.2s ease-in-out infinite;filter:drop-shadow(0 0 4px #eeb06d44)}
#sav-launcher:hover .viticolis-sticky-buttons__icon img,.sav-mobile-launcher:hover>img{filter:drop-shadow(0 0 7px #ffc68188)}
.sav-content{background:radial-gradient(ellipse at 100% 0,#f5dfca4d,transparent 48%),radial-gradient(ellipse at 0 100%,#efd9c733,transparent 45%),linear-gradient(145deg,#fff 20%,#fcf8f3)}
.sav-content>*{animation:sav-view-arrive .34s ease both}
.sav-options .sav-option{animation:sav-view-arrive .34s var(--sav-delay,0ms) ease both}
.sav-option,.sav-primary,.sav-secondary,.sav-upload{position:relative;overflow:hidden;transition:background .2s,border-color .2s,box-shadow .2s,transform .2s}
.sav-option{box-shadow:0 2px 8px #925a2806}
.sav-option:hover{border-color:#c38e60;box-shadow:0 4px 15px #bb6e3412,0 0 0 2px #bb6e3407;transform:translateY(-2px)}
.sav-option:active,.sav-primary:active,.sav-secondary:active,.sav-upload:active{transform:scale(.98)}
.sav-primary{background:#bb6e34;box-shadow:0 3px 12px #bb6e3420}
.sav-primary:hover{background:#a75e2a;box-shadow:0 6px 18px #bb6e3430}
.sav-primary::after,.sav-option::after,.sav-secondary::after,.sav-upload::after{content:'';position:absolute;top:-20%;bottom:-20%;left:-45%;width:30%;background:linear-gradient(100deg,transparent,#ffedd355,transparent);transform:skewX(-20deg);pointer-events:none;opacity:0}
.sav-primary:hover::after,.sav-option:hover::after,.sav-secondary:hover::after,.sav-upload:hover::after{animation:sav-control-shine .75s ease}
.sav-panel .sav-option svg,.sav-panel .sav-order>svg,.sav-panel .sav-upload>svg{transform-origin:center;animation:sav-picto-float 3.6s ease-in-out infinite;animation-delay:var(--sav-delay,0ms)}
.sav-panel .sav-option:hover svg,.sav-panel .sav-upload:hover svg{color:#bb6e34;stroke:#bb6e34;filter:drop-shadow(0 0 3px #ddab7638)}
.sav-icon-button{transition:background .2s,transform .2s}.sav-icon-button:hover{transform:scale(1.06)}
.sav-progress span.done{position:relative;overflow:hidden;box-shadow:0 0 6px #bb6e3427}
.sav-progress span.done::after{content:'';position:absolute;inset:0;background:linear-gradient(90deg,transparent,#ffe8baaa,transparent);animation:sav-progress-light 2.8s ease-in-out infinite}
.sav-progress span.done:nth-child(2)::after{animation-delay:.2s}.sav-progress span.done:nth-child(3)::after{animation-delay:.4s}.sav-progress span.done:nth-child(4)::after{animation-delay:.6s}
.sav-loader{position:relative;min-height:48px;gap:8px;padding:16px}
.sav-loader i{width:7px;height:7px;box-shadow:0 0 7px #bb6e3430}
.sav-loader::after{content:'';position:absolute;left:16px;right:16px;bottom:0;height:2px;border-radius:2px;background:linear-gradient(90deg,transparent,#d9a575,transparent);animation:sav-loading-beam 1.8s ease-in-out infinite}
.sav-success-icon{box-shadow:0 0 0 7px #f8eee46b,0 0 25px #bb6e3410;animation:sav-avatar-halo 3.8s ease-in-out infinite}
.sav-effects{position:absolute;inset:0;overflow:hidden;pointer-events:none;z-index:4;border-radius:inherit}
.sav-effects::before,.sav-effects::after{content:'';position:absolute;top:80px;bottom:0;width:1px;background:linear-gradient(transparent,#e9b78545 30%,#ffd99b60 50%,transparent 85%);box-shadow:0 0 7px #e5ad6b30;transform:rotate(18deg);opacity:0;animation:sav-ambient-beam 9s ease-in-out infinite}
.sav-effects::before{left:12%;animation-delay:1.5s}.sav-effects::after{right:8%;animation-delay:5s}
.sav-click-wave{position:absolute;width:24px;height:24px;border-radius:50%;border:1px solid #e9b275bd;background:radial-gradient(circle,#f7d6a24d,transparent 70%);box-shadow:0 0 12px #d69a6155;transform:translate(-50%,-50%);animation:sav-click-wave .62s ease-out both}
.sav-click-spark{position:absolute;width:3px;height:3px;border-radius:50%;background:#d69350;box-shadow:0 0 7px #efc07baa;animation:sav-click-spark .62s ease-out both}
@keyframes sav-avatar-float{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-1.7px) rotate(1deg)}}
@keyframes sav-avatar-halo{0%,100%{opacity:.75;transform:scale(1)}50%{opacity:1;transform:scale(1.05)}}
@keyframes sav-orbit{to{transform:rotate(360deg)}}
@keyframes sav-header-beam{0%,65%{transform:translateX(0) skewX(-24deg);opacity:0}70%{opacity:.8}95%,100%{transform:translateX(620px) skewX(-24deg);opacity:0}}
@keyframes sav-view-arrive{from{opacity:0;transform:translateY(7px)}to{opacity:1;transform:translateY(0)}}
@keyframes sav-control-shine{0%{left:-45%;opacity:0}20%{opacity:.7}100%{left:120%;opacity:0}}
@keyframes sav-picto-float{0%,100%{transform:translateY(0) rotate(-2deg)}50%{transform:translateY(-1.5px) rotate(2deg)}}
@keyframes sav-progress-light{0%,100%{transform:translateX(-110%);opacity:0}25%{opacity:.8}60%{transform:translateX(110%);opacity:0}}
@keyframes sav-loading-beam{0%,100%{transform:scaleX(.2);opacity:.4}50%{transform:scaleX(1);opacity:1}}
@keyframes sav-ambient-beam{0%,40%,100%{opacity:0;transform:translateX(-18px) rotate(18deg)}60%{opacity:.55;transform:translateX(30px) rotate(18deg)}80%{opacity:0;transform:translateX(70px) rotate(18deg)}}
@keyframes sav-click-wave{0%{opacity:.8;transform:translate(-50%,-50%) scale(.4)}100%{opacity:0;transform:translate(-50%,-50%) scale(6)}}
@keyframes sav-click-spark{0%{opacity:.9;transform:translate(0,0) scale(1)}100%{opacity:0;transform:translate(var(--spark-x),var(--spark-y)) scale(.2)}}
@media(prefers-reduced-motion:reduce){.sav-head::after,.sav-effects::before,.sav-effects::after,.sav-primary::after,.sav-option::after,.sav-secondary::after,.sav-upload::after,.sav-progress span.done::after,.sav-loader::after{display:none}.sav-panel *,.sav-panel *::before,.sav-panel *::after,#sav-launcher img,.sav-mobile-launcher>img{animation:none!important;transition:none!important}}

/* The wine box belongs to the conversation, while launchers keep a simple icon. */
.sav-avatar img{width:44px;height:44px;object-fit:contain}.sav-mini-avatar{overflow:visible;background:transparent;box-shadow:none;width:27px;height:27px}.sav-mini-avatar img{width:27px;height:27px}.sav-mobile-launcher>svg{width:24px;height:24px;fill:none;stroke:currentColor;stroke-width:1.5;stroke-linecap:round;stroke-linejoin:round}
.sav-sr-only{position:absolute!important;width:1px;height:1px;overflow:hidden;clip-path:inset(50%);white-space:nowrap;border:0;padding:0;margin:-1px}.sav-writing-caret{display:inline-block;width:2px;height:.85em;background:#bb6e34;margin-left:3px;vertical-align:-.05em;animation:sav-caret-blink .7s step-end infinite}.sav-bubble.is-writing{min-height:45px}
.sav-success-avatar{position:relative;width:116px;height:116px;margin:0 auto 22px;display:grid;place-items:center;background:radial-gradient(circle,#faead7 0,transparent 69%)}.sav-success-avatar>img{display:block;width:102px;height:102px;object-fit:contain;transform-origin:50% 90%;animation:sav-box-celebrate 1.8s ease both,sav-box-satisfied 4s 1.8s ease-in-out infinite;filter:drop-shadow(0 4px 5px #9a5d2220)}.sav-avatar-validation{position:absolute;right:-1px;top:17px;display:grid;place-items:center;width:38px;height:38px;border-radius:50%;background:#bb6e34;color:#fff;border:3px solid #fff;box-shadow:0 3px 12px #bb6e3430;animation:sav-validation-appear .45s .55s cubic-bezier(.2,.8,.3,1.2) both}.sav-panel .sav-avatar-validation svg{width:25px;height:25px;fill:none;stroke:currentColor;stroke-width:2.6;stroke-linecap:round;stroke-linejoin:round}.sav-avatar-validation path{stroke-dasharray:32;stroke-dashoffset:32;animation:sav-validation-draw .5s .85s ease forwards}
@keyframes sav-caret-blink{0%,100%{opacity:1}50%{opacity:0}}
@keyframes sav-box-celebrate{0%{opacity:0;transform:translateY(10px) scale(.8)}25%{opacity:1;transform:translateY(-7px) rotate(-6deg) scale(1.04)}45%{transform:translateY(0) rotate(5deg)}65%{transform:translateY(-3px) rotate(-3deg)}100%{opacity:1;transform:translateY(0) rotate(0)}}
@keyframes sav-box-satisfied{0%,100%{transform:translateY(0) rotate(-1deg)}50%{transform:translateY(-2px) rotate(1deg)}}
@keyframes sav-validation-appear{from{opacity:0;transform:scale(.2)}to{opacity:1;transform:scale(1)}}
@keyframes sav-validation-draw{to{stroke-dashoffset:0}}
@media(prefers-reduced-motion:reduce){.sav-writing-caret{display:none}.sav-success-avatar img,.sav-avatar-validation,.sav-avatar-validation path{animation:none!important}.sav-avatar-validation path{stroke-dashoffset:0}}

.sav-orders-heading{display:flex;align-items:center;gap:8px;color:#9e693e;font-size:13px;font-weight:500;margin:2px 0 12px}.sav-orders-heading span{display:grid;place-items:center;min-width:22px;height:22px;padding:0 6px;background:#f3e5d6;border-radius:20px;color:#bb6e34;font-size:11px}
