html,body,#root{overscroll-behavior:none;-webkit-touch-callout:none;width:100%;height:100%;overflow:hidden}.home-screen{background:radial-gradient(130% 55% at 50% 0,#5e35b147,#0000 62%),linear-gradient(#1a2170 0%,#2c3a9c 38%,#4d5ec4 68%,#7a89dd 100%);flex-direction:column;align-items:center;padding:44px 20px 32px;display:flex;position:fixed;inset:0;overflow-y:auto}.home-screen:before{content:"";pointer-events:none;background-image:radial-gradient(1.5px 1.5px at 12% 18%,#fffc,#0000 100%),radial-gradient(1px 1px at 28% 34%,#fff9,#0000 100%),radial-gradient(1.5px 1.5px at 44% 12%,#ffffffb3,#0000 100%),radial-gradient(1px 1px at 61% 28%,#ffffff8c,#0000 100%),radial-gradient(1.5px 1.5px at 76% 15%,#ffffffbf,#0000 100%),radial-gradient(1px 1px at 89% 38%,#fff9,#0000 100%);animation:7s ease-in-out infinite alternate twinkle;position:fixed;inset:0 0 45%}.home-title{color:#fff;text-shadow:0 3px 10px #00001e80;margin-bottom:6px;font-size:34px;font-weight:800;animation:.5s ease-out both floatIn;position:relative}.home-subtitle{color:#ffffffd1;margin-bottom:26px;font-size:15px;font-weight:600;animation:.5s ease-out 50ms both floatIn;position:relative}.home-cards{flex-direction:column;gap:16px;width:min(92vw,400px);display:flex;position:relative}.game-card{cursor:pointer;text-align:left;color:#fff;touch-action:manipulation;border:none;border-radius:24px;align-items:center;gap:14px;min-height:104px;padding:16px 18px;font-family:inherit;transition:transform .12s;animation:.5s ease-out both floatIn;display:flex;box-shadow:0 8px 20px #00001e59,inset 0 2px 3px #ffffff40}.game-card:nth-child(2){animation-delay:.1s}.game-card:nth-child(3){animation-delay:.2s}.game-card:nth-child(4){animation-delay:.3s}.game-card:nth-child(5){animation-delay:.4s}.game-card:nth-child(6){animation-delay:.5s}.game-card:active{transform:scale(.96)}.card-hatch{background:linear-gradient(135deg,#7e57c2,#5c6bc0)}.card-bubble{background:linear-gradient(135deg,#29b6f6,#26c6da)}.card-feed{background:linear-gradient(135deg,#ffa726,#ef6c00)}.card-wash{background:linear-gradient(135deg,#ec407a,#ab47bc)}.card-run{background:linear-gradient(135deg,#ef5350,#c62828)}.card-match{background:linear-gradient(135deg,#26a69a,#00897b)}.card-art-match{position:relative}.mini-card{border-radius:8px;justify-content:center;align-items:center;width:40px;height:52px;display:flex;position:absolute;box-shadow:0 3px 6px #00281e4d}.mini-card-back{color:#fff;background:linear-gradient(145deg,#9575cd,#5c6bc0);border:2px solid #ffffff80;font-size:20px;font-weight:800;top:4px;left:2px;transform:rotate(-8deg)}.mini-card-front{background:#fff;bottom:2px;right:2px;transform:rotate(7deg)}.mini-card-front svg{width:88%;height:88%}.card-art-run{position:relative}.card-art svg.card-coin{filter:drop-shadow(0 1px 2px #78500066);width:22px;height:22px;position:absolute;top:0;right:0}.card-art-wash{position:relative}.card-suds{background:radial-gradient(circle at 32% 30%,#fff,#ffffff80);border-radius:50%;position:absolute;box-shadow:0 0 5px #ffffffb3}.card-suds.s1{width:18px;height:18px;top:2px;left:6px}.card-suds.s2{width:13px;height:13px;top:18px;right:4px}.card-suds.s3{width:10px;height:10px;bottom:8px;left:14px}.card-art{filter:drop-shadow(0 3px 4px #00001e4d);flex:none;justify-content:center;align-items:center;width:66px;height:66px;display:flex}.card-art svg{width:100%;height:100%}.card-bubble-skin{background:radial-gradient(circle at 32% 28%,#ffffffe6,#ffffff1f 45%,#ffffff47);border:2px solid #ffffffb3;border-radius:50%;justify-content:center;align-items:center;width:64px;height:64px;display:flex}.card-bubble-skin svg{width:72%;height:72%}.card-text{flex-direction:column;flex:1;gap:3px;display:flex}.card-name{font-size:21px;font-weight:800}.card-tag{opacity:.85;font-size:13px;font-weight:600}.card-go{background:#ffffff38;border-radius:50%;flex:none;justify-content:center;align-items:center;width:40px;height:40px;padding-left:3px;font-size:16px;display:flex}@keyframes floatIn{0%{opacity:0;transform:translateY(18px)}to{opacity:1;transform:translateY(0)}}@media (width>=700px) and (height>=600px){.home-title{font-size:44px}.home-subtitle{margin-bottom:32px;font-size:18px}.home-cards{grid-template-columns:1fr 1fr;gap:20px;width:min(88vw,800px);display:grid}.game-card{border-radius:28px;min-height:120px}.card-art{width:78px;height:78px}.card-name{font-size:23px}.card-tag{font-size:14px}}.bubble-game{touch-action:manipulation;background:linear-gradient(#64bdf5 0%,#a5dbfb 55%,#d8f1ff 100%);position:fixed;inset:0;overflow:hidden}.bp-sun{background:radial-gradient(circle at 35% 35%,#fff59d,#ffd54f);border-radius:50%;width:64px;height:64px;position:absolute;top:22px;right:26px;box-shadow:0 0 34px #ffd54fbf}.bp-cloud{opacity:.85;background:#fff;border-radius:999px;position:absolute}.bp-cloud:before{content:"";background:#fff;border-radius:50%;width:36px;height:28px;position:absolute;top:-13px;left:18px}.bp-cloud:after{content:"";background:#fff;border-radius:50%;width:26px;height:20px;position:absolute;top:-9px;right:16px}.bp-cloud-1{width:92px;height:26px;animation:30s ease-in-out infinite alternate bpDrift;top:84px;left:8%}.bp-cloud-2{width:70px;height:22px;animation:24s ease-in-out infinite alternate-reverse bpDrift;top:150px;right:14%}@keyframes bpDrift{0%{transform:translate(-22px)}to{transform:translate(22px)}}.bubble-ground{background:linear-gradient(#8bc34a,#558b2f);border-radius:50% 50% 0 0/30px 30px 0 0;height:11%;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -8px 24px #143c002e}.bubble-header{text-align:center;z-index:5;pointer-events:none;position:absolute;top:14px;left:0;right:0}.bubble-title{color:#fff;text-shadow:0 2px 8px #003c7866;font-size:24px;font-weight:800}.bubble-counter{color:#fff;background:#00509647;border-radius:999px;margin-top:5px;padding:3px 14px;font-size:13px;font-weight:700;display:inline-block}.bubble-rise{cursor:pointer;z-index:3;touch-action:manipulation;animation:linear forwards bubbleRise;position:absolute;bottom:-180px}@keyframes bubbleRise{0%{transform:translateY(0)}to{transform:translateY(-118vh)}}.bubble-sway{width:100%;height:100%;animation:ease-in-out infinite alternate bubbleSway}@keyframes bubbleSway{0%{transform:translate(-10px)}to{transform:translate(10px)}}.bubble-skin{background:radial-gradient(circle at 32% 28%,#ffffffd9 0%,#ffffff40 18%,#ffffff0f 42%,#ffffff08 62%,#ffffff38 100%);border:2px solid #ffffffa6;border-radius:50%;justify-content:center;align-items:center;width:100%;height:100%;display:flex;box-shadow:inset -6px -8px 18px #78b4ff47,0 4px 12px #1e5aa01f}.bubble-dino{width:68%;height:68%}.bubble-burst{z-index:4;pointer-events:none;position:fixed}.burst-ring{width:var(--bsize);height:var(--bsize);border:3px solid #ffffffe6;border-radius:50%;animation:.45s ease-out forwards burstRing;position:absolute;top:0;left:0;transform:translate(-50%,-50%)scale(.6)}@keyframes burstRing{0%{opacity:1;transform:translate(-50%,-50%)scale(.6)}to{opacity:0;transform:translate(-50%,-50%)scale(1.35)}}.burst-drop{background:#fffffff2;border-radius:50%;width:9px;height:9px;animation:.5s ease-out forwards burstDrop;position:absolute}@keyframes burstDrop{0%{transform:rotate(var(--angle)) translateX(8px) scale(1);opacity:1}to{transform:rotate(var(--angle)) translateX(58px) scale(.2);opacity:0}}.landed{z-index:2;width:64px;height:64px;animation:6s ease-in-out 1s infinite alternate pace;position:absolute;bottom:6.5%}@keyframes pace{0%{margin-left:-14px}to{margin-left:14px}}.landed-fall{width:100%;height:100%;animation:.85s cubic-bezier(.3,.5,.5,1) forwards fallDown}@keyframes fallDown{0%{transform:translateY(calc(-1 * var(--fall-dist)))}68%{transform:translateY(0)}83%{transform:translateY(-16px)}to{transform:translateY(0)}}.landed-waddle{cursor:pointer;transform-origin:50% 90%;touch-action:manipulation;width:100%;height:100%;animation:.9s ease-in-out 1s infinite waddle}@keyframes waddle{0%,to{transform:rotate(-6deg)}50%{transform:rotate(6deg)}}.landed-hop{width:100%;height:100%}.landed-hop.hopping{animation:.5s cubic-bezier(.34,1.56,.64,1) hopUp}@keyframes hopUp{0%,to{transform:translateY(0)}45%{transform:translateY(-24px)}}.landed-flip{width:100%;height:100%}.landed-svg{filter:drop-shadow(0 3px 3px #143c004d);width:100%;height:100%}@media (prefers-reduced-motion:reduce){.bubble-sway,.landed-waddle,.landed,.bp-cloud{animation-play-state:paused}}@media (width>=700px) and (height>=600px){.bubble-title{font-size:30px}.bubble-counter{font-size:15px}.landed{width:88px;height:88px}.bp-sun{width:86px;height:86px;top:28px;right:34px}.bp-cloud-1{width:120px;height:34px}.bp-cloud-2{width:96px;height:30px}}.feed-game{touch-action:manipulation;background:linear-gradient(#ffe9a8 0%,#ffd27f 55%,#ffb26b 100%);flex-direction:column;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.feed-ground{background:linear-gradient(#9ccc65,#689f38);border-radius:50% 50% 0 0/70px 70px 0 0;height:38%;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -10px 30px #3c5a0026}.feed-header{z-index:5;text-align:center;margin-top:16px;position:relative}.feed-title{color:#fff;text-shadow:0 2px 8px #96460066;font-size:24px;font-weight:800}.feed-counter{color:#fff;background:#96460047;border-radius:999px;margin-top:5px;padding:3px 14px;font-size:13px;font-weight:700;display:inline-block}.dino-stage{z-index:4;width:min(80vw,330px);margin-top:auto;position:relative}.big-dino-svg{filter:drop-shadow(0 8px 10px #3c280040);transform-origin:50% 100%;width:100%;height:auto;animation:3.2s ease-in-out infinite feedBreathe}@keyframes feedBreathe{0%,to{transform:scale(1)}50%{transform:scale(1.012)}}.belly{transform-box:fill-box;transform-origin:50% 90%;transition:transform .45s cubic-bezier(.34,1.56,.64,1)}.jaw{transform-box:view-box;transform-origin:148px 104px;transition:transform .18s}.phase-fly .jaw,.phase-burp .jaw,.phase-yuck .jaw{transform:rotate(17deg)}.phase-chomp .jaw{animation:.24s ease-in-out 3 chew}@keyframes chew{0%,to{transform:rotate(0)}50%{transform:rotate(15deg)}}.tongue{opacity:0;transition:opacity .15s}.phase-yuck .tongue{opacity:1}.eye-happy{opacity:0}.phase-yum .eye-happy,.phase-burp .eye-happy{opacity:1}.phase-yum .eye-open,.phase-burp .eye-open{opacity:0}.blush{opacity:0;transition:opacity .2s}.phase-yum .blush{opacity:1}.phase-yum .big-dino-svg{animation:.5s ease-in-out 2 happyBounce}@keyframes happyBounce{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}.head{transform-box:view-box;transform-origin:150px 92px}.phase-yuck .head{animation:.75s ease-in-out headShake}@keyframes headShake{0%,to{transform:rotate(0)}20%{transform:rotate(-7deg)}40%{transform:rotate(6deg)}60%{transform:rotate(-5deg)}80%{transform:rotate(3deg)}}.phase-burp .big-dino-svg{animation:.55s ease-in-out 2 bellyWobble}@keyframes bellyWobble{0%,to{transform:scale(1)}50%{transform:scale(1.06,.95)}}.reaction-bubble{color:#37474f;z-index:6;white-space:nowrap;background:#fff;border-radius:18px;padding:8px 16px;font-size:20px;font-weight:800;animation:.35s cubic-bezier(.34,1.56,.64,1) popIn;position:absolute;top:-4px;right:-8px;box-shadow:0 4px 12px #5a280040}.burp-bubble{color:#2e7d32;background:#e8f5e9}@keyframes popIn{0%{opacity:0;transform:scale(.3)}to{opacity:1;transform:scale(1)}}.hearts{pointer-events:none;z-index:6;position:absolute;top:8%;left:30%}.heart{font-size:24px;animation:1s ease-out forwards floatHeart;position:absolute}.heart.h1{left:0}.heart.h2{animation-delay:.12s;left:34px}.heart.h3{animation-delay:.24s;left:-30px}@keyframes floatHeart{0%{opacity:0;transform:translateY(0)scale(.5)}25%{opacity:1}to{opacity:0;transform:translateY(-56px)scale(1.15)}}.food-tray{z-index:5;grid-template-columns:repeat(3,1fr);gap:10px;width:min(92vw,380px);margin-top:10px;margin-bottom:18px;padding:0 8px;display:grid;position:relative}.food-btn{aspect-ratio:1.15;cursor:pointer;touch-action:manipulation;background:#ffffffd1;border:none;border-radius:20px;justify-content:center;align-items:center;font-family:inherit;transition:transform .1s,opacity .2s;display:flex;box-shadow:0 4px 10px #5028002e,inset 0 2px 2px #fffc}.food-btn:active{transform:scale(.92)}.food-btn:disabled{opacity:.6}.food-btn svg{width:62%;height:62%}.fly-food{z-index:8;pointer-events:none;width:52px;height:52px;margin-top:-26px;margin-left:-26px;animation:.62s cubic-bezier(.4,.1,.7,1) forwards flyFood;position:fixed}.fly-food svg{width:100%;height:100%}@keyframes flyFood{0%{transform:translate(0)scale(1)rotate(0)}55%{transform:translate(calc(var(--dx) * .55), calc(var(--dy) * .55 - 70px)) scale(.85) rotate(20deg)}to{transform:translate(var(--dx), var(--dy)) scale(.4) rotate(50deg)}}@media (width>=700px) and (height>=600px){.feed-title{font-size:30px}.feed-counter{font-size:15px}.dino-stage{width:min(52vw,450px)}.food-tray{gap:14px;width:min(72vw,520px);margin-bottom:26px}.fly-food{width:68px;height:68px;margin-top:-34px;margin-left:-34px}.reaction-bubble{padding:10px 20px;font-size:26px}}@media (width>=900px) and (height<=820px){.food-tray{grid-template-columns:repeat(6,1fr);width:min(88vw,720px)}.dino-stage{width:min(44vh,400px)}}.wash-game{touch-action:manipulation;background:linear-gradient(#b2ebf2 0%,#80deea 55%,#4dd0e1 100%);flex-direction:column;align-items:center;display:flex;position:fixed;inset:0;overflow:hidden}.wash-water{background:linear-gradient(#e0f7fa,#b3e5fc);border-radius:50% 50% 0 0/36px 36px 0 0;height:16%;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -6px 20px #005a7826}.wash-water:before{content:"";background:#ffffffd9;border-radius:50%;width:26px;height:26px;position:absolute;top:-14px;left:6%;box-shadow:48px 6px 0 -6px #fffc,130px -2px 0 -3px #ffffffe6,220px 8px 0 -8px #ffffffbf,290px 0 0 -4px #ffffffd9}.wash-header{z-index:5;text-align:center;margin-top:16px;position:relative}.wash-title{color:#fff;text-shadow:0 2px 8px #005a7866;font-size:24px;font-weight:800}.wash-counter{color:#fff;background:#005a7847;border-radius:999px;margin-top:5px;padding:3px 14px;font-size:13px;font-weight:700;display:inline-block}.wash-stage{z-index:4;aspect-ratio:1;width:min(88vw,370px);margin:auto 0;position:relative}.wash-dino{width:100%;height:100%}.wash-dino-svg{filter:drop-shadow(0 8px 10px #00465a40);width:100%;height:100%}.phase-washing .wash-dino{transform-origin:50% 100%;animation:3.2s ease-in-out infinite washBreathe}@keyframes washBreathe{0%,to{transform:scale(1)}50%{transform:scale(1.015)}}.phase-shake .wash-dino{transform-origin:50% 85%;animation:.75s ease-in-out dogShake}@keyframes dogShake{0%,to{transform:rotate(0)}15%{transform:rotate(-9deg)}30%{transform:rotate(8deg)}45%{transform:rotate(-7deg)}60%{transform:rotate(6deg)}75%{transform:rotate(-4deg)}90%{transform:rotate(2deg)}}.phase-clean .wash-dino{animation:3s ease-in-out infinite dinoBob}.mud-spot{cursor:pointer;z-index:6;touch-action:manipulation;animation:.35s cubic-bezier(.34,1.56,.64,1) both mudPlop;position:absolute}@keyframes mudPlop{0%{opacity:0;scale:.3}to{opacity:1;scale:1}}.mud-svg{filter:drop-shadow(0 2px 2px #3c1e004d);width:100%;height:100%}.foam{z-index:7;pointer-events:none;position:absolute}.foam-sponge{font-size:30px;animation:.6s ease-in-out forwards spongeScrub;position:absolute;top:0;left:0;transform:translate(-50%,-50%)}@keyframes spongeScrub{0%{opacity:1;transform:translate(-50%,-50%)rotate(0)scale(.6)}30%{transform:translate(-65%,-55%)rotate(-18deg)scale(1.1)}60%{transform:translate(-35%,-45%)rotate(14deg)scale(1.05)}to{opacity:0;transform:translate(-50%,-50%)rotate(0)scale(.8)}}.foam-bubble{background:radial-gradient(circle at 32% 30%,#fff,#ffffff8c);border-radius:50%;width:14px;height:14px;animation:.7s ease-out forwards foamFly;position:absolute;top:0;left:0;box-shadow:0 0 6px #fffc}@keyframes foamFly{0%{transform:translate(-50%, -50%) rotate(var(--angle)) translateX(4px) scale(.6);opacity:1}to{transform:translate(-50%, -50%) rotate(var(--angle)) translateX(46px) scale(1.1);opacity:0}}.shake-drops{z-index:7;pointer-events:none;position:absolute;top:45%;left:50%}.shake-drop{width:10px;height:14px;animation:.7s ease-out forwards dropFly;animation-delay:var(--delay);background:linear-gradient(#81d4fa,#29b6f6);border-radius:50% 50% 60% 60%/40% 40% 60% 60%;position:absolute}@keyframes dropFly{0%{transform:rotate(var(--angle)) translateX(30px) scale(.7);opacity:1}to{transform:rotate(var(--angle)) translateX(120px) scale(1);opacity:0}}.clean-sparkles{z-index:7;pointer-events:none;position:absolute;inset:0}.clean-sparkle{font-size:26px;animation:1.4s ease-in-out infinite sparkleTwinkle;position:absolute}.cs1{top:22%;left:12%}.cs2{animation-delay:.35s;top:34%;right:10%}.cs3{font-size:20px;animation-delay:.7s;top:62%;left:20%}.cs4{font-size:22px;animation-delay:1.05s;top:70%;right:22%}@keyframes sparkleTwinkle{0%,to{opacity:.25;transform:scale(.8)}50%{opacity:1;transform:scale(1.15)}}.clean-bubble{color:#00838f;z-index:8;white-space:nowrap;background:#fff;border-radius:18px;padding:8px 16px;font-size:20px;font-weight:800;animation:.35s cubic-bezier(.34,1.56,.64,1) popIn;position:absolute;top:-38px;right:2%;box-shadow:0 4px 12px #005a7840}.wash-footer{z-index:5;justify-content:center;align-items:center;min-height:96px;margin-bottom:14px;display:flex;position:relative}.wash-hint{color:#fffffff2;text-shadow:0 1px 4px #005a7866;font-size:15px;font-weight:700;animation:2s ease-in-out infinite hintPulse}@keyframes hintPulse{0%,to{opacity:.75}50%{opacity:1}}.play-again.wash-again{text-shadow:0 1px 3px #003c4659;background:linear-gradient(#4dd0e1,#00acc1 60%,#00838f);min-height:56px;margin-top:0;padding:14px 36px;font-size:19px}@media (width>=700px) and (height>=600px){.wash-title{font-size:30px}.wash-counter{font-size:15px}.wash-stage{width:min(60vw,490px)}.wash-hint{font-size:19px}.clean-bubble{padding:10px 20px;font-size:26px;top:-46px}.foam-sponge{font-size:40px}}.run-game{touch-action:manipulation;background:linear-gradient(#64b5f6 0%,#90caf9 55%,#bbdefb 100%);position:fixed;inset:0;overflow:hidden}.run-tap{cursor:pointer;touch-action:manipulation;position:absolute;inset:0}.run-ground{background-color:#795548;background-image:linear-gradient(#8bc34a 0 16px,#7cb342 16px 20px,#0000 20px),repeating-linear-gradient(90deg,#00000012 0 26px,#0000 26px 52px);height:92px;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -4px 14px #28140033}.run-cloud{pointer-events:none;width:96px;position:absolute}.run-bush{pointer-events:none;filter:drop-shadow(0 2px 2px #003c0033);width:84px;position:absolute;bottom:86px}.run-coin{pointer-events:none;filter:drop-shadow(0 2px 2px #78500059);width:32px;height:32px;position:absolute}.run-coin-svg{width:100%;height:100%;animation:.9s ease-in-out infinite coinSpin}@keyframes coinSpin{0%,to{transform:scaleX(1)}50%{transform:scaleX(.3)}}.run-flag{pointer-events:none;filter:drop-shadow(0 3px 4px #3c1e004d);width:60px;height:190px;position:absolute;bottom:88px}.run-dino{pointer-events:none;z-index:5;width:76px;height:76px;position:absolute}.run-dino-svg{filter:drop-shadow(0 4px 4px #001e3c4d);width:100%;height:100%}.run-dino.bobbing .run-dino-svg{transform-origin:50% 100%;animation:.32s ease-in-out infinite runBob}@keyframes runBob{0%,to{transform:translateY(0)rotate(0)}50%{transform:translateY(-6px)rotate(-2.5deg)}}.run-dino.air .run-dino-svg{transform:rotate(-8deg)}.run-ob{pointer-events:none;z-index:4;position:absolute}.run-ob-svg{filter:drop-shadow(0 3px 3px #281e0040);width:100%;height:100%;transition:transform .3s,opacity .3s}.run-ob-spin{animation:1.4s linear infinite rollSpin}@keyframes rollSpin{to{transform:rotate(360deg)}}.run-ob-flyer-svg{transform:scaleX(-1)}.run-ob-rock.hit .run-ob-svg,.run-ob-roller.hit .run-ob-svg{transform-origin:50% 100%;opacity:.55;animation:none;transform:scaleY(.4)}.run-ob-cactus.hit .run-ob-svg{transform-origin:90% 100%;opacity:.65;transform:rotate(80deg)translateY(4px)}.run-ob-flyer.hit .run-ob-svg{opacity:0;transition:transform .6s ease-in,opacity .6s ease-in;transform:scaleX(-1)translateY(-160px)rotate(24deg)}.run-ob-pow{pointer-events:none;font-size:22px;animation:.55s ease-out forwards powPop;position:absolute;top:-16px;left:50%}@keyframes powPop{0%{opacity:1;transform:translate(-50%)scale(.3)}to{opacity:0;transform:translate(-50%)translateY(-26px)scale(1.3)}}.run-dino.stumble .run-dino-svg{transform-origin:50% 100%;animation:.7s ease-in-out stumbleWob}@keyframes stumbleWob{0%,to{transform:rotate(0)}20%{transform:rotate(11deg)}40%{transform:rotate(-9deg)}60%{transform:rotate(6deg)}80%{transform:rotate(-4deg)}}.run-hud{z-index:50;color:#fff;text-shadow:0 1px 4px #00285a80;pointer-events:none;background:#003c8247;border-radius:999px;align-items:center;gap:6px;padding:6px 14px;font-size:18px;font-weight:800;display:flex;position:fixed;top:16px;right:14px}.run-hud-coin{width:22px;height:22px}.run-hud-level{background:#ffffff40;border-radius:999px;margin-right:4px;padding:1px 10px;font-size:15px}.run-level-list{flex-direction:column;gap:14px;width:min(90vw,360px);margin-bottom:18px;display:flex}.run-level-btn{cursor:pointer;text-align:left;color:#fff;touch-action:manipulation;border:none;border-radius:20px;align-items:center;gap:14px;min-height:78px;padding:14px 18px;font-family:inherit;transition:transform .12s;animation:.4s ease-out both floatIn;display:flex;box-shadow:0 6px 16px #00001e59,inset 0 2px 3px #ffffff40}.run-level-btn:nth-child(2){animation-delay:80ms}.run-level-btn:nth-child(3){animation-delay:.16s}.run-level-btn:active{transform:scale(.95)}.run-level-1{background:linear-gradient(135deg,#66bb6a,#388e3c)}.run-level-2{background:linear-gradient(135deg,#ffa726,#ef6c00)}.run-level-3{background:linear-gradient(135deg,#ef5350,#c62828)}.run-level-emoji{flex:none;font-size:34px}.run-level-text{flex-direction:column;flex:1;gap:2px;display:flex}.run-level-name{font-size:20px;font-weight:800}.run-level-tag{opacity:.85;font-size:13px;font-weight:600}.run-overlay{z-index:70;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#0d1e508c;flex-direction:column;justify-content:center;align-items:center;padding:24px 18px;display:flex;position:fixed;inset:0;overflow-y:auto}.run-select-title{color:#fff;text-shadow:0 2px 8px #00001e80;margin-bottom:18px;font-size:26px;font-weight:800;animation:.4s ease-out both floatIn}.run-select-grid{grid-template-columns:repeat(3,1fr);gap:10px;width:min(92vw,400px);display:grid}.run-select-card{cursor:pointer;touch-action:manipulation;background:#ffffffeb;border:none;border-radius:18px;flex-direction:column;align-items:center;gap:2px;padding:10px 4px 8px;font-family:inherit;transition:transform .1s;animation:.4s ease-out both floatIn;display:flex;box-shadow:0 4px 10px #00001e4d}.run-select-card:nth-child(odd){animation-delay:60ms}.run-select-card:nth-child(3n){animation-delay:.12s}.run-select-card:active{transform:scale(.93)}.run-select-svg{width:74px;height:74px}.run-select-name{color:#37474f;white-space:nowrap;text-overflow:ellipsis;max-width:100%;font-size:11px;font-weight:700;overflow:hidden}.run-win-text{color:#ffd54f;text-shadow:0 2px 10px #00001e99;font-size:32px;font-weight:800;animation:.6s cubic-bezier(.34,1.56,.64,1) bounceIn}.run-win-coins{color:#fff;text-shadow:0 1px 4px #00001e80;align-items:center;gap:8px;margin-top:10px;font-size:22px;font-weight:800;animation:.5s ease-out .2s both floatIn;display:flex}.run-win-coins .run-hud-coin{width:28px;height:28px}.run-change-dino{color:#fff;cursor:pointer;touch-action:manipulation;background:#ffffff2e;border:2px solid #ffffff80;border-radius:14px;margin-top:12px;padding:12px 32px;font-family:inherit;font-size:16px;font-weight:700;transition:transform .1s;animation:.5s ease-out .45s both floatIn}.run-change-dino:active{transform:scale(.94)}@media (width>=700px) and (height>=600px){.run-tap{transform-origin:0 100%;transform:scale(1.3)}.run-hud{padding:8px 18px;font-size:21px;top:20px;right:20px}.run-hud-coin{width:26px;height:26px}.run-select-title{font-size:32px}.run-select-grid{gap:14px;width:min(76vw,560px)}.run-select-svg{width:104px;height:104px}.run-select-name{font-size:13px}.run-level-list{width:min(64vw,460px)}.run-level-btn{min-height:92px}.run-level-name{font-size:24px}.run-level-tag{font-size:15px}.run-win-text{font-size:40px}}.match-game{touch-action:manipulation;background:linear-gradient(#fff8e1 0%,#ffecb3 55%,#ffe0b2 100%);flex-direction:column;align-items:center;padding:14px 16px 24px;display:flex;position:fixed;inset:0;overflow-y:auto}.match-header{z-index:5;text-align:center;margin-top:4px;margin-bottom:16px;position:relative}.match-title{color:#6d4c41;text-shadow:0 1px #fff9;font-size:24px;font-weight:800}.match-counter{color:#5d4037;background:#6d4c4124;border-radius:999px;margin-top:5px;padding:3px 14px;font-size:13px;font-weight:700;display:inline-block}.match-grid{gap:10px;width:min(92vw,400px);display:grid}.match-cols-3{grid-template-columns:repeat(3,1fr)}.match-cols-4{grid-template-columns:repeat(4,1fr)}.mcard{aspect-ratio:3/4;cursor:pointer;perspective:700px;touch-action:manipulation;background:0 0;border:none;padding:0;font-family:inherit}.mcard-inner{width:100%;height:100%;transform-style:preserve-3d;transition:transform .35s cubic-bezier(.4,.2,.2,1);position:relative}.mcard.up .mcard-inner{transform:rotateY(180deg)}.mcard:active:not(.up) .mcard-inner{transform:scale(.94)}.mcard-back,.mcard-front{backface-visibility:hidden;border-radius:14px;justify-content:center;align-items:center;display:flex;position:absolute;inset:0;box-shadow:0 4px 10px #6e3c002e}.mcard-back{background:linear-gradient(145deg,#9575cd,#5c6bc0);border:3px solid #ffffff80}.mcard-back-egg{width:62%;height:78%}.mcard-front{background:#fff;border:3px solid #ffffffe6;transform:rotateY(180deg)}.mcard-dino{width:86%;height:86%}.mcard.matched{cursor:default}.mcard.matched .mcard-inner{animation:.5s cubic-bezier(.34,1.56,.64,1) matchPop;transform:rotateY(180deg)}@keyframes matchPop{0%{transform:rotateY(180deg)scale(1)}50%{transform:rotateY(180deg)scale(1.12)}to{transform:rotateY(180deg)scale(1)}}.mcard.matched .mcard-front{box-shadow:0 0 0 3px #ffd54fe6,0 0 16px #ffd54f99}.mcard.matched .mcard-dino{animation:3s ease-in-out infinite dinoBob}.match-win{z-index:70;-webkit-backdrop-filter:blur(5px);backdrop-filter:blur(5px);background:#50320a73;flex-direction:column;justify-content:center;align-items:center;padding:24px;display:flex;position:fixed;inset:0}.match-win-text{text-align:center;color:#ffd54f;text-shadow:0 2px 10px #3c1e0099;font-size:27px;font-weight:800;animation:.6s cubic-bezier(.34,1.56,.64,1) bounceIn}@media (width>=700px) and (height>=600px){.match-title{font-size:30px}.match-counter{font-size:15px}.match-grid{gap:14px;width:min(78vw,580px)}.match-win-text{font-size:34px}}*{box-sizing:border-box;margin:0;padding:0}html,body,#root{-webkit-tap-highlight-color:transparent;-webkit-user-select:none;user-select:none;height:100%;font-family:ui-rounded,-apple-system,BlinkMacSystemFont,Segoe UI,sans-serif;overflow:hidden auto}.game-container{width:100%;min-height:100dvh;position:relative;overflow-x:hidden}.game-container.screen-shake{animation:.5s ease-in-out shake}@keyframes shake{0%,to{transform:translate(0)}15%{transform:translate(-4px,2px)}30%{transform:translate(4px,-2px)}45%{transform:translate(-3px,-2px)}60%{transform:translate(3px,2px)}75%{transform:translate(-2px,1px)}90%{transform:translate(1px,-1px)}}.game-content{z-index:10;flex-direction:column;align-items:center;min-height:100%;padding:14px 16px;display:flex;position:relative}.game-title{letter-spacing:.3px;color:#fff;text-shadow:0 2px 8px #00001e73;margin-bottom:6px;font-size:27px;font-weight:800}.game-counter{color:#ffffffe6;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);background:#ffffff21;border:1px solid #ffffff24;border-radius:999px;margin-bottom:12px;padding:4px 16px;font-size:13px;font-weight:600}.egg-grid{grid-template-columns:repeat(3,1fr);gap:10px;width:100%;max-width:400px;padding:0 4px;display:grid}.egg-cell{aspect-ratio:1;cursor:pointer;touch-action:manipulation;flex-direction:column;justify-content:center;align-items:center;transition:transform .12s;display:flex;position:relative}.egg-cell:active{transform:scale(.95)}.egg-cell:after{content:"";z-index:0;pointer-events:none;background:radial-gradient(#0000144d,#0000 68%);border-radius:50%;width:52%;height:9%;position:absolute;bottom:7%;left:50%;transform:translate(-50%)}.egg{aspect-ratio:.75;z-index:1;width:70%;transform:scale(var(--egg-scale,1));transform-origin:50% 82%;filter:drop-shadow(0 5px 6px #00001e40);position:relative}.egg-body{background:radial-gradient(ellipse 55% 40% at 34% 26%, #ffffff6b, #fff0 72%), var(--egg-color);border-radius:50%/60% 60% 40% 40%;width:100%;height:100%;position:relative;overflow:hidden;box-shadow:inset 0 -12px 16px #00001e2e,inset 0 4px 8px #ffffff2e}.egg-spot{background:var(--egg-spots);opacity:.45;border-radius:50%;position:absolute}.spot-1{width:20%;height:15%;top:25%;left:20%}.spot-2{width:15%;height:12%;top:45%;right:18%}.spot-3{width:18%;height:13%;bottom:25%;left:35%}.egg.idle{animation:3s ease-in-out infinite breathe}@keyframes breathe{0%,to{transform:scale(var(--egg-scale,1))}50%{transform:scale(calc(var(--egg-scale,1) * 1.035))}}.egg.wobbling{animation:.4s ease-in-out 4 wobble}@keyframes wobble{0%,to{transform:scale(var(--egg-scale,1)) rotate(0deg)}25%{transform:scale(var(--egg-scale,1)) rotate(11deg)}75%{transform:scale(var(--egg-scale,1)) rotate(-11deg)}}.egg.cracking{animation:none}.crack-lines{width:80%;height:100%;animation:.35s ease-out forwards crackAppear;position:absolute;top:0;left:10%}@keyframes crackAppear{0%{opacity:0}to{opacity:1}}.egg-half{z-index:2;border-radius:50%/60% 60% 40% 40%;width:50px;height:35px;position:absolute;left:50%;transform:translate(-50%)}.egg-top{animation:.5s cubic-bezier(.22,1,.36,1) forwards splitUp;top:0}.egg-bottom{border-radius:50%/40% 40% 60% 60%;animation:.5s cubic-bezier(.22,1,.36,1) forwards splitDown;bottom:10%}@keyframes splitUp{0%{opacity:1;transform:translate(-50%)translateY(0)rotate(0)scale(1)}to{opacity:0;transform:translate(-50%)translateY(-34px)rotate(-14deg)scale(.5)}}@keyframes splitDown{0%{opacity:1;transform:translate(-50%)translateY(0)rotate(0)scale(1)}to{opacity:0;transform:translate(-50%)translateY(22px)rotate(10deg)scale(.5)}}.dino-reveal{z-index:1;filter:drop-shadow(0 4px 5px #00001e47);justify-content:center;align-items:center;width:80%;height:80%;display:flex;position:relative}.dino-reveal.appearing{animation:.6s cubic-bezier(.34,1.56,.64,1) forwards dinoAppear}.dino-reveal.visible{animation:3.4s ease-in-out infinite dinoBob}@keyframes dinoAppear{0%{opacity:0;transform:scale(.2)}70%{opacity:1;transform:scale(1.15)}to{opacity:1;transform:scale(1)}}@keyframes dinoBob{0%,to{transform:translateY(0)}50%{transform:translateY(-4px)}}.dino-svg{width:100%;height:100%}.dino-name{letter-spacing:.2px;color:#fff;white-space:nowrap;z-index:2;-webkit-backdrop-filter:blur(2px);backdrop-filter:blur(2px);background:#0a0f3c59;border-radius:999px;padding:2px 10px;font-size:11px;font-weight:700;position:absolute;bottom:1px}.sparkles{pointer-events:none;z-index:3;position:absolute;top:50%;left:50%}.sparkle{width:8px;height:8px;animation:.65s cubic-bezier(.22,1,.36,1) forwards sparkle;animation-delay:var(--delay);border-radius:50%;position:absolute;box-shadow:0 0 6px #ffffffb3}@keyframes sparkle{0%{transform:translate(-50%, -50%) rotate(var(--angle)) translateX(0) scale(1);opacity:1}to{transform:translate(-50%, -50%) rotate(var(--angle)) translateX(52px) scale(0);opacity:0}}.trick.trick-trex{animation:.6s ease-in-out trickTrex}@keyframes trickTrex{0%,to{transform:scale(1)}30%{transform:scale(1.2)}50%{transform:scale(1.15)}}.trick.trick-brachio .dino-svg{animation:1.2s ease-in-out trickBrachio}@keyframes trickBrachio{0%,to{transform:translateY(0)}50%{transform:translateY(-15px)}}.trick.trick-stego{animation:1s ease-in-out trickStego}@keyframes trickStego{0%,to{transform:rotate(0)}20%{transform:rotate(5deg)}40%{transform:rotate(-5deg)}60%{transform:rotate(4deg)}80%{transform:rotate(-3deg)}}.trick.trick-trice{animation:.8s cubic-bezier(.34,1.56,.64,1) trickTrice}@keyframes trickTrice{0%,to{transform:translate(0)}30%{transform:translate(15px)}60%{transform:translate(-5px)}}.trick.trick-pteranodon{animation:1s ease-in-out trickPteran}@keyframes trickPteran{0%,to{transform:translateY(0)scaleY(1)}25%{transform:translateY(-8px)scaleY(.95)}50%{transform:translateY(-4px)scaleY(1)}75%{transform:translateY(-10px)scaleY(.95)}}.trick.trick-ankylo{animation:.8s ease-in-out trickAnkylo}@keyframes trickAnkylo{0%,to{transform:rotate(0)}40%{transform:rotate(-15deg)}60%{transform:rotate(8deg)}}.trick.trick-para{animation:1s ease-in-out trickPara}@keyframes trickPara{0%,to{filter:brightness()drop-shadow(0 4px 5px #00001e47);transform:scale(1)}50%{filter:brightness(1.3)drop-shadow(0 0 14px #80deeacc);transform:scale(1.1)}}.trick.trick-spino{animation:1s ease-in-out trickSpino}@keyframes trickSpino{0%{filter:hue-rotate()}25%{filter:hue-rotate(60deg)}50%{filter:hue-rotate(120deg)}75%{filter:hue-rotate(200deg)}to{filter:hue-rotate(360deg)}}.trick.trick-raptor{animation:.6s ease-in-out trickRaptor}@keyframes trickRaptor{0%,to{transform:translate(0)}20%{transform:translate(-12px)}40%{transform:translate(12px)}60%{transform:translate(-8px)}80%{transform:translate(8px)}}.game-background{z-index:0;background:radial-gradient(130% 55% at 50% 0,#5e35b147,#0000 62%),linear-gradient(#1a2170 0%,#2c3a9c 38%,#4d5ec4 68%,#7a89dd 100%);position:fixed;inset:0;overflow:hidden}.game-background:before{content:"";pointer-events:none;background-image:radial-gradient(1.5px 1.5px at 12% 18%,#fffc,#0000 100%),radial-gradient(1px 1px at 28% 34%,#fff9,#0000 100%),radial-gradient(1.5px 1.5px at 44% 12%,#ffffffb3,#0000 100%),radial-gradient(1px 1px at 61% 28%,#ffffff8c,#0000 100%),radial-gradient(1.5px 1.5px at 76% 15%,#ffffffbf,#0000 100%),radial-gradient(1px 1px at 89% 38%,#fff9,#0000 100%),radial-gradient(1px 1px at 35% 55%,#ffffff73,#0000 100%),radial-gradient(1px 1px at 68% 60%,#fff6,#0000 100%);animation:7s ease-in-out infinite alternate twinkle;position:absolute;inset:0 0 45%}@keyframes twinkle{0%{opacity:.55}to{opacity:1}}.bg-ground{background:linear-gradient(#5d4037 0%,#4e342e 45%,#38221d 100%);border-radius:45% 45% 0 0/42px 42px 0 0;height:16%;position:absolute;bottom:0;left:0;right:0;box-shadow:0 -10px 30px #0000144d}.bg-element{opacity:0;pointer-events:none;filter:drop-shadow(0 3px 4px #00001433);transition:opacity .9s,transform .9s cubic-bezier(.22,1,.36,1);position:absolute;transform:translateY(26px)scale(.9)}.bg-element.visible{opacity:1;transform:translateY(0)scale(1)}.bg-fern{width:50px}.bg-hill{background:linear-gradient(#6d4c41,#4e342e);border-radius:65px 65px 0 0;width:130px;height:62px;bottom:10%;right:5%}.bg-palm{width:74px}.bg-volcano{width:104px}.bg-plants{height:30px}.bg-pond{width:84px}.bg-clouds{height:60px;position:absolute;top:5%;left:0;right:0}.cloud{width:84px;position:absolute}.cloud-1{animation:26s ease-in-out infinite alternate drift;left:15%}.cloud-2{animation:32s ease-in-out infinite alternate-reverse drift;top:14px;right:20%}@keyframes drift{0%{transform:translate(-24px)}to{transform:translate(24px)}}.bg-sun{width:62px}.bg-sun.visible{animation:4.5s ease-in-out infinite alternate sunGlow}@keyframes sunGlow{0%{filter:drop-shadow(0 0 5px #ffd54f59)}to{filter:drop-shadow(0 0 16px #ffd54fb3)}}.win-state{text-align:center;z-index:20;margin-top:10px;padding-bottom:24px;position:relative}.win-text{color:#ffd54f;text-shadow:0 2px 10px #00001e80;font-size:28px;font-weight:800;animation:.6s cubic-bezier(.34,1.56,.64,1) bounceIn}@keyframes bounceIn{0%{opacity:0;transform:scale(.3)}60%{opacity:1;transform:scale(1.1)}to{transform:scale(1)}}.play-again{color:#fff;text-shadow:0 1px 3px #003c0059;cursor:pointer;touch-action:manipulation;background:linear-gradient(#7ccc80,#43a047 60%,#388e3c);border:none;border-radius:18px;min-height:64px;margin-top:14px;padding:16px 52px;font-family:inherit;font-size:22px;font-weight:800;animation:.6s cubic-bezier(.34,1.56,.64,1) .3s both bounceIn,2.4s ease-in-out 1.4s infinite gentlePulse;box-shadow:0 6px 16px #00140059,inset 0 2px 3px #ffffff59}.play-again:active{animation:none;transform:scale(.95)}@keyframes gentlePulse{0%,to{transform:scale(1)}50%{transform:scale(1.04)}}.confetti-container{pointer-events:none;z-index:100;position:fixed;inset:0;overflow:hidden}.confetti-piece{border-radius:2px;animation:linear forwards confettiFall;position:absolute;top:-20px}@keyframes confettiFall{0%{opacity:1;transform:translateY(0)rotate(0)}to{opacity:0;transform:translateY(100vh)rotate(720deg)}}.home-btn{z-index:60;cursor:pointer;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);touch-action:manipulation;background:#0a0f3c66;border:none;border-radius:50%;justify-content:center;align-items:center;width:48px;height:48px;transition:transform .1s;display:flex;position:fixed;top:12px;left:12px;box-shadow:0 3px 8px #00001e4d}.home-btn:active{transform:scale(.9)}.home-btn svg{width:24px;height:24px}@media (width>=700px) and (height>=600px){.game-title{font-size:36px}.game-counter{padding:6px 20px;font-size:16px}.egg-grid{gap:16px;max-width:540px}.dino-name{padding:3px 14px;font-size:14px}.win-text{font-size:36px}.play-again{padding:20px 60px;font-size:26px}.home-btn{width:58px;height:58px;top:16px;left:16px}.home-btn svg{width:28px;height:28px}}@media (prefers-reduced-motion:reduce){.egg.idle,.dino-reveal.visible,.game-background:before,.cloud,.bg-sun.visible,.play-again{animation:none}}
