/* Camera input sits at the edge; the court remains the destination. */
.cm-view-rail .roam-toggle[aria-pressed=true]{background:#144a77;color:#effcff;border-color:#8addff;box-shadow:inset 0 1px #dcf7ff70}
body.roam-active #arena canvas{cursor:grab;touch-action:none;-webkit-user-select:none;user-select:none}
body.roam-active #arena canvas.roam-dragging{cursor:grabbing}
body.roam-active #arena canvas:focus{outline:none}
body.roam-active .cm-main{display:none}
.roam-hint{position:fixed;left:50%;bottom:100px;transform:translateX(-50%);z-index:28;display:flex;flex-direction:column;gap:7px;width:max-content;max-width:calc(100vw - 32px);padding:12px 18px;margin:0;border:1px solid #91d5ff4d;border-radius:16px 7px 16px 7px;background:#061a2be6;color:#daf0ff;text-align:center;font:600 10px/1.4 Inter,sans-serif;letter-spacing:.09em;pointer-events:none}
.roam-hint>span:last-child{font-size:9px;color:#a4bed3}.roam-mobile-hint{display:none}
.roam-show-ui{position:fixed;top:max(18px,env(safe-area-inset-top));right:max(18px,env(safe-area-inset-right));z-index:120;min-height:44px;padding:10px 18px;border:1px solid #a4daff80;border-radius:24px 9px 24px 9px;background:linear-gradient(145deg,#173c58e6,#040f1ee6);color:#edf8ff;box-shadow:inset 0 1px #d9f6ff66,0 5px 20px #0005;font:700 11px/1 Inter,sans-serif;letter-spacing:.1em;cursor:pointer}
.roam-show-ui:focus-visible,.roam-move:focus-visible{outline:2px solid #c7fc68;outline-offset:4px}
.roam-touch{display:none}
.roam-hint[hidden],.roam-touch[hidden],.roam-show-ui[hidden]{display:none!important}
body.roam-ui-hidden :is(.cm-header,.cm-main,.cm-view-rail,.cm-angles,.cm-travel,.cm-location-options,.stadium-world-markers,#stadiumArrival,#pfRadio,#pfDeck,#buildStamp,.roam-hint,.roam-touch){opacity:0!important;visibility:hidden!important;pointer-events:none!important}
body.roam-ui-hidden::before{opacity:0}
@media(max-width:900px){.roam-hint{bottom:145px}.cm-view-rail .roam-toggle,.cm-view-rail .roam-ui-toggle{min-height:44px;font-size:10px;padding:9px}}
@media(pointer:coarse){
  .roam-desktop-hint{display:none}.roam-mobile-hint{display:block}
  .roam-touch:not([hidden]){position:fixed;right:16px;bottom:162px;z-index:29;display:grid;grid-template-columns:repeat(3,44px);gap:6px;padding:8px;border:1px solid #89d8ff4d;border-radius:20px;background:#061b30d9}
  .roam-move{width:44px;height:44px;display:grid;place-items:center;border:1px solid #a9dfff59;border-radius:13px;background:linear-gradient(145deg,#25516d99,#071927dd);color:#ecfaff;box-shadow:inset 0 1px #daf8ff55;font:600 23px/1 Inter,sans-serif;touch-action:none;-webkit-user-select:none;user-select:none}
  .roam-move.held{background:#2877a8;border-color:#c4f2ff}
  .roam-move[data-move=KeyW]{grid-area:1/2}.roam-move[data-move=KeyA]{grid-area:2/1}.roam-move[data-move=KeyS]{grid-area:2/2}.roam-move[data-move=KeyD]{grid-area:2/3}.roam-move[data-move=KeyQ]{grid-area:1/1}.roam-move[data-move=KeyE]{grid-area:1/3}
  .roam-hint{bottom:auto;top:132px;font-size:9px;padding:10px 12px}
}
