.gift-sheet { text-align:center; }
.gift-hero { margin-bottom:14px; } .gift-hero h2 { margin:10px 0 4px; } .gift-hero p { margin:0; font-size:.82rem; color:var(--text-muted); }
.gift-box { position:relative; width:74px; height:74px; margin:0 auto; display:flex; align-items:center; justify-content:center; font-size:2.3rem; color:#fff; background:linear-gradient(135deg,#8b5cf6,#ec4899); border-radius:22px; box-shadow:0 14px 28px -10px rgba(139,92,246,.7); animation:giftFloat 3s ease-in-out infinite; }
.gift-box i { animation:giftWiggle 3s ease-in-out infinite; }
@keyframes giftFloat { 0%,100%{transform:translateY(0)} 50%{transform:translateY(-6px)} }
.gift-hero.win .gift-box { animation:giftOpen .8s cubic-bezier(.34,1.56,.64,1) both; background:linear-gradient(135deg,#10b981,#059669); }
@keyframes giftOpen { 0%{transform:scale(1)} 40%{transform:scale(1.25) rotate(-8deg)} 100%{transform:scale(1) rotate(0)} }
.gift-field { position:relative; margin-top:8px; }
.gift-input { width:100%; box-sizing:border-box; padding:16px 48px 16px 16px; border-radius:16px; border:2px solid var(--border); background:var(--bg-input); font-family:monospace; font-size:1rem; letter-spacing:1.5px; text-align:center; color:var(--text-main); outline:none; transition:border-color .25s, box-shadow .25s; }
.gift-input:focus { border-color:var(--primary); box-shadow:0 0 0 4px rgba(79,70,229,.14); }
.gift-field.ok .gift-input { border-color:#10b981; box-shadow:0 0 0 4px rgba(16,185,129,.16); }
.gift-field.bad .gift-input { border-color:#ef4444; animation:giftShake .45s; }
@keyframes giftShake { 0%,100%{transform:translateX(0)} 20%,60%{transform:translateX(-7px)} 40%,80%{transform:translateX(7px)} }
.gift-paste { position:absolute; right:8px; top:50%; transform:translateY(-50%); width:36px; height:36px; border:0; border-radius:12px; background:rgba(79,70,229,.1); color:var(--primary); cursor:pointer; } .gift-paste:active { transform:translateY(-50%) scale(.88); }
.gift-meter { height:5px; border-radius:5px; background:var(--bg-input); overflow:hidden; margin:10px 2px 6px; } .gift-meter i { display:block; height:100%; width:0; background:linear-gradient(90deg,#8b5cf6,#ec4899); border-radius:5px; transition:width .25s cubic-bezier(.16,1,.3,1); }
.gift-sub { display:flex; justify-content:space-between; align-items:center; font-size:.72rem; color:var(--text-muted); font-weight:700; padding:0 2px; margin-bottom:6px; }
.gift-tries { display:inline-flex; gap:5px; align-items:center; } .gift-tries i { width:9px; height:9px; border-radius:50%; background:#10b981; transition:.3s; } .gift-tries i.x { background:#ef4444; transform:scale(1.15); }
.gift-msg { min-height:22px; font-size:.82rem; font-weight:700; margin-bottom:8px; } .gift-msg.err { color:#ef4444; animation:wfxUp .3s both; } .gift-msg.ok { color:#10b981; }
.gift-note { margin-top:12px; font-size:.7rem; color:var(--text-muted); display:flex; gap:6px; justify-content:center; align-items:flex-start; text-align:left; line-height:1.5; }
#gift-btn:disabled { opacity:.45; box-shadow:none; }
