.cat-treat>span{background-image:url(/cat-room/pantry-foods.png);background-repeat:no-repeat;background-size:300% 200%;background-position:var(--food-x) var(--food-y);width:100%;height:100%;display:block}.treat-chicken{--food-x:0%;--food-y:0%}.treat-cat-food{--food-x:50%;--food-y:0%}.treat-bread{--food-x:100%;--food-y:0%}.treat-carrot{--food-x:0%;--food-y:100%}.treat-apple{--food-x:50%;--food-y:100%}.treat-cheese{--food-x:100%;--food-y:100%}.door-hall .door-scene.door-scene-with-nook{grid-template-rows:minmax(0,1fr);grid-template-columns:1.3fr 1fr 1fr .6fr 1.2fr;gap:clamp(10px,1.5vw,25px);min-height:0}.door-hall-hero .door-scene-with-nook>.hall-room{overflow:visible}.door-hall-hero .door-scene-with-nook>.hall-room>.hall-door{height:calc(100% - 12px);min-height:0;max-height:min(38vh,330px);margin:0 auto 12px}.door-scene-with-nook>.hall-room,.door-scene-with-nook>.hall-yard{grid-area:1}.door-hall .door-scene-with-nook>.hall-yard{border-radius:45% 45% 0 0/15% 15% 0 0;grid-area:1/5;grid-template-rows:minmax(0,1fr) auto auto;grid-template-columns:1fr;height:100%;display:grid}.door-hall .door-scene-with-nook>.hall-yard strong,.door-hall .door-scene-with-nook>.hall-yard small{grid-column:1}.bedroom-nook{flex-direction:column;grid-area:1/4;justify-content:end;align-self:end;align-items:center;gap:0;min-width:0;height:170px;padding-bottom:12px;display:flex;position:relative}.door-hall .bedroom-nook .bedroom-room{background:0 0;border:0;flex:none;width:125px;height:120px;min-height:0;padding:0;display:block;position:relative;overflow:visible}.door-hall .bedroom-nook .bedroom-door{border-width:4px;border-radius:32px 32px 0 0;width:65px;height:80px;margin:0;position:absolute;top:5px;bottom:auto;left:8px}.door-hall .bedroom-nook .bedroom-door i{letter-spacing:.05em;padding:3px;font-size:5px}.door-hall .bedroom-nook .bedroom-door b{width:5px;height:5px}.door-hall .bedroom-nook .door-cat{transform-origin:0 100%;position:absolute;bottom:30px;left:55px;right:auto;transform:scale(.48)}.door-hall .bedroom-nook .bedroom-room strong{white-space:nowrap;min-height:0;font-size:13px;position:absolute;bottom:8px;left:5px}.door-hall .bedroom-nook .bedroom-room small{display:none}.cat-treats>div{gap:0;display:flex}.cat-treat{cursor:grab;touch-action:none;background:0 0;border:1px solid #0000;border-radius:50%;width:40px;height:40px;padding:3px}.cat-treat.is-selected,.cat-treat:focus-visible{outline-offset:2px;background:#f3ead8;outline:2px dashed #745749}.cat-treat-ghost{z-index:9999;pointer-events:none;background-image:url(/cat-room/treats.png);background-repeat:no-repeat;background-size:200% 100%;width:48px;height:48px;position:fixed;transform:translate(-50%,-50%)}.has-treat .bedroom-cat .cat-head{transform:translateY(-22px)}@media (width<=700px){.door-hall .door-scene.door-scene-with-nook{grid-template-rows:minmax(0,1fr) minmax(0,1fr);grid-template-columns:1fr .65fr 1fr;gap:10px;min-height:0}.door-scene-with-nook>.office-room{grid-area:1/1/auto/3}.door-scene-with-nook>.making-room{grid-area:1/3}.door-scene-with-nook>.photo-room{grid-area:2/1}.door-hall .door-scene-with-nook>.hall-yard{grid-area:2/3;min-height:0;padding:10px}.bedroom-nook{grid-area:2/2;height:155px;padding-bottom:0}.door-hall .bedroom-nook .bedroom-room{width:90px}.door-hall .bedroom-nook .bedroom-door{width:49px;height:67px;top:18px;left:0}.door-hall .bedroom-nook .door-cat{left:40px;transform:scale(.36)}.door-hall .bedroom-nook .bedroom-room strong{font-size:12px;left:0}.cat-treat{width:32px;height:36px}.door-hall-hero .door-scene-with-nook>.hall-room>.hall-door{width:min(100%,125px);max-height:min(22vh,180px)}}.bedroom-cat .cat-body{transform-origin:bottom;transition:transform .35s}.bedroom-cat .cat-head{transition:transform .35s}.bedroom-cat .cat-tail{transform-origin:100% 100%;transition:transform .35s}.bedroom-room:not(.carrying-food):hover .bedroom-cat .cat-body,.bedroom-room:not(.carrying-food):focus-visible .bedroom-cat .cat-body,.bedroom-room.is-curious .cat-body{transform:scaleY(1.32)scaleX(.87)}.bedroom-room:not(.carrying-food):hover .bedroom-cat .cat-head,.bedroom-room:not(.carrying-food):focus-visible .bedroom-cat .cat-head,.bedroom-room.is-curious .cat-head{transform:translateY(-22px)}.bedroom-room:not(.carrying-food):hover .bedroom-cat .cat-tail,.bedroom-room:not(.carrying-food):focus-visible .bedroom-cat .cat-tail{transform:rotate(-18deg)translateY(-6px)}.bedroom-room.is-curious .cat-tail{animation:.55s ease-in-out infinite alternate happy-cat-tail}@keyframes happy-cat-tail{0%{transform:rotate(-28deg)translateY(-10px)}to{transform:rotate(8deg)translateY(-10px)}}.door-hall .bedroom-nook{justify-content:end;height:100%;min-height:275px;padding-bottom:12px}.bedroom-nook .cat-treats{aspect-ratio:1.5;isolation:isolate;background:url(/cat-room/pantry-shelf.png) 50%/100% 100% no-repeat;width:min(100%,160px);padding:10% 8% 8%;position:absolute;bottom:185px}.cat-treats>div{grid-template-rows:1fr 1fr;grid-template-columns:repeat(3,minmax(0,1fr));row-gap:8%;display:grid;position:absolute;inset:0 8% 25%}.cat-treats .cat-treat{aspect-ratio:1;border-radius:4px;width:100%;min-width:0;height:100%;padding:0}.cat-treat-ghost{background-image:url(/cat-room/pantry-foods.png);background-size:300% 200%;background-position:var(--food-x) var(--food-y)}.cat-treat-ghost.treat-bread{background-position:var(--food-x) var(--food-y)}@media (width<=700px){.door-hall .bedroom-nook{min-height:230px;padding-bottom:0}.bedroom-nook .cat-treats{width:100%;padding:10% 7% 7%;bottom:155px}}.bedroom-visit{color:#302a25;background:0 0;border:0;width:100vw;max-width:none;height:100dvh;max-height:none;margin:0;padding:0;position:fixed;inset:0;overflow:hidden}.bedroom-visit::backdrop{background:0 0}.bedroom-wash{background:#f4eadb;animation:2.2s both bedroom-wash-in;position:absolute;inset:0}.cat-swallow{left:calc(var(--cat-x) - 30px);top:calc(var(--cat-y) - 39px);transform-origin:50% 70%;pointer-events:none;width:60px;height:55px;animation:2.2s cubic-bezier(.55,.05,.32,1) both cat-swallow-room;position:absolute}.cat-swallow .cat-head{background:#1b1d1a;bottom:0;left:0}.cat-swallow .cat-head>span.cat-open-mouth{background:#050505;border-radius:50%;width:16px;height:3px;animation:2.2s both cat-mouth-open;top:33px;left:22px;right:auto}.bedroom-welcome{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:35px;min-height:100%;padding:30px;display:flex;position:relative}.bedroom-welcome h3{letter-spacing:-.04em;margin:0;font-family:Georgia,Times New Roman,serif;font-size:clamp(42px,7vw,100px);font-weight:400;line-height:1.1}.bedroom-welcome button{min-height:44px;font:inherit;color:inherit;cursor:pointer;background:0 0;border:0;border-bottom:1px solid;padding:12px 4px;font-size:14px}.bedroom-welcome button:focus-visible{outline-offset:6px;outline:2px solid #66503e}.is-swallow .bedroom-welcome{opacity:0;pointer-events:none}.is-room .bedroom-welcome{animation:.6s both bedroom-words-in}.is-room .bedroom-wash{opacity:1;animation:none}@keyframes cat-mouth-open{0%{transform:scale(1)}20%,to{transform:scale(2.3,12)}}@keyframes cat-swallow-room{0%,12%{opacity:1;transform:scale(1)}62%{opacity:1;transform:scale(110)}to{opacity:0;transform:scale(160)}}@keyframes bedroom-wash-in{0%,20%{opacity:0}65%,to{opacity:1}}@keyframes bedroom-words-in{0%{opacity:0;transform:translateY(8px)}to{opacity:1;transform:none}}@media (prefers-reduced-motion:reduce){.bedroom-cat *{transition:none!important;animation:none!important}.cat-swallow{display:none}.bedroom-wash,.is-room .bedroom-welcome{animation:none}.bedroom-room.is-curious .cat-tail{transform:rotate(-20deg)translateY(-10px)}}
