:root{--bg-color:#5c94fc;--text-color:#fff;--primary-color:#e52521;--secondary-color:#43b047}*{box-sizing:border-box;touch-action:none;margin:0;padding:0}body{color:var(--text-color);background-color:#000;flex-direction:column;justify-content:center;align-items:center;width:100vw;height:100vh;font-family:Courier New,Courier,monospace;display:flex;overflow:hidden}#app-wrapper{flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}#game-container{background-color:#000;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:relative}#game-canvas{object-fit:contain;width:100%;height:100%;image-rendering:pixelated;display:block}.overlay{z-index:10;background:#000000d9;flex-direction:column;justify-content:center;align-items:center;width:100%;height:100%;display:flex;position:fixed;top:0;left:0}.overlay h1.title-line3{color:var(--primary-color);text-shadow:4px 4px #fff;letter-spacing:4px;margin-bottom:2.5rem;font-size:4rem}#start-menu{background:#222}.title-container{flex-direction:column;align-items:center;margin-bottom:2rem;display:flex}.faces-container{gap:30px;margin-bottom:1.5rem;display:flex}.face-wrapper{justify-content:center;align-items:center;width:120px;height:120px;display:flex}.face-wrapper canvas{width:100%;height:100%;image-rendering:pixelated}.title-line1{color:#fff;text-shadow:3px 3px #000;letter-spacing:2px;margin-bottom:.5rem;font-size:2.5rem}.title-line2{color:var(--secondary-color);text-shadow:2px 2px #000;letter-spacing:4px;margin-bottom:1rem;font-size:1.8rem;font-style:italic}.overlay h2{color:var(--text-color);text-shadow:2px 2px #000;text-align:center;margin-bottom:2rem;padding:0 20px;font-size:2.5rem}.overlay button{background:var(--text-color);color:#000;border:4px solid var(--primary-color);cursor:pointer;border-radius:8px;margin:10px;padding:15px 40px;font-family:inherit;font-size:1.5rem;font-weight:700;transition:transform .1s,background .2s}.overlay button:hover{background:var(--primary-color);color:#fff;transform:scale(1.1)}.password-container{flex-direction:column;align-items:center;margin-bottom:2rem;display:flex}#game-password{border:3px solid var(--text-color);color:var(--text-color);text-align:center;background:#00000080;border-radius:8px;outline:none;padding:10px 15px;font-family:inherit;font-size:1.5rem;transition:border-color .3s}#room-name-input{border:4px solid var(--text-color);color:var(--text-color);text-align:center;background:#00000080;border-radius:12px;outline:none;margin-bottom:10px;padding:15px 25px;font-family:inherit;font-size:2rem;transition:border-color .3s}#game-password:focus,#room-name-input:focus{border-color:var(--primary-color)}.error-text{color:var(--primary-color);text-shadow:1px 1px #000;margin-top:10px;font-weight:700}#btn-2p{border-color:var(--secondary-color)}#btn-2p:hover{background:var(--secondary-color)}.hidden{display:none!important}#touch-controls{z-index:5;pointer-events:none;justify-content:space-between;width:100%;padding:10px 30px;display:flex;position:absolute;bottom:20px;left:0}#touch-controls button{pointer-events:auto;color:#fff;-webkit-user-select:none;user-select:none;background:#ffffff26;border:2px solid #fffc;border-radius:50%;width:75px;height:75px;font-size:2rem;font-weight:700}.d-pad{gap:15px;display:flex}#touch-controls .action-buttons button{border-radius:50%;width:80px;height:80px;font-size:1.2rem}#touch-controls button:active{background:#ffffffb3}@media (pointer:fine){#touch-controls{display:none!important}}#profile-selection,#save-action-menu{background:#222}#profiles-list-container,#rooms-list-container{border:2px solid var(--text-color);background:#0000004d;border-radius:8px;width:80%;max-width:400px;height:200px;margin-bottom:20px;overflow-y:auto}#profiles-list,#rooms-list{margin:0;padding:0;list-style:none}#profiles-list li,#rooms-list li{cursor:pointer;border-bottom:1px solid #fff3;justify-content:space-between;padding:15px;font-size:1.2rem;transition:background .2s;display:flex}#profiles-list li:hover,#rooms-list li:hover{background:#ffffff1a}.new-profile-container{gap:10px;margin-bottom:20px;display:flex}#new-profile-name{border:2px solid var(--text-color);color:#fff;background:#00000080;border-radius:8px;outline:none;width:200px;padding:10px;font-family:inherit;font-size:1.2rem}#save-info-text{text-align:center;margin-bottom:30px;font-size:1.5rem}
