

@media (hover:none) and (pointer:coarse) and (orientation:portrait){
  /* MOBILE PORTRAIT ONLY. PC rules untouched. */
  #game{
    height:calc(100dvh - clamp(205px,27dvh,235px))!important;
  }
  #mobileDriveUI{
    height:clamp(205px,27dvh,235px)!important;
    padding:4px 4px max(4px,env(safe-area-inset-bottom))!important;
    grid-template-rows:minmax(0,1fr) 38px!important;
    gap:4px!important;
    background:linear-gradient(145deg,#121212,#030303 52%,#110000)!important;
  }
  .mpGrid{
    grid-template-columns:32% 46% 22%!important;
    gap:4px!important;
  }
  .mpCol{
    border-radius:5px!important;
  }
  .mpLeft{
    grid-template-rows:42% 58%!important;
  }
  .mpOnline{
    padding:4px 4px 2px!important;
    font:700 clamp(6px,1.65vw,8px)/1.12 Arial!important;
  }
  .mpOnlineHead{
    gap:2px!important;
    letter-spacing:.02em!important;
  }
  #mpOnlineList{
    margin-top:3px!important;
    gap:1px!important;
  }

  /* AE86 instrument binnacle is the rear layer.
     MOMO wheel is the front layer; only its upper half/center boss remains visible. */
  .mpCockpit{
    position:relative!important;
    overflow:hidden!important;
    background:#050505 url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///ywAAAAAAQABAAACAUwAOw==") 50% 48%/cover no-repeat!important;
    border-top:1px solid rgba(160,0,0,.65)!important;
  }
  .mpWheel{
    position:absolute!important;
    z-index:3!important;
    left:50%!important;
    bottom:-52%!important;
    width:128%!important;
    max-width:none!important;
    aspect-ratio:1!important;
    transform:translateX(-50%) rotate(0deg)!important;
    transform-origin:50% 47%!important;
    transition:transform .055s linear!important;
    background:url("data:image/gif;base64,R0lGODlhAQABAIAAAAAAAP///ywAAAAAAQABAAACAUwAOw==") center/contain no-repeat!important;
    filter:drop-shadow(0 2px 2px #000)!important;
    pointer-events:none!important;
  }
  .mpSteerHit{
    top:0!important;
    bottom:0!important;
    width:50%!important;
    z-index:6!important;
  }

  .mpCenter{
    grid-template-rows:28px minmax(0,1fr)!important;
  }
  .mpUtility{
    gap:3px!important;
    padding:3px!important;
  }
  .mpUtility button{
    min-height:0!important;
    height:22px!important;
    padding:0 2px!important;
    border-radius:3px!important;
    font:900 6px/1 Arial!important;
    letter-spacing:0!important;
  }
  .mpMapWrap{
    margin:0 3px 3px!important;
    border-radius:4px!important;
  }
  .mpMapLabel{
    left:3px!important;
    top:3px!important;
    font:800 5px/1 Arial!important;
  }

  .mpRight{
    grid-template-rows:repeat(5,1fr)!important;
    gap:3px!important;
    padding:4px!important;
  }
  .mpGear{
    min-height:0!important;
    height:auto!important;
    padding:0!important;
    border-width:1px!important;
    border-radius:3px!important;
    font:900 clamp(11px,3.8vw,17px)/1 Arial!important;
    box-shadow:inset 0 0 0 1px #353535,0 1px 2px #000!important;
  }

  /* B spans all three columns, full width, and stays thin. */
  .mpBrake{
    grid-column:1 / -1!important;
    width:100%!important;
    min-height:0!important;
    height:38px!important;
    padding:0!important;
    border-radius:6px!important;
    border-width:1px!important;
    font:900 clamp(15px,4.8vw,22px)/1 Arial!important;
    letter-spacing:.09em!important;
    background:
      radial-gradient(circle at 5% 30%,#080808 0 3px,transparent 3.8px),
      radial-gradient(circle at 10% 70%,#080808 0 3px,transparent 3.8px),
      radial-gradient(circle at 15% 30%,#080808 0 3px,transparent 3.8px),
      radial-gradient(circle at 20% 70%,#080808 0 3px,transparent 3.8px),
      radial-gradient(circle at 80% 70%,#080808 0 3px,transparent 3.8px),
      radial-gradient(circle at 85% 30%,#080808 0 3px,transparent 3.8px),
      radial-gradient(circle at 90% 70%,#080808 0 3px,transparent 3.8px),
      radial-gradient(circle at 95% 30%,#080808 0 3px,transparent 3.8px),
      linear-gradient(#ad1717,#4c0505)!important;
  }

  #mobileDriveUI,#mobileDriveUI *{
    -webkit-user-select:none!important;
    user-select:none!important;
    -webkit-touch-callout:none!important;
    -webkit-tap-highlight-color:transparent!important;
  }
  #mobileDriveUI button,#mobileDriveUI .mpSteerHit{
    touch-action:none!important;
  }
}

