/* TV Poty Web v16 - Galeria + ajustes do chat */
.tvp-chat-msg-item.pending{opacity:.65}
.tvp-chat-msg-item{animation:tvpIn .18s ease}
@keyframes tvpIn{from{opacity:0;transform:translateY(6px)}to{opacity:1;transform:none}}

.tvp-gal{--tvpgal-h:380px;--tvpgal-radius:14px;--tvpgal-border:0px;--tvpgal-border-color:#e2e8f0;
  --tvpgal-btn-bg:#1e40af;--tvpgal-btn-color:#fff;--tvpgal-shadow:0 12px 34px rgba(15,23,42,.18);
  position:relative;margin:0 0 18px}
.tvp-gal-viewport{position:relative;overflow:hidden;height:var(--tvpgal-h);
  border-radius:var(--tvpgal-radius);border:var(--tvpgal-border) solid var(--tvpgal-border-color);
  box-shadow:var(--tvpgal-shadow);background:#0b1e3f;cursor:grab}
.tvp-gal-viewport:active{cursor:grabbing}
.tvp-gal-track{display:flex;height:100%;transition:transform .55s cubic-bezier(.4,0,.2,1)}
.tvp-gal-slide{position:relative;flex:0 0 100%;height:100%;margin:0;overflow:hidden}
.tvp-gal-slide img{width:100%;height:100%;object-fit:cover;display:block;transition:transform .6s ease}
.tvp-gal-slide:hover img{transform:scale(1.03)}
.tvp-gal-slide figcaption{position:absolute;left:0;right:0;bottom:0;padding:26px 16px 12px;color:#fff;font-size:.95rem;
  background:linear-gradient(180deg,transparent,rgba(4,12,28,.85))}
.tvp-gal--fade .tvp-gal-track{transform:none!important}
.tvp-gal--fade .tvp-gal-slide{position:absolute;inset:0;opacity:0;transition:opacity .5s ease}
.tvp-gal--fade .tvp-gal-slide.is-active{opacity:1}
.tvp-gal--zoom .tvp-gal-track{transform:none!important}
.tvp-gal--zoom .tvp-gal-slide{position:absolute;inset:0;opacity:0;transform:scale(1.08);transition:opacity .5s ease,transform .7s ease}
.tvp-gal--zoom .tvp-gal-slide.is-active{opacity:1;transform:scale(1)}

.tvp-gal-nav{position:absolute;top:50%;transform:translateY(-50%);width:42px;height:42px;border:0;border-radius:50%;
  background:var(--tvpgal-btn-bg);color:var(--tvpgal-btn-color);font-size:18px;cursor:pointer;opacity:.85;z-index:3}
.tvp-gal-nav:hover{opacity:1}
.tvp-gal-nav.prev{left:12px}.tvp-gal-nav.next{right:12px}
.tvp-gal-bar{position:absolute;top:12px;right:12px;display:flex;align-items:center;gap:8px;z-index:3}
.tvp-gal-play{width:34px;height:34px;border:0;border-radius:50%;background:var(--tvpgal-btn-bg);color:var(--tvpgal-btn-color);cursor:pointer}
.tvp-gal .ic-play{display:none}.tvp-gal.is-paused .ic-play{display:inline}.tvp-gal.is-paused .ic-pause{display:none}
.tvp-gal-counter{background:rgba(4,12,28,.6);color:#fff;border-radius:999px;padding:4px 10px;font-size:.78rem}
.tvp-gal-dots{display:flex;justify-content:center;gap:8px;margin-top:10px}
.tvp-gal-dots button{width:10px;height:10px;border-radius:50%;border:0;background:#cbd5e1;cursor:pointer;padding:0}
.tvp-gal-dots button.is-active{background:var(--tvpgal-btn-bg);width:24px;border-radius:999px}
.tvp-gal.ctrl-outside .tvp-gal-nav{top:auto;bottom:-54px;transform:none}
.tvp-gal.ctrl-outside .tvp-gal-nav.prev{left:calc(50% - 60px)}
.tvp-gal.ctrl-outside .tvp-gal-nav.next{right:calc(50% - 60px)}
.tvp-gal.ctrl-outside{margin-bottom:70px}
.tvp-gal-empty{padding:14px;background:#fff7ed;border:1px dashed #fdba74;border-radius:10px}

/* Lightbox */
body.tvp-lb-lock{overflow:hidden}
.tvp-lb{position:fixed;inset:0;z-index:99999;display:none}
.tvp-lb.open{display:block}
.tvp-lb-backdrop{position:absolute;inset:0;background:rgba(3,8,20,.92)}
.tvp-lb-stage{position:absolute;inset:0;display:flex;align-items:center;justify-content:center}
.tvp-lb-img{max-width:92vw;max-height:82vh;border-radius:10px;box-shadow:0 24px 60px rgba(0,0,0,.6);transition:transform .3s ease;cursor:zoom-in}
.tvp-lb-img.zoomed{transform:scale(1.8);cursor:zoom-out}
.tvp-lb-nav,.tvp-lb-close,.tvp-lb-btn{position:relative;border:0;background:rgba(255,255,255,.14);color:#fff;cursor:pointer;border-radius:50%}
.tvp-lb-nav{width:50px;height:50px;font-size:22px;margin:0 14px;z-index:2}
.tvp-lb-close{position:absolute;top:18px;right:22px;width:44px;height:44px;font-size:26px;line-height:1;z-index:3}
.tvp-lb-bar{position:absolute;left:0;right:0;bottom:18px;display:flex;align-items:center;justify-content:center;gap:12px;color:#fff;z-index:3;padding:0 16px}
.tvp-lb-btn{width:38px;height:38px}
.tvp-lb .ic-play{display:none}.tvp-lb.paused .ic-play{display:inline}.tvp-lb.paused .ic-pause{display:none}
.tvp-lb-cap{max-width:50vw;font-size:.92rem;opacity:.9;text-align:center}
.tvp-lb-count{background:rgba(255,255,255,.14);border-radius:999px;padding:4px 12px;font-size:.8rem}

@media (max-width:782px){
  .tvp-gal-viewport{height:calc(var(--tvpgal-h) * .68)}
  .tvp-gal-nav{width:36px;height:36px}
  .tvp-lb-nav{width:40px;height:40px;margin:0 6px}
  .tvp-lb-cap{max-width:70vw;font-size:.82rem}
}
@media (min-width:1600px){ .tvp-gal-viewport{height:calc(var(--tvpgal-h) * 1.15)} }


/* ===== v17: chat global unificado + lista de participantes ===== */
.tvp-chat-users{border-bottom:1px solid rgba(0,0,0,.08);background:rgba(30,64,175,.04)}
.tvp-chat-users-toggle{width:100%;border:0;background:transparent;padding:8px 12px;font-size:12px;font-weight:600;color:#1e40af;cursor:pointer;text-align:left}
.tvp-chat-users-list{display:none;flex-wrap:wrap;gap:6px;padding:0 12px 10px}
.tvp-chat-users.open .tvp-chat-users-list{display:flex}
.tvp-chat-user{display:inline-flex;align-items:center;gap:5px;background:#fff;border:1px solid rgba(30,64,175,.15);color:#0b1e3f;border-radius:999px;padding:3px 9px;font-size:12px}
.tvp-chat-user.me{background:#1e40af;color:#fff;border-color:#1e40af}
.tvp-chat-user.empty{opacity:.6;font-style:italic}
.tvp-chat-user-dot{width:7px;height:7px;border-radius:50%;background:#22c55e;display:inline-block}
.tvp-chat-inline .tvp-chat{position:static !important;width:100% !important;max-width:100%;height:520px;box-shadow:0 10px 30px rgba(11,30,63,.10)}
.tvp-el-block{margin:0 0 24px}
.tvp-stats-inline{display:flex;gap:16px;flex-wrap:wrap;font-size:14px}
.tvp-stats-inline .tvp-stat{background:rgba(30,64,175,.07);border-radius:999px;padding:6px 14px}
@media (max-width:640px){.tvp-chat-inline .tvp-chat{height:70vh}}
