
.ccb-partitura-tabs{
  --ccb-purple:#8232EC;
  --ccb-purple-dark:#6d25ca;
  --ccb-text:#1e3145;
  --ccb-muted:#6f8294;
  --ccb-line:#e5ebf0;

  position:relative;
  width:100%;
}

.ccb-tabs-head{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:16px;
  margin:0 0 14px;
}

.ccb-tabs-copy h2{
  margin:0!important;
  font-family:"Baloo Bhai 2",sans-serif!important;
  color:var(--ccb-text)!important;
  font-size:28px!important;
  line-height:1!important;
  font-weight:700!important;
}

.ccb-tabs-copy p{
  margin:6px 0 0!important;
  color:var(--ccb-muted)!important;
  font-size:14px!important;
}

.ccb-tabs-switch{
  display:flex;
  align-items:center;
  gap:8px;
  padding:6px;
  border-radius:16px;
  background:#fff;
  border:1px solid var(--ccb-line);
  box-shadow:0 8px 22px rgba(31,72,105,.08);
}

.ccb-tabs-switch button{
  min-height:42px;
  padding:0 16px;
  border:1px solid transparent;
  border-radius:12px;
  background:transparent;
  color:#5e7184;
  font:800 13px/1 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
  cursor:pointer;
  transition:.2s ease;
}

.ccb-tabs-switch button:hover{
  background:#f7f2fe;
  color:var(--ccb-purple);
}

.ccb-tabs-switch button.is-active{
  background:linear-gradient(180deg,var(--ccb-purple),var(--ccb-purple-dark));
  color:#fff;
  box-shadow:0 8px 18px rgba(130,50,236,.22);
}

.ccb-partitura-tabs .ccb-pdf-panel{
  width:100%;
  background:#fff;
  border:1px solid var(--ccb-line);
  border-radius:22px;
  padding:14px;
  box-shadow:0 12px 30px rgba(31,72,105,.10);
}

.ccb-partitura-tabs .ccb-pdf-panel[hidden]{
  display:none!important;
}

.ccb-partitura-tabs .ccb-pdf-panel .elementor-widget-shortcode,
.ccb-partitura-tabs .ccb-pdf-panel .elementor-shortcode,
.ccb-partitura-tabs .ccb-pdf-panel iframe,
.ccb-partitura-tabs .ccb-pdf-panel embed{
  width:100%!important;
  max-width:100%!important;
}

.ccb-partitura-tabs .ccb-pdf-panel iframe{
  min-height:680px!important;
  border-radius:14px;
  overflow:hidden;
}

@media(max-width:900px){
  .ccb-tabs-head{
    align-items:flex-start;
    flex-direction:column;
  }
  .ccb-tabs-switch{
    width:100%;
  }
  .ccb-tabs-switch button{
    flex:1;
  }
}

@media(max-width:700px){
  .ccb-tabs-copy h2{
    font-size:24px!important;
  }
  .ccb-tabs-switch{
    gap:5px;
    padding:5px;
    border-radius:14px;
  }
  .ccb-tabs-switch button{
    min-height:40px;
    padding:0 8px;
    font-size:12px;
  }
  .ccb-partitura-tabs .ccb-pdf-panel{
    border-radius:18px;
    padding:8px;
  }
  .ccb-partitura-tabs .ccb-pdf-panel iframe{
    min-height:560px!important;
  }
}


/* v1.0.1 — EmbedPress ocupando toda a largura útil */
.ccb-partitura-tabs,
.ccb-partitura-tabs > .elementor-element,
.ccb-partitura-tabs .ccb-pdf-panel{
  width:100%!important;
  max-width:100%!important;
  flex:0 0 100%!important;
}

.ccb-partitura-tabs .ccb-pdf-panel{
  align-self:stretch!important;
}

/* wrappers comuns do Elementor/EmbedPress */
.ccb-partitura-tabs .ccb-pdf-panel .elementor-widget,
.ccb-partitura-tabs .ccb-pdf-panel .elementor-widget-container,
.ccb-partitura-tabs .ccb-pdf-panel .elementor-shortcode,
.ccb-partitura-tabs .ccb-pdf-panel .embedpress-document-embed,
.ccb-partitura-tabs .ccb-pdf-panel .embedpress-pdf,
.ccb-partitura-tabs .ccb-pdf-panel .embedpress-pdf-container,
.ccb-partitura-tabs .ccb-pdf-panel .pdfobject-container{
  width:100%!important;
  max-width:100%!important;
  margin-left:0!important;
  margin-right:0!important;
}

.ccb-partitura-tabs .ccb-pdf-panel iframe,
.ccb-partitura-tabs .ccb-pdf-panel embed,
.ccb-partitura-tabs .ccb-pdf-panel object{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  min-width:100%!important;
  margin:0!important;
}

/* garante que os dois painéis não herdem 50% do layout antigo */
.ccb-partitura-tabs .ccb-pdf-colorida,
.ccb-partitura-tabs .ccb-pdf-simplificada{
  width:100%!important;
  max-width:100%!important;
  flex-basis:100%!important;
}

/* visualizador mais alto no desktop para aproveitar a largura */
@media(min-width:901px){
  .ccb-partitura-tabs .ccb-pdf-panel iframe,
  .ccb-partitura-tabs .ccb-pdf-panel embed,
  .ccb-partitura-tabs .ccb-pdf-panel object{
    min-height:760px!important;
  }
}

@media(max-width:900px){
  .ccb-partitura-tabs .ccb-pdf-panel iframe,
  .ccb-partitura-tabs .ccb-pdf-panel embed,
  .ccb-partitura-tabs .ccb-pdf-panel object{
    min-height:640px!important;
  }
}

@media(max-width:700px){
  .ccb-partitura-tabs .ccb-pdf-panel{
    padding:6px!important;
  }

  .ccb-partitura-tabs .ccb-pdf-panel iframe,
  .ccb-partitura-tabs .ccb-pdf-panel embed,
  .ccb-partitura-tabs .ccb-pdf-panel object{
    min-height:520px!important;
  }
}


/* v1.1.0 — topo da página individual */
.ccb-partitura-header{
  position:relative;
  overflow:hidden;
  width:100%;
  padding:30px clamp(20px,4vw,46px)!important;
  border-radius:26px;
  background:
    radial-gradient(circle at 94% 10%,rgba(130,50,236,.10) 0 12%,transparent 13%),
    radial-gradient(circle at 83% 78%,rgba(46,161,219,.09) 0 11%,transparent 12%),
    linear-gradient(180deg,#fff 0%,#fbfdff 100%);
  border:1px solid #edf1f5;
  box-shadow:0 14px 34px rgba(31,72,105,.10);
}

.ccb-partitura-header .elementor-widget-heading{
  margin-bottom:6px!important;
}

.ccb-partitura-header .elementor-heading-title,
.ccb-partitura-title .elementor-heading-title{
  margin:0!important;
  font-family:"Baloo Bhai 2",sans-serif!important;
  color:#249bd2!important;
  font-size:clamp(34px,4.2vw,54px)!important;
  line-height:1.02!important;
  letter-spacing:-1px!important;
  font-weight:800!important;
  text-align:center!important;
}

.ccb-partitura-meta{
  margin-top:12px!important;
}

.ccb-partitura-meta,
.ccb-partitura-meta *{
  font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;
}

/* transforma links/textos das informações em chips */
.ccb-partitura-meta .elementor-widget-container{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:8px!important;
}

.ccb-partitura-meta a,
.ccb-partitura-meta span,
.ccb-partitura-meta p{
  margin:0!important;
}

.ccb-partitura-meta a{
  display:inline-flex!important;
  align-items:center!important;
  min-height:32px!important;
  padding:0 11px!important;
  border-radius:999px!important;
  text-decoration:none!important;
  font-size:12px!important;
  font-weight:800!important;
  line-height:1!important;
  background:#f0e5ff!important;
  color:#6c32b7!important;
  transition:.18s ease!important;
}

.ccb-partitura-meta a:hover{
  transform:translateY(-1px)!important;
  background:#e8d8ff!important;
}

/* se o widget gera texto sem links, mantém aparência limpa */
.ccb-partitura-meta .elementor-icon-list-items,
.ccb-partitura-meta ul{
  display:flex!important;
  justify-content:center!important;
  align-items:center!important;
  flex-wrap:wrap!important;
  gap:8px!important;
  margin:0!important;
  padding:0!important;
  list-style:none!important;
}

.ccb-partitura-meta .elementor-icon-list-item,
.ccb-partitura-meta li{
  display:inline-flex!important;
  align-items:center!important;
  min-height:32px!important;
  padding:0 11px!important;
  border-radius:999px!important;
  background:#f0e5ff!important;
  color:#6c32b7!important;
  font-size:12px!important;
  font-weight:800!important;
}

@media(max-width:700px){
  .ccb-partitura-header{
    padding:24px 16px!important;
    border-radius:20px;
  }

  .ccb-partitura-header .elementor-heading-title,
  .ccb-partitura-title .elementor-heading-title{
    font-size:34px!important;
    text-align:left!important;
  }

  .ccb-partitura-meta .elementor-widget-container,
  .ccb-partitura-meta .elementor-icon-list-items,
  .ccb-partitura-meta ul{
    justify-content:flex-start!important;
  }
}


/* v1.2.0 — player de áudio Clave Colorida */
.ccb-partitura-audio{
  width:100%!important;
  max-width:100%!important;
}

.ccb-audio-card{
  width:100%;
  padding:18px;
  border:1px solid #e5ebf0;
  border-radius:20px;
  background:#fff;
  box-shadow:0 10px 26px rgba(31,72,105,.09);
}

.ccb-audio-head{
  display:flex;
  align-items:flex-start;
  justify-content:space-between;
  gap:16px;
  margin-bottom:14px;
}

.ccb-audio-title{
  margin:0;
  font-family:"Baloo Bhai 2",sans-serif;
  color:#1e3145;
  font-size:24px;
  line-height:1.05;
  font-weight:700;
}

.ccb-audio-subtitle{
  margin:5px 0 0;
  color:#6f8294;
  font:500 13px/1.4 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
}

.ccb-audio-player{
  display:grid;
  grid-template-columns:48px minmax(0,1fr) auto 42px;
  align-items:center;
  gap:12px;
  padding:12px;
  border-radius:16px;
  background:#f7f9fb;
  border:1px solid #edf1f4;
}

.ccb-audio-play,
.ccb-audio-mute{
  border:0;
  display:grid;
  place-items:center;
  cursor:pointer;
}

.ccb-audio-play{
  width:48px;
  height:48px;
  border-radius:50%;
  background:linear-gradient(180deg,#9343f2,#8232EC);
  color:#fff;
  font-size:18px;
  box-shadow:0 8px 18px rgba(130,50,236,.22);
  transition:.18s ease;
}

.ccb-audio-play:hover{
  transform:scale(1.06);
}

.ccb-audio-mute{
  width:42px;
  height:42px;
  border-radius:12px;
  background:#fff;
  color:#52687b;
  border:1px solid #e2e8ee;
  font-size:17px;
}

.ccb-audio-progress{
  appearance:none;
  width:100%;
  height:7px;
  border-radius:999px;
  outline:0;
  background:linear-gradient(to right,#8232EC 0%,#8232EC var(--ccb-audio-progress,0%),#dbe4ea var(--ccb-audio-progress,0%),#dbe4ea 100%);
  cursor:pointer;
}

.ccb-audio-progress::-webkit-slider-thumb{
  appearance:none;
  width:16px;
  height:16px;
  border-radius:50%;
  background:#8232EC;
  border:3px solid #fff;
  box-shadow:0 2px 8px rgba(0,0,0,.16);
}

.ccb-audio-progress::-moz-range-thumb{
  width:16px;
  height:16px;
  border-radius:50%;
  background:#8232EC;
  border:3px solid #fff;
  box-shadow:0 2px 8px rgba(0,0,0,.16);
}

.ccb-audio-time{
  min-width:86px;
  color:#617487;
  font:700 12px/1 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
  white-space:nowrap;
  text-align:right;
}

.ccb-partitura-audio audio.ccb-audio-native{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  opacity:0!important;
  pointer-events:none!important;
}

@media(max-width:700px){
  .ccb-audio-card{
    padding:14px;
    border-radius:17px;
  }

  .ccb-audio-title{
    font-size:21px;
  }

  .ccb-audio-player{
    grid-template-columns:44px minmax(0,1fr) 40px;
    gap:9px;
    padding:10px;
  }

  .ccb-audio-play{
    width:44px;
    height:44px;
  }

  .ccb-audio-time{
    grid-column:2;
    grid-row:2;
    min-width:0;
    text-align:left;
    font-size:11px;
  }

  .ccb-audio-mute{
    grid-column:3;
    grid-row:1 / span 2;
    width:40px;
    height:40px;
  }
}


/* v1.2.1 — oculta o player nativo do WordPress/Elementor */
.ccb-partitura-audio > .elementor-widget-container > .mejs-container,
.ccb-partitura-audio .mejs-container,
.ccb-partitura-audio .wp-audio-shortcode.mejs-container,
.ccb-partitura-audio .wp-playlist-current-item,
.ccb-partitura-audio .wp-playlist-tracks{
  display:none!important;
}

/* O elemento <audio> continua existindo apenas como motor do player personalizado */
.ccb-partitura-audio audio,
.ccb-partitura-audio audio.ccb-audio-native{
  position:absolute!important;
  width:1px!important;
  height:1px!important;
  min-width:1px!important;
  min-height:1px!important;
  opacity:0!important;
  overflow:hidden!important;
  pointer-events:none!important;
  clip:rect(0,0,0,0)!important;
}


/* v1.3.0 — Downloads e materiais */
.ccb-partitura-downloads{
  width:100%!important;
  padding:22px!important;
  border:1px solid #e5ebf0!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:0 10px 28px rgba(31,72,105,.09)!important;
}

.ccb-partitura-downloads .ccb-download-title .elementor-heading-title,
.ccb-partitura-downloads > .elementor-element:first-child .elementor-heading-title{
  margin:0!important;
  font-family:"Baloo Bhai 2",sans-serif!important;
  color:#1e3145!important;
  font-size:28px!important;
  line-height:1!important;
  font-weight:700!important;
}

/* lista dinâmica com PDF / áudio / bônus */
.ccb-download-list{
  margin-top:14px!important;
}

.ccb-download-list .elementor-widget-container{
  display:grid!important;
  grid-template-columns:repeat(2,minmax(0,1fr))!important;
  gap:10px!important;
}

.ccb-download-list a,
.ccb-download-list .elementor-icon-list-item,
.ccb-download-list li{
  display:flex!important;
  align-items:center!important;
  min-height:44px!important;
  margin:0!important;
  padding:10px 12px!important;
  border:1px solid #e7edf2!important;
  border-radius:13px!important;
  background:#fbfcfe!important;
  color:#5c7184!important;
  text-decoration:none!important;
  font:700 12px/1.35 Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;
  transition:.18s ease!important;
}

.ccb-download-list a:hover{
  transform:translateY(-2px)!important;
  border-color:#dac7f7!important;
  background:#faf6ff!important;
  color:#8232EC!important;
}

/* botão liberado: visibilidade continua controlada pelo PMPro */
.ccb-download-unlocked .elementor-button,
.ccb-download-unlocked a.elementor-button{
  width:min(420px,100%)!important;
  min-height:48px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:18px auto 0!important;
  padding:0 20px!important;
  border:0!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,#9343f2,#8232EC)!important;
  color:#fff!important;
  font:800 14px/1 Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;
  box-shadow:0 10px 24px rgba(130,50,236,.25)!important;
  transition:.2s ease!important;
}

.ccb-download-unlocked .elementor-button:hover,
.ccb-download-unlocked a.elementor-button:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 14px 28px rgba(130,50,236,.30)!important;
}

/* botão bloqueado: aparece só nos outros planos */
.ccb-download-locked .elementor-button,
.ccb-download-locked a.elementor-button{
  width:min(420px,100%)!important;
  min-height:46px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:18px auto 0!important;
  padding:0 18px!important;
  border:1px solid #d9dee3!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,#fbfbfc,#f0f2f4)!important;
  color:#5f6871!important;
  font:800 13px/1 Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;
  box-shadow:0 7px 18px rgba(31,72,105,.08)!important;
}

/* rótulo visual opcional acima do botão bloqueado */
.ccb-download-locked::before{
  content:"Recurso premium";
  display:block;
  width:max-content;
  margin:16px auto -8px;
  padding:6px 9px;
  border-radius:999px;
  background:#fff1cb;
  color:#8a641b;
  font:900 10px/1 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
  text-transform:uppercase;
  letter-spacing:.5px;
}

@media(max-width:700px){
  .ccb-partitura-downloads{
    padding:16px!important;
    border-radius:18px!important;
  }

  .ccb-partitura-downloads .ccb-download-title .elementor-heading-title,
  .ccb-partitura-downloads > .elementor-element:first-child .elementor-heading-title{
    font-size:23px!important;
  }

  .ccb-download-list .elementor-widget-container{
    grid-template-columns:1fr!important;
  }

  .ccb-download-unlocked .elementor-button,
  .ccb-download-locked .elementor-button{
    width:100%!important;
  }
}


/* v1.3.1 — Downloads refinados no padrão do protótipo */

/* card principal */
.ccb-partitura-downloads{
  width:100%!important;
  max-width:100%!important;
  padding:26px!important;
  border:1px solid #e8edf2!important;
  border-radius:24px!important;
  background:#fff!important;
  box-shadow:0 14px 34px rgba(31,72,105,.10)!important;
}

/* título */
.ccb-partitura-downloads .ccb-download-title{
  width:100%!important;
  max-width:100%!important;
  margin-bottom:4px!important;
}
.ccb-partitura-downloads .ccb-download-title .elementor-heading-title{
  margin:0!important;
  font-family:"Baloo Bhai 2",sans-serif!important;
  color:#1e3145!important;
  font-size:30px!important;
  line-height:1.05!important;
  font-weight:700!important;
  text-align:left!important;
}

/* força o widget de informações a ocupar toda a largura */
.ccb-partitura-downloads .ccb-download-list{
  width:100%!important;
  max-width:100%!important;
  flex:0 0 100%!important;
  margin-top:18px!important;
}
.ccb-partitura-downloads .ccb-download-list .elementor-widget-container{
  width:100%!important;
  max-width:100%!important;
  display:grid!important;
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
  gap:12px!important;
}

/* suporta links, spans e linhas geradas pelo widget */
.ccb-partitura-downloads .ccb-download-list .elementor-widget-container > *,
.ccb-partitura-downloads .ccb-download-list a,
.ccb-partitura-downloads .ccb-download-list .elementor-icon-list-item,
.ccb-partitura-downloads .ccb-download-list li{
  min-width:0!important;
}

/* cartões dos arquivos */
.ccb-partitura-downloads .ccb-download-list a,
.ccb-partitura-downloads .ccb-download-list .elementor-icon-list-item,
.ccb-partitura-downloads .ccb-download-list li{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  min-height:64px!important;
  margin:0!important;
  padding:13px 14px!important;
  border:1px solid #e6ecf1!important;
  border-radius:15px!important;
  background:#fbfcfe!important;
  color:#435a6e!important;
  text-decoration:none!important;
  text-align:left!important;
  font:800 12px/1.35 Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;
  box-shadow:none!important;
  transition:transform .18s ease,border-color .18s ease,background .18s ease,box-shadow .18s ease!important;
}

.ccb-partitura-downloads .ccb-download-list a:hover{
  transform:translateY(-3px)!important;
  border-color:#d7c0f7!important;
  background:#faf6ff!important;
  color:#8232EC!important;
  box-shadow:0 10px 20px rgba(31,72,105,.08)!important;
}

/* deixa o último item/bônus mais especial sem prometer que sempre existe */
.ccb-partitura-downloads .ccb-download-list .elementor-widget-container > :last-child{
  background:linear-gradient(180deg,#fffdf8,#fff8e9)!important;
  border-color:#efdfb9!important;
}

/* áreas de acesso PMPro */
.ccb-partitura-downloads .ccb-download-unlocked,
.ccb-partitura-downloads .ccb-download-locked{
  width:100%!important;
  max-width:100%!important;
  margin-top:18px!important;
}

/* não gerar rótulo fantasma em wrappers ocultos */
.ccb-download-locked::before{
  content:none!important;
  display:none!important;
}

/* botão liberado */
.ccb-partitura-downloads .ccb-download-unlocked .elementor-widget-container{
  display:flex!important;
  justify-content:center!important;
}
.ccb-partitura-downloads .ccb-download-unlocked .elementor-button,
.ccb-partitura-downloads .ccb-download-unlocked a.elementor-button{
  width:min(430px,100%)!important;
  min-height:50px!important;
  margin:0!important;
  padding:0 22px!important;
  border:0!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,#9343f2,#8232EC)!important;
  color:#fff!important;
  font:800 14px/1 Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;
  box-shadow:0 10px 24px rgba(130,50,236,.24)!important;
  transition:transform .18s ease,box-shadow .18s ease!important;
}
.ccb-partitura-downloads .ccb-download-unlocked .elementor-button:hover,
.ccb-partitura-downloads .ccb-download-unlocked a.elementor-button:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 14px 30px rgba(130,50,236,.30)!important;
}

/* botão bloqueado */
.ccb-partitura-downloads .ccb-download-locked .elementor-widget-container{
  display:flex!important;
  justify-content:center!important;
}
.ccb-partitura-downloads .ccb-download-locked .elementor-button,
.ccb-partitura-downloads .ccb-download-locked a.elementor-button{
  width:min(430px,100%)!important;
  min-height:48px!important;
  margin:0!important;
  padding:0 20px!important;
  border:1px solid #d8dde2!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,#fbfbfc,#f1f3f5)!important;
  color:#5e6872!important;
  font:800 13px/1 Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;
  box-shadow:0 7px 18px rgba(31,72,105,.07)!important;
}

/* evita espaços grandes herdados do layout antigo */
.ccb-partitura-downloads > .e-con-inner,
.ccb-partitura-downloads > .elementor-element,
.ccb-partitura-downloads .elementor-widget{
  max-width:100%!important;
}

@media(max-width:980px){
  .ccb-partitura-downloads .ccb-download-list .elementor-widget-container{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}

@media(max-width:700px){
  .ccb-partitura-downloads{
    padding:17px!important;
    border-radius:19px!important;
  }

  .ccb-partitura-downloads .ccb-download-title .elementor-heading-title{
    font-size:24px!important;
  }

  .ccb-partitura-downloads .ccb-download-list .elementor-widget-container{
    grid-template-columns:1fr!important;
    gap:9px!important;
  }

  .ccb-partitura-downloads .ccb-download-list a,
  .ccb-partitura-downloads .ccb-download-list .elementor-icon-list-item,
  .ccb-partitura-downloads .ccb-download-list li{
    min-height:54px!important;
    padding:11px 12px!important;
  }

  .ccb-partitura-downloads .ccb-download-unlocked .elementor-button,
  .ccb-partitura-downloads .ccb-download-locked .elementor-button{
    width:100%!important;
  }
}

/* v1.4.0 — Downloads realmente no visual do protótipo */
.ccb-partitura-downloads{
  padding:24px!important;
  border-radius:24px!important;
  background:#fff!important;
  border:1px solid #e7edf2!important;
  box-shadow:0 14px 34px rgba(31,72,105,.10)!important;
}

.ccb-downloads-head-proto h2{
  margin:0!important;
  font-family:"Baloo Bhai 2",sans-serif!important;
  font-size:30px!important;
  line-height:1!important;
  color:#1e3145!important;
}
.ccb-downloads-head-proto p{
  margin:7px 0 0!important;
  color:#6f8294!important;
  font:500 13px/1.45 Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;
}

.ccb-materials-grid{
  display:grid;
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:12px;
  margin-top:18px;
}

.ccb-material-card{
  min-height:104px;
  display:grid;
  grid-template-columns:42px minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  padding:15px;
  border-radius:16px;
  border:1px solid #e5ebf0;
  background:#fbfcfe;
  text-decoration:none!important;
  box-shadow:none;
  transition:transform .2s ease,box-shadow .2s ease,border-color .2s ease;
}
.ccb-material-card:hover{
  transform:translateY(-4px);
  box-shadow:0 14px 28px rgba(31,72,105,.10);
  border-color:#d7c0f7;
}
.ccb-material-card.is-bonus{
  background:linear-gradient(180deg,#fffdf8,#fff8e8);
  border-color:#edddb5;
}
.ccb-material-icon{
  width:42px;
  height:42px;
  border-radius:13px;
  display:grid;
  place-items:center;
  background:#f1e8fe;
  font-size:20px;
}
.ccb-material-card.is-bonus .ccb-material-icon{
  background:#fff0c7;
}
.ccb-material-copy{
  min-width:0;
}
.ccb-material-copy strong{
  display:block;
  color:#24394c;
  font:800 13px/1.3 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
}
.ccb-material-copy small{
  display:block;
  margin-top:4px;
  color:#7a8c9d;
  font:500 11px/1.4 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
}
.ccb-material-arrow{
  color:#8d9cab;
  font-size:15px;
}

.ccb-access-box{
  margin-top:18px;
  display:grid;
  grid-template-columns:44px minmax(0,1fr) auto;
  align-items:center;
  gap:12px;
  padding:14px;
  border-radius:17px;
}
.ccb-access-box.is-unlocked{
  background:linear-gradient(180deg,#f8fff9,#f0fbf3);
  border:1px solid #d9ebdc;
}
.ccb-access-box.is-locked{
  background:linear-gradient(180deg,#fbfbfc,#f3f4f6);
  border:1px solid #e0e4e8;
}
.ccb-access-icon{
  width:44px;
  height:44px;
  border-radius:13px;
  display:grid;
  place-items:center;
  font-size:18px;
  font-weight:900;
}
.is-unlocked .ccb-access-icon{
  background:#e3f6e7;
  color:#2f8e48;
}
.is-locked .ccb-access-icon{
  background:#eceef1;
  color:#69717a;
}
.ccb-access-copy small{
  display:block;
  margin-bottom:3px;
  text-transform:uppercase;
  letter-spacing:.5px;
  font:900 10px/1 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
}
.is-unlocked .ccb-access-copy small{color:#3f8d55}
.is-locked .ccb-access-copy small{color:#757e87}
.ccb-access-copy strong{
  display:block;
  color:#2d4053;
  font:800 13px/1.35 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
}

/* botão PMPro dentro do box */
.ccb-access-box .ccb-download-unlocked,
.ccb-access-box .ccb-download-locked{
  margin:0!important;
  width:auto!important;
  max-width:none!important;
}
.ccb-access-box .ccb-download-unlocked .elementor-widget-container,
.ccb-access-box .ccb-download-locked .elementor-widget-container{
  display:block!important;
}
.ccb-access-box .ccb-download-unlocked .elementor-button,
.ccb-access-box .ccb-download-locked .elementor-button{
  margin:0!important;
  width:auto!important;
  min-width:230px!important;
}

@media(max-width:980px){
  .ccb-materials-grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .ccb-access-box{
    grid-template-columns:44px 1fr;
  }
  .ccb-access-box .ccb-download-unlocked,
  .ccb-access-box .ccb-download-locked{
    grid-column:1/-1;
  }
  .ccb-access-box .ccb-download-unlocked .elementor-button,
  .ccb-access-box .ccb-download-locked .elementor-button{
    width:100%!important;
  }
}
@media(max-width:700px){
  .ccb-partitura-downloads{
    padding:16px!important;
    border-radius:19px!important;
  }
  .ccb-downloads-head-proto h2{font-size:24px!important}
  .ccb-materials-grid{grid-template-columns:1fr}
  .ccb-material-card{min-height:88px;padding:13px}
}

/* v1.4.1 — robustez para markup real do Elementor */
.ccb-partitura-downloads[data-ccb-downloads-ready="1"] > .ccb-downloads-head-proto,
.ccb-partitura-downloads[data-ccb-downloads-ready="1"] > .ccb-materials-grid{
  width:100%!important;
  max-width:100%!important;
}

.ccb-partitura-downloads[data-ccb-downloads-ready="1"]{
  display:block!important;
}

.ccb-partitura-downloads .ccb-materials-grid{
  grid-template-columns:repeat(3,minmax(0,1fr))!important;
}

@media(max-width:980px){
  .ccb-partitura-downloads .ccb-materials-grid{
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
  }
}
@media(max-width:700px){
  .ccb-partitura-downloads .ccb-materials-grid{
    grid-template-columns:1fr!important;
  }
}


/* v1.5.0 — PMPro: blocos de acesso maiores e mais destacados */
.ccb-download-unlocked,
.ccb-download-locked{
  width:100%!important;
  max-width:100%!important;
  margin:22px 0 0!important;
}

.ccb-download-unlocked .elementor-widget-container,
.ccb-download-locked .elementor-widget-container{
  width:100%!important;
  max-width:100%!important;
}

/* Estado liberado */
.ccb-download-unlocked{
  position:relative;
  padding:18px!important;
  border-radius:20px!important;
  background:linear-gradient(180deg,#f6fff8,#edf9f1)!important;
  border:1px solid #d3ead8!important;
  box-shadow:0 12px 30px rgba(46,126,69,.10)!important;
}

.ccb-download-unlocked::before{
  content:"✓  ACESSO LIBERADO";
  display:block;
  margin-bottom:10px;
  color:#2f8e48;
  font:900 11px/1 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
  letter-spacing:.45px;
}

.ccb-download-unlocked::after{
  content:"Seu plano inclui os downloads completos.";
  display:block;
  margin-bottom:14px;
  color:#2d4053;
  font:800 14px/1.35 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
}

.ccb-download-unlocked .elementor-button,
.ccb-download-unlocked a.elementor-button{
  width:100%!important;
  min-height:54px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  padding:0 24px!important;
  border:0!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,#9343f2,#8232EC)!important;
  color:#fff!important;
  font:800 15px/1 Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;
  box-shadow:0 10px 24px rgba(130,50,236,.24)!important;
}

/* Estado bloqueado */
.ccb-download-locked{
  position:relative;
  padding:18px!important;
  border-radius:20px!important;
  background:linear-gradient(180deg,#fbfbfc,#f2f4f6)!important;
  border:1px solid #dde2e7!important;
  box-shadow:0 10px 26px rgba(31,72,105,.08)!important;
}

.ccb-download-locked::before{
  content:"🔒  EXCLUSIVO PLANO MAESTRO COLORIDO";
  display:block;
  margin-bottom:10px;
  color:#666f78;
  font:900 11px/1 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
  letter-spacing:.35px;
}

.ccb-download-locked::after{
  content:"Os downloads completos são um benefício do plano Maestro Colorido.";
  display:block;
  margin-bottom:14px;
  color:#526475;
  font:800 14px/1.35 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
}

.ccb-download-locked .elementor-button,
.ccb-download-locked a.elementor-button{
  width:100%!important;
  min-height:52px!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
  margin:0!important;
  padding:0 22px!important;
  border:1px solid #d1d7dd!important;
  border-radius:14px!important;
  background:#fff!important;
  color:#5d6670!important;
  font:800 14px/1 Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;
  box-shadow:0 6px 16px rgba(31,72,105,.06)!important;
}

@media(min-width:981px){
  .ccb-download-unlocked,
  .ccb-download-locked{
    max-width:760px!important;
    margin-left:auto!important;
    margin-right:auto!important;
  }
}

@media(max-width:700px){
  .ccb-download-unlocked,
  .ccb-download-locked{
    padding:15px!important;
    border-radius:17px!important;
  }
  .ccb-download-unlocked .elementor-button,
  .ccb-download-locked .elementor-button{
    min-height:50px!important;
    font-size:13px!important;
  }
}


/* v1.5.1 — acesso liberado mais profissional */
.ccb-download-unlocked{
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

.ccb-download-unlocked::before,
.ccb-download-unlocked::after{
  content:none!important;
  display:none!important;
}

.ccb-download-unlocked .elementor-widget-container{
  position:relative;
  display:grid!important;
  grid-template-columns:54px minmax(0,1fr) auto;
  align-items:center;
  gap:16px;
  width:100%!important;
  min-height:98px;
  padding:18px 20px!important;
  border-radius:20px!important;
  border:1px solid #d8ebdd!important;
  background:
    radial-gradient(circle at 91% 16%,rgba(130,50,236,.08),transparent 26%),
    linear-gradient(180deg,#fbfffc 0%,#f2fbf5 100%)!important;
  box-shadow:0 14px 34px rgba(31,72,105,.10)!important;
}

/* ícone/check decorativo */
.ccb-download-unlocked .elementor-widget-container::before{
  content:"✓";
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:#e5f7e9;
  color:#2f8e48;
  font:900 24px/1 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
  box-shadow:inset 0 0 0 1px rgba(47,142,72,.06);
}

/* texto lateral */
.ccb-download-unlocked .elementor-widget-container::after{
  content:"Acesso liberado\A Seu plano inclui os downloads completos.";
  white-space:pre-line;
  color:#2d4053;
  font:800 14px/1.35 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
}

.ccb-download-unlocked .elementor-button,
.ccb-download-unlocked a.elementor-button{
  grid-column:3!important;
  grid-row:1!important;
  width:auto!important;
  min-width:280px!important;
  min-height:52px!important;
  margin:0!important;
  padding:0 22px!important;
  border-radius:14px!important;
  background:linear-gradient(180deg,#9343f2,#8232EC)!important;
  box-shadow:0 10px 24px rgba(130,50,236,.24)!important;
  font-size:14px!important;
  font-weight:800!important;
}

.ccb-download-unlocked .elementor-button:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 14px 30px rgba(130,50,236,.30)!important;
}

/* bloqueado também refinado para manter coerência */
.ccb-download-locked{
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}

.ccb-download-locked::before,
.ccb-download-locked::after{
  content:none!important;
  display:none!important;
}

.ccb-download-locked .elementor-widget-container{
  position:relative;
  display:grid!important;
  grid-template-columns:54px minmax(0,1fr) auto;
  align-items:center;
  gap:16px;
  width:100%!important;
  min-height:98px;
  padding:18px 20px!important;
  border-radius:20px!important;
  border:1px solid #e0e4e8!important;
  background:
    radial-gradient(circle at 91% 16%,rgba(130,50,236,.05),transparent 26%),
    linear-gradient(180deg,#fcfcfd 0%,#f4f5f7 100%)!important;
  box-shadow:0 12px 30px rgba(31,72,105,.08)!important;
}

.ccb-download-locked .elementor-widget-container::before{
  content:"🔒";
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:16px;
  background:#eceef1;
  color:#646d76;
  font-size:21px;
}

.ccb-download-locked .elementor-widget-container::after{
  content:"Plano Maestro Colorido\A Downloads completos disponíveis neste plano.";
  white-space:pre-line;
  color:#46596b;
  font:800 14px/1.35 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
}

.ccb-download-locked .elementor-button,
.ccb-download-locked a.elementor-button{
  grid-column:3!important;
  grid-row:1!important;
  width:auto!important;
  min-width:280px!important;
  min-height:50px!important;
  margin:0!important;
  padding:0 22px!important;
  border-radius:14px!important;
  background:#fff!important;
  color:#5d6670!important;
  border:1px solid #d3d8dd!important;
  box-shadow:0 7px 18px rgba(31,72,105,.07)!important;
}

@media(max-width:900px){
  .ccb-download-unlocked .elementor-widget-container,
  .ccb-download-locked .elementor-widget-container{
    grid-template-columns:50px minmax(0,1fr);
  }

  .ccb-download-unlocked .elementor-button,
  .ccb-download-locked .elementor-button{
    grid-column:1/-1!important;
    grid-row:auto!important;
    width:100%!important;
    min-width:0!important;
  }
}

@media(max-width:700px){
  .ccb-download-unlocked .elementor-widget-container,
  .ccb-download-locked .elementor-widget-container{
    padding:15px!important;
    gap:12px;
    border-radius:17px!important;
  }

  .ccb-download-unlocked .elementor-widget-container::before,
  .ccb-download-locked .elementor-widget-container::before{
    width:48px;
    height:48px;
    border-radius:14px;
  }

  .ccb-download-unlocked .elementor-widget-container::after,
  .ccb-download-locked .elementor-widget-container::after{
    font-size:13px;
  }
}


/* v1.5.2 — tipografia + player de áudio sem título */
.ccb-audio-head{
  display:none!important;
}

.ccb-audio-card{
  padding:14px!important;
}

/* tipografia um pouco maior e mais confortável */
.ccb-download-unlocked .elementor-widget-container::after,
.ccb-download-locked .elementor-widget-container::after{
  font-size:15px!important;
  line-height:1.4!important;
}

.ccb-download-unlocked .elementor-button,
.ccb-download-unlocked a.elementor-button,
.ccb-download-locked .elementor-button,
.ccb-download-locked a.elementor-button{
  font-size:15px!important;
  font-weight:800!important;
}

.ccb-download-unlocked .elementor-widget-container::before,
.ccb-download-locked .elementor-widget-container::before{
  font-size:12px!important;
  font-weight:900!important;
}

.ccb-material-copy strong,
.cc-file-copy strong{
  font-size:14px!important;
  font-weight:800!important;
}

.ccb-material-copy small,
.cc-file-copy small{
  font-size:12px!important;
}

@media(max-width:700px){
  .ccb-download-unlocked .elementor-widget-container::after,
  .ccb-download-locked .elementor-widget-container::after{
    font-size:14px!important;
  }

  .ccb-download-unlocked .elementor-button,
  .ccb-download-locked .elementor-button{
    font-size:14px!important;
  }
}


/* =========================================================
   v1.6.0 — AUDITORIA E REFINO MOBILE
   ========================================================= */

/* proteção geral contra vazamento horizontal */
html, body{
  max-width:100%;
  overflow-x:hidden;
}

.ccb-partitura-header,
.ccb-partitura-tabs,
.ccb-partitura-audio,
.ccb-partitura-downloads,
.ccb-download-unlocked,
.ccb-download-locked{
  box-sizing:border-box!important;
  max-width:100%!important;
}

/* ---------------------------
   TOPO
--------------------------- */
@media(max-width:700px){
  .ccb-partitura-header{
    width:calc(100% - 16px)!important;
    margin:10px 8px 14px!important;
    padding:22px 18px!important;
    border-radius:20px!important;
  }

  .ccb-partitura-header .elementor-heading-title,
  .ccb-partitura-title .elementor-heading-title{
    font-size:34px!important;
    line-height:1.05!important;
    letter-spacing:-.5px!important;
  }

  .ccb-partitura-meta{
    margin-top:14px!important;
  }

  .ccb-partitura-meta a,
  .ccb-partitura-meta li,
  .ccb-partitura-meta .elementor-icon-list-item{
    min-height:30px!important;
    padding:0 10px!important;
    font-size:11px!important;
  }
}

/* ---------------------------
   ABAS / VISUALIZADOR
--------------------------- */
@media(max-width:700px){
  .ccb-partitura-tabs{
    width:calc(100% - 16px)!important;
    margin:0 8px 14px!important;
    padding:0!important;
    overflow:hidden!important;
  }

  .ccb-tabs-head{
    width:100%!important;
    margin-bottom:12px!important;
    gap:12px!important;
  }

  .ccb-tabs-copy{
    width:100%!important;
  }

  .ccb-tabs-copy h2{
    font-size:24px!important;
    line-height:1.05!important;
  }

  .ccb-tabs-copy p{
    margin-top:5px!important;
    font-size:12px!important;
    line-height:1.4!important;
  }

  .ccb-tabs-switch{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:6px!important;
    padding:5px!important;
    border-radius:14px!important;
    overflow:hidden!important;
  }

  .ccb-tabs-switch button{
    min-width:0!important;
    width:100%!important;
    min-height:44px!important;
    padding:5px 7px!important;
    border-radius:11px!important;
    white-space:normal!important;
    text-align:center!important;
    font-size:11.5px!important;
    line-height:1.15!important;
  }

  .ccb-partitura-tabs .ccb-pdf-panel{
    width:100%!important;
    max-width:100%!important;
    padding:6px!important;
    border-radius:18px!important;
    overflow:hidden!important;
  }

  .ccb-partitura-tabs .ccb-pdf-panel .elementor-widget-container,
  .ccb-partitura-tabs .ccb-pdf-panel .elementor-shortcode,
  .ccb-partitura-tabs .ccb-pdf-panel .embedpress-document-embed,
  .ccb-partitura-tabs .ccb-pdf-panel .embedpress-pdf,
  .ccb-partitura-tabs .ccb-pdf-panel .embedpress-pdf-container,
  .ccb-partitura-tabs .ccb-pdf-panel .pdfobject-container{
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    overflow:hidden!important;
  }

  .ccb-partitura-tabs .ccb-pdf-panel iframe,
  .ccb-partitura-tabs .ccb-pdf-panel embed,
  .ccb-partitura-tabs .ccb-pdf-panel object{
    width:100%!important;
    min-width:0!important;
    max-width:100%!important;
    height:62vh!important;
    min-height:430px!important;
    max-height:610px!important;
    border-radius:14px!important;
  }
}

@media(max-width:420px){
  .ccb-partitura-header .elementor-heading-title,
  .ccb-partitura-title .elementor-heading-title{
    font-size:31px!important;
  }

  .ccb-tabs-switch button{
    font-size:11px!important;
  }

  .ccb-partitura-tabs .ccb-pdf-panel iframe,
  .ccb-partitura-tabs .ccb-pdf-panel embed,
  .ccb-partitura-tabs .ccb-pdf-panel object{
    height:58vh!important;
    min-height:400px!important;
  }
}

/* ---------------------------
   PLAYER DE ÁUDIO
--------------------------- */
@media(max-width:700px){
  .ccb-partitura-audio{
    width:calc(100% - 16px)!important;
    margin:0 8px 14px!important;
  }

  .ccb-audio-card{
    padding:10px!important;
    border-radius:17px!important;
  }

  .ccb-audio-player{
    width:100%!important;
    grid-template-columns:44px minmax(0,1fr) 38px!important;
    grid-template-areas:
      "play progress mute"
      ". time mute";
    gap:8px!important;
    padding:10px!important;
    border-radius:14px!important;
  }

  .ccb-audio-play{
    grid-area:play;
  }

  .ccb-audio-progress{
    grid-area:progress;
    min-width:0!important;
  }

  .ccb-audio-time{
    grid-area:time;
    text-align:left!important;
    margin-top:-2px!important;
  }

  .ccb-audio-mute{
    grid-area:mute;
    align-self:center!important;
    width:38px!important;
    height:38px!important;
  }
}

/* ---------------------------
   DOWNLOADS EM HTML
--------------------------- */
@media(max-width:700px){
  .cc-downloads-box{
    width:calc(100% - 16px)!important;
    margin:0 8px!important;
    padding:16px!important;
    border-radius:19px!important;
  }

  .cc-downloads-head h2{
    font-size:25px!important;
    line-height:1.05!important;
  }

  .cc-downloads-head p{
    font-size:12px!important;
    margin-top:6px!important;
  }

  .cc-downloads-grid{
    grid-template-columns:1fr!important;
    gap:9px!important;
    margin-top:16px!important;
  }

  .cc-file-card,
  .cc-file-bonus{
    min-height:76px!important;
    padding:12px!important;
    grid-template-columns:40px minmax(0,1fr)!important;
    gap:11px!important;
    border-radius:14px!important;
  }

  .cc-file-icon{
    width:40px!important;
    height:40px!important;
    border-radius:12px!important;
  }

  .cc-file-copy strong{
    font-size:13px!important;
  }

  .cc-file-copy small{
    margin-top:3px!important;
    font-size:11px!important;
    line-height:1.35!important;
  }
}

/* ---------------------------
   PMPRO / CTA FINAL
--------------------------- */
@media(max-width:700px){
  .ccb-download-unlocked,
  .ccb-download-locked{
    width:calc(100% - 16px)!important;
    margin:14px 8px 0!important;
  }

  .ccb-download-unlocked .elementor-widget-container,
  .ccb-download-locked .elementor-widget-container{
    width:100%!important;
    grid-template-columns:46px minmax(0,1fr)!important;
    gap:12px!important;
    padding:14px!important;
    border-radius:17px!important;
  }

  .ccb-download-unlocked .elementor-widget-container::before,
  .ccb-download-locked .elementor-widget-container::before{
    width:46px!important;
    height:46px!important;
  }

  .ccb-download-unlocked .elementor-widget-container::after,
  .ccb-download-locked .elementor-widget-container::after{
    font-size:13px!important;
    line-height:1.35!important;
  }

  .ccb-download-unlocked .elementor-button,
  .ccb-download-locked .elementor-button{
    grid-column:1 / -1!important;
    width:100%!important;
    min-width:0!important;
    min-height:50px!important;
    margin-top:2px!important;
    font-size:14px!important;
  }
}

/* ---------------------------
   REFINOS DE ESPAÇAMENTO
--------------------------- */
@media(max-width:700px){
  .ccb-partitura-header + .ccb-partitura-tabs,
  .ccb-partitura-tabs + .ccb-partitura-audio{
    margin-top:0!important;
  }

  .ccb-partitura-tabs,
  .ccb-partitura-audio,
  .cc-downloads-box{
    box-shadow:0 10px 24px rgba(31,72,105,.09)!important;
  }
}


/* =========================================================
   v1.6.1 — HEADER PREMIUM DA PARTITURA
   ========================================================= */

.ccb-partitura-header{
  position:relative!important;
  isolation:isolate;
  overflow:hidden!important;
  padding:36px 42px 32px!important;
  border-radius:24px!important;
  border:1px solid rgba(223,231,238,.95)!important;
  background:
    linear-gradient(110deg,#ffffff 0%,#ffffff 58%,#f9fbff 100%)!important;
  box-shadow:
    0 16px 38px rgba(31,72,105,.10),
    inset 0 1px 0 rgba(255,255,255,.95)!important;
}

/* filete colorido superior */
.ccb-partitura-header::before{
  content:"";
  position:absolute;
  z-index:-1;
  top:0;
  left:0;
  right:0;
  height:5px;
  background:linear-gradient(
    90deg,
    #2ea1db 0 28%,
    #8232ec 28% 54%,
    #f2c94c 54% 72%,
    #44b878 72% 100%
  );
}

/* detalhe visual sutil no lado direito */
.ccb-partitura-header::after{
  content:"♫";
  position:absolute;
  z-index:-1;
  right:34px;
  top:50%;
  transform:translateY(-48%) rotate(-8deg);
  color:rgba(130,50,236,.065);
  font:800 118px/1 "Baloo Bhai 2",sans-serif;
  pointer-events:none;
}

.ccb-partitura-header .elementor-widget-heading{
  margin:0 0 8px!important;
}

.ccb-partitura-header .elementor-heading-title,
.ccb-partitura-title .elementor-heading-title{
  max-width:920px!important;
  margin:0!important;
  color:#1f3448!important;
  font-family:"Baloo Bhai 2",sans-serif!important;
  font-size:clamp(38px,3.35vw,52px)!important;
  line-height:1.03!important;
  letter-spacing:-1.05px!important;
  font-weight:800!important;
  text-align:left!important;
  text-wrap:balance;
}

/* pequena barra/acento abaixo do título */
.ccb-partitura-title{
  position:relative;
}

.ccb-partitura-title::after{
  content:"";
  display:block;
  width:64px;
  height:4px;
  margin-top:12px;
  border-radius:999px;
  background:linear-gradient(90deg,#2ea1db,#8232ec);
}

/* meta / sugestão de assinante */
.ccb-partitura-meta{
  margin-top:16px!important;
}

.ccb-partitura-meta .elementor-widget-container,
.ccb-partitura-meta .elementor-icon-list-items,
.ccb-partitura-meta ul{
  justify-content:flex-start!important;
}

.ccb-partitura-meta a,
.ccb-partitura-meta .elementor-icon-list-item,
.ccb-partitura-meta li{
  min-height:36px!important;
  padding:0 14px!important;
  border:1px solid #e7d9fb!important;
  border-radius:999px!important;
  background:linear-gradient(180deg,#f8f2ff,#f2e8ff)!important;
  color:#6b35b7!important;
  font-size:12.5px!important;
  font-weight:800!important;
  box-shadow:0 5px 14px rgba(130,50,236,.08)!important;
}

.ccb-partitura-meta a:hover{
  background:linear-gradient(180deg,#f4eaff,#eadcff)!important;
  border-color:#d9c2f7!important;
  box-shadow:0 7px 18px rgba(130,50,236,.12)!important;
  transform:translateY(-1px)!important;
}

/* desktop largo: cria mais respiro sem ficar alto demais */
@media(min-width:1100px){
  .ccb-partitura-header{
    min-height:178px;
    display:flex!important;
    flex-direction:column!important;
    justify-content:center!important;
  }
}

/* tablet */
@media(max-width:980px){
  .ccb-partitura-header{
    padding:30px 28px 28px!important;
  }

  .ccb-partitura-header::after{
    right:18px;
    font-size:96px;
  }
}

/* celular */
@media(max-width:700px){
  .ccb-partitura-header{
    width:calc(100% - 16px)!important;
    margin:10px 8px 14px!important;
    padding:25px 18px 22px!important;
    border-radius:19px!important;
  }

  .ccb-partitura-header::before{
    height:4px;
  }

  .ccb-partitura-header::after{
    right:-3px;
    top:44%;
    font-size:74px;
    color:rgba(130,50,236,.045);
  }

  .ccb-partitura-header .elementor-heading-title,
  .ccb-partitura-title .elementor-heading-title{
    max-width:88%!important;
    font-size:32px!important;
    line-height:1.02!important;
    letter-spacing:-.6px!important;
    text-align:left!important;
  }

  .ccb-partitura-title::after{
    width:48px;
    height:3px;
    margin-top:9px;
  }

  .ccb-partitura-meta{
    margin-top:13px!important;
  }

  .ccb-partitura-meta a,
  .ccb-partitura-meta .elementor-icon-list-item,
  .ccb-partitura-meta li{
    min-height:32px!important;
    padding:0 11px!important;
    font-size:11.5px!important;
  }
}


/* =========================================================
   v1.6.2 — PLAYER + CTA + MICROREFINOS
   ========================================================= */

/* header: microrefinos */
.ccb-partitura-header{
  padding-top:32px!important;
  padding-bottom:28px!important;
}

.ccb-partitura-header::after{
  color:rgba(130,50,236,.045)!important;
}

.ccb-partitura-meta a,
.ccb-partitura-meta .elementor-icon-list-item,
.ccb-partitura-meta li{
  box-shadow:0 4px 10px rgba(130,50,236,.055)!important;
}

/* player mais limpo */
.ccb-audio-card{
  padding:12px!important;
  border-radius:20px!important;
  background:#fff!important;
  border:1px solid #e3e9ef!important;
  box-shadow:0 12px 26px rgba(31,72,105,.08)!important;
}

.ccb-audio-player{
  min-height:78px!important;
  padding:12px 14px!important;
  border-radius:16px!important;
  background:#f6f8fa!important;
  border:1px solid #e4eaf0!important;
  box-shadow:none!important;
  gap:14px!important;
}

.ccb-audio-play,
.ccb-audio-mute{
  border:none!important;
  outline:none!important;
}

/* remove qualquer contorno avermelhado/forte */
.ccb-audio-play{
  width:58px!important;
  height:58px!important;
  border-radius:50%!important;
  background:linear-gradient(180deg,#9f49f4,#8232EC)!important;
  color:#fff!important;
  box-shadow:0 8px 18px rgba(130,50,236,.22)!important;
}

.ccb-audio-play:hover{
  transform:translateY(-1px)!important;
  box-shadow:0 11px 22px rgba(130,50,236,.27)!important;
}

.ccb-audio-play:focus,
.ccb-audio-play:focus-visible{
  outline:none!important;
  box-shadow:0 0 0 4px rgba(130,50,236,.12),0 8px 18px rgba(130,50,236,.22)!important;
}

.ccb-audio-mute{
  width:50px!important;
  height:50px!important;
  border-radius:50%!important;
  background:#fff!important;
  color:#2ea1db!important;
  box-shadow:0 6px 14px rgba(31,72,105,.10)!important;
}

.ccb-audio-mute:hover{
  background:#fbfdff!important;
  box-shadow:0 8px 17px rgba(31,72,105,.13)!important;
}

.ccb-audio-mute:focus,
.ccb-audio-mute:focus-visible{
  outline:none!important;
  box-shadow:0 0 0 4px rgba(46,161,219,.10),0 6px 14px rgba(31,72,105,.10)!important;
}

/* progresso e tempo */
.ccb-audio-progress{
  height:7px!important;
  accent-color:#8232EC!important;
}

.ccb-audio-time{
  font-size:14px!important;
  font-weight:700!important;
  color:#44596e!important;
}

/* botão de download maior */
.ccb-download-unlocked .elementor-button,
.ccb-download-unlocked a.elementor-button{
  min-height:56px!important;
  padding:0 28px!important;
  font-size:17px!important;
  font-weight:800!important;
  letter-spacing:-.1px!important;
}

/* estado bloqueado ligeiramente maior também */
.ccb-download-locked .elementor-button,
.ccb-download-locked a.elementor-button{
  min-height:54px!important;
  font-size:16px!important;
  font-weight:800!important;
}

/* mobile */
@media(max-width:700px){
  .ccb-partitura-header{
    padding-top:23px!important;
    padding-bottom:20px!important;
  }

  .ccb-audio-card{
    padding:9px!important;
    border-radius:17px!important;
  }

  .ccb-audio-player{
    min-height:68px!important;
    padding:10px!important;
    gap:10px!important;
  }

  .ccb-audio-play{
    width:50px!important;
    height:50px!important;
  }

  .ccb-audio-mute{
    width:42px!important;
    height:42px!important;
  }

  .ccb-audio-time{
    font-size:13px!important;
  }

  .ccb-download-unlocked .elementor-button,
  .ccb-download-locked .elementor-button{
    font-size:15px!important;
    min-height:52px!important;
  }
}


/* =========================================================
   v1.6.3 — MUTE + REFINO DOWNLOADS
   ========================================================= */

/* garante que o botão de volume seja realmente clicável */
.ccb-audio-mute{
  position:relative!important;
  z-index:5!important;
  pointer-events:auto!important;
  cursor:pointer!important;
  touch-action:manipulation!important;
  user-select:none!important;
  -webkit-user-select:none!important;
}

.ccb-audio-mute *{
  pointer-events:none!important;
}

/* estado mutado */
.ccb-audio-mute[aria-pressed="true"]{
  background:#eef2f6!important;
  color:#7a8794!important;
  box-shadow:inset 0 0 0 1px #dfe6ec!important;
}

/* refinamentos do bloco HTML de downloads */
.cc-downloads-box{
  border:1px solid #e2e9ef!important;
  box-shadow:0 14px 32px rgba(31,72,105,.085)!important;
}

.cc-downloads-head h2{
  color:#1f3448!important;
  font-weight:800!important;
  letter-spacing:-.25px!important;
}

.cc-downloads-head p{
  color:#73879a!important;
}

.cc-downloads-grid{
  gap:14px!important;
}

.cc-file-card{
  min-height:108px!important;
  border-color:#e3e9ef!important;
  background:linear-gradient(180deg,#ffffff,#fafbfd)!important;
  box-shadow:0 5px 14px rgba(31,72,105,.045)!important;
}

.cc-file-card:hover{
  transform:translateY(-2px)!important;
  box-shadow:0 10px 22px rgba(31,72,105,.08)!important;
}

.cc-file-bonus{
  background:linear-gradient(180deg,#fffdf9,#fff8e9)!important;
  border-color:#ead9ac!important;
}

.cc-file-icon{
  box-shadow:inset 0 0 0 1px rgba(130,50,236,.04)!important;
}

.cc-file-copy strong{
  color:#263c50!important;
  font-weight:800!important;
}

.cc-file-copy small{
  color:#788b9d!important;
}

@media(max-width:700px){
  .cc-file-card,
  .cc-file-bonus{
    min-height:80px!important;
  }
}


/* =========================================================
   v1.6.4 — REFINO GERAL / DESTAQUE "ESCOLHA A VERSÃO"
   ========================================================= */

/* a área de escolha passa a ser um bloco visual próprio */
.ccb-tabs-head{
  position:relative!important;
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:28px!important;
  width:100%!important;
  margin:0 0 18px!important;
  padding:20px 22px!important;
  border:1px solid #e1e8ee!important;
  border-radius:20px!important;
  background:
    radial-gradient(circle at 92% 5%,rgba(130,50,236,.055),transparent 24%),
    linear-gradient(180deg,#ffffff 0%,#fbfcfe 100%)!important;
  box-shadow:0 12px 28px rgba(31,72,105,.09)!important;
  overflow:hidden!important;
}

/* pequeno filete de identidade */
.ccb-tabs-head::before{
  content:"";
  position:absolute;
  left:0;
  top:16px;
  bottom:16px;
  width:5px;
  border-radius:0 999px 999px 0;
  background:linear-gradient(180deg,#2ea1db,#8232ec);
}

.ccb-tabs-copy{
  position:relative!important;
  min-width:0!important;
  padding-left:8px!important;
}

.ccb-tabs-copy h2{
  margin:0!important;
  color:#1f3448!important;
  font-family:"Baloo Bhai 2",sans-serif!important;
  font-size:30px!important;
  line-height:1.05!important;
  font-weight:800!important;
  letter-spacing:-.35px!important;
}

.ccb-tabs-copy p{
  margin:6px 0 0!important;
  color:#667b8f!important;
  font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;
  font-size:13.5px!important;
  line-height:1.45!important;
  font-weight:500!important;
}

/* grupo de abas mais integrado e menos "flutuando" */
.ccb-tabs-switch{
  flex:0 0 auto!important;
  display:flex!important;
  align-items:center!important;
  gap:7px!important;
  padding:6px!important;
  border:1px solid #dfe6ec!important;
  border-radius:17px!important;
  background:#f3f6f9!important;
  box-shadow:
    inset 0 1px 0 rgba(255,255,255,.9),
    0 8px 18px rgba(31,72,105,.07)!important;
}

.ccb-tabs-switch button{
  min-height:48px!important;
  padding:0 20px!important;
  border:0!important;
  border-radius:13px!important;
  font-size:14px!important;
  font-weight:800!important;
  letter-spacing:-.1px!important;
  box-shadow:none!important;
  transition:
    transform .18s ease,
    box-shadow .18s ease,
    filter .18s ease!important;
}

.ccb-tabs-switch button:hover{
  transform:translateY(-1px)!important;
  filter:brightness(1.02)!important;
}

.ccb-tabs-switch button.is-active,
.ccb-tabs-switch button[aria-selected="true"]{
  box-shadow:0 8px 18px rgba(75,63,170,.18)!important;
}

/* aproxima visualmente o seletor e o PDF */
.ccb-partitura-tabs .ccb-pdf-panel{
  margin-top:0!important;
  border-radius:22px!important;
  box-shadow:0 16px 34px rgba(31,72,105,.10)!important;
}

/* refinamento pequeno do player para coerência com o resto */
.ccb-audio-card{
  box-shadow:0 12px 28px rgba(31,72,105,.08)!important;
}

/* downloads: cabeçalho um pouco mais destacado */
.cc-downloads-head{
  padding-bottom:2px;
}

.cc-downloads-head h2{
  font-size:31px!important;
}

.cc-downloads-head p{
  font-size:13.5px!important;
}

/* tablet */
@media(max-width:980px){
  .ccb-tabs-head{
    gap:18px!important;
    padding:18px!important;
  }

  .ccb-tabs-copy h2{
    font-size:27px!important;
  }

  .ccb-tabs-switch button{
    padding:0 16px!important;
    font-size:13px!important;
  }
}

/* celular */
@media(max-width:700px){
  .ccb-tabs-head{
    display:block!important;
    width:100%!important;
    margin:0 0 12px!important;
    padding:17px 15px 15px!important;
    border-radius:17px!important;
  }

  .ccb-tabs-head::before{
    top:14px;
    bottom:14px;
    width:4px;
  }

  .ccb-tabs-copy{
    padding-left:7px!important;
    margin-bottom:14px!important;
  }

  .ccb-tabs-copy h2{
    font-size:25px!important;
    line-height:1.04!important;
  }

  .ccb-tabs-copy p{
    margin-top:5px!important;
    font-size:12.5px!important;
    line-height:1.4!important;
  }

  .ccb-tabs-switch{
    width:100%!important;
    display:grid!important;
    grid-template-columns:1fr 1fr!important;
    gap:6px!important;
    padding:5px!important;
    border-radius:14px!important;
  }

  .ccb-tabs-switch button{
    width:100%!important;
    min-width:0!important;
    min-height:44px!important;
    padding:6px 7px!important;
    border-radius:11px!important;
    font-size:11.5px!important;
    line-height:1.15!important;
    white-space:normal!important;
  }

  .cc-downloads-head h2{
    font-size:25px!important;
  }
}


/* =========================================================
   v1.6.5 — MOBILE: CTA PMPRO + ESPAÇAMENTOS DOS CARDS
   ========================================================= */

@media(max-width:700px){

  /* respiro geral entre os principais blocos */
  .ccb-partitura-header{
    margin-bottom:20px!important;
  }

  .ccb-partitura-tabs{
    margin-bottom:20px!important;
  }

  .ccb-partitura-audio{
    margin-bottom:20px!important;
  }

  .cc-downloads-box{
    margin-top:0!important;
    margin-bottom:18px!important;
  }

  /* bloco "Escolha a versão" com mais respiro */
  .ccb-tabs-head{
    margin-bottom:16px!important;
    padding:18px 16px 16px!important;
  }

  .ccb-tabs-copy{
    margin-bottom:15px!important;
  }

  /* evita o PDF encostar demais */
  .ccb-partitura-tabs .ccb-pdf-panel{
    margin-top:0!important;
  }

  /* DOWNLOADS: cards mais separados e confortáveis */
  .cc-downloads-grid{
    gap:11px!important;
    margin-top:17px!important;
  }

  .cc-file-card,
  .cc-file-bonus{
    min-height:84px!important;
    padding:14px!important;
    gap:12px!important;
    border-radius:15px!important;
  }

  .cc-file-icon{
    width:42px!important;
    height:42px!important;
  }

  .cc-file-copy strong{
    font-size:13.5px!important;
  }

  .cc-file-copy small{
    font-size:11.5px!important;
    line-height:1.38!important;
  }

  /* ======================================================
     PMPRO — refaz o card mobile para não cortar nem embolar
     ====================================================== */

  .ccb-download-unlocked,
  .ccb-download-locked{
    width:calc(100% - 16px)!important;
    max-width:none!important;
    margin:14px 8px 0!important;
    padding:0!important;
    overflow:visible!important;
  }

  .ccb-download-unlocked .elementor-widget-container,
  .ccb-download-locked .elementor-widget-container{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    justify-content:flex-start!important;
    gap:0!important;
    width:100%!important;
    min-height:0!important;
    padding:16px!important;
    border-radius:18px!important;
    overflow:hidden!important;
    box-sizing:border-box!important;
  }

  /* topo informativo */
  .ccb-download-unlocked .elementor-widget-container::before,
  .ccb-download-locked .elementor-widget-container::before{
    align-self:flex-start!important;
    width:46px!important;
    height:46px!important;
    margin:0 0 10px!important;
    border-radius:14px!important;
    flex:0 0 auto!important;
  }

  .ccb-download-unlocked .elementor-widget-container::after,
  .ccb-download-locked .elementor-widget-container::after{
    display:block!important;
    width:100%!important;
    margin:0 0 14px!important;
    white-space:pre-line!important;
    text-align:left!important;
    font-size:14px!important;
    line-height:1.38!important;
    font-weight:800!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }

  /* botão em largura total, abaixo do texto */
  .ccb-download-unlocked .elementor-button,
  .ccb-download-unlocked a.elementor-button,
  .ccb-download-locked .elementor-button,
  .ccb-download-locked a.elementor-button{
    position:static!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    width:100%!important;
    max-width:100%!important;
    min-width:0!important;
    min-height:54px!important;
    margin:0!important;
    padding:12px 16px!important;
    border-radius:14px!important;
    box-sizing:border-box!important;
    white-space:normal!important;
    text-align:center!important;
    font-size:15px!important;
    line-height:1.18!important;
    overflow:visible!important;
  }

  .ccb-download-unlocked .elementor-button-content-wrapper,
  .ccb-download-locked .elementor-button-content-wrapper{
    width:100%!important;
    justify-content:center!important;
  }

  .ccb-download-unlocked .elementor-button-text,
  .ccb-download-locked .elementor-button-text{
    white-space:normal!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
    line-height:1.18!important;
  }
}

/* celulares bem estreitos */
@media(max-width:420px){

  .ccb-partitura-header{
    margin-bottom:18px!important;
  }

  .ccb-partitura-tabs,
  .ccb-partitura-audio{
    margin-bottom:18px!important;
  }

  .ccb-tabs-head{
    padding:17px 14px 15px!important;
  }

  .cc-downloads-box{
    padding:15px!important;
  }

  .ccb-download-unlocked .elementor-widget-container,
  .ccb-download-locked .elementor-widget-container{
    padding:14px!important;
  }

  .ccb-download-unlocked .elementor-button,
  .ccb-download-locked .elementor-button{
    min-height:52px!important;
    padding:11px 12px!important;
    font-size:14.5px!important;
  }
}


/* =========================================================
   v1.6.6 — MOBILE PMPRO: ordem e composição corrigidas
   ========================================================= */

@media(max-width:700px){

  .ccb-download-unlocked .elementor-widget-container,
  .ccb-download-locked .elementor-widget-container{
    display:flex!important;
    flex-direction:column!important;
    align-items:stretch!important;
    gap:0!important;
  }

  /* ícone */
  .ccb-download-unlocked .elementor-widget-container::before,
  .ccb-download-locked .elementor-widget-container::before{
    order:1!important;
    margin:0 0 10px!important;
    align-self:flex-start!important;
  }

  /* texto explicativo */
  .ccb-download-unlocked .elementor-widget-container::after,
  .ccb-download-locked .elementor-widget-container::after{
    order:2!important;
    margin:0 0 14px!important;
    width:100%!important;
    display:block!important;
    text-align:left!important;
    white-space:pre-line!important;
    word-break:normal!important;
    overflow-wrap:normal!important;
  }

  /* botão por último */
  .ccb-download-unlocked .elementor-button,
  .ccb-download-unlocked a.elementor-button,
  .ccb-download-locked .elementor-button,
  .ccb-download-locked a.elementor-button{
    order:3!important;
    position:static!important;
    width:100%!important;
    max-width:100%!important;
    margin:0!important;
  }
}


/* =========================================================
   v1.7.0 — refinamentos de layout inspirados no protótipo
   ========================================================= */

/* HEADER */
.ccb-partitura-header{
  padding:28px 36px 28px!important;
  border-radius:30px!important;
  background:
    radial-gradient(circle at 92% 16%,rgba(161,112,255,.10) 0 11%,transparent 12%),
    linear-gradient(180deg,#ffffff 0%,#fbfdff 100%)!important;
}
.ccb-partitura-breadcrumb{
  display:flex;
  align-items:center;
  gap:10px;
  margin:0 0 16px;
  color:#7a8ea1;
  font:500 15px/1.2 Inter,system-ui,-apple-system,"Segoe UI",sans-serif;
}
.ccb-partitura-breadcrumb .ccb-current{
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  max-width:100%;
}
.ccb-partitura-breadcrumb .ccb-sep{color:#a9b6c3}
.ccb-partitura-header .elementor-heading-title,
.ccb-partitura-title .elementor-heading-title{
  text-align:left!important;
  color:#2f9ed8!important;
  font-size:clamp(40px,4.5vw,64px)!important;
  line-height:.98!important;
  letter-spacing:-1.4px!important;
  max-width:1000px;
}
.ccb-partitura-header .elementor-widget-heading{margin-bottom:10px!important;}
.ccb-partitura-header .elementor-heading-title::after,
.ccb-partitura-title .elementor-heading-title::after{
  content:"";
  display:block;
  width:82px;
  height:5px;
  margin-top:16px;
  border-radius:999px;
  background:linear-gradient(90deg,#2fa6dd,#8c36ee);
}
.ccb-partitura-meta{margin-top:16px!important;}
.ccb-partitura-meta .elementor-widget-container,
.ccb-partitura-meta .elementor-icon-list-items,
.ccb-partitura-meta ul{justify-content:flex-start!important;gap:10px!important;}
.ccb-partitura-meta a,
.ccb-partitura-meta .elementor-icon-list-item,
.ccb-partitura-meta li,
.ccb-partitura-meta span.is-level,
.ccb-partitura-meta span.is-topic{
  min-height:40px!important;
  padding:0 16px!important;
  border-radius:999px!important;
  font-size:14px!important;
  font-weight:800!important;
  box-shadow:0 4px 14px rgba(31,72,105,.06);
}
.ccb-partitura-meta .is-level{
  background:#e7f6ea!important;
  color:#2d8750!important;
}
.ccb-partitura-meta a:not(.is-level),
.ccb-partitura-meta .is-topic,
.ccb-partitura-meta li:not(.is-level){
  background:#f2e8ff!important;
  color:#6c32b7!important;
}

/* TABS / version selector */
.ccb-tabs-head{
  display:flex!important;
  justify-content:space-between!important;
  align-items:flex-end!important;
  gap:22px!important;
  margin:12px 0 18px!important;
  padding:0 0 18px!important;
  border-bottom:1px solid #e6edf3!important;
}
.ccb-tabs-copy h2{
  font-family:"Baloo Bhai 2",sans-serif!important;
  font-size:34px!important;
  line-height:1!important;
  color:#1f3550!important;
  margin:0 0 6px!important;
  font-weight:800!important;
}
.ccb-tabs-copy p{
  margin:0!important;
  color:#6f8294!important;
  font:500 15px/1.45 Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;
}
.ccb-tabs-controls{
  display:flex;
  align-items:center;
  justify-content:flex-end;
  gap:12px;
  flex-wrap:wrap;
}
.ccb-tabs-switch{
  padding:6px!important;
  border-radius:22px!important;
  background:#ffffff!important;
  border:1px solid #dfe8ef!important;
  box-shadow:0 10px 28px rgba(31,72,105,.08)!important;
}
.ccb-tabs-switch button{
  min-width:214px;
  min-height:56px;
  padding:0 22px!important;
  border-radius:16px!important;
  font:800 18px/1 Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;
  color:#45627c!important;
}
.ccb-tabs-switch button.is-active{
  background:linear-gradient(180deg,#8f40f1,#7e30ea)!important;
  color:#fff!important;
  box-shadow:0 8px 18px rgba(130,50,236,.26)!important;
}
.ccb-tabs-quick{
  display:flex;
  align-items:center;
  gap:10px;
}
.ccb-quick-btn{
  width:54px;
  height:54px;
  display:grid;
  place-items:center;
  border-radius:16px;
  border:1px solid #dfe8ef;
  background:#fff;
  color:#8736ed;
  font-size:24px;
  line-height:1;
  cursor:pointer;
  box-shadow:0 10px 20px rgba(31,72,105,.08);
  transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease;
}
.ccb-quick-btn:hover{transform:translateY(-2px);border-color:#d9c5fb;box-shadow:0 14px 24px rgba(31,72,105,.12)}
.ccb-quick-btn:disabled{opacity:.45;cursor:not-allowed;transform:none}

/* downloads HTML widget: cards menores e 4 por linha */
.cc-downloads-grid{grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:14px!important}
.cc-file-card,
.cc-file-bonus{
  min-height:96px!important;
  padding:14px!important;
  grid-column:auto!important;
}
.cc-file-card{grid-template-columns:38px minmax(0,1fr)!important;gap:12px!important}
.cc-file-icon{width:38px!important;height:38px!important;font-size:18px!important}
.cc-file-copy strong{font-size:14px!important}
.cc-file-copy small{font-size:12px!important}

/* bloco PMPro mais elegante */
.ccb-download-unlocked,
.ccb-download-locked{
  max-width:none!important;
  margin:18px 0 0!important;
  display:grid!important;
  grid-template-columns:64px minmax(0,1fr) auto!important;
  align-items:center!important;
  gap:18px!important;
  padding:22px!important;
  border-radius:22px!important;
}
.ccb-download-unlocked{background:linear-gradient(180deg,#f6fff8,#eef8f1)!important;border:1px solid #d2e7d8!important;box-shadow:0 14px 28px rgba(46,126,69,.10)!important}
.ccb-download-locked{background:linear-gradient(180deg,#fbfbfc,#f2f4f6)!important;border:1px solid #dde2e7!important}
.ccb-download-unlocked::before,
.ccb-download-locked::before{
  width:64px;height:64px;border-radius:18px;display:grid;place-items:center;margin:0!important;font-size:34px;font-weight:900;
}
.ccb-download-unlocked::before{content:"✓";background:#dff1e4;color:#2e8b49}
.ccb-download-locked::before{content:"🔒";background:#eceef1;color:#68717a;font-size:28px}
.ccb-download-unlocked::after,
.ccb-download-locked::after{
  display:block!important;
  white-space:pre-line!important;
  margin:0!important;
  font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;
}
.ccb-download-unlocked::after{content:"ACESSO LIBERADO\ASeu plano inclui os downloads completos.";color:#23455e;font-size:15px;line-height:1.45;font-weight:800}
.ccb-download-locked::after{content:"EXCLUSIVO PLANO MAESTRO COLORIDO\AOs downloads completos são um benefício do plano Maestro Colorido.";color:#526475;font-size:15px;line-height:1.45;font-weight:800}
.ccb-download-unlocked::after::first-line,
.ccb-download-locked::after::first-line{font-size:11px}
.ccb-download-unlocked .elementor-widget-container,
.ccb-download-locked .elementor-widget-container{display:block!important}
.ccb-download-unlocked .elementor-button,
.ccb-download-unlocked a.elementor-button,
.ccb-download-locked .elementor-button,
.ccb-download-locked a.elementor-button{
  width:auto!important;min-width:340px!important;min-height:58px!important;padding:0 28px!important;border-radius:18px!important;font-size:18px!important;font-weight:800!important;
}

@media(max-width:1100px){
  .cc-downloads-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important}
  .ccb-tabs-switch button{min-width:190px}
}
@media(max-width:700px){
  .ccb-partitura-header{padding:24px 18px!important;border-radius:22px!important}
  .ccb-partitura-breadcrumb{font-size:13px;margin-bottom:12px}
  .ccb-partitura-header .elementor-heading-title,
  .ccb-partitura-title .elementor-heading-title{font-size:clamp(24px,10vw,42px)!important;line-height:1.05!important}
  .ccb-partitura-header .elementor-heading-title::after,
  .ccb-partitura-title .elementor-heading-title::after{width:60px;height:4px;margin-top:14px}
  .ccb-tabs-head{flex-direction:column!important;align-items:stretch!important;gap:14px!important}
  .ccb-tabs-controls{justify-content:stretch;align-items:stretch;flex-direction:column!important}
  .ccb-tabs-switch{width:100%!important}
  .ccb-tabs-switch button{min-width:0;width:100%;font-size:16px!important;min-height:52px}
  .ccb-tabs-quick{justify-content:flex-end}
  .ccb-quick-btn{width:48px;height:48px;border-radius:14px;font-size:21px}
  .cc-downloads-grid{grid-template-columns:1fr!important}
  .ccb-download-unlocked,
  .ccb-download-locked{grid-template-columns:1fr!important;gap:12px!important;padding:18px!important}
  .ccb-download-unlocked::before,
  .ccb-download-locked::before{width:54px;height:54px;font-size:28px}
  .ccb-download-unlocked .elementor-button,
  .ccb-download-unlocked a.elementor-button,
  .ccb-download-locked .elementor-button,
  .ccb-download-locked a.elementor-button{width:100%!important;min-width:0!important;order:3!important;font-size:16px!important}
  .ccb-download-unlocked::after,
  .ccb-download-locked::after{order:2!important}
}


/* =========================================================
   v1.7.1 — correções visuais e organização profissional
   ========================================================= */

/* HEADER: remove duplicidade de filetes e excesso de efeitos */
.ccb-partitura-title::after{
  display:none!important;
  content:none!important;
}
.ccb-partitura-header .elementor-heading-title::after,
.ccb-partitura-title .elementor-heading-title::after{
  content:""!important;
  display:block!important;
  width:76px!important;
  height:4px!important;
  margin-top:16px!important;
  border-radius:999px!important;
  background:linear-gradient(90deg,#2fa6dd,#8c36ee)!important;
}
.ccb-partitura-meta a,
.ccb-partitura-meta .elementor-icon-list-item,
.ccb-partitura-meta li{
  box-shadow:none!important;
  border:1px solid rgba(130,50,236,.10)!important;
}

/* ESCOLHA A VERSÃO — compacto, limpo e sem cara de botão genérico */
.ccb-tabs-head{
  align-items:center!important;
  margin:16px 0 20px!important;
  padding:18px 20px!important;
  border:1px solid #e3eaf0!important;
  border-radius:22px!important;
  background:#fff!important;
  box-shadow:0 10px 26px rgba(31,72,105,.07)!important;
}
.ccb-tabs-head::before{
  top:18px!important;
  bottom:18px!important;
  width:4px!important;
}
.ccb-tabs-copy{padding-left:10px!important;}
.ccb-tabs-copy h2{
  font-size:30px!important;
  margin-bottom:7px!important;
}
.ccb-tabs-copy p{
  font-size:14px!important;
  max-width:520px!important;
}
.ccb-tabs-controls{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-end!important;
  gap:10px!important;
  flex:0 0 auto!important;
}
.ccb-tabs-switch{
  display:flex!important;
  gap:6px!important;
  padding:5px!important;
  background:#f5f7fa!important;
  border:1px solid #dfe6ec!important;
  border-radius:16px!important;
  box-shadow:none!important;
}
.ccb-tabs-switch button{
  min-width:0!important;
  min-height:48px!important;
  padding:0 18px!important;
  border:1px solid transparent!important;
  border-radius:12px!important;
  background:transparent!important;
  color:#526a80!important;
  font:800 14px/1 Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;
  box-shadow:none!important;
}
.ccb-tabs-switch button:hover{
  background:#fff!important;
  color:#6f31cc!important;
  transform:none!important;
}
.ccb-tabs-switch button.is-active,
.ccb-tabs-switch button[aria-selected="true"]{
  background:linear-gradient(180deg,#9141f2,#7d2eea)!important;
  color:#fff!important;
  border-color:transparent!important;
  box-shadow:0 7px 16px rgba(130,50,236,.20)!important;
}
.ccb-tabs-quick{
  display:flex!important;
  gap:8px!important;
}
.ccb-quick-btn{
  width:48px!important;
  height:48px!important;
  border-radius:13px!important;
  border:1px solid #dfe6ec!important;
  background:#fff!important;
  color:#8232EC!important;
  font-size:20px!important;
  font-weight:700!important;
  box-shadow:none!important;
}
.ccb-quick-btn:hover{
  background:#f7f2ff!important;
  border-color:#d9c4fb!important;
  color:#6d25ca!important;
  transform:none!important;
}

/* PMPRO — explicitamente posiciona cada parte para não esmagar texto */
.ccb-download-unlocked,
.ccb-download-locked{
  display:grid!important;
  grid-template-columns:58px minmax(0,1fr) auto!important;
  grid-template-rows:auto!important;
  align-items:center!important;
  gap:16px!important;
  width:100%!important;
  max-width:100%!important;
  min-height:104px!important;
  margin:18px 0 0!important;
  padding:18px 20px!important;
  border-radius:20px!important;
  box-sizing:border-box!important;
  overflow:visible!important;
}
.ccb-download-unlocked{
  background:linear-gradient(180deg,#f7fff9,#eef8f1)!important;
  border:1px solid #d2e7d8!important;
  box-shadow:0 12px 26px rgba(46,126,69,.08)!important;
}
.ccb-download-locked{
  background:linear-gradient(180deg,#fcfcfd,#f4f5f7)!important;
  border:1px solid #e0e4e8!important;
  box-shadow:0 10px 22px rgba(31,72,105,.06)!important;
}
.ccb-download-unlocked::before,
.ccb-download-locked::before{
  grid-column:1!important;
  grid-row:1!important;
  width:54px!important;
  height:54px!important;
  margin:0!important;
  border-radius:15px!important;
  display:grid!important;
  place-items:center!important;
  align-self:center!important;
}
.ccb-download-unlocked::before{
  content:"✓"!important;
  background:#e2f5e7!important;
  color:#2f8e48!important;
  font:900 23px/1 Inter,system-ui,sans-serif!important;
}
.ccb-download-locked::before{
  content:"🔒"!important;
  background:#eceff2!important;
  color:#6d7781!important;
  font-size:19px!important;
}
.ccb-download-unlocked::after,
.ccb-download-locked::after{
  grid-column:2!important;
  grid-row:1!important;
  width:auto!important;
  min-width:0!important;
  margin:0!important;
  white-space:pre-line!important;
  word-break:normal!important;
  overflow-wrap:normal!important;
  text-align:left!important;
  font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;
}
.ccb-download-unlocked::after{
  content:"ACESSO LIBERADO\ASeu plano inclui os downloads completos."!important;
  color:#24465d!important;
  font-size:14px!important;
  line-height:1.45!important;
  font-weight:800!important;
}
.ccb-download-locked::after{
  content:"PLANO MAESTRO COLORIDO\ADownloads completos disponíveis neste plano."!important;
  color:#526475!important;
  font-size:14px!important;
  line-height:1.45!important;
  font-weight:800!important;
}
.ccb-download-unlocked .elementor-widget-container,
.ccb-download-locked .elementor-widget-container{
  grid-column:3!important;
  grid-row:1!important;
  display:block!important;
  width:auto!important;
  max-width:none!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
}
.ccb-download-unlocked .elementor-widget-container::before,
.ccb-download-unlocked .elementor-widget-container::after,
.ccb-download-locked .elementor-widget-container::before,
.ccb-download-locked .elementor-widget-container::after{
  display:none!important;
  content:none!important;
}
.ccb-download-unlocked .elementor-button,
.ccb-download-unlocked a.elementor-button,
.ccb-download-locked .elementor-button,
.ccb-download-locked a.elementor-button{
  width:auto!important;
  min-width:290px!important;
  min-height:54px!important;
  margin:0!important;
  padding:0 24px!important;
  border-radius:14px!important;
  white-space:nowrap!important;
  font-size:16px!important;
  font-weight:800!important;
  line-height:1!important;
}

/* DOWNLOADS: quatro cards por linha em desktop, sem deixar o bônus gigante */
.cc-downloads-grid{
  grid-template-columns:repeat(4,minmax(0,1fr))!important;
  gap:12px!important;
}
.cc-file-card,
.cc-file-bonus{
  grid-column:auto!important;
  min-height:92px!important;
  padding:13px!important;
}
.cc-file-icon{width:38px!important;height:38px!important;font-size:18px!important;}

@media(max-width:1100px){
  .ccb-tabs-head{align-items:flex-start!important;}
  .ccb-tabs-controls{flex-direction:column!important;align-items:flex-end!important;}
  .cc-downloads-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}

@media(max-width:700px){
  .ccb-tabs-head{
    flex-direction:column!important;
    align-items:stretch!important;
    gap:14px!important;
    padding:16px!important;
  }
  .ccb-tabs-copy{padding-left:7px!important;}
  .ccb-tabs-copy h2{font-size:25px!important;}
  .ccb-tabs-copy p{font-size:12.5px!important;}
  .ccb-tabs-controls{align-items:stretch!important;width:100%!important;}
  .ccb-tabs-switch{width:100%!important;display:grid!important;grid-template-columns:1fr 1fr!important;}
  .ccb-tabs-switch button{width:100%!important;padding:0 8px!important;font-size:11.5px!important;line-height:1.15!important;white-space:normal!important;}
  .ccb-tabs-quick{justify-content:flex-end!important;}
  .ccb-quick-btn{width:44px!important;height:44px!important;}

  .cc-downloads-grid{grid-template-columns:1fr!important;}

  .ccb-download-unlocked,
  .ccb-download-locked{
    display:grid!important;
    grid-template-columns:50px minmax(0,1fr)!important;
    grid-template-rows:auto auto!important;
    gap:12px!important;
    padding:16px!important;
  }
  .ccb-download-unlocked::before,
  .ccb-download-locked::before{
    grid-column:1!important;
    grid-row:1!important;
    width:48px!important;
    height:48px!important;
  }
  .ccb-download-unlocked::after,
  .ccb-download-locked::after{
    grid-column:2!important;
    grid-row:1!important;
    font-size:13px!important;
  }
  .ccb-download-unlocked .elementor-widget-container,
  .ccb-download-locked .elementor-widget-container{
    grid-column:1/-1!important;
    grid-row:2!important;
    width:100%!important;
  }
  .ccb-download-unlocked .elementor-button,
  .ccb-download-unlocked a.elementor-button,
  .ccb-download-locked .elementor-button,
  .ccb-download-locked a.elementor-button{
    width:100%!important;
    min-width:0!important;
    white-space:normal!important;
    font-size:15px!important;
  }
}


/* =========================================================
   v1.7.2 — ajustes solicitados
   ========================================================= */

/* Metadados da partitura: mais discretos, como no protótipo */
.ccb-partitura-meta{
  margin-top:14px!important;
}
.ccb-partitura-meta .elementor-widget-container,
.ccb-partitura-meta .elementor-icon-list-items,
.ccb-partitura-meta ul{
  gap:8px!important;
}
.ccb-partitura-meta a,
.ccb-partitura-meta .elementor-icon-list-item,
.ccb-partitura-meta li,
.ccb-partitura-meta span.is-level,
.ccb-partitura-meta span.is-topic{
  min-height:34px!important;
  padding:0 13px!important;
  border-radius:999px!important;
  border:1px solid transparent!important;
  font-size:12.5px!important;
  font-weight:800!important;
  line-height:1!important;
  box-shadow:none!important;
}
.ccb-partitura-meta .is-level{
  background:#eaf7ee!important;
  color:#267d49!important;
  border-color:#d9efe1!important;
}
.ccb-partitura-meta a:not(.is-level),
.ccb-partitura-meta .is-topic,
.ccb-partitura-meta li:not(.is-level){
  background:#f3eaff!important;
  color:#6f37be!important;
  border-color:#eadcff!important;
}

/* ações rápidas somente no PC */
@media(max-width:700px){
  .ccb-tabs-quick{
    display:none!important;
  }
}

/* cards do HTML de downloads: 4 na mesma linha no desktop */
@media(min-width:1101px){
  .cc-downloads-grid{
    grid-template-columns:repeat(4,minmax(0,1fr))!important;
  }
}

/* card de Áudios unificado */
.cc-file-card .cc-file-copy strong{
  letter-spacing:-.05px;
}

/* mobile: chips menores e mais leves */
@media(max-width:700px){
  .ccb-partitura-meta{
    margin-top:12px!important;
  }
  .ccb-partitura-meta .elementor-widget-container,
  .ccb-partitura-meta .elementor-icon-list-items,
  .ccb-partitura-meta ul{
    gap:7px!important;
  }
  .ccb-partitura-meta a,
  .ccb-partitura-meta .elementor-icon-list-item,
  .ccb-partitura-meta li,
  .ccb-partitura-meta span.is-level,
  .ccb-partitura-meta span.is-topic{
    min-height:31px!important;
    padding:0 11px!important;
    font-size:11.5px!important;
  }
}


/* =========================================================
   v1.7.3 — corrige chip duplicado / "pill dentro de pill"
   ========================================================= */

/* O Elementor cria spans internos. Eles NÃO devem virar chips. */
.ccb-partitura-meta a *,
.ccb-partitura-meta li *,
.ccb-partitura-meta .elementor-icon-list-item *{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  border-radius:0!important;
  padding:0!important;
  min-height:0!important;
}

/* somente o elemento externo vira chip */
.ccb-partitura-meta a,
.ccb-partitura-meta li,
.ccb-partitura-meta .elementor-icon-list-item{
  display:inline-flex!important;
  align-items:center!important;
  gap:6px!important;
  width:auto!important;
  min-height:32px!important;
  padding:0 12px!important;
  border-radius:999px!important;
  box-shadow:none!important;
}

/* Sugestão de Assinante — discreto como no protótipo */
.ccb-partitura-meta a[href*="sugerir-partitura"]{
  background:#f6efff!important;
  color:#6e37bd!important;
  border:1px solid #e8dafa!important;
  font-size:12px!important;
  font-weight:800!important;
}

/* limpa possíveis efeitos do widget no conteúdo interno */
.ccb-partitura-meta a[href*="sugerir-partitura"] span,
.ccb-partitura-meta a[href*="sugerir-partitura"] i,
.ccb-partitura-meta a[href*="sugerir-partitura"] svg{
  background:transparent!important;
  box-shadow:none!important;
}

/* ícone um pouco menor */
.ccb-partitura-meta a[href*="sugerir-partitura"] i,
.ccb-partitura-meta a[href*="sugerir-partitura"] svg{
  width:13px!important;
  height:13px!important;
  font-size:13px!important;
}

/* mobile ainda mais discreto */
@media(max-width:700px){
  .ccb-partitura-meta a,
  .ccb-partitura-meta li,
  .ccb-partitura-meta .elementor-icon-list-item{
    min-height:30px!important;
    padding:0 10px!important;
    gap:5px!important;
  }

  .ccb-partitura-meta a[href*="sugerir-partitura"]{
    font-size:11.5px!important;
  }
}


/* =========================================================
   v1.7.4 — microrefinos solicitados
   ========================================================= */

/* 1) Sugestão de Assinante: conteúdo perfeitamente centralizado */
.ccb-partitura-meta a[href*="sugerir-partitura"]{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:7px!important;
  min-height:32px!important;
  padding:0 13px!important;
  line-height:1!important;
  vertical-align:middle!important;
}
.ccb-partitura-meta a[href*="sugerir-partitura"] *,
.ccb-partitura-meta a[href*="sugerir-partitura"] span,
.ccb-partitura-meta a[href*="sugerir-partitura"] .elementor-icon-list-text,
.ccb-partitura-meta a[href*="sugerir-partitura"] .elementor-icon-list-icon{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  line-height:1!important;
  margin:0!important;
  transform:none!important;
  vertical-align:middle!important;
}
.ccb-partitura-meta a[href*="sugerir-partitura"] .elementor-icon-list-text{
  position:static!important;
  top:auto!important;
  bottom:auto!important;
}

/* 2) botões de seleção desativados: sem sombra na fonte */
.ccb-tabs-switch button,
.ccb-tabs-switch button *,
.ccb-tabs-switch button:not(.is-active),
.ccb-tabs-switch button[aria-selected="false"]{
  text-shadow:none!important;
  -webkit-text-stroke:0!important;
  filter:none!important;
}
.ccb-tabs-switch button:not(.is-active),
.ccb-tabs-switch button[aria-selected="false"]{
  color:#526a80!important;
  box-shadow:none!important;
}

/* 3) acesso liberado: CTA alinhado ao centro do conteúdo */
.ccb-download-unlocked,
.ccb-download-locked{
  align-items:center!important;
}
.ccb-download-unlocked .elementor-widget-container,
.ccb-download-locked .elementor-widget-container{
  align-self:center!important;
  justify-self:end!important;
  display:flex!important;
  align-items:center!important;
  justify-content:center!important;
}
.ccb-download-unlocked .elementor-button,
.ccb-download-unlocked a.elementor-button{
  min-height:52px!important;
  padding:0 26px!important;
  border-radius:14px!important;
  box-shadow:0 8px 18px rgba(130,50,236,.18)!important;
}
.ccb-download-unlocked .elementor-button:hover,
.ccb-download-unlocked a.elementor-button:hover{
  box-shadow:0 10px 22px rgba(130,50,236,.22)!important;
  transform:none!important;
}

/* 4) texto bloqueado exatamente como solicitado */
.ccb-download-locked::after{
  content:"Downloads completos disponíveis no PLANO MAESTRO COLORIDO."!important;
  color:#526475!important;
  font-size:14px!important;
  line-height:1.45!important;
  font-weight:800!important;
  white-space:normal!important;
}

@media(max-width:700px){
  .ccb-partitura-meta a[href*="sugerir-partitura"]{
    min-height:30px!important;
    padding:0 11px!important;
    gap:6px!important;
  }
  .ccb-download-unlocked .elementor-widget-container,
  .ccb-download-locked .elementor-widget-container{
    justify-self:stretch!important;
    width:100%!important;
  }
}


/* =========================================================
   v1.7.5 — refinamento REAL: meta, título, breadcrumb e PDF mobile
   ========================================================= */

/* ---------- HEADER / TÍTULO ---------- */
@media(min-width:701px){
  .ccb-partitura-header .elementor-heading-title,
  .ccb-partitura-title .elementor-heading-title{
    font-size:clamp(30px,3vw,48px)!important;
    line-height:1.02!important;
    letter-spacing:-.8px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    max-width:calc(100% - 120px)!important;
  }
}

/* ---------- BREADCRUMB ---------- */
.ccb-partitura-breadcrumb{
  min-width:0!important;
  max-width:100%!important;
}
.ccb-partitura-breadcrumb > *{
  min-width:0!important;
}
.ccb-partitura-breadcrumb .ccb-current{
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  white-space:nowrap!important;
  min-width:0!important;
}

/* ---------- META / PÍLULAS ---------- */
.ccb-partitura-meta{
  width:100%!important;
  margin-top:18px!important;
}

.ccb-partitura-meta .elementor-widget-container,
.ccb-partitura-meta .elementor-icon-list-items,
.ccb-partitura-meta ul{
  display:flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  flex-wrap:wrap!important;
  gap:10px!important;
  width:100%!important;
  margin:0!important;
  padding:0!important;
}

/* cada item é uma única pílula limpa; sem fundo nos filhos */
.ccb-partitura-meta a,
.ccb-partitura-meta li,
.ccb-partitura-meta .elementor-icon-list-item{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:8px!important;
  width:auto!important;
  max-width:100%!important;
  min-height:34px!important;
  padding:0 13px!important;
  margin:0!important;
  border-radius:999px!important;
  box-shadow:none!important;
  text-shadow:none!important;
  white-space:nowrap!important;
  font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;
  font-size:12.5px!important;
  line-height:1!important;
  font-weight:800!important;
}

.ccb-partitura-meta a *,
.ccb-partitura-meta li *,
.ccb-partitura-meta .elementor-icon-list-item *{
  background:transparent!important;
  border:0!important;
  box-shadow:none!important;
  text-shadow:none!important;
  padding:0!important;
  margin:0!important;
  min-height:0!important;
  border-radius:0!important;
  line-height:1!important;
}

/* Nível = verde discreto */
.ccb-partitura-meta .is-level,
.ccb-partitura-meta a.is-level,
.ccb-partitura-meta li.is-level{
  background:#e9f7ee!important;
  border:1px solid #d7ecdf!important;
  color:#267a45!important;
}

/* Demais temas = lilás suave */
.ccb-partitura-meta .is-topic,
.ccb-partitura-meta a.is-topic,
.ccb-partitura-meta li.is-topic{
  background:#f3ebff!important;
  border:1px solid #e7d9fa!important;
  color:#6b35b7!important;
}

/* Sugestão de assinante: menor e sem “caixa dentro de caixa” */
.ccb-partitura-meta a[href*="sugerir-partitura"]{
  background:#f5efff!important;
  border:1px solid #e5d7f8!important;
  color:#6d38bb!important;
  min-height:34px!important;
  padding:0 13px!important;
}

/* ícones coerentes */
.ccb-partitura-meta svg,
.ccb-partitura-meta i{
  flex:0 0 auto!important;
  width:14px!important;
  height:14px!important;
  font-size:14px!important;
  color:#2e9dd7!important;
}

/* ---------- MOBILE ---------- */
@media(max-width:700px){
  .ccb-partitura-header{
    padding:20px 16px 22px!important;
  }

  .ccb-partitura-breadcrumb{
    gap:7px!important;
    margin-bottom:12px!important;
    font-size:12.5px!important;
    line-height:1.2!important;
    overflow:hidden!important;
    white-space:nowrap!important;
  }

  .ccb-partitura-breadcrumb > span:first-child{
    flex:0 0 auto!important;
  }
  .ccb-partitura-breadcrumb .ccb-sep{
    flex:0 0 auto!important;
  }
  .ccb-partitura-breadcrumb .ccb-current{
    flex:1 1 auto!important;
    min-width:0!important;
  }

  .ccb-partitura-header .elementor-heading-title,
  .ccb-partitura-title .elementor-heading-title{
    font-size:clamp(27px,8.4vw,34px)!important;
    line-height:1.05!important;
    letter-spacing:-.45px!important;
    white-space:normal!important;
    display:-webkit-box!important;
    -webkit-line-clamp:2!important;
    -webkit-box-orient:vertical!important;
    overflow:hidden!important;
    max-width:100%!important;
  }

  .ccb-partitura-meta{
    margin-top:15px!important;
  }

  .ccb-partitura-meta .elementor-widget-container,
  .ccb-partitura-meta .elementor-icon-list-items,
  .ccb-partitura-meta ul{
    display:grid!important;
    grid-template-columns:1fr!important;
    gap:8px!important;
    width:100%!important;
  }

  .ccb-partitura-meta a,
  .ccb-partitura-meta li,
  .ccb-partitura-meta .elementor-icon-list-item{
    width:100%!important;
    min-height:36px!important;
    padding:0 12px!important;
    justify-content:flex-start!important;
    font-size:12px!important;
    white-space:normal!important;
    line-height:1.15!important;
  }

  .ccb-partitura-meta a[href*="sugerir-partitura"]{
    width:100%!important;
  }

  /* PDF: abre mais afastado no celular */
  .ccb-partitura-tabs .ccb-pdf-panel iframe,
  .ccb-partitura-tabs .ccb-pdf-panel embed,
  .ccb-partitura-tabs .ccb-pdf-panel object{
    width:100%!important;
    max-width:100%!important;
  }
}


/* =========================================================
   v1.7.6 — META FINAL + MOBILE SEM RETICÊNCIAS
   ========================================================= */

/* META: somente o item externo é o chip. Nunca o link/span interno. */
.ccb-partitura-meta .elementor-icon-list-item,
.ccb-partitura-meta li{
  display:inline-flex!important;
  align-items:center!important;
  justify-content:flex-start!important;
  gap:7px!important;
  width:auto!important;
  max-width:100%!important;
  min-height:32px!important;
  padding:0 12px!important;
  margin:0!important;
  border-radius:999px!important;
  border:1px solid transparent!important;
  box-shadow:none!important;
  text-shadow:none!important;
  font-family:Inter,system-ui,-apple-system,"Segoe UI",sans-serif!important;
  font-size:12px!important;
  line-height:1.2!important;
  font-weight:700!important;
  white-space:normal!important;
}

/* limpa totalmente o conteúdo interno do widget do Elementor */
.ccb-partitura-meta .elementor-icon-list-item > a,
.ccb-partitura-meta li > a,
.ccb-partitura-meta .elementor-icon-list-item span,
.ccb-partitura-meta li span,
.ccb-partitura-meta .elementor-icon-list-icon,
.ccb-partitura-meta .elementor-icon-list-text{
  display:inline-flex!important;
  align-items:center!important;
  width:auto!important;
  min-width:0!important;
  min-height:0!important;
  margin:0!important;
  padding:0!important;
  background:transparent!important;
  border:0!important;
  border-radius:0!important;
  box-shadow:none!important;
  text-shadow:none!important;
  color:inherit!important;
  font:inherit!important;
  line-height:inherit!important;
}

.ccb-partitura-meta .elementor-icon-list-item > a,
.ccb-partitura-meta li > a{
  gap:7px!important;
  text-decoration:none!important;
}

/* cores discretas, no estilo do protótipo */
.ccb-partitura-meta .elementor-icon-list-item.is-level,
.ccb-partitura-meta li.is-level{
  background:#edf8f1!important;
  border-color:#dceee3!important;
  color:#237544!important;
}

.ccb-partitura-meta .elementor-icon-list-item.is-topic,
.ccb-partitura-meta li.is-topic{
  background:#f6f0ff!important;
  border-color:#eadffc!important;
  color:#6e3abb!important;
}

.ccb-partitura-meta svg,
.ccb-partitura-meta i{
  flex:0 0 auto!important;
  width:13px!important;
  height:13px!important;
  font-size:13px!important;
  color:#2f9fd8!important;
  filter:none!important;
}

/* Desktop: chips em uma linha organizada, sem parecerem flutuando */
@media(min-width:701px){
  .ccb-partitura-meta .elementor-widget-container,
  .ccb-partitura-meta .elementor-icon-list-items,
  .ccb-partitura-meta ul{
    display:flex!important;
    align-items:center!important;
    justify-content:flex-start!important;
    flex-wrap:wrap!important;
    gap:8px!important;
  }

  /* não aplicar largura/pill também no link quando ele está dentro de LI */
  .ccb-partitura-meta .elementor-icon-list-item > a,
  .ccb-partitura-meta li > a{
    min-height:0!important;
    padding:0!important;
    background:transparent!important;
    border:0!important;
    box-shadow:none!important;
  }
}

/* MOBILE: caminho e título podem quebrar naturalmente. Sem "...". */
@media(max-width:700px){
  .ccb-partitura-breadcrumb{
    display:flex!important;
    align-items:flex-start!important;
    flex-wrap:wrap!important;
    gap:5px 7px!important;
    margin-bottom:14px!important;
    overflow:visible!important;
    white-space:normal!important;
    font-size:12.5px!important;
    line-height:1.35!important;
  }

  .ccb-partitura-breadcrumb .ccb-current{
    flex:1 1 190px!important;
    min-width:0!important;
    max-width:100%!important;
    overflow:visible!important;
    text-overflow:clip!important;
    white-space:normal!important;
    overflow-wrap:anywhere!important;
  }

  .ccb-partitura-header .elementor-heading-title,
  .ccb-partitura-title .elementor-heading-title{
    display:block!important;
    white-space:normal!important;
    overflow:visible!important;
    text-overflow:clip!important;
    -webkit-line-clamp:unset!important;
    -webkit-box-orient:unset!important;
    max-width:100%!important;
    font-size:clamp(26px,7.8vw,32px)!important;
    line-height:1.08!important;
    letter-spacing:-.35px!important;
    overflow-wrap:normal!important;
    word-break:normal!important;
  }

  /* meta mobile: deixa os chips naturais, sem cartões enormes em largura total */
  .ccb-partitura-meta .elementor-widget-container,
  .ccb-partitura-meta .elementor-icon-list-items,
  .ccb-partitura-meta ul{
    display:flex!important;
    flex-direction:row!important;
    align-items:flex-start!important;
    justify-content:flex-start!important;
    flex-wrap:wrap!important;
    gap:8px!important;
  }

  .ccb-partitura-meta .elementor-icon-list-item,
  .ccb-partitura-meta li{
    width:auto!important;
    max-width:100%!important;
    min-height:32px!important;
    padding:6px 11px!important;
    font-size:11.5px!important;
    line-height:1.25!important;
  }

  .ccb-partitura-meta .elementor-icon-list-item > a,
  .ccb-partitura-meta li > a{
    white-space:normal!important;
    text-align:left!important;
  }
}


/* =========================================================
   v1.7.7 — breadcrumb mobile + meta mais elegante
   ========================================================= */

/* todos os chips ficam com peso mais leve/elegante */
.ccb-partitura-meta .elementor-icon-list-item,
.ccb-partitura-meta li{
  font-weight:500!important;
}

.ccb-partitura-meta .elementor-icon-list-item > a,
.ccb-partitura-meta li > a,
.ccb-partitura-meta .elementor-icon-list-text{
  font-weight:500!important;
}

/* nível: verde escuro no texto, como no protótipo */
.ccb-partitura-meta .elementor-icon-list-item.is-level,
.ccb-partitura-meta li.is-level,
.ccb-partitura-meta .elementor-icon-list-item.is-level > a,
.ccb-partitura-meta li.is-level > a,
.ccb-partitura-meta .elementor-icon-list-item.is-level .elementor-icon-list-text,
.ccb-partitura-meta li.is-level .elementor-icon-list-text{
  color:#247445!important;
}

/* demais chips: roxo mais discreto */
.ccb-partitura-meta .elementor-icon-list-item.is-topic,
.ccb-partitura-meta li.is-topic,
.ccb-partitura-meta .elementor-icon-list-item.is-topic > a,
.ccb-partitura-meta li.is-topic > a,
.ccb-partitura-meta .elementor-icon-list-item.is-topic .elementor-icon-list-text,
.ccb-partitura-meta li.is-topic .elementor-icon-list-text{
  color:#6f4aa6!important;
}

/* mantém os ícones com destaque leve */
.ccb-partitura-meta svg,
.ccb-partitura-meta i{
  color:#2f9fd8!important;
}

@media(max-width:700px){
  /* breadcrumb em uma linha, com reticências somente no item atual */
  .ccb-partitura-breadcrumb{
    display:flex!important;
    flex-wrap:nowrap!important;
    align-items:center!important;
    gap:6px!important;
    width:100%!important;
    overflow:hidden!important;
    white-space:nowrap!important;
  }

  .ccb-partitura-breadcrumb > span:first-child,
  .ccb-partitura-breadcrumb .ccb-sep{
    flex:0 0 auto!important;
  }

  .ccb-partitura-breadcrumb .ccb-current{
    flex:1 1 auto!important;
    min-width:0!important;
    max-width:none!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
    white-space:nowrap!important;
    overflow-wrap:normal!important;
  }

  .ccb-partitura-meta .elementor-icon-list-item,
  .ccb-partitura-meta li{
    font-weight:500!important;
  }
}


/* =========================================================
   v1.7.8 — tipografia final dos chips
   ========================================================= */

/* Nenhum texto dos chips deve ficar em negrito ou com sombra. */
.ccb-partitura-meta .elementor-icon-list-item,
.ccb-partitura-meta .elementor-icon-list-item *,
.ccb-partitura-meta li,
.ccb-partitura-meta li *{
  font-weight:400!important;
  text-shadow:none!important;
}

/* NÍVEL: força verde escuro em TODO o conteúdo textual interno.
   Isto sobrescreve a regra antiga que deixava o link roxo. */
.ccb-partitura-meta .elementor-icon-list-item.is-level,
.ccb-partitura-meta .elementor-icon-list-item.is-level a,
.ccb-partitura-meta .elementor-icon-list-item.is-level span,
.ccb-partitura-meta .elementor-icon-list-item.is-level .elementor-icon-list-text,
.ccb-partitura-meta li.is-level,
.ccb-partitura-meta li.is-level a,
.ccb-partitura-meta li.is-level span,
.ccb-partitura-meta li.is-level .elementor-icon-list-text{
  color:#236b40!important;
  font-weight:400!important;
}

/* Tópicos/assinante: roxo suave, também sem peso. */
.ccb-partitura-meta .elementor-icon-list-item.is-topic,
.ccb-partitura-meta .elementor-icon-list-item.is-topic a,
.ccb-partitura-meta .elementor-icon-list-item.is-topic span,
.ccb-partitura-meta .elementor-icon-list-item.is-topic .elementor-icon-list-text,
.ccb-partitura-meta li.is-topic,
.ccb-partitura-meta li.is-topic a,
.ccb-partitura-meta li.is-topic span,
.ccb-partitura-meta li.is-topic .elementor-icon-list-text{
  color:#6f4aa6!important;
  font-weight:400!important;
}

/* Ícones continuam azuis; não herdam a cor do texto. */
.ccb-partitura-meta .elementor-icon-list-item.is-level svg,
.ccb-partitura-meta .elementor-icon-list-item.is-level i,
.ccb-partitura-meta li.is-level svg,
.ccb-partitura-meta li.is-level i,
.ccb-partitura-meta .elementor-icon-list-item.is-topic svg,
.ccb-partitura-meta .elementor-icon-list-item.is-topic i,
.ccb-partitura-meta li.is-topic svg,
.ccb-partitura-meta li.is-topic i{
  color:#2f9fd8!important;
  font-weight:400!important;
}


/* =========================================================
   v1.7.9 — remove resíduo lilás do chip de nível + peso 500
   ========================================================= */

/* Todos os textos dos chips passam a peso 500 */
.ccb-partitura-meta .elementor-icon-list-item,
.ccb-partitura-meta .elementor-icon-list-item *,
.ccb-partitura-meta li,
.ccb-partitura-meta li *{
  font-weight:500!important;
  text-shadow:none!important;
}

/* NÍVEL: elimina qualquer fundo/realce lilás herdado em elementos internos */
.ccb-partitura-meta .elementor-icon-list-item.is-level *,
.ccb-partitura-meta li.is-level *{
  background:transparent!important;
  background-color:transparent!important;
  background-image:none!important;
  border:0!important;
  box-shadow:none!important;
  outline:0!important;
  text-shadow:none!important;
  color:#236b40!important;
  font-weight:500!important;
  text-decoration:none!important;
}

/* preserva o fundo verde apenas no chip externo */
.ccb-partitura-meta .elementor-icon-list-item.is-level,
.ccb-partitura-meta li.is-level{
  background:#edf8f1!important;
  border:1px solid #dceee3!important;
  box-shadow:none!important;
  color:#236b40!important;
  font-weight:500!important;
}

/* evita pseudo-elementos/efeitos internos do tema */
.ccb-partitura-meta .elementor-icon-list-item.is-level *::before,
.ccb-partitura-meta .elementor-icon-list-item.is-level *::after,
.ccb-partitura-meta li.is-level *::before,
.ccb-partitura-meta li.is-level *::after{
  background:transparent!important;
  background-image:none!important;
  box-shadow:none!important;
  text-shadow:none!important;
}

/* ícone continua azul */
.ccb-partitura-meta .elementor-icon-list-item.is-level svg,
.ccb-partitura-meta .elementor-icon-list-item.is-level i,
.ccb-partitura-meta li.is-level svg,
.ccb-partitura-meta li.is-level i{
  color:#2f9fd8!important;
  fill:currentColor!important;
  font-weight:500!important;
}

/* Tópicos e sugestão também com peso 500 */
.ccb-partitura-meta .elementor-icon-list-item.is-topic,
.ccb-partitura-meta .elementor-icon-list-item.is-topic *,
.ccb-partitura-meta li.is-topic,
.ccb-partitura-meta li.is-topic *{
  font-weight:500!important;
}


/* =========================================================
   v1.8.2 — correção PMPro minimalista e segura
   ========================================================= */

/* Enquanto não existe botão visível para aquele estado,
   o card correspondente não aparece. */
.ccb-download-unlocked.ccb-pmpro-not-visible,
.ccb-download-locked.ccb-pmpro-not-visible{
  display:none!important;
}

/* Quando o botão realmente está visível, mantém o layout já aprovado da v1.7.9. */
.ccb-download-unlocked.ccb-pmpro-visible,
.ccb-download-locked.ccb-pmpro-visible{
  display:grid!important;
}
