*{box-sizing:border-box;margin:0;padding:0;font-family:Fira Code,Courier New,Courier,monospace}body{background-color:#f7f7f7;color:#333;display:flex;justify-content:center;align-items:center;min-height:100vh;overflow:hidden;user-select:none;-webkit-user-select:none}.game-container{width:100%;max-width:900px;padding:20px;display:flex;flex-direction:column;align-items:center}.screen{width:100%;display:flex;flex-direction:column;align-items:center}.hidden{display:none!important}.pixel-title{font-size:2.2rem;font-weight:700;text-transform:uppercase;letter-spacing:2px;margin-bottom:25px;text-align:center;border-bottom:4px solid #333;padding-bottom:5px}.text-red{color:#f33;border-bottom-color:#f33}.lobby-card{background:#fff;border:4px solid #333333;padding:25px;width:100%;max-width:480px;margin-bottom:20px;box-shadow:6px 6px #333}.form-group{margin-bottom:20px}label{display:block;font-size:.9rem;font-weight:700;margin-bottom:8px;text-transform:uppercase}input[type=text]{width:100%;padding:10px;border:3px solid #333333;font-size:1rem;font-weight:700;outline:none;text-transform:uppercase}input[type=text]:focus,.select-retro:focus{background-color:#efefef}.select-retro{width:100%;padding:10px;border:3px solid #333333;font-size:1rem;font-weight:700;outline:none;background-color:#fff;cursor:pointer;border-radius:0}.btn{width:100%;padding:12px;font-size:1rem;font-weight:700;color:#fff;background-color:#333;border:3px solid #333333;cursor:pointer;text-transform:uppercase;box-shadow:4px 4px #888;transition:all .1s ease}.btn:hover{background-color:#555}.btn:active{transform:translate(2px,2px);box-shadow:2px 2px #888}.divider{text-align:center;font-size:.8rem;font-weight:700;margin:15px 0;position:relative}.divider:before,.divider:after{content:"";position:absolute;top:50%;width:35%;height:2px;background-color:#333}.divider:before{left:0}.divider:after{right:0}.join-group{display:flex;gap:10px}.join-group input{width:60%}.join-group button{width:40%}.invite-link-container{margin:15px 0}.invite-link{background-color:#efefef;border:2px dashed #333333;padding:8px;font-size:.8rem;font-weight:700;cursor:pointer;word-break:break-all;text-align:center}.invite-link:hover{background-color:#e0e0e0}.players-list-container{margin:15px 0}#players-list{margin-top:10px;display:flex;flex-direction:column;gap:8px}.lobby-player-item{padding:8px 12px;background-color:#f7f7f7;border:2px solid #333333;font-weight:700;font-size:.9rem;display:flex;justify-content:space-between}.player-badge{background-color:#333;color:#fff;padding:1px 6px;font-size:.7rem}.wait-text{font-size:.8rem;font-style:italic;text-align:center;margin-top:10px}.canvas-wrapper{position:relative;border:4px solid #333333;box-shadow:8px 8px #333;background-color:#fff;max-width:100%}#game-canvas{display:block;width:100%;height:auto}.countdown{position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);font-size:6rem;font-weight:700;color:#333;animation:pulse 1s infinite alternate}@keyframes pulse{0%{transform:translate(-50%,-50%) scale(.9)}to{transform:translate(-50%,-50%) scale(1.1)}}.modal{position:fixed;top:0;left:0;width:100%;height:100%;background-color:#0009;display:flex;justify-content:center;align-items:center;z-index:100}.modal-content{background:#fff;border:4px solid #333333;padding:30px;width:90%;max-width:450px;box-shadow:8px 8px #333;text-align:center}#final-leaderboard{margin:20px 0;display:flex;flex-direction:column;gap:10px}.leaderboard-row{display:flex;justify-content:space-between;padding:10px;border:2px solid #333333;font-weight:700}.leaderboard-row.winner{background-color:#333;color:#fff}@media (max-width: 600px){.pixel-title{font-size:1.6rem}.lobby-card{padding:15px}.join-group{flex-direction:column}.join-group input,.join-group button{width:100%}}
