:root{--primary-pink:#ff1a6e;--primary-glow:#ff4d8c;--secondary-pink:#ff8ab3;--accent-coral:#ff6f61;--dark-pink:#b30049;--gold:#ffd966;--gold-bright:#ffd700;--gold-deep:#ffb347;--silver:#e0e0e0;--bronze:#cd7f32;--success:#34c759;--success-light:#4cd964;--warning:#ff9f0a;--danger:#ff3b30;--danger-light:#ff6b6b;--info:#5ac8fa;--info-deep:#0a84ff;--dark:#1c1c2e;--dark-soft:#2c2c3a;--light:#fff9fb;--light-pink:#fff0f5;--cream:#fff9f0;--white-pure:#ffffff;--white-soft:#fef9fc;--glass-white:rgba(255, 255, 255, 0.9);--glass-white-heavy:rgba(255, 255, 255, 0.95);--glass-dark:rgba(28, 28, 46, 0.1);--gradient-1:linear-gradient(135deg, #ff9aa8, #ffc3d0, #ffe2e8);--gradient-2:linear-gradient(135deg, #c9b3ff, #f3c4fb, #ffd9e8);--gradient-3:linear-gradient(135deg, #ffd9b0, #ffb3c6, #ffc8dd);--gradient-primary:linear-gradient(135deg, #ff1a6e, #ff6b9d);--gradient-gold:linear-gradient(135deg, #ffd966, #ffb347, #ff8c42);--gradient-success:linear-gradient(135deg, #34c759, #4cd964, #76d672);--gradient-info:linear-gradient(135deg, #5ac8fa, #0a84ff, #007aff);--shadow-sm:0 5px 15px rgba(255, 26, 110, 0.15);--shadow-md:0 10px 25px rgba(255, 26, 110, 0.2);--shadow-lg:0 15px 35px rgba(255, 26, 110, 0.25);--shadow-xl:0 20px 45px rgba(255, 26, 110, 0.3);--shadow-inner:inset 0 2px 5px rgba(255, 255, 255, 0.3);--shadow-glow:0 0 20px rgba(255, 26, 110, 0.4);--transition-fast:all 0.2s cubic-bezier(0.4, 0, 0.2, 1);--transition-base:all 0.3s cubic-bezier(0.4, 0, 0.2, 1);--transition-slow:all 0.5s cubic-bezier(0.4, 0, 0.2, 1)}*{margin:0;padding:0;box-sizing:border-box}body{font-family:'Poppins',sans-serif;overflow-x:hidden;touch-action:manipulation;background:var(--gradient-1);background-size:400% 400%;min-height:100vh;color:var(--dark);position:relative}#gameContainer{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:100vh;padding:20px;position:relative;z-index:1;gap:15px}.game-header{text-align:center;margin-bottom:10px;width:100%;max-width:800px}.game-title{font-family:'Fredoka One',cursive;font-size:clamp(2rem, 8vw, 3rem);background:linear-gradient(135deg,var(--primary-pink),var(--gold-bright),var(--primary-pink));-webkit-background-clip:text;-webkit-text-fill-color:#fff0;background-clip:text;margin-bottom:5px;text-shadow:2px 4px 10px rgb(255 26 110 / .3);letter-spacing:1px}.game-subtitle{color:var(--dark-soft);font-size:clamp(0.95rem, 3vw, 1.2rem);font-weight:500;opacity:.9;margin-bottom:15px;text-shadow:0 2px 5px rgb(255 255 255 / .5)}.stats-container{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:12px;width:100%;max-width:800px;margin-bottom:15px}.stat-card{background:var(--glass-white-heavy);backdrop-filter:blur(12px);-webkit-backdrop-filter:blur(12px);border-radius:18px;padding:15px 12px;text-align:center;box-shadow:var(--shadow-md),var(--shadow-inner);border:2px solid rgb(255 255 255 / .8);transition:var(--transition-base);position:relative;overflow:hidden;color:var(--dark)}.stat-card:hover{transform:translateY(-6px);box-shadow:var(--shadow-lg),var(--shadow-inner);border-color:var(--primary-pink);background:var(--white-pure)}.stat-card::before{content:'';position:absolute;top:0;left:0;right:0;height:4px;background:var(--gradient-primary)}.stat-label{display:block;font-size:.85rem;color:var(--dark-soft);margin-bottom:5px;font-weight:600;text-transform:uppercase;letter-spacing:.5px}.stat-value{font-size:clamp(1.6rem, 5vw, 2rem);font-weight:800;color:var(--primary-pink);display:flex;align-items:center;justify-content:center;gap:6px;line-height:1.2;text-shadow:0 2px 5px rgb(255 26 110 / .2)}.stat-value.coins{color:var(--gold-deep);text-shadow:0 2px 5px rgb(255 179 71 / .3)}.stat-value.streak{color:var(--success);text-shadow:0 2px 5px rgb(52 199 89 / .3)}.stat-value.xp{color:var(--info-deep);text-shadow:0 2px 5px rgb(10 132 255 / .3)}.xp-container{grid-column:1 / -1;margin-top:8px;background:var(--glass-white);border-radius:30px;padding:12px 15px;border:2px solid rgb(255 255 255 / .9);box-shadow:var(--shadow-sm)}.xp-bar{width:100%;height:14px;background:rgb(0 0 0 / .1);border-radius:20px;overflow:hidden;position:relative;border:1px solid rgb(255 255 255 / .6);box-shadow:inset 0 1px 3px rgb(0 0 0 / .1)}.xp-fill{height:100%;background:var(--gradient-primary);width:0%;transition:width 0.5s ease;position:relative;overflow:hidden;border-radius:20px}.xp-text{display:flex;justify-content:space-between;margin-top:6px;font-size:.85rem;color:var(--dark-soft);font-weight:600}.game-canvas-container{position:relative;margin:10px 0;width:100%;max-width:500px;aspect-ratio:1/1}canvas{display:block;width:100%;height:100%;background:var(--white-pure);backdrop-filter:blur(5px);border:4px solid var(--white-pure);border-radius:24px;box-shadow:var(--shadow-xl),0 0 0 2px var(--primary-pink),0 0 0 5px rgb(255 255 255 / .5);touch-action:none;transition:var(--transition-base)}canvas:hover{box-shadow:var(--shadow-xl),0 0 0 3px var(--primary-pink),0 0 0 6px rgb(255 255 255 / .6)}.achievements-badge{position:absolute;top:15px;right:15px;background:var(--gradient-gold);border-radius:50%;width:55px;height:55px;display:flex;align-items:center;justify-content:center;box-shadow:var(--shadow-lg),0 0 0 3px #fff;border:none;cursor:pointer;transition:var(--transition-base);z-index:10;font-size:1.8rem;color:#fff;text-shadow:0 2px 5px rgb(0 0 0 / .2)}.achievements-badge:hover{transform:scale(1.1) rotate(8deg);box-shadow:var(--shadow-xl),0 0 0 4px #fff}.achievements-badge .badge-count{position:absolute;top:-5px;right:-5px;background:var(--danger);color:#fff;border-radius:50%;width:26px;height:26px;display:flex;align-items:center;justify-content:center;font-size:.85rem;font-weight:800;border:2px solid #fff;box-shadow:var(--shadow-sm)}.game-info{background:var(--glass-white-heavy);backdrop-filter:blur(12px);border-radius:24px;padding:18px 20px;text-align:center;box-shadow:var(--shadow-lg),var(--shadow-inner);border:2px solid rgb(255 255 255 / .9);width:100%;max-width:500px}.hearts-counter{font-size:clamp(1.3rem, 4vw, 1.6rem);font-weight:700;color:var(--dark);display:flex;align-items:center;justify-content:center;gap:15px;background:rgb(255 255 255 / .6);padding:8px 15px;border-radius:50px;margin-bottom:10px}.hearts-counter span:first-child,.hearts-counter span:last-child{background:var(--gradient-primary);-webkit-background-clip:text;-webkit-text-fill-color:#fff0;background-clip:text;font-size:1.8rem}.hearts-counter span:not(:first-child):not(:last-child){color:var(--primary-pink);font-weight:800;background:none;-webkit-text-fill-color:var(--primary-pink)}.level-info{margin-top:8px;font-size:1rem;color:var(--dark-soft);font-weight:600;background:rgb(255 255 255 / .5);padding:8px 15px;border-radius:30px}.action-buttons{display:grid;grid-template-columns:repeat(3,1fr);gap:12px;margin-top:10px;width:100%;max-width:500px}.btn{background:var(--gradient-primary);color:#fff;border:none;padding:16px 10px;font-size:clamp(0.9rem, 2.5vw, 1.1rem);font-weight:700;border-radius:60px;cursor:pointer;box-shadow:var(--shadow-md),0 4px 0 rgb(0 0 0 / .1);transition:var(--transition-fast);display:flex;align-items:center;justify-content:center;gap:8px;letter-spacing:.5px;text-transform:uppercase;font-family:'Poppins',sans-serif;border:2px solid rgb(255 255 255 / .3)}.btn:hover{transform:translateY(-4px);box-shadow:var(--shadow-xl),0 6px 0 rgb(0 0 0 / .1);filter:brightness(1.05)}.btn:active{transform:translateY(2px);box-shadow:var(--shadow-sm),0 2px 0 rgb(0 0 0 / .1)}.btn.btn-stop{background:linear-gradient(135deg,#ff3b30,#ff6b6b)}.btn.btn-fullscreen{background:linear-gradient(135deg,#0a84ff,#5ac8fa)}.btn.btn-share{background:linear-gradient(135deg,#34c759,#4cd964)}#touchControls{display:none;grid-template-columns:repeat(3,1fr);grid-template-rows:repeat(3,1fr);gap:10px;width:100%;max-width:300px;margin:20px auto 0;padding:20px;background:var(--glass-white-heavy);backdrop-filter:blur(15px);border-radius:40px;box-shadow:var(--shadow-xl),var(--shadow-inner);border:2px solid rgb(255 255 255 / .9)}.touch-btn{aspect-ratio:1;background:var(--gradient-primary);color:#fff;border:none;border-radius:25px;display:flex;align-items:center;justify-content:center;font-size:clamp(1.8rem, 6vw, 2.2rem);cursor:pointer;user-select:none;transition:var(--transition-fast);box-shadow:0 8px 0 rgb(179 0 73 / .5),0 10px 20px rgb(255 26 110 / .4);touch-action:manipulation;border:2px solid rgb(255 255 255 / .5)}.touch-btn:active{transform:translateY(6px);box-shadow:0 2px 0 rgb(179 0 73 / .5),0 5px 15px rgb(255 26 110 / .4)}.touch-center{background:var(--gradient-gold)!important;box-shadow:0 8px 0 #b85e00,0 10px 20px #ff8c42}.powerups-display{display:flex;gap:12px;justify-content:center;margin-top:15px;flex-wrap:wrap}.powerup-indicator{background:var(--white-pure);padding:10px 20px;border-radius:40px;display:flex;align-items:center;gap:10px;box-shadow:var(--shadow-lg),0 0 0 2px #fff;border:2px solid;font-size:.95rem;font-weight:700;backdrop-filter:blur(5px)}.powerup-indicator.shield{border-color:#4169e1;color:#4169e1;background:rgb(65 105 225 / .1)}.powerup-indicator.speed{border-color:gold;color:#b8860b;background:rgb(255 215 0 / .1)}.powerup-indicator.magnet{border-color:#ff4500;color:#ff4500;background:rgb(255 69 0 / .1)}.powerup-indicator.double{border-color:#4caf50;color:#2e7d32;background:rgb(76 175 80 / .1)}.modal{display:none;position:fixed;top:0;left:0;width:100%;height:100%;background:rgb(0 0 0 / .6);backdrop-filter:blur(12px);z-index:1000;justify-content:center;align-items:center;padding:20px}.modal-content{background:var(--white-soft);padding:clamp(30px, 6vw, 50px);border-radius:40px;max-width:90%;width:550px;text-align:center;box-shadow:var(--shadow-xl),0 0 0 4px white,0 0 0 6px var(--primary-pink);border:none;position:relative;overflow:hidden;max-height:90vh;overflow-y:auto;color:var(--dark)}.modal-content h2{color:var(--primary-pink);margin-bottom:20px;font-size:clamp(1.8rem, 5vw, 2.4rem);font-family:'Fredoka One',cursive;text-shadow:2px 2px 0 rgb(255 255 255 / .8)}.modal-content p{margin-bottom:20px;font-size:1.1rem;line-height:1.6;color:var(--dark-soft);font-weight:500}.reward-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(140px,1fr));gap:15px;margin:25px 0}.reward-card{background:var(--white-pure);padding:20px 15px;border-radius:25px;text-align:center;box-shadow:var(--shadow-lg);border:3px solid;transition:var(--transition-base);color:var(--dark)}.reward-card.coin{border-color:var(--gold-deep)}.reward-card.xp{border-color:var(--info-deep)}.reward-card.streak{border-color:var(--success)}.reward-card.achievement{border-color:var(--warning)}.reward-icon{font-size:2.5rem;margin-bottom:10px}.reward-value{font-size:1.8rem;font-weight:800;margin:5px 0;color:var(--dark)}.reward-label{font-size:.95rem;color:var(--dark-soft);font-weight:600}#achievementsModal .modal-content{width:650px}.achievements-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(170px,1fr));gap:15px;margin:25px 0}.achievement-card{background:var(--white-pure);padding:20px 15px;border-radius:25px;text-align:center;box-shadow:var(--shadow-md);border:3px solid #e0e0e0;transition:var(--transition-base);position:relative;overflow:hidden;color:var(--dark)}.achievement-card.unlocked{border-color:var(--gold-deep);background:linear-gradient(135deg,#fff9e6,white);box-shadow:0 0 20px rgb(255 215 0 / .3)}.achievement-card.locked{opacity:.8;filter:grayscale(.3)}.achievement-icon{font-size:2.5rem;margin-bottom:12px}.achievement-name{font-weight:700;margin-bottom:8px;color:var(--dark);font-size:1rem}.achievement-desc{font-size:.85rem;color:var(--dark-soft)}#bonusAlert{position:fixed;top:30px;left:50%;transform:translateX(-50%);background:var(--gradient-gold);color:#fff;padding:18px 30px;border-radius:60px;font-weight:800;box-shadow:var(--shadow-xl),0 0 0 4px #fff;z-index:1001;display:none;text-align:center;min-width:300px;max-width:90%;backdrop-filter:blur(10px);border:none;font-size:1.1rem;letter-spacing:.5px}#gameOver{display:none;background:var(--glass-white-heavy);padding:30px 25px;border-radius:40px;text-align:center;margin-top:20px;box-shadow:var(--shadow-xl),0 0 0 4px white,0 0 0 6px var(--danger);width:100%;max-width:450px}#gameOver h2{color:var(--danger);font-size:2rem;margin-bottom:15px;font-family:'Fredoka One',cursive}#gameOver p{font-size:1.2rem;color:var(--dark);margin-bottom:20px}.loading-screen{position:fixed;top:0;left:0;width:100%;height:100%;background:var(--gradient-primary);display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:9999;transition:opacity 0.5s ease}.loading-spinner{width:70px;height:70px;border:6px solid rgb(255 255 255 / .4);border-radius:50%;border-top-color:#fff;animation:spin 1s linear infinite;margin-bottom:25px;box-shadow:0 0 30px rgb(255 255 255 / .5)}.loading-text{color:#fff;font-size:1.4rem;font-weight:700;text-shadow:2px 2px 0 rgb(0 0 0 / .1);letter-spacing:1px}.game-footer{text-align:center;margin-top:25px;padding:15px 20px;color:var(--dark-soft);font-size:.95rem;width:100%;max-width:500px;background:rgb(255 255 255 / .3);backdrop-filter:blur(5px);border-radius:60px;font-weight:600}.game-footer a{color:var(--primary-pink);text-decoration:none;font-weight:700;transition:var(--transition-fast);padding:0 5px}.game-footer a:hover{color:var(--dark-pink);text-decoration:underline}.floating-heart,.floating-coin{position:fixed;font-size:28px;animation:float 6s ease-in-out infinite;opacity:.3;z-index:0;pointer-events:none;filter:drop-shadow(0 5px 10px rgb(255 26 110 / .3))}.floating-coin{animation:float 7s ease-in-out infinite reverse}@keyframes spin{to{transform:rotate(360deg)}}