.test-gift-panel{border-top:1px solid #334052;padding:18px 0;margin-top:16px}.test-gift-heading{display:flex;align-items:center;justify-content:space-between;gap:12px}.test-gift-heading h3{margin:0;font-size:16px}.test-gift-badge{font-size:10px;letter-spacing:.08em;color:#f8d385;background:#3b2e18;border:1px solid #65502b;border-radius:6px;padding:4px 7px;white-space:nowrap}.test-gift-panel>p,.test-gift-panel details>p{font-size:12px;color:#b7c2d0;line-height:1.5}.test-gift-panel summary{cursor:pointer;padding:12px 0;font-weight:600}.test-gift-options{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:8px;margin:14px 0}.test-gift-options button{display:flex;flex-direction:column;gap:5px;padding:12px 5px;min-width:0}.test-gift-options button>span{font-size:28px}.test-gift-options strong{font-size:12px}.test-gift-options small{font-size:11px;color:#b8c6d6}.test-gift-options [aria-pressed=true]{border-color:#6bb8ff;background:#17314b}.test-gift-options button:disabled{opacity:.45}.test-gift-events{max-height:160px;overflow-y:auto;overscroll-behavior:contain}.test-gift-announcement{padding:10px 12px;background:#332a1c;border:1px solid #5c482b;color:#f5dbaa;border-radius:10px;margin:8px 0;font-size:13px;line-height:1.5;overflow-wrap:anywhere}.test-gift-panel select{font-size:16px}#test-token-form [data-token-current]{color:#a8cffe;font-size:14px}@media(max-width:380px){.test-gift-options{grid-template-columns:repeat(2,minmax(0,1fr))}}
/* Gift celebrations never intercept camera, moderation or chat taps. */
.live-gift-celebration{position:absolute;inset:0;z-index:12;pointer-events:none;display:flex;flex-direction:column;justify-content:flex-end;align-items:center;padding:8px;background:radial-gradient(ellipse at 50% 75%,#ffc96830,transparent 65%);animation:gift-arrival 4.2s ease both;overflow:hidden}
.live-gift-sculpture{width:clamp(64px,55%,160px);max-height:55%;filter:drop-shadow(0 8px 6px #0007) drop-shadow(0 0 14px #ffd68b40);animation:gift-float 1.4s ease-in-out infinite;transform-origin:center bottom}
.live-gift-sculpture svg{display:block;width:100%;height:100%}
.live-gift-caption{max-width:100%;padding:6px 12px;border:1px solid #ffe1a14a;border-radius:14px;background:linear-gradient(120deg,#262133ed,#292f41ed);box-shadow:0 4px 12px #0003;text-align:center;color:#fff0cc;font:600 12px/1.3 system-ui}
.live-gift-caption strong,.live-gift-caption span{display:block;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
.live-gift-caption span{font-size:10px;font-weight:400;color:#e0e8f1;margin-top:3px}
@keyframes gift-arrival{0%{opacity:0;transform:translateY(16px) scale(.8)}12%,83%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:0;transform:translateY(-12px) scale(.96)}}
@keyframes gift-float{0%,100%{transform:perspective(400px) rotateY(-12deg) rotateZ(-3deg) translateY(0)}50%{transform:perspective(400px) rotateY(12deg) rotateZ(3deg) translateY(-7px)}}
@media(prefers-reduced-motion:reduce){.live-gift-celebration,.live-gift-sculpture{animation:none}}

/* Collectible artwork and a brief luminous entrance; no full-screen takeover. */
.live-gift-celebration{isolation:isolate;background:linear-gradient(0deg,#0c172e55,transparent 65%)}
.live-gift-sculpture{position:relative;z-index:2;width:clamp(72px,58%,170px);height:55%;filter:drop-shadow(0 6px 5px #0006);animation:gift-collectible 4.2s cubic-bezier(.2,.8,.2,1) both}
.live-gift-sculpture img{display:block;width:100%;height:100%;object-fit:contain}
.live-gift-caption{z-index:3;backdrop-filter:blur(12px);border-color:#a9d6ff55;background:linear-gradient(120deg,#1d3555ee,#232137ee);box-shadow:inset 0 1px #ffffff12,0 5px 15px #0004}
.gift-aura{position:absolute;bottom:12%;left:15%;width:70%;height:45%;border-radius:50%;background:radial-gradient(ellipse,#7fc4ff55,transparent 65%);z-index:0;animation:gift-halo 4.2s ease both}
.gift-aura:after{content:'';position:absolute;inset:65% 5% 2%;border:1px solid #a8d7ff80;border-radius:50%;box-shadow:0 0 12px #72bfff66,inset 0 0 12px #72bfff33}
.gift-sparks{position:absolute;inset:30% 12% 14%;z-index:1}
.gift-sparks i{position:absolute;left:calc(6% + var(--i)*9%);bottom:10%;width:3px;height:3px;border-radius:50%;background:#ffe2a1;box-shadow:0 0 6px #ffc65f;animation:gift-spark 2s ease-out both;animation-delay:calc(var(--i)*90ms)}
.gift-picker-art img{width:54px;height:54px;object-fit:contain;display:block;margin:auto}
@keyframes gift-collectible{0%{opacity:0;transform:translateY(30px) scale(.55) rotate(-10deg)}18%{opacity:1;transform:translateY(-5px) scale(1.07) rotate(2deg)}32%{transform:translateY(0) scale(1) rotate(0)}65%{transform:translateY(-5px) scale(1.025) rotate(-2deg)}85%{opacity:1;transform:translateY(0) scale(1)}100%{opacity:0;transform:translateY(-18px) scale(.94)}}
@keyframes gift-halo{0%{opacity:0;transform:scale(.3)}25%,75%{opacity:1;transform:scale(1)}100%{opacity:0;transform:scale(1.2)}}
@keyframes gift-spark{0%{opacity:0;transform:translate(0,0) scale(.2)}18%{opacity:1;transform:translate(calc((var(--i) - 4.5)*3px),-20px) scale(1.4)}100%{opacity:0;transform:translate(calc((var(--i) - 4.5)*10px),-110px) scale(.2)}}
@media(prefers-reduced-motion:reduce){.live-gift-sculpture,.gift-aura,.gift-sparks i{animation:none}.gift-sparks{display:none}}

/* Distinct entrances use the rendered artwork, without claiming skeletal animation. */
.live-gift-celebration[data-gift=camel] .live-gift-sculpture{animation-name:gift-camel-step}
.live-gift-celebration[data-gift=horse] .live-gift-sculpture{animation-name:gift-horse-rise;transform-origin:50% 90%}
.live-gift-celebration[data-gift=tea] .live-gift-sculpture{animation-name:gift-tea-arrive}
.live-gift-celebration[data-gift=aqal] .live-gift-sculpture{animation-name:gift-aqal-reveal}
.live-gift-celebration[data-gift=aqal] .gift-aura:after{animation:gift-reveal-ring 2.8s ease-out both}
.gift-steam{position:absolute;inset:0;pointer-events:none}
.gift-steam i{position:absolute;left:38%;top:32%;height:28%;width:12%;border-left:2px solid #fff4db99;border-radius:50%;filter:blur(1px);animation:gift-steam-rise 1.8s ease-out infinite}
.gift-steam i:nth-child(2){left:50%;animation-delay:.45s}.gift-steam i:nth-child(3){left:60%;animation-delay:.9s}
@keyframes gift-camel-step{0%{opacity:0;transform:translate(-110%,28%) scale(.35) rotate(-16deg)}9%{opacity:1;transform:translate(-35%,-6%) scale(.8) rotate(-6deg)}19%{transform:translate(6%,-10%) scale(1.23) rotate(4deg)}29%{transform:translate(-3%,3%) scale(.96) rotate(-3deg)}40%,82%{opacity:1;transform:translate(0,0) scale(1)}100%{opacity:0;transform:translate(16%,-10%) scale(.9)}}
@keyframes gift-horse-rise{0%{opacity:0;transform:translate(55%,55%) scale(.35) rotate(24deg)}10%{opacity:1;transform:translate(8%,6%) scale(.88) rotate(12deg)}21%{transform:translate(0,-7%) scale(1.2) rotate(-22deg)}31%{transform:translate(0,3%) scale(.97) rotate(5deg)}43%,82%{opacity:1;transform:translate(0,0) scale(1) rotate(0)}100%{opacity:0;transform:translateY(-10%) scale(.9)}}
@keyframes gift-tea-arrive{0%{opacity:0;transform:translateY(85%) scale(.25) rotate(-24deg)}12%{opacity:1;transform:translateY(-5%) scale(.92) rotate(-7deg)}22%{transform:translateY(-12%) scale(1.2) rotate(8deg)}32%{transform:translateY(3%) scale(.96) rotate(-3deg)}43%,82%{opacity:1;transform:translateY(0) scale(1) rotate(0)}100%{opacity:0;transform:translateY(-10%) scale(.9)}}
@keyframes gift-steam-rise{0%{opacity:0;transform:translateY(8px) scaleX(.7)}25%{opacity:.7}100%{opacity:0;transform:translate(6px,-30px) scaleX(1.4)}}
@keyframes gift-aqal-reveal{0%{opacity:0;transform:scale(.12) translateY(70%);clip-path:inset(100% 0 0)}12%{opacity:1;transform:scale(.6) translateY(10%);clip-path:inset(40% 0 0)}24%{opacity:1;transform:scale(1.22) translateY(-5%);clip-path:inset(0)}34%{transform:scale(.96);clip-path:inset(0)}44%,82%{opacity:1;transform:scale(1);clip-path:inset(0)}100%{opacity:0;transform:scale(.9) translateY(-10%);clip-path:inset(0)}}
@keyframes gift-reveal-ring{0%{opacity:0;transform:scale(.1)}18%{opacity:.9;transform:scale(.65)}70%{opacity:.4;transform:scale(1.6)}100%{opacity:0;transform:scale(2)}}
@media(prefers-reduced-motion:reduce){.live-gift-celebration[data-gift] .live-gift-sculpture,.live-gift-celebration[data-gift] .gift-aura:after{animation:none}.gift-steam{display:none}}

/* A single expanding light ring punctuates the entrance without flashing. */
.live-gift-celebration .gift-aura:after{animation:gift-reveal-ring 1.3s .22s ease-out both}
.live-gift-celebration .gift-sparks i{animation-duration:1.6s;animation-delay:calc(.32s + var(--i)*35ms)}
.live-gift-celebration .live-gift-sculpture{animation-timing-function:cubic-bezier(.22,.7,.2,1)}
@media(prefers-reduced-motion:reduce){.live-gift-celebration .gift-aura:after{animation:none}}
