:root{--bg-main: #ffffff;--bg-card: #ffffff;--bg-elevated: #f5f5f5;--border-color: #e0e0e0;--text-primary: #000000;--text-muted: #666666;--accent: #04964a;--accent-hover: #037c3d;--electric: #06B6D4;--success: #10B981;--warning: #F59E0B;--danger: #EF4444;--violet: #8B5CF6;--safe-top: env(safe-area-inset-top, 0px);--safe-bottom: env(safe-area-inset-bottom, 0px);--safe-left: env(safe-area-inset-left, 0px);--safe-right: env(safe-area-inset-right, 0px)}.dark{--bg-main: #000000;--bg-card: #0a0a0a;--bg-elevated: #141414;--border-color: #222222;--text-primary: #ffffff;--text-muted: #888888;--accent: #24cb72;--accent-hover: #04964a;--electric: #22D3EE;--success: #10B981;--warning: #F59E0B;--danger: #EF4444;--violet: #A78BFA;--logo-filter: brightness(.95) contrast(1.05)}*,*:before,*:after{box-sizing:border-box}html,body{height:100%}html{-webkit-text-size-adjust:100%;text-size-adjust:100%;scroll-behavior:smooth}body{background-color:var(--bg-main);color:var(--text-primary);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;text-rendering:optimizeLegibility;overscroll-behavior-y:none;-webkit-tap-highlight-color:transparent}.app-shell{height:100vh;height:100dvh}@media(max-width:640px){button,[role=button],a,input,select,textarea{min-height:36px}}#root{max-width:100vw}input[type=date]::-webkit-calendar-picker-indicator{cursor:pointer;filter:invert(.4)}.dark input[type=date]::-webkit-calendar-picker-indicator{filter:invert(.8)}:focus-visible{outline:2px solid var(--accent);outline-offset:2px;border-radius:8px}button:focus:not(:focus-visible),a:focus:not(:focus-visible){outline:none}.logo-light{display:block}.logo-dark,.dark .logo-light{display:none}.dark .logo-dark{display:block}.custom-scrollbar{scrollbar-width:thin;scrollbar-color:rgba(161,161,170,.35) transparent}.custom-scrollbar::-webkit-scrollbar{width:6px;height:6px}.custom-scrollbar::-webkit-scrollbar-track{background:transparent}.custom-scrollbar::-webkit-scrollbar-thumb{background:#a1a1aa40;border-radius:10px;transition:background .2s ease}.custom-scrollbar::-webkit-scrollbar-thumb:hover{background:#a1a1aa80}.no-scrollbar{-ms-overflow-style:none;scrollbar-width:none}.no-scrollbar::-webkit-scrollbar{display:none}.glass{background:#ffffffb8;backdrop-filter:blur(16px);-webkit-backdrop-filter:blur(16px)}.dark .glass{background:#0c1120bf}.glass-panel{background:#ffffff0f;backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.1)}.shimmer{background:linear-gradient(90deg,#fff0,#ffffff14,#fff0);background-size:200% 100%;animation:shimmer 2s linear infinite}.dark .shimmer-bg{background:linear-gradient(90deg,#131a2e 25%,#1a2540,#131a2e 75%);background-size:200% 100%;animation:shimmer 2s linear infinite}.shimmer-bg{background:linear-gradient(90deg,#eef2fb 25%,#e2e8f4,#eef2fb 75%);background-size:200% 100%;animation:shimmer 2s linear infinite}.glow-green{box-shadow:0 0 20px #04964a40,0 0 60px #04964a1a}.glow-electric{box-shadow:0 0 20px #06b6d440,0 0 60px #06b6d41a}.glow-violet{box-shadow:0 0 20px #8b5cf640,0 0 60px #8b5cf61a}.chart-card{transition:transform .3s cubic-bezier(.34,1.56,.64,1),box-shadow .3s ease,border-color .2s ease}@media(hover:hover){.chart-card:hover{transform:translateY(-2px)}}.tab-active:after{content:"";position:absolute;bottom:-2px;left:50%;transform:translate(-50%);width:70%;height:2px;background:linear-gradient(90deg,#04964a,#24cb72);border-radius:2px}@keyframes float{0%{transform:translateY(0)}50%{transform:translateY(-10px)}to{transform:translateY(0)}}.animate-float{animation:float 6s ease-in-out infinite}@keyframes fade-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:translateY(0)}}.animate-fade-in{animation:fade-in .4s cubic-bezier(.16,1,.3,1) forwards}@keyframes bounce-in{0%{opacity:0;transform:scale(.85) translateY(20px)}60%{opacity:1;transform:scale(1.03) translateY(-4px)}80%{transform:scale(.98) translateY(1px)}to{opacity:1;transform:scale(1) translateY(0)}}.animate-bounce-in{animation:bounce-in .6s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes slide-up{0%{opacity:0;transform:translateY(16px)}to{opacity:1;transform:translateY(0)}}.animate-slide-up{animation:slide-up .4s cubic-bezier(.16,1,.3,1) forwards}@keyframes shimmer{0%{background-position:-200% 0}to{background-position:200% 0}}.animate-shimmer{animation:shimmer 2s linear infinite}@keyframes glow{0%,to{opacity:.4}50%{opacity:.9}}.animate-glow{animation:glow 4s ease-in-out infinite}@keyframes tab-enter{0%{opacity:0;transform:translate(-10px) scale(.98)}60%{opacity:1;transform:translate(2px) scale(1.005)}to{opacity:1;transform:translate(0) scale(1)}}.animate-tab-enter{animation:tab-enter .35s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes count-up{0%{opacity:0;transform:translateY(10px) scale(.9)}to{opacity:1;transform:translateY(0) scale(1)}}.animate-count-up{animation:count-up .5s cubic-bezier(.34,1.56,.64,1) forwards}@keyframes drawer-in{0%{transform:translate(-100%)}to{transform:translate(0)}}.animate-drawer-in{animation:drawer-in .28s cubic-bezier(.22,1,.36,1) forwards}@keyframes overlay-in{0%{opacity:0}to{opacity:1}}.animate-overlay-in{animation:overlay-in .28s ease-out forwards}.stagger-1{animation-delay:.05s}.stagger-2{animation-delay:.1s}.stagger-3{animation-delay:.15s}.stagger-4{animation-delay:.2s}.stagger-5{animation-delay:.25s}.stagger-6{animation-delay:.3s}.stagger-7{animation-delay:.35s}.stagger-8{animation-delay:.4s}@keyframes pulse-ring{0%{transform:scale(1);opacity:1}to{transform:scale(2.2);opacity:0}}.pulse-ring:after{content:"";position:absolute;top:0;right:0;bottom:0;left:0;border-radius:50%;background:currentColor;animation:pulse-ring 1.5s ease-out infinite}@media(prefers-reduced-motion:reduce){*,*:before,*:after{animation-duration:.001ms!important;animation-iteration-count:1!important;transition-duration:.001ms!important;scroll-behavior:auto!important}.animate-float,.animate-glow,.animate-shimmer,.pulse-ring:after{animation:none!important}}.safe-pb{padding-bottom:max(1rem,var(--safe-bottom))}.safe-pt{padding-top:max(.5rem,var(--safe-top))}
