/* SoulOne LIVE v0.12 — minimal view modes and independent stage windows.
   Desktop only: the separate mobile player/mixer navigation is unchanged. */
@media (min-width:1000px) and (min-height:580px) and (pointer:fine){
  body>.app>.stage-footer-note{
    display:grid!important;
    grid-template-columns:minmax(0,1fr) auto minmax(0,1fr);
    align-items:center;
    gap:10px;
    min-height:35px!important;
    padding:2px 4px!important;
    overflow:visible!important;
    position:relative;
    z-index:35;
  }
  body>.app>.stage-footer-note>.protected{
    justify-self:end;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:10px;
    padding-right:2px;
  }
  body>.app>.stage-footer-note>span:first-child{
    justify-self:start;
    white-space:nowrap;
    font-size:10px;
  }
  body>.app.sl-hide-repertoire>.main-grid{
    grid-template-columns:minmax(0,1fr)!important;
    grid-template-areas:"stage"!important;
    gap:0!important;
  }
  body>.app.sl-hide-repertoire>.main-grid>.right{
    display:none!important;
  }
  body>.app.sl-mode-stage>.meter-title{
    display:none!important;
  }
  body>.app.sl-mode-stage:not(.soul-mobile-console),
  html:fullscreen body>.app.sl-mode-stage:not(.soul-mobile-console){
    grid-template-rows:auto auto minmax(0,1fr)!important;
  }
  body>.app.sl-mode-stage>#mixer{
    display:none!important;
  }
  body>.app.sl-mode-stage>.main-grid>.live-workspace>.timeline{
    padding:14px 16px!important;
  }
  body>.app.sl-mode-stage>.main-grid>.live-workspace>.timeline .wave-row{
    height:48px!important;
  }
}
.sl-desktop-views{
  display:none;
}
@media (min-width:1000px) and (min-height:580px) and (pointer:fine){
  .sl-desktop-views{
    display:flex;
    align-items:center;
    justify-content:center;
    min-width:0;
    gap:8px;
    font-size:11px;
    color:#597a93;
  }
}
.sl-view-label{
  font-weight:800;
  color:#6a8499;
  font-size:10px;
  text-transform:uppercase;
  letter-spacing:.08em;
  white-space:nowrap;
}
.sl-mode-group{
  display:inline-flex;
  align-items:stretch;
  gap:2px;
  padding:3px;
  background:#eef4f9;
  border:1px solid #d5e4ee;
  border-radius:10px;
}
.sl-mode-group .sl-mode-btn{
  border:0;
  border-radius:7px;
  padding:6px 10px;
  min-height:29px;
  background:transparent;
  color:#4a6b85;
  font-weight:780;
  font-size:11px;
  line-height:1;
  box-shadow:none;
  white-space:nowrap;
  cursor:pointer;
}
.sl-mode-group .sl-mode-btn:hover{
  background:#e0ebf5;
}
.sl-mode-group .sl-mode-btn[aria-pressed=true]{
  background:#fff;
  color:#075da7;
  box-shadow:0 1px 5px #214a701c;
}
.sl-view-menu-wrap{
  position:relative;
  flex:0 0 auto;
}
.sl-windows-btn{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  border:1px solid #cbdfea;
  border-radius:9px;
  padding:7px 10px;
  background:#fff;
  color:#375e7c;
  font-size:11px;
  font-weight:850;
  min-height:35px;
  box-shadow:none;
  white-space:nowrap;
  cursor:pointer;
}
.sl-windows-btn svg{
  width:15px;height:15px;
  stroke:currentColor;stroke-width:1.8;fill:none;
  stroke-linecap:round;stroke-linejoin:round;
}
.sl-windows-btn:hover,.sl-windows-btn[aria-expanded=true]{
  background:#eaf5ff;
  border-color:#a8cfed;
  color:#0768b8;
}
.sl-mode-btn:focus-visible,.sl-windows-btn:focus-visible,
.sl-window-choices input:focus-visible{
  outline:2px solid #208bdb;
  outline-offset:2px;
}
.sl-window-menu{
  position:absolute;
  z-index:500;
  top:calc(100% + 8px);
  right:0;
  width:230px;
  padding:11px;
  background:#fff;
  border:1px solid #ccdfed;
  border-radius:13px;
  box-shadow:0 14px 35px #193d5d30;
}
.sl-window-menu[hidden]{display:none!important}
.sl-window-menu strong{
  display:block;
  font-size:12px;
  font-weight:900;
  color:#213f59;
  margin-bottom:3px;
}
.sl-window-menu .sl-window-help{
  margin:0 0 10px;
  font-size:11px;
  line-height:1.35;
  color:#71899c;
}
.sl-window-choices{
  display:flex;
  flex-direction:column;
  gap:5px;
}
.sl-window-choices label{
  display:flex;
  align-items:center;
  gap:10px;
  border-radius:8px;
  padding:9px 8px;
  background:#f6f9fc;
  color:#36566f;
  font-size:12px;
  font-weight:700;
  cursor:pointer;
}
.sl-window-choices label:hover{background:#edf5fc}
.sl-window-choices input{
  margin:0;
  width:16px;
  height:16px;
  accent-color:#0878c9;
}
.sl-window-menu .sl-window-footnote{
  display:block;
  margin-top:10px;
  color:#68839b;
  line-height:1.35;
  font-size:10px;
  border-top:1px solid #e5eef5;
  padding-top:8px;
}
@media (min-width:1000px) and (max-width:1280px) and (pointer:fine){
  body>.app>.stage-footer-note{gap:6px!important}
  .sl-view-label{display:none}
  .sl-mode-group .sl-mode-btn{padding:6px 7px;font-size:10px}
  .sl-windows-btn{font-size:10px;padding:7px 8px}
  body>.app>.stage-footer-note>.protected{font-size:9px}
}


/* Four-stage selector: Repertorio is a dedicated workspace, not a popup.
   All waveforms, playback nodes and mixer DOM remain mounted. */
@media (min-width:1000px) and (min-height:580px) and (pointer:fine){
  html:not(.soulone-ipad-classic) body>.app.sl-mode-repertoire,
  html:fullscreen body>.app.sl-mode-repertoire {
    grid-template-rows:auto auto minmax(0,1fr)!important;
    overflow:hidden!important;
  }
  body>.app.sl-mode-repertoire>.main-grid{
    grid-row:3!important;
    display:grid!important;
    grid-template-areas:"library"!important;
    grid-template-columns:minmax(0,min(880px,100%))!important;
    justify-content:center!important;
    gap:0!important;
    min-height:0!important;
    overflow:hidden!important;
  }
  body>.app.sl-mode-repertoire>.main-grid>.right.live-library-panel{
    grid-area:library!important;
    display:flex!important;
    flex-direction:column;
    height:100%!important;
    min-height:0!important;
    width:100%!important;
    max-width:880px!important;
    overflow:hidden!important;
    border-radius:14px;
  }
  body>.app.sl-mode-repertoire>.main-grid>.right .tabcontent{
    min-height:0!important;
    overflow-y:auto!important;
  }
  body>.app.sl-mode-repertoire>.main-grid>.live-workspace,
  body>.app.sl-mode-repertoire>.meter-title,
  body>.app.sl-mode-repertoire>#mixer{
    display:none!important;
  }
  body>.app.sl-mode-repertoire>.stage-footer-note{
    grid-row:2!important;
  }
  .sl-desktop-views .sl-mode-btn[data-live-mode="repertoire"]{
    min-width:85px;
  }
}
@media (min-width:1000px) and (min-height:580px) and (max-width:1280px) and (pointer:fine){
  .sl-desktop-views .sl-mode-btn[data-live-mode="repertoire"]{min-width:74px}
}

/* Standalone Repertorio shortcut lives in the former Ventanas position. */
@media (min-width:1000px) and (min-height:580px) and (pointer:fine){
  .sl-desktop-views>.sl-repertoire-view{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    flex:0 0 auto;
    min-width:91px;
    min-height:35px;
    padding:7px 11px;
    border:1px solid #caddeb;
    border-radius:9px;
    background:#fff;
    color:#37617e;
    box-shadow:none;
    font-family:inherit;
    font-size:11px;
    font-weight:810;
    white-space:nowrap;
    cursor:pointer;
  }
  .sl-desktop-views>.sl-repertoire-view:hover{
    background:#edf6fe;
  }
  .sl-desktop-views>.sl-repertoire-view[aria-pressed=true]{
    background:#e6f3ff;
    border-color:#a8d0ec;
    color:#075f9f;
    box-shadow:inset 0 0 0 1px #b8daef;
  }
}
