/* RibeiroTV Web - painel de TV ao vivo */
.web-browser #brand.brand-logo-only{
    display:flex; justify-content:center; align-items:center; padding:18px 10px 22px;
}
.web-browser #brand.brand-logo-only #brandLogoImg{
    width:154px; height:154px; object-fit:contain; margin:0; border-radius:28px;
}
.web-browser #content.live-dashboard-active{ background:#050810; }
.web-browser #content.live-dashboard-active #topbar{ padding-bottom:10px; }
.web-browser #content.live-dashboard-active #title{ font-size:42px; letter-spacing:-1px; }
.web-browser #items.liveDashboardItems{
    display:block !important; position:absolute; left:0; right:0; top:120px; bottom:0;
    overflow-y:auto; overflow-x:hidden; padding:0 28px 48px; box-sizing:border-box;
}
.liveDash{ width:100%; max-width:1500px; margin:0 auto; }
.liveDashToolbar{ position:sticky; top:0; z-index:30; padding:8px 0 18px; background:linear-gradient(#050810 75%,rgba(5,8,16,0)); }
.liveDashChips{ display:flex; gap:10px; overflow-x:auto; padding:4px 2px 14px; scrollbar-width:none; }
.liveDashChips::-webkit-scrollbar{ display:none; }
.liveDashChip{
    flex:0 0 auto; border:1px solid rgba(255,255,255,.08); color:#cdd3df; background:#0e131c;
    border-radius:10px; padding:12px 18px; font:inherit; font-size:15px; cursor:pointer;
}
.liveDashChip:hover,.liveDashChip.active{ color:white; border-color:#2f78ff; background:linear-gradient(180deg,#2f78ff,#1d56bd); box-shadow:0 8px 28px rgba(47,120,255,.18); }
.liveDashSearch{ display:flex; align-items:center; gap:12px; height:54px; border:1px solid rgba(255,255,255,.09); background:#0b0f16; border-radius:12px; padding:0 16px; }
.liveDashSearch span{ font-size:28px; color:#aab2c0; transform:rotate(-20deg); }
.liveDashSearch input{ flex:1; border:0; outline:0; background:transparent; color:white; font-size:17px; min-width:0; }
.liveDashSearch input::placeholder{ color:#858c98; }
.liveDashSection{ margin-top:18px; }
.liveDashSection h2{ margin:0 0 18px; color:#f5f7fb; font-size:24px; }
.liveDashSectionHead{ display:flex; justify-content:space-between; align-items:center; }
.liveDashSectionHead span{ color:#8d96a7; font-size:14px; }
.liveFeaturedRow{ display:grid; grid-template-columns:repeat(6,minmax(160px,1fr)); gap:16px; }
.liveFeaturedCard,.liveDashCard{
    position:relative; background:linear-gradient(155deg,#111821,#0a0e14); border:1px solid rgba(149,171,201,.19);
    border-radius:14px; padding:18px 16px 16px; box-sizing:border-box; min-width:0; transition:transform .16s ease,border-color .16s ease,box-shadow .16s ease; cursor:pointer;
}
.liveFeaturedCard{ min-height:220px; }
.liveFeaturedCard:hover,.liveDashCard:hover,.liveDashCard.focused{ transform:translateY(-3px); border-color:#3784ff; box-shadow:0 12px 30px rgba(0,0,0,.3); }
.liveDashCardTop{ position:relative; min-height:88px; display:flex; align-items:center; justify-content:center; }
.liveFeaturedLogo,.liveDashLogo{ width:96px; height:74px; background-position:center; background-repeat:no-repeat; background-size:contain; }
.liveDashLogo{ width:82px; height:62px; }
.liveDashPlaceholder{ border-radius:50%; background:#151c27; color:#6d7787; font-weight:800; font-size:20px; }
.liveDashStar{ position:absolute; top:-8px; right:-4px; color:#aeb6c4; font-size:25px; text-shadow:0 1px 8px #000; }
.liveDashName{ margin-top:10px; color:white; font-size:17px; font-weight:700; text-align:center; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.liveDashGroup{ margin-top:5px; color:#9ba3b0; font-size:13px; text-align:center; white-space:nowrap; overflow:hidden; text-overflow:ellipsis; }
.liveDashBadge{ display:flex; justify-content:center; align-items:center; gap:6px; margin-top:8px; color:#35e46d; font-size:12px; font-weight:700; }
.liveDashBadge span{ width:7px; height:7px; background:#35e46d; border-radius:50%; box-shadow:0 0 9px #35e46d; }
.liveAllGrid{ display:grid; grid-template-columns:repeat(6,minmax(145px,1fr)); gap:16px; padding-bottom:20px; }
.liveDashCard{ min-height:184px; width:auto !important; margin:0 !important; }
.liveDashEmpty{ margin-top:35px; padding:40px; border:1px solid rgba(255,255,255,.08); border-radius:14px; background:#0b0f16; color:#c6ccd7; display:flex; flex-direction:column; gap:8px; }
.liveDashEmpty strong{ color:white; font-size:24px; }

@media(max-width:1300px){ .liveFeaturedRow,.liveAllGrid{ grid-template-columns:repeat(4,minmax(145px,1fr)); } }
@media(max-width:950px){ .liveFeaturedRow,.liveAllGrid{ grid-template-columns:repeat(3,minmax(130px,1fr)); } }
@media(max-width:760px){
    .web-browser #brand.brand-logo-only{ display:none; }
    .web-browser #items.liveDashboardItems{ top:105px; bottom:68px; padding:0 14px 30px; }
    .liveFeaturedRow{ display:flex; overflow-x:auto; }
    .liveFeaturedCard{ flex:0 0 180px; }
    .liveAllGrid{ grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px; }
    .liveDashCard{ min-height:170px; padding:14px 9px; }
    .web-browser #content.live-dashboard-active #title{ font-size:30px; }
}
