/* =========================================================
   RÁDIO SÓ FLASHBACK - REDESIGN DESKTOP V1
   Escopo: apenas layout PC do Tocando Agora + Chat.
   Header, ticker, metatags, rodapé institucional e mobile são preservados.
   ========================================================= */

/* O vinil não gira em nenhuma resolução. */
.center .stage,
.center.is-playing .stage{
  animation:none!important;
  transform:none!important;
}

/* Modal leve para o seletor de streams aberto pelo chat. */
.sf-radio-select-modal[hidden]{display:none!important}
.sf-radio-select-modal{
  position:fixed;
  inset:0;
  z-index:2147482900;
  display:grid;
  place-items:center;
  padding:18px;
}
.sf-radio-select-backdrop{
  position:absolute;
  inset:0;
  background:rgba(2,7,17,.82);
  backdrop-filter:blur(7px);
}
.sf-radio-select-dialog{
  position:relative;
  width:min(560px,95vw);
  max-height:min(680px,88vh);
  overflow:auto;
  border:1px solid rgba(58,181,255,.50);
  border-radius:20px;
  padding:24px;
  background:linear-gradient(180deg,rgba(8,27,48,.98),rgba(4,15,29,.99));
  box-shadow:0 28px 90px rgba(0,0,0,.58),0 0 36px rgba(39,146,255,.12);
}
.sf-radio-select-close{
  position:absolute;
  right:12px;
  top:10px;
  width:36px;
  height:36px;
  border:0;
  border-radius:50%;
  background:rgba(255,255,255,.06);
  color:#dceeff;
  font-size:25px;
  cursor:pointer;
}
.sf-radio-select-kicker{
  color:#5ecbff;
  font:800 .72rem/1.2 Inter,ui-sans-serif,system-ui,"Segoe UI",sans-serif;
  letter-spacing:.16em;
  margin-bottom:6px;
}
.sf-radio-select-dialog h2{
  margin:0 42px 18px 0;
  color:#fff;
  font:800 1.35rem/1.15 Inter,ui-sans-serif,system-ui,"Segoe UI",sans-serif;
}
.sf-radio-select-list{display:grid;gap:9px}
.sf-radio-select-item{
  width:100%;
  display:grid;
  grid-template-columns:42px minmax(0,1fr) 34px;
  gap:10px;
  align-items:center;
  padding:11px 12px;
  border:1px solid rgba(88,175,255,.18);
  border-radius:14px;
  background:linear-gradient(180deg,rgba(15,44,72,.74),rgba(9,27,48,.78));
  color:#eaf6ff;
  text-align:left;
  cursor:pointer;
}
.sf-radio-select-item:hover,
.sf-radio-select-item.active{
  border-color:rgba(61,190,255,.62);
  background:linear-gradient(180deg,rgba(18,63,103,.90),rgba(10,36,66,.90));
  box-shadow:0 0 18px rgba(26,150,255,.10);
}
.sf-radio-select-icon{font-size:1.35rem;text-align:center}
.sf-radio-select-copy{min-width:0;display:block}
.sf-radio-select-copy strong{
  display:block;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  font:750 .93rem/1.2 Inter,ui-sans-serif,system-ui,"Segoe UI",sans-serif;
}
.sf-radio-select-copy small{
  display:block;
  margin-top:3px;
  color:#90aaca;
  white-space:nowrap;
  overflow:hidden;
  text-overflow:ellipsis;
  font:500 .72rem/1.2 Inter,ui-sans-serif,system-ui,"Segoe UI",sans-serif;
}
.sf-radio-select-play{color:#57cfff;text-align:center}

/* Equalizador real: quando o JS confirmar áudio analisável, remove o loop decorativo. */
.eq.sf-real-eq i{
  animation:none!important;
  transform:none!important;
  transition:height 65ms linear,opacity 65ms linear;
}

@media(min-width:901px){
  /* De 3 colunas para uma composição vertical, sem alterar o HTML mobile. */
  .layout{
    grid-template-columns:minmax(0,1fr)!important;
    gap:14px!important;
    margin-top:14px!important;
  }

  .panel.center{
    grid-column:1!important;
    grid-row:1!important;
  }
  .sf-chat-home{
    grid-column:1!important;
    grid-row:2!important;
  }
  .sf-more-radios{
    display:none!important;
  }

  /* ---------------------------------------------------------
     TOCANDO AGORA: capa quadrada + vinil, centro tipográfico,
     pedido do ouvinte em coluna independente à direita.
     --------------------------------------------------------- */
  .panel.center{
    position:relative!important;
    isolation:isolate;
    width:100%!important;
    height:350px!important;
    min-height:350px!important;
    padding:24px 34px!important;
    overflow:hidden!important;
    display:grid!important;
    grid-template-columns:minmax(250px,1fr) minmax(390px,1.12fr) minmax(250px,1fr)!important;
    grid-template-rows:auto auto auto minmax(72px,1fr)!important;
    column-gap:24px!important;
    row-gap:2px!important;
    align-items:center!important;
    justify-items:center!important;
    border-radius:22px!important;
    border:1px solid rgba(54,160,255,.46)!important;
    background:#071322!important;
    box-shadow:0 16px 42px rgba(0,0,0,.32),inset 0 1px 0 rgba(255,255,255,.025)!important;
    text-align:center!important;
  }

  .center::before{
    inset:-26px!important;
    background-image:var(--sf-now-art)!important;
    background-size:cover!important;
    background-position:center!important;
    filter:blur(14px) saturate(1.14) brightness(.86) contrast(1.04)!important;
    transform:scale(1.07)!important;
    opacity:.68!important;
  }
  .center::after{
    background:
      linear-gradient(90deg,rgba(4,14,29,.40),rgba(6,21,39,.34) 32%,rgba(4,18,35,.43) 70%,rgba(4,13,27,.53)),
      linear-gradient(180deg,rgba(4,12,24,.08),rgba(2,9,20,.34))!important;
  }

  .center .label{
    grid-column:2!important;
    grid-row:1!important;
    align-self:end!important;
    justify-self:center!important;
    margin:0 0 2px!important;
    padding:0!important;
    color:#80d7ff!important;
    font:800 .78rem/1.1 Inter,ui-sans-serif,system-ui,"Segoe UI",sans-serif!important;
    letter-spacing:.28em!important;
    text-shadow:0 0 16px rgba(69,185,255,.30)!important;
  }
  .center .label::before{
    content:'▮▮▮';
    display:inline-block;
    width:auto!important;
    height:auto!important;
    flex:0 0 auto!important;
    margin-right:11px;
    background:none!important;
    background-image:none!important;
    filter:none!important;
    color:#42c5ff;
    letter-spacing:-.16em;
    transform:translateY(-1px);
  }

  .center .stage{
    grid-column:1!important;
    grid-row:1 / 5!important;
    justify-self:center!important;
    align-self:center!important;
    position:relative!important;
    width:380px!important;
    height:260px!important;
    aspect-ratio:auto!important;
    margin:0!important;
    display:block!important;
    overflow:visible!important;
  }

  /* Vinil REAL em imagem PNG. Fica parado; apenas o selo central acompanha a capa atual. */
  .center .sf-vinyl-disc{
    position:absolute;
    z-index:1;
    width:246px;
    height:246px;
    right:0;
    top:50%;
    transform:translateY(-50%);
    border-radius:50%;
    background:url('/assets/vinyl-photoreal-v3.png') center/contain no-repeat!important;
    border:0!important;
    box-shadow:0 20px 34px rgba(0,0,0,.52),0 0 28px rgba(53,171,255,.10)!important;
    filter:drop-shadow(0 4px 7px rgba(0,0,0,.34)) drop-shadow(0 0 1px rgba(255,255,255,.18));
  }
  /* Selo do vinil: usa a mesma capa que está tocando. */
  .center .sf-vinyl-disc::after{
    content:'';
    position:absolute;
    z-index:2;
    left:50%;
    top:50%;
    width:82px;
    height:82px;
    transform:translate(-50%,-50%);
    border-radius:50%;
    background-image:
      radial-gradient(circle at center,#080b10 0 5px,transparent 6px),
      var(--sf-vinyl-label,none);
    background-size:100% 100%,cover;
    background-position:center;
    background-repeat:no-repeat;
    box-shadow:0 0 0 2px rgba(232,239,247,.25),inset 0 0 16px rgba(0,0,0,.24);
  }

  /* O antigo aro redondo não é mais necessário no desktop. */
  .center .ring{display:none!important}

  /* Capa como capa de álbum de verdade: quadrada, reta e sem cantos arredondados. */
  .center .art{
    position:absolute!important;
    z-index:3!important;
    left:0!important;
    top:5px!important;
    width:250px!important;
    height:250px!important;
    border-radius:2px!important;
    overflow:hidden!important;
    border:1px solid rgba(244,210,121,.88)!important;
    background:#0d1725!important;
    box-shadow:0 14px 38px rgba(0,0,0,.48),0 0 0 1px rgba(255,255,255,.08),0 0 18px rgba(63,182,255,.10)!important;
  }
  .center .art img{
    border-radius:0!important;
    object-fit:cover!important;
  }
  .center .art span{
    font:900 3.4rem/1 Inter,ui-sans-serif,system-ui,"Segoe UI",sans-serif!important;
  }
  .center .art.has-image::before,
  .center .art.has-image::after{
    display:none!important;
  }

  .center h2{
    grid-column:2!important;
    grid-row:2!important;
    align-self:end!important;
    position:relative!important;
    z-index:4!important;
    width:100%!important;
    max-width:100%!important;
    min-height:0!important;
    max-height:2.12em!important;
    height:auto!important;
    margin:4px auto 0!important;
    padding:0 8px 4px!important;
    display:-webkit-box!important;
    -webkit-box-orient:vertical!important;
    -webkit-line-clamp:2!important;
    line-clamp:2!important;
    overflow:hidden!important;
    color:#ffd66f!important;
    font-family:"Arial Black","Trebuchet MS",Inter,ui-sans-serif,system-ui,"Segoe UI",sans-serif!important;
    font-size:clamp(2.65rem,4.45vw,4.7rem)!important;
    font-weight:900!important;
    line-height:.96!important;
    letter-spacing:-.055em!important;
    text-align:center!important;
    background:linear-gradient(180deg,#fff3b5 0%,#ffd66f 38%,#e9ab39 72%,#bd7a13 100%)!important;
    -webkit-background-clip:text!important;
    background-clip:text!important;
    -webkit-text-fill-color:transparent!important;
    filter:drop-shadow(0 2px 0 rgba(255,239,169,.22)) drop-shadow(0 5px 10px rgba(0,0,0,.72)) drop-shadow(0 0 13px rgba(255,193,62,.25))!important;
    -webkit-text-stroke:.35px rgba(255,239,186,.42)!important;
  }

  .center.title-two-lines h2{
    font-size:clamp(2.2rem,3.75vw,3.85rem)!important;
  }
  .center.title-two-lines .stage{
    width:380px!important;
  }

  .center .artist{
    grid-column:2!important;
    grid-row:3!important;
    align-self:start!important;
    position:relative!important;
    z-index:4!important;
    margin:3px auto 0!important;
    min-height:0!important;
    color:#e9f6ff!important;
    font-family:"Trebuchet MS",Inter,ui-sans-serif,system-ui,"Segoe UI",sans-serif!important;
    font-size:clamp(1.45rem,2.2vw,2.08rem)!important;
    font-weight:900!important;
    line-height:1.05!important;
    letter-spacing:-.025em!important;
    background:linear-gradient(180deg,#ffffff 0%,#d9efff 48%,#84c3ff 100%)!important;
    -webkit-background-clip:text!important;
    background-clip:text!important;
    -webkit-text-fill-color:transparent!important;
    filter:drop-shadow(0 3px 9px rgba(0,0,0,.62)) drop-shadow(0 0 9px rgba(96,183,255,.18))!important;
  }

  .center .sfmv-vote{
    grid-column:2!important;
    grid-row:4!important;
    align-self:start!important;
    width:100%!important;
    min-height:0!important;
    margin:14px auto 0!important;
  }
  .center .sfmv-question{display:none!important}
  .center .sfmv-actions{
    display:flex!important;
    justify-content:center!important;
    align-items:flex-start!important;
    gap:34px!important;
    padding-bottom:24px!important;
  }
  /* Polegares redondos, com neon e contador FORA do círculo, como no mockup aprovado. */
  .center .sfmv-btn{
    position:relative!important;
    width:74px!important;
    min-width:74px!important;
    height:74px!important;
    padding:0!important;
    border-radius:50%!important;
    background:radial-gradient(circle at 36% 28%,rgba(255,255,255,.09),rgba(2,10,21,.90) 56%,rgba(1,6,14,.98))!important;
    display:grid!important;
    place-items:center!important;
    font:900 1rem/1 Inter,ui-sans-serif,system-ui,"Segoe UI",sans-serif!important;
    transition:transform .16s ease,box-shadow .16s ease,border-color .16s ease!important;
    overflow:visible!important;
  }
  .center .sfmv-btn:hover{transform:translateY(-2px) scale(1.025)!important}
  .center .sfmv-icon{
    display:block!important;
    width:31px!important;
    height:31px!important;
    font-size:0!important;
    background:currentColor!important;
    -webkit-mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M1 21h4V9H1v12zm22-11c0-1.1-.9-2-2-2h-6.31l.95-4.57.03-.32c0-.41-.17-.79-.44-1.06L14.17 1 7.59 7.59C7.22 7.95 7 8.45 7 9v10c0 1.1.9 2 2 2h9c.82 0 1.54-.5 1.84-1.22l3.02-7.05c.09-.23.14-.47.14-.73v-2z'/%3E%3C/svg%3E") center/contain no-repeat!important;
    mask:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M1 21h4V9H1v12zm22-11c0-1.1-.9-2-2-2h-6.31l.95-4.57.03-.32c0-.41-.17-.79-.44-1.06L14.17 1 7.59 7.59C7.22 7.95 7 8.45 7 9v10c0 1.1.9 2 2 2h9c.82 0 1.54-.5 1.84-1.22l3.02-7.05c.09-.23.14-.47.14-.73v-2z'/%3E%3C/svg%3E") center/contain no-repeat!important;
    filter:drop-shadow(0 0 5px currentColor)!important;
  }
  .center .sfmv-down .sfmv-icon{transform:rotate(180deg)!important}
  .center .sfmv-count{
    position:absolute!important;
    left:50%!important;
    top:calc(100% + 8px)!important;
    transform:translateX(-50%)!important;
    min-width:28px!important;
    color:#f5f9ff!important;
    font:900 1rem/1 Inter,ui-sans-serif,system-ui,"Segoe UI",sans-serif!important;
    text-shadow:0 2px 7px rgba(0,0,0,.85)!important;
  }
  .center .sfmv-up{
    border:2px solid #21e58a!important;
    color:#35ef9a!important;
    box-shadow:0 0 0 1px rgba(31,255,149,.10),0 0 14px rgba(31,234,139,.44),inset 0 0 18px rgba(20,173,102,.08)!important;
  }
  .center .sfmv-down{
    border:2px solid #ff3d63!important;
    color:#ff4d70!important;
    box-shadow:0 0 0 1px rgba(255,61,99,.10),0 0 14px rgba(255,61,99,.42),inset 0 0 18px rgba(194,30,66,.08)!important;
  }
  .center .sfmv-up.active{background:radial-gradient(circle at 36% 28%,rgba(57,255,164,.20),rgba(3,26,19,.95) 62%,rgba(1,9,8,.99))!important;box-shadow:0 0 0 1px rgba(31,255,149,.18),0 0 22px rgba(31,234,139,.68),inset 0 0 22px rgba(31,234,139,.18)!important}
  .center .sfmv-down.active{background:radial-gradient(circle at 36% 28%,rgba(255,73,108,.20),rgba(31,5,12,.95) 62%,rgba(10,1,4,.99))!important;box-shadow:0 0 0 1px rgba(255,61,99,.18),0 0 22px rgba(255,61,99,.65),inset 0 0 22px rgba(255,61,99,.17)!important}
  .center .sfmv-status{display:none!important}

  /* Pedido do ouvinte usa a faixa direita. Se não houver, fica totalmente invisível. */
  .center .sf-pedido-agora{
    grid-column:3!important;
    grid-row:1 / 5!important;
    align-self:center!important;
    justify-self:center!important;
    width:min(100%,330px)!important;
    min-height:156px!important;
    margin:0!important;
    padding:20px 20px 18px!important;
    display:flex!important;
    flex-direction:column!important;
    align-items:center!important;
    justify-content:center!important;
    gap:8px!important;
    border:1px solid rgba(66,211,255,.92)!important;
    border-radius:18px!important;
    background:linear-gradient(180deg,rgba(9,39,66,.84),rgba(6,24,44,.90))!important;
    color:#eaf7ff!important;
    box-shadow:0 0 0 1px rgba(48,174,255,.12),0 0 26px rgba(36,189,255,.20),inset 0 1px 0 rgba(255,255,255,.035)!important;
    text-align:center!important;
    font-family:Inter,ui-sans-serif,system-ui,"Segoe UI",sans-serif!important;
  }
  .center .sf-pedido-agora[hidden]{display:none!important}
  .sf-pedido-title{
    display:block;
    width:100%;
    padding-bottom:10px;
    border-bottom:1px solid rgba(67,205,255,.28);
    color:#66d7ff;
    font-size:.84rem;
    line-height:1.15;
    font-weight:900;
    letter-spacing:.06em;
  }
  .sf-pedido-by,.sf-pedido-to{
    display:block;
    color:#dbefff;
    font-size:.78rem;
    line-height:1.3;
  }
  .sf-pedido-by strong,.sf-pedido-to strong{color:#64e3ff!important}
  .center .sf-pedido-agora .sf-pedido-msg{
    display:block!important;
    margin:1px 0 0!important;
    color:#fff!important;
    font-size:.76rem!important;
    line-height:1.38!important;
    font-style:italic!important;
  }

  .panel.center.sf-pedido-ativo{
    border-color:rgba(65,193,255,.76)!important;
    box-shadow:0 0 0 1px rgba(50,170,255,.12),0 0 30px rgba(36,157,255,.15),0 18px 40px rgba(0,0,0,.30)!important;
    animation:none!important;
  }

  /* ---------------------------------------------------------
     CHAT: largura total, azul moderno e sem apertar conteúdo.
     O visual interno está no chat-test/assets/chat.css.
     --------------------------------------------------------- */
  .sf-chat-home{
    width:100%!important;
    height:470px!important;
    min-height:470px!important;
    border-radius:22px!important;
    border:1px solid rgba(54,160,255,.42)!important;
    background:#061425!important;
    box-shadow:0 16px 40px rgba(0,0,0,.28),0 0 24px rgba(34,128,220,.08)!important;
  }
  .sf-chat-home-frame{
    height:470px!important;
    min-height:470px!important;
    background:#061425!important;
  }
}

/* Mobile permanece com a composição atual. Só garantimos que o novo seletor caiba. */
@media(max-width:900px){
  .sf-radio-select-dialog{padding:20px 14px 14px;border-radius:16px}
  .sf-radio-select-item{grid-template-columns:38px minmax(0,1fr) 28px;padding:10px}
}
