body[data-game="luge"] #r-speed { bottom:180px; }
body[data-game="arena"] #mini-panel { left:14px; bottom:18px; transform:none; width:250px; box-sizing:border-box; flex-direction:column; align-items:stretch; }
#arena-share-open { min-height:32px; padding:3px 8px; border:1px solid #fff6ea66; border-radius:8px; background:#fff6ea; color:#7d1f3a; font:600 var(--font-size-small)/1.6 var(--font-ui); cursor:pointer; }
#arena-share { width:min(420px,calc(100vw - 36px)); max-height:calc(100dvh - 36px); box-sizing:border-box; padding:24px; border:1px solid #e6d7c6; border-radius:16px; background:#fff6ea; color:#342621; box-shadow:0 20px 70px #0008; }
#arena-share::backdrop { background:#17120f99; }
#arena-share .share-heading { display:flex; align-items:center; gap:14px; }
#arena-share h2 { margin:0; font:600 22px/1.5 var(--font-ui); }
#arena-share p { margin:16px 0; font:var(--font-size-base)/1.8 var(--font-ui); word-break:keep-all; }
#arena-share label { display:block; margin-bottom:8px; font:600 var(--font-size-small)/1.6 var(--font-ui); }
#arena-share input { width:100%; box-sizing:border-box; padding:12px; border:1px solid #d9c8b9; border-radius:8px; background:#fffaf2; color:#342621; font:var(--font-size-base)/1.6 var(--font-ui); }
#arena-share-close { flex:0 0 44px; min-height:44px; margin-left:auto; border:0; border-radius:8px; background:transparent; color:#7d1f3a; font:26px/1 var(--font-ui); cursor:pointer; }
#arena-share-copy { width:100%; min-height:46px; margin-top:14px; border:0; border-radius:8px; background:#7d1f3a; color:#fff6ea; font:600 var(--font-size-base)/1.6 var(--font-ui); cursor:pointer; }
#arena-share #arena-share-status { margin:12px 0 0; color:#63544e; font-size:var(--font-size-small); }
#arena-share-status:empty { display:none; }
#arena-share :is(button,input):focus-visible,#arena-share-open:focus-visible { outline:3px solid #ff7a28; outline-offset:2px; }
#entrance-directions { position:fixed; z-index:7; left:14px; bottom:20px; width:250px; box-sizing:border-box; display:grid; gap:7px; padding:12px; border:1px solid #fff6ea88; border-radius:14px; background:#fff6eaf0; color:#7d1f3a; box-shadow:0 4px 18px #0003; }
#entrance-directions[hidden] { display:none; }
#entrance-directions strong { font:600 var(--font-size-small)/1.6 var(--font-ui); }
#entrance-directions button { min-height:44px; padding:8px 10px; border:1px solid #7d1f3a55; border-radius:8px; background:#fff6ea; color:#7d1f3a; font:600 var(--font-size-small)/1.6 var(--font-ui); cursor:pointer; }
#entrance-directions button:hover { background:#7d1f3a; color:#fff6ea; }
#entrance-directions button:focus-visible { outline:3px solid #ff7a28; outline-offset:2px; }
#arena-enter { position:fixed; z-index:7; left:14px; bottom:20px; width:250px; box-sizing:border-box; min-height:50px; padding:12px; border:1px solid #ff7a28; border-radius:14px; background:#fff6eaf5; color:#7d1f3a; box-shadow:0 4px 18px #0003; font:700 var(--font-size-base)/1.5 var(--font-ui); cursor:pointer; }
#arena-enter[hidden] { display:none; }
#arena-enter:hover { background:#7d1f3a; color:#fff6ea; }
#arena-enter:focus-visible { outline:3px solid #ff7a28; outline-offset:3px; }
#arena-seat-panel { position:fixed; z-index:7; left:14px; bottom:20px; width:250px; box-sizing:border-box; padding:12px; border:1px solid #fff6ea99; border-radius:14px; background:#fff6eaf5; color:#7d1f3a; box-shadow:0 4px 18px #0003; }
#arena-seat-panel[hidden],#arena-seat-panel button[hidden] { display:none; }
#arena-seat-panel strong { display:block; font:600 var(--font-size-base)/1.6 var(--font-ui); }
#arena-seat-panel p { margin:6px 0 10px; color:#63544e; font:var(--font-size-small)/1.6 var(--font-ui); }
#arena-seat-panel .seat-buttons { display:flex; gap:7px; }
#arena-seat-panel button { flex:1; min-height:44px; padding:8px; border:1px solid #7d1f3a; border-radius:8px; color:#fff6ea; background:#7d1f3a; font:600 var(--font-size-small)/1.6 var(--font-ui); cursor:pointer; }
#arena-seat-panel #arena-seat-cancel { flex:0 0 auto; background:#fff6ea; color:#7d1f3a; }
#arena-seat-panel button:disabled { opacity:.55; cursor:default; }
#arena-seat-panel button:focus-visible { outline:3px solid #ff7a28; outline-offset:2px; }
@media(max-width:1100px) {
  body[data-game="arena"] #mpanel { top:auto; bottom:calc(14px + env(safe-area-inset-bottom)); }
  body[data-game="arena"] :is(#tunnel-movement,#arena-seat-panel,#entrance-directions,#arena-enter,#mini-panel) { bottom:calc(min(var(--arena-panel-max),100dvh - 180px) + 28px + env(safe-area-inset-bottom)); }
}
@media(max-width:720px) {
  #arena-seat-panel { bottom:14px; width:calc(100vw - 190px); max-width:210px; }
  #entrance-directions { bottom:14px; width:calc(100vw - 190px); max-width:210px; }
  #arena-enter { width:calc(100vw - 190px); max-width:210px; }
  body[data-game] #portal { top:10px; left:10px; right:10px; }
  body[data-game] .portal-btn { flex:1; min-height:44px; padding:8px 6px; }
  body[data-game] #hud { display:none; }
  body[data-game="luge"] #r-left { top:158px; }
  body[data-game="arena"] #mini-panel { left:14px; right:auto; bottom:14px; transform:none; width:calc(100vw - 190px); max-width:210px; box-sizing:border-box; flex-direction:column; align-items:stretch; }
  body[data-game="arena"] #mini-panel button { min-height:44px; width:100%; box-sizing:border-box; white-space:normal; }
  body[data-game="arena"] :is(#tunnel-movement,#arena-seat-panel,#entrance-directions,#arena-enter,#mini-panel) { top:70px; bottom:auto; }
}
@media(max-height:520px) and (min-width:540px) and (max-width:1100px) {
  body[data-game="arena"] #mpanel { width:calc(100vw - 384px); }
  body[data-game="arena"] #tunnel-movement { top:auto; bottom:14px; }
  body[data-game="arena"] :is(#arena-seat-panel,#entrance-directions,#arena-enter,#mini-panel) { top:70px; bottom:auto; width:150px; max-height:calc(100dvh - 90px); overflow-y:auto; }
}
