html,body,#app{margin:0;height:100%;overflow:hidden;background:#1b1a17;font-family:system-ui,-apple-system,Segoe UI,Roboto,sans-serif;color:#f3efe6}#game{display:block;width:100%;height:100%;touch-action:none}.hidden{display:none!important}#lobby{position:absolute;top:0;right:0;bottom:0;left:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(180deg,#14120ed9,#14120ef2);padding:16px}.panel{width:min(420px,100%);background:#2a2620;border:1px solid #5a5040;border-radius:12px;padding:20px;box-shadow:0 10px 40px #0006}.panel h1{margin:0 0 4px;font-size:28px;color:#f0d78c}.sub{margin:0 0 16px;color:#c9c1b0}label{display:block;margin:8px 0 4px;font-size:14px}input{width:100%;box-sizing:border-box;padding:10px 12px;border-radius:8px;border:1px solid #6a5f4c;background:#1f1c17;color:#fff;font-size:16px}button{width:100%;margin-top:12px;padding:12px;border:0;border-radius:8px;background:#8c6a2f;color:#fff;font-size:16px;font-weight:600;cursor:pointer}button:hover{background:#a37c38}.hint{font-size:13px;color:#b8ad98;margin:10px 0 0;line-height:1.4}.hint.small{font-size:11px;color:#8f8675}#hud{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}#hud-top{display:flex;gap:12px;justify-content:space-between;padding:10px 14px;font-size:14px;background:linear-gradient(180deg,#00000073,#0000);text-shadow:0 1px 2px #000}#center-msg{position:absolute;top:38%;left:50%;transform:translate(-50%,-50%);font-size:clamp(22px,5vw,42px);font-weight:800;color:#f6e7b2;text-shadow:0 2px 8px #000;text-align:center;white-space:pre-line}#players-label{position:absolute;left:10px;bottom:10px;font-size:13px;color:#e8e0d0;text-shadow:0 1px 2px #000}#mobile-controls{position:absolute;top:0;right:0;bottom:0;left:0;pointer-events:none}#joy-zone{position:absolute;left:0;bottom:0;width:45%;height:45%;pointer-events:auto}#joy-base{position:absolute;left:28px;bottom:28px;width:120px;height:120px;border-radius:50%;background:#ffffff14;border:2px solid rgba(255,255,255,.2)}#joy-knob{position:absolute;left:50%;top:50%;width:52px;height:52px;margin:-26px;border-radius:50%;background:#f0d78c59;border:2px solid rgba(240,215,140,.6)}#jump-btn{position:absolute;right:28px;bottom:44px;width:96px;height:96px;border-radius:50%;pointer-events:auto;background:#8c6a2f8c;border:2px solid rgba(240,215,140,.5);color:#fff;font-size:16px;font-weight:700}#jump-btn:active{background:#a37c38bf}
