/* Found objects keep the scale of a tiny home beneath a bookshelf. */
.room-button{position:absolute;z-index:7;right:18px;top:17px;display:flex;align-items:center;gap:6px;min-height:44px;padding:8px 13px;border:1px solid #ffffff75;border-radius:24px;background:#fcf9e9e8;color:#435a46;font-size:13px;box-shadow:0 2px 10px #3f372519;cursor:pointer}
.room-button svg{width:17px;height:17px}.room-button:hover{background:#fffdf3}
.room-props{position:absolute;inset:0;z-index:2;pointer-events:none}
.room-prop{position:absolute;bottom:5%;width:18%;height:25%;min-width:44px;min-height:44px;padding:0;border:0;background:transparent;transform:translateX(-50%);pointer-events:auto;cursor:pointer;filter:drop-shadow(0 5px 3px #3f2f2735)}
.room-prop[hidden]{display:none}.room-prop:disabled{cursor:default;opacity:1}
.room-prop img{width:100%;height:100%;object-fit:contain;pointer-events:none;transform-origin:45% 85%}
.prop-bed{width:30%;height:33%;bottom:1%}.prop-yarn{width:15%;height:20%;bottom:5%}.prop-lantern{width:18%;height:32%;bottom:5%}
.prop-label{position:absolute;left:50%;bottom:90%;transform:translateX(-50%);font-size:12px;line-height:1.6;white-space:nowrap;color:#3c5548;background:#fffbedf2;border-radius:7px;padding:4px 8px;opacity:0;pointer-events:none}
.room-prop:focus-visible .prop-label,.room-prop:hover:not(:disabled) .prop-label{opacity:1}
.scene.item-yarn .prop-yarn img{animation:roll-yarn 1.4s ease-in-out 3;animation-delay:2s}
.scene.item-lantern .prop-lantern img{animation:lantern-shimmer 2s ease-in-out infinite}
.scene.has-lantern[data-time="night"] .ambient-glow{background:radial-gradient(ellipse at var(--lantern-x,80%) 80%,#ffd17e68,transparent 48%)}
.scene[data-time="night"] .prop-bed,.scene[data-time="night"] .prop-yarn,.scene[data-time="night"] .prop-piano,.scene[data-time="night"] .prop-teaser,.scene[data-time="night"] .prop-mouse,.scene[data-time="night"] .prop-tambourine{filter:brightness(.68) drop-shadow(0 5px 3px #17213760)}
/* Perfect-score rewards: the toy piano bounces with each note, the foxtail sways under the cat's paws. */
.prop-piano{width:20%;height:26%;bottom:4%}.prop-teaser{width:13%;height:30%;bottom:4%}
.prop-teaser img{transform-origin:50% 92%}
.scene.item-piano .prop-piano img{animation:piano-play .55s ease-in-out 6;animation-delay:1.4s}
.scene.item-teaser .prop-teaser img{animation:teaser-sway .5s ease-in-out 7;animation-delay:.8s}.prop-mouse{width:20%;height:27%;bottom:3%}.prop-tambourine{width:18%;height:22%;bottom:4%}.prop-tambourine img{transform-origin:50% 90%}.scene.item-tambourine .prop-tambourine img{animation:tambourine-shake .22s ease-in-out 14;animation-delay:.8s}@keyframes tambourine-shake{50%{transform:rotate(-5deg) translateY(-2px)}}.prop-mouse img{transform-origin:50% 95%}.scene.item-mouse .prop-mouse img{animation:mouse-prop-rock .32s ease-in-out 12;animation-delay:.9s}@keyframes mouse-prop-rock{50%{transform:rotate(-6deg) translateY(-3px)}}
@keyframes piano-play{50%{transform:translateY(-2px) scale(1.02,.98)}}
@keyframes teaser-sway{25%{transform:rotate(-10deg)}75%{transform:rotate(9deg)}}
.scene[data-time="night"] .prop-lantern{filter:drop-shadow(0 0 12px #ffcf8580)}
.room-goal{display:flex;align-items:center;justify-content:space-between;gap:12px;padding:0 26px 18px;color:#7b765f;font-size:12px;line-height:1.7}.room-goal>span:last-child{white-space:nowrap}
#room-dialog{max-width:520px}#room-dialog h2{font-size:25px;line-height:1.5}
.room-intro{font-size:14px!important;line-height:1.9;margin-bottom:20px;color:var(--muted)}
.room-collection{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:10px}
.room-choice{display:flex;flex-direction:column;align-items:center;border:1px solid #e4decb;border-radius:14px;padding:6px 5px 13px;background:#f3eddf;color:#3e5144;min-height:150px;cursor:pointer}
.room-choice[aria-pressed="true"]{background:#edf0df;border-color:#718b5c;box-shadow:inset 0 0 0 1px #718b5c}
.room-choice img{width:100%;height:91px;object-fit:contain;pointer-events:none}.room-choice b{font-size:14px;line-height:1.6;font-weight:600}.room-choice small{font-size:12px;color:#7e7968;margin-top:4px}.room-choice.locked img{filter:grayscale(.55);opacity:.56}
.room-detail{padding-top:22px}.room-detail h3{font-family:"Yu Mincho",serif;font-size:21px;font-weight:600;line-height:1.6;margin:0 0 8px}.room-detail p{font-size:14px;line-height:1.9;margin:0 0 10px}.room-detail .room-hint{color:#567048;font-size:13px}
.room-detail .room-placement-note{font-size:12px;color:#777a6c;border-top:1px solid var(--line);padding-top:14px;margin-top:17px}
.room-place-buttons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}.room-place-buttons button{min-height:44px;border:1px solid #bfccb3;border-radius:9px;background:#fffdf5;color:#425c42;font-size:14px;cursor:pointer}.room-place-buttons button[aria-pressed="true"]{background:#e5ecd9;border-color:#778c65}
.room-place-buttons button:disabled,.room-put-away:disabled{opacity:.45;cursor:default}
.room-put-away{display:block;margin:7px 0 0 auto;border:0;background:transparent;color:#727869;text-decoration:underline;text-underline-offset:4px;min-height:44px;padding:8px 4px;font-size:13px;cursor:pointer}
.room-status{font-size:13px!important;color:#456b4a;line-height:1.7;min-height:1.7em;margin:0 0 16px!important}
@keyframes roll-yarn{0%,100%{transform:translateX(-4px) rotate(-12deg)}50%{transform:translateX(6px) rotate(15deg)}}
@keyframes lantern-shimmer{0%,100%{filter:brightness(1)}50%{filter:brightness(1.18)}}
@media(max-width:760px){.room-button{top:12px;right:12px;font-size:12px;padding:6px 10px}.room-goal{padding:0 17px 14px;gap:8px;font-size:11px}.prop-bed{width:33%;height:30%;bottom:2%}.prop-lantern{height:29%}.room-prop{min-width:44px}#room-dialog{padding:26px 20px}#room-dialog h2{font-size:22px}.room-choice{min-height:130px}.room-choice img{height:79px}.room-choice b{font-size:13px}.room-collection{gap:7px}}
@media(max-width:360px){#room-dialog{padding:26px 16px}.room-button{right:9px}.room-choice b{font-size:12px}.room-choice small{font-size:11px}.room-goal{font-size:11px;padding-inline:13px}.room-choice img{height:72px}}
@media(prefers-reduced-motion:reduce){.room-prop img{animation:none!important}}
.scene-tools{position:absolute;z-index:7;right:18px;top:17px;display:flex;gap:8px}.scene-tools .room-button{position:relative;top:auto;right:auto}.dress-new{position:absolute;top:4px;right:6px;width:8px;height:8px;border-radius:50%;background:#e0685a;box-shadow:0 0 0 2px #fcf9e9}.dress-new[hidden]{display:none}#dress-dialog{max-width:520px;overflow:auto}#dress-dialog h2{font-size:25px;margin-bottom:10px}.dress-preview{display:flex;justify-content:center;align-items:flex-end;gap:4%;height:150px;margin:0 0 12px;border-radius:14px;background:linear-gradient(#f6efdc,#eee4cc)}.dress-preview img{height:88%;width:auto;object-fit:contain}.dress-preview img+img{height:70%;filter:drop-shadow(0 0 8px #fff0c2)}.dress-tabs{display:grid;grid-template-columns:1fr 1fr;gap:6px;margin-bottom:12px}.dress-tabs button{min-height:44px;border:1px solid #cbd2bd;border-radius:12px;background:#fffdf4;color:#435a46;font-size:15px;font-weight:600}.dress-tabs button[aria-selected="true"]{background:#285c50;border-color:#285c50;color:#fffdf4}.dress-point h3{font-size:14px;color:#637366;margin:4px 0 6px}.dress-choices{display:grid;grid-template-columns:repeat(auto-fill,minmax(96px,1fr));gap:8px;margin-bottom:10px}.dress-choice{position:relative;display:grid;justify-items:center;align-content:start;gap:3px;min-height:112px;padding:8px 6px;border:1px solid #d8dccb;border-radius:12px;background:#fffdf6;color:#3b4a3f}.dress-choice img{height:50px;width:56px;object-fit:contain}.dress-choice b{font-size:12px;line-height:1.35;font-weight:600}.dress-choice small{font-size:11px;line-height:1.35;color:#7a8578}.dress-choice[aria-pressed="true"]{border:2px solid #285c50;background:#eef5ee}.dress-choice.locked img{filter:brightness(0);opacity:.2}.dress-choice.locked b{color:#9aa296}.dress-choice .dress-none{display:grid;place-items:center;height:50px;font-size:24px;color:#9aa296}.dress-choice .dress-badge{position:absolute;top:5px;right:6px;font-size:10px;font-weight:700;color:#e0685a;font-style:normal}.dress-detail{min-height:3.2em;font-size:13px!important;line-height:1.7;color:#4b5a4e;margin:2px 0 6px}.dress-count{font-size:12px!important;color:#7a8578;text-align:right;margin-bottom:12px}@media(max-width:760px){.scene-tools{top:12px;right:12px;gap:6px}}@media(max-width:800px){.scene-tools .room-button{font-size:12px;padding:6px 10px}}@media(max-width:420px){.scene-tools .room-button span{position:absolute;width:1px;height:1px;overflow:hidden;clip:rect(0 0 0 0)}.scene-tools .room-button{width:44px;justify-content:center;padding:6px}#dress-dialog{padding:24px 16px}.dress-choices{grid-template-columns:repeat(3,1fr)}}@media(max-width:360px){.scene-tools{right:9px}}
.dress-tabs button{position:relative}.dress-tabs .dress-new{top:6px;right:10px}.yarn-fairy.still-padded{height:calc(32% * 1.1276)}.piano-fairy.still-padded{height:calc(32% * 1.1276)}.memory-fairy.still-padded{height:calc(43% * 1.1276)}.dress-preview img+img.still-padded{height:calc(70% * 1.1276)}
