html,body{background:#1d2418;height:100%;margin:0;font-family:ui-monospace,SF Mono,Menlo,monospace;overflow:hidden}#game{cursor:grab;width:100vw;height:100vh;display:block}#game.dragging{cursor:grabbing}#hud{pointer-events:none;color:#f2f2ea;text-shadow:0 1px 2px #000;font-size:12px;position:fixed;inset:0}#hud .panel{background:#0000008c;border-radius:6px;padding:8px 10px;line-height:1.5;position:absolute}#hud .top-left{top:12px;left:12px}#hud .bottom-left{bottom:12px;left:12px}#hud .bottom-right{pointer-events:auto;bottom:12px;right:12px}#hud .hint{font-size:14px;bottom:48px;left:50%;transform:translate(-50%)}#hud .hint[hidden]{display:none}#hud h1{letter-spacing:.08em;margin:0 0 4px;font-size:16px}#hud a{color:inherit}#hud kbd{background:#ffffff26;border-radius:3px;padding:0 4px}#hud .net [data-state=online]{color:#8fe388}#hud .net [data-state=offline],#hud .net [data-state=reconnecting]{color:#ffb36b}#hud .players{margin:4px 0 0;padding:0;list-style:none}#hud .players .dot{border:1px solid #00000080;border-radius:50%;width:9px;height:9px;margin-right:6px;display:inline-block}.labels{pointer-events:none;position:fixed;inset:0}.car-label{color:#fff;border-left:3px solid var(--player-color,#ccc);white-space:nowrap;background:#0000008c;border-radius:4px;padding:1px 6px;font:600 12px ui-monospace,SF Mono,Menlo,monospace;transform:translateY(-14px)}.car-label:empty{display:none}.car-label.faded{opacity:.55}.join-screen{pointer-events:auto;color:#f2f2ea;min-width:260px;text-shadow:none;background:#0a0e08d9;border-radius:10px;flex-direction:column;gap:12px;padding:24px 28px;font-size:14px;display:flex;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.join-screen h1{letter-spacing:.12em;text-align:center;margin:0;font-size:26px}.join-screen label{flex-direction:column;gap:4px;display:flex}.join-screen input,.join-screen button{font:inherit;border:1px solid #556;border-radius:6px;padding:8px 10px}.join-screen button{color:#fff;cursor:pointer;background:#e2412f;border-color:#e2412f;font-weight:700}.join-screen small{opacity:.6;word-break:break-all}
