.tg-button{display:inline-flex;align-items:center;justify-content:center;min-height:var(--app-tap-target, 48px);padding:12px 24px;border-radius:var(--app-border-radius-sm, 12px);font-weight:600;font-size:15px;letter-spacing:.01em;transition:all .2s cubic-bezier(.4,0,.2,1);-webkit-tap-highlight-color:transparent;cursor:pointer;border:none;outline:none}.tg-button-primary{background:linear-gradient(135deg,#08c,#0077b5);color:#fff;box-shadow:0 4px 12px #0088cc4d}.tg-button-primary:hover{background:linear-gradient(135deg,#09d,#08c);transform:translateY(-1px);box-shadow:0 6px 16px #08c6}.tg-button-primary:active{transform:translateY(0) scale(.98);box-shadow:0 2px 8px #0088cc4d}.tg-button-secondary{background:#ffffff14;color:#fff;border:1px solid rgba(255,255,255,.15)}.tg-button-secondary:hover{background:#ffffff1f;border-color:#fff3}.tg-button-secondary:active{transform:scale(.98);background:#ffffff0f}.tg-card{background:var(--app-card-bg, rgba(30, 41, 59, .8));border-radius:var(--app-border-radius, 16px);border:1px solid var(--app-border, rgba(255, 255, 255, .1));backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px)}.tg-card-interactive{transition:all .2s ease}.tg-card-interactive:hover{border-color:#0088cc4d;transform:translateY(-2px)}.tg-card-interactive:active{transform:translateY(0) scale(.99)}.tg-accent{color:var(--app-primary, #0088CC)}.tg-accent-bg{background-color:var(--app-primary, #0088CC)}.tg-accent-border{border-color:var(--app-primary, #0088CC)}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.no-scrollbar::-webkit-scrollbar{display:none}button:focus-visible,a:focus-visible,[role=button]:focus-visible{outline:2px solid var(--app-primary, #0088CC);outline-offset:2px}.glass-panel{background:#1e293bb3;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1);box-shadow:0 4px 6px -1px #0000001a,0 2px 4px -1px #0000000f}.glass-panel-light{background:#ffffff0d;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);border:1px solid rgba(255,255,255,.05)}.glass-panel-dark{background:#0f172a99;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px);border:1px solid rgba(255,255,255,.08);box-shadow:0 4px 20px -1px #0000004d}.premium-gradient-text{background:linear-gradient(135deg,#fbbf24,#d97706,#b45309);-webkit-background-clip:text;-webkit-text-fill-color:transparent;background-clip:text;text-shadow:0 2px 10px rgba(217,119,6,.3)}.premium-card-border{position:relative;border:1px solid transparent;background-clip:padding-box}.premium-card-border:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;z-index:-1;margin:-1px;border-radius:inherit;background:linear-gradient(to bottom right,#fff3,#ffffff0d);pointer-events:none}@keyframes toast-enter{0%{opacity:0;transform:translate(-50%,20px)}to{opacity:1;transform:translate(-50%)}}.animate-toast-enter{animation:toast-enter .4s cubic-bezier(.16,1,.3,1) both}@keyframes fade-in-up{0%{opacity:0;transform:translateY(10px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in-up{animation:fade-in-up .5s cubic-bezier(.16,1,.3,1) both}@keyframes pointer-bounce{0%{transform:translateY(0)}50%{transform:translateY(-4px)}to{transform:translateY(0)}}.animate-pointer-win{animation:pointer-bounce .6s ease-out}@keyframes wheel-glow{0%,to{box-shadow:0 0 15px #3b82f633}50%{box-shadow:0 0 30px #3b82f699}}.animate-wheel-glow{animation:wheel-glow 2s ease-in-out infinite}@keyframes button-pulse{0%,to{transform:scale(1);box-shadow:0 0 #0000}50%{transform:scale(1.02);box-shadow:0 0 15px #f59e0b4d}}.animate-button-pulse{animation:button-pulse 2s cubic-bezier(.4,0,.6,1) infinite}@layer utilities{.animate-shine-rotate{animation:shine-rotate 8s linear infinite}.animate-pointer-tick{animation:pointer-tick .1s ease-out}.animate-scale-up-bounce{animation:scale-up-bounce .6s cubic-bezier(.34,1.56,.64,1)}}@keyframes shine-rotate{0%{transform:translateY(-50%) rotate(0)}to{transform:translateY(-50%) rotate(360deg)}}@keyframes pointer-tick{0%{transform:translate(-50%,-24px) rotate(0)}50%{transform:translate(-50%,-24px) rotate(-15deg)}to{transform:translate(-50%,-24px) rotate(0)}}@keyframes scale-up-bounce{0%{transform:scale(.5);opacity:0}60%{transform:scale(1.05);opacity:1}to{transform:scale(1);opacity:1}}@media(prefers-reduced-motion:reduce){.animate-pointer-win,.animate-wheel-glow,.animate-button-pulse,.animate-fade-in-up{animation:none!important}}@keyframes xp-gain-pulse{0%{transform:scale(1)}50%{transform:scale(1.05)}to{transform:scale(1)}}@keyframes xp-gain-shine{0%{background-position:-200% center}to{background-position:200% center}}.xp-bar-gain{animation:xp-gain-pulse .5s ease-out;position:relative;overflow:hidden}.xp-bar-gain:after{content:"";position:absolute;top:0;left:0;width:100%;height:100%;background:linear-gradient(90deg,transparent 0%,rgba(255,255,255,.6) 50%,transparent 100%);background-size:200% 100%;animation:xp-gain-shine 1s ease-out}@keyframes level-up-burst{0%{transform:scale(0) rotate(0);opacity:0}to{transform:scale(1) rotate(360deg);opacity:1}}.level-up-burst{animation:level-up-burst .8s cubic-bezier(.34,1.56,.64,1)}@keyframes shimmer{0%{background-position:-1000px 0}to{background-position:1000px 0}}.shimmer{background:linear-gradient(to right,transparent 0%,rgba(255,255,255,.08) 50%,transparent 100%);background-size:1000px 100%;animation:shimmer 2s infinite linear}@keyframes glow-pulse{0%,to{box-shadow:0 0 5px #facc1580}50%{box-shadow:0 0 15px #facc15e6}}.energy-full-glow{animation:glow-pulse 3s ease-in-out infinite}@keyframes combo-pulse{0%,to{transform:scale(1);filter:brightness(1)}50%{transform:scale(1.1);filter:brightness(1.2)}}.combo-display{animation:combo-pulse 1s ease-in-out infinite}@keyframes slide-up{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-slide-up{animation:slide-up .6s cubic-bezier(.16,1,.3,1) backwards}@keyframes scale-in{0%{opacity:0;transform:scale(.8)}to{opacity:1;transform:scale(1)}}.animate-scale-in{animation:scale-in .4s cubic-bezier(.34,1.56,.64,1) backwards}@keyframes pulse-slow{0%,to{opacity:.4;transform:translate(-50%,-50%) scale(1)}50%{opacity:.7;transform:translate(-50%,-50%) scale(1.1)}}@layer utilities{.animate-slide-up{animation:slideUp .5s cubic-bezier(.16,1,.3,1) forwards;opacity:0;transform:translateY(20px)}.animate-fade-in{animation:fadeIn .4s ease-out forwards}.glass-panel{@apply bg-slate-900/60 backdrop-blur-xl border border-white/10 shadow-2xl;}.text-glow{text-shadow:0 0 10px rgba(255,255,255,.5)}}@keyframes slideUp{to{opacity:1;transform:translateY(0)}}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}
