/* High-energy Passaroo visual system */
body{background:linear-gradient(145deg,#a8edff 0%,#d9c7ff 30%,#fff1a8 67%,#b9f6cf 100%);background-attachment:fixed}
.sky i{width:18px;height:18px;background:linear-gradient(135deg,#fff,#fff7a8);box-shadow:0 0 18px #fff;animation:passarooSpark 4.5s ease-in-out infinite}.sky i:nth-child(2){background:#ff83c7}.sky i:nth-child(3){background:#69e6ff}.sky i:nth-child(4){background:#ffe36b}
.topbar{background:#ffffffb8;backdrop-filter:blur(16px);border:2px solid #fff;border-radius:22px;padding:9px 11px;box-shadow:0 10px 25px #47359325;position:sticky;top:8px;z-index:15}.brand{font-size:1.36rem;background:linear-gradient(90deg,#5b35dc,#e83f9c,#ff8b2f);-webkit-background-clip:text;background-clip:text;color:transparent}.logo-mark{background:linear-gradient(145deg,#6938e5,#ef4ca5);font-size:1.18rem;border:2px solid #fff;transform:rotate(-6deg);animation:logoHop 2.5s ease-in-out infinite}
.adventure-banner{position:relative;overflow:hidden;display:flex;align-items:center;justify-content:space-between;gap:12px;color:#fff;background:linear-gradient(120deg,#5b35dc,#a43eee 48%,#ff579d);border:2px solid #fff;border-radius:22px;padding:14px 16px;margin:2px 0 12px;box-shadow:0 12px 26px #6938d844}.adventure-banner:after{content:"";position:absolute;width:130px;height:130px;border:20px solid #ffffff20;border-radius:50%;right:-45px;top:-48px}.adventure-banner span,.adventure-banner strong{display:block;position:relative;z-index:1}.adventure-banner span{font-size:.61rem;font-weight:1000;letter-spacing:.16em;color:#fff6a7}.adventure-banner strong{font:800 1.08rem/1.05 "Baloo 2";margin-top:3px}.adventure-banner>b{font-size:2rem;z-index:1;animation:worldBounce 2s ease-in-out infinite}
.streak-compact{background:linear-gradient(135deg,#ff6a43,#ff3d89);box-shadow:0 7px 15px #ff477744;border:2px solid #fff}.home-meta .timer{background:linear-gradient(135deg,#fff1a4,#ffd250);border:2px solid #fff;box-shadow:0 7px 15px #e5a90033}.pet-card{position:relative;background:radial-gradient(circle at 50% 42%,#fff 0%,#f2edff 48%,#d6f9ff 100%);border:3px solid #fff;box-shadow:0 22px 48px #49329135;overflow:hidden}.pet-card:before,.pet-card:after{content:"✦";position:absolute;color:#ffbd20;font-size:2.4rem;animation:passarooTwinkle 2s ease-in-out infinite}.pet-card:before{left:8%;top:25%}.pet-card:after{content:"★";right:8%;top:43%;color:#a65cff;animation-delay:-1s}.pet-stage:before{content:"";position:absolute;width:250px;height:250px;border-radius:50%;background:radial-gradient(circle,#fff7a6 0,#8de9ff70 46%,transparent 70%);animation:powerPulse 2.8s ease-in-out infinite}.pet-stage img{position:relative;z-index:1;filter:drop-shadow(0 24px 15px #44387244);animation:heroFloat 3s ease-in-out infinite}.rotate-hint{z-index:3;background:linear-gradient(90deg,#4430aa,#8f45e9);box-shadow:0 7px 15px #5735bb44}
.quick-actions button{border:2px solid #fff;color:#fff;min-height:67px;box-shadow:0 10px 20px #48387824}.quick-actions button:nth-child(1){background:linear-gradient(145deg,#ff9238,#ff5f55)}.quick-actions button:nth-child(2){background:linear-gradient(145deg,#3fc97a,#18a7c8)}.quick-actions button:nth-child(3){background:linear-gradient(145deg,#7c56ee,#e04fc5)}.quick-actions button:active{transform:scale(.94) rotate(-1deg)}.pass-button{background:linear-gradient(100deg,#5b35dc,#c23fe1,#ff4f87);border:2px solid #fff;box-shadow:0 14px 28px #9b3dce55;animation:buttonGlow 2.5s ease-in-out infinite}.section-head h1{background:linear-gradient(90deg,#352478,#8b3edf,#e9478f);-webkit-background-clip:text;background-clip:text;color:transparent}.category-picker button{min-height:82px;box-shadow:0 10px 22px #4e358d20}.category-picker button span{font-size:2rem}.bottom-nav{background:linear-gradient(105deg,#21174fef,#4e2385ee);border:2px solid #ffffff40}.bottom-nav button.selected{background:linear-gradient(135deg,#7355ef,#ef559e);box-shadow:0 5px 14px #0003}
.welcome-jump{position:fixed;z-index:9999;inset:0;display:grid;place-items:center;overflow:hidden;background:radial-gradient(circle,#fff9ab 0,#82ecff 28%,#9b66f0 66%,#43229c 100%);opacity:0;pointer-events:none}.welcome-jump.play{opacity:1;pointer-events:auto}.welcome-jump:before,.welcome-jump:after{content:"";position:absolute;width:85vmax;height:85vmax;border:4px solid #ffffff70;border-radius:50%;animation:splashRing 1.5s ease-out both}.welcome-jump:after{animation-delay:.25s}.welcome-jump img{position:absolute;width:min(72vw,390px);height:min(72vw,390px);object-fit:contain;filter:drop-shadow(0 35px 22px #24125d66);transform:translateY(110vh) scale(.18) rotate(-12deg)}.welcome-jump.play img{animation:jumpThrough 2.35s cubic-bezier(.2,.8,.2,1) both}.welcome-burst{position:absolute;top:8vh;text-align:center;color:#fff;text-shadow:0 4px 12px #3b167b88;z-index:2;animation:titleDrop .65s .18s both}.welcome-burst span,.welcome-burst strong{display:block}.welcome-burst span{font:900 .82rem "Nunito";letter-spacing:.26em}.welcome-burst strong{font:800 clamp(2.5rem,11vw,4.6rem) "Baloo 2"}.welcome-stars{position:absolute;font-size:clamp(2.4rem,12vw,5rem);color:#fff879;letter-spacing:.35em;animation:starsSpin 1.7s .55s both}.welcome-jump>b{position:absolute;bottom:8vh;background:#fff;color:#4a2aa5;padding:10px 20px;border-radius:999px;font:900 1rem "Nunito";box-shadow:0 10px 30px #32166d55;animation:namePop .5s 1s both}.welcome-jump.leaving{animation:splashLeave .6s ease-in both}
@keyframes jumpThrough{0%{transform:translateY(110vh) scale(.18) rotate(-12deg)}38%{transform:translateY(8vh) scale(.78) rotate(5deg)}62%{transform:translateY(5vh) scale(.9) rotate(-3deg)}100%{transform:translateY(0) scale(2.4) rotate(2deg);opacity:0}}@keyframes splashRing{0%{transform:scale(.1);opacity:0}25%{opacity:1}100%{transform:scale(1.45);opacity:0}}@keyframes titleDrop{from{transform:translateY(-70px);opacity:0}to{transform:none;opacity:1}}@keyframes starsSpin{from{transform:scale(.2) rotate(-90deg);opacity:0}to{transform:scale(1) rotate(6deg);opacity:1}}@keyframes namePop{from{transform:scale(.3);opacity:0}to{transform:scale(1);opacity:1}}@keyframes splashLeave{to{opacity:0;visibility:hidden}}@keyframes logoHop{50%{transform:translateY(-3px) rotate(6deg)}}@keyframes worldBounce{50%{transform:translateY(-5px) rotate(5deg)}}@keyframes heroFloat{50%{transform:translateY(-10px) rotate(1deg)}}@keyframes powerPulse{50%{transform:scale(1.09);opacity:.72}}@keyframes passarooTwinkle{50%{transform:scale(.55) rotate(90deg);opacity:.35}}@keyframes passarooSpark{50%{transform:translateY(-32px) rotate(180deg)}}@keyframes buttonGlow{50%{box-shadow:0 16px 34px #ff4f8766}}
@media(prefers-reduced-motion:reduce){.welcome-jump.play img{animation:none;transform:scale(.8)}.welcome-jump{display:none}}

/* Premium login arrival */
.welcome-jump{display:block;background:radial-gradient(circle at 50% 46%,#f8ffcf 0 10%,#75f0e1 24%,#7956e8 54%,#251459 82%,#12082e 100%);perspective:900px;transition:opacity .35s ease;visibility:hidden}
.welcome-jump.play{visibility:visible}.welcome-jump:before,.welcome-jump:after{display:none}.login-aurora{position:absolute;inset:-20%;background:conic-gradient(from 10deg,#00f5d455,#ffed6655,#ff4faf55,#6b5cff66,#00f5d455);filter:blur(45px);animation:auroraTurn 5s linear infinite}
.login-portal{position:absolute;left:50%;top:53%;width:min(86vw,500px);aspect-ratio:1;transform:translate(-50%,-50%);border-radius:50%;background:radial-gradient(circle,#fff 0 18%,#fff9a8 30%,#5debd8 46%,#8759ef 58%,transparent 68%);filter:drop-shadow(0 0 38px #8cf7e8);opacity:0}
.welcome-jump.play .login-portal{animation:portalOpen 3.2s cubic-bezier(.2,.8,.2,1) both}.login-portal i{position:absolute;inset:5%;border:3px solid #ffffffa8;border-radius:50%;box-shadow:0 0 18px #fff,0 0 45px #6cffe7;animation:portalSpin 1.5s linear infinite}.login-portal i:nth-child(2){inset:13%;border-style:dashed;animation-direction:reverse}.login-portal i:nth-child(3){inset:22%;border-width:2px}
.login-pet-wrap{position:absolute;z-index:4;left:50%;top:53%;width:min(102vw,590px);height:min(102vw,590px);transform:translate(-50%,-50%);transform-style:preserve-3d;pointer-events:none}.welcome-jump .login-pet-wrap img{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;filter:drop-shadow(0 38px 22px #13072888);transform:translateZ(-500px) translateY(52vh) scale(.12) rotate(-11deg);opacity:0}.welcome-jump.play .login-pet-wrap img{animation:cinematicLeap 2.65s cubic-bezier(.16,.78,.24,1) .38s both}
.login-shadow{position:absolute;z-index:-1;left:50%;bottom:3%;width:42%;height:9%;border-radius:50%;background:#13082b77;filter:blur(13px);transform:translateX(-50%) scale(.25);opacity:0}.welcome-jump.play .login-shadow{animation:landingShadow 2.5s .5s both}
.welcome-burst{z-index:8;top:5.5vh;opacity:0;animation:none}.welcome-jump.play .welcome-burst{animation:loginTitle .75s .15s cubic-bezier(.2,1.4,.4,1) both}.welcome-burst span{font-size:.76rem;letter-spacing:.32em;color:#fff4a6}.welcome-burst strong{font-size:clamp(2.6rem,12vw,4.8rem);line-height:.9}.welcome-burst small{display:block;margin-top:8px;font:800 .78rem "Nunito";letter-spacing:.08em;color:#e9e4ff}.welcome-jump>b{z-index:9;bottom:6vh;opacity:0;padding:12px 22px;font-size:clamp(.86rem,4vw,1.08rem);box-shadow:0 14px 40px #15082d88}.welcome-jump.play>b{animation:welcomeMessage .55s 2.15s cubic-bezier(.2,1.5,.4,1) both}
.login-sparkles{position:absolute;z-index:7;inset:0}.login-sparkles i{position:absolute;color:#fff7a0;font-style:normal;text-shadow:0 0 15px #fff;opacity:0}.login-sparkles i:nth-child(1){left:12%;top:33%;font-size:2rem}.login-sparkles i:nth-child(2){right:12%;top:31%;font-size:1.4rem}.login-sparkles i:nth-child(3){left:17%;bottom:25%;font-size:1.5rem}.login-sparkles i:nth-child(4){right:18%;bottom:23%;font-size:.8rem}.login-sparkles i:nth-child(5){left:42%;top:25%;font-size:1.1rem}.login-sparkles i:nth-child(6){right:39%;bottom:15%;font-size:1.2rem}.welcome-jump.play .login-sparkles i{animation:sparkBurst 1.25s 1.05s ease-out both}.welcome-jump.play .login-sparkles i:nth-child(2),.welcome-jump.play .login-sparkles i:nth-child(5){animation-delay:1.35s}.welcome-jump.play .login-sparkles i:nth-child(3),.welcome-jump.play .login-sparkles i:nth-child(6){animation-delay:1.65s}.welcome-jump.leaving{animation:cinematicExit .65s ease-in both}
@keyframes auroraTurn{to{transform:rotate(360deg)}}@keyframes portalOpen{0%{opacity:0;transform:translate(-50%,-50%) scale(.08) rotate(-25deg)}25%{opacity:1}68%{transform:translate(-50%,-50%) scale(1) rotate(5deg)}100%{opacity:.15;transform:translate(-50%,-50%) scale(1.35) rotate(15deg)}}@keyframes portalSpin{to{transform:rotate(360deg)}}@keyframes cinematicLeap{0%{opacity:0;transform:translateZ(-600px) translateY(62vh) scale(.08) rotate(-13deg)}18%{opacity:1}58%{transform:translateZ(-40px) translateY(-2vh) scale(.72) rotate(4deg)}76%{transform:translateZ(150px) translateY(-5vh) scale(1.04) rotate(-2deg)}88%{transform:translateZ(95px) translateY(1vh) scale(.94) rotate(1deg)}100%{opacity:1;transform:translateZ(110px) translateY(0) scale(.97)}}@keyframes landingShadow{0%,35%{opacity:0;transform:translateX(-50%) scale(.2)}72%{opacity:.7;transform:translateX(-50%) scale(1.2)}100%{opacity:.42;transform:translateX(-50%) scale(.9)}}@keyframes loginTitle{from{opacity:0;transform:translateY(-25px) scale(.75)}to{opacity:1;transform:none}}@keyframes welcomeMessage{from{opacity:0;transform:translateY(22px) scale(.7)}to{opacity:1;transform:none}}@keyframes sparkBurst{0%{opacity:0;transform:scale(.2) rotate(0)}35%{opacity:1}100%{opacity:0;transform:scale(1.8) rotate(150deg)}}@keyframes cinematicExit{to{opacity:0;filter:blur(8px);transform:scale(1.06)}}
@media(prefers-reduced-motion:reduce){.welcome-jump{display:block!important}.welcome-jump.play .login-pet-wrap img{animation:none;opacity:1;transform:translateZ(0) translateY(0) scale(.9)}.welcome-jump.play .welcome-burst,.welcome-jump.play>b{animation:none;opacity:1}.login-aurora,.welcome-jump.play .login-portal,.welcome-jump.play .login-sparkles i{animation:none}}
.pet-name-row{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.pet-name-row h1{margin:0}.rename-pet{border:0;border-radius:999px;background:#fff3a8;color:#593600;font:800 14px Nunito,sans-serif;padding:7px 11px;box-shadow:0 4px 0 #e9b93f;cursor:pointer}.rename-pet:active{transform:translateY(2px);box-shadow:0 2px 0 #e9b93f}.pet-name-field{display:grid;gap:7px;text-align:left;font-weight:900;color:#3d3560;margin:20px 0 14px}.pet-name-field input{width:100%;box-sizing:border-box;border:3px solid #d9d2ff;border-radius:16px;padding:14px 16px;font:800 18px Nunito,sans-serif;outline:none}.pet-name-field input:focus{border-color:#7c5cff;box-shadow:0 0 0 4px #7c5cff22}.name-pet-card{text-align:center}.useOriginalName{margin-top:12px;border:0;background:transparent;color:#6b5aa8;font:800 14px Nunito,sans-serif;text-decoration:underline;cursor:pointer}
.owned-badge{position:absolute;right:8px;top:8px;background:#27ba73;color:#fff;border-radius:999px;padding:4px 7px;font:900 10px Nunito,sans-serif}.shop-item.owned{outline:3px solid #65db9c}.photo-wardrobe{background:#fff;border:2px solid #e3dbff;border-radius:18px;padding:12px;margin:10px 0;box-shadow:0 8px 20px #44338818}.photo-wardrobe>b,.photo-wardrobe small{display:block}.photo-wardrobe small{color:#756a91}.wardrobe-strip{display:flex;gap:8px;overflow-x:auto;padding:10px 1px 3px}.wardrobe-strip button{flex:0 0 78px;border:2px solid #e4ddff;border-radius:14px;background:#faf8ff;padding:8px 5px;color:#40336d}.wardrobe-strip button.selected{border-color:#8057ef;background:#eee7ff;box-shadow:0 0 0 3px #8057ef22}.wardrobe-strip span,.wardrobe-strip small{display:block}.wardrobe-strip span{font-size:1.75rem}.wardrobe-strip small{font:800 11px/1.1 Nunito,sans-serif;margin-top:4px;white-space:normal}.camera-outfit{position:absolute;left:50%;top:29%;z-index:4;transform:translate(-50%,-50%);font-size:clamp(3.2rem,15vw,5.5rem);filter:drop-shadow(0 5px 3px #0004);display:none;pointer-events:none}.camera-outfit.show{display:block}
