*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}:root{--font-sans: "DM Sans", system-ui, -apple-system, sans-serif;--font-serif: "DM Serif Display", Georgia, serif;--radius: 20px;--radius-sm: 12px;--shadow: 0 4px 24px rgba(0,0,0,.08);--shadow-lg: 0 8px 40px rgba(0,0,0,.12);--transition: .25s cubic-bezier(.34, 1.56, .64, 1)}html,body,#root{height:100%;width:100%;overflow:hidden}body{font-family:var(--font-sans);-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;overscroll-behavior:none}#root{display:flex;flex-direction:column;position:relative}.scroll-area{overflow-y:auto;-webkit-overflow-scrolling:touch;scrollbar-width:none}.scroll-area::-webkit-scrollbar{display:none}.glass-card{backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border:1px solid rgba(255,255,255,.5);border-radius:var(--radius);box-shadow:var(--shadow)}@keyframes sparkle-pop{0%{transform:scale(0) rotate(0);opacity:0}60%{transform:scale(1.3) rotate(20deg);opacity:1}to{transform:scale(1) rotate(0);opacity:1}}@keyframes float-up{0%{transform:translateY(0)}50%{transform:translateY(-6px)}to{transform:translateY(0)}}.animate-float{animation:float-up 3s ease-in-out infinite}.animate-sparkle{animation:sparkle-pop .4s cubic-bezier(.34,1.56,.64,1) forwards}
