.start-screen{position:fixed;top:0;right:0;bottom:0;left:0;z-index:100;display:flex;flex-direction:column;align-items:center;justify-content:center;background:linear-gradient(180deg,#fff9e8,#e8f5e0);gap:16px}.start-screen h1{font-size:2.5rem;color:#5d4037}.start-screen .subtitle{color:#8b7355;margin-bottom:24px}.start-screen input{padding:12px 20px;border:2px solid #e89b9b;border-radius:24px;font-size:1rem;font-family:inherit;width:240px;text-align:center}.start-screen button{margin-top:16px;padding:14px 48px;background:#a9c69f;border:none;border-radius:28px;color:#5d4037;font-size:1.1rem;font-family:inherit;cursor:pointer}.start-screen button:hover{background:#95b88b}.hud{position:absolute;top:12px;left:12px;right:12px;display:flex;justify-content:space-between;pointer-events:none}.hud-left,.hud-right{display:flex;gap:8px;pointer-events:auto}.stat-panel{background:#fff9e8eb;border:2px solid #e89b9b;border-radius:16px;padding:8px 14px;display:flex;align-items:center;gap:8px}.icon-img{width:28px;height:28px;object-fit:contain}.icon-img.small{width:22px;height:22px}.hud-btn img{width:28px;height:28px;object-fit:contain}.stat-panel.coins .value{font-weight:700;color:#5d4037}.stat-panel.popularity .label{font-size:.75rem;color:#8b7355}.stat-panel.popularity .stars{color:#f4c430;letter-spacing:2px}.hud-btn{width:44px;height:44px;border:2px solid #e89b9b;border-radius:12px;background:#fff9e8eb;font-size:1.2rem;cursor:pointer}.hud-btn:hover{background:#fff;transform:scale(1.05)}.feedback-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:50;background:#5d403759;-webkit-backdrop-filter:blur(4px);backdrop-filter:blur(4px);display:flex;align-items:center;justify-content:center}.feedback-modal{background:#fff9e8;border:3px solid #e89b9b;border-radius:24px;padding:32px 40px;max-width:420px;text-align:center;box-shadow:0 8px 32px #00000026}.feedback-modal .ribbon{background:#e89b9b;color:#fff;padding:8px 24px;border-radius:20px;margin:-48px auto 20px;width:fit-content;font-weight:700}.feedback-body{display:flex;align-items:center;gap:16px;margin-bottom:24px}.bear-char-img{width:120px;height:auto;object-fit:contain}.speech-bubble{background:#fff;border-radius:16px;padding:16px;flex:1;text-align:left}.grade-badge{display:inline-block;background:#a9c69f;padding:4px 12px;border-radius:12px;margin-top:8px;font-weight:700}.secret-hint{color:#e89b9b;font-size:.9rem;margin-top:4px}.coins-earned{color:#f4c430;font-weight:700;margin-top:8px}.yay-btn{background:#a9c69f;border:none;border-radius:28px;padding:12px 40px;font-size:1.1rem;font-family:inherit;color:#5d4037;cursor:pointer}.yay-btn:hover{background:#95b88b}.journal-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#0006;display:flex;align-items:center;justify-content:center}.journal-book{background:linear-gradient(135deg,#7d9564,#5a7348);border-radius:16px;padding:24px;max-width:700px;width:90%;color:#fff9e8}.journal-book h2{text-align:center;margin-bottom:16px}.journal-pages{display:grid;grid-template-columns:1fr 1fr;gap:16px}.page{background:#fff9e8;color:#5d4037;border-radius:12px;padding:16px;min-height:280px}.page h3{font-size:.95rem;margin-bottom:12px;border-bottom:2px dashed #e89b9b;padding-bottom:8px}.recipe-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:8px}.recipe-card{border-radius:8px;padding:12px;text-align:center;font-size:.85rem}.recipe-card.unlocked{background:#e8f5e0;border:2px solid #a9c69f}.recipe-card.locked{background:#f0ebe0;border:2px dashed #ccc}.recipe-card .silhouette{font-size:2rem;opacity:.4;display:block}.thumb-wrap{position:relative;min-height:64px;display:flex;align-items:center;justify-content:center}.recipe-thumb{width:64px;height:64px;object-fit:contain}.emoji-fallback.hidden{display:none}.emoji-fallback:not(.hidden){font-size:2rem}.page .hint{font-size:.75rem;color:#8b7355;margin-top:12px;text-align:center}.journal-book .close-btn{display:block;margin:16px auto 0;padding:10px 32px;background:#fff9e8;border:none;border-radius:20px;color:#5d4037;font-family:inherit;cursor:pointer}.decorate-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#f5f2e6;display:flex;flex-direction:column}.decorate-header{display:flex;align-items:center;gap:16px;padding:12px 20px;background:#fff9e8;border-bottom:2px solid #e89b9b}.decorate-header h2{flex:1;color:#5d4037}.complete-btn{background:#7d9564;color:#fff;border:none;padding:10px 24px;border-radius:20px;font-family:inherit;cursor:pointer}.close-link{background:none;border:none;color:#8b7355;cursor:pointer;font-family:inherit}.decorate-main{flex:1;display:flex;padding:16px;gap:16px;overflow:hidden}.side-tools{display:flex;flex-direction:column;gap:8px}.side-tools button{padding:8px 12px;border:2px solid #e89b9b;border-radius:8px;background:#fff9e8;font-family:inherit;cursor:pointer}.room-grid{flex:1;display:grid;grid-template-columns:repeat(8,1fr);grid-template-rows:repeat(8,1fr);gap:2px;max-width:480px;max-height:480px;margin:auto;background-color:#e8dcc8;background-size:cover;border-radius:8px;padding:4px}.placed-furniture,.furniture-thumb{width:36px;height:36px;object-fit:contain}.room-grid.show-grid .cell{border:1px dashed rgba(125,149,100,.4)}.cell{background:#fff9e8;border:none;border-radius:4px;cursor:pointer;font-size:1.2rem;min-height:48px}.cell.occupied{background:#a9c69f}.furniture-bar{padding:12px 20px;background:#fff9e8;border-top:2px solid #e89b9b;max-height:160px;overflow-y:auto}.category-group h4{font-size:.8rem;color:#8b7355;margin-bottom:8px}.category-group .items{display:flex;gap:8px;flex-wrap:wrap;margin-bottom:12px}.furniture-item{display:flex;flex-direction:column;align-items:center;padding:8px;border:2px solid #e8d4c4;border-radius:8px;background:#fff;cursor:pointer;font-size:.75rem;min-width:72px}.furniture-item.selected{border-color:#a9c69f;background:#e8f5e0}.furniture-item .price{color:#f4c430}.letters-overlay{position:fixed;top:0;right:0;bottom:0;left:0;z-index:40;background:#00000059;display:flex;align-items:center;justify-content:center}.letters-panel{background:#fff9e8;border:3px solid #e89b9b;border-radius:16px;padding:24px;max-width:480px;width:90%;max-height:70vh;overflow-y:auto}.letters-panel h2{margin-bottom:16px;color:#5d4037}.letters-panel ul{list-style:none}.letters-panel li{background:#fff;border-radius:12px;padding:12px;margin-bottom:8px;border-left:4px solid #e89b9b}.letters-panel li.unread{border-left-color:#a9c69f;background:#f5faf3}.letters-panel .empty{color:#8b7355;text-align:center;padding:24px}.letters-panel button{display:block;margin:16px auto 0;padding:10px 32px;background:#a9c69f;border:none;border-radius:20px;font-family:inherit;cursor:pointer}:root{--cream: #fff9e8;--pink: #e89b9b;--sage: #a9c69f;--brown: #5d4037;--wood: #8b5e3c;--gold: #f4c430}*{box-sizing:border-box;margin:0;padding:0}body{font-family:Varela Round,PingFang SC,sans-serif;background:var(--cream);color:var(--brown);overflow:hidden}#root{width:100vw;height:100vh}.game-shell{position:relative;width:100%;height:100%}#phaser-container{width:100%;height:100%}.ui-overlay{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none;z-index:10}.ui-overlay>*{pointer-events:auto}.season-badge{position:absolute;top:12px;left:50%;transform:translate(-50%);background:#a9c69fe6;padding:4px 16px;border-radius:12px;font-size:.75rem;pointer-events:none}
