.tutorial-shine{position:relative;overflow:hidden}.tutorial-shine:after{content:"";position:absolute;top:0;left:-150%;width:50%;height:100%;background:linear-gradient(120deg,rgba(255,255,255,.2),rgba(255,255,255,.6),rgba(255,255,255,.2));animation:tutorial-shine 2s infinite}@keyframes tutorial-shine{0%{left:-150%}50%{left:150%}to{left:150%}}@keyframes tutorial-pulse{0%{transform:scale(1);opacity:1}50%{transform:scale(1.4);opacity:.6}to{transform:scale(1);opacity:1}}.tutorial-waves{margin-top:40px;display:flex;gap:12px;opacity:0;transition:opacity .5s ease}.tutorial-waves.show{opacity:1}.tutorial-waves span{width:60px;height:20px;background:linear-gradient(90deg,#4285f4,#34a853,#fbbc05,#ea4335);background-size:400% 100%;border-radius:10px;animation:tutorial-wave 2s infinite}.tutorial-waves span:nth-child(2){animation-delay:.3s}.tutorial-waves span:nth-child(3){animation-delay:.6s}@keyframes tutorial-wave{0%{background-position:0 0;transform:scaleY(1)}50%{background-position:100% 0;transform:scaleY(1.4)}to{background-position:0 0;transform:scaleY(1)}}.tutorial-start-btn{margin-top:24px;padding:12px 32px;font-size:1.2rem;border:none;border-radius:8px;color:#fff;background:linear-gradient(90deg,#3b82f6,#9333ea);cursor:pointer;box-shadow:0 4px 14px rgba(0,0,0,.2)}.tutorial-start-btn:hover{opacity:.9}.intro-wavelength{--bar-w:4px;--gap:5px;--speed:1.15s;--delay-step:-0.03s;--height:110px;--color-1:#00e5ff;--color-2:#7c4dff;--color-3:#ff4081;margin-top:36px;width:min(90vw,900px);height:var(--height);display:flex;align-items:flex-end;justify-content:center;gap:var(--gap);opacity:0;transition:opacity .5s ease;pointer-events:none}.intro-wavelength.show{opacity:1}.intro-wavelength i{display:block;width:var(--bar-w);height:30%;border-radius:999px;background:linear-gradient(180deg,var(--color-1),var(--color-2) 60%,var(--color-3));filter:drop-shadow(0 0 6px rgba(124,77,255,.35));transform-origin:50% 100%;animation:intro-wavelength var(--speed) ease-in-out infinite;animation-delay:calc(var(--i) * var(--delay-step));will-change:transform}.intro-wavelength i:nth-child(4n){--amp:0.85}.intro-wavelength i:nth-child(4n+1){--amp:1.00}.intro-wavelength i:nth-child(4n+2){--amp:0.65}.intro-wavelength i:nth-child(4n+3){--amp:0.92}.intro-wavelength.playing i{animation-play-state:running}.intro-wavelength.paused i{animation-play-state:paused}@keyframes intro-wavelength{0%{transform:scaleY(.35)}25%{transform:scaleY(calc(1 * var(--amp, 1)))}50%{transform:scaleY(.5)}75%{transform:scaleY(calc(.85 * var(--amp, 1)))}to{transform:scaleY(.35)}}@media (max-width:640px){.intro-wavelength{--bar-w:3px;--gap:3px;--height:84px;width:92vw}}@media (prefers-reduced-motion:reduce){.intro-wavelength i{animation:none;height:40%}}