/* ============================================================
   LogicaMaster style-v2.css
   ============================================================ */

/* ── PLAYER BAR TOPO ── */
:root { --lm-ph: 66px; }
#lm-bar {
    position: fixed; top:0; left:0; right:0;
    height: var(--lm-ph); z-index: 1060;
    display: flex; align-items: center;
    justify-content: center;          /* CENTRALIZA TUDO */
    padding: 0 18px; gap: 0;
    box-shadow: 0 2px 16px rgba(0,0,0,.22);
}

/* Wrapper interno centralizado com largura máxima */
.lm-bar-inner {
    display: flex;
    align-items: center;
    gap: 16px;
    max-width: 900px;
    width: 100%;
    justify-content: center;
}

.lm-live-badge {
    display: flex; align-items: center; gap: 5px;
    background: #ef4444; color: #fff;
    font-size: .62rem; font-weight: 700;
    text-transform: uppercase; letter-spacing: .05em;
    padding: 4px 11px; border-radius: 100px; flex-shrink: 0;
}
.lm-live-dot {
    width: 6px; height: 6px; border-radius: 50%; background: #fff;
    animation: lmDot 1.4s ease-in-out infinite;
}
@keyframes lmDot { 0%,100%{opacity:1} 50%{opacity:.3} }

.lm-play-btn-top {
    width: 46px; height: 46px; border-radius: 50%;
    background: #fff; border: none;
    display: flex; align-items: center; justify-content: center;
    flex-shrink: 0; cursor: pointer;
    transition: all .2s;
    box-shadow: 0 2px 12px rgba(0,0,0,.2);
}
.lm-play-btn-top:hover { transform: scale(1.08); }
.lm-play-btn-top svg { width: 18px; height: 18px; }

.lm-station-name {
    font-size: .84rem; font-weight: 600; color: #fff;
    white-space: nowrap; overflow: hidden; text-overflow: ellipsis;
    max-width: 220px;
}

.lm-station-sub {
    font-size: .68rem; color: rgba(255,255,255,.55);
    white-space: nowrap;
}

.lm-station-info { display: flex; flex-direction: column; line-height: 1.3; }

.lm-vol-wrap {
    display: flex; align-items: center; gap: 8px;
    color: rgba(255,255,255,.7); flex-shrink: 0;
}
.lm-vol-wrap svg { width: 15px; height: 15px; flex-shrink: 0; }
.lm-vol-wrap input { width: 80px; accent-color: #fff; cursor: pointer; }

.lm-bar-divider {
    width: 1px; height: 28px;
    background: rgba(255,255,255,.18); flex-shrink: 0;
}

/* Quando player = top → ocultar player original + ajustar sticky */
body:has(#lm-bar) { padding-top: var(--lm-ph) !important; }
body:has(#lm-bar) #mobile-player   { display: none !important; }
body:has(#lm-bar) .main-header     { position: relative !important; }
/* main-navbar: sem sticky — comportamento original do header.css preservado */

/* Banner do header: aparece quando cadastrado (gif padrão removido do PHP) */

/* Banner carrossel gerenciado pelo banner-carrousel.css */

/* ── PROGRAMAÇÃO: live card 3 colunas ── */
.live-show-card {
    display: grid !important;
    grid-template-columns: auto 1fr auto !important;
    align-items: center !important; gap: 18px !important;
    padding: 20px 24px !important; border-radius: 16px !important;
    margin-bottom: 22px !important; position: relative; overflow: hidden;
}
.live-show-card::after {
    content: ''; position: absolute; right:-20px; top:-20px;
    width:100px; height:100px; border-radius:50%;
    background: rgba(255,255,255,.07);
}
.lm-next-block { text-align: right; flex-shrink: 0; }
.lm-next-label { font-size:.62rem;font-weight:700;text-transform:uppercase;letter-spacing:.06em;color:rgba(255,255,255,.52);margin-bottom:4px; }
.lm-next-title { font-size:.9rem;font-weight:700;color:#fff; }
.lm-next-time  { font-size:.73rem;color:rgba(255,255,255,.65);margin-top:2px; }
.program-list .card, .top-songs .card {
    border-radius:14px!important; border:1px solid #e2e8f0!important;
    box-shadow:0 2px 8px rgba(0,0,0,.05)!important; overflow:hidden;
}
.card-header { font-size:.8rem!important;font-weight:700!important;background:#f8fafc!important;border-bottom:1px solid #e2e8f0!important; }

/* ── VÍDEOS: layout coluna ── */
.video-layout { display:flex!important; flex-direction:column!important; gap:0!important; }
.video-grid {
    flex:none!important; width:100%!important;
    display:grid!important;
    grid-template-columns:repeat(auto-fill,minmax(240px,1fr))!important;
    gap:20px!important;
}
.video-card { border-radius:14px!important; transition:all .2s!important; }
.video-card:hover { transform:translateY(-4px)!important; box-shadow:0 12px 32px rgba(0,0,0,.12)!important; }

/* ── ENQUETES ── */
.poll-component { display:block!important; }

/* ── MURAL ── */
#messageForm { display:block!important; }
#messageForm.hidden { display:none!important; }

/* ── RESPONSIVO ── */
@media(max-width:900px){
    .lm-vol-wrap { display:none!important; }
    .lm-bar-divider { display:none!important; }
    .lm-station-info .lm-station-sub { display:none; }
}
@media(max-width:768px){
    :root { --lm-ph: 56px; }
    .live-show-card { grid-template-columns:auto 1fr!important; }
    .lm-next-block  { display:none!important; }
    .video-grid { grid-template-columns:1fr 1fr!important; }
}
@media(max-width:480px){
    .video-grid { grid-template-columns:1fr!important; }
}
