.stage .status{max-width:calc(100% - 120px);margin-left:auto;margin-right:auto}.care-scene{position:absolute;inset:0;z-index:15;border-radius:inherit;background:radial-gradient(ellipse at 50% 55%,#fffaf0,#e7f5ef);padding:10px 12px;display:flex;flex-direction:column;gap:6px;min-height:0;overflow:hidden}.care-scene[hidden]{display:none}.care-top{display:flex;align-items:center;justify-content:space-between;flex:none;gap:8px}.care-top strong{font:900 1rem 'Nunito',sans-serif}.care-top button{width:44px;height:44px;flex:none;border:1px solid #b4d2c8;border-radius:12px;background:#fffdf6;color:#173e48;font-size:1.7rem;line-height:1}.care-title{display:flex;flex-wrap:wrap;gap:5px;align-items:center}.care-instruction{display:flex;align-items:center;gap:8px;flex:none;min-height:0;margin:0;color:#365f62;font-size:.83rem;line-height:1.3}.care-instruction img{width:32px;height:36px;object-fit:contain;flex:none}.care-surface{position:relative;flex:1;min-height:45px;display:grid;place-items:center;overflow:hidden;touch-action:none;border-radius:18px;user-select:none}.care-surface .bath-avatar{display:block;height:100%;max-height:230px;width:auto;max-width:100%;overflow:visible;filter:none!important}.care-surface .bath-avatar .head{animation:care-breathe 3s ease-in-out infinite;transform-origin:160px 100px}.care-surface .bath-avatar .eyelids{opacity:1;animation:preview-blink 6.2s ease-in-out infinite}.care-surface .bath-avatar .eyes{animation:preview-eyes-blink 6.2s ease-in-out infinite}.care-water{animation:care-water 3s ease-in-out infinite;transform-origin:160px 185px}.care-surface.wiping .bath-cloth{opacity:1;animation:care-wipe .6s ease-in-out}.bath-cloth{opacity:0}.care-surface.splashing .care-splash{animation:care-splash .8s ease-out}.care-splash{opacity:0}.care-foot{transform-origin:190px 178px}.care-surface.splashing .care-foot{animation:care-kick .7s ease-in-out}.care-toolbar{display:flex;gap:7px;flex:none;min-height:44px}.care-toolbar button{flex:1;min-width:0;border:1px solid #b2cfc5;border-radius:12px;background:#fffdf6;color:#245e5e;padding:9px 7px;font:800 .86rem 'DM Sans',sans-serif;min-height:44px}.care-toolbar .primary{background:#173e48;color:white;border-color:#173e48}.care-toolbar button[hidden]{display:none}.care-toolbar button:disabled{opacity:.5}.care-next{flex:none;margin:0;text-align:center;font-size:.75rem;line-height:1.2;color:#537873}.care-scene .care-next:empty{display:none}
@keyframes care-water{50%{transform:translateY(2px)}}@keyframes care-breathe{50%{transform:translateY(-1px)}}@keyframes care-wipe{0%,100%{transform:translateX(-10px)}50%{transform:translateX(20px)}}@keyframes care-splash{0%{opacity:0;transform:translateY(6px)}25%{opacity:1}100%{opacity:0;transform:translateY(-20px)}}@keyframes care-kick{50%{transform:rotate(-12deg)}}
@media(max-height:620px){.care-scene{padding:5px 9px;gap:3px}.care-top button{height:36px;width:44px}.care-top strong{font-size:.87rem}.care-instruction{font-size:.74rem;line-height:1.2}.care-instruction img{width:24px;height:28px}.care-next{font-size:.68rem}.care-toolbar button{font-size:.75rem;padding:7px 4px}}
@media(prefers-reduced-motion:reduce){.care-surface .bath-avatar .head,.care-surface .bath-avatar .eyelids,.care-surface .bath-avatar .eyes,.care-water,.care-surface.splashing .care-splash,.care-surface.splashing .care-foot,.care-surface.wiping .bath-cloth{animation:none!important}.care-surface .bath-avatar .eyelids{opacity:0}.care-surface.wiping .bath-cloth{opacity:1}}

/* Reveal clean skin exactly under the moving cloth. */
.care-surface.scrubbing{cursor:none}.care-surface.scrubbing .bath-cloth{opacity:1;animation:none!important}.care-surface.wiping .bath-cloth{animation:none!important;opacity:1}.care-surface .bath-cloth{transition:opacity .12s}.care-surface #careDirt{transition:opacity .4s}.care-surface.freshly-clean .bath-avatar .head{animation:care-clean-nod .65s ease-in-out}@keyframes care-clean-nod{50%{transform:translateY(-2px) rotate(2deg)}}@media(prefers-reduced-motion:reduce){.care-surface .bath-cloth,.care-surface #careDirt{transition:none}.care-surface.freshly-clean .bath-avatar .head{animation:none}}

/* One panel footprint, two large tabs. No extra controls around the baby. */
.care-tabs{display:flex;align-items:center;gap:4px;flex:none;background:#edf5f1;border-radius:13px;padding:3px}.care-tabs button{min-height:44px;border:0;border-radius:10px;background:transparent;color:#527572;padding:7px 12px;font:900 .88rem 'Nunito',sans-serif;display:flex;align-items:center;gap:5px}.care-tabs button[aria-selected="true"]{background:#fff;color:#173e48;box-shadow:0 1px 4px #173e4810}.care-tabs button:disabled{opacity:.55}.care-pending{min-width:19px;height:19px;display:grid;place-items:center;border-radius:50%;background:#efc882;color:#354c45;font:.7rem/1 'DM Sans',sans-serif}.care-tabs .needs-attention{color:#a55643;background:#faebe5}.care-panel-hint{min-height:38px;margin:0;display:flex;align-items:center;font-size:.8rem;line-height:1.25;color:#537572}.care-actions-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px;margin-top:6px}.care-actions-grid .action{min-width:0;min-height:68px;font-size:.8rem;gap:3px;padding:7px 3px}.care-actions-grid .care-icon{width:29px;height:29px}.care-actions-grid small{font-size:.68rem;font-weight:500;color:#64817c;line-height:1.2}.care-actions-grid .care-needed{background:#fff9ef;border-color:#d8b884}.care-actions-grid .action:disabled{cursor:default;opacity:.68}.care-actions-grid .fresh-clothes{animation:fresh-clothes .7s ease-out}.face-mess,.clothing-mess{pointer-events:none}.stage .status{max-width:calc(100% - 72px)}
@keyframes fresh-clothes{45%{background:#e6f4ea;border-color:#74b69d;transform:scale(1.025)}}
.avatar.changing-clothes .body,.avatar.changing-clothes .swaddle{animation:clothes-freshen .7s ease-out!important}@keyframes clothes-freshen{0%{opacity:.65}45%{opacity:1;filter:brightness(1.08)}100%{opacity:1;filter:none}}
@media(max-width:610px){.care-tabs button{padding:7px 10px;font-size:.82rem}.care-actions-grid{gap:5px}.care-actions-grid .action{font-size:.72rem}.care-panel-hint{min-height:36px;font-size:.74rem}.actions .signals-count{font-size:.68rem;max-width:100px}}
@media(max-width:360px){.actions .signals-count{display:none}.care-tabs{width:100%}.care-tabs button{flex:1;justify-content:center}}
@media(prefers-reduced-motion:reduce){.care-actions-grid .fresh-clothes{animation:none;background:#e6f4ea}.avatar.changing-clothes .body,.avatar.changing-clothes .swaddle{animation:none!important}}

.game{touch-action:pan-y}.swipe-left{animation:panel-from-right .18s ease-out}.swipe-right{animation:panel-from-left .18s ease-out}@keyframes panel-from-right{from{opacity:.6;transform:translateX(12px)}to{opacity:1;transform:none}}@keyframes panel-from-left{from{opacity:.6;transform:translateX(-12px)}to{opacity:1;transform:none}}
/* Larger scent puffs stay legible even at the first yellow cue. */
.odor-layer{position:absolute;inset:0;pointer-events:none;z-index:3;overflow:visible}.odor-layer[hidden],.odor-source[hidden]{display:none}.odor-source{position:absolute;width:0;height:0;--odor-strength:0;--odor-size:64px;--odor-duration:3.3s;--odor-ink:#536e43;--odor-fill:#c8d8a0}.diaper-odor{--odor-ink:#776330;--odor-fill:#dfd096}
.odor-source svg{position:absolute;bottom:-4px;left:-17px;width:32px;height:var(--odor-size);overflow:visible;opacity:0;animation:scent-rise var(--odor-duration) ease-in-out infinite;animation-delay:-.6s;filter:drop-shadow(0 1px 1px #fffaf0)}.odor-source .odor-curl{fill:none;stroke:var(--odor-ink);stroke-width:2.8;stroke-linecap:round}.odor-source .odor-puff{fill:var(--odor-fill);fill-opacity:.7;stroke:var(--odor-ink);stroke-width:1.7;stroke-linejoin:round}
.odor-source svg:nth-child(2){left:7px;bottom:1px;animation-delay:-1.7s}.odor-source svg:nth-child(3){left:-35px;bottom:6px;animation-delay:-2.7s}.odor-source svg:nth-child(4){left:20px;bottom:5px;animation-delay:-3.3s}.odor-source[data-level=light] svg:nth-child(n+3),.odor-source[data-level=medium] svg:nth-child(n+4){display:none}
@keyframes scent-rise{0%{opacity:0;transform:translateY(5px) scale(.8)}18%,55%{opacity:calc(.25 + var(--odor-strength) * .65)}75%{opacity:calc(.15 + var(--odor-strength) * .4)}100%{opacity:0;transform:translate(6px,-32px) scale(1.12)}}
@media(prefers-reduced-motion:reduce){.swipe-left,.swipe-right{animation:none}.odor-source svg{animation:none;opacity:calc(.3 + var(--odor-strength) * .6);transform:none}.odor-source svg:nth-child(n+3){display:none}}

/* Let the clean face settle before gently returning to play. */
.care-scene.care-complete{animation:care-return var(--care-return-duration,850ms) ease-in-out both;pointer-events:none}.care-complete .care-toolbar{visibility:hidden}.care-complete .bath-cloth{opacity:0!important}
@keyframes care-return{0%,65%{opacity:1;transform:translateY(0)}100%{opacity:0;transform:translateY(4px)}}
@media(prefers-reduced-motion:reduce){.care-scene.care-complete{animation:none}}
/* Disabled care buttons still let the game panel receive a swipe. */
.game .action:disabled{pointer-events:none}

/* Both tab panels reserve their space, keeping the baby and controls still. */
.care-panel-stack{display:grid;align-items:start}.care-panel-stack>[role=tabpanel]{grid-area:1 / 1;min-width:0}.care-panel-stack>[hidden]{display:block!important;visibility:hidden;pointer-events:none}.actions .feedback-slot[hidden]{display:flex!important;visibility:hidden;pointer-events:none}

/* Age progress fills the existing chapter pill instead of taking a bottom row. */
.chapter{overflow:hidden;isolation:isolate;background:#fffdf8;border-color:#d5e5dd}.chapter::before{content:"";position:absolute;inset:0 auto 0 0;width:var(--age-progress,0%);background:#f3d7a0;z-index:-1;transition:width .35s ease}.chapter .sun{color:#9b7228}@media(prefers-reduced-motion:reduce){.chapter::before{transition:none}}


.welcome[data-view="settings"] .welcome-card{grid-template-columns:1fr;grid-template-rows:minmax(0,1fr);max-width:540px}@media(max-width:610px){.welcome[data-view="babies"] .welcome-art .avatar{height:64px;width:84px;max-height:100%}}
@media(max-width:610px) and (max-height:600px){.welcome[data-view="babies"] .welcome-art{display:none}.welcome[data-view="babies"] .welcome-card{grid-template-rows:minmax(0,1fr)}}

.shop-categories{display:flex;flex:none;gap:6px;margin:0 0 8px}.shop-categories button{flex:1;min-height:40px;padding:7px;border:1px solid #c9ded5;border-radius:12px;background:#f1f7f3;color:#365f62;font-weight:800}.shop-categories button[aria-pressed="true"]{background:#173e48;color:#fff;border-color:#173e48}.shop-categories button:disabled{opacity:.55}@media(max-height:600px){.shop-categories{margin-bottom:4px}.shop-categories button{min-height:36px;padding:5px}}

/* Keep the shop frame and navigation space independent of the active category. */
.shop-view{width:100%;min-width:0}.shop-view .shop{width:100%}.shop-pages[data-single-page="true"] button{visibility:hidden;pointer-events:none}

.starter-choice{display:grid;gap:5px;margin:9px 0;font-size:.78rem;color:#365f62}.starter-choice>strong{font-weight:800}.starter-choice>small{font-size:.7rem;line-height:1.25;min-height:1.3em}
.starter-packs{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:6px}
.starter-pack{position:relative;min-width:0;border:2px solid #dce9e1;border-radius:13px;background:#fffdf6;color:#31555a;padding:7px 4px 6px;display:flex;align-items:center;flex-direction:column;gap:1px}
.starter-pack[aria-pressed="true"]{border-color:#368e81;background:#edf8f1;box-shadow:0 0 0 1px #368e8126}.starter-pack .pack-name{font-size:.75rem;line-height:1.2;white-space:nowrap}.starter-art{display:block;width:100%;height:76px;overflow:visible}.pack-hearts{font-size:.81rem;font-weight:900;color:#276c70;white-space:nowrap}.pack-hearts small{font-size:.62rem;font-weight:600}.pack-cost{font-size:.65rem;color:#6b8179}.pack-selected{position:absolute;right:3px;top:2px;font-size:.65rem;font-weight:900;color:#24796d;visibility:hidden}.starter-pack[aria-pressed="true"] .pack-selected{visibility:visible}
.welcome[data-view="pace"] #welcomeIntro{display:none}.welcome[data-view="pace"] .welcome-copy{overflow-y:auto;justify-content:flex-start}.welcome[data-view="pace"] .welcome-copy>*{flex-shrink:0}
@media(max-width:610px){.welcome[data-view="pace"] .welcome-card{grid-template-rows:72px minmax(0,1fr)}.welcome[data-view="pace"] .welcome-art .avatar{height:70px;width:90px}}
@media(max-height:650px){.starter-choice{margin:5px 0;gap:3px}.starter-art{height:53px}.starter-pack{padding:5px 3px 4px}.starter-pack .pack-name{font-size:.69rem}.pack-hearts{font-size:.74rem}.starter-choice>small{font-size:.65rem}.welcome[data-view="pace"] .feeding-note{display:none}}
@media(max-width:610px) and (max-height:650px){.welcome[data-view="pace"] .welcome-card{grid-template-rows:45px minmax(0,1fr)}.welcome[data-view="pace"] .welcome-art .avatar{height:44px;width:60px}}


.timed-bath .bath-ripples{animation:bath-ripple 3.5s ease-in-out infinite;transform-origin:160px 190px}.timed-bath .care-splash{opacity:0}@keyframes bath-ripple{50%{opacity:.45;transform:scale(.97)}}@media(prefers-reduced-motion:reduce){.timed-bath .bath-ripples{animation:none}}

/* Two panels share a fixed track; only their horizontal offset changes. */
.care-panel-stack{overflow:hidden;isolation:isolate}.care-panel-stack>[role=tabpanel]{transition:transform .24s cubic-bezier(.2,.75,.25,1);backface-visibility:hidden}#nurturePanel{transform:translate3d(calc(var(--care-position,0)*-100%),0,0)}#hygienePanel{transform:translate3d(calc((1 - var(--care-position,0))*100%),0,0)}.care-panel-stack.sliding>[role=tabpanel]{visibility:visible;pointer-events:none}.care-panel-stack.dragging>[role=tabpanel]{transition:none}.care-tabs{position:relative;width:min(240px,60%);isolation:isolate;touch-action:pan-y;user-select:none;gap:4px}.care-tabs::before{content:"";position:absolute;left:calc(3px + (50% - 1px)*var(--care-position,0));top:3px;bottom:3px;width:calc((100% - 10px)/2);border-radius:10px;background:#fff;box-shadow:0 1px 4px #173e4810;transition:left .24s cubic-bezier(.2,.75,.25,1);z-index:-1}.care-tabs.dragging::before{transition:none}.care-tabs button{flex:1;min-width:0;justify-content:center;background:transparent!important;box-shadow:none!important;touch-action:pan-y}.care-tabs button[aria-selected="true"]{background:transparent;box-shadow:none}.care-panel-stack.sliding>[hidden]{visibility:visible}@media(prefers-reduced-motion:reduce){.care-panel-stack>[role=tabpanel],.care-tabs::before{transition:none}}

/* Each limb stays attached at its joint as it rises through the water. */
.care-surface .timed-bath{max-height:420px}
.timed-bath .bath-limbs{opacity:1;animation:none!important;transform:none!important}
.timed-bath .bath-limb{stroke-width:1.2;stroke-linejoin:round;opacity:.43;transform-box:view-box;transition:opacity .2s,transform .25s}
.timed-bath .limb-detail{fill:none;stroke-width:1.1;stroke-linecap:round}
.timed-bath .bath-arm-left{transform-origin:133px 115px}
.timed-bath .bath-arm-right{transform-origin:187px 115px}
.timed-bath .bath-leg-left{transform-origin:148px 204px}
.timed-bath .bath-leg-right{transform-origin:172px 204px}
.timed-bath[data-bath-mood="laugh"] .bath-limb{opacity:1}
.timed-bath[data-bath-mood="laugh"] .bath-arm-left{animation:bath-arm-play .9s ease-in-out infinite}
.timed-bath[data-bath-mood="laugh"] .bath-arm-right{animation:bath-arm-play .9s ease-in-out -.3s infinite;--bath-swing:-1}
.timed-bath[data-bath-mood="laugh"] .bath-leg-left{animation:bath-kick 1.1s ease-in-out infinite}
.timed-bath[data-bath-mood="laugh"] .bath-leg-right{animation:bath-kick 1.1s ease-in-out -.55s infinite;--bath-swing:-1}
.timed-bath .bath-water-cover{opacity:.3}
.bath-touch-waves{opacity:0}
.splashing .bath-touch-waves{animation:bath-wave-fade .75s ease-out}
.bath-touch-waves ellipse{transform-box:view-box;transform-origin:0 0}
.splashing .wave-one{animation:bath-wave-grow .75s ease-out}
.splashing .wave-two{animation:bath-wave-grow .65s ease-out .08s}
.timed-bath .head{transform:none;animation:none!important}
.timed-bath .eyelids{transform:none!important}
.timed-bath .smile,.timed-bath .newborn-mouth,.timed-bath .giggle-mouth,.timed-bath .sad-mouth,.timed-bath .surprise-mouth{opacity:0!important}
.timed-bath[data-bath-mood="calm"] .newborn-mouth{display:inline!important;opacity:1!important}
.timed-bath[data-bath-mood="smile"] .smile,.timed-bath[data-bath-mood="laugh"] .giggle-mouth,.timed-bath[data-bath-mood="cry"] .sad-mouth{opacity:1!important}
.timed-bath[data-bath-mood="laugh"] .eyes,.timed-bath[data-bath-mood="cry"] .eyes{opacity:0!important;animation:none!important}
.timed-bath[data-bath-mood="laugh"] .eyelids,.timed-bath[data-bath-mood="cry"] .eyelids{opacity:1!important;animation:none!important}
.timed-bath[data-bath-mood="cry"] .brows{opacity:0}
.timed-bath[data-bath-mood="cry"] .sad-brows,.timed-bath[data-bath-mood="cry"] .tears,.timed-bath[data-bath-mood="cry"] .tear{opacity:1!important}
.timed-bath[data-bath-mood="cry"] .head{animation:bath-sob .45s ease-in-out infinite!important}
.timed-bath[data-bath-mood="laugh"] .head{animation:bath-laugh .5s ease-in-out infinite!important}
@keyframes bath-arm-play{0%,100%{transform:none;opacity:.43}45%,60%{transform:rotate(calc(16deg*var(--bath-swing,1)));opacity:1}}
@keyframes bath-kick{0%,100%{transform:none;opacity:.43}45%,60%{transform:rotate(calc(13deg*var(--bath-swing,1)));opacity:1}}
@keyframes bath-wave-grow{to{transform:scale(3)}}
@keyframes bath-wave-fade{0%{opacity:.9}100%{opacity:0}}
@keyframes bath-sob{50%{transform:translateY(1px)}}
@keyframes bath-laugh{50%{transform:translateY(-1.5px)}}
@media(prefers-reduced-motion:reduce){.timed-bath .head,.timed-bath .bath-limb,.splashing .bath-touch-waves,.splashing .wave-one,.splashing .wave-two{animation:none!important;transition:none}.splashing .bath-touch-waves{opacity:.7}}

/* Urgent needs use a visible glow without changing the button's size. */
.action.need-urgent{background:#fff0ed;border-color:#d76d61;box-shadow:0 0 0 2px #df78694d,0 0 14px #df786966;animation:urgent-need-glow 1.6s ease-in-out infinite}
@keyframes urgent-need-glow{50%{box-shadow:0 0 0 3px #df786966,0 0 21px #df78698c}}
@media(prefers-reduced-motion:reduce){.action.need-urgent{animation:none}}

.care-pending.urgent{background:#d96f61;color:white;box-shadow:0 0 9px #d96f6166}

@media(min-width:611px){.care-surface .bath-avatar{max-height:100%}}

.mini-hamper{position:relative;flex:none;margin-left:auto;align-self:center;width:50px;height:50px;border:1px solid #d3e4d8;border-radius:13px;background:#f8faf2;padding:3px;color:#386e70;touch-action:manipulation}.mini-hamper[hidden]{display:none}.mini-hamper svg{display:block;width:100%;height:100%}.mini-hamper:disabled{opacity:.6}.mini-hamper.is-full{border-color:#d6b064;background:#fff7df}.mini-hamper-count{position:absolute;right:-3px;top:-3px;min-width:17px;height:17px;display:grid;place-items:center;padding:0 3px;border-radius:50%;background:#3b8b7c;color:white;font-size:.64rem;font-weight:900}.mini-hamper-count[hidden]{display:none}.mini-hamper.hamper-hit{animation:heart-merge .38s ease-out}.mini-hamper.hamper-hit>svg{animation:heart-receive .38s ease-out;transform-origin:center}.mini-hamper.is-washing{border-style:dashed}
.laundry-piece{position:fixed;left:0;top:0;z-index:60;width:32px;height:32px;opacity:1;pointer-events:none;filter:drop-shadow(0 3px 3px #173e4833);animation:laundry-flight .7s cubic-bezier(.22,.6,.4,1) both}.laundry-piece svg{width:100%;height:100%}
@keyframes laundry-flight{0%{transform:translate(var(--laundry-x),var(--laundry-y)) scale(1);opacity:1}50%{transform:translate(calc(var(--laundry-x) + var(--laundry-dx)*.5),calc(var(--laundry-y) + var(--laundry-dy)*.5 - 32px)) rotate(-14deg) scale(.9);opacity:1}100%{transform:translate(calc(var(--laundry-x) + var(--laundry-dx)),calc(var(--laundry-y) + var(--laundry-dy))) rotate(8deg) scale(.6);opacity:1}}
@media(prefers-reduced-motion:reduce){.laundry-piece,.mini-hamper.hamper-hit,.mini-hamper.hamper-hit>svg{animation:none}}

.water-drag-wave{fill:none;stroke:#f3fff7;stroke-width:1.5;transform-box:view-box;transform-origin:0 0;animation:water-drag-ring .65s ease-out both}
@keyframes water-drag-ring{0%{opacity:.85;transform:scale(.8)}100%{opacity:0;transform:scale(3.2)}}
@media(prefers-reduced-motion:reduce){.water-drag-wave{animation:none;opacity:.55}}
.flying-supply .supply-quantity{position:absolute;right:-9px;bottom:-7px;min-width:22px;padding:2px 5px;border-radius:12px;background:#fffaf1;color:#285f57;border:1px solid #c7ded2;font:900 .7rem 'DM Sans',sans-serif;line-height:1.15;text-align:center;box-shadow:0 2px 6px #173e4814}

/* Care takes place in the same baby field; the room, name and controls remain visible. */
.stage.is-caring #babyTouch{visibility:hidden}
.stage .baby-scene>.care-scene{position:absolute;inset:0;display:block;padding:0;border:0;border-radius:0;background:none;overflow:visible}
.stage .baby-scene>.care-scene[hidden]{display:none}
.stage .baby-scene>.care-scene.care-complete{animation:none;opacity:1;transform:none}
.stage .care-scene .care-top,.stage .care-scene .care-next,.stage .care-scene .care-toolbar{display:none}
.stage .care-scene .care-surface{position:absolute;inset:0;display:grid;min-height:0;overflow:visible;border-radius:0}
.stage .care-scene .care-surface>.bath-avatar{width:100%;height:100%;max-width:100%;max-height:100%}
.inline-face-avatar .head,.inline-face-avatar .crawl-head,.inline-face-avatar .body,.inline-face-avatar .posture-frame,.inline-face-avatar .crawl-pose{animation:none!important}

.shop-view .upgrades[data-category="recommended"]{display:flex;flex-direction:column;align-items:stretch;overflow:hidden}.shop-recommendation{height:100%;min-height:0;overflow:auto;display:flex;flex-direction:column;align-items:center;justify-content:center;gap:9px;text-align:center;padding:clamp(12px,3vw,25px);border-radius:18px;background:radial-gradient(circle at 50% 26%,#fff8e3 0 18%,#f1f8ed 44%,#e0f0e8 100%);border:1px solid #c7ddd0;color:#285d59}.shop-recommendation[hidden]{display:none}.recommendation-kicker{text-transform:uppercase;letter-spacing:.06em;font-size:.65rem;font-weight:900;color:#56827b}.recommendation-icon{width:100px;height:82px;display:grid;place-items:center;font-size:3.8rem;color:#d6a551}.recommendation-icon svg{width:100%;height:100%}.shop-recommendation h3{font:900 clamp(1.2rem,4vw,1.65rem) 'Nunito',sans-serif;margin:0;line-height:1.1}.shop-recommendation strong{font-size:.95rem;line-height:1.3;color:#24786d}.shop-recommendation p{max-width:360px;margin:0;font-size:.83rem;line-height:1.4}.shop-recommendation button{min-height:44px;margin-top:4px;border:0;border-radius:12px;background:#173e48;color:white;padding:11px 18px;font:800 .9rem 'DM Sans',sans-serif}.shop-recommendation button:disabled{opacity:.6}.shop-recommendation small{max-width:330px;font-size:.69rem;line-height:1.3;color:#648079}@media(max-height:650px){.shop-recommendation{gap:5px;padding:10px}.recommendation-icon{width:62px;height:46px;font-size:2.5rem}.shop-recommendation h3{font-size:1.2rem}.shop-recommendation p{font-size:.75rem}.shop-recommendation strong{font-size:.8rem}.shop-recommendation button{padding:7px 12px}}@media(max-height:520px){.recommendation-icon,.shop-recommendation small{display:none}.shop-recommendation p{font-size:.72rem;line-height:1.25}.shop-recommendation{gap:4px;justify-content:flex-start}}

/* Only struggling face washes show this short, noninteractive gesture cue. */
.face-swipe-guide{pointer-events:none}
.show-face-guide .bath-cloth{visibility:hidden}
.face-guide-cloth{opacity:1;visibility:visible}
.face-guide-track{fill:none;stroke:#f4c56b;stroke-width:3;stroke-linecap:round;stroke-linejoin:round;stroke-dasharray:2 5}
.face-guide-touch{fill:#fff4c1;fill-opacity:.75;stroke:#e2b05c;stroke-width:1.5}
.face-guide-hand{fill:#fffdf3;fill-opacity:.94;stroke:#386e70;stroke-width:1.6;stroke-linejoin:round}
.face-guide-hand-move{animation:face-guide-swipe 1.6s ease-in-out 3}
@keyframes face-guide-swipe{0%,100%{transform:translate(-24px,0)}50%{transform:translate(24px,6px)}}
@media(prefers-reduced-motion:reduce){.face-guide-hand-move{animation:none;transform:translate(24px,6px)}}
