/* First Week progression stays inside the illustrated world: props, glimmers and movement, not dashboard cards. */
.pet-bond {
  position: absolute;
  z-index: 8;
  left: 3%;
  top: 5%;
  width: auto;
  max-width: 31%;
  min-width: 112px;
  display: flex;
  align-items: center;
  gap: 5px;
  padding: 0;
  border: 0;
  background: transparent;
  filter: drop-shadow(0 5px 3px rgba(49,28,15,.3));
  color: #fff1bd;
  pointer-events: none;
}
.pet-bond[hidden]{display:none!important}.pet-bond>span{font-size:30px}.pet-bond>div{position:relative;min-width:0;display:grid;gap:2px;padding:6px 10px 7px;border:3px solid #6e4829;border-radius:42% 49% 43% 48%;background:linear-gradient(#c58d4b,#996135);box-shadow:inset 0 2px rgba(255,231,172,.34);text-align:left;transform:rotate(-2deg)}.pet-bond strong{font-size:9px}.pet-bond small{font-size:7px;line-height:1.15}.pet-bond i{display:none}.pet-bond b{display:none}

.home-art-kit,.first-week-keepsake,.home-easel button{border:0;background:transparent;cursor:pointer;touch-action:manipulation}
.home-art-kit{position:absolute;z-index:8;right:4%;bottom:8%;width:22%;height:23%;min-width:64px;min-height:64px;filter:drop-shadow(0 8px 5px rgba(52,28,14,.3))}
.home-art-kit[hidden],.home-easel[hidden],.first-week-keepsake[hidden]{display:none!important}.paint-pot{position:absolute;left:16%;right:16%;bottom:15%;height:52%;border:4px solid #6b432a;border-radius:12px 12px 28px 28px;background:linear-gradient(#7ec3ac 0 25%,#4d8e7c 26%);box-shadow:inset 0 5px rgba(255,255,255,.28),0 5px 0 #50321f}.paint-pot i{position:absolute;bottom:72%;width:11%;height:75%;border:3px solid #6b432a;border-radius:99px;background:#d98a4b;transform-origin:bottom}.paint-pot i:nth-child(1){left:24%;transform:rotate(-13deg)}.paint-pot i:nth-child(2){left:47%;height:90%;background:#e7c254}.paint-pot i:nth-child(3){right:20%;background:#8f6bb1;transform:rotate(13deg)}.home-art-kit strong{position:absolute;left:50%;bottom:0;padding:3px 7px;border:2px solid #704629;border-radius:8px;background:#e9b85e;color:#52331f;font-size:8px;white-space:nowrap;transform:translateX(-50%)}.home-art-kit:hover,.home-art-kit:focus-visible{filter:drop-shadow(0 0 12px #fff0a0) drop-shadow(0 8px 5px rgba(52,28,14,.3));outline:3px solid #fff0a8;outline-offset:2px}.home-art-kit[aria-pressed="true"]{animation:artKitWiggle .55s ease}
.home-easel{position:absolute;z-index:7;right:5%;top:14%;width:28%;height:46%;filter:drop-shadow(0 9px 5px rgba(52,28,14,.28))}.home-easel::before,.home-easel::after{content:"";position:absolute;z-index:0;top:12%;bottom:0;width:6%;border:3px solid #6c4328;border-radius:99px;background:#a9743f;transform-origin:top}.home-easel::before{left:28%;transform:rotate(8deg)}.home-easel::after{right:28%;transform:rotate(-8deg)}.home-easel button{position:absolute;z-index:2;inset:0 7% 22%;width:86%;border:6px solid #8a5a32;border-radius:8px;background:#fff8dc;box-shadow:inset 0 0 0 3px #d7bd8f,0 6px 0 #5d3922}.home-easel small{position:absolute;left:50%;bottom:5px;color:#775337;font-size:7px;font-weight:1000;transform:translateX(-50%)}#art-picture{position:absolute;inset:11% 10% 22%;border-radius:40% 55% 43% 48%;background:radial-gradient(circle at 32% 34%,#ffd76b 0 10%,transparent 11%),linear-gradient(145deg,transparent 0 46%,#76b59a 47% 57%,transparent 58%),radial-gradient(ellipse at 55% 73%,#70b8ce 0 23%,transparent 24%)}#art-picture[data-art="1"]{background:radial-gradient(circle at 68% 25%,#f27e94 0 11%,transparent 12%),radial-gradient(ellipse at 50% 70%,#9b78bd 0 28%,transparent 29%),linear-gradient(35deg,transparent 0 38%,#79ad63 39% 48%,transparent 49%)}#art-picture[data-art="2"]{background:radial-gradient(circle at 48% 44%,#f3c85b 0 9%,transparent 10%),radial-gradient(circle at 30% 52%,#ef7a91 0 9%,transparent 10%),radial-gradient(circle at 66% 58%,#73b8c3 0 9%,transparent 10%),linear-gradient(#c9e9ee 0 49%,#91bd75 50%)}#art-picture[data-art="3"]{background:radial-gradient(circle at 22% 22%,#fff5aa 0 4%,transparent 5%),radial-gradient(circle at 70% 31%,#fff5aa 0 3%,transparent 4%),radial-gradient(circle at 47% 50%,#fff5aa 0 3%,transparent 4%),linear-gradient(#4d557d 0 65%,#695582 66%)}.character-stage.art-mode .peblet-stack{transform:translateX(-12%) scale(.86)}.character-stage.art-mode .home-easel{animation:easelArrive .42s cubic-bezier(.2,.9,.25,1.15)}

.first-week-keepsake{position:absolute;z-index:8;left:4%;top:17%;width:94px;height:82px;display:grid;place-items:center;padding:8px;border:5px solid #70482b;border-radius:45% 52% 46% 49%;background:linear-gradient(#d7a65f,#a86e39);box-shadow:inset 0 3px rgba(255,229,173,.35),0 6px 0 #51301d,0 12px 16px rgba(54,29,14,.25);color:#fff2cb;text-shadow:0 2px #65401f;transform:rotate(-3deg)}.first-week-keepsake span{font-size:30px}.first-week-keepsake strong{font-size:8px;line-height:1.05}.first-week-keepsake:not([hidden]){animation:keepsakeGlow 2.8s ease-in-out infinite}.first-week-keepsake:hover,.first-week-keepsake:focus-visible{outline:4px solid #fff0a8;outline-offset:3px;transform:rotate(1deg) scale(1.05)}

.pet-ball.needs-mending span{filter:saturate(.6);animation:rainyBallNudge 1.7s ease-in-out infinite}.pet-ball.needs-mending::after{content:"!";position:absolute;z-index:3;right:-2px;top:-10px;width:24px;height:24px;display:grid;place-items:center;border:3px solid #71452e;border-radius:50%;background:#ffe273;color:#70472c;font-size:14px;font-weight:1000;box-shadow:0 3px 0 #6c4429}.pet-ball.is-mended span{animation:mendedBall .7s cubic-bezier(.2,.9,.25,1.2)}
.rainy-dialog{width:min(560px,94vw);max-height:calc(100dvh - 24px);overflow:auto;padding:clamp(20px,4vw,32px);border:5px solid #6f9e9a;border-radius:30px;background:linear-gradient(#f3fbf5,#fff3d9);box-shadow:0 25px 80px rgba(36,44,39,.52);color:#4f3928;text-align:center}.rainy-dialog::backdrop{background:rgba(38,42,38,.7);backdrop-filter:blur(5px)}.rainy-dialog h2{margin:3px 0 8px;font-size:clamp(27px,5vw,38px);line-height:1.05}.rainy-dialog>p:not(.dialog-eyebrow){color:#675a4e;line-height:1.45}.mending-ball{font-size:58px}.rainy-balance{display:flex;align-items:center;justify-content:space-between;margin:15px auto;padding:11px 14px;border:3px dashed #6f9e9a;border-radius:16px;background:#e3f1e6;font-weight:1000}.rainy-actions{display:grid;grid-template-columns:1fr 1fr;gap:9px}.rainy-actions button{min-height:48px;padding:9px 12px;border:0;border-radius:999px;font-weight:1000;cursor:pointer}.rainy-actions button:first-child{grid-column:1/-1;background:#e8decb;color:#6e5847}.rainy-actions button:nth-child(2){background:#ebd99f;color:#68552f}.rainy-actions button:last-child{background:#4f9372;box-shadow:0 5px 0 #326a50;color:#fff}.rainy-actions button:disabled{opacity:.45;box-shadow:none;cursor:not-allowed}.pet-care-plan{max-width:610px!important;margin:0 auto 13px!important;padding:9px 12px;border:2px solid #8fb9a3;border-radius:14px;background:#e4f2e8;color:#416453!important;font-size:11px;font-weight:800}

/* Saved-for rewards become touchable objects in the Village illustration. */
.village-art-reward,.village-bike-reward,.village-telescope-reward{position:absolute;z-index:14;display:grid;place-items:center;min-width:58px;min-height:58px;padding:0;border:0;background:transparent;color:inherit;text-decoration:none;cursor:pointer;touch-action:manipulation;filter:drop-shadow(0 6px 4px rgba(35,52,30,.38));transform-origin:50% 100%}.village-art-reward[hidden],.village-bike-reward[hidden],.village-telescope-reward[hidden],.constellation-field[hidden],.chapter-ribbon[hidden]{display:none!important}.village-art-reward{left:65.5%;top:23%;width:5%;height:9%;font-size:clamp(28px,3.1vw,50px);transform:rotate(-8deg)}.village-bike-reward{left:36%;bottom:8%;width:8%;height:11%;font-size:clamp(36px,4.8vw,72px)}.village-telescope-reward{left:74%;top:13%;width:7%;height:13%;font-size:clamp(35px,4.4vw,68px);transform:rotate(-8deg)}.village-art-reward:hover,.village-art-reward:focus-visible,.village-bike-reward:hover,.village-bike-reward:focus-visible,.village-telescope-reward:hover,.village-telescope-reward:focus-visible{outline:4px solid #fff0a8;outline-offset:2px;filter:drop-shadow(0 0 14px #fff2a0) drop-shadow(0 6px 4px rgba(35,52,30,.38))}.village-bike-reward.is-riding{animation:bikeWheel .55s linear infinite}.village-telescope-reward.is-looking{filter:drop-shadow(0 0 18px #dff1ff)}
.constellation-field{position:absolute;z-index:15;left:30%;top:2%;width:42%;height:28%;pointer-events:none}.constellation-field button{position:absolute;width:52px;height:52px;padding:0;border:0;border-radius:50%;background:transparent;color:#fff2a6;font-size:27px;text-shadow:0 0 8px #fff,0 0 18px #8fd5ff;cursor:pointer;pointer-events:auto;opacity:.62;animation:starInvite 1.9s ease-in-out infinite}.constellation-field button:nth-child(1){left:7%;top:34%}.constellation-field button:nth-child(2){left:47%;top:4%;animation-delay:-.7s}.constellation-field button:nth-child(3){right:2%;bottom:2%;animation-delay:-1.3s}.constellation-field button[aria-pressed="true"]{opacity:1;color:#fff;filter:drop-shadow(0 0 9px #fff);animation:none}.constellation-field button:focus-visible{outline:4px solid #fff0a8}.village-scene.is-stargazing::before{content:"";position:absolute;z-index:4;inset:0 0 55%;background:radial-gradient(circle at 20% 28%,#fff 0 1px,transparent 2px),radial-gradient(circle at 62% 17%,#fff6b0 0 1px,transparent 2px),radial-gradient(circle at 78% 42%,#d9efff 0 1px,transparent 2px);background-size:95px 80px,130px 105px,145px 120px;pointer-events:none;animation:skyStars 2.2s ease-in-out infinite}
.chapter-ribbon{position:absolute;z-index:13;right:2.2%;top:43%;width:6%;min-width:55px;display:grid;place-items:center;padding:5px 3px 9px;border:3px solid #76502e;border-radius:10px 10px 45% 45%;background:linear-gradient(#e8bd65,#b7763a);box-shadow:0 5px 0 #5e3b22,0 0 14px rgba(255,232,127,.65);color:#fff2c7;font-size:7px;text-align:center;transform:rotate(3deg)}.chapter-ribbon span{font-size:22px}.chapter-ribbon strong{font-size:7px;letter-spacing:.05em}
.village-scene[data-guide="mailbox"] .wonder-mailbox::before,.village-scene[data-guide="first-job"] .bank .hotspot-glow,.village-scene[data-guide="first-job"] .cafe .hotspot-glow,.village-scene[data-guide="first-job"] .post .hotspot-glow,.village-scene[data-guide="bank"] .bank .hotspot-glow,.village-scene[data-guide="cafe"] .cafe .hotspot-glow,.village-scene[data-guide="post"] .post .hotspot-glow,.village-scene[data-guide="purchase"] .home-building .hotspot-glow,.village-scene[data-guide="pet-goal"] .home-building .hotspot-glow,.village-scene[data-guide="adopt"] .home-building .hotspot-glow,.village-scene[data-guide="feed"] .home-building .hotspot-glow,.village-scene[data-guide="rainy-day"] .home-building .hotspot-glow{opacity:1!important;animation:chapterCue 1.55s ease-in-out infinite!important}.village-scene[data-guide="first-job"] .cafe .hotspot-glow{animation-delay:-.35s!important}.village-scene[data-guide="first-job"] .post .hotspot-glow{animation-delay:-.7s!important}.village-scene[data-guide="mailbox"] .wonder-mailbox::before{content:"✉"!important;display:block!important}.village-pet.meal-due::after{content:"🥣";position:absolute;z-index:4;right:-23%;bottom:-2%;font-size:20px;filter:drop-shadow(0 3px 2px rgba(50,35,21,.35));animation:bowlNudge 1.8s ease-in-out infinite}.village-pet.rainy-ready::after{content:"🧶"}
.village-player,.village-pet{transition:left .78s cubic-bezier(.2,.75,.24,1)}.village-player.is-walking .village-player-stack{animation:groundWalk .32s ease-in-out infinite!important}.village-player.is-riding{animation:villageRide 2.5s cubic-bezier(.2,.72,.25,1)!important}.village-player.is-riding .village-player-stack::after{content:"🚲";position:absolute;z-index:-1;left:-15%;right:-15%;bottom:-18%;font-size:clamp(35px,5.2vw,76px);line-height:1;text-align:center;filter:drop-shadow(0 5px 3px rgba(35,52,30,.34))}

.village-scene[data-guide="pet-goal"] .home-building .hotspot-glow{opacity:0!important;animation:none!important}.topbar .account-link.chapter-guide,.goal-quest.first-day-guide{animation:chapterAccountCue 1.35s ease-in-out infinite;box-shadow:0 0 0 5px rgba(255,228,111,.48),0 0 20px #ffe482}
.village-bike-reward.is-riding{opacity:0;pointer-events:none;animation:none}.first-week-keepsake:not([hidden]){animation:none}.first-week-keepsake.is-new{animation:keepsakeGlow 2.8s ease-in-out infinite}
.character-stage[data-pet-bond="1"] .home-pet.is-patted,.character-stage[data-pet-bond="2"] .home-pet.is-patted,.character-stage[data-pet-bond="3"] .home-pet.is-patted{animation:petBondHop .78s cubic-bezier(.18,.85,.22,1.25)}.character-stage[data-pet-bond="2"] .home-pet.is-fetching,.character-stage[data-pet-bond="3"] .home-pet.is-fetching{animation:petBondTwirl 1.25s cubic-bezier(.24,.78,.24,1)}.character-stage[data-pet-bond="3"] .home-pet::after{content:"🎗️";position:absolute;z-index:4;right:7%;top:42%;font-size:clamp(18px,2.5vw,30px);filter:drop-shadow(0 2px 2px rgba(81,49,21,.35));transform:rotate(-10deg)}
@keyframes chapterAccountCue{50%{transform:translateY(-2px) scale(1.06);filter:brightness(1.12)}}@keyframes petBondHop{25%{transform:translateY(-14px) rotate(-4deg) scale(1.05)}48%{transform:translateY(0) rotate(3deg)}70%{transform:translateY(-7px) rotate(-2deg)}100%{transform:none}}@keyframes petBondTwirl{0%,100%{transform:none}42%{transform:translate(72%,4%) rotate(185deg) scale(.94)}72%{transform:translate(34%,-4%) rotate(345deg)}}
@keyframes artKitWiggle{30%{transform:rotate(-5deg) scale(1.04)}65%{transform:rotate(4deg) scale(1.05)}}@keyframes easelArrive{from{opacity:0;transform:translateX(25px) rotate(4deg) scale(.86)}}@keyframes keepsakeGlow{50%{filter:drop-shadow(0 0 13px rgba(255,233,132,.85));transform:rotate(-1deg)}}@keyframes rainyBallNudge{0%,78%,100%{transform:rotate(0)}84%{transform:rotate(-8deg)}90%{transform:rotate(8deg)}}@keyframes mendedBall{40%{transform:translateY(-18px) rotate(90deg) scale(1.12)}75%{transform:translateY(0) rotate(220deg)}}
@keyframes bikeWheel{50%{transform:rotate(2deg) translateY(-2px)}}@keyframes starInvite{50%{opacity:1;transform:scale(1.18)}}@keyframes skyStars{50%{opacity:.68}}@keyframes chapterCue{50%{opacity:1;transform:translate(-50%,-50%) scale(2.4);box-shadow:0 0 15px 8px rgba(255,235,143,.92)}}@keyframes bowlNudge{0%,76%,100%{transform:rotate(0)}83%{transform:rotate(-10deg)}91%{transform:rotate(9deg)}}@keyframes groundWalk{50%{transform:translateY(var(--player-foot-shift)) scale(1.05,.94)}}@keyframes villageRide{0%,100%{transform:translateX(0)}45%{transform:translateX(255%)}55%{transform:translateX(255%) scaleX(-1)}99%{transform:translateX(0) scaleX(-1)}}

@media(max-width:820px){.pet-bond{left:1%;top:3%;width:34%;padding:5px 7px}.pet-bond small{display:none}.home-art-kit{right:3%;bottom:8%;width:18%;height:20%}.home-easel{right:2%;top:11%;width:24%;height:42%}.first-week-keepsake{left:2%;top:11%;width:71px;height:65px;border-width:4px}.first-week-keepsake span{font-size:23px}}
@media(max-width:560px){.rainy-actions{grid-template-columns:1fr}.rainy-actions button:first-child{grid-column:auto}.pet-care-plan{font-size:10px}}
@media(prefers-reduced-motion:reduce){.pet-bond b,.home-art-kit,.home-easel,.first-week-keepsake,.pet-ball.needs-mending span,.pet-ball.is-mended span{animation:none!important;transition:none!important}.first-week-keepsake:not([hidden]){filter:drop-shadow(0 0 9px rgba(255,233,132,.75))}}
@media(prefers-reduced-motion:reduce){.village-art-reward,.village-bike-reward,.village-telescope-reward,.constellation-field button,.village-scene.is-stargazing::before,.chapter-ribbon,.village-player,.village-pet,.village-player-stack{animation:none!important;transition:none!important}}
@media(prefers-reduced-motion:reduce){.village-player.is-walking .village-player-stack{animation:none!important}}
@media(prefers-reduced-motion:reduce){.topbar .account-link.chapter-guide,.goal-quest.first-day-guide,.character-stage[data-pet-bond] .home-pet{animation:none!important;transition:none!important}}
@media(prefers-reduced-motion:reduce){.village-scene[data-guide="mailbox"] .wonder-mailbox::before,.village-scene[data-guide] .hotspot-glow,.topbar .account-link.chapter-guide,.goal-quest.first-day-guide,.village-pet.meal-due::after,.village-pet.rainy-ready::after{animation:none!important;transition:none!important}}
[data-motion="reduced"] .village-scene[data-guide="mailbox"] .wonder-mailbox::before,[data-motion="reduced"] .village-scene[data-guide] .hotspot-glow,[data-motion="reduced"] .topbar .account-link.chapter-guide,[data-motion="reduced"] .goal-quest.first-day-guide,[data-motion="reduced"] .village-pet.meal-due::after,[data-motion="reduced"] .village-pet.rainy-ready::after,[data-motion="reduced"] .character-stage[data-pet-bond] .home-pet{animation:none!important;transition:none!important}
[data-motion="reduced"] .village-player,[data-motion="reduced"] .village-pet,[data-motion="reduced"] .village-player-stack{animation:none!important;transition:none!important}
[data-motion="reduced"] .village-player.is-walking .village-player-stack{animation:none!important}
