.pet-quick-care{position:absolute;right:0;top:24px;display:flex;flex-direction:column;gap:8px;z-index:25}.pet-quick-care button{width:42px;height:42px;min-height:42px;border-radius:50%;padding:0;font-size:23px;background:#202832ee;border:1px solid #ffffff24;touch-action:none}.pet-quick-care button:disabled{opacity:.38}.pet-quick-care button:focus-visible{outline:3px solid var(--lime)}
.touch-tray>div{flex-wrap:wrap}#storeOpen{font-size:12px}#petSpeak{font-size:12px}#storeToast:empty{display:none}.whistle-bubble{position:absolute;top:-12px;left:50%;transform:translateX(-50%);max-width:calc(100% - 90px);width:max-content;padding:8px 12px!important;margin:0!important;border-radius:16px;background:#f6f4e9;color:#18212a;font-size:14px!important;line-height:1.35;z-index:26;box-shadow:0 5px 16px #0003}.whistle-bubble:after{content:'';position:absolute;bottom:-7px;left:50%;border-width:8px 7px 0;border-style:solid;border-color:#f6f4e9 transparent transparent}
.creature.speaking-language .mouth{width:15px!important;height:21px!important;border-radius:50%!important;transform:translateX(-50%)!important;animation:whistle-mouth .25s ease-in-out infinite!important}.creature.speaking-language.phrase-pause .mouth{height:5px!important}.creature.speaking-language{animation:whistle-body 1.2s ease-in-out infinite!important}.creature.speaking-language:before,.creature.speaking-language:after{animation:whistle-eyes 1.8s ease-in-out infinite!important}@keyframes whistle-mouth{50%{scale:.8 1}}@keyframes whistle-body{0%,100%{rotate:-2deg}50%{rotate:2deg}}@keyframes whistle-eyes{85%,95%{scale:1 .35}}
.store-modal{z-index:1300!important;overflow-y:auto}.store-modal .modal-box{max-width:820px;width:calc(100% - 24px);padding:22px;max-height:calc(100dvh - 24px);overflow-y:auto}.store-modal header{display:flex;align-items:center;gap:12px;justify-content:space-between}.store-modal h2{font-size:24px;margin:0}.store-modal h3{font-size:19px}.store-modal header button{flex:0 0 42px;width:42px;height:42px;padding:0;font-size:26px}#storeBalance{color:var(--lime);font-weight:800;font-size:21px}#storeHelp{font-size:14px;line-height:1.5}.store-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:12px}.store-card{padding:20px 10px 12px;background:#ffffff07;border:1px solid #ffffff1a;border-radius:18px;text-align:center;display:flex;flex-direction:column;align-items:center;overflow:hidden}.store-card h4{margin:20px 0 8px;font-size:16px}.store-card p{font-size:13px;margin:0 0 8px}.store-card button{width:100%;font-size:13px;padding:10px 4px;min-height:44px;margin-top:auto}.store-preview{margin:28px auto 10px!important;width:92px!important;height:98px!important;animation:none!important;scale:1!important;rotate:0deg!important;translate:none!important}.store-preview:before,.store-preview:after{scale:.7;transform-origin:top left}.store-preview .mouth{scale:.7}.store-preview .store-art{width:100%;height:100%}.store-art{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.store-front{z-index:14}.store-back{z-index:-1}.creature[data-species=robot]{border-radius:22% 22% 18% 18%!important;box-shadow:inset 0 -7px 0 #0002,inset 0 0 0 3px #ffffff30}.creature[data-species=cat]{border-radius:44% 44% 35% 35%!important}.creature[data-species=bunny]{border-radius:48% 48% 38% 38%!important}
@media(max-width:500px){.store-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}.store-modal .modal-box{padding:16px}.store-modal h2{font-size:21px}.pet-quick-care{right:0;top:18px;gap:6px}.pet-quick-care button{width:40px;height:40px;min-height:40px}.store-card h4{font-size:14px}.whistle-bubble{font-size:12px!important;max-width:calc(100% - 80px)}}@media(prefers-reduced-motion:reduce){.creature.speaking-language,.creature.speaking-language .mouth,.creature.speaking-language:before,.creature.speaking-language:after{animation:none!important}}
.store-preview:before,.store-preview:after{scale:1;top:31px;width:7px;height:15px}.store-preview:before{left:30px}.store-preview:after{right:28px}.store-preview .mouth{scale:1;left:40px;top:59px;width:13px;height:11px;border-radius:3px 3px 9px 9px}.store-card button{background:var(--lime);color:#141b22;border-radius:11px;font-weight:750}.store-card button:disabled{background:#ffffff10;color:#b7bcc8;opacity:1;cursor:default}.store-modal header button{border-radius:50%;background:#ffffff0c;color:#fff}.creature.speaking-language .mouth{left:50%!important}
.hero-creature:has(.pet-quick-care) .pet-thought{left:0;right:auto;top:20px}
/* The supplied art shares one coordinate system, so hats, eyes and scarves stay aligned. */
.creature[data-collection=true]{background:transparent!important;box-shadow:none!important;isolation:isolate}.creature[data-collection=true]:before,.creature[data-collection=true]:after,.creature[data-collection=true]>.mouth{visibility:hidden!important}.collection-layer{position:absolute;inset:0;width:100%;height:100%;overflow:visible;pointer-events:none}.collection-back{z-index:-1}.collection-body{z-index:0}.collection-face{z-index:2}.collection-front{z-index:15}.creature[data-collection=true] .female-lashes,.creature[data-collection=true] .custom-face-accessories{translate:0 10px}.creature[data-collection=true] .companion-body{--pet-color:inherit}.store-card{padding-top:30px}.store-preview{margin-top:35px!important;margin-bottom:15px!important}.store-grid{row-gap:16px}.store-modal #storeAccessories{margin-top:28px}.creature.speaking-language .collection-face{animation:collection-whistle .35s ease-in-out infinite}@keyframes collection-whistle{50%{translate:0 1px}}@media(prefers-reduced-motion:reduce){.creature.speaking-language .collection-face{animation:none!important}}
/* Compact care-first companion layout, shared by phone and iPad. */
.top-music-toggle{width:44px;min-width:44px;height:44px;min-height:44px;font-size:0!important;padding:0!important;border:1px solid var(--line);border-radius:12px;background:var(--panel);color:var(--muted)}.top-music-toggle:before{content:'♫';font-size:21px;font-weight:800}.top-music-toggle[aria-pressed=true]{color:var(--lime)}.top-music-toggle[aria-pressed=false]:before{content:'♫̸'}.background-music-bar:has(#backgroundMusicStatus:empty){display:none}
body.pet-only #petOnlyToolbar{margin-bottom:8px}body.pet-only #petOnlyToolbar h2{font-size:21px;margin-bottom:10px}body.pet-only #petOnlyToolbar .subtitle{display:none}body.pet-only #petOnlyBack{padding:8px;min-height:36px}body.pet-only #home>.pet-interactions{margin:10px 0 8px;padding:0}body.pet-only #home>.pet-interactions summary{padding:12px;min-height:44px}body.pet-only #home>.pet-life-panel{margin:0 0 10px;padding:12px;border-radius:18px}body.pet-only .pet-life-speech{font-size:14px;margin:0 0 10px;line-height:1.4}body.pet-only #petNeeds{gap:10px 14px;margin:0}body.pet-only #petLifeHint,body.pet-only #touchHelp{display:none}body.pet-only #careSounds{font-size:11px;min-height:36px;padding:8px;margin-top:10px}body.pet-only .touch-tray{padding:10px;margin:0 0 10px}body.pet-only .touch-tray>div{display:grid;grid-template-columns:1fr 1fr;gap:6px}body.pet-only .touch-tray button{margin:0;font-size:11px;min-height:40px;padding:8px}body.pet-only #storeOpen{font-size:11px}body.pet-only .touch-tray p{font-size:12px;margin:6px 0 0}body.pet-only .touch-tray p:empty{display:none}body.pet-only .buddy-home{margin-top:8px}body.pet-only .buddy-greeting{font-size:13px;margin:5px 0}body.pet-only .buddy-open{padding:8px 12px;font-size:11px;min-height:36px}
body.pet-only .pet-need label{font-size:11px}body.pet-only .pet-need meter{display:block;width:100%;height:12px}
/* Keep music visible even before the store loads; label the compact control. */
.top-music-toggle{width:auto;min-width:76px;padding:0 8px!important}.top-music-toggle:before{content:'♫ ' attr(data-music-short);font-size:11px}.top-music-toggle[aria-pressed=false]:before{content:'♫̸ ' attr(data-music-short)}.top{flex-wrap:wrap}.tools{gap:6px}@media(min-width:600px){.top-music-toggle{font-size:12px!important;min-width:120px;padding:0 12px!important}.top-music-toggle:before{display:none}}
.store-preview>.pet-wear,.store-preview>.female-hair,.store-preview>.female-lashes,.store-preview>.female-signature,.store-preview>.custom-face-accessories,.store-preview>.earned-reward{display:none!important}

body.pet-only .whistle-bubble{top:8px}
.companion-sleep-bed{display:none;position:absolute;left:50%;bottom:12px;translate:-50% 0;width:calc(100% - 16px);max-width:320px;pointer-events:none;z-index:5}.companion-sleep-bed svg{display:block;width:100%;height:auto}body.pet-only .hero-creature:has(#homePet[data-life=sleep]) .companion-sleep-bed{display:block}body.pet-only .hero-creature:has(#homePet[data-life=sleep]) .room-bed{visibility:hidden}body.pet-only #home #homePet[data-life=sleep]{position:absolute;left:calc(50% - 135px);top:auto;bottom:50px;translate:0 0!important;scale:.62;rotate:0deg!important;transform:rotate(-8deg)!important;animation:bed-sleep-breathe 4s ease-in-out infinite!important;z-index:6}body.pet-only #homePet[data-life=sleep]>.companion-body{visibility:hidden}body.pet-only .hero-creature:has(#homePet[data-life=sleep]) .orbit{opacity:.25}@keyframes bed-sleep-breathe{50%{scale:.63}}@media(prefers-reduced-motion:reduce){body.pet-only #home #homePet[data-life=sleep]{animation:none!important}}
.hero-creature:has(#homePet[data-life=sleep]) #petThought{left:var(--sleep-bubble-left,calc(50% + 15px));right:auto;top:var(--sleep-bubble-top,8px);font-size:16px;padding:6px 9px;min-width:48px;z-index:20}
#home>.pet-interactions{margin:10px 0 8px}#home>.pet-life-panel{margin:0 0 12px}#home>.pet-life-panel #petNeeds{margin:0}#home>.pet-life-panel .pet-need label{font-size:11px}#home>.pet-life-panel .pet-need meter{height:12px}
/* Greeting first; rhythm starts before secondary companion activities. */
#home>#buddyGreeting{margin:0 0 10px;color:var(--lime);font-size:15px;line-height:1.45}body.pet-only #homeRhythm,body:not(.pet-only) #storeOpen{display:none!important}body:not(.pet-only) #home>.pet-life-panel{padding:10px 12px;margin-bottom:14px}body:not(.pet-only) #petLifeSpeech{font-size:12px;min-height:0;margin:0 0 8px}body:not(.pet-only) #petLifeHint{display:none}body:not(.pet-only) #petNeeds{gap:8px 14px}#homeRhythm{text-align:center}#homeRhythm>h2{margin-top:0}#home>.buddy-home{margin-top:16px}#petInteractions .pet-interaction-grid #careSounds{margin:0;min-height:44px;font-size:11px;white-space:normal}
/* Room layers never sit above dialogs; care icons disappear while a dialog is open. */
.hero-creature:has(#homePet){isolation:isolate}body:has(.modal:not([hidden])) .pet-quick-care{visibility:hidden;pointer-events:none}#petCareFx{z-index:8}.hero-creature:has(#homePet[data-life=eat]) .pet-apple,.hero-creature:has(#homePet[data-life=full]) .pet-apple{left:var(--apple-left,calc(50% - 22px));top:var(--apple-top,calc(50% - 23px))}#homePet[data-life=eat] .collection-chew{transform-box:fill-box;transform-origin:center;animation:collection-chew .32s ease-in-out alternate infinite}@keyframes collection-chew{from{scale:1 .3}to{scale:1 1.1}}@media(prefers-reduced-motion:reduce){#homePet[data-life=eat] .collection-chew{animation:none}}
.hero-creature:has(#homePet[data-life=eat]) .pet-apple{animation:collection-apple-eat 4.5s ease-in-out both}@keyframes collection-apple-eat{0%{opacity:0;transform:translate(30px,18px) rotate(18deg)}10%{opacity:1;transform:translate(0,0) rotate(-8deg)}20%,40%,60%{opacity:1;transform:translate(-3px,-2px) rotate(-10deg) scale(.98)}30%,50%,70%{opacity:1;transform:translate(3px,2px) rotate(4deg)}84%{opacity:1;transform:translate(0,0) scale(.6)}100%{opacity:0;transform:translate(0,0) scale(.05)}}@media(prefers-reduced-motion:reduce){.hero-creature:has(#homePet[data-life=eat]) .pet-apple{animation:none!important}}
