/* Shared Reward Renderer. Legacy frame selectors remain in avatar_frames.css. */
.reward-badge { display:inline-flex; align-items:center; gap:.34em; max-width:100%; min-height:1.85em; padding:.28em .64em; border-radius:999px; background:rgba(255,255,255,.2); color:inherit; font:inherit; font-size:.82em; font-weight:700; line-height:1.2; vertical-align:middle; }
.reward-badge__emoji { flex:none; font-family:"Segoe UI Emoji","Apple Color Emoji","Noto Color Emoji",sans-serif; }
.reward-badge__label { min-width:0; overflow-wrap:anywhere; }
.reward-badge--compact { font-size:.74em; padding:.22em .5em; }
.reward-badge--shop-preview { color:#21160b; background:rgba(255,255,255,.62); }
.reward-frame-wrapper.reward-frame--structured { box-sizing:border-box; border-radius:50%; }
.avatar-frame.reward-frame { border-radius:50%; background:var(--reward-frame-color-1); border:var(--reward-frame-border-width) solid var(--reward-frame-color-1); box-shadow:0 0 calc(8px + (var(--reward-frame-glow-opacity) * 20px)) var(--reward-frame-color-1); padding:4px; }
.avatar-frame.reward-frame--gradient,
.avatar-frame.reward-frame--animated-gradient { background:linear-gradient(135deg,var(--reward-frame-color-1),var(--reward-frame-color-2),var(--reward-frame-color-3)); }
.avatar-frame.reward-frame--dual-gradient { background:linear-gradient(45deg,var(--reward-frame-color-1),var(--reward-frame-color-2)),linear-gradient(225deg,var(--reward-frame-color-2),var(--reward-frame-color-3)); }
.avatar-frame.reward-frame--glow,
.avatar-frame.reward-frame--pulse { box-shadow:0 0 calc(12px + (var(--reward-frame-glow-opacity) * 24px)) var(--reward-frame-color-1); }
.avatar-frame.reward-frame--animation-pulse { animation:reward-frame-pulse 1.8s ease-in-out infinite; }
.avatar-frame.reward-frame--animation-rotate { animation:reward-frame-rotate 3.2s linear infinite; }
.avatar-frame.reward-frame--animation-shimmer { animation:reward-frame-shimmer 2.4s ease-in-out infinite; }
.avatar-frame.reward-frame--animation-rainbow { animation:reward-frame-hue 3s linear infinite; }
@keyframes reward-frame-pulse { 50% { transform:scale(1.035); } }
@keyframes reward-frame-rotate { to { transform:rotate(360deg); } }
@keyframes reward-frame-shimmer { 50% { filter:brightness(1.25); } }
@keyframes reward-frame-hue { to { filter:hue-rotate(360deg); } }
.reward-frame-wrapper.reward-frame--profile-large { width:102px; height:102px; }
.reward-frame-wrapper.reward-frame--avatar { width:100%; height:100%; }
.reward-frame--compact { width:40px; height:40px; }
.reward-frame-wrapper.reward-frame--shop-preview { width:74px; height:74px; }
.reward-theme-product-preview { display:block; width:clamp(4.5rem,10vw,6rem); aspect-ratio:1; border:1px solid rgba(255,255,255,.25); border-radius:.9rem; background:linear-gradient(135deg,var(--reward-theme-color-1),var(--reward-theme-color-2) 52%,var(--reward-theme-color-3)); box-shadow:0 .7rem 1.4rem rgba(0,0,0,.24); }
@media (max-width:430px) { .reward-badge { white-space:normal; } }
