
/* PlaMúsica v2.27.46 — Teleprompter 2.1 · Smart Timeline Hotfix */
body.pm-tp2-active{overflow:hidden!important}

.pm-tp2{
  --pm-tp-scale:1.12;
  position:fixed;
  inset:0;
  z-index:2147483100;
  display:grid;
  grid-template-rows:auto auto 5px minmax(0,1fr) auto;
  background:#05080d;
  color:#f8fafc;
  font-family:Inter,ui-sans-serif,system-ui,-apple-system,BlinkMacSystemFont,"Segoe UI",sans-serif;
}
.pm-tp2[hidden]{display:none!important}
/* v2.27.45 — mantém cada parte do overlay na linha correta mesmo quando
   o aviso de prévia está hidden. Sem isso, o stage podia cair na linha fixa
   de 5px e a cifra ficava praticamente invisível. */
.pm-tp2-head{grid-row:1}
.pm-tp2-preview{grid-row:2}
.pm-tp2-progress{grid-row:3}
.pm-tp2-stage{grid-row:4}
.pm-tp2-controls{grid-row:5}
.pm-tp2[data-theme="black"]{background:#000}
.pm-tp2-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  min-height:72px;
  padding:10px max(14px,env(safe-area-inset-right)) 10px max(14px,env(safe-area-inset-left));
  border-bottom:1px solid #1f2a35;
  background:#080e15;
}
.pm-tp2[data-theme="black"] .pm-tp2-head,
.pm-tp2[data-theme="black"] .pm-tp2-controls{background:#000}
.pm-tp2-title{min-width:0}
.pm-tp2-title>span{display:block;color:#57cfff;font-size:9px;font-weight:950;letter-spacing:.15em}
.pm-tp2-title strong{display:block;max-width:54vw;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;font-size:18px}
.pm-tp2-title small{display:block;margin-top:3px;color:#8094a7;font-size:9px;font-style:normal}
.pm-tp2-title i,.pm-tp2-title em{font-style:normal}
.pm-tp2-head-actions{display:flex;align-items:center;justify-content:flex-end;gap:6px;flex-wrap:wrap}
.pm-tp2 button{
  min-height:40px;
  padding:8px 11px;
  border:1px solid #2a3e51;
  border-radius:10px;
  background:#0d1b27;
  color:#eff7fc;
  font-weight:900;
  cursor:pointer;
}
.pm-tp2 button:hover{border-color:#52caff;background:#10293b}
.pm-tp2 button:focus-visible{outline:3px solid rgba(82,202,255,.28);outline-offset:2px}
.pm-tp2-close{border-color:#763434!important;background:#321313!important}
.pm-tp2-value{min-width:48px;text-align:center;color:#9fb4c5;font-size:10px;font-weight:900}
.pm-tp2-preview{
  padding:6px 12px;
  text-align:center;
  color:#ffe6a4;
  background:#392c09;
  border-bottom:1px solid #705614;
  font-size:9px;
  font-weight:950;
}
.pm-tp2-progress{height:5px;background:#0d1b26;overflow:hidden}
.pm-tp2-progress span{display:block;width:0;height:100%;background:linear-gradient(90deg,#22bfff,#55e7aa,#ffc247);transition:width .1s linear}

.pm-tp2-stage{
  min-width:0;
  overflow-y:auto;
  overflow-x:hidden;
  overscroll-behavior:contain;
  scroll-behavior:auto;
  padding:clamp(26px,5vh,64px) clamp(14px,6vw,90px) clamp(80px,12vh,150px);
  background:radial-gradient(circle at 50% -15%,#0e1b27 0,#05080d 45%);
}
.pm-tp2[data-theme="black"] .pm-tp2-stage{background:#000}
.pm-tp2-sheet{
  width:min(1050px,100%);
  margin:0 auto;
  font-size:calc(20px * var(--pm-tp-scale));
  line-height:1.78;
  color:#fff;
}
.pm-tp2[data-orientation="portrait"] .pm-tp2-sheet{width:min(760px,100%)}
.pm-tp2[data-orientation="landscape"] .pm-tp2-sheet{width:min(1280px,100%)}
.pm-tp2-sheet .pm-music-sheet{
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  border:0!important;
  box-shadow:none!important;
  background:transparent!important;
  color:#fff!important;
}
.pm-tp2-sheet .pm-song-section,
.pm-tp2-sheet .pm-song-prelude{
  margin:0 0 2em!important;
  padding:0!important;
  border:0!important;
  background:transparent!important;
  scroll-margin-top:10vh;
}
.pm-tp2-sheet .pm-chorus-section{
  margin:1.2em 0 2em!important;
  padding:1.05em 1.2em!important;
  border:1px solid #3d321b!important;
  border-left:6px solid #ffc047!important;
  border-radius:12px!important;
  background:#11100c!important;
  scroll-margin-top:10vh;
}
.pm-tp2[data-theme="black"] .pm-tp2-sheet .pm-chorus-section{background:#080704!important}
.pm-tp2-sheet .pm-song-section-title{
  color:#7ed7ff!important;
  font-size:.8em!important;
  font-weight:950!important;
  letter-spacing:.08em!important;
}
.pm-tp2-sheet .pm-inline-chord,
.pm-tp2-sheet .pm-note-cell-chord,
.pm-tp2-sheet .pm-note-score-chord,
.pm-tp2-sheet .pm-chord,
.pm-tp2-sheet b[class*="chord"]{
  color:#ffc047!important;
  font-weight:950!important;
  font-size:1em!important;
}
.pm-tp2-sheet p,
.pm-tp2-sheet .pm-inline-lyric,
.pm-tp2-sheet .pm-lyric,
.pm-tp2-sheet .pm-lyric-line,
.pm-tp2-sheet .pm-chord-segment{
  color:#fff!important;
  font-size:1em!important;
  line-height:1.8!important;
  overflow-wrap:anywhere;
  scroll-margin-top:13vh;
}
.pm-tp2-sheet [data-tp-block].is-current,
.pm-tp2-sheet [data-tp-paragraph].is-current{
  outline:1px solid rgba(82,202,255,.25);
}

.pm-tp2-controls{
  position:relative;
  z-index:2;
  display:grid;
  grid-template-columns:minmax(280px,.8fr) minmax(500px,1.5fr) auto;
  align-items:center;
  gap:12px;
  padding:9px max(12px,env(safe-area-inset-right)) calc(9px + env(safe-area-inset-bottom)) max(12px,env(safe-area-inset-left));
  border-top:1px solid #1d2a36;
  background:#070d13;
  box-shadow:0 -14px 34px rgba(0,0,0,.3);
}

.pm-tp2-modebar{
  grid-column:1/-1;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  padding-bottom:7px;
  border-bottom:1px solid #16232e;
}
.pm-tp2-mode-switch{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.pm-tp2-mode-switch button{min-height:34px;padding:6px 10px;font-size:9px}
.pm-tp2-mode-switch button.is-active{border-color:#52caff;background:#103852;color:#fff;box-shadow:0 0 0 1px rgba(82,202,255,.12) inset}
.pm-tp2-smart{
  display:grid;
  grid-template-columns:minmax(145px,.75fr) minmax(145px,.7fr) auto minmax(210px,1.1fr);
  align-items:end;
  gap:8px;
  flex:1;
  max-width:850px;
}
.pm-tp2-smart[hidden]{display:none!important}
.pm-tp2-smart label{display:grid;gap:3px;min-width:0}
.pm-tp2-smart label>span{font-size:8px;color:#8ca0b0;font-weight:900;letter-spacing:.04em}
.pm-tp2-smart input{
  width:100%;
  min-height:34px;
  box-sizing:border-box;
  border:1px solid #2a3e51;
  border-radius:8px;
  background:#07131d;
  color:#fff;
  padding:6px 8px;
  font-weight:900;
}
.pm-tp2-smart-font{display:grid;grid-template-columns:minmax(0,1fr) auto;align-items:center;gap:5px}
.pm-tp2-smart-font b{font-size:10px;color:#9eb3c3}
.pm-tp2-smart [data-tp-smart-calc]{min-height:34px;padding:6px 10px;border-color:#1d775d;background:#0c3f31;font-size:9px}
.pm-tp2-smart [data-tp-smart-result]{align-self:center;color:#9edac9;font-size:8px;line-height:1.3}
.pm-tp2[data-mode="smart"] .pm-tp2-speed{opacity:.55}
.pm-tp2[data-mode="smart"] .pm-tp2-speed input{cursor:not-allowed}
.pm-tp2-run{display:flex;align-items:center;gap:8px;min-width:0}
.pm-tp2-play{
  min-width:120px;
  min-height:52px!important;
  border-color:#167ec1!important;
  background:linear-gradient(135deg,#087fc5,#10a9e8)!important;
  color:white!important;
}
.pm-tp2-play.is-running{border-color:#bf7925!important;background:linear-gradient(135deg,#9a5d16,#c98325)!important}
.pm-tp2-speed{display:grid;grid-template-columns:38px minmax(90px,1fr) 38px auto;align-items:center;gap:5px;min-width:0;flex:1}
.pm-tp2-speed label{display:grid;gap:2px;min-width:0}
.pm-tp2-speed label span{font-size:8px;color:#7890a2;font-weight:900}
.pm-tp2-speed input{width:100%}
.pm-tp2-speed strong{min-width:62px;font-size:9px;color:#9eb3c3;text-align:right}
.pm-tp2-navigation{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:7px;min-width:0}
.pm-tp2-nav-group{min-width:0}
.pm-tp2-nav-group>span{display:block;margin-bottom:3px;color:#71899a;font-size:7px;font-weight:950;letter-spacing:.08em;text-align:center}
.pm-tp2-nav-group>div{display:grid;grid-template-columns:1fr 1fr;gap:4px}
.pm-tp2-nav-group button{min-width:0;padding:7px 6px;font-size:9px}
.pm-tp2-orientation>div{grid-template-columns:repeat(3,1fr)}
.pm-tp2-orientation button.is-active{border-color:#52caff;background:#103852;color:#fff}
.pm-tp2-status{display:grid;justify-items:end;gap:2px;min-width:92px}
.pm-tp2-status span:first-child{max-width:150px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap;color:#dce8ef;font-size:9px;font-weight:900}
.pm-tp2-status span:last-child{color:#5ed1ff;font-size:12px;font-weight:950}
.pm-tp2-open{position:relative}
.pm-tp2-open em{
  position:absolute;right:-7px;top:-8px;padding:2px 5px;border-radius:99px;background:#e2a318;color:#201600;
  font-size:7px;font-style:normal;font-weight:950
}

@media(max-width:980px){
  .pm-tp2-controls{grid-template-columns:1fr}
  .pm-tp2-modebar{display:grid;grid-template-columns:1fr}
  .pm-tp2-smart{max-width:none;grid-template-columns:1fr 1fr auto minmax(180px,1fr)}
  .pm-tp2-status{position:absolute;right:12px;top:-34px;padding:5px 8px;border-radius:8px;background:rgba(5,10,15,.86)}
  .pm-tp2-navigation{grid-template-columns:1fr 1fr 1fr}
}
@media(max-width:700px){
  .pm-tp2{grid-template-rows:auto auto 5px minmax(0,1fr) auto}
  .pm-tp2-mode-switch{display:grid;grid-template-columns:1fr 1fr}
  .pm-tp2-mode-switch button{min-height:42px;font-size:10px}
  .pm-tp2-smart{grid-template-columns:1fr 1fr}
  .pm-tp2-smart [data-tp-smart-calc]{min-height:44px}
  .pm-tp2-smart [data-tp-smart-result]{min-height:34px;display:flex;align-items:center}
  .pm-tp2-head{display:grid;grid-template-columns:minmax(0,1fr) auto;padding:8px 9px}
  .pm-tp2-title strong{max-width:65vw;font-size:16px}
  .pm-tp2-head-actions{display:grid;grid-template-columns:42px 44px 42px 44px 44px;gap:4px}
  .pm-tp2-head-actions [data-tp-theme],
  .pm-tp2-head-actions [data-tp-fullscreen],
  .pm-tp2-head-actions [data-tp-close]{font-size:0;padding:5px}
  .pm-tp2-head-actions [data-tp-theme]::before{content:"☾";font-size:18px}
  .pm-tp2-head-actions [data-tp-fullscreen]::before{content:"⛶";font-size:18px}
  .pm-tp2-head-actions [data-tp-close]::before{content:"✕";font-size:17px}
  .pm-tp2-value{font-size:9px}
  .pm-tp2-stage{padding:24px 10px 110px}
  .pm-tp2-sheet{font-size:calc(20px * var(--pm-tp-scale));line-height:1.82}
  .pm-tp2-controls{
    gap:8px;
    padding:8px 8px calc(8px + env(safe-area-inset-bottom));
  }
  .pm-tp2-run{display:grid;grid-template-columns:130px minmax(0,1fr)}
  .pm-tp2-play{min-width:0;width:100%;min-height:58px!important;font-size:13px}
  .pm-tp2-speed{grid-template-columns:44px minmax(80px,1fr) 44px}
  .pm-tp2-speed strong{grid-column:1/-1;text-align:center}
  .pm-tp2-speed button{min-height:48px;font-size:18px}
  .pm-tp2-navigation{grid-template-columns:1fr 1fr}
  .pm-tp2-nav-group button{min-height:50px;font-size:11px}
  .pm-tp2-orientation{grid-column:1/-1}
  .pm-tp2-status{top:-35px}
}
@media(max-width:430px){
  .pm-tp2-head{grid-template-columns:1fr}
  .pm-tp2-smart{grid-template-columns:1fr}
  .pm-tp2-smart [data-tp-smart-result]{min-height:0}
  .pm-tp2-title strong{max-width:92vw}
  .pm-tp2-head-actions{grid-template-columns:44px 48px 44px 1fr 44px 44px}
  .pm-tp2-run{grid-template-columns:1fr}
  .pm-tp2-play{min-height:62px!important;font-size:15px}
  .pm-tp2-speed{grid-template-columns:48px minmax(100px,1fr) 48px}
  .pm-tp2-navigation{grid-template-columns:1fr}
  .pm-tp2-orientation{grid-column:auto}
  .pm-tp2-nav-group button{min-height:54px;font-size:12px}
  .pm-tp2-sheet{font-size:calc(19px * var(--pm-tp-scale))}
}
@media(orientation:landscape) and (max-height:560px){
  .pm-tp2-head{min-height:50px;padding-top:4px;padding-bottom:4px}
  .pm-tp2-title small{display:none}
  .pm-tp2-stage{padding-top:14px;padding-bottom:74px}
  .pm-tp2-controls{grid-template-columns:minmax(250px,.9fr) minmax(480px,1.5fr);padding-top:5px;padding-bottom:calc(5px + env(safe-area-inset-bottom))}
  .pm-tp2-navigation{grid-template-columns:repeat(3,1fr)}
  .pm-tp2-status{display:none}
  .pm-tp2-play{min-height:46px!important}
  .pm-tp2-nav-group button{min-height:42px}
}


/* v2.28.14 — Mobile Performance View
   No celular o palco é prioridade. Controles avançados ficam em um painel
   expansível; ao iniciar a rolagem, o painel recolhe automaticamente. */
.pm-tp2-controls-toggle{display:none}

@media(max-width:700px){
  .pm-tp2-head{
    min-height:56px;
    grid-template-columns:minmax(0,1fr) auto!important;
    align-items:center;
    gap:6px;
    padding:6px 8px!important;
  }
  .pm-tp2-title>span{font-size:8px}
  .pm-tp2-title strong{
    max-width:48vw!important;
    font-size:14px!important;
    line-height:1.15;
  }
  .pm-tp2-title small{
    max-width:48vw;
    overflow:hidden;
    text-overflow:ellipsis;
    white-space:nowrap;
    font-size:8px;
  }
  .pm-tp2-head-actions{
    display:grid!important;
    grid-template-columns:36px 40px 36px 38px 38px!important;
    gap:3px!important;
  }
  .pm-tp2-head-actions button{min-height:36px;padding:4px!important}
  .pm-tp2-head-actions [data-tp-theme]{display:none}
  .pm-tp2-value{min-width:40px;font-size:8px}
  .pm-tp2-progress{height:4px}
  .pm-tp2-stage{
    padding:16px 10px 74px!important;
    min-height:0;
  }
  .pm-tp2-sheet{
    font-size:calc(20px * var(--pm-tp-scale))!important;
    line-height:1.62!important;
  }
  .pm-tp2-sheet p,
  .pm-tp2-sheet .pm-inline-lyric,
  .pm-tp2-sheet .pm-lyric,
  .pm-tp2-sheet .pm-lyric-line,
  .pm-tp2-sheet .pm-chord-segment{line-height:1.62!important}
  .pm-tp2-sheet .pm-song-section,
  .pm-tp2-sheet .pm-song-prelude{margin-bottom:1.25em!important}
  .pm-tp2-sheet .pm-chorus-section{margin:.8em 0 1.25em!important;padding:.72em .85em!important}

  .pm-tp2-controls{
    position:relative;
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:5px!important;
    padding:5px 7px calc(5px + env(safe-area-inset-bottom))!important;
    max-height:min(66vh,520px);
    overflow:auto;
  }
  .pm-tp2-controls-toggle{
    display:block;
    width:100%;
    min-height:34px!important;
    padding:4px 10px!important;
    border-radius:8px!important;
    font-size:10px!important;
    background:#0b2433!important;
    border-color:#2d6683!important;
  }

  /* Vista de apresentação: cerca de 90–105 px de comandos em vez de metade da tela. */
  .pm-tp2:not(.is-controls-expanded) .pm-tp2-modebar,
  .pm-tp2:not(.is-controls-expanded) .pm-tp2-navigation{display:none!important}
  .pm-tp2:not(.is-controls-expanded) .pm-tp2-run{
    display:grid!important;
    grid-template-columns:minmax(118px,.85fr) minmax(0,1.35fr)!important;
    gap:6px!important;
  }
  .pm-tp2:not(.is-controls-expanded) .pm-tp2-play{
    min-height:46px!important;
    font-size:12px!important;
  }
  .pm-tp2:not(.is-controls-expanded) .pm-tp2-speed{
    grid-template-columns:34px minmax(64px,1fr) 34px!important;
    gap:4px!important;
  }
  .pm-tp2:not(.is-controls-expanded) .pm-tp2-speed button{
    min-height:40px!important;
    padding:4px!important;
    font-size:16px!important;
  }
  .pm-tp2:not(.is-controls-expanded) .pm-tp2-speed label span,
  .pm-tp2:not(.is-controls-expanded) .pm-tp2-speed strong{display:none!important}
  .pm-tp2:not(.is-controls-expanded) .pm-tp2-status{
    top:-31px!important;
    right:8px!important;
    padding:3px 6px!important;
  }

  /* Painel expandido: ainda compacto, mas com todas as funções acessíveis. */
  .pm-tp2.is-controls-expanded .pm-tp2-modebar{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:6px!important;
    padding-bottom:5px!important;
  }
  .pm-tp2.is-controls-expanded .pm-tp2-mode-switch{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:5px!important;
  }
  .pm-tp2.is-controls-expanded .pm-tp2-mode-switch button{
    min-height:36px!important;
    padding:5px 7px!important;
    font-size:9px!important;
  }
  .pm-tp2.is-controls-expanded .pm-tp2-smart{
    grid-template-columns:1fr 1fr!important;
    gap:5px!important;
  }
  .pm-tp2.is-controls-expanded .pm-tp2-smart label>span{font-size:7px!important}
  .pm-tp2.is-controls-expanded .pm-tp2-smart input{min-height:34px!important}
  .pm-tp2.is-controls-expanded .pm-tp2-smart [data-tp-smart-calc]{
    min-height:36px!important;
    font-size:9px!important;
  }
  .pm-tp2.is-controls-expanded .pm-tp2-smart [data-tp-smart-result]{
    min-height:30px!important;
    font-size:8px!important;
  }
  .pm-tp2.is-controls-expanded .pm-tp2-run{
    display:grid!important;
    grid-template-columns:120px minmax(0,1fr)!important;
    gap:6px!important;
  }
  .pm-tp2.is-controls-expanded .pm-tp2-play{min-height:46px!important;font-size:11px!important}
  .pm-tp2.is-controls-expanded .pm-tp2-speed{
    grid-template-columns:34px minmax(64px,1fr) 34px!important;
  }
  .pm-tp2.is-controls-expanded .pm-tp2-speed strong{
    grid-column:1/-1;
    min-width:0!important;
    line-height:1;
  }
  .pm-tp2.is-controls-expanded .pm-tp2-navigation{
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:5px!important;
  }
  .pm-tp2.is-controls-expanded .pm-tp2-nav-group>span{font-size:6px!important}
  .pm-tp2.is-controls-expanded .pm-tp2-nav-group button{
    min-height:38px!important;
    padding:5px 4px!important;
    font-size:9px!important;
  }
  .pm-tp2.is-controls-expanded .pm-tp2-orientation{grid-column:1/-1!important}
}

@media(max-width:430px){
  .pm-tp2-head{grid-template-columns:minmax(0,1fr) auto!important}
  .pm-tp2-title strong{max-width:44vw!important;font-size:13px!important}
  .pm-tp2-title small{max-width:44vw}
  .pm-tp2-head-actions{grid-template-columns:34px 38px 34px 36px 36px!important}
  .pm-tp2:not(.is-controls-expanded) .pm-tp2-run{
    grid-template-columns:112px minmax(0,1fr)!important;
  }
  .pm-tp2.is-controls-expanded .pm-tp2-smart{grid-template-columns:1fr 1fr!important}
  .pm-tp2.is-controls-expanded .pm-tp2-navigation{grid-template-columns:1fr 1fr!important}
  .pm-tp2-sheet{font-size:calc(19px * var(--pm-tp-scale))!important}
}
