*{box-sizing:border-box}body{margin:0;background:#f4f3e7;color:#174f5d;font-family:Nunito,Arial,sans-serif}button,a,summary{-webkit-tap-highlight-color:transparent}button{font:inherit;color:inherit;cursor:pointer;border:2px solid #cadccd;background:#fff;min-height:48px;border-radius:16px}button:focus-visible,a:focus-visible,summary:focus-visible{outline:4px solid #df763c;outline-offset:3px}button:disabled{cursor:default}button:active:not(:disabled){transform:scale(.98)}[hidden]{display:none!important}.game-shell{max-width:1400px;margin:auto;padding:14px}header{display:flex;justify-content:space-between;align-items:center;min-height:58px}.home,.round{width:54px;height:54px;display:grid;place-items:center;border:0;background:white;border-radius:50%;font-size:27px;text-decoration:none;box-shadow:0 3px #b5cec0}.brand{text-align:center;display:grid;gap:3px}.brand span,.eyebrow{font-size:13px;font-weight:900;letter-spacing:.06em;color:#b14d28}.brand strong{font-family:Fredoka,Nunito,sans-serif;font-size:26px}.screen{margin-top:14px}.centered{text-align:center;padding:70px 10px}h1{font-family:Fredoka,Nunito,sans-serif;font-weight:600;margin:0;font-size:30px}.intro{text-align:center;margin:22px 0}.intro h1{font-size:42px}.intro .listen{margin-top:18px}.listen,.secondary,.primary{padding:10px 17px;min-width:48px;font-weight:900}.listen{border-color:#568c82}.primary{background:#1f746e;color:white;border-color:#1f746e}.secondary{background:#fff}.pet-choices{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;max-width:780px;margin:auto}.pet-choice{padding:16px;background:#e7eedf;border:0;border-radius:30px;box-shadow:0 5px #b9d0bd}.pet-choice img{width:100%;height:330px;object-fit:contain;display:block}.pet-choice span{display:block;font-size:29px;font-family:Fredoka,Nunito,sans-serif}.pretend-note{max-width:780px;margin:30px auto;font-size:15px}.pretend-note summary{min-height:48px;padding:10px;cursor:pointer}.toolbar{display:flex;justify-content:space-between;align-items:center;gap:10px;margin-bottom:12px}.toolbar>div{text-align:center}.toolbar h1{font-size:27px}.toolbar span{font-size:14px}.job-choices{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:18px;max-width:1040px;margin:16px auto}.job-choice{position:relative;min-height:215px;background:#edf0df;padding:13px;border:0;box-shadow:0 4px #c0d3be}.job-choice img{display:block;width:100%;height:140px;object-fit:contain}.job-choice span{display:block;font-family:Fredoka,Nunito,sans-serif;font-size:25px}.job-choice.completed::after{content:'✓';position:absolute;right:10px;top:10px;background:#fff;border-radius:50%;padding:4px 10px;font-size:26px}.workspace{display:grid;grid-template-columns:minmax(0,1fr) 286px;gap:18px;align-items:start}.clinic{position:relative;aspect-ratio:4/3;width:100%;max-width:calc((100svh - 175px)*4/3);margin:auto;overflow:hidden;border-radius:25px;background:#e7eade}.background{position:absolute;width:100%;height:100%;object-fit:contain}.character,.scene-tool{position:absolute;object-fit:contain;pointer-events:none;transition:transform .6s ease,opacity .25s;z-index:2}.vet{z-index:3}.scene-tool{z-index:4}.pet{z-index:2}.effects,.patches{position:absolute;inset:0;pointer-events:none}.action-target{position:absolute;z-index:6;min-width:48px;min-height:48px;border:3px dashed #ba582d;background:rgba(255,255,255,.15);border-radius:20px;font-weight:900;text-shadow:0 1px white}.patch{position:absolute;z-index:7;min-width:48px;min-height:48px;width:10%;height:12%;font-size:34px;border:3px dashed #ba582d;background:#fff5;border-radius:50%;pointer-events:auto}.patch.done{opacity:0;pointer-events:none}.check{position:absolute;left:76%;top:39%;z-index:8;background:#fff;color:#267769;font-size:54px;border-radius:50%;width:76px;height:76px;text-align:center;box-shadow:0 4px #bed1bd}.prompt{text-align:center;min-height:113px}.prompt .eyebrow{margin:7px 0}.prompt strong{font-size:21px;line-height:1.2;display:block}.prompt p{font-size:15px;margin:8px 0}.tools{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:9px}.tool-card{display:grid;grid-template-columns:minmax(0,1fr) 48px;background:#fff;border:2px solid #cbded0;border-radius:18px;overflow:hidden;min-height:105px}.tool-card.selected{border:3px dashed #ba582d}.tool-select{border:0;border-radius:0;min-width:0;padding:5px;background:transparent}.tool-select img{display:block;width:100%;height:59px;object-fit:contain}.tool-select span{font-size:12px;font-weight:900;display:block}.drag-handle{border:0;border-radius:0;background:#e9eee1;font-size:28px;touch-action:none;height:54px;align-self:center}.tool-area>.primary{width:100%;margin-top:12px}.feedback{display:flex;justify-content:center;align-items:center;gap:15px;min-height:52px;margin-top:7px}.feedback p{font-weight:800;margin:4px 0;text-align:center;font-size:17px}.next-controls{display:flex;gap:10px}.drag-preview{position:fixed;width:95px;height:95px;z-index:100;pointer-events:none;transform:translate(-50%,-50%);filter:drop-shadow(0 3px 4px #0004)}.drag-preview img{width:100%;height:100%;object-fit:contain}.heart-effect{position:absolute;left:35%;top:32%;font-size:54px;animation:beat .8s 3;z-index:5}.scale-dial{position:absolute;left:37%;top:70%;width:55px;height:55px;border:3px solid #548a81;border-radius:50%;background:#fff;z-index:5;display:grid;place-items:center;font-size:28px}.carrier-door{position:absolute;left:21%;top:48%;width:24%;height:23%;z-index:5;border:4px solid #5c8985;border-radius:12px;background:repeating-linear-gradient(90deg,#619a8c55 0 4px,transparent 4px 18px)}.carrier-door.open{transform:translateX(105%);opacity:0;transition:transform .55s,opacity .4s}.pet.arriving{transform:translateX(-23%);opacity:.65}.pet.weighing{transform:translateY(9%)}@keyframes beat{50%{transform:scale(1.15)}}
@media(orientation:portrait){.workspace{display:flex;flex-direction:column;gap:10px}.clinic{max-width:none}.tool-area{width:100%}.tools{grid-template-columns:repeat(6,minmax(0,1fr));gap:7px}.tool-card{grid-template-columns:1fr;min-height:108px}.tool-select{min-height:95px}.tool-select img{height:55px}.drag-handle{height:48px;width:100%}.prompt{min-height:54px;display:grid;grid-template-columns:1fr auto;align-items:center;gap:8px}.prompt .eyebrow{display:none}.prompt p{font-size:15px}.tool-area>.primary{max-width:350px;display:block;margin:10px auto}.feedback{flex-wrap:wrap}.pet-choice img{height:360px}.job-choice{min-height:230px}.job-choice img{height:165px}}
@media(max-width:600px){.game-shell{padding:10px}.brand strong{font-size:23px}.intro h1{font-size:32px}.pet-choices{gap:12px}.pet-choice img{height:210px}.pet-choice span{font-size:24px}.job-choices{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.job-choice{min-height:155px;padding:10px}.job-choice img{height:95px}.job-choice span{font-size:21px}.toolbar h1{font-size:21px}.toolbar .listen,.toolbar .secondary{padding:7px 10px;font-size:14px}.tools{grid-template-columns:repeat(3,minmax(0,1fr))}.tool-card{grid-template-columns:minmax(0,1fr) 48px;min-height:91px}.tool-select{min-height:86px}.tool-select img{height:47px}.tool-select span{font-size:11px}.drag-handle{width:48px;height:48px}.prompt strong{font-size:18px}.prompt p{font-size:13px}.check{font-size:34px;width:50px;height:50px}.feedback p{font-size:15px}.next-controls{flex-wrap:wrap;justify-content:center}.scene-tool{min-width:0}.heart-effect{font-size:33px}.scale-dial{width:38px;height:38px;font-size:21px}}
@media(prefers-reduced-motion:reduce){*{animation:none!important;transition:none!important}button:active:not(:disabled){transform:none}.pet.arriving,.pet.weighing{transform:none}.carrier-door.open{transform:none}}

.scene-tool{transition:left .55s ease,top .55s ease,width .55s ease,height .55s ease}
.tool-card{grid-template-columns:1fr}.tool-select{min-height:86px}.tool-select img{height:52px}.tool-select span{white-space:normal;overflow-wrap:normal}.drag-handle{width:100%;height:48px;font-size:25px}.prompt{min-height:100px}
@media(orientation:landscape){.clinic{max-width:calc((100svh - 220px)*4/3)}}
@media(orientation:portrait){.prompt{min-height:54px}}
@media(max-width:600px){.tool-card{grid-template-columns:1fr}.tool-select{min-height:84px}.tool-select img{height:49px}.drag-handle{width:100%;height:48px}}
@media(prefers-reduced-motion:reduce){.scene-tool{transition:none}}

.workspace.full .tool-select{min-height:72px}.workspace.full .tool-select img{height:40px}.workspace.full .prompt{min-height:86px}.workspace.full .tool-select span{font-size:11px}
@media(orientation:portrait){.workspace.full .prompt{min-height:54px}}

.pet{transition:left .6s ease,top .6s ease,width .6s ease,height .6s ease;transform:none!important}.pet.inside-carrier{z-index:5}.carrier-door{transition:transform .55s ease,opacity .4s}.cropped-tool{position:absolute;overflow:hidden;pointer-events:none}.cropped-tool img{position:absolute;max-width:none;object-fit:fill}.scale-platform{z-index:1}.scale-face{z-index:4}.scale-dial{border:0;background:transparent;width:auto;height:auto;min-width:0;min-height:0;font-size:clamp(24px,3vw,38px);animation:settle .6s ease 1}.heart-effect{left:49%;top:57%;font-size:38px;color:#cf6658}@keyframes settle{from{transform:rotate(-35deg)}to{transform:rotate(0)}}
@media(prefers-reduced-motion:reduce){.pet,.carrier-door{transition:none!important}.scale-dial{animation:none}}

@media(max-width:600px){.feedback.completed{position:fixed;left:0;right:0;bottom:0;z-index:20;background:#f4f3e7;box-shadow:0 -3px 12px #174f5d22;padding:8px 8px max(8px,env(safe-area-inset-bottom))}.feedback.completed p{position:absolute;width:1px;height:1px;overflow:hidden;clip-path:inset(50%)}.feedback.completed .next-controls{flex-wrap:nowrap}.feedback.completed button{padding:10px 12px;font-size:14px}}

.scene-tool.listen-tool{transform:rotate(-55deg);transform-origin:55% 87.5%}
