@import url("https://fonts.googleapis.com/css2?family=Baloo+2:wght@600;700;800&family=Nunito:wght@600;700;800;900&display=swap");:root{color-scheme:dark;background:#04111d;color:#e9f7ff}*{box-sizing:border-box}body,html{min-height:100%;margin:0}body{font-family:Nunito,Avenir Next,Arial,Helvetica,sans-serif;background:#04111d}.game,body{overflow:hidden}.game{--ocean-x:0px;--flash-opacity:0;--world-banner-opacity:0;--world-image:url(/game-backgrounds/ocean-lanes-loop.png);position:relative;min-height:100vh;isolation:isolate;background:#03101b}.damageFlash,.laneGlow,.oceanTile,.oceanTint{position:absolute;inset:0;pointer-events:none}.oceanTile{inset:-6vmax;background-image:var(--world-image);background-position:var(--ocean-x) center;background-repeat:repeat-x;background-size:auto 100%;transform:translateZ(0)}.oceanTint{background:radial-gradient(circle at 28% 50%,rgba(0,139,255,.26),transparent 25vmin),radial-gradient(circle at 70% 38%,rgba(71,193,255,.12),transparent 30vmin),linear-gradient(90deg,rgba(0,7,14,.45),transparent 20%,transparent 78%,rgba(0,7,14,.52)),linear-gradient(180deg,rgba(4,17,29,.2),rgba(3,13,24,.5))}.laneGlow{opacity:.26;background:linear-gradient(180deg,transparent 18%,rgba(144,218,255,.1) 21%,transparent 24%),linear-gradient(180deg,transparent 32%,rgba(144,218,255,.1) 35%,transparent 38%),linear-gradient(180deg,transparent 46%,rgba(144,218,255,.1) 49%,transparent 52%),linear-gradient(180deg,transparent 60%,rgba(144,218,255,.1) 63%,transparent 66%),linear-gradient(180deg,transparent 74%,rgba(144,218,255,.1) 77%,transparent 80%);filter:blur(18px)}.damageFlash{z-index:6;background:rgba(255,44,96,.34);opacity:var(--flash-opacity)}.worldBanner{position:absolute;top:44%;left:50%;z-index:9;padding:12px 22px;border:1px solid rgba(167,232,255,.28);border-radius:6px;background:rgba(0,18,34,.48);color:rgba(240,252,255,.94);font-size:clamp(24px,4vw,56px);font-family:Baloo\ 2,Nunito,sans-serif;font-weight:800;letter-spacing:.05em;text-transform:uppercase;text-shadow:0 3px 18px rgba(0,0,0,.6);opacity:var(--world-banner-opacity);transform:translate(-50%,-50%);pointer-events:none}.playfield{inset:0;overflow:hidden}.hud,.playfield{position:absolute}.hud{top:18px;left:18px;z-index:8;display:flex;gap:10px;color:#e8f9ff;font-size:14px;font-weight:900;letter-spacing:.02em;text-shadow:0 2px 10px rgba(0,0,0,.55)}.hud span{min-width:84px;padding:8px 10px;border:1px solid rgba(155,225,255,.2);border-radius:6px;background:rgba(1,18,32,.42);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}.powerHud{position:absolute;top:145px;left:18px;z-index:8;display:flex;flex-wrap:wrap;gap:7px;max-width:250px}.powerHud span{padding:6px 9px;border:1px solid rgba(105,238,255,.26);border-radius:999px;background:rgba(8,68,104,.48);color:#dffbff;font-size:12px;font-weight:900;text-shadow:0 2px 8px rgba(0,0,0,.42)}.rewardToast{top:17%;padding:9px 16px;border:1px solid rgba(122,237,255,.34);border-radius:999px;background:rgba(3,33,57,.62);color:#e7fbff;font-size:clamp(16px,2vw,26px);font-weight:950;letter-spacing:.06em;text-transform:uppercase;text-shadow:0 3px 12px rgba(0,0,0,.55)}.rewardToast,.shootReminder{position:absolute;left:50%;z-index:10;transform:translateX(-50%);pointer-events:none}.shootReminder{bottom:12%;padding:10px 16px;border:1px solid rgba(143,230,255,.28);border-radius:999px;background:rgba(2,25,44,.68);color:#f4fdff;font-family:Baloo\ 2,Nunito,sans-serif;font-size:clamp(16px,2.2vw,24px);font-weight:800;text-shadow:0 2px 10px rgba(0,0,0,.5);animation:reminderPulse 1.1s ease-in-out infinite alternate}.healthBar{top:62px;display:flex;gap:5px;padding:7px 8px;border:1px solid rgba(155,225,255,.18);border-radius:6px;background:rgba(1,18,32,.36)}.foodHealMeter,.healthBar{position:absolute;left:18px;z-index:8}.foodHealMeter{top:110px;width:148px;height:24px;overflow:hidden;border:1px solid rgba(104,255,150,.28);border-radius:999px;background:rgba(2,28,24,.5);box-shadow:inset 0 1px 0 rgba(255,255,255,.08),0 0 14px rgba(46,255,120,.16)}.foodHealMeter span{position:relative;z-index:1;display:grid;height:100%;place-items:center;color:#e6ffeb;font-size:10px;font-weight:950;letter-spacing:.06em;text-transform:uppercase;text-shadow:0 2px 8px rgba(0,0,0,.62)}.foodHealMeter i{position:absolute;inset:0 auto 0 0;display:block;border-radius:inherit;background:linear-gradient(90deg,rgba(45,224,105,.86),rgba(141,255,128,.96));box-shadow:0 0 14px rgba(72,255,130,.58)}.healthIcon{width:30px;height:30px;object-fit:contain;filter:drop-shadow(0 0 7px rgba(91,210,255,.66)) drop-shadow(0 4px 8px rgba(0,0,0,.24))}.emptyHealth{opacity:.22;filter:grayscale(1)}.bossHud{position:absolute;top:18px;right:18px;z-index:8;width:min(360px,42vw);padding:10px;border:1px solid rgba(255,122,169,.28);border-radius:6px;background:rgba(23,5,24,.48);color:#fff0f7;font-size:13px;font-weight:800;letter-spacing:.04em;text-transform:uppercase;text-shadow:0 2px 8px rgba(0,0,0,.48)}.bossMeter{height:10px;margin-top:7px;overflow:hidden;border-radius:999px;background:rgba(8,10,18,.72)}.bossMeter i{display:block;height:100%;border-radius:inherit;background:linear-gradient(90deg,#ff3e82,#ffb03a);box-shadow:0 0 16px rgba(255,74,132,.72)}.lanes{inset:0;z-index:1}.lane,.lanes{position:absolute}.lane{left:0;right:0;height:1px;background:linear-gradient(90deg,transparent,rgba(162,225,255,.14),transparent);opacity:.28;transform:translateY(-50%)}.activeLane{height:34px;margin-top:-17px;background:linear-gradient(90deg,transparent,rgba(76,186,255,.1),transparent);filter:blur(10px);opacity:.42}.actor{position:absolute;z-index:3;left:var(--actor-x);top:var(--actor-y);width:var(--actor-size);height:var(--actor-size);max-width:none;max-height:none;object-fit:contain;transform:translate(-50%,-50%);filter:drop-shadow(0 9px 14px rgba(0,0,0,.28));will-change:left}.food{filter:drop-shadow(0 0 1px rgba(188,255,196,.95)) drop-shadow(0 0 5px rgba(59,255,113,.85)) drop-shadow(0 0 14px rgba(29,221,96,.55)) drop-shadow(0 9px 14px rgba(0,0,0,.22));animation:goodPickupPulse 1.65s ease-in-out infinite alternate,foodSwimDrift 2.4s ease-in-out infinite alternate;animation-delay:var(--actor-drift,0s),var(--actor-drift,0s)}.hazard{filter:drop-shadow(0 0 1px rgba(255,225,225,.95)) drop-shadow(0 0 6px rgba(255,47,47,.9)) drop-shadow(0 0 17px rgba(255,35,81,.62)) drop-shadow(0 9px 14px rgba(0,0,0,.26));animation:badDangerPulse .9s ease-in-out infinite alternate}.powerup{filter:drop-shadow(0 0 1px rgba(217,255,223,.98)) drop-shadow(0 0 8px rgba(64,255,126,.9)) drop-shadow(0 0 22px rgba(42,255,123,.62)) drop-shadow(0 0 34px rgba(39,124,255,.36)) drop-shadow(0 9px 14px rgba(0,0,0,.22));animation:powerBob 1.4s ease-in-out infinite alternate}.shot{position:absolute;z-index:5;left:var(--shot-x);top:var(--shot-y);width:4.6vmin;height:4.6vmin;max-width:none;max-height:none;object-fit:contain;transform:translate(-50%,-50%);will-change:left,top}.playerShot{filter:drop-shadow(0 0 8px rgba(102,230,255,.86)) drop-shadow(0 0 16px rgba(16,121,255,.5))}.bossShot{width:5.2vmin;height:5.2vmin;filter:drop-shadow(0 0 1px rgba(255,229,229,.98)) drop-shadow(0 0 7px rgba(255,44,44,.92)) drop-shadow(0 0 18px rgba(255,50,116,.76)) drop-shadow(0 6px 10px rgba(0,0,0,.25))}.boss{z-index:4;left:var(--boss-x);top:var(--boss-y);width:var(--boss-size);height:var(--boss-size);transform:translate(-50%,-50%);filter:drop-shadow(0 0 14px rgba(255,62,130,.5)) drop-shadow(0 18px 24px rgba(0,0,0,.3));will-change:left,top}.boss,.bossFrame{position:absolute}.bossFrame{inset:0;width:100%;height:100%;max-width:none;max-height:none;object-fit:contain;opacity:var(--boss-frame-opacity);will-change:opacity}.bossHit{filter:brightness(1.75) sepia(1) saturate(5) hue-rotate(310deg) drop-shadow(0 0 24px rgba(255,35,53,.95)) drop-shadow(0 18px 24px rgba(0,0,0,.3))}.hitSpark{position:absolute;z-index:7;left:var(--boss-x);top:var(--boss-y);width:9vmin;height:9vmin;max-width:none;max-height:none;object-fit:contain;opacity:.9;transform:translate(-50%,-50%) scale(1);filter:brightness(var(--hit-brightness,1)) drop-shadow(0 0 16px rgba(255,55,55,.86)) drop-shadow(0 0 calc(12px * var(--hit-scale, 1)) rgba(255,212,74,.52));animation:sparkPop .16s ease-out infinite alternate}.fishRig{position:absolute;z-index:4;left:var(--fish-x);top:var(--fish-y);width:336px;height:181px;transform:translate3d(-50%,-50%,0) rotate(var(--fish-pitch)) scaleX(var(--fish-facing)) scale(.58);transform-origin:center center;filter:drop-shadow(0 0 8px rgba(61,173,255,.9)) drop-shadow(0 0 22px rgba(16,121,255,.7)) drop-shadow(0 0 42px rgba(0,85,255,.46));will-change:left,top,transform}.shieldedFish:before{position:absolute;inset:-34px -38px -28px -38px;z-index:-1;content:"";border:2px solid rgba(122,237,255,.62);border-radius:999px;background:radial-gradient(circle,rgba(104,226,255,.18),rgba(42,126,255,.08),transparent 70%);box-shadow:0 0 22px rgba(105,227,255,.62),inset 0 0 22px rgba(136,237,255,.38);animation:shieldPulse 1.1s ease-in-out infinite alternate}.safeFish{animation:safeBlink .18s linear infinite alternate}.dashingFish{filter:hue-rotate(22deg) saturate(1.35) drop-shadow(-18px 0 16px rgba(105,232,255,.85)) drop-shadow(-34px 0 26px rgba(179,82,255,.55)) drop-shadow(0 0 22px rgba(16,121,255,.9)) drop-shadow(0 0 52px rgba(0,85,255,.58));animation:dashColorPulse .12s linear infinite alternate}.dashingFish:after{position:absolute;inset:34% 58% 30% -70%;z-index:-2;content:"";border-radius:999px;background:linear-gradient(90deg,transparent,rgba(91,224,255,.5),transparent);filter:blur(10px);animation:dashTrail .18s ease-out infinite alternate}.fishStage{position:relative;flex:none;overflow:visible}.fishFrame{position:absolute;left:50%;bottom:0;display:block;max-width:none;max-height:none;object-fit:contain;opacity:var(--frame-opacity);transform:translateX(-50%);image-rendering:auto;will-change:opacity}.fishStage:after{position:absolute;inset:28% 10% 14% 8%;z-index:-1;content:"";border-radius:999px;background:rgba(15,125,255,.28);filter:blur(28px)}.menuOverlay{position:absolute;inset:0;z-index:20;display:grid;place-items:center;background:rgba(0,9,18,.58);-webkit-backdrop-filter:blur(6px);backdrop-filter:blur(6px)}.menuPanel{position:relative;width:min(520px,calc(100vw - 40px));min-height:300px;overflow:hidden;padding:36px 34px 32px;border:1px solid rgba(151,220,255,.24);border-radius:8px;background:linear-gradient(180deg,rgba(8,50,83,.88),rgba(2,18,32,.94));box-shadow:0 22px 70px rgba(0,0,0,.45);text-align:center}.pauseOverlay{position:absolute;inset:0;z-index:26;display:grid;place-items:center;padding:20px;background:rgba(0,8,16,.5);-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px)}.pausePanel{position:relative;width:min(500px,calc(100vw - 36px));min-height:420px;display:grid;place-items:center;overflow:hidden}.pauseShell{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;opacity:.82;filter:drop-shadow(0 24px 50px rgba(0,0,0,.42)) drop-shadow(0 0 24px rgba(80,210,255,.2))}.pauseContent{position:relative;z-index:1;display:grid;justify-items:center;grid-gap:10px;gap:10px;width:min(330px,82%);padding:42px 20px;text-align:center}.pauseContent h1{margin:0;color:#f6fdff;font-family:Baloo\ 2,Nunito,sans-serif;font-size:clamp(42px,8vw,70px);line-height:1;text-shadow:0 4px 18px rgba(0,0,0,.5)}.pauseContent p{margin:0 0 10px;color:rgba(228,249,255,.86);font-weight:900}.pauseButton{width:min(230px,70vw);min-height:56px;padding:11px 24px 14px;border:0;color:#f9feff;font:inherit;font-family:Baloo\ 2,Nunito,sans-serif;font-size:clamp(19px,3vw,26px);font-weight:800;line-height:1;text-shadow:0 3px 9px rgba(0,0,0,.48);background:url(/ui-assets/resume-button.png) 50%/contain no-repeat;cursor:pointer}.secondaryPauseButton{filter:hue-rotate(170deg) saturate(.8)}.pauseButton:hover{transform:translateY(-1px);filter:brightness(1.08)}.secondaryPauseButton:hover{filter:hue-rotate(170deg) saturate(.8) brightness(1.08)}.menuShell{position:absolute;left:50%;top:56%;width:min(320px,66%);max-width:none;height:auto;opacity:.34;transform:translate(-50%,-50%);pointer-events:none;filter:saturate(.9) drop-shadow(0 12px 26px rgba(0,0,0,.28))}.scoreBreakdown{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));grid-gap:7px;gap:7px;width:min(320px,100%)}.nameEntry,.scoreBreakdown span{border:1px solid rgba(143,230,255,.18);border-radius:7px;background:rgba(1,21,37,.42);color:rgba(228,249,255,.88);font-size:12px;font-weight:900;text-transform:uppercase}.scoreBreakdown span{padding:7px}.nameEntry{display:grid;grid-gap:5px;gap:5px;width:min(300px,100%);padding:8px 10px;text-align:left}.topScorePrompt{display:grid;justify-items:center;grid-gap:8px;gap:8px;width:min(310px,100%)}.scoreSaved,.topScorePrompt strong{color:#aaf8ff;font-size:15px;font-weight:950;letter-spacing:.06em;text-transform:uppercase;text-shadow:0 4px 14px rgba(0,0,0,.55)}.submitScoreButton{width:min(220px,68vw);min-height:48px;padding:8px 24px 11px;border:0;color:#f7fdff;font:inherit;font-size:clamp(17px,3vw,22px);font-weight:900;line-height:1;text-shadow:0 2px 8px rgba(0,0,0,.42);background:url(/ui-assets/resume-button.png) 50%/contain no-repeat;cursor:pointer}.submitScoreButton:hover{transform:translateY(-1px);filter:brightness(1.08)}.nameEntry input{width:100%;border:0;outline:0;color:#f4fdff;font:inherit;font-size:16px;font-weight:900;background:transparent}.leaderboardPanel{width:min(360px,100%);margin:18px auto 0;padding:10px;border:1px solid rgba(143,230,255,.2);border-radius:8px;background:rgba(1,19,34,.44)}.compactLeaderboard{margin-top:8px}.leaderboardTitle{display:flex;align-items:center;justify-content:center;gap:7px;margin-bottom:8px;color:#dffbff;font-size:12px;font-weight:950;letter-spacing:.08em;text-transform:uppercase}.leaderboardTitle img{width:26px;height:26px;object-fit:contain;filter:drop-shadow(0 0 8px rgba(255,222,95,.56))}.leaderboardRow{display:grid;grid-template-columns:28px 1fr auto;grid-gap:8px;gap:8px;align-items:center;padding:6px 8px;border-radius:6px;color:rgba(232,250,255,.9);font-size:12px;font-weight:900}.leaderboardRow:nth-child(2n){background:rgba(101,216,255,.08)}.leaderboardRow strong{color:#9ff5ff}.menuContent{position:relative;z-index:1;display:grid;min-height:230px;align-content:center;justify-items:center;grid-gap:12px;gap:12px}.menuPanel h1{margin:0;color:#f4fbff;font-family:Baloo\ 2,Nunito,sans-serif;font-size:clamp(34px,7vw,58px);line-height:1;letter-spacing:0;text-shadow:0 4px 16px rgba(0,0,0,.6)}.menuPanel p{margin:0 0 8px;color:rgba(227,247,255,.86);font-size:clamp(16px,2.5vw,22px);font-weight:700;text-shadow:0 3px 12px rgba(0,0,0,.62)}.restartButton{width:min(260px,72vw);height:70px;padding:10px 34px 13px;border:0;color:#f7fdff;font:inherit;font-size:clamp(18px,3.5vw,27px);font-weight:900;letter-spacing:0;line-height:1;text-shadow:0 2px 8px rgba(0,0,0,.42);background:url(/boss-assets/button-coral.png) 50%/contain no-repeat;cursor:pointer}.restartButton:hover{transform:translateY(-1px);filter:brightness(1.08)}.homeOverlay,.tutorialOverlay{position:absolute;inset:0;z-index:24;display:grid;place-items:center;padding:22px;background:radial-gradient(circle at 50% 44%,rgba(38,174,255,.18),transparent 36vmin),linear-gradient(180deg,rgba(1,12,23,.22),rgba(0,6,13,.72));-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px)}.homePanel,.tutorialPanel{position:relative;width:min(720px,calc(100vw - 32px));overflow:hidden;padding:clamp(26px,5vw,46px);border:1px solid rgba(140,229,255,.24);border-radius:8px;background:linear-gradient(180deg,rgba(9,65,100,.84),rgba(2,21,39,.92)),rgba(5,31,54,.88);box-shadow:0 30px 90px rgba(0,0,0,.48),inset 0 1px 0 rgba(255,255,255,.1);text-align:center}.startBubbles{position:absolute;inset:0;z-index:0;pointer-events:none}.startBubbles span{position:absolute;bottom:-28px;width:18px;height:18px;border:2px solid rgba(195,246,255,.36);border-radius:999px;box-shadow:inset 0 0 8px rgba(255,255,255,.22),0 0 12px rgba(96,226,255,.18);animation:startBubbleRise 7s linear infinite}.startBubbles span:first-child{left:12%;width:15px;height:15px;animation-duration:6.2s}.startBubbles span:nth-child(2){left:34%;width:10px;height:10px;animation-delay:-2s;animation-duration:5.4s}.startBubbles span:nth-child(3){left:69%;width:22px;height:22px;animation-delay:-3.4s;animation-duration:7.5s}.startBubbles span:nth-child(4){left:86%;width:13px;height:13px;animation-delay:-1.2s;animation-duration:6.8s}.homePanel:before,.tutorialPanel:before{position:absolute;inset:-40% -15% auto -15%;height:70%;content:"";background:radial-gradient(circle at 50% 80%,rgba(111,228,255,.18),transparent 42%),linear-gradient(90deg,transparent,rgba(120,229,255,.12),transparent);pointer-events:none}.homePanel>*,.tutorialPanel>*{position:relative;z-index:1}.homeFishWrap{position:relative;display:grid;place-items:center;height:clamp(82px,18vw,136px);margin-bottom:8px}.homeFish{width:min(300px,64vw);max-width:none;height:auto;filter:drop-shadow(0 0 12px rgba(89,210,255,.92)) drop-shadow(0 0 34px rgba(20,122,255,.62));animation:homeFishDrift 2.8s ease-in-out infinite alternate}.homeKicker,.tutorialCount{margin:0 0 8px;color:#9ff5ff;font-size:clamp(12px,2vw,15px);font-weight:900;letter-spacing:.12em;text-transform:uppercase;text-shadow:0 2px 10px rgba(0,0,0,.42)}.homePanel h1,.tutorialPanel h1{margin:0;color:#f4fdff;font-family:Baloo\ 2,Nunito,sans-serif;font-size:clamp(44px,9vw,82px);line-height:.92;letter-spacing:0;text-shadow:0 4px 0 rgba(6,60,93,.82),0 12px 30px rgba(0,0,0,.42)}.homePanel h1{animation:titleGlow 2.4s ease-in-out infinite alternate}.tutorialPanel h1{font-size:clamp(38px,7vw,68px)}.homeCopy,.tutorialPanel p{width:min(560px,100%);margin:18px auto 0;color:rgba(224,249,255,.9);font-size:clamp(17px,2.5vw,22px);font-weight:800;line-height:1.32;text-shadow:0 2px 12px rgba(0,0,0,.42)}.startKeyboardGuide{display:grid;grid-template-columns:repeat(3,minmax(0,150px));justify-content:center;align-items:center;grid-gap:14px;gap:14px;margin-top:22px}.startKeyboardGuide img{width:min(150px,26vw);height:min(96px,18vw);object-fit:contain;filter:drop-shadow(0 0 10px rgba(91,224,255,.3)) drop-shadow(0 10px 16px rgba(0,0,0,.22));animation:keyboardFloat 1.9s ease-in-out infinite alternate}.startKeyboardGuide img:nth-child(2){animation-delay:-.4s}.startKeyboardGuide img:nth-child(3){animation-delay:-.8s}.homeActions,.tutorialActions{display:flex;flex-wrap:wrap;justify-content:center;gap:12px;margin-top:26px}.primaryShellButton,.secondaryShellButton{min-width:176px;min-height:60px;padding:12px 30px 15px;border:0;color:#f9feff;font:inherit;font-family:Baloo\ 2,Nunito,sans-serif;font-size:clamp(19px,3vw,27px);font-weight:800;line-height:1;letter-spacing:0;text-shadow:0 3px 9px rgba(0,0,0,.48);cursor:pointer}.primaryShellButton{background:url(/boss-assets/button-coral.png) 50%/contain no-repeat}.secondaryShellButton{background:radial-gradient(ellipse at center,rgba(16,75,104,.96),rgba(5,32,55,.92) 58%,transparent 60%),url(/boss-assets/button-shell.png) 50% /contain no-repeat}.primaryShellButton:hover,.secondaryShellButton:hover{transform:translateY(-1px);filter:brightness(1.08)}.homeControls{display:flex;flex-wrap:wrap;justify-content:center;gap:9px;margin-top:24px}.homeControls span{padding:7px 10px;border:1px solid rgba(143,230,255,.2);border-radius:999px;background:rgba(1,21,37,.42);color:rgba(228,249,255,.82);font-size:12px;font-weight:900;text-transform:uppercase}.tutorialPreview{align-items:center;gap:12px;margin-top:24px}.tutorialKeyboard,.tutorialPreview{display:flex;justify-content:center}.tutorialKeyboard{flex-wrap:wrap;gap:28px;margin-top:26px}.keyCluster{display:grid;grid-template-columns:repeat(3,42px);grid-template-rows:repeat(2,42px);grid-gap:7px;gap:7px;padding:12px;border:1px solid rgba(143,230,255,.2);border-radius:8px;background:rgba(1,21,37,.42);box-shadow:inset 0 1px 0 rgba(255,255,255,.08)}.key{display:grid;place-items:center;border:1px solid rgba(158,234,255,.34);border-radius:7px;background:linear-gradient(180deg,rgba(18,93,128,.92),rgba(4,37,65,.96));color:#f2fdff;font-family:Baloo\ 2,Nunito,sans-serif;font-size:21px;font-weight:900;line-height:1;text-shadow:0 2px 8px rgba(0,0,0,.45);box-shadow:0 5px 0 rgba(0,11,22,.5),0 0 16px rgba(91,224,255,.14);animation:keyTap 1.8s ease-in-out infinite}.keyUp{grid-column:2;animation-delay:0s}.keyLeft{grid-column:1;grid-row:2;animation-delay:.24s}.keyDown{grid-column:2;grid-row:2;animation-delay:.48s}.keyRight{grid-column:3;grid-row:2;animation-delay:.72s}.tutorialFoodMeter{position:relative;display:grid;place-items:center;width:min(460px,100%);min-height:136px;margin:24px auto 0}.tutorialFoodSwim{position:absolute;width:62px;height:62px;object-fit:contain;filter:drop-shadow(0 0 2px rgba(188,255,196,.95)) drop-shadow(0 0 16px rgba(29,221,96,.75))}.tutorialFoodSwim.one{left:8%;top:18%;animation:tutorialFoodArc 2.2s ease-in-out infinite alternate}.tutorialFoodSwim.two{right:8%;bottom:18%;animation:tutorialFoodArc 2s ease-in-out infinite alternate-reverse}.tutorialMeterShell{position:relative;width:min(260px,72vw);height:34px;overflow:hidden;border:1px solid rgba(104,255,150,.34);border-radius:999px;background:rgba(2,28,24,.62);box-shadow:0 0 18px rgba(46,255,120,.18)}.tutorialMeterShell span{position:relative;z-index:1;display:grid;height:100%;place-items:center;color:#e8ffed;font-size:12px;font-weight:950;letter-spacing:.08em;text-transform:uppercase;text-shadow:0 2px 8px rgba(0,0,0,.62)}.tutorialMeterShell i{position:absolute;inset:0 auto 0 0;width:72%;border-radius:inherit;background:linear-gradient(90deg,rgba(45,224,105,.86),rgba(141,255,128,.96));animation:tutorialMeterFill 2.4s ease-in-out infinite}.tutorialHeartFish{position:absolute;bottom:0;width:48px;height:48px;object-fit:contain;filter:drop-shadow(0 0 12px rgba(91,210,255,.72));animation:tutorialHeartPop 1.1s ease-in-out infinite alternate}.tutorialPreview img{width:clamp(46px,8vmin,74px);height:clamp(46px,8vmin,74px);object-fit:contain}.tutorialGoodIcon{filter:drop-shadow(0 0 2px rgba(188,255,196,.95)) drop-shadow(0 0 14px rgba(29,221,96,.75));animation:legendGoodPulse 1.3s ease-in-out infinite alternate}.tutorialBadIcon{filter:drop-shadow(0 0 2px rgba(255,225,225,.95)) drop-shadow(0 0 16px rgba(255,35,81,.78));animation:legendBadPulse .8s ease-in-out infinite alternate}.tutorialBad,.tutorialGood{padding:6px 9px;border-radius:999px;font-size:12px;font-weight:950;text-transform:uppercase}.tutorialGood{background:rgba(26,146,68,.34);color:#dcffe4}.tutorialBad{background:rgba(172,34,65,.34);color:#ffe4eb}.tutorialShootDemo{position:relative;width:min(520px,100%);min-height:150px;margin:22px auto 0;overflow:hidden}.tutorialShooterFish{position:absolute;left:4%;top:35%;width:min(180px,34vw);height:auto;transform:scaleX(-1);filter:drop-shadow(0 0 10px rgba(89,210,255,.86)) drop-shadow(0 0 26px rgba(20,122,255,.5));animation:tutorialShooterBob 1.4s ease-in-out infinite alternate}.tutorialBossTarget{position:absolute;right:3%;top:16%;width:min(126px,24vw);height:auto;filter:drop-shadow(0 0 12px rgba(255,62,130,.5)) drop-shadow(0 12px 20px rgba(0,0,0,.28));animation:tutorialBossHit 1.4s ease-in-out infinite}.tutorialShot{position:absolute;left:36%;width:16px;height:16px;border-radius:999px;background:radial-gradient(circle,#f2feff,#6fe8ff 52%,rgba(32,116,255,.58));box-shadow:0 0 12px rgba(102,230,255,.9),0 0 24px rgba(16,121,255,.55)}.closeShot{top:46%;animation:closeShotTravel 1.1s linear infinite}.farShot{top:62%;opacity:.72;transform:scale(.72);animation:farShotTravel 1.55s linear infinite}.tutorialDamageBurst{position:absolute;right:16%;bottom:0;padding:6px 10px;border-radius:999px;background:rgba(255,72,94,.28);color:#fff1f5;font-size:12px;font-weight:950;text-transform:uppercase;animation:damageTextPop 1.4s ease-in-out infinite}@keyframes powerBob{0%{transform:translate(-50%,-53%) scale(.97)}to{transform:translate(-50%,-47%) scale(1.04)}}@keyframes goodPickupPulse{0%{transform:translate(-50%,-50%) translateY(-4px) rotate(-2deg) scale(.97)}to{transform:translate(-50%,-50%) translateY(5px) rotate(2deg) scale(1.06)}}@keyframes foodSwimDrift{0%{margin-left:-4px}to{margin-left:5px}}@keyframes badDangerPulse{0%{transform:translate(-50%,-50%) scale(.98) rotate(-3deg)}to{transform:translate(-50%,-50%) scale(1.08) rotate(3deg)}}@keyframes legendGoodPulse{0%{transform:scale(.96)}to{transform:scale(1.08)}}@keyframes legendBadPulse{0%{transform:rotate(-4deg) scale(.97)}to{transform:rotate(4deg) scale(1.08)}}@keyframes keyTap{0%,to{transform:translateY(0);filter:brightness(1)}42%{transform:translateY(4px);filter:brightness(1.28)}}@keyframes tutorialFoodArc{0%{transform:translate(-6px,8px) rotate(-7deg) scale(.92)}to{transform:translate(10px,-10px) rotate(8deg) scale(1.08)}}@keyframes tutorialMeterFill{0%{width:18%}to{width:88%}}@keyframes tutorialHeartPop{0%{transform:translateY(5px) scale(.9);opacity:.7}to{transform:translateY(-2px) scale(1.08);opacity:1}}@keyframes tutorialShooterBob{0%{transform:scaleX(-1) translateY(-4px) rotate(-2deg)}to{transform:scaleX(-1) translateY(5px) rotate(2deg)}}@keyframes closeShotTravel{0%{opacity:0;transform:translateX(0) scale(.9)}18%{opacity:1}to{opacity:0;transform:translateX(205px) scale(1.18)}}@keyframes farShotTravel{0%{opacity:0;transform:translateX(0) scale(.68)}18%{opacity:.74}to{opacity:0;transform:translateX(195px) scale(.82)}}@keyframes tutorialBossHit{0%,70%,to{transform:scale(1);filter:drop-shadow(0 0 12px rgba(255,62,130,.5)) drop-shadow(0 12px 20px rgba(0,0,0,.28))}78%{transform:scale(1.08);filter:brightness(1.5) sepia(1) saturate(4) hue-rotate(310deg) drop-shadow(0 0 24px rgba(255,35,53,.9))}}@keyframes damageTextPop{0%,72%,to{transform:translateY(0) scale(.96);opacity:.72}82%{transform:translateY(-6px) scale(1.06);opacity:1}}@keyframes homeFishDrift{0%{transform:translateY(-4px) rotate(-2deg)}to{transform:translateY(5px) rotate(2deg)}}@keyframes keyboardFloat{0%{transform:translateY(5px) rotate(-1deg) scale(.98)}to{transform:translateY(-5px) rotate(1deg) scale(1.03)}}@keyframes reminderPulse{0%{opacity:.72;filter:brightness(1)}to{opacity:1;filter:brightness(1.22)}}@keyframes titleGlow{0%{filter:drop-shadow(0 0 8px rgba(79,209,255,.28))}to{filter:drop-shadow(0 0 20px rgba(111,236,255,.55))}}@keyframes startBubbleRise{0%{opacity:0;transform:translateZ(0) scale(.75)}12%{opacity:.8}to{opacity:0;transform:translate3d(22px,-560px,0) scale(1.2)}}@keyframes shieldPulse{0%{opacity:.55;transform:scale(.97)}to{opacity:.95;transform:scale(1.04)}}@keyframes sparkPop{0%{transform:translate(-50%,-50%) scale(calc(.8 * var(--hit-scale, 1))) rotate(-6deg)}to{transform:translate(-50%,-50%) scale(calc(1.18 * var(--hit-scale, 1))) rotate(8deg)}}@keyframes safeBlink{0%{opacity:.62}to{opacity:1}}@keyframes dashColorPulse{0%{opacity:.8}to{opacity:1}}@keyframes dashTrail{0%{opacity:.35;transform:scaleX(.7)}to{opacity:.95;transform:scaleX(1.12)}}