*{margin:0;padding:0;box-sizing:border-box}html,body,#root{width:100%;height:100%;overflow:hidden;touch-action:none}body{font-family:-apple-system,BlinkMacSystemFont,Segoe UI,Roboto,sans-serif;background:linear-gradient(135deg,#1a1a2e,#16213e)}.game-container{width:100%;height:100%;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}.header{position:absolute;top:0;left:0;right:0;padding:10px 20px;display:flex;justify-content:space-between;align-items:center;background:#0000004d;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:200;gap:15px}.pause-button{background:#ffffff26;border:none;border-radius:50%;width:44px;height:44px;font-size:20px;cursor:pointer;display:flex;align-items:center;justify-content:center;transition:all .2s ease}.pause-button:hover{background:#ffffff40;transform:scale(1.1)}.pause-button:active{transform:scale(.95)}.pause-overlay{position:absolute;top:0;right:0;bottom:0;left:0;background:#000000b3;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);display:flex;align-items:center;justify-content:center;z-index:150}.pause-text{color:#fff;font-size:48px;font-weight:700;text-shadow:0 0 30px rgba(255,255,255,.5);animation:pausePulse 1.5s ease-in-out infinite}@keyframes pausePulse{0%,to{opacity:1;transform:scale(1)}50%{opacity:.7;transform:scale(.95)}}.score{color:#fff;font-size:24px;font-weight:700;text-shadow:0 2px 10px rgba(0,0,0,.5)}.score span{color:gold}.game-canvas{border-radius:20px;box-shadow:0 0 40px #00000080,inset 0 0 100px #ffffff0d}.menu{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;flex-direction:column;align-items:center;justify-content:center;background:#000c;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);z-index:200;gap:20px}.menu-logo{width:120px;height:120px;object-fit:contain;filter:drop-shadow(0 0 20px rgba(255,215,0,.5));animation:logoFloat 3s ease-in-out infinite}@keyframes logoFloat{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}.menu h1{color:#fff;font-size:48px;text-shadow:0 0 30px rgba(255,215,0,.5);margin-bottom:10px}.menu h2{color:#fff;font-size:32px;margin-bottom:10px}.menu p{color:#aaa;font-size:18px;text-align:center;max-width:300px;line-height:1.5}.menu button{padding:15px 40px;font-size:20px;font-weight:700;border:none;border-radius:30px;cursor:pointer;transition:all .3s ease;text-transform:uppercase;letter-spacing:2px}.menu button.play{background:linear-gradient(135deg,#667eea,#764ba2);color:#fff;box-shadow:0 10px 30px #667eea66}.menu button.play:hover{transform:translateY(-3px);box-shadow:0 15px 40px #667eea99}.difficulty-selector{display:flex;flex-direction:column;align-items:center;gap:10px;margin:20px 0}.difficulty-selector label{color:#fff;font-size:18px}.difficulty-selector select{padding:10px 20px;font-size:18px;border-radius:10px;border:none;background:#ffffff1a;color:#fff;cursor:pointer}.difficulty-selector select option{background:#1a1a2e;color:#fff}.final-score{color:gold;font-size:64px;font-weight:700;text-shadow:0 0 30px rgba(255,215,0,.5)}.combo-indicator{position:absolute;top:60px;left:50%;transform:translate(-50%);color:#ff6b6b;font-size:24px;font-weight:700;text-shadow:0 0 20px rgba(255,107,107,.8);animation:pulse .5s ease-in-out;z-index:150}@keyframes pulse{0%,to{transform:translate(-50%) scale(1)}50%{transform:translate(-50%) scale(1.2)}}.floating-score{position:absolute;color:gold;font-size:24px;font-weight:700;text-shadow:0 0 10px rgba(255,215,0,.8);pointer-events:none;animation:floatUp 1s ease-out forwards;z-index:150}@keyframes floatUp{0%{opacity:1;transform:translateY(0) scale(1)}to{opacity:0;transform:translateY(-50px) scale(1.5)}}.achievements-bar{position:absolute;bottom:10px;left:50%;transform:translate(-50%);display:flex;gap:12px;padding:10px 20px;background:#0006;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);border-radius:30px;z-index:100}.achievement-icon{position:relative;width:44px;height:44px;display:flex;align-items:center;justify-content:center;border-radius:50%;transition:all .3s ease}.achievement-icon.locked{background:#323232cc;filter:grayscale(1) opacity(.4)}.achievement-icon.unlocked{background:linear-gradient(135deg,#667eea,#764ba2);box-shadow:0 0 15px #667eea99;animation:achievementPop .5s ease-out}.achievement-emoji{font-size:24px;z-index:2}.achievement-glow{position:absolute;top:-3px;right:-3px;bottom:-3px;left:-3px;border-radius:50%;background:linear-gradient(135deg,#ffd70066,#ff6b6b66);animation:glowPulse 2s ease-in-out infinite;z-index:1}@keyframes achievementPop{0%{transform:scale(0)}50%{transform:scale(1.3)}to{transform:scale(1)}}@keyframes glowPulse{0%,to{opacity:.5;transform:scale(1)}50%{opacity:1;transform:scale(1.1)}}.achievement-notification{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);background:linear-gradient(135deg,#667eeaf2,#764ba2f2);padding:20px 40px;border-radius:20px;text-align:center;z-index:300;animation:notificationSlide 3s ease-in-out forwards;box-shadow:0 0 50px #667eeacc}.achievement-notification .emoji{font-size:48px;display:block;margin-bottom:10px}.achievement-notification .title{color:gold;font-size:24px;font-weight:700;margin-bottom:5px}.achievement-notification .description{color:#fff;font-size:16px;opacity:.9}@keyframes notificationSlide{0%{opacity:0;transform:translate(-50%,-50%) scale(.5)}10%{opacity:1;transform:translate(-50%,-50%) scale(1.1)}20%{transform:translate(-50%,-50%) scale(1)}80%{opacity:1;transform:translate(-50%,-50%) scale(1)}to{opacity:0;transform:translate(-50%,-50%) scale(.8)}}.achievement-icon.selected{transform:scale(1.2);z-index:10}.achievement-tooltip{position:absolute;bottom:80px;left:50%;transform:translate(-50%);z-index:200;animation:tooltipFadeIn .2s ease-out}.tooltip-content{background:#141428f2;-webkit-backdrop-filter:blur(10px);backdrop-filter:blur(10px);padding:15px 25px;border-radius:15px;text-align:center;border:2px solid rgba(255,255,255,.2);box-shadow:0 10px 40px #00000080;min-width:200px}.tooltip-emoji{font-size:36px;display:block;margin-bottom:8px}.tooltip-title{color:#fff;font-size:18px;font-weight:700;margin-bottom:5px}.tooltip-description{color:#aaa;font-size:14px;margin-bottom:8px}.tooltip-status{font-size:14px;font-weight:700;padding:5px 10px;border-radius:10px;display:inline-block}.tooltip-status.unlocked{color:#4ade80;background:#4ade8033}.tooltip-status.locked{color:#888;background:#64646433}@keyframes tooltipFadeIn{0%{opacity:0;transform:translate(-50%) translateY(10px)}to{opacity:1;transform:translate(-50%) translateY(0)}}
