.grain-overlay:before{content:"";z-index:1;pointer-events:none;opacity:.03;background-image:url("data:image/svg+xml,%3Csvg viewBox='0 0 256 256' xmlns='http://www.w3.org/2000/svg'%3E%3Cfilter id='noise'%3E%3CfeTurbulence type='fractalNoise' baseFrequency='0.65' numOctaves='3' stitchTiles='stitch'/%3E%3C/filter%3E%3Crect width='100%25' height='100%25' filter='url(%23noise)'/%3E%3C/svg%3E");background-repeat:repeat;background-size:256px 256px;position:absolute;inset:0}@keyframes float-slow{0%,to{transform:translate(0)scale(1)}25%{transform:translate(30px,-50px)scale(1.05)}50%{transform:translate(-20px,20px)scale(.95)}75%{transform:translate(10px,-30px)scale(1.02)}}@keyframes float-slower{0%,to{transform:translate(0)scale(1)}33%{transform:translate(-40px,30px)scale(1.08)}66%{transform:translate(20px,-40px)scale(.92)}}@keyframes float-slowest{0%,to{transform:translate(0)rotate(0)}50%{transform:translate(-30px,-20px)rotate(5deg)}}.blob-slow{animation:8s ease-in-out infinite float-slow}.blob-slower{animation:10s ease-in-out infinite float-slower}.blob-slowest{animation:14s ease-in-out infinite float-slowest}::selection{color:#fff;background-color:#14b8a6}::selection{color:#fff;background-color:#14b8a6}html{scroll-behavior:smooth}@keyframes typing-dot{0%,60%,to{opacity:.3;transform:translateY(0)}30%{opacity:1;transform:translateY(-4px)}}.typing-dot:first-child{animation:1.4s infinite typing-dot}.typing-dot:nth-child(2){animation:1.4s .2s infinite typing-dot}.typing-dot:nth-child(3){animation:1.4s .4s infinite typing-dot}.glass-card{-webkit-backdrop-filter:blur(12px);background:#ffffffb3;border:1px solid #ffffff4d;border-radius:.75rem;transition:all .4s cubic-bezier(.25,.46,.45,.94);position:relative;box-shadow:0 4px 24px -4px #3a4f8f14,0 1px 2px #3a4f8f0a,inset 0 1px #fff9}.glass-card:hover{-webkit-backdrop-filter:blur(16px);background:#ffffffd9;transform:translateY(-2px);box-shadow:0 8px 40px -8px #3a4f8f26,0 2px 4px #3a4f8f0f,inset 0 1px #fffc}.dark .glass-card{background:#16204899;border-color:#ffffff14;box-shadow:0 4px 24px -4px #0000004d,inset 0 1px #ffffff0d}.dark .glass-card:hover{background:#162048cc;box-shadow:0 8px 40px -8px #00000080,inset 0 1px #ffffff14}@property --glass-border-angle{syntax:"<angle>";inherits:false;initial-value:0deg}.glass-card-border{isolation:isolate}.glass-card-border:before{content:"";border-radius:inherit;background:conic-gradient(from var(--glass-border-angle,0deg),#3a4f8f1f,#0d948840,#b8912e2e,#3a4f8f1f);-webkit-mask-composite:xor;z-index:-1;pointer-events:none;padding:1px;animation:8s linear infinite glass-border-rotate;position:absolute;inset:-1px;-webkit-mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);mask-image:linear-gradient(#fff 0 0),linear-gradient(#fff 0 0);-webkit-mask-position:0 0,0 0;mask-position:0 0,0 0;-webkit-mask-size:auto,auto;mask-size:auto,auto;-webkit-mask-repeat:repeat,repeat;mask-repeat:repeat,repeat;-webkit-mask-clip:content-box,border-box;mask-clip:content-box,border-box;-webkit-mask-origin:content-box,border-box;mask-origin:content-box,border-box;-webkit-mask-composite:xor;mask-composite:exclude;-webkit-mask-source-type:auto,auto;mask-mode:match-source,match-source}@keyframes glass-border-rotate{to{--glass-border-angle:360deg}}@keyframes glass-breathe{0%,to{box-shadow:0 4px 24px -4px #3a4f8f14,0 1px 2px #3a4f8f0a,inset 0 1px #fff9}50%{box-shadow:0 6px 32px -4px #3a4f8f24,0 2px 4px #3a4f8f0f,inset 0 1px #ffffffb3}}.glass-breathe{animation:4s ease-in-out infinite glass-breathe}.btn-bubble{transition:all .3s cubic-bezier(.25,.46,.45,.94);position:relative;overflow:hidden;box-shadow:0 2px 8px #3a4f8f1f,inset 0 1px #ffffff40,inset 0 -1px #0000000d}.btn-bubble:after{content:"";border-radius:inherit;pointer-events:none;background:radial-gradient(at 50% 0,#ffffff4d 0%,#0000 60%);transition:opacity .3s;position:absolute;inset:2px}.btn-bubble:hover{animation:.4s ease-out btn-squeeze;box-shadow:0 4px 16px #3a4f8f33,inset 0 1px #ffffff59,inset 0 -1px #00000014}.btn-bubble:active{transition-duration:.1s;transform:scale(.97)}@keyframes btn-squeeze{0%{transform:scale(1)}30%{transform:scale(.96)}60%{transform:scale(1.02)}to{transform:scale(1)}}.btn-bubble-gold{background:linear-gradient(135deg,#d4a843 0%,#b8912e 50%,#d4a843 100%) 0%/200% 200%;transition:background-position .6s,box-shadow .3s,transform .3s}.btn-bubble-gold:hover{background-position:100%}.btn-bubble-indigo{background:linear-gradient(135deg,#5767a7 0%,#3a4f8f 50%,#5767a7 100%) 0%/200% 200%;transition:background-position .6s,box-shadow .3s,transform .3s}.btn-bubble-indigo:hover{background-position:100%}.btn-blob-wrap{position:relative}.btn-blob-wrap:before{content:"";filter:blur(20px);pointer-events:none;z-index:-1;background:radial-gradient(#b8912e26 0%,#0000 70%);border-radius:50%;width:120%;height:160%;animation:3s ease-in-out infinite blob-pulse;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}@keyframes blob-pulse{0%,to{opacity:.6;transform:translate(-50%,-50%)scale(1)}50%{opacity:1;transform:translate(-50%,-50%)scale(1.1)}}@keyframes icon-pulse-glow{0%,to{box-shadow:0 0 #0d94884d}50%{box-shadow:0 0 0 6px #0d948800}}.icon-pulse{animation:2s ease-in-out infinite icon-pulse-glow}@keyframes dot-breathe{0%,to{opacity:1;transform:scale(1)}50%{opacity:.5;transform:scale(.8)}}.dot-alive{animation:2s ease-in-out infinite dot-breathe}@keyframes lesson-shimmer{0%{background-position:200% 0}to{background-position:-200% 0}}.shimmer-badge{background:linear-gradient(110deg,#0000 30%,#0d94881a 45%,#0d948833 50%,#0d94881a 55%,#0000 70%) 0 0/200% 100%;animation:3s ease-in-out infinite lesson-shimmer}@keyframes particle-float{0%{opacity:0;transform:translateY(0)rotate(0)}10%{opacity:.6}90%{opacity:.6}to{opacity:0;transform:translateY(-100vh)rotate(360deg)}}.particle{opacity:0;pointer-events:none;background:currentColor;border-radius:50%;position:absolute}@keyframes mesh-shift{0%{background-position:0%}50%{background-position:100%}to{background-position:0%}}.gradient-mesh{background:linear-gradient(-45deg,#3a4f8f08,#0d948808,#b8912e05,#3a4f8f08) 0 0/400% 400%;animation:20s ease-in-out infinite mesh-shift}@media (prefers-reduced-motion:reduce){.glass-breathe,.glass-card-border:before,.btn-bubble:hover,.icon-pulse,.dot-alive,.shimmer-badge,.gradient-mesh,.blob-slow,.blob-slower,.blob-slowest,.btn-blob-wrap:before{animation:none!important}.glass-card:hover,.btn-bubble:hover{transform:none!important}}@media (max-width:768px){.glass-card{-webkit-backdrop-filter:blur(8px)}.glass-card-border:before{animation-duration:16s}.glass-breathe{animation-duration:6s}.btn-blob-wrap:before,.particle{display:none}}
