/* SoulOne LIVE v57 — mobile touch usability. Keep desktop layouts unchanged. */
@media (max-width:1100px) and (pointer:coarse){
 html:not(.soulone-ipad-classic) body>.app.soul-mobile-console .timeline .sl57-session-scroll{
  box-sizing:border-box!important;
  display:block!important;
  position:relative!important;
  flex:1 1 0%!important;
  height:auto!important;
  min-height:0!important;
  min-width:0!important;
  max-width:100%!important;
  width:100%!important;
  overflow-x:auto!important;
  overflow-y:auto!important;
  -webkit-overflow-scrolling:touch!important;
  touch-action:pan-x pan-y!important;
  overscroll-behavior:contain!important;
  scrollbar-color:#467e91 #0c2233!important;
  scrollbar-width:thin!important;
  border-radius:7px!important;
  background:#0b1d2d!important;
  outline-offset:-2px!important;
 }
 html:not(.soulone-ipad-classic) body>.app.soul-mobile-console .timeline .sl57-session-scroll:focus-visible{
  outline:2px solid #6cd8d3!important;
 }
 body>.app.soul-mobile-console .timeline .sl57-session-scroll>.segments,
 body>.app.soul-mobile-console .timeline .sl57-session-scroll>.stems-visual,
 body>.app.soul-mobile-console .timeline .sl57-session-scroll>.time-numbers{
  box-sizing:border-box!important;
  width:var(--sl57-track-width,950px)!important;
  min-width:var(--sl57-track-width,950px)!important;
  max-width:none!important;
  margin-left:0!important;
  margin-right:0!important;
  flex:none!important;
 }
 body>.app.soul-mobile-console .timeline .sl57-session-scroll>.segments{
  display:flex!important;
  height:28px!important;
  min-height:28px!important;
  padding-left:72px!important;
  padding-right:2px!important;
  margin-top:5px!important;
  overflow:visible!important;
  gap:2px!important;
 }
 body>.app.soul-mobile-console .timeline .sl57-session-scroll>.stems-visual{
  display:flex!important;
  flex-direction:column!important;
  height:auto!important;
  min-height:0!important;
  max-height:none!important;
  overflow:visible!important;
  border-radius:0 0 6px 6px!important;
  padding:0!important;
  touch-action:pan-x pan-y!important;
 }
 body>.app.soul-mobile-console .timeline .sl57-session-scroll .wave-row{
  display:grid!important;
  grid-template-columns:72px minmax(0,1fr)!important;
  flex:0 0 41px!important;
  height:41px!important;
  min-height:41px!important;
  max-height:41px!important;
  width:100%!important;
  min-width:100%!important;
 }
 body>.app.soul-mobile-console .timeline .sl57-session-scroll .wave-row:nth-child(n+5){
  display:grid!important;
 }
 body>.app.soul-mobile-console .timeline .sl57-session-scroll .wave-name{
  box-sizing:border-box!important;
  height:100%!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
 }
 body>.app.soul-mobile-console .timeline .sl57-session-scroll .wave-canvas-wrap{
  position:relative!important;
  height:100%!important;
  min-width:0!important;
  touch-action:pan-x pan-y!important;
  cursor:crosshair!important;
 }
 body>.app.soul-mobile-console .timeline .sl57-session-scroll .wave-canvas-wrap canvas{
  width:100%!important;
  max-width:none!important;
  height:100%!important;
  touch-action:pan-x pan-y!important;
  pointer-events:auto!important;
 }
 body>.app.soul-mobile-console .timeline .sl57-session-scroll>.time-numbers{
  display:flex!important;
  margin-top:0!important;
  padding:4px 7px 7px 72px!important;
  min-height:21px!important;
  height:21px!important;
  touch-action:pan-x pan-y!important;
 }
 body>.app.soul-mobile-console.slmv-show-repertoire .right.live-library-panel{
  display:flex!important;
  flex-direction:column!important;
  min-height:0!important;
  max-height:100%!important;
  overscroll-behavior:contain!important;
 }
 body>.app.soul-mobile-console .right.live-library-panel>.tabcontent{
  display:block!important;
  flex:1 1 0%!important;
  min-height:0!important;
  max-height:none!important;
  overflow-x:hidden!important;
  overflow-y:auto!important;
  -webkit-overflow-scrolling:touch!important;
  touch-action:pan-y!important;
  overscroll-behavior-y:contain!important;
 }
 body>.app.soul-mobile-console .right.live-library-panel #setlist{
  display:flex!important;
  flex-direction:column!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
  touch-action:pan-y!important;
 }
 body>.app.soul-mobile-console .right.live-library-panel #setlist .songitem{
  touch-action:pan-y!important;
  user-select:none!important;
  -webkit-user-select:none!important;
  -webkit-touch-callout:none!important;
 }
 body>.app.soul-mobile-console .right.live-library-panel #setlist .sl57-reorder-handle{
  display:inline-flex!important;
  flex:0 0 27px!important;
  width:27px!important;
  min-width:27px!important;
  max-width:27px!important;
  min-height:40px!important;
  height:40px!important;
  justify-content:center!important;
  align-items:center!important;
  padding:0!important;
  border:0!important;
  border-radius:7px!important;
  background:transparent!important;
  color:#8fb8cb!important;
  font-size:19px!important;
  font-weight:700!important;
  line-height:1!important;
  cursor:grab!important;
  touch-action:none!important;
  user-select:none!important;
  -webkit-user-select:none!important;
  -webkit-touch-callout:none!important;
 }
 body>.app.soul-mobile-console .right.live-library-panel #setlist .sl57-reorder-handle:active{
  cursor:grabbing!important;color:#aaf4e8!important;
 }
 body>.app.soul-mobile-console .right.live-library-panel #setlist .songitem.sl57-dragging{
  background:#214e5f!important;
  border-color:#5ce0d0!important;
  opacity:.86!important;
 }
 body>.app.soul-mobile-console .right.live-library-panel #setlist .songitem.sl57-drop-before{
  box-shadow:inset 0 3px 0 #5fe0cf!important;
 }
 body>.app.soul-mobile-console .right.live-library-panel #setlist .songitem.sl57-drop-after{
  box-shadow:inset 0 -3px 0 #5fe0cf!important;
 }
 body>.app.soul-mobile-console .right.live-library-panel .sl55-marker-track{
  touch-action:pan-x!important;
 }
 body>.app.soul-mobile-console .right.live-library-panel .sl55-marker{
  touch-action:manipulation!important;
 }
 body>.app.soul-mobile-console .stage-menu{
  -webkit-overflow-scrolling:touch!important;
  touch-action:pan-y!important;
 }
 body>.app.soul-mobile-console.soul-mobile-mix-screen #mixer .clean-rail,
 body>.app.soul-mobile-console.soul-mobile-mix-screen #mixer .clean-group--music .clean-rail{
  touch-action:pan-x!important;
  -webkit-overflow-scrolling:touch!important;
  overflow-x:auto!important;
  overscroll-behavior-x:contain!important;
 }
 body>.app.soul-mobile-console.soul-mobile-mix-screen #mixer input[type="range"]{
  touch-action:none!important;
 }
}
/* Avoid modifying desktop: the wrapper is not a scroll panel outside mobile. */
@media (min-width:1101px), (pointer:fine){
 body>.app .timeline>.sl57-session-scroll{display:contents!important}
 body>.app .right.live-library-panel .sl57-reorder-handle{display:none!important}
}
/* Full width access even when the user switches views while landscape. */
@media(max-width:1100px) and (pointer:coarse) and (orientation:landscape){
 body>.app.soul-mobile-console.slmv-show-stage.slmv-hide-repertoire>.main-grid>.live-workspace>.timeline{
  min-height:0!important;
  flex:1 1 0%!important;
 }
 body>.app.soul-mobile-console.slmv-show-stage.slmv-hide-repertoire .timeline .sl57-session-scroll{
  flex:1 1 0%!important;
  min-height:0!important;
 }
}
