/* Mobile scroll fix: one reliable vertical scroll for the full phone layout. */
@media (max-width:900px){
  html,
  body{
    height:auto!important;
    min-height:100%!important;
    margin:0;
    overflow-x:hidden!important;
    overflow-y:auto!important;
  }

  body{
    -webkit-overflow-scrolling:touch;
    touch-action:pan-y;
  }

  .app{
    display:block!important;
    height:auto!important;
    min-height:100dvh!important;
    overflow:visible!important;
  }

  .main{
    display:block!important;
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
  }

  .stageWrap{
    min-height:auto!important;
  }

  .side{
    display:block!important;
    height:auto!important;
    min-height:0!important;
    overflow:visible!important;
  }

  .tabs{
    position:sticky;
    top:0;
    z-index:20;
    overflow-x:auto;
    flex-wrap:nowrap;
    -webkit-overflow-scrolling:touch;
  }

  .panel{
    display:block!important;
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
  }

  .panel[hidden]{
    display:none!important;
  }

  #panel-style,
  #panel-set,
  #panel-hist{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    padding-bottom:calc(120px + env(safe-area-inset-bottom))!important;
  }

  .tx{
    height:auto!important;
    min-height:0!important;
    max-height:none!important;
    overflow:visible!important;
    padding-bottom:calc(120px + env(safe-area-inset-bottom))!important;
  }

  #panel-set .acc,
  #panel-set .accb,
  #panel-set .colrow,
  #panel-set .rowlab{
    min-width:0;
  }
}
