@tailwind base;@tailwind components;@tailwind utilities;:root{font-family:Inter,system-ui,Avenir,Helvetica,Arial,sans-serif}body{margin:0;background-color:#000;color:#fff}@layer utilities{.pb-safe{padding-bottom:env(safe-area-inset-bottom)}}@keyframes slideUp{0%{transform:translateY(100%)}to{transform:translateY(0)}}.animate-slide-up{animation:slideUp .3s cubic-bezier(.16,1,.3,1) forwards}@keyframes slideUpFade{0%{opacity:0;transform:translateY(20px)}to{opacity:1;transform:translateY(0)}}.animate-slide-up-fade{animation:slideUpFade .5s ease-out forwards}@keyframes slideDownToast{0%{opacity:0;transform:translateY(-100%)}15%{opacity:1;transform:translateY(0)}85%{opacity:1;transform:translateY(0)}to{opacity:0;transform:translateY(-100%)}}.animate-slide-down-toast{animation:slideDownToast 3s ease-in-out forwards}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.animate-fade-in{animation:fadeIn .2s ease-out forwards}@keyframes scaleIn{0%{opacity:0;transform:scale(.95)}to{opacity:1;transform:scale(1)}}.animate-scale-in{animation:scaleIn .2s ease-out forwards}@keyframes pulse-logo{0%,to{opacity:1;transform:scale(1)}50%{opacity:.8;transform:scale(.98)}}.animate-pulse-logo{animation:pulse-logo 2s infinite ease-in-out}@keyframes attention{0%,to{transform:scale(.9)}50%{transform:scale(1.1) rotate(5deg)}}.animate-attention{animation:attention 2s infinite ease-in-out}@keyframes float-slow{0%{background-position:0 0}to{background-position:100px 100px}}.animate-float-slow{animation:float-slow 60s linear infinite}@keyframes pulse-slow{0%,to{opacity:.2;transform:scale(1)}50%{opacity:.3;transform:scale(1.1)}}.animate-pulse-slow{animation:pulse-slow 8s ease-in-out infinite}@keyframes bounce-slow{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.animate-bounce-slow{animation:bounce-slow 3s ease-in-out infinite}@keyframes burst{0%{opacity:1;transform:translate(-50%,-50%) translate(0) scale(1)}30%{opacity:1;transform:translate(-50%,-50%) translate(var(--tx),var(--ty)) scale(1.2)}to{opacity:0;transform:translate(-50%,-50%) translate(calc(var(--tx) * 1.5),calc(var(--ty) * 1.5 + 20px)) scale(.5)}}.animate-burst{animation:burst .65s cubic-bezier(.22,.61,.36,1) forwards;pointer-events:none}@keyframes card-pop{0%{opacity:0;transform:scale(.88)}to{opacity:1;transform:scale(1)}}.animate-card-pop{animation:card-pop .25s cubic-bezier(.25,.46,.45,.94) forwards;transform-origin:center top}
