@font-face{font-family:ArcadeClassic;src:url(/fonts/ARCADECLASSIC.TTF) format("truetype");font-weight:400;font-style:normal}:root{font-family:ArcadeClassic,monospace,system-ui,Avenir,Helvetica,Arial,sans-serif;line-height:1.5;font-weight:400;color-scheme:light dark;color:#ffffffde;background-color:#242424;font-synthesis:none;text-rendering:optimizeLegibility;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}a{font-weight:500;color:#646cff;text-decoration:inherit}a:hover{color:#535bf2}body{margin:0;padding:0;min-width:320px;min-height:100vh;width:100%}html,body,#root{margin:0;padding:0;width:100%;height:100%}*{font-family:ArcadeClassic,monospace!important}h1{font-size:3.2em;line-height:1.1}button{border-radius:8px;border:1px solid transparent;padding:.6em 1.2em;font-size:1em;font-weight:500;font-family:inherit;background-color:#1a1a1a;cursor:pointer;transition:border-color .25s}button:hover{border-color:#646cff}button:focus,button:focus-visible{outline:4px auto -webkit-focus-ring-color}@media (prefers-color-scheme: light){:root{color:#213547;background-color:#fff}a:hover{color:#747bff}button{background-color:#f9f9f9}}#root{max-width:100%;margin:0;padding:0;min-height:100vh}.lobby-container{max-width:1200px;margin:0 auto;padding:2rem}.lobby-header{display:flex;justify-content:space-between;align-items:center;margin-bottom:2rem}.lobby-header h1{font-size:2.5rem;color:#fff}.create-room-section{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:2rem;margin-bottom:2rem}.create-room-form{display:flex;gap:1rem;align-items:center;justify-content:center;margin-top:1rem}.create-room-form input{padding:.75rem 1rem;border-radius:8px;border:1px solid rgba(255,255,255,.2);background:#0000004d;color:#fff;font-size:1rem;width:200px}.create-room-form button{padding:.75rem 2rem;border-radius:8px;border:none;background:#14f195;color:#000;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s}.create-room-form button:hover:not(:disabled){background:#0fd584;transform:translateY(-2px)}.create-room-form button:disabled{opacity:.5;cursor:not-allowed}.rooms-section h2{margin-bottom:1rem;color:#fff}.rooms-list{display:grid;grid-template-columns:repeat(auto-fill,minmax(300px,1fr));gap:1rem}.room-card{background:#ffffff0d;border:1px solid rgba(255,255,255,.1);border-radius:12px;padding:1.5rem;display:flex;justify-content:space-between;align-items:center;transition:all .3s}.room-card:hover{border-color:#9945ff80;transform:translateY(-2px)}.room-info p{margin:.25rem 0;color:#fffc}.room-card button{padding:.5rem 1.5rem;border-radius:8px;border:none;background:#14f195;color:#000;font-weight:600;cursor:pointer;transition:all .3s}.room-card button:hover:not(:disabled){background:#00d982;transform:scale(1.05)}.room-card button:disabled{opacity:.5;cursor:not-allowed}.connect-wallet-prompt{text-align:center;padding:4rem 2rem}.connect-wallet-prompt p{font-size:1.5rem;color:#fff9}.game-container{display:flex;flex-direction:column;align-items:center;padding:2rem;min-height:100vh;background:#1a1a1a}.game-header{display:flex;justify-content:space-between;align-items:center;width:100%;max-width:800px;margin-bottom:2rem}.connection-status{font-size:1rem;font-weight:600}.game-canvas{border:2px solid rgba(255,255,255,.2);border-radius:8px;background:#000}.game-controls{margin-top:2rem;text-align:center;color:#ffffffb3}.game-over-screen,.game-status{display:flex;flex-direction:column;align-items:center;justify-content:center;min-height:80vh;text-align:center}.how-it-works-section{position:absolute;top:2rem;left:2rem;max-width:300px;background:#ffffff0d;padding:1.5rem;border-radius:12px;border:1px solid rgba(255,255,255,.1);z-index:10}.how-it-works-section h3{margin-top:0;margin-bottom:1rem;color:#fff;font-size:1.2rem}.how-it-works-section p{margin:.5rem 0;color:#fffc;font-size:.9rem;line-height:1.5}.pong-logo-container{display:flex;flex-direction:column;align-items:center;gap:1rem;margin:2rem 0}.pong-logo-container h1{font-size:4rem;font-weight:700;letter-spacing:.5rem;margin:0;color:#fff;text-transform:uppercase}.pong-logo{width:200px;height:auto}.lobby-table-container{background:#fff;border-radius:12px;overflow:hidden;box-shadow:0 4px 6px #0000001a;max-width:1000px;margin:0 auto;padding:0 3rem}.lobby-table{width:100%;border-collapse:collapse;background:#fff;color:#000}.lobby-table thead{background:#f5f5f5}.lobby-table thead tr{border-bottom:2px solid #e0e0e0}.lobby-table th{padding:1rem;text-align:left;font-weight:700;text-transform:uppercase;font-size:.9rem;letter-spacing:.5px;color:#333}.lobby-table td{padding:1rem;text-align:left;border-bottom:1px solid #e0e0e0;color:#000}.lobby-table tbody tr:last-child td{border-bottom:none}.lobby-table tbody tr:hover{background:#f9f9f9}.lobby-table button{padding:.5rem 1.5rem;border-radius:8px;border:none;background:#14f195;color:#000;font-weight:600;cursor:pointer;transition:all .3s}.lobby-table button:hover:not(:disabled){background:#00d982;transform:scale(1.05)}.lobby-table button:disabled{opacity:.5;cursor:not-allowed}.create-match-modal{position:fixed;top:0;left:0;right:0;bottom:0;background:#000c;display:flex;justify-content:center;align-items:center;z-index:1000}.modal-content{background:#fff;color:#000;padding:2rem;border-radius:12px;max-width:500px;width:90%;position:relative}.modal-content h2{margin-top:0;margin-bottom:1.5rem;color:#000}.modal-close{position:absolute;top:1rem;right:1rem;background:transparent;border:none;font-size:1.5rem;cursor:pointer;color:#666;transition:color .3s}.modal-close:hover{color:#000}.modal-form{display:flex;flex-direction:column;gap:1rem}.modal-form label{display:flex;flex-direction:column;gap:.5rem;color:#333;font-weight:600}.modal-form input{padding:.75rem 1rem;border-radius:8px;border:1px solid #ddd;background:#fff;color:#000;font-size:1rem}.modal-form button{padding:.75rem 2rem;border-radius:8px;border:none;background:#14f195;color:#000;font-size:1rem;font-weight:600;cursor:pointer;transition:all .3s;margin-top:.5rem}.modal-form button:hover:not(:disabled){background:#0fd584;transform:translateY(-2px)}.modal-form button:disabled{opacity:.5;cursor:not-allowed}.create-match-button{padding:1rem 3rem;border-radius:12px;border:none;background:#14f195;color:#000;font-size:1.2rem;font-weight:700;cursor:pointer;transition:all .3s;margin:2rem 0}.create-match-button:hover{background:#00d982;transform:translateY(-2px);box-shadow:0 4px 12px #14f1954d}.lobby-section-title{font-size:2rem;font-weight:700;text-align:center;color:#fff;margin:2rem 0 1rem;text-transform:uppercase;letter-spacing:.2rem}.wallet-button-container{position:absolute;top:2rem;right:2rem;z-index:10}.demo-button{padding:.5rem 1rem;border-radius:8px;border:1px solid rgba(255,255,255,.3);background:#ffffff1a;color:#fff;font-size:.9rem;font-weight:600;cursor:pointer;transition:all .3s}.demo-button:hover{background:#fff3;border-color:#ffffff80}@media (max-width: 768px){.how-it-works-section{position:static;margin:1rem auto;max-width:100%}.wallet-button-container{position:static;margin:1rem auto;text-align:center}.pong-logo-container h1{font-size:2.5rem;letter-spacing:.3rem}.pong-logo{width:150px}.lobby-table th,.lobby-table td{padding:.75rem .5rem;font-size:.85rem}.modal-content{width:95%;padding:1.5rem}}.waiting-room{min-height:100vh;display:flex;justify-content:center;align-items:center;background:linear-gradient(180deg,#000,#1a1a1a);color:#fff;font-family:ArcadeClassic,monospace;padding:2rem}.waiting-room-content{text-align:center;padding:3rem;background:#ffffff0d;border-radius:16px;border:2px solid rgba(153,69,255,.3);max-width:500px;width:100%}.waiting-room h1{font-size:2.5rem;margin-bottom:2rem;color:#14f195;letter-spacing:2px}.wager-info{margin:2rem 0;font-size:1.2rem;line-height:2}.wager-info p{margin:.5rem 0}.spinner{margin:2rem 0}.loading-dots{font-size:3rem;margin:2rem 0;letter-spacing:.5rem}.loading-dots span{animation:blink 1.4s infinite;animation-fill-mode:both}.loading-dots span:nth-child(2){animation-delay:.2s}.loading-dots span:nth-child(3){animation-delay:.4s}@keyframes blink{0%,80%,to{opacity:0}40%{opacity:1}}.cancel-button{background:#dc2626;color:#fff;border:none;padding:1rem 2rem;font-size:1.2rem;font-family:ArcadeClassic,monospace;border-radius:8px;cursor:pointer;transition:all .2s;margin-top:2rem}.cancel-button:hover:not(:disabled){background:#b91c1c;transform:scale(1.05)}.cancel-button:disabled{opacity:.5;cursor:not-allowed}.game-status{display:flex;flex-direction:column;justify-content:center;align-items:center;min-height:60vh;text-align:center;padding:2rem}.game-status h1{font-size:2.5rem;margin-bottom:1rem;font-family:ArcadeClassic,monospace;letter-spacing:2px}.game-status p{font-size:1.2rem;color:#ffffffb3}
