html,body{margin:0;min-height:100%;background:#24485a}body{display:grid;place-items:center;overflow:hidden}#game{width:100vw;height:100vh;background:#24485a}canvas{display:block;image-rendering:pixelated}.auth-lobby{position:fixed;z-index:10;width:min(92vw,420px);box-sizing:border-box;padding:28px;color:#f4edcf;background:#493b46;border:3px solid #f0c66d;box-shadow:8px 8px #24485a;font-family:monospace}.auth-lobby h1{margin:0 0 8px;color:#f0c66d;font-size:24px}.auth-lobby p{line-height:1.5}.auth-lobby label{display:grid;gap:5px;margin:12px 0}.auth-lobby input,.auth-lobby button{box-sizing:border-box;width:100%;min-height:38px;padding:8px 10px;font:inherit;color:#493b46;background:#f4edcf;border:2px solid #82b5c0}.auth-lobby button{margin-top:10px;color:#f4edcf;background:#4d9e9a;cursor:pointer}.auth-lobby button.secondary{background:#7d8794}.auth-lobby button:disabled{opacity:.55;cursor:wait}.auth-status{min-height:20px;color:#f0c66d}.farm-list{display:grid;gap:8px}.social-panel{position:fixed;z-index:11;top:18px;right:18px;width:min(88vw,360px);box-sizing:border-box;padding:18px;color:#f4edcf;background:#493b46;border:2px solid #f0c66d;box-shadow:5px 5px #24485a;font-family:monospace}.social-panel h2,.social-panel h3{margin:0 0 10px;color:#f0c66d}.social-panel p{line-height:1.45}.social-panel button{margin:4px 0;padding:6px 9px;font:inherit;color:#f4edcf;background:#4d9e9a;border:1px solid #82b5c0;cursor:pointer}.social-panel button.secondary{background:#7d8794}.social-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:8px 0}.shop-panel{position:fixed;z-index:11;top:18px;left:18px;width:min(88vw,390px);box-sizing:border-box;padding:18px;color:#f4edcf;background:#493b46;border:2px solid #f0c66d;box-shadow:5px 5px #24485a;font-family:monospace}.animal-panel{position:fixed;top:68px;right:18px;width:300px;padding:14px;color:#f4edcf;background:#24485a;border:2px solid #b9d49b;box-shadow:4px 4px #172f3c;font-family:monospace;z-index:20}.animal-panel h3{margin:0 0 6px;color:#f4c982}.animal-panel p{margin:0 0 10px;font-size:12px;color:#c7dfc2}.animal-roster{display:grid;gap:6px;margin-bottom:10px}.animal-row,.animal-adoption-row{padding:7px;border:1px solid #527e83;background:#315c69;font-size:12px}.animal-adoption-row{display:flex;align-items:center;justify-content:space-between;gap:8px;margin-top:6px}.animal-adoption-row button{padding:4px 8px;color:#203a46;background:#f4c982;border:1px solid #f8e2ae;cursor:pointer;font-family:monospace}.animal-adoption-row button:disabled{opacity:.55;cursor:wait}.trade-panel{position:fixed;top:68px;left:18px;width:300px;padding:14px;color:#f4edcf;background:#493b46;border:2px solid #82b5c0;box-shadow:4px 4px #24485a;font-family:monospace;z-index:20}.trade-panel h3{margin:0 0 6px;color:#f0c66d}.trade-panel p{line-height:1.4;font-size:12px}.trade-panel button{display:block;margin:6px 0;padding:6px 9px;font:inherit;color:#f4edcf;background:#4d9e9a;border:1px solid #82b5c0;cursor:pointer}.trade-panel button:disabled{opacity:.55;cursor:wait}.shop-panel h2{margin:0 0 8px;color:#f0c66d}.shop-panel p{line-height:1.45}.shop-row{display:flex;align-items:center;justify-content:space-between;gap:10px;margin:8px 0}.shop-panel button{margin:4px 0;padding:6px 9px;font:inherit;color:#f4edcf;background:#4d9e9a;border:1px solid #82b5c0;cursor:pointer}.shop-panel button.secondary{background:#7d8794}.shop-panel button:disabled{opacity:.55;cursor:wait}.shop-status{min-height:20px;color:#f0c66d}.collection-panel{position:fixed;z-index:11;top:18px;left:18px;width:min(88vw,360px);box-sizing:border-box;padding:18px;color:#f4edcf;background:#493b46;border:2px solid #82b5c0;box-shadow:5px 5px #24485a;font-family:monospace}.collection-panel h2{margin:0 0 8px;color:#f0c66d}.collection-panel p{line-height:1.45}.collection-row{display:flex;align-items:center;gap:10px;min-height:54px;margin:6px 0}.collection-icon{display:inline-block;flex:0 0 56px;width:56px;height:48px;background-image:url(/assets/mosslight-content-atlas-v1.png);background-repeat:no-repeat;background-size:224px 180px;image-rendering:pixelated}.collection-panel button{margin:4px 0;padding:6px 9px;font:inherit;color:#f4edcf;background:#4d9e9a;border:1px solid #82b5c0;cursor:pointer}.collection-panel button.secondary{background:#7d8794}
