:root{--whatsapp-green: #00a884;--whatsapp-teal: #008f6f;--whatsapp-bg: #f0f2f5;--scrollbar-thumb: #ced0d1;--scrollbar-thumb-hover: #aebac1}*{box-sizing:border-box;margin:0;padding:0;scrollbar-width:thin;scrollbar-color:var(--scrollbar-thumb) transparent;-webkit-tap-highlight-color:transparent}.recharts-wrapper,.recharts-surface,.recharts-layer,.recharts-active-bar,.recharts-bar-rectangle,.recharts-sector,.recharts-pie-sector,.recharts-tooltip-cursor,.recharts-cartesian-axis-tick,.recharts-legend-item{outline:none!important;border:none!important;box-shadow:none!important}svg:focus,path:focus,rect:focus,g:focus,.recharts-wrapper *:focus,.recharts-wrapper *:focus-visible{outline:none!important;box-shadow:none!important;stroke:none!important}.recharts-responsive-container:focus,div[role=region]:focus{outline:none!important}::-webkit-scrollbar{width:6px!important;height:6px!important}::-webkit-scrollbar-track{background:transparent!important}::-webkit-scrollbar-thumb{background-color:var(--scrollbar-thumb)!important;border-radius:10px!important}::-webkit-scrollbar-thumb:hover{background-color:var(--scrollbar-thumb-hover)!important}.scrollbar-hide::-webkit-scrollbar{display:none}.scrollbar-hide{-ms-overflow-style:none;scrollbar-width:none}.custom-scrollbar{overflow-y:auto;overflow-x:hidden}body{font-family:Inter,-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,Helvetica,Arial,sans-serif;background-color:var(--whatsapp-bg);color:#3b4a54;height:100vh;width:100vw;overflow:hidden}#root{height:100%}.animate-fade-in{animation:fadeIn .3s cubic-bezier(.16,1,.3,1) forwards}.animate-fade-in-up{animation:fadeInUp .4s cubic-bezier(.16,1,.3,1) forwards}.animate-scale-in{animation:scaleIn .35s cubic-bezier(.175,.885,.32,1.275) forwards}.animate-slide-in-right{animation:slideInRight .3s cubic-bezier(.16,1,.3,1) forwards}.animate-bounce-short{animation:bounceShort .35s cubic-bezier(.16,1,.3,1) forwards}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}@keyframes fadeInUp{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@keyframes scaleIn{0%{opacity:0;transform:scale(.92)}to{opacity:1;transform:scale(1)}}@keyframes slideInRight{0%{transform:translate(100%)}to{transform:translate(0)}}@keyframes bounceShort{0%{transform:translate(-50%,-15px);opacity:0}70%{transform:translate(-50%,2px);opacity:1}to{transform:translate(-50%);opacity:1}}@keyframes shake{0%,to{transform:translate(0)}25%{transform:translate(-5px)}75%{transform:translate(5px)}}.animate-shake{animation:shake .4s ease-in-out}@keyframes progress-loading{0%{transform:translate(-100%)}50%{transform:translate(0)}to{transform:translate(100%)}}.animate-progress{animation:progress-loading 1.5s infinite ease-in-out}@keyframes float{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(-8px) rotate(1deg)}}@keyframes float-reverse{0%,to{transform:translateY(0) rotate(0)}50%{transform:translateY(8px) rotate(-1deg)}}.animate-float{animation:float 3.6s cubic-bezier(.45,.05,.55,.95) infinite;will-change:transform}.animate-float-delayed{animation:float 4.2s cubic-bezier(.45,.05,.55,.95) infinite;animation-delay:1.8s;will-change:transform}.animate-float-slow{animation:float 6.5s cubic-bezier(.45,.05,.55,.95) infinite;animation-delay:.9s;will-change:transform}.animate-float-reverse{animation:float-reverse 4s cubic-bezier(.45,.05,.55,.95) infinite;will-change:transform}@keyframes gentle-drift{0%,to{transform:translate(0) rotate(0)}33%{transform:translate(6px,-8px) rotate(1.5deg)}66%{transform:translate(-5px,6px) rotate(-1deg)}}.animate-gentle-drift{animation:gentle-drift 12s ease-in-out infinite;will-change:transform}.animate-gentle-drift-reverse{animation:gentle-drift 14s ease-in-out infinite reverse;will-change:transform}@keyframes subtle-glow{0%,to{opacity:.35;transform:scale(1)}50%{opacity:.65;transform:scale(1.06)}}.animate-subtle-glow{animation:subtle-glow 5s ease-in-out infinite}@keyframes shimmer-gold{0%{transform:translate(-100%) rotate(45deg)}to{transform:translate(200%) rotate(45deg)}}.animate-shimmer-gold{animation:shimmer-gold 8s ease-in-out infinite}@keyframes blueBlink{0%,to{background-color:#3b82f6;border-color:#2563eb;color:#fff}50%{background-color:#dbeafe;border-color:#bfdbfe;color:#1e40af}}.animate-blue-blink{animation:blueBlink 1s infinite}
