.shop-state-heading,.shop-qr{animation:shop-reveal .35s ease-out both}
.shop-working{display:flex;align-items:center;gap:14px;padding:20px;border-radius:18px;background:#f4edff;color:#6530ae;font-size:14px;line-height:1.6}
.shop-working svg{flex-shrink:0}.shop-success{animation:shop-reveal .4s ease-out both}
.shop-success>svg{animation:shop-celebrate .55s cubic-bezier(.2,.8,.2,1) both}
.shop-step>span{transition:background-color .25s,color .25s,box-shadow .25s}
.shop-step.current:not(.done)>span{box-shadow:0 0 0 6px #8b35ed16}
.shop-countdown{font-variant-numeric:tabular-nums}.shop-qr img{aspect-ratio:1;object-fit:contain}
@keyframes shop-reveal{from{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}
@keyframes shop-celebrate{0%{opacity:0;transform:scale(.7)}70%{transform:scale(1.08)}100%{opacity:1;transform:scale(1)}}
@media(prefers-reduced-motion:reduce){.shop *,.shop *::before,.shop *::after{animation:none!important;transition:none!important}}
.shop-language{display:flex;justify-content:flex-end;gap:5px;padding:8px max(16px,calc((100vw - 1100px)/2));background:#faf7ff}
.shop-language button{font:600 13px system-ui;border:1px solid #dac6ee;border-radius:20px;padding:7px 13px;color:#6734a1;background:white;cursor:pointer}
.shop-language button[aria-pressed=true]{background:#7921d8;border-color:#7921d8;color:white}
.shop-language button:focus-visible{outline:3px solid #ad7de3;outline-offset:2px}
