@import url(https://fonts.googleapis.com/css2?family=Press+Start+2P&display=swap);body{-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;margin:0}code{font-family:Press Start\ 2P,monospace}#root{min-height:100vh}*{box-sizing:border-box;margin:0;padding:0}body{background:linear-gradient(180deg,#1a1a2e,#16213e);color:gold;font-family:Press Start\ 2P,cursive;image-rendering:pixelated;image-rendering:crisp-edges}.App,body{min-height:100vh}.App{padding:20px}.connection-status{align-items:center;background:#000c;border:4px solid #4ecdc4;box-shadow:0 8px 0 #00000080;display:flex;gap:10px;padding:10px 15px;position:fixed;right:20px;top:20px;z-index:1000}.status-indicator{font-size:12px}.status-text{color:#4ecdc4;font-size:10px}.pixel-button{background:gold;border:4px solid #000;box-shadow:0 8px 0 #b8860b,0 12px 20px #00000080;color:#1a1a2e;cursor:pointer;font-family:Press Start\ 2P,cursive;font-size:14px;padding:15px 25px;position:relative;text-transform:uppercase;transition:transform .1s,box-shadow .1s}.pixel-button:hover{background:#ffed4e}.pixel-button:active{box-shadow:0 4px 0 #b8860b,0 6px 10px #00000080;transform:translateY(4px)}.pixel-button:disabled{background:#666;box-shadow:0 8px 0 #333,0 12px 20px #00000080;cursor:not-allowed}.pixel-button.secondary{background:#4ecdc4;box-shadow:0 8px 0 #2c7a7a,0 12px 20px #00000080}.pixel-button.secondary:active{box-shadow:0 4px 0 #2c7a7a,0 6px 10px #00000080}.pixel-button.danger{background:#ff6b6b;box-shadow:0 8px 0 #c92a2a,0 12px 20px #00000080}.pixel-button.danger:active{box-shadow:0 4px 0 #c92a2a,0 6px 10px #00000080}.pixel-button.success{background:#51cf66;box-shadow:0 8px 0 #2f9e44,0 12px 20px #00000080}.pixel-button.success:active{box-shadow:0 4px 0 #2f9e44,0 6px 10px #00000080}.pixel-input{background:#0f0f1e;border:4px solid #4ecdc4;box-shadow:inset 0 4px 8px #00000080;color:gold;font-family:Press Start\ 2P,cursive;font-size:14px;padding:15px;width:100%}.pixel-input:focus{border-color:gold;outline:none}.pixel-input::placeholder{color:#666}.pixel-panel{background:#0f0f1ee6;border:4px solid #4ecdc4;box-shadow:0 8px 0 #00000080,0 12px 30px #000000b3;padding:30px;position:relative}.pixel-panel:before{border:2px solid #ffd70033;bottom:-8px;content:"";left:-8px;pointer-events:none;position:absolute;right:-8px;top:-8px}h1{font-size:32px;margin-bottom:30px;text-align:center;text-shadow:4px 4px 0 #00000080}h1,h2{color:gold}h2{font-size:24px;margin-bottom:20px;text-shadow:3px 3px 0 #00000080}h3{color:#4ecdc4;font-size:16px;margin-bottom:15px}::-webkit-scrollbar{height:16px;width:16px}::-webkit-scrollbar-track{background:#0f0f1e;border:2px solid #4ecdc4}::-webkit-scrollbar-thumb{background:gold;border:2px solid #000}::-webkit-scrollbar-thumb:hover{background:#ffed4e}@keyframes pulse{0%,to{box-shadow:0 0 0 0 #ffd700b3}50%{box-shadow:0 0 0 20px #ffd70000}}@keyframes shake{0%,to{transform:translateX(0)}25%{transform:translateX(-10px) rotate(-5deg)}75%{transform:translateX(10px) rotate(5deg)}}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-10px)}}@keyframes slideIn{0%{opacity:0;transform:translateY(-20px)}to{opacity:1;transform:translateY(0)}}@keyframes punch{0%{transform:scale(1) rotate(0deg)}50%{transform:scale(.7) rotate(20deg)}to{transform:scale(1) rotate(0deg)}}.loading-spinner{animation:spin 1s linear infinite;border:6px solid #4ecdc4;border-radius:0;border-top-color:gold;display:inline-block;height:60px;margin:40px auto;width:60px}@keyframes spin{to{transform:rotate(1turn)}}@media (max-width:768px){h1{font-size:20px}h2{font-size:16px}h3{font-size:12px}.pixel-button{font-size:10px;padding:12px 20px}.pixel-input{font-size:10px;padding:12px}.pixel-panel{padding:20px}.connection-status{font-size:8px;padding:8px 12px}}.text-center{text-align:center}.mb-20{margin-bottom:20px}.mt-20{margin-top:20px}.flex{display:flex}.flex-col{flex-direction:column}.items-center{align-items:center}.justify-center{justify-content:center}.gap-10{gap:10px}.gap-20{gap:20px}.w-full{width:100%}.login-container{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:20px}.login-card{animation:slideIn .5s ease-out;max-width:500px;width:100%}.subtitle{color:#4ecdc4;font-size:12px;margin-bottom:30px;text-align:center}.tab-buttons{display:flex;gap:10px;margin-bottom:30px}.tab-buttons .pixel-button{flex:1 1;font-size:12px;padding:12px}.tab-buttons .pixel-button.active{background:gold;box-shadow:0 8px 0 #b8860b,0 12px 20px #00000080}.guest-form,.login-form{display:flex;flex-direction:column;gap:15px}.info-box{background:#4ecdc41a;border:2px solid #4ecdc4;font-size:9px;line-height:1.6;margin-top:20px;padding:15px}.info-box p{margin:5px 0}@media (max-width:768px){.subtitle{font-size:10px}.info-box{font-size:8px}}.home-container{align-items:center;display:flex;justify-content:center;min-height:100vh;padding:20px}.home-card{animation:slideIn .5s ease-out;max-width:600px;width:100%}.user-info{background:#4ecdc41a;border:2px solid #4ecdc4;margin-bottom:30px;padding:20px;text-align:center}.welcome-text{color:#4ecdc4;font-size:14px;margin-bottom:10px}.username{color:gold}.steam-info{color:#666;font-size:10px;margin-top:10px}.action-section{margin-bottom:30px}.join-form{display:flex;flex-direction:column;gap:15px}.divider{margin:30px 0;position:relative;text-align:center}.divider:after,.divider:before{background:#4ecdc4;content:"";height:2px;position:absolute;top:50%;width:40%}.divider:before{left:0}.divider:after{right:0}.divider span{background:#0f0f1ee6;color:#4ecdc4;font-size:12px;padding:0 15px}.info-section{background:#ffd7000d;border:2px solid gold;padding:20px}.info-section h3{color:gold;font-size:14px;margin-bottom:15px}.steps-list{counter-reset:step-counter;list-style:none;padding-left:0}.steps-list li{color:#4ecdc4;counter-increment:step-counter;font-size:10px;line-height:1.5;margin-bottom:10px;padding-left:30px;position:relative}.steps-list li:before{align-items:center;background:gold;border:2px solid #000;color:#1a1a2e;content:counter(step-counter);display:flex;font-size:10px;font-weight:700;height:20px;justify-content:center;left:0;position:absolute;top:0;width:20px}.error-message{animation:shake .5s;background:#ff6b6b;border:4px solid #c92a2a;color:#fff;font-size:10px;margin-bottom:20px;padding:15px;text-align:center}@media (max-width:768px){.info-section h3,.welcome-text{font-size:12px}.steps-list li{font-size:9px}}.lobby-container{margin:0 auto;max-width:1400px;padding:20px}.lobby-header{align-items:center;display:flex;flex-wrap:wrap;gap:15px;justify-content:space-between;margin-bottom:30px}.lobby-header h1{margin:0}.lobby-content{grid-gap:20px;display:grid;gap:20px;grid-template-columns:400px 1fr;margin-bottom:20px}.participants-section{display:flex;flex-direction:column;gap:20px}.participants-list{display:flex;flex-direction:column;gap:15px;max-height:400px;overflow-y:auto;padding-right:10px}.participant-card{align-items:center;background:#4ecdc41a;border:2px solid #4ecdc4;display:flex;gap:15px;padding:15px;transition:all .3s}.participant-card.punched{animation:punch .3s ease-out}.emoji-avatar{cursor:pointer;font-size:48px;transition:transform .2s;-webkit-user-select:none;user-select:none}.emoji-avatar:hover{transform:scale(1.2)}.emoji-avatar:active{transform:scale(.9)}.participant-info{flex:1 1;font-size:10px}.participant-name{align-items:center;color:gold;display:flex;font-size:12px;gap:10px;margin-bottom:5px}.punch-counter{color:#ff6b6b;font-size:9px}.participant-status{color:#4ecdc4;margin-bottom:3px}.steam-connected{color:#51cf66}.steam-not-connected{color:#ff6b6b}.steam-connected-info,.steam-section{display:flex;flex-direction:column;gap:10px}.steam-connected-info p{color:#51cf66;font-size:10px}.steam-form{animation:slideIn .3s ease-out;display:flex;flex-direction:column;gap:10px}.steam-warning{color:#ff6b6b;font-size:9px;text-align:center}.settings-chat-section{display:flex;flex-direction:column;gap:20px}.chat-panel,.settings-panel{flex:1 1}.setting-item{margin-bottom:20px}.setting-item label{color:#4ecdc4;display:block;font-size:10px;margin-bottom:10px}.pixel-slider{-webkit-appearance:none;background:#0f0f1e;border:2px solid #4ecdc4;height:8px;outline:none;width:100%}.pixel-slider::-webkit-slider-thumb{-webkit-appearance:none;background:gold;border:2px solid #000;cursor:pointer;height:20px;width:20px}.pixel-slider::-moz-range-thumb{background:gold;border:2px solid #000;cursor:pointer;height:20px;width:20px}.pixel-slider:disabled{cursor:not-allowed;opacity:.5}.chat-messages{background:#0000004d;border:2px solid #4ecdc44d;height:300px;margin-bottom:15px;overflow-y:auto;padding:15px}.empty-chat{color:#666;font-size:10px;padding:20px;text-align:center}.chat-message{word-wrap:break-word;font-size:9px;line-height:1.5;margin-bottom:10px}.message-emoji{margin-right:5px}.message-username{color:gold;margin-right:5px}.message-text{color:#4ecdc4}.chat-form{display:flex;gap:10px}.chat-form .pixel-input{flex:1 1}.lobby-footer{margin-top:20px}.loading-overlay,.lobby-footer{display:flex;justify-content:center}.loading-overlay{align-items:center;animation:fadeIn .3s;background:#000000e6;bottom:0;left:0;position:fixed;right:0;top:0;z-index:1000}@keyframes fadeIn{0%{opacity:0}to{opacity:1}}.loading-panel{max-width:400px;text-align:center}.loading-panel h2{margin-bottom:10px;margin-top:20px}.loading-panel p{color:#4ecdc4;font-size:10px}.pixel-button.small{font-size:10px;padding:10px 15px}.pixel-input.small{font-size:10px;padding:10px}@media (max-width:1024px){.lobby-content{grid-template-columns:1fr}.participants-list{max-height:300px}}@media (max-width:768px){.lobby-header{align-items:flex-start;flex-direction:column}.emoji-avatar{font-size:36px}.participant-name{font-size:10px}.chat-messages{height:200px}.chat-message{font-size:8px}}.voting-container{display:flex;flex-direction:column;margin:0 auto;max-width:800px;min-height:100vh;padding:20px}.voting-header{margin-bottom:30px;text-align:center}.voting-header h1{margin-bottom:20px}.progress-info p{color:#4ecdc4;font-size:12px;margin-bottom:10px}.progress-bar{background:#0f0f1e;border:4px solid #4ecdc4;height:20px;overflow:hidden;position:relative;width:100%}.progress-fill{background:gold;height:100%;position:relative;transition:width .3s ease}.progress-fill:after{background:repeating-linear-gradient(45deg,#0000,#0000 10px,#0000001a 0,#0000001a 20px);bottom:0;content:"";left:0;position:absolute;right:0;top:0}.voting-content{align-items:center;display:flex;flex:1 1;flex-direction:column}.game-card{cursor:grab;margin-bottom:30px;max-width:600px;transition:transform .3s ease,opacity .3s ease;-webkit-user-select:none;user-select:none;width:100%}.game-card:active{cursor:grabbing}.game-card.swipe-yay{animation:swipeRight .3s ease-out}.game-card.swipe-nay{animation:swipeLeft .3s ease-out}.game-card.swipe-skip{animation:fadeOut .3s ease-out}@keyframes swipeRight{to{opacity:0;transform:translateX(200%) rotate(30deg)}}@keyframes swipeLeft{to{opacity:0;transform:translateX(-200%) rotate(-30deg)}}@keyframes fadeOut{to{opacity:0;transform:scale(.8)}}.game-image-container{background:#000;border:4px solid #000;height:300px;margin-bottom:20px;overflow:hidden;width:100%}.game-image{height:100%;image-rendering:pixelated;image-rendering:crisp-edges;object-fit:cover;width:100%}.game-info h2{font-size:20px;margin-bottom:15px}.game-genres{display:flex;flex-wrap:wrap;gap:10px;margin-bottom:15px}.genre-tag{background:#4ecdc433;border:2px solid #4ecdc4;color:#4ecdc4;font-size:9px;padding:5px 10px}.game-hltb{margin-bottom:15px}.game-hltb p{color:gold;font-size:10px;margin:5px 0}.game-playtime p{color:#4ecdc4;font-size:10px}.voting-buttons{display:flex;gap:15px;margin-bottom:20px}.vote-btn{flex:1 1;font-size:16px;padding:20px}.swipe-hint{margin-bottom:20px;text-align:center}.swipe-hint p{color:#666;font-size:10px}.voting-footer{display:flex;flex-wrap:wrap;gap:15px;justify-content:center}.voting-complete{animation:slideIn .5s ease-out;margin:100px auto;max-width:600px;text-align:center}.voting-complete h1{margin-bottom:20px}.voting-complete p{color:#4ecdc4;font-size:14px;margin-bottom:30px}.waiting-info{background:#4ecdc41a;border:2px solid #4ecdc4;margin-bottom:30px;padding:20px}.waiting-info p{color:gold;font-size:18px}.voting-complete .pixel-button{margin:10px}@media (max-width:768px){.voting-header h1{font-size:18px}.game-image-container{height:200px}.game-info h2{font-size:16px}.voting-buttons{flex-direction:column}.vote-btn{font-size:12px;padding:15px}.genre-tag{font-size:8px}}.results-container{margin:0 auto;max-width:1200px;min-height:100vh;padding:20px}.results-header{margin-bottom:40px;text-align:center}.results-header h1{margin-bottom:15px}.tie-message,.winner-message{animation:pulse 2s infinite;color:gold;font-size:16px}.tie-message{color:#ff6b6b}.results-list{display:flex;flex-direction:column;gap:20px;margin-bottom:40px}.result-card{grid-gap:20px;align-items:center;animation:slideIn .5s ease-out backwards;display:grid;gap:20px;grid-template-columns:80px 300px 1fr;transition:transform .3s}.result-card:first-child{animation-delay:.1s}.result-card:nth-child(2){animation-delay:.2s}.result-card:nth-child(3){animation-delay:.3s}.result-card:nth-child(4){animation-delay:.4s}.result-card:nth-child(5){animation-delay:.5s}.result-card:hover{transform:translateX(10px)}.result-card.winner{animation:pulse 2s infinite,slideIn .5s ease-out;background:linear-gradient(135deg,#ffd7001a,#0f0f1ee6);border-color:gold}.result-card.tie-winner{background:linear-gradient(135deg,#ff6b6b1a,#0f0f1ee6);border-color:#ff6b6b}.rank{color:gold;font-size:48px;font-weight:700;text-align:center}.result-card.winner .rank{animation:float 3s ease-in-out infinite;font-size:64px}.result-image-container{background:#000;border:4px solid #000;height:140px;overflow:hidden;width:100%}.result-image{height:100%;image-rendering:pixelated;image-rendering:crisp-edges;object-fit:cover;width:100%}.result-info h2{font-size:18px}.result-info h2,.score-display{margin-bottom:15px}.score-number{color:gold;font-size:24px;margin-bottom:10px}.vote-breakdown{display:flex;flex-wrap:wrap;gap:15px}.vote-stat{border:2px solid;border-radius:0;font-size:12px;padding:5px 10px}.vote-stat.yay{background:#51cf661a;border-color:#51cf66;color:#51cf66}.vote-stat.nay{background:#ff6b6b1a;border-color:#ff6b6b;color:#ff6b6b}.vote-stat.skip{background:#4ecdc41a;border-color:#4ecdc4;color:#4ecdc4}.result-genres{display:flex;flex-wrap:wrap;gap:8px}.result-genres .genre-tag{background:#4ecdc41a;border:2px solid #4ecdc4;color:#4ecdc4;font-size:9px;padding:4px 8px}.results-footer{display:flex;flex-wrap:wrap;gap:15px;justify-content:center}@media (max-width:1024px){.result-card{gap:15px;grid-template-columns:60px 250px 1fr}.rank{font-size:36px}.result-card.winner .rank{font-size:48px}.result-image-container{height:120px}.result-info h2{font-size:14px}.score-number{font-size:18px}}@media (max-width:768px){.result-card{grid-template-columns:1fr;text-align:center}.rank{font-size:48px}.result-image-container{height:200px;width:100%}.result-info h2{font-size:16px}.result-genres,.vote-breakdown{justify-content:center}.results-footer{flex-direction:column}.results-footer .pixel-button{width:100%}}
/*# sourceMappingURL=main.4eba6aab.css.map*/