/* SoulOne LIVE 2.0 · Híbrido Pro
 * Visual-only skin over the existing Studio sync, Web Audio engine and stage
 * views. Keep transport, cloud, cues, downloads, outputs and mobile mounted.
 * This sheet loads last so it can refine older v05–v19 layouts safely.
 */
:root{
  --sl-pro-navy:#14283f;
  --sl-pro-navy-deep:#0e1d30;
  --sl-pro-blue:#1676c8;
  --sl-pro-sky:#6ab9fa;
  --sl-pro-ink:#203b52;
  --sl-pro-muted:#6e8599;
  --sl-pro-line:#dce5ee;
  --sl-pro-surface:#f9fbfd;
}
html:not(.soulone-ipad-classic),
html:not(.soulone-ipad-classic) body{background:#edf2f7}
body>.app{color:var(--sl-pro-ink)}
body>.app .top.stage-header{
  border:1px solid #dce6ee;
  border-radius:15px;
  background:#fff;
  box-shadow:0 3px 20px rgba(23,48,72,.055);
}
.stage-header .brand{letter-spacing:-.065em;color:#135c9f}
.stage-header .brand .live{
  background:#176fb6;border-radius:5px;
  letter-spacing:.04em;font-weight:830;
}
.stage-header .song-head strong{
  color:#203a51;font-weight:850;letter-spacing:-.045em;
}
.stage-header .song-head small{color:#71869a;font-weight:600}
.stage-header .stage-field .field-label{
  color:#7990a3;letter-spacing:.11em;font-weight:830;
}
.stage-header .stage-field .value-row strong,
.stage-header .stage-field .ctl-group .val,
.stage-header .stage-field--key strong{
  color:#193c57;font-variant-numeric:tabular-nums;
}
.stage-header .stage-actions #status{
  border-color:#bfe5d3;background:#e8f7f0;
  color:#10765a;letter-spacing:.035em;
}
.stage-header .stage-icon,
.stage-header .stage-more{
  border:1px solid #d9e5ef;background:#f5f9fc;
  color:#355d7d;box-shadow:none;border-radius:10px;
}
.stage-header .stage-icon:hover,
.stage-header .stage-more:hover{background:#eaf4fd;border-color:#abcde7}
body>.app>.stage-footer-note{color:#71899e;letter-spacing:.01em}
body>.app>.stage-footer-note>.protected{
  color:#71899e;font-weight:660;
}
.sl-mode-group{background:#e9f0f6;border-color:#d8e3ed;border-radius:11px}
.sl-mode-group .sl-mode-btn{border-radius:8px;font-weight:770}
.sl-mode-group .sl-mode-btn[aria-pressed=true]{
  color:#135f9e;background:#fff;box-shadow:0 2px 6px #173b5716;
}
.sl-desktop-views>.sl-repertoire-view[aria-pressed=true]{
  background:#dceefd!important;border-color:#98c6e9!important;color:#075d9f!important;
}
.right.live-library-panel{
  background:var(--sl-pro-surface);
  border:1px solid #d8e3ed;
  box-shadow:0 8px 26px rgba(18,53,81,.07);
  border-radius:15px;
}
.right.live-library-panel .live-library-header{
  padding:16px 20px 13px!important;
  background:#fff;border-bottom:1px solid #e9eef4;
}
.right.live-library-panel .live-library-header strong{
  color:#183b56;font-size:17px!important;font-weight:860;letter-spacing:-.035em;
}
.right.live-library-panel .live-library-header small{
  color:#8193a5;font-size:11px!important;font-weight:600;
}
.right.live-library-panel>.cloud-toolbar{
  background:#f5f8fb!important;border-bottom-color:#e6edf3!important;
}
.right.live-library-panel .sl-now-playing{
  display:flex;flex-direction:column;gap:0;min-width:0;
  border:0!important;
  border-bottom:1px solid #203951!important;
  padding:17px 21px 13px;
  color:#f5f9ff;
  background:linear-gradient(118deg,#102037 0%,#1b344d 58%,#214b69 100%);
  box-shadow:inset 0 1px 0 #ffffff0c;
}
.right.live-library-panel .sl-np-upper{
  display:flex;align-items:center;justify-content:space-between;
  gap:16px;flex-wrap:wrap;min-width:0;
}
.right.live-library-panel .sl-np-info{
  flex:1 1 230px;min-width:0;gap:5px;
}
.right.live-library-panel .sl-np-state{
  color:#a3c5df;font-size:9px;letter-spacing:.13em;
  font-weight:850;line-height:1.1;
}
.right.live-library-panel .sl-np-playing .sl-np-state{color:#6ce5c1}
.right.live-library-panel .sl-np-paused .sl-np-state{color:#ffd18b}
.right.live-library-panel .sl-np-preparing .sl-np-state{color:#aacef2}
.right.live-library-panel .sl-np-title{
  color:#fff;letter-spacing:-.045em;font-weight:850;
  line-height:1.15;font-size:22px;
}
.right.live-library-panel .sl-np-actions{
  display:flex;align-items:center;justify-content:flex-end;
  gap:12px;margin-left:auto;flex-wrap:wrap;
}
.right.live-library-panel .sl-np-time{
  color:#d5e8f9;font-size:15px;font-weight:810;
  font-variant-numeric:tabular-nums;letter-spacing:.005em;
}
.right.live-library-panel .sl-pro-transport{
  display:inline-flex;align-items:center;justify-content:center;
  gap:5px;border:1px solid #ffffff20;border-radius:13px;
  padding:4px;background:#0715275c;white-space:nowrap;
}
.right.live-library-panel .sl-pro-transport button{
  display:grid;place-items:center;
  width:39px;height:38px;min-width:39px;min-height:38px;
  padding:0;border:1px solid transparent;border-radius:9px;
  color:#e3effa;background:#ffffff12;
  font-family:inherit;font-size:16px;font-weight:850;
  box-shadow:none;filter:none;transition:background .12s ease;
}
.right.live-library-panel .sl-pro-transport button:hover:not(:disabled){
  background:#ffffff30;border-color:#ffffff34;
}
.right.live-library-panel .sl-pro-transport .sl-pro-play{
  background:#2888d5;color:white;font-size:18px;
}
.right.live-library-panel .sl-pro-transport .sl-pro-play:hover:not(:disabled){
  background:#399de9;
}
.right.live-library-panel .sl-pro-transport button:disabled{
  opacity:.38;cursor:not-allowed;
}
.right.live-library-panel .sl-pro-transport button:focus-visible{
  outline:2px solid #87cbff;outline-offset:2px;
}
.right.live-library-panel .sl-np-fullscreen{
  background:#ffffff0b;border:1px solid #ffffff32;
  color:#dfebf6;min-height:36px;border-radius:9px;
  font-size:10px;font-weight:700;
}
.right.live-library-panel .sl-np-fullscreen:hover{
  background:#ffffff20;border-color:#ffffff50;
}
.right.live-library-panel .sl-np-track{
  flex:0 0 7px;height:7px;margin-top:14px;
  background:#ffffff30;border-radius:100px;
  box-shadow:inset 0 1px 2px #0002;
}
.right.live-library-panel .sl-np-fill,
.right.live-library-panel .sl-np-playing .sl-np-fill{
  background:linear-gradient(90deg,#399def,#6de2d1);
  border-radius:100px;
}
.right.live-library-panel .sl-np-paused .sl-np-fill{
  background:#ebbd72;
}
.right.live-library-panel .sl-pro-context{
  display:flex;justify-content:space-between;align-items:center;
  gap:8px;flex-wrap:wrap;margin-top:11px;
  color:#a5bfd2;font-size:10px;font-weight:700;line-height:1.3;
}
.right.live-library-panel .sl-pro-context [data-sl-next]{
  display:block;white-space:nowrap;text-overflow:ellipsis;
  max-width:min(480px,100%);overflow:hidden;
  color:#d3e5f1;
}
.right.live-library-panel .sl-pro-context [data-sl-count]{
  letter-spacing:.08em;text-transform:uppercase;color:#92b2c9;
}
.right.live-library-panel .tabs{
  padding:4px 14px 0;background:#fff!important;
  border-bottom:1px solid #e5ecf3;gap:8px;
}
.right.live-library-panel .tabs button{
  min-height:41px;padding:11px 12px 10px!important;
  color:#71889c!important;font-weight:770!important;font-size:11px!important;
}
.right.live-library-panel .tabs button.active{
  border-bottom-color:#1e85d2!important;color:#126baa!important;
}
.right.live-library-panel .tabcontent{
  background:linear-gradient(#fcfdfe,#f9fbfd);
  padding:16px 20px 22px!important;
}
.right.live-library-panel .search{
  border:1px solid #d9e5ef;background:#f5f8fb;
  border-radius:10px!important;min-height:42px;max-height:42px;
  color:#284a65;font-size:12px!important;
  margin-bottom:11px!important;
}
.right.live-library-panel .search:focus{
  background:#fff;border-color:#5ea9e1;box-shadow:0 0 0 3px #2183d61c;
}
.right.live-library-panel .setlist{gap:3px;padding-bottom:6px}
.right.live-library-panel .songitem,
.right.live-library-panel .reorder-setlist .songitem{
  min-height:63px;padding:9px 12px!important;
  gap:9px!important;border:1px solid transparent!important;
  border-bottom:1px solid #e8eef4!important;
  border-radius:10px;background:#fff;
  transition:background .12s ease,border-color .12s ease;
}
.right.live-library-panel .songitem:hover{background:#f2f7fc}
.right.live-library-panel .songitem.selected,
.right.live-library-panel .reorder-setlist .songitem.selected{
  border:1px solid #bad9ef!important;
  background:#e8f3fc!important;
  box-shadow:inset 3px 0 #167bc6!important;
}
.right.live-library-panel .songitem .name{gap:3px}
.right.live-library-panel .songitem .name b{
  font-size:14px!important;font-weight:820;letter-spacing:-.025em;
  color:#203e56!important;
}
.right.live-library-panel .songitem .name small{
  font-size:11px!important;font-weight:570;color:#748b9e!important;
}
.right.live-library-panel .songitem .sl-song-details{
  gap:8px;font-variant-numeric:tabular-nums;
}
.right.live-library-panel .songitem .sl-song-details .song-meta{
  color:#6b879d!important;font-size:9px!important;
}
.right.live-library-panel .songitem .song-grip{color:#a8b8c8}
.right.live-library-panel .songitem .num{color:#8297a7;font-variant-numeric:tabular-nums}
.right.live-library-panel .songitem .sl-song-playing-progress{
  height:4px;border-radius:100px;margin-top:5px;
}
.right.live-library-panel .songitem .sl-mini-transport{gap:5px}
.right.live-library-panel .songitem .sl-mini-transport .sl-mini-play,
.right.live-library-panel .songitem .sl-mini-transport .sl-mini-pause,
.right.live-library-panel .songitem .sl-mini-transport .sl-mini-stop{
  display:grid!important;place-items:center!important;
  height:38px!important;min-height:38px!important;
  width:39px!important;min-width:39px!important;flex-basis:39px!important;
  padding:0!important;border:1px solid #dce7f0!important;
  border-radius:9px!important;background:#f3f8fc!important;
  color:#236b9e!important;font-size:15px!important;
  animation:none!important;transform:none!important;transition:background .12s!important;
}
.right.live-library-panel .songitem .sl-mini-transport .sl-mini-play:hover:not(:disabled),
.right.live-library-panel .songitem .sl-mini-transport .sl-mini-pause:hover:not(:disabled),
.right.live-library-panel .songitem .sl-mini-transport .sl-mini-stop:hover:not(:disabled){
  background:#e1f0fc!important;
}
.right.live-library-panel .songitem.selected .sl-mini-transport .sl-mini-play:not(:disabled){
  background:#1679c4!important;border-color:#1679c4!important;color:#fff!important;
}
.right.live-library-panel .songitem .sl-mini-transport button:disabled{
  opacity:.37!important;cursor:default;
}
.right.live-library-panel .songitem .sl-song-more{
  color:#718da4!important;border-radius:9px!important;
}
.right.live-library-panel .side-actions{
  padding:12px 0 7px!important;gap:9px;
}
.right.live-library-panel .side-actions button{
  min-height:38px!important;border-radius:9px!important;font-size:10px!important;
}
.right.live-library-panel .side-actions button:first-child{
  color:#126da9!important;background:#e6f3fc!important;
}
.right.live-library-panel .sl-restore{font-size:10px;color:#6a8598}
body>.app .live-workspace>.timeline,
body>.app .live-workspace>.progress-panel{
  border-color:#d9e4ed;background:#fff;box-shadow:0 3px 16px #0e385413;
}
body>.app .live-workspace .progress-panel .transport .primary{
  background:#176fbb;border-color:#176fbb;color:#fff;
}
body>.app #mixer.clean-mixer{
  border-color:#d9e4ed;box-shadow:0 3px 16px #0e385413;
}

/* The four-view desktop console retains all instruments but centers its
 * actual repertoire content rather than creating 1500px-long song rows. */
@media(min-width:1000px) and (min-height:580px) and (pointer:fine){
  body>.app.sl-mode-repertoire>.main-grid>.right.live-library-panel{
    border-radius:15px;
  }
  body>.app.sl-mode-repertoire .right.live-library-panel .sl-now-playing{
    padding:18px 22px 14px;
  }
  body>.app.sl-mode-repertoire .right.live-library-panel .sl-np-title{font-size:24px}
  body>.app.sl-mode-repertoire .right.live-library-panel .sl-np-time{font-size:16px}
  body>.app.sl-mode-repertoire .right.live-library-panel .sl-np-track{
    height:8px;flex-basis:8px;
  }
  body>.app.sl-mode-repertoire .right.live-library-panel .tabcontent{
    padding:17px clamp(18px,4.5vw,72px) 24px!important;
  }
  body>.app.sl-mode-repertoire .right.live-library-panel .tabcontent .search,
  body>.app.sl-mode-repertoire .right.live-library-panel .tabcontent .setlist,
  body>.app.sl-mode-repertoire .right.live-library-panel .tabcontent .side-actions,
  body>.app.sl-mode-repertoire .right.live-library-panel .tabcontent .sl-restore{
    max-width:1160px;margin-left:auto!important;margin-right:auto!important;
  }
  body>.app.sl-mode-repertoire .right.live-library-panel .songitem{
    min-height:66px!important;padding:10px 16px!important;
  }
  body>.app.sl-mode-repertoire .right.live-library-panel .songitem .name b{
    font-size:15px!important;
  }
  body>.app.sl-mode-repertoire .right.live-library-panel .songitem .name small{
    font-size:11px!important;
  }
  body>.app:not(.sl-mode-repertoire) .right.live-library-panel .sl-now-playing{
    background:#eef5fb;border-bottom-color:#dce8f1!important;
    padding:10px 11px 9px;
  }
  body>.app:not(.sl-mode-repertoire) .right.live-library-panel .sl-np-title{
    color:#1e3f5a;font-size:12px;
  }
  body>.app:not(.sl-mode-repertoire) .right.live-library-panel .sl-np-state{
    color:#567f9d;font-size:8px;
  }
  body>.app:not(.sl-mode-repertoire) .right.live-library-panel .sl-np-time{
    color:#4c708b;font-size:10px;
  }
  body>.app:not(.sl-mode-repertoire) .right.live-library-panel .sl-pro-transport{
    padding:2px;gap:3px;background:#e3eff8;border-color:#d4e5f0;
  }
  body>.app:not(.sl-mode-repertoire) .right.live-library-panel .sl-pro-transport button{
    width:28px;min-width:28px;height:28px;min-height:28px;
    color:#23628f;background:#fff;font-size:12px;
  }
  body>.app:not(.sl-mode-repertoire) .right.live-library-panel .sl-pro-transport .sl-pro-play{
    color:white;background:#197cc6;
  }
  body>.app:not(.sl-mode-repertoire) .right.live-library-panel .sl-np-track{margin-top:7px}
  body>.app:not(.sl-mode-repertoire) .right.live-library-panel .sl-pro-context,
  body>.app:not(.sl-mode-repertoire) .right.live-library-panel .sl-np-fullscreen{display:none!important}
  body>.app:not(.sl-mode-repertoire) .right.live-library-panel .sl-np-actions{
    gap:6px;
  }
}
@media(max-width:1100px) and (pointer:coarse){
  .soul-mobile-console .right.live-library-panel .sl-now-playing{
    padding:11px 13px 12px;gap:0;
  }
  .soul-mobile-console .right.live-library-panel .sl-np-upper{
    align-items:flex-start;gap:7px;
  }
  .soul-mobile-console .right.live-library-panel .sl-np-info{
    flex:1 1 120px;gap:4px;
  }
  .soul-mobile-console .right.live-library-panel .sl-np-title{
    font-size:17px;line-height:1.15;
  }
  .soul-mobile-console .right.live-library-panel .sl-np-actions{
    margin-left:0;gap:7px;justify-content:flex-start;
  }
  .soul-mobile-console .right.live-library-panel .sl-np-time{
    font-size:12px;
  }
  .soul-mobile-console .right.live-library-panel .sl-pro-transport{
    padding:3px;gap:3px;border-radius:10px;
  }
  .soul-mobile-console .right.live-library-panel .sl-pro-transport button{
    width:35px;min-width:35px;height:35px;min-height:35px;font-size:14px;
  }
  .soul-mobile-console .right.live-library-panel .sl-np-track{margin-top:10px}
  .soul-mobile-console .right.live-library-panel .sl-pro-context{
    margin-top:8px;font-size:9px;
  }
  .soul-mobile-console .right.live-library-panel .sl-np-fullscreen{display:none!important}
  .soul-mobile-console .right.live-library-panel .tabcontent{
    padding:10px!important;
  }
  .soul-mobile-console .right.live-library-panel .songitem{
    gap:6px!important;padding:9px 8px!important;
  }
  .soul-mobile-console .right.live-library-panel .songitem .sl-mini-transport{
    gap:3px;
  }
  .soul-mobile-console .right.live-library-panel .songitem .sl-mini-transport .sl-mini-play,
  .soul-mobile-console .right.live-library-panel .songitem .sl-mini-transport .sl-mini-pause,
  .soul-mobile-console .right.live-library-panel .songitem .sl-mini-transport .sl-mini-stop{
    width:36px!important;min-width:36px!important;flex-basis:36px!important;
    height:39px!important;min-height:39px!important;
  }
  .soul-mobile-console .right.live-library-panel .songitem .name b{
    font-size:12px!important;
  }
  .soul-mobile-console .right.live-library-panel .songitem .name small{
    font-size:10px!important;
  }
}
@media(max-width:540px) and (pointer:coarse){
  .soul-mobile-console .right.live-library-panel .sl-np-upper{
    flex-direction:column;align-items:stretch;
  }
  .soul-mobile-console .right.live-library-panel .sl-np-actions{
    width:100%;justify-content:space-between;
  }
  .soul-mobile-console .right.live-library-panel .sl-pro-context [data-sl-next]{
    max-width:240px;
  }
  .soul-mobile-console .right.live-library-panel .songitem .num{
    flex-basis:12px;width:12px;
  }
  .soul-mobile-console .right.live-library-panel .songitem .sl-mini-transport .sl-mini-play,
  .soul-mobile-console .right.live-library-panel .songitem .sl-mini-transport .sl-mini-pause,
  .soul-mobile-console .right.live-library-panel .songitem .sl-mini-transport .sl-mini-stop{
    width:32px!important;min-width:32px!important;flex-basis:32px!important;
    height:37px!important;min-height:37px!important;
  }
}
@media(prefers-reduced-motion:reduce){
  .right.live-library-panel .songitem,
  .right.live-library-panel .sl-pro-transport button{
    transition:none!important;
  }
}
