* { margin: 0; padding: 0; box-sizing: border-box; } html, body { height: 100%; overflow: hidden; background: radial-gradient(circle at 50% 30%, #17263f, #0a1120); font-family: system-ui, 'Segoe UI', sans-serif; } #game { position: absolute; border-radius: 6px; box-shadow: 0 0 60px rgba(80, 140, 220, 0.25); cursor: crosshair; } #join-overlay { position: fixed; inset: 0; display: flex; align-items: center; justify-content: center; background: rgba(6, 12, 24, 0.72); backdrop-filter: blur(4px); z-index: 10; } .panel { background: linear-gradient(160deg, #101d33, #0b1424); border: 1px solid #2b4a75; border-radius: 14px; padding: 36px 48px; text-align: center; color: #dce9fa; box-shadow: 0 10px 50px rgba(0, 0, 0, 0.5); } .panel h1 { font-size: 32px; letter-spacing: 2px; color: #ffe135; text-shadow: 0 2px 0 #7a5c00, 0 0 24px rgba(255, 225, 53, 0.35); } .tag { margin: 8px 0 22px; color: #9db8d8; font-style: italic; } #name { display: block; margin: 0 auto 14px; padding: 10px 14px; font-size: 16px; border-radius: 8px; border: 1px solid #3a5c8c; background: #0a1626; color: #fff; width: 250px; text-align: center; outline: none; } #name:focus { border-color: #ffe135; } #play { padding: 12px 32px; font-size: 17px; font-weight: 700; letter-spacing: 1px; border: none; border-radius: 8px; background: linear-gradient(180deg, #ffe135, #f5b800); color: #4a3600; cursor: pointer; } #play:hover { filter: brightness(1.08); } #play:disabled { opacity: 0.5; cursor: default; } #status { min-height: 20px; margin-top: 12px; color: #ff9d9d; font-size: 14px; } .help { margin-top: 18px; font-size: 13px; color: #8aa6cc; line-height: 1.8; } .help b { color: #cfe2ff; }