
/* single official tile with stamp-in effect */
.bbstamp{grid-area:tiles;justify-self:end;align-self:start;position:relative;width:clamp(180px,27vh,260px);aspect-ratio:1;margin:0 clamp(6px,1vw,16px) clamp(18px,3vh,30px) 0;perspective:900px}
.bbst-in{position:relative;width:100%;height:100%;border-radius:12px;overflow:visible;transform:rotate(-4deg) translateY(var(--fy,0px)) rotateX(var(--tx,0deg)) rotateY(var(--ty,0deg));transition:transform .6s cubic-bezier(.2,.7,.1,1);box-shadow:0 22px 44px rgba(0,0,0,.28);opacity:0}
.bbst-in img{display:block;width:100%;height:100%;border-radius:12px}
.bbstamp.in .bbst-in{animation:stampIn .9s cubic-bezier(.2,1.3,.4,1) forwards}
@keyframes stampIn{0%{opacity:0;transform:rotate(-14deg) scale(1.45);box-shadow:0 60px 80px rgba(0,0,0,.05)}55%{opacity:1;transform:rotate(-3deg) scale(.96);box-shadow:0 6px 12px rgba(0,0,0,.35)}100%{opacity:1;transform:rotate(-4deg) scale(1);box-shadow:0 22px 44px rgba(0,0,0,.28)}}
.bbst-ring{position:absolute;inset:-6%;border-radius:18px;border:2px solid var(--gold);opacity:0;pointer-events:none}
.bbstamp.in .bbst-ring{animation:ringOut 1s ease-out .45s forwards}
@keyframes ringOut{0%{opacity:.9;transform:scale(.9)}100%{opacity:0;transform:scale(1.18)}}
.bbst-tick{position:absolute;right:-14px;top:-14px;width:46px;height:46px;border-radius:50%;background:#009444;color:#fff;display:grid;place-items:center;box-shadow:0 8px 18px rgba(0,0,0,.25);transform:scale(0) rotate(-40deg)}
.bbst-tick svg{width:24px;height:24px}
.bbst-tick path{stroke-dasharray:30;stroke-dashoffset:30}
.bbstamp.in .bbst-tick{animation:tickPop .5s cubic-bezier(.2,1.6,.4,1) .75s forwards}
.bbstamp.in .bbst-tick path{animation:tickDraw .45s ease-out 1.05s forwards}
@keyframes tickPop{to{transform:scale(1) rotate(0)}}
@keyframes tickDraw{to{stroke-dashoffset:0}}
.bbstamp.done .bbst-in{animation:none;opacity:1}
.bbstamp.done:hover .bbst-in{transform:rotate(0deg) scale(1.04) translateY(-6px)}
@media(max-width:860px){.bbstamp{justify-self:start;margin:6px 0 24px 4px}}
@media (prefers-reduced-motion:reduce){.bbst-in{opacity:1;animation:none!important}.bbst-tick{transform:none;animation:none!important}.bbst-tick path{stroke-dashoffset:0;animation:none!important}.bbst-ring{display:none}}
