*{box-sizing:border-box;outline:none!important}
:root{--bg:#030713;--panel:#080d1f;--panel2:#101832;--line:rgba(255,255,255,.08);--text:#fff;--muted:#8e9abd;--purple:#5b2cff;--purple2:#8d45ff;--green:#29ff78;--red:#ed2f43;--boot-bg:var(--bg)}
/* Tema Claro */
.light-theme {
    --bg: #f4f7ff;
    --panel: #ffffff;
    --panel2: #f0f3ff;
    --line: rgba(0,0,0,0.08);
    --text: #1a1f36;
    --muted: #697386;
}
html,body{margin:0;width:100%;height:100%;overflow:hidden;background:var(--bg);color:var(--text);font-family:Inter,Segoe UI,Arial,sans-serif}
body:before{content:"";position:fixed;inset:0;background:radial-gradient(circle at 70% 0%,rgba(42,55,120,.22),transparent 34%),radial-gradient(circle at 15% 20%,rgba(91,44,255,.18),transparent 28%);pointer-events:none}
.boot{position:fixed;inset:0;z-index:999;background:var(--boot-bg);display:grid;place-items:center;text-align:center;transition:.35s}.boot.hide{opacity:0;pointer-events:none}
.loader-logo{font-size:42px;font-weight:1000;font-style:italic}.loader-logo span{font-size:18px;color:var(--purple2);margin-left:4px}.loader-line{width:260px;height:6px;background:#101832;border-radius:999px;overflow:hidden;margin:22px auto}.loader-line i{display:block;width:45%;height:100%;background:linear-gradient(90deg,var(--purple),var(--purple2));border-radius:999px;animation:load 1s infinite alternate}.boot p{color:var(--muted)}@keyframes load{from{transform:translateX(-70%)}to{transform:translateX(190%)}}
.tv-shell{position:relative;z-index:1;height:100vh;display:grid;grid-template-columns:250px 1fr;padding:22px 24px 108px 24px;gap:20px}.sidebar{border-right:1px solid rgba(255,255,255,.06);padding-right:20px;display:flex;flex-direction:column}
.brand{display:flex;align-items:center;gap:13px;margin-bottom:28px;height:42px}.tv-icon{width:43px;height:34px;border:4px solid var(--purple);border-radius:9px;box-shadow:0 0 22px rgba(91,44,255,.55);position:relative}.tv-icon:before,.tv-icon:after{content:"";position:absolute;width:15px;height:4px;background:var(--purple);top:-13px;border-radius:4px}.tv-icon:before{left:6px;transform:rotate(-35deg)}.tv-icon:after{left:22px;transform:rotate(35deg)}
.brand-name{font-size:31px;font-weight:1000;font-style:italic;line-height:1}.brand-name span{font-size:15px;color:var(--purple2);margin-left:4px}.menu{display:flex;flex-direction:column;gap:14px}
.menu-item{height:54px;border:0;border-radius:13px;background:transparent;color:var(--text);text-align:left;padding:0 18px;font-size:20px;font-weight:700;display:flex;gap:14px;align-items:center;cursor:pointer;transition:.18s}.menu-item span{font-size:16px}.menu-item.active,.menu-item:hover{background:linear-gradient(135deg,var(--purple),var(--purple2));box-shadow:0 14px 36px rgba(0,0,0,0.3)}
.mac-card{margin-top:auto;border:1px solid rgba(255,255,255,.1);border-radius:13px;background:rgba(16,24,50,.8);padding:16px}.mac-title{color:var(--green);font-weight:900;font-size:14px}.mac-title i{display:inline-grid;place-items:center;width:18px;height:18px;border-radius:50%;background:rgba(41,255,120,.18);font-style:normal;margin-right:8px}.mac-card p{margin:9px 0 0;color:#dce5ff;font-size:13px}.mac-card b{color:var(--green)}.mac-card small{display:block;color:var(--muted);margin-top:10px;word-break:break-all}
.main{min-width:0;overflow:hidden}.topbar{height:58px;display:flex;justify-content:space-between;align-items:center;margin-bottom:17px}.search{width:462px;height:50px;border:1px solid rgba(255,255,255,.09);background:rgba(7,11,24,.85);border-radius:15px;display:flex;align-items:center;gap:12px;padding:0 18px}.search span{font-size:26px;color:#dce5ff}.search input{flex:1;background:transparent;border:0;outline:0;color:#fff;font-size:14px}
.top-actions{display:flex;align-items:center;gap:14px}.pill{height:42px;border:1px solid rgba(255,255,255,.09);background:rgba(7,11,24,.85);border-radius:13px;display:flex;align-items:center;gap:10px;padding:0 18px;font-size:14px}.pill i{width:11px;height:11px;border-radius:50%;background:var(--green);box-shadow:0 0 16px rgba(41,255,120,.7)}.round{width:45px;height:45px;border-radius:50%;border:1px solid rgba(255,255,255,.09);background:rgba(7,11,24,.85);color:#fff;font-size:17px;cursor:pointer}.hidden{display:none!important}
.hero{height:226px;border-radius:8px;overflow:hidden;border:1px solid rgba(255,255,255,.08);background:linear-gradient(90deg,rgba(5,8,18,.96),rgba(5,8,18,.68),rgba(5,8,18,.14)),url('https://images.unsplash.com/photo-1508098682722-e99c43a406b2?auto=format&fit=crop&w=1600&q=80') center/cover no-repeat;position:relative;box-shadow:0 18px 55px rgba(0,0,0,.34)}
.hero-text{position:absolute;left:36px;top:25px}.live{background:#d92535;border-radius:7px;padding:7px 11px;font-size:13px;font-weight:900;display:inline-block;margin-bottom:18px}.hero h1{font-size:35px;margin:0 0 10px;line-height:1}.hero p{color:#d9e0ef;margin:0 0 18px}.hero button{height:45px;border:0;border-radius:8px;background:linear-gradient(135deg,var(--purple),var(--purple2));color:#fff;padding:0 22px;font-size:16px;font-weight:900;cursor:pointer}.dots{display:flex;gap:9px;margin-top:22px}.dots i{width:9px;height:9px;border-radius:50%;background:rgba(255,255,255,.2)}.dots i:first-child{background:var(--purple)}
.section{margin-top:14px}.section-head{height:24px;display:flex;align-items:center;justify-content:space-between;margin-bottom:8px}.section-head h2{font-size:16px;margin:0}.section-head button{border:0;background:transparent;color:#945cff;font-weight:800;cursor:pointer}.channel-row{display:grid;grid-template-columns:repeat(6,minmax(122px,1fr));gap:10px;height:84px;overflow:hidden}.poster-row{display:grid;grid-template-columns:repeat(6,minmax(74px,1fr));gap:8px;height:116px;overflow:hidden}.dual{display:grid;grid-template-columns:1fr 1fr;gap:22px}
.card{background:linear-gradient(180deg,rgba(18,25,49,.96),rgba(9,13,28,.96));border:1px solid rgba(255,255,255,.08);border-radius:8px;overflow:hidden;cursor:pointer;transition:.18s;animation:fadeUp .25s ease both}@keyframes fadeUp{from{opacity:0;transform:translateY(12px)}to{opacity:1;transform:translateY(0)}}.card:hover,.card.focus{border-color:var(--purple);box-shadow:0 0 0 2px rgba(91,44,255,.65),0 0 28px rgba(91,44,255,.35);transform:translateY(-2px)}
.channel-row .card img{height:50px;width:100%;object-fit:contain;padding:8px 12px;background:transparent}.channel-row .card div{padding:0 8px 7px;text-align:center}.channel-row .card b{font-size:12px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;display:block}.channel-row .card small{display:none}
.poster-row .card{position:relative}.poster-row .card img{width:100%;height:100%;object-fit:cover}.poster-row .card:after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent 42%,rgba(0,0,0,.88))}.poster-row .card div{position:absolute;z-index:2;left:7px;right:7px;bottom:6px}.poster-row .card b{font-size:10px;line-height:1.05;text-transform:uppercase;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.poster-row .card small{color:#c8d0e6;font-size:9px}
.list-view,.episodes-view{height:calc(100vh - 190px);overflow:auto;padding-right:6px}.list-head{display:flex;align-items:center;gap:14px;margin-bottom:14px}.list-head h1{font-size:34px;margin:0}.list-head span{color:var(--muted);margin-left:auto}.back{border:0;background:#151d39;color:#fff;border-radius:10px;padding:12px 14px;cursor:pointer}.cats{display:flex;gap:10px;overflow:auto;padding-bottom:14px}.cats button{border:1px solid rgba(255,255,255,.1);background:#101832;color:#fff;border-radius:999px;padding:10px 14px;white-space:nowrap;cursor:pointer}.cats button.active,.cats button:hover{background:var(--purple)}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(150px,1fr));gap:14px}.grid .card img{width:100%;height:105px;object-fit:contain;background:#060a18;padding:10px}.grid .card.poster img{height:225px;object-fit:cover;padding:0}.grid .card div{padding:12px}.grid .card b{font-size:14px;display:block}.grid .card small{color:var(--muted);font-size:12px}
.activation{height:calc(100vh - 120px);display:grid;place-items:center;text-align:center}.activation-box{max-width:700px;background:#101832;border:1px solid rgba(255,255,255,.1);border-radius:22px;padding:34px}.activation-box span{color:#ffb7c5}.activation-box h1{font-size:38px}.mac-code{font-size:42px;font-weight:1000;letter-spacing:2px;background:#050713;border:1px dashed #00c8ff;border-radius:18px;padding:22px;margin:18px 0}
.player{position:fixed;z-index:20;left:24px;right:24px;bottom:16px;height:78px;border-radius:12px;background:linear-gradient(180deg,rgba(13,20,38,.98),rgba(7,11,23,.98));border:1px solid rgba(255,255,255,.08);display:flex;align-items:center;gap:16px;padding:10px 14px;box-shadow:0 18px 55px rgba(0,0,0,.44)}.video-mini{width:138px;height:58px;border-radius:7px;overflow:hidden;background:#000;position:relative;flex:0 0 auto}.video-mini video{width:100%;height:100%;object-fit:cover}.video-mini span{position:absolute;top:4px;right:4px;background:#e62838;border-radius:4px;padding:4px 6px;font-size:9px;font-weight:900}.now{width:170px;flex:0 0 auto}.now b{font-size:18px;display:block}.now span,.now small{display:block;color:#d1d9ec;font-size:13px;margin-top:3px}.progress{flex:1;height:6px;background:rgba(255,255,255,.08);border-radius:999px;overflow:hidden}.progress i{display:block;width:38%;height:100%;background:linear-gradient(90deg,#4928ff,#8d3cff)}.time{color:#aeb7d1;font-size:12px}.controls{display:flex;gap:16px;align-items:center}.controls button{border:0;background:transparent;color:#d7def2;font-size:22px;cursor:pointer}.controls .pause{width:46px;height:46px;border-radius:50%;background:linear-gradient(135deg,#5b2cff,#7133ff);color:#fff;box-shadow:0 0 28px rgba(91,44,255,.55)}
@media(max-width:1000px){html,body{overflow:auto}.tv-shell{display:block;height:auto;padding-bottom:110px}.sidebar{border-right:0}.menu{display:grid;grid-template-columns:repeat(3,1fr)}.dual{grid-template-columns:1fr}.player{left:10px;right:10px}.channel-row,.poster-row{display:flex;overflow:auto}.channel-row .card{flex:0 0 150px}.poster-row .card{flex:0 0 92px}.main{overflow:visible}}

.trial-btn{
    margin-top:12px;
    border:0;
    border-radius:12px;
    background:linear-gradient(135deg,#5b2cff,#00a8ff);
    color:#fff;
    padding:14px 18px;
    font-weight:900;
    cursor:pointer;
    box-shadow:0 12px 30px rgba(91,44,255,.32);
}
#trialMsg{display:block;color:#9fb0da;margin-top:10px}
.err-card{padding:18px;color:#ffb8c2}

.profiles-bar{
    height:auto;
    min-height:54px;
    border:1px solid rgba(255,255,255,.08);
    background:rgba(7,11,24,.72);
    border-radius:14px;
    margin:-6px 0 14px;
    padding:10px 14px;
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:14px;
}
.profiles-bar strong{color:#fff}
.profiles-bar span{color:#29ff78}
.profiles-list{display:flex;gap:8px;overflow:auto}
.profile-btn{
    border:1px solid rgba(255,255,255,.1);
    background:#101832;
    color:#fff;
    border-radius:999px;
    padding:9px 13px;
    cursor:pointer;
    font-weight:800;
    white-space:nowrap;
}
.profile-btn.active,.profile-btn:hover{
    background:linear-gradient(135deg,#5b2cff,#4324de);
}


.details-view{
    height:calc(100vh - 190px);
    overflow:auto;
    padding-right:6px;
}
.details-hero{
    margin-top:14px;
    min-height:440px;
    border:1px solid rgba(255,255,255,.08);
    border-radius:22px;
    background:
        radial-gradient(circle at 80% 10%, rgba(91,44,255,.22), transparent 32%),
        linear-gradient(135deg, rgba(16,24,50,.96), rgba(5,7,19,.96));
    display:grid;
    grid-template-columns:280px 1fr;
    gap:26px;
    padding:26px;
    align-items:center;
}
.details-poster img{
    width:100%;
    max-height:390px;
    object-fit:cover;
    border-radius:18px;
    background:#060a18;
    box-shadow:0 25px 70px rgba(0,0,0,.42);
}
.details-info h1{
    font-size:46px;
    line-height:1;
    margin:14px 0 10px;
}
.details-info p{
    color:#c5cde5;
    font-size:16px;
    line-height:1.55;
}
.details-badge{
    display:inline-block;
    background:rgba(91,44,255,.28);
    border:1px solid rgba(141,69,255,.45);
    color:#d8ccff;
    border-radius:999px;
    padding:8px 12px;
    font-weight:900;
    font-size:12px;
}
.details-actions{
    display:flex;
    gap:12px;
    flex-wrap:wrap;
    margin-top:20px;
}
.details-actions button{
    border:0;
    border-radius:12px;
    background:linear-gradient(135deg,#5b2cff,#4324de);
    color:#fff;
    padding:14px 18px;
    font-weight:900;
    cursor:pointer;
}
.series-info-box{
    display:grid;
    grid-template-columns:140px 1fr;
    gap:16px;
    background:rgba(16,24,50,.78);
    border:1px solid rgba(255,255,255,.08);
    border-radius:18px;
    padding:16px;
    margin-bottom:16px;
}
.series-info-box img{
    width:140px;
    height:190px;
    object-fit:cover;
    border-radius:14px;
    background:#060a18;
}
.series-info-box p{
    color:#c5cde5;
    line-height:1.5;
    margin-top:0;
}
.episode-resume{
    color:#29ff78!important;
    font-weight:900;
}
@media(max-width:900px){
    .details-hero{grid-template-columns:1fr}
    .details-poster img{max-height:320px}
    .series-info-box{grid-template-columns:1fr}
    .series-info-box img{width:120px;height:160px}
}


.profile-current{
    flex:0 0 auto;
}

.top-mac-info{
    flex:0 0 auto;
    display:flex;
    align-items:center;
    gap:12px;
    border:1px solid rgba(41,255,120,.18);
    background:rgba(41,255,120,.07);
    border-radius:999px;
    padding:8px 12px;
    color:#dfffea;
    white-space:nowrap;
}

.top-mac-info span{
    color:#29ff78;
    font-weight:900;
}

.top-mac-info small{
    color:#dce5ff;
}

.top-mac-info b{
    color:#29ff78;
}

.fav-btn{
    position:absolute;
    top:8px;
    right:8px;
    z-index:5;
    width:30px;
    height:30px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:50%;
    background:rgba(0,0,0,.54);
    color:#fff;
    display:grid;
    place-items:center;
    cursor:pointer;
    font-size:16px;
    backdrop-filter:blur(8px);
}

.fav-btn.active{
    background:linear-gradient(135deg,#ffb703,#ff4d6d);
    color:#fff;
    border-color:rgba(255,255,255,.28);
    box-shadow:0 0 18px rgba(255,183,3,.35);
}

.grid .card,
.channel-row .card,
.poster-row .card{
    position:relative;
}

.details-actions .fav-action{
    background:linear-gradient(135deg,#ffb703,#ff4d6d);
}

.details-actions .next-action {
    background: rgba(255, 255, 255, 0.08) !important;
    border: 1px solid rgba(255, 255, 255, 0.12) !important;
    box-shadow: none !important;
}

.empty-favorites{
    grid-column:1/-1;
    min-height:160px;
    display:grid;
    place-items:center;
    border:1px dashed rgba(255,255,255,.18);
    border-radius:18px;
    color:#9fb0da;
    background:rgba(255,255,255,.04);
    text-align:center;
    padding:20px;
}

@media(max-width:1000px){
    .profiles-bar{
        align-items:flex-start;
        flex-direction:column;
    }
    .top-mac-info{
        border-radius:14px;
        flex-wrap:wrap;
        white-space:normal;
    }
}


/* Ajuste final: remove informações de MAC do menu lateral */
.sidebar .mac-card{
    display:none!important;
}

.sidebar{
    justify-content:flex-start!important;
}

.menu-item[data-type="refresh"]{
    color:#dfffea;
}

.menu-item[data-type="refresh"]:hover{
    background:linear-gradient(135deg,#00a8ff,#5b2cff)!important;
}

.refresh-toast{
    position:fixed;
    right:24px;
    top:88px;
    z-index:1000;
    background:linear-gradient(135deg,#5b2cff,#00a8ff);
    color:#fff;
    border-radius:14px;
    padding:13px 16px;
    font-weight:900;
    box-shadow:0 18px 40px rgba(0,0,0,.35);
}

.boot{
    transition:.18s!important;
}

.boot.hide{
    opacity:0;
    pointer-events:none;
}

.channel-row .card img,
.poster-row .card img,
.grid .card img{
    content-visibility:auto;
}


/* ==========================================================
   PREMIUM BLINDADO - camada visual segura
   Não altera backend nem fluxo original do app.js
========================================================== */

.live{
    animation:premiumPulseSafe 1.15s infinite;
    box-shadow:0 0 18px rgba(237,47,67,.36);
}

@keyframes premiumPulseSafe{
    0%,100%{opacity:1;transform:scale(1)}
    50%{opacity:.72;transform:scale(.98)}
}

.hero button,
.details-actions button,
.trial-btn{
    box-shadow:0 0 22px rgba(91,44,255,.42),0 12px 35px rgba(0,0,0,.28);
    transition:transform .18s ease, box-shadow .18s ease, filter .18s ease;
}

.hero button:hover,
.details-actions button:hover,
.trial-btn:hover{
    transform:scale(1.045);
    filter:brightness(1.12);
    box-shadow:0 0 32px rgba(91,44,255,.62),0 16px 42px rgba(0,0,0,.35);
}

.card{
    transition:transform .18s ease, box-shadow .18s ease, border-color .18s ease, filter .18s ease!important;
}

.card:hover{
    transform:scale(1.035)!important;
    filter:brightness(1.08);
}

.player{
    backdrop-filter:blur(16px);
    background:linear-gradient(180deg,rgba(13,20,38,.82),rgba(7,11,23,.78))!important;
}

.btn-refresh-top{
    background:linear-gradient(135deg,#5b2cff,#00a8ff)!important;
    box-shadow:0 0 22px rgba(0,168,255,.22);
}

.premium-content-totals{
    flex:0 0 auto;
    border:1px solid rgba(255,255,255,.09);
    background:rgba(255,255,255,.045);
    border-radius:999px;
    padding:9px 12px;
    color:#cbd5ed;
    font-size:12px;
    font-weight:800;
    white-space:nowrap;
}

.premium-content-totals b{
    color:#29ff78;
}

.premium-row-safe .card{
    min-height:84px;
}

.premium-continue-badge{
    display:block;
    margin-top:4px;
    color:#29ff78!important;
    font-size:11px!important;
    font-weight:900;
}

.section-head h2:before{
    content:"";
    display:inline-block;
    width:7px;
    height:7px;
    background:#5b2cff;
    box-shadow:0 0 16px rgba(91,44,255,.9);
    border-radius:50%;
    margin-right:8px;
    vertical-align:middle;
}

.premium-toast{
    position:fixed;
    right:24px;
    top:88px;
    z-index:1000;
    background:linear-gradient(135deg,#5b2cff,#00a8ff);
    color:#fff;
    border-radius:14px;
    padding:13px 16px;
    font-weight:900;
    box-shadow:0 18px 40px rgba(0,0,0,.35);
}

.boot{
    transition:.18s!important;
}

.boot.hide{
    opacity:0;
    pointer-events:none;
}

@media(max-width:1000px){
    .premium-content-totals{
        border-radius:14px;
        white-space:normal;
    }
}


/* ==========================================================
   AJUSTES SOLICITADOS - compacto e limpo
========================================================== */

/* Remove informações desnecessárias do topo */
.premium-content-totals,
#premiumContentTotals,
.profile-current,
.compact-profile{
    display:none!important;
}

/* Deixa área de perfil/topo mais limpa */
.profiles-bar{
    min-height:48px!important;
    padding:8px 12px!important;
    gap:10px!important;
}

.top-mac-info{
    padding:7px 11px!important;
    font-size:13px!important;
}

/* Reduz espaços nas listas de Canais/Filmes/Séries */
.list-view,
.episodes-view{
    height:calc(100vh - 176px)!important;
    padding-right:4px!important;
}

.list-head{
    margin-bottom:8px!important;
    gap:10px!important;
}

.list-head h1{
    font-size:30px!important;
    line-height:1!important;
}

.cats{
    padding-bottom:8px!important;
    gap:8px!important;
}

.cats button{
    padding:8px 12px!important;
    font-size:13px!important;
}

.grid{
    gap:10px!important;
    grid-template-columns:repeat(auto-fill,minmax(132px,1fr))!important;
}

.grid .card img{
    height:88px!important;
}

.grid .card.poster img{
    height:190px!important;
}

.grid .card div{
    padding:9px!important;
}

.grid .card b{
    font-size:13px!important;
}

.grid .card small{
    font-size:11px!important;
}

/* Home mais compacta */
.section{
    margin-top:10px!important;
}

.section-head{
    margin-bottom:6px!important;
}

.channel-row{
    height:76px!important;
    gap:8px!important;
}

.poster-row{
    height:104px!important;
    gap:7px!important;
}

/* Logo dinâmica */
.dynamic-logo-img{
    max-width:170px;
    max-height:48px;
    object-fit:contain;
    display:block;
}

.dynamic-logo-img.hidden{
    display:none!important;
}

/* Banner configurável */
.hero{
    background-position:center!important;
    background-size:cover!important;
}

/* Remove visual antigo se logo por imagem for usada */
.tv-icon.hidden,
.brand-name.hidden{
    display:none!important;
}

/* Corrige botão de servidor para não vazar */
.profiles-list{
    min-width:0!important;
    max-width:280px!important;
}

.profile-btn{
    max-width:220px!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}


/* ==========================================================
   CORREÇÃO FINAL - Banner/Logo/MAC seguros
========================================================== */

/* Nunca esconder o nome do app quando usar logo */
#dynamicBrandName,
.brand-name{
    display:block!important;
}

#dynamicBrandName.hidden,
.brand-name.hidden{
    display:block!important;
}

.dynamic-logo-img{
    max-width:46px!important;
    max-height:46px!important;
    object-fit:contain!important;
    margin-right:10px!important;
    flex:0 0 auto!important;
}

.dynamic-logo-img.hidden{
    display:none!important;
}

.brand{
    display:flex!important;
    align-items:center!important;
    gap:10px!important;
}

.tv-icon.hidden{
    display:none!important;
}

/* Remove apenas informações desnecessárias */
#premiumContentTotals,
.premium-content-totals{
    display:none!important;
}

/* Não mostrar "Servidor atual" */
.profile-current,
.compact-profile{
    display:none!important;
}

/* Mantém bloco do MAC visível no topo */
.top-mac-info{
    display:flex!important;
    align-items:center!important;
    flex-wrap:wrap!important;
    gap:10px!important;
    padding:7px 11px!important;
    font-size:13px!important;
}

.top-mac-info b{
    color:#29ff78!important;
}

/* Deixa a tela de listagem mais compacta */
.list-view,
.episodes-view{
    height:calc(100vh - 176px)!important;
    padding-right:4px!important;
}

.list-head{
    margin-bottom:8px!important;
    gap:10px!important;
}

.list-head h1{
    font-size:30px!important;
    line-height:1!important;
}

.cats{
    padding-bottom:8px!important;
    gap:8px!important;
}

.cats button{
    padding:8px 12px!important;
    font-size:13px!important;
}

.grid{
    gap:10px!important;
    grid-template-columns:repeat(auto-fill,minmax(132px,1fr))!important;
}

.grid .card img{
    height:88px!important;
}

.grid .card.poster img{
    height:190px!important;
}

.grid .card div{
    padding:9px!important;
}

.grid .card b{
    font-size:13px!important;
}

.grid .card small{
    font-size:11px!important;
}

.section{
    margin-top:10px!important;
}

.section-head{
    margin-bottom:6px!important;
}

/* Banner configurável sem afetar conteúdo */
.hero{
    background-position:center!important;
    background-size:cover!important;
}


/* Correção segura de ativação sem lista */
.activation:not(.hidden){
    display:grid!important;
    place-items:center!important;
}

.activation-box{
    position:relative;
    z-index:5;
}

/* MAC no topo */
#topMacAddress{
    color:#29ff78!important;
    font-weight:900!important;
}


/* Canais separados por categorias */
.grid.grid-by-category{
    display:block!important;
}
.category-block{
    margin:0 0 18px 0;
    padding:0 0 4px 0;
}
.category-block-head{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin:0 0 9px 0;
}
.category-block-head h2{
    margin:0;
    font-size:18px;
    line-height:1.15;
    color:#fff;
}
.category-block-head button{
    border:0;
    background:rgba(148,92,255,.14);
    color:#c8b7ff;
    border-radius:999px;
    padding:7px 12px;
    font-weight:800;
    cursor:pointer;
}
.category-row{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(132px,1fr));
    gap:10px;
}
.category-row .card img{
    width:100%;
    height:88px;
    object-fit:contain;
    background:#060a18;
    padding:10px;
}
.category-row .card div{
    padding:9px;
}
.category-row .card b{
    font-size:13px;
    display:block;
}
.category-row .card small{
    color:var(--muted);
    font-size:11px;
}
@media(max-width:1000px){
    .category-row{
        display:flex;
        overflow:auto;
        padding-bottom:6px;
        scroll-snap-type:x proximity;
    }
    .category-row .card{
        flex:0 0 145px;
        scroll-snap-align:start;
    }
}


/* Barra inferior: preencher espaço em branco com outros canais da mesma categoria */
.now-related{
    flex:1 1 auto;
    min-width:220px;
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(155px,1fr));
    gap:8px;
    align-items:center;
    max-height:58px;
    overflow:hidden;
}
.now-channel-chip{
    height:54px;
    border:1px solid rgba(255,255,255,.09);
    background:linear-gradient(180deg,rgba(18,25,49,.95),rgba(8,12,26,.95));
    color:#fff;
    border-radius:9px;
    padding:7px 9px;
    display:flex;
    align-items:center;
    gap:8px;
    cursor:pointer;
    min-width:0;
    text-align:left;
    transition:.18s;
}
.now-channel-chip:hover{
    border-color:var(--purple);
    box-shadow:0 0 0 1px rgba(91,44,255,.5),0 0 18px rgba(91,44,255,.25);
    transform:translateY(-1px);
}
.now-channel-chip img{
    width:40px;
    height:34px;
    object-fit:contain;
    flex:0 0 auto;
}
.now-channel-chip span{
    min-width:0;
    display:block;
}
.now-channel-chip b{
    display:block;
    font-size:12px;
    line-height:1.1;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
.now-channel-chip small{
    display:block;
    margin-top:3px;
    color:#aeb7d1;
    font-size:10px;
    white-space:nowrap;
    overflow:hidden;
    text-overflow:ellipsis;
}
.player .progress{
    flex:0 0 120px;
}
@media(max-width:1000px){
    .player{
        height:auto;
        min-height:86px;
        align-items:flex-start;
        overflow:hidden;
    }
    .now-related{
        display:flex;
        overflow:auto;
        max-height:none;
        padding-bottom:4px;
    }
    .now-channel-chip{
        flex:0 0 145px;
    }
    .player .progress,.player .time,.player .controls{
        display:none!important;
    }
}


/* ==========================================================
   LAYOUT PREMIUM DIGITAL PRO - FULL SCREEN
   Ajuste visual sem alterar o motor de reprodução
========================================================== */
:root{
  --premium-bg:#020611;
  --premium-card:#070d1f;
  --premium-card2:#10182d;
  --premium-border:rgba(255,255,255,.10);
  --premium-purple:#6c2cff;
  --premium-purple2:#9b4dff;
  --premium-green:#1eff7a;
}
.tv-shell{grid-template-columns:224px 1fr;padding:18px 18px 96px 18px;background:radial-gradient(circle at 70% -10%,rgba(108,44,255,.18),transparent 42%),#020611;}
.sidebar{border-right:1px solid rgba(255,255,255,.08);padding:8px 16px 16px 0;display:flex;flex-direction:column;gap:16px;}
.brand{height:48px;margin-bottom:16px}.brand-name{font-size:25px;font-style:italic}.brand-name span,#dynamicBrandSub{font-size:12px;color:#a76bff;margin-left:4px}.tv-icon{border-color:#7137ff;box-shadow:0 0 24px rgba(108,44,255,.45)}
.menu{gap:14px}.menu-item{height:54px;border-radius:12px;font-size:15px;padding:0 18px;gap:14px}.menu-item.active{background:linear-gradient(135deg,#5b25ff,#7c35ff);box-shadow:0 14px 35px rgba(91,44,255,.28)}
.side-info-card{margin-top:auto;border:1px solid var(--premium-border);background:linear-gradient(180deg,rgba(15,23,42,.88),rgba(6,12,26,.92));border-radius:14px;padding:14px;display:grid;gap:10px;font-size:13px;color:#dbe5ff;box-shadow:0 18px 55px rgba(0,0,0,.22)}
.side-info-card div{display:flex;align-items:center;gap:8px}.side-info-card strong{color:#1eff7a}.dot-ok{width:11px;height:11px;border-radius:50%;background:#16e979;box-shadow:0 0 14px #16e979}.side-action{border:0;border-radius:10px;background:rgba(255,255,255,.07);color:#fff;font-weight:900;padding:12px;cursor:pointer;text-align:left}.side-action:hover{background:linear-gradient(135deg,#142849,#192f54)}.adult-state{border-radius:10px;background:rgba(255,230,0,.07);padding:10px}.adult-state b{display:block;color:#a5ffb7;margin-top:2px}
.main{padding:0 0 0 16px;overflow:hidden}.topbar{height:60px;margin-bottom:12px}.search{width:min(520px,48vw);height:44px;border-radius:12px;background:rgba(10,16,31,.92)}.search input{font-size:14px}.top-actions{gap:12px}.top-mac-box{height:40px;border:1px solid rgba(30,255,122,.65);border-radius:8px;background:rgba(7,22,21,.72);padding:0 12px;display:flex;align-items:center;gap:9px;font-size:15px;font-weight:900;box-shadow:0 0 20px rgba(30,255,122,.12)}.top-mac-box b{color:#fff;letter-spacing:.3px}.top-mac-box button{border:0;background:transparent;color:#fff;font-size:15px;cursor:pointer}.pill{height:38px;border-radius:10px;background:rgba(15,23,42,.94)}.round{width:40px;height:40px;background:#070d1f;border:1px solid var(--premium-border)}
.profiles-bar{display:none!important}.home{height:calc(100vh - 172px);overflow:auto;padding-right:6px}.hero{height:376px;display:grid;grid-template-columns:minmax(430px,1.12fr) minmax(450px,.98fr);gap:0;padding:0;overflow:hidden;border:1px solid rgba(255,255,255,.11);border-radius:10px;background:#050a16;box-shadow:0 22px 70px rgba(0,0,0,.32)}.hero:before{content:"";position:absolute;inset:0;width:55%;background:linear-gradient(90deg,rgba(0,0,0,.16),rgba(0,0,0,.55)),url('https://images.unsplash.com/photo-1508098682722-e99c43a406b2?auto=format&fit=crop&w=1200&q=80') center/cover no-repeat;opacity:.86}.hero-text{position:relative;z-index:2;align-self:end;padding:0 0 46px 28px}.hero .live{background:#d61f32;box-shadow:0 0 22px rgba(214,31,50,.28)}.hero h1{font-size:32px;max-width:560px}.hero p{font-size:15px;text-transform:uppercase}.hero button{height:52px;border-radius:8px;font-size:16px;background:linear-gradient(135deg,#602cff,#8a45ff);box-shadow:0 12px 30px rgba(96,44,255,.28)}.hero-epg{position:relative;z-index:2;display:grid;grid-template-columns:1fr 1fr;background:linear-gradient(180deg,rgba(8,13,25,.96),rgba(5,9,18,.98));border-left:1px solid rgba(255,255,255,.08)}.hero-epg h3{margin:0 0 20px;color:#9b4dff;font-size:17px}.hero-epg h2{font-size:20px;margin:18px 0 8px}.epg-now,.epg-next{padding:28px 26px}.epg-now{border-right:1px solid rgba(255,255,255,.08)}.epg-line{display:flex;align-items:center;gap:10px;border-top:1px solid rgba(255,255,255,.08);padding-top:20px}.live-dot{background:#d61f32;border-radius:6px;padding:6px 9px;font-size:12px;font-weight:900}.epg-progress{height:6px;background:rgba(255,255,255,.12);border-radius:999px;margin:26px 0 8px;overflow:hidden}.epg-progress i{display:block;width:76%;height:100%;background:linear-gradient(90deg,#682cff,#9c45ff)}.epg-now small{color:#c7d0e8;float:right}.epg-next p{display:grid;grid-template-columns:58px 1fr;gap:14px;margin:0 0 18px}.epg-next p b{font-weight:500;color:#d7def1}.epg-next p span{font-weight:900;color:#fff}.epg-next button{width:100%;height:44px;border:0;border-radius:8px;background:rgba(255,255,255,.06);color:#fff;font-weight:900;margin-top:10px;cursor:pointer}
.section{margin-top:18px}.section-head h2{font-size:18px}.section-head h2:before{content:'•';color:#7e3cff;margin-right:8px}.channel-row{height:180px;grid-template-columns:repeat(6,minmax(158px,1fr));gap:12px}.channel-row .card{border-radius:8px;min-height:176px;background:linear-gradient(180deg,#111a31,#080d1a);padding-top:22px}.channel-row .card:before{content:'• AO VIVO';position:absolute;left:12px;top:12px;background:#cf2030;color:#fff;border-radius:4px;padding:5px 8px;font-size:9px;font-weight:900;z-index:2}.channel-row .card img{height:76px;padding:18px 26px;margin-top:18px}.channel-row .card div{text-align:left;padding:6px 18px 14px}.channel-row .card b{font-size:14px}.channel-row .card small{display:block;color:#9d62ff;margin-top:10px;font-size:12px}.channel-row .card small:after{content:'';display:block;height:5px;border-radius:999px;background:linear-gradient(90deg,#6c2cff 72%,rgba(255,255,255,.12) 72%);margin-top:12px}.poster-row{height:148px}.poster-row .card{border-radius:9px}.dual{gap:18px}.grid-by-category{display:block}.category-block{margin-bottom:24px}.category-block-head h2{font-size:22px}.category-row{display:grid;grid-template-columns:repeat(6,minmax(160px,1fr));gap:14px}.category-row .card{min-height:178px}.category-row .card img{height:80px}.player{left:18px;right:18px;bottom:14px;height:74px;border-radius:10px;background:rgba(6,11,22,.96);backdrop-filter:blur(14px)}.video-mini{width:118px}.now-related{max-width:440px}.controls .pause{background:linear-gradient(135deg,#612dff,#9b4dff)}
.settings-modal{position:fixed;inset:0;z-index:200;background:rgba(0,0,0,.72);display:grid;place-items:center;padding:18px}.settings-box{width:min(760px,96vw);border:1px solid rgba(255,255,255,.12);border-radius:18px;background:linear-gradient(180deg,#10172a,#070b18);box-shadow:0 32px 90px rgba(0,0,0,.55);padding:22px}.settings-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px}.settings-head small{color:#9b4dff;font-weight:1000}.settings-head h2{margin:4px 0 0;font-size:24px}.settings-head button{border:1px solid rgba(255,255,255,.12);background:#090f20;color:#fff;border-radius:10px;width:38px;height:38px;cursor:pointer}.settings-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:12px}.settings-card{border:1px solid rgba(255,255,255,.09);background:rgba(255,255,255,.04);border-radius:14px;padding:16px}.settings-card span{display:block;color:#94a3c7;font-size:12px;margin-bottom:7px}.settings-card b{font-size:17px;color:#fff}.pin-change-box{margin-top:16px;border:1px solid rgba(255,255,255,.09);background:rgba(108,44,255,.07);border-radius:14px;padding:16px}.pin-change-box label{display:block;font-weight:900;margin-bottom:10px}.pin-row{display:flex;gap:10px}.pin-row input{flex:1;height:46px;border:1px solid rgba(255,255,255,.12);border-radius:10px;background:#050a16;color:#fff;padding:0 14px;font-size:18px;letter-spacing:2px}.pin-row button{border:0;border-radius:10px;background:linear-gradient(135deg,#602cff,#8c45ff);color:#fff;font-weight:900;padding:0 18px;cursor:pointer}.pin-change-box small{display:block;color:#b6c0dc;margin-top:9px}.pin-save-msg{color:#1eff7a;font-weight:900;margin-top:10px}
.hidden{display:none!important}
@media(max-width:1100px){.tv-shell{display:block;overflow:auto}.sidebar{border-right:0}.side-info-card{display:none}.hero{height:auto;grid-template-columns:1fr}.hero:before{width:100%;height:340px}.hero-text{min-height:340px}.hero-epg{grid-template-columns:1fr}.channel-row,.category-row{display:flex;overflow:auto}.channel-row .card,.category-row .card{flex:0 0 170px}.home{height:auto;overflow:visible}.settings-grid{grid-template-columns:1fr}.top-mac-box{display:none}}

/* ==========================================================
   FIX CLEAN VISUAL COMPACTO - solicitado pelo cliente
   Mantém reprodução intacta. Remove poluição visual e compacta cards.
========================================================== */

/* Base mais limpa */
html,body{
    background:#020611!important;
}
.tv-shell{
    grid-template-columns:220px 1fr!important;
    padding:18px 18px 92px 18px!important;
    gap:16px!important;
}
.sidebar{
    padding:6px 14px 14px 0!important;
    gap:12px!important;
}
.brand{
    height:44px!important;
    margin-bottom:12px!important;
}
.brand-name{
    font-size:25px!important;
}
.menu{
    gap:10px!important;
}
.menu-item{
    height:46px!important;
    border-radius:11px!important;
    font-size:15px!important;
    padding:0 16px!important;
}
.menu-item span{
    font-size:14px!important;
}
.side-info-card{
    margin-top:auto!important;
    padding:12px!important;
    gap:8px!important;
    font-size:12px!important;
    border-radius:13px!important;
}
.side-action{
    padding:10px!important;
    border-radius:9px!important;
}
.adult-state{
    padding:9px!important;
    border-radius:9px!important;
}

.main{
    padding-left:14px!important;
}
.topbar{
    height:50px!important;
    margin-bottom:10px!important;
}
.search{
    height:42px!important;
    width:min(410px,42vw)!important;
    border-radius:12px!important;
}
.top-actions{
    gap:10px!important;
}
.top-mac-box{
    height:38px!important;
    font-size:13px!important;
    padding:0 11px!important;
    border-radius:9px!important;
}
.pill{
    height:38px!important;
    font-size:12px!important;
    padding:0 14px!important;
}
.round{
    width:38px!important;
    height:38px!important;
}

/* HERO LIMPO: remove programação duplicada/poluída */
.home{
    height:calc(100vh - 154px)!important;
    overflow:auto!important;
    padding-right:6px!important;
}
.hero{
    height:190px!important;
    display:block!important;
    border-radius:12px!important;
    padding:0!important;
    overflow:hidden!important;
    background:
        linear-gradient(90deg,rgba(2,6,17,.96) 0%,rgba(2,6,17,.78) 45%,rgba(2,6,17,.28) 100%),
        url('https://images.unsplash.com/photo-1508098682722-e99c43a406b2?auto=format&fit=crop&w=1400&q=80') center/cover no-repeat!important;
    box-shadow:0 16px 50px rgba(0,0,0,.34)!important;
}
.hero:before,
.hero:after{
    display:none!important;
    content:none!important;
}
.hero-epg,
.epg-now,
.epg-next{
    display:none!important;
}
.hero-text{
    position:absolute!important;
    left:26px!important;
    top:22px!important;
    bottom:auto!important;
    padding:0!important;
    max-width:560px!important;
}
.hero .live{
    padding:6px 10px!important;
    border-radius:7px!important;
    font-size:11px!important;
    margin-bottom:12px!important;
}
.hero h1{
    font-size:30px!important;
    line-height:1!important;
    margin:0 0 7px!important;
    text-shadow:0 10px 28px rgba(0,0,0,.8)!important;
}
.hero p{
    margin:0 0 14px!important;
    font-size:13px!important;
    color:#dce5ff!important;
}
.hero button{
    height:42px!important;
    border-radius:9px!important;
    padding:0 18px!important;
    font-size:14px!important;
}
.dots{
    display:none!important;
}

/* Seções mais compactas e visuais */
.section{
    margin-top:10px!important;
}
.section-head{
    height:22px!important;
    margin-bottom:6px!important;
}
.section-head h2{
    font-size:15px!important;
    line-height:1!important;
}
.section-head h2:before{
    width:6px!important;
    height:6px!important;
    margin-right:7px!important;
    content:""!important;
    display:inline-block!important;
    background:#6c2cff!important;
    border-radius:50%!important;
}
.section-head button{
    font-size:12px!important;
}
.dual{
    gap:12px!important;
}

/* Canais em destaque: mais cards em menos espaço */
.channel-row{
    height:104px!important;
    grid-template-columns:repeat(7,minmax(120px,1fr))!important;
    gap:7px!important;
}
.channel-row .card{
    min-height:104px!important;
    border-radius:8px!important;
    padding-top:0!important;
}
.channel-row .card:before{
    display:none!important;
}
.channel-row .card img{
    height:50px!important;
    padding:9px 18px!important;
    margin-top:4px!important;
}
.channel-row .card div{
    padding:2px 8px 7px!important;
    text-align:center!important;
}
.channel-row .card b{
    font-size:11px!important;
    line-height:1.1!important;
}
.channel-row .card small{
    display:block!important;
    margin-top:3px!important;
    font-size:9px!important;
    color:#9d62ff!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}
.channel-row .card small:after{
    display:none!important;
}

/* Filmes e séries compactos */
.poster-row{
    height:108px!important;
    grid-template-columns:repeat(7,minmax(72px,1fr))!important;
    gap:7px!important;
}
.poster-row .card{
    border-radius:8px!important;
}
.poster-row .card b{
    font-size:9px!important;
    line-height:1.05!important;
}
.poster-row .card small{
    font-size:8px!important;
}
.poster-row .card div{
    left:6px!important;
    right:6px!important;
    bottom:5px!important;
}

/* Lista de categorias e grade: mais compacta */
.list-view,
.episodes-view{
    height:calc(100vh - 156px)!important;
}
.list-head{
    margin-bottom:7px!important;
}
.list-head h1{
    font-size:26px!important;
}
.cats{
    padding-bottom:7px!important;
    gap:7px!important;
}
.cats button{
    padding:7px 10px!important;
    font-size:12px!important;
}
.grid{
    grid-template-columns:repeat(auto-fill,minmax(120px,1fr))!important;
    gap:8px!important;
}
.grid .card img{
    height:78px!important;
    padding:8px!important;
}
.grid .card.poster img{
    height:166px!important;
}
.grid .card div{
    padding:8px!important;
}
.grid .card b{
    font-size:12px!important;
}
.grid .card small{
    font-size:10px!important;
}
.category-block{
    margin-bottom:14px!important;
}
.category-block-head{
    margin-bottom:7px!important;
}
.category-block-head h2{
    font-size:16px!important;
}
.category-row{
    grid-template-columns:repeat(auto-fill,minmax(120px,1fr))!important;
    gap:8px!important;
}
.category-row .card{
    min-height:100px!important;
    border-radius:8px!important;
}
.category-row .card img{
    height:50px!important;
    padding:9px 14px!important;
}
.category-row .card div{
    padding:7px!important;
}
.category-row .card b{
    font-size:11px!important;
}
.category-row .card small{
    font-size:9px!important;
}

/* Barra inferior mais limpa */
.player{
    height:72px!important;
    bottom:12px!important;
    left:18px!important;
    right:18px!important;
    gap:12px!important;
    padding:9px 12px!important;
}
.video-mini{
    width:114px!important;
    height:54px!important;
}
.now{
    width:160px!important;
}
.now b{
    font-size:14px!important;
}
.now span,.now small{
    font-size:11px!important;
}
.now-related{
    grid-template-columns:repeat(auto-fill,minmax(128px,1fr))!important;
    gap:6px!important;
    max-height:54px!important;
    max-width:520px!important;
}
.now-channel-chip{
    height:50px!important;
    padding:6px 8px!important;
    border-radius:8px!important;
}
.now-channel-chip img{
    width:34px!important;
    height:30px!important;
}
.now-channel-chip b{
    font-size:10px!important;
}
.now-channel-chip small{
    font-size:9px!important;
}
.player .progress{
    flex:1 1 auto!important;
    min-width:120px!important;
}
.controls{
    gap:10px!important;
}
.controls .pause{
    width:42px!important;
    height:42px!important;
}

/* Modal limpo */
.settings-box{
    border-radius:16px!important;
}

@media(max-width:1100px){
    html,body{overflow:auto!important;}
    .tv-shell{display:block!important;padding:14px 12px 92px 12px!important;}
    .sidebar{border-right:0!important;padding:0!important;}
    .menu{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:8px!important;}
    .main{padding-left:0!important;}
    .topbar{height:auto!important;gap:10px!important;flex-wrap:wrap!important;}
    .search{width:100%!important;}
    .hero{height:180px!important;}
    .hero-text{left:18px!important;top:18px!important;}
    .hero h1{font-size:24px!important;}
    .dual{grid-template-columns:1fr!important;}
    .channel-row,.poster-row,.category-row{display:flex!important;overflow:auto!important;}
    .channel-row .card,.category-row .card{flex:0 0 132px!important;}
    .poster-row .card{flex:0 0 84px!important;}
    .player{height:auto!important;min-height:76px!important;}
    .now-related{display:none!important;}
}


/* ==========================================================
   AJUSTE CLIENTE CLEAN - sem barra inferior, sem recentes, banner admin
========================================================== */
#playerBox,
.player{
    display:none!important;
}
.removed-client-recent,
#premiumContinueSection{
    display:none!important;
}
.side-info-card.client-clean-info{
    margin-top:auto!important;
    padding:14px 16px!important;
    gap:0!important;
    background:rgba(10,16,31,.72)!important;
}
.side-info-card.client-clean-info div{
    justify-content:center!important;
    font-size:14px!important;
}
.side-info-card.client-clean-info b{
    color:#1eff7a!important;
}
.adult-state,.side-action{
    display:none!important;
}
.top-actions .pill{
    order:2;
}
.top-actions .top-mac-box{
    order:1;
}
.logout-btn{
    order:5;
}
.hero{
    height:210px!important;
    min-height:210px!important;
    grid-template-columns:1fr!important;
    background-size:contain!important;
    background-repeat:no-repeat!important;
    background-position:center!important;
    background-color:#050914!important;
    padding:0!important;
}
.hero:before,.hero:after,.hero-epg{
    display:none!important;
}
.hero-text{
    position:relative!important;
    z-index:2!important;
    max-width:520px!important;
    padding:24px 26px!important;
    align-self:center!important;
    background:linear-gradient(90deg,rgba(5,9,20,.88),rgba(5,9,20,.36),rgba(5,9,20,0))!important;
    border-radius:12px!important;
}
.hero h1{
    font-size:28px!important;
    line-height:1.05!important;
    margin:10px 0 6px!important;
}
.hero p{
    font-size:13px!important;
    margin:0 0 16px!important;
}
.hero button{
    height:42px!important;
    padding:0 18px!important;
    border-radius:9px!important;
    font-size:14px!important;
}
.dots{
    display:none!important;
}
.home{
    height:calc(100vh - 92px)!important;
    padding-right:6px!important;
}
.section{
    margin-top:10px!important;
}
.section-head{
    margin-bottom:6px!important;
}
.section-head h2{
    font-size:17px!important;
}
.channel-row{
    height:96px!important;
    gap:7px!important;
}
.channel-row .card{
    min-height:92px!important;
    height:92px!important;
    padding:8px 10px!important;
}
.channel-row .card:before{
    font-size:8px!important;
    padding:3px 6px!important;
    top:7px!important;
    left:8px!important;
}
.channel-row .card img{
    height:42px!important;
    padding:8px 18px!important;
    margin-top:14px!important;
}
.channel-row .card div{
    padding:0 6px 4px!important;
}
.channel-row .card b{
    font-size:10px!important;
}
.channel-row .card small{
    display:none!important;
}
.poster-row{
    height:112px!important;
    gap:7px!important;
}
.poster-row .card{
    min-height:110px!important;
}
.dual{
    gap:10px!important;
}
@media(max-width:1100px){
    .hero{height:180px!important;min-height:180px!important;}
    .hero-text{padding:18px!important;}
    .hero h1{font-size:23px!important;}
}

/* ==========================================================
   FINAL 100% PRONTO - Cliente limpo, profissional e com ultra cache
========================================================== */
html,body{
    width:100%!important;
    height:100%!important;
    overflow:hidden!important;
    background:#030713!important;
}
.tv-shell{
    height:100vh!important;
    grid-template-columns:250px minmax(0,1fr)!important;
    padding:20px 20px 20px 22px!important;
    gap:18px!important;
}
.sidebar{
    min-height:0!important;
    overflow:hidden!important;
}
.main{
    height:calc(100vh - 40px)!important;
    overflow-y:auto!important;
    overflow-x:hidden!important;
    padding-right:10px!important;
    scrollbar-width:thin;
}
.main::-webkit-scrollbar{width:8px}.main::-webkit-scrollbar-thumb{background:rgba(255,255,255,.28);border-radius:99px}.main::-webkit-scrollbar-track{background:transparent}
.topbar{
    height:56px!important;
    margin-bottom:14px!important;
}
.search{
    width:min(520px,46vw)!important;
    height:48px!important;
}
.top-actions .top-mac-box,
.top-mac-box,
#topMacAddress{
    display:none!important;
}
.top-actions .round,
.btn-refresh-top,
.logout-btn{
    display:none!important;
}
.top-actions .pill{
    height:42px!important;
    padding:0 18px!important;
    font-weight:800!important;
}
.menu{gap:12px!important;}
.menu-item{
    height:52px!important;
    border-radius:13px!important;
    font-size:18px!important;
}
.side-info-card.client-clean-info,
.mac-card,
.top-mac-info,
#profilesBar{
    display:none!important;
}
.side-profiles-card{
    margin-top:20px!important;
    border:1px solid rgba(255,255,255,.10)!important;
    border-radius:16px!important;
    background:rgba(12,18,36,.82)!important;
    padding:14px!important;
}
.side-card-title{
    color:#fff!important;
    font-size:15px!important;
    font-weight:900!important;
    margin-bottom:10px!important;
}
.side-profiles-list{
    display:flex!important;
    flex-direction:column!important;
    gap:8px!important;
    max-width:none!important;
}
.side-profiles-list .profile-btn{
    width:100%!important;
    max-width:none!important;
    min-height:42px!important;
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:8px!important;
    border-radius:12px!important;
    border:1px solid rgba(255,255,255,.12)!important;
    background:rgba(9,14,29,.9)!important;
    color:#fff!important;
    padding:9px 12px!important;
    font-weight:900!important;
    cursor:pointer!important;
}
.side-profiles-list .profile-btn.active{
    border-color:rgba(41,255,120,.65)!important;
    background:rgba(41,255,120,.10)!important;
}
.side-profiles-list .profile-btn b{
    color:#29ff78!important;
    font-size:11px!important;
}
.side-actions-clean{
    margin-top:auto!important;
    display:grid!important;
    gap:10px!important;
}
.side-actions-clean button{
    height:46px!important;
    border:1px solid rgba(255,255,255,.10)!important;
    border-radius:14px!important;
    background:rgba(16,24,50,.82)!important;
    color:#fff!important;
    font-size:15px!important;
    font-weight:900!important;
    cursor:pointer!important;
}
.side-actions-clean button:hover{background:linear-gradient(135deg,#5b2cff,#4324de)!important;}
.chatbot-mini{
    position:fixed!important;
    right:20px!important;
    bottom:20px!important;
    z-index:50!important;
    width:48px!important;
    height:48px!important;
    border-radius:50%!important;
    display:grid!important;
    place-items:center!important;
    text-decoration:none!important;
    background:rgba(41,255,120,.15)!important;
    border:1px solid rgba(41,255,120,.40)!important;
    box-shadow:0 12px 32px rgba(0,0,0,.35)!important;
}
.hero{
    width:100%!important;
    height:280px!important;
    min-height:280px!important;
    border-radius:18px!important;
    overflow:hidden!important;
    border:1px solid rgba(255,255,255,.09)!important;
    background-size:cover!important;
    background-position:center!important;
    background-repeat:no-repeat!important;
    box-shadow:0 20px 60px rgba(0,0,0,.42)!important;
}
.hero-text{
    position:absolute!important;
    left:34px!important;
    top:34px!important;
    max-width:520px!important;
    padding:0!important;
    background:transparent!important;
}
.hero h1{
    font-size:38px!important;
    line-height:1.05!important;
    margin-bottom:8px!important;
}
.hero p{
    font-size:17px!important;
    max-width:620px!important;
    white-space:nowrap!important;
    overflow:hidden!important;
    text-overflow:ellipsis!important;
}
.hero button{
    height:50px!important;
    padding:0 28px!important;
    font-size:17px!important;
    border-radius:12px!important;
}
.live{font-size:13px!important;padding:8px 12px!important;border-radius:9px!important;}
.section{margin-top:12px!important;}
.section-head{height:28px!important;margin-bottom:8px!important;}
.section-head h2{font-size:21px!important;line-height:1!important;}
.section-head h2:before{content:'• ';color:#6f3cff;}
.section-head button{font-size:14px!important;color:#a35cff!important;}
.channel-row{
    display:grid!important;
    grid-template-columns:repeat(8,minmax(118px,1fr))!important;
    gap:9px!important;
    height:84px!important;
    overflow:hidden!important;
}
.poster-row{
    display:grid!important;
    grid-template-columns:repeat(8,minmax(70px,1fr))!important;
    gap:8px!important;
    height:116px!important;
    overflow:hidden!important;
}
.dual{
    grid-template-columns:1fr 1fr!important;
    gap:20px!important;
    align-items:start!important;
}
.channel-row .card{
    min-width:0!important;
    border-radius:11px!important;
}
.channel-row .card img{
    height:48px!important;
    padding:7px 10px!important;
}
.channel-row .card div{padding:0 7px 7px!important;}
.channel-row .card b{font-size:11px!important;}
.poster-row .card{border-radius:10px!important;}
.poster-row .card b{font-size:10px!important;}
.poster-row .card small{font-size:9px!important;}
.grid{grid-template-columns:repeat(auto-fill,minmax(128px,1fr))!important;gap:10px!important;}
.grid .card img{height:86px!important;object-fit:contain!important;}
.grid .card.poster img{height:185px!important;object-fit:cover!important;}
#playerBox,.player{display:none!important;opacity:0!important;pointer-events:none!important;height:0!important;overflow:hidden!important;}
.settings-modal{
    position:fixed!important;
    inset:0!important;
    z-index:99999!important;
    background:rgba(0,0,0,.72)!important;
    display:grid!important;
    place-items:center!important;
    padding:20px!important;
    backdrop-filter:blur(10px)!important;
}
.settings-modal.hidden{display:none!important;}
.settings-box{
    width:min(760px,calc(100vw - 32px))!important;
    max-height:90vh!important;
    overflow:auto!important;
    background:linear-gradient(180deg,#111832,#070b18)!important;
    border:1px solid rgba(255,255,255,.13)!important;
    border-radius:22px!important;
    padding:22px!important;
    box-shadow:0 35px 110px rgba(0,0,0,.62)!important;
}
.settings-grid{
    display:grid!important;
    grid-template-columns:repeat(2,minmax(0,1fr))!important;
    gap:12px!important;
}
.settings-card{
    background:rgba(255,255,255,.05)!important;
    border:1px solid rgba(255,255,255,.10)!important;
    border-radius:15px!important;
    padding:14px!important;
}
.settings-card span{display:block!important;color:#9aa7c7!important;font-size:12px!important;margin-bottom:6px!important;}
.settings-card b{font-size:16px!important;color:#fff!important;word-break:break-all!important;}
.settings-profiles-box{
    margin-top:14px!important;
    background:rgba(255,255,255,.04)!important;
    border:1px solid rgba(255,255,255,.09)!important;
    border-radius:16px!important;
    padding:14px!important;
}
.settings-profiles-box h3{margin:0 0 10px!important;font-size:16px!important;}
.settings-profiles-list{display:grid!important;gap:8px!important;}
.settings-profile-row{
    display:flex!important;
    align-items:center!important;
    justify-content:space-between!important;
    gap:10px!important;
    min-height:42px!important;
    border-radius:12px!important;
    background:rgba(8,12,25,.9)!important;
    border:1px solid rgba(255,255,255,.09)!important;
    padding:10px 12px!important;
    cursor:pointer!important;
}
.settings-profile-row.active{border-color:rgba(41,255,120,.60)!important;background:rgba(41,255,120,.09)!important;}
.settings-profile-row b{color:#29ff78!important;font-size:12px!important;}
.settings-profile-empty{color:#9aa7c7!important;padding:8px!important;}
.pin-change-box{
    margin-top:14px!important;
    background:rgba(255,255,255,.04)!important;
    border:1px solid rgba(255,255,255,.09)!important;
    border-radius:16px!important;
    padding:14px!important;
}
.pin-row{display:flex!important;gap:10px!important;}
.pin-row input{flex:1!important;height:44px!important;border-radius:12px!important;background:#070b18!important;border:1px solid rgba(255,255,255,.14)!important;color:#fff!important;padding:0 12px!important;}
.pin-row button{height:44px!important;border:0!important;border-radius:12px!important;background:linear-gradient(135deg,#5b2cff,#8d45ff)!important;color:#fff!important;font-weight:900!important;padding:0 16px!important;}
@media(max-width:1250px){
    .tv-shell{grid-template-columns:220px minmax(0,1fr)!important;padding:16px!important;gap:14px!important;}
    .brand-name{font-size:26px!important}.menu-item{height:48px!important;}
    .hero{height:230px!important;min-height:230px!important;}
    .channel-row{grid-template-columns:repeat(6,minmax(110px,1fr))!important;}
    .poster-row{grid-template-columns:repeat(6,minmax(68px,1fr))!important;}
}
@media(max-width:900px){
    html,body{overflow:auto!important;}
    .tv-shell{display:block!important;height:auto!important;padding:12px!important;}
    .main{height:auto!important;overflow:visible!important;padding-right:0!important;}
    .sidebar{border-right:0!important;padding-right:0!important;}
    .menu{display:grid!important;grid-template-columns:repeat(2,1fr)!important;gap:8px!important;}
    .side-actions-clean{margin-top:12px!important;grid-template-columns:1fr 1fr!important;}
    .topbar{height:auto!important;align-items:stretch!important;gap:10px!important;flex-direction:column!important;}
    .search{width:100%!important;}
    .hero{height:210px!important;min-height:210px!important;}
    .hero-text{left:18px!important;top:18px!important;}
    .hero h1{font-size:26px!important;}
    .dual{grid-template-columns:1fr!important;}
    .channel-row,.poster-row{display:flex!important;overflow:auto!important;}
    .channel-row .card{flex:0 0 142px!important;}
    .poster-row .card{flex:0 0 88px!important;}
    .settings-grid{grid-template-columns:1fr!important;}
}

/* ==========================================================
   FINAL DEFINITIVO - Perfil no topo, banner simples, player overlay
   Mantém reprodução e adapta para notebook/TV sem depender de zoom.
========================================================== */
html, body{width:100%;min-height:100%;overflow:hidden!important;background:#030712;}
.tv-shell{height:100vh!important;max-height:100vh!important;overflow:hidden!important;display:grid!important;grid-template-columns:clamp(210px,15vw,280px) minmax(0,1fr)!important;}
.sidebar{height:100vh!important;overflow:hidden!important;padding:clamp(12px,1.1vw,20px)!important;}
.main{height:100vh!important;overflow-y:auto!important;overflow-x:hidden!important;padding:clamp(12px,1.2vw,22px)!important;}
.topbar{height:auto!important;min-height:56px!important;margin-bottom:12px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;gap:12px!important;}
.search{width:min(620px,43vw)!important;min-width:240px!important;height:48px!important;}
.top-actions{display:flex!important;align-items:center!important;justify-content:flex-end!important;gap:10px!important;flex-wrap:nowrap!important;min-width:0!important;}
.top-profile-wrap{height:44px!important;display:flex!important;align-items:center!important;gap:8px!important;padding:0 12px!important;border-radius:13px!important;background:rgba(12,18,36,.92)!important;border:1px solid rgba(255,255,255,.11)!important;white-space:nowrap!important;}
.top-profile-wrap.hidden{display:none!important;}
.top-profile-wrap label{font-size:13px!important;color:#b9c7e8!important;font-weight:800!important;}
.top-profile-wrap select{height:34px!important;min-width:130px!important;max-width:220px!important;border:0!important;background:rgba(34,197,94,.12)!important;color:#29ff78!important;border-radius:9px!important;padding:0 28px 0 10px!important;font-weight:900!important;outline:none!important;}
.top-profile-wrap option{background:#0b1020;color:#fff;}
.top-mac-box{height:44px!important;min-width:auto!important;border:1px solid rgba(30,255,122,.65)!important;border-radius:12px!important;background:rgba(5,18,22,.86)!important;padding:0 12px!important;display:flex!important;align-items:center!important;gap:7px!important;font-size:15px!important;font-weight:900!important;box-shadow:0 0 18px rgba(30,255,122,.12)!important;white-space:nowrap!important;}
.top-mac-box b{color:#fff!important;}
.top-mac-box span{color:#29ff78!important;}
.top-mac-box button{border:0!important;background:transparent!important;color:#fff!important;cursor:pointer!important;font-size:15px!important;}
.top-actions .pill{height:44px!important;border-radius:12px!important;padding:0 14px!important;font-weight:800!important;white-space:nowrap!important;}
.top-icon-btn{width:44px!important;height:44px!important;border-radius:50%!important;border:1px solid rgba(255,255,255,.12)!important;background:rgba(7,13,31,.95)!important;color:#fff!important;cursor:pointer!important;font-size:17px!important;display:grid!important;place-items:center!important;transition:.18s ease!important;}
.top-icon-btn:hover{transform:translateY(-1px)!important;border-color:rgba(126,58,242,.75)!important;box-shadow:0 0 20px rgba(126,58,242,.22)!important;}
#sideProfilesCard,.side-profiles-card,.side-actions-clean{display:none!important;}

.hero{width:100%!important;height:clamp(210px,28vh,340px)!important;min-height:210px!important;border-radius:18px!important;background-size:contain!important;background-position:center!important;background-repeat:no-repeat!important;background-color:#050914!important;margin-bottom:14px!important;display:flex!important;align-items:center!important;}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,7,18,.92),rgba(3,7,18,.45),rgba(3,7,18,.08));pointer-events:none;}
.hero-text{position:relative!important;z-index:2!important;max-width:min(520px,48%)!important;padding:clamp(20px,2vw,34px)!important;}
.hero-text h1{font-size:clamp(28px,2.4vw,44px)!important;line-height:1.05!important;margin:14px 0 8px!important;}
.hero-text p{font-size:clamp(14px,1vw,18px)!important;margin:0 0 16px!important;}
.hero-text button{height:clamp(44px,3.4vw,56px)!important;padding:0 clamp(18px,1.8vw,30px)!important;border-radius:11px!important;font-size:clamp(14px,1vw,18px)!important;}

.section{margin-top:10px!important;}
.section-head{height:32px!important;margin-bottom:6px!important;}
.section-head h2{font-size:clamp(18px,1.35vw,25px)!important;line-height:1!important;}
.section-head button{font-size:clamp(13px,.85vw,16px)!important;}
.channel-row,.poster-row{display:flex!important;gap:clamp(7px,.7vw,12px)!important;overflow-x:auto!important;overflow-y:hidden!important;padding:2px 0 6px!important;scrollbar-width:thin;}
.channel-row .card,.card.channel-card{flex:0 0 clamp(145px,11.7vw,220px)!important;width:clamp(145px,11.7vw,220px)!important;height:clamp(82px,7.2vw,124px)!important;border-radius:12px!important;}
.poster-row .poster-card,.poster-row .card,.poster{flex:0 0 clamp(75px,5.9vw,118px)!important;width:clamp(75px,5.9vw,118px)!important;height:clamp(105px,8.8vw,168px)!important;border-radius:11px!important;}
.dual{display:grid!important;grid-template-columns:minmax(0,1fr) minmax(0,1fr)!important;gap:18px!important;align-items:start!important;}
.grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(clamp(130px,10vw,190px),1fr))!important;gap:10px!important;}
.grid .card{width:100%!important;min-height:clamp(96px,8vw,136px)!important;}

#playerBox.player-overlay.hidden{display:none!important;}
#playerBox.player-overlay:not(.hidden){display:flex!important;opacity:1!important;pointer-events:auto!important;position:fixed!important;inset:0!important;z-index:99999!important;background:rgba(0,0,0,.96)!important;flex-direction:column!important;height:100vh!important;width:100vw!important;padding:18px!important;overflow:hidden!important;}
.player-overlay-head{height:54px!important;display:flex!important;align-items:center!important;justify-content:space-between!important;color:#fff!important;gap:12px!important;}
.player-overlay-head b{font-size:18px!important;display:block!important;}
.player-overlay-head span{font-size:13px!important;color:#9fb0d0!important;}
.player-overlay-head button{height:38px!important;border:1px solid rgba(255,255,255,.15)!important;border-radius:10px!important;background:#111827!important;color:#fff!important;padding:0 14px!important;cursor:pointer!important;font-weight:800!important;}
#playerBox.player-overlay video{display:block!important;width:100%!important;height:calc(100vh - 90px)!important;background:#000!important;border-radius:14px!important;object-fit:contain!important;}
#playerBox.player-overlay #nowRelated{display:none!important;}

@media (max-width: 1180px){
    .tv-shell{grid-template-columns:190px minmax(0,1fr)!important;}
    .brand-name{font-size:24px!important;}
    .menu-item{height:48px!important;font-size:14px!important;}
    .top-mac-box{display:none!important;}
    .search{width:min(520px,42vw)!important;}
    .dual{grid-template-columns:1fr!important;}
}
@media (max-width: 760px){
    html,body{overflow:auto!important;}
    .tv-shell{display:block!important;height:auto!important;max-height:none!important;}
    .sidebar{height:auto!important;display:flex!important;align-items:center!important;gap:10px!important;overflow-x:auto!important;border-right:0!important;border-bottom:1px solid rgba(255,255,255,.08)!important;}
    .brand{min-width:150px!important;}
    .menu{display:flex!important;gap:8px!important;margin:0!important;}
    .menu-item{min-width:112px!important;}
    .main{height:auto!important;min-height:100vh!important;overflow:visible!important;}
    .topbar{flex-direction:column!important;align-items:stretch!important;}
    .search{width:100%!important;}
    .top-actions{justify-content:flex-start!important;overflow-x:auto!important;}
    .hero{height:220px!important;}
    .hero-text{max-width:90%!important;}
    .dual{grid-template-columns:1fr!important;}
}

/* ==========================================================
   FINAL MULTI PERFIL + BANNER + CHATBOT INTELIGENTE
   Mantém o player que já funcionava e corrige apenas layout/dados.
========================================================== */
.hidden-main-mac{display:none!important;}
.topbar{position:sticky;top:0;z-index:15;background:linear-gradient(90deg,rgba(4,8,18,.96),rgba(18,8,54,.96));padding-right:10px;}
.top-actions{display:flex!important;align-items:center!important;gap:10px!important;flex-wrap:nowrap!important;min-width:0!important;}
.top-profile-wrap{height:42px!important;display:flex!important;align-items:center!important;gap:8px!important;padding:0 10px!important;border-radius:13px!important;background:rgba(12,18,36,.95)!important;border:1px solid rgba(141,92,255,.35)!important;white-space:nowrap!important;box-shadow:0 0 22px rgba(91,44,255,.10)!important;}
.top-profile-wrap.hidden{display:none!important;}
.top-profile-wrap label{font-size:13px!important;color:#d9e4ff!important;font-weight:900!important;}
.top-profile-wrap select{height:32px!important;min-width:150px!important;max-width:260px!important;border:0!important;background:rgba(34,197,94,.12)!important;color:#29ff78!important;border-radius:9px!important;padding:0 28px 0 10px!important;font-weight:900!important;outline:none!important;}
.top-profile-wrap option{background:#0b1020;color:#fff;}
.top-chatbot.chatbot-mini{position:static!important;width:42px!important;height:42px!important;display:grid!important;place-items:center!important;border-radius:14px!important;background:rgba(34,197,94,.15)!important;border:1px solid rgba(34,197,94,.55)!important;color:#29ff78!important;text-decoration:none!important;font-size:22px!important;box-shadow:0 0 26px rgba(34,197,94,.18)!important;}
.top-chatbot.chatbot-mini.hidden{display:none!important;}
.chatbot-mini:not(.top-chatbot){display:none!important;}
.top-icon-btn{width:42px!important;height:42px!important;border-radius:14px!important;background:rgba(12,18,36,.96)!important;border:1px solid rgba(255,255,255,.12)!important;color:#fff!important;font-size:18px!important;cursor:pointer!important;}
.top-icon-btn:hover,.top-chatbot:hover{transform:translateY(-1px);filter:brightness(1.12);}
.pill{height:42px!important;border-radius:13px!important;font-weight:900!important;white-space:nowrap!important;}
.hero{width:100%!important;height:clamp(230px,31vh,360px)!important;min-height:230px!important;border-radius:18px!important;background-size:contain!important;background-position:center!important;background-repeat:no-repeat!important;background-color:#050914!important;position:relative!important;overflow:hidden!important;display:flex!important;align-items:center!important;}
.hero:before,.hero:after,.hero-epg{display:none!important;content:none!important;}
.hero-banner-img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:contain!important;background:#050914!important;z-index:0!important;opacity:.95!important;}
.hero-text{position:relative!important;z-index:2!important;max-width:min(560px,48%)!important;padding:clamp(20px,2.2vw,36px)!important;background:linear-gradient(90deg,rgba(3,7,18,.88),rgba(3,7,18,.50),transparent)!important;border-radius:18px!important;}
.hero h1{font-size:clamp(28px,2.35vw,44px)!important;line-height:1.05!important;}
.hero p{font-size:clamp(14px,1vw,18px)!important;}
.home{height:calc(100vh - 112px)!important;overflow-y:auto!important;overflow-x:hidden!important;padding-right:10px!important;}
.channel-row{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;height:auto!important;max-height:none!important;gap:10px!important;overflow:visible!important;}
.poster-row{grid-template-columns:repeat(auto-fit,minmax(86px,1fr))!important;height:auto!important;max-height:none!important;gap:8px!important;overflow:visible!important;}
.dual{grid-template-columns:1fr 1fr!important;gap:18px!important;}
.channel-row .card{min-height:86px!important;}
.channel-row .card img{height:48px!important;}
.poster-row .card{height:122px!important;min-height:122px!important;}
.section{margin-top:12px!important;}
.settings-profiles-list{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(180px,1fr))!important;gap:10px!important;}
.settings-profile-item{border:1px solid rgba(255,255,255,.10);background:#111a33;color:#fff;border-radius:13px;padding:12px;text-align:left;cursor:pointer;}
.settings-profile-item.active{border-color:#29ff78;background:rgba(34,197,94,.11);}
.settings-profile-item b{display:block;font-size:14px;white-space:nowrap;overflow:hidden;text-overflow:ellipsis;}
.settings-profile-item small{display:block;color:#aeb9d8;margin-top:4px;}
@media(max-width:1280px){
  .sidebar{width:230px!important}.main{padding-left:14px!important}.top-profile-wrap select{max-width:180px!important}.dual{grid-template-columns:1fr!important}.poster-row{grid-template-columns:repeat(auto-fit,minmax(92px,120px))!important;}
}
@media(max-width:900px){
  .tv-shell{display:block!important;height:auto!important}.sidebar{width:100%!important;position:relative!important}.main{padding:12px!important}.topbar{height:auto!important;display:block!important}.top-actions{margin-top:10px;overflow-x:auto}.search{width:100%!important}.hero{height:220px!important}.hero-text{max-width:92%!important}.channel-row,.poster-row{display:flex!important;overflow-x:auto!important}.channel-row .card{flex:0 0 160px}.poster-row .card{flex:0 0 105px}.home{height:auto!important;overflow:visible!important;}
}

/* ==========================================================
   AJUSTE FINAL - PADRONIZAÇÃO DE CAPAS FILMES/SÉRIES
   Todas as capas de filmes e séries usam o mesmo tamanho dos destaques.
   Não altera player, APIs, perfis ou reprodução.
========================================================== */
:root{
  --std-poster-w: clamp(92px, 6.2vw, 118px);
  --std-poster-h: clamp(126px, 8.2vw, 156px);
  --std-poster-gap: clamp(7px, .55vw, 10px);
}

/* Linhas da tela inicial */
#homeMovies,
#homeSeries,
.poster-row{
  display:flex!important;
  flex-wrap:nowrap!important;
  align-items:stretch!important;
  gap:var(--std-poster-gap)!important;
  height:calc(var(--std-poster-h) + 4px)!important;
  min-height:calc(var(--std-poster-h) + 4px)!important;
  max-height:calc(var(--std-poster-h) + 4px)!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:2px 0 6px!important;
  scrollbar-width:thin!important;
}

/* Grids de Filmes/Séries/Favoritos/Episódios também seguem o mesmo padrão */
.grid,
#grid,
#favoritesGrid,
#episodes{
  display:grid!important;
  grid-template-columns:repeat(auto-fill, minmax(var(--std-poster-w), var(--std-poster-w)))!important;
  justify-content:start!important;
  align-items:start!important;
  gap:var(--std-poster-gap)!important;
}

/* Card padrão de filme/série em qualquer lugar */
.poster-row .card,
.poster-row .card.poster,
.grid .card.poster,
#grid .card.poster,
#favoritesGrid .card.poster,
#episodes .card.poster,
.card.poster{
  width:var(--std-poster-w)!important;
  min-width:var(--std-poster-w)!important;
  max-width:var(--std-poster-w)!important;
  height:var(--std-poster-h)!important;
  min-height:var(--std-poster-h)!important;
  max-height:var(--std-poster-h)!important;
  flex:0 0 var(--std-poster-w)!important;
  border-radius:10px!important;
  overflow:hidden!important;
  position:relative!important;
  background:#0d1428!important;
}

/* Imagem da capa sempre ocupando o card inteiro, sem variar altura */
.poster-row .card img,
.poster-row .card.poster img,
.grid .card.poster img,
#grid .card.poster img,
#favoritesGrid .card.poster img,
#episodes .card.poster img,
.card.poster img{
  width:100%!important;
  height:100%!important;
  min-height:100%!important;
  max-height:100%!important;
  object-fit:cover!important;
  padding:0!important;
  margin:0!important;
  display:block!important;
  background:#070b18!important;
}

/* Texto padronizado e compacto */
.poster-row .card div,
.poster-row .card.poster div,
.grid .card.poster div,
#grid .card.poster div,
#favoritesGrid .card.poster div,
#episodes .card.poster div,
.card.poster div{
  position:absolute!important;
  z-index:2!important;
  left:6px!important;
  right:6px!important;
  bottom:5px!important;
  padding:0!important;
}

.poster-row .card b,
.poster-row .card.poster b,
.grid .card.poster b,
#grid .card.poster b,
#favoritesGrid .card.poster b,
#episodes .card.poster b,
.card.poster b{
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  font-size:clamp(8px, .68vw, 10px)!important;
  line-height:1.08!important;
  text-transform:uppercase!important;
  color:#fff!important;
  text-shadow:0 2px 8px rgba(0,0,0,.75)!important;
}

.poster-row .card small,
.poster-row .card.poster small,
.grid .card.poster small,
#grid .card.poster small,
#favoritesGrid .card.poster small,
#episodes .card.poster small,
.card.poster small{
  display:block!important;
  margin-top:2px!important;
  font-size:clamp(7px, .55vw, 8px)!important;
  color:#c7d2fe!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

/* Estrela dos favoritos no mesmo tamanho e posição */
.poster-row .card .fav-btn,
.grid .card.poster .fav-btn,
.card.poster .fav-btn{
  width:28px!important;
  height:28px!important;
  right:7px!important;
  top:7px!important;
  font-size:17px!important;
}

@media(max-width:1280px){
  :root{--std-poster-w:94px;--std-poster-h:136px;}
}
@media(max-width:900px){
  :root{--std-poster-w:92px;--std-poster-h:134px;}
  .grid,#grid,#favoritesGrid,#episodes{display:flex!important;overflow-x:auto!important;}
}

/* ==========================================================
   CORREÇÃO FINAL - CATEGORIAS/CARDS/BUSCA/BANNER
   Ajuste visual sem mexer na reprodução, APIs, perfis ou player.
========================================================== */

/* Busca 50% menor e adaptável */
.topbar .search,
.search{
  width:min(310px,24vw)!important;
  min-width:240px!important;
  max-width:340px!important;
  height:44px!important;
}

/* Banner ocupando toda a área disponível */
.hero{
  width:100%!important;
  height:clamp(260px,34vh,420px)!important;
  min-height:260px!important;
  background-size:cover!important;
  background-position:center!important;
  background-repeat:no-repeat!important;
  background-color:#050914!important;
}
.hero-banner-img,
.hero img.hero-banner-img,
#heroBannerImg,
#banner img,
.banner img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  display:block!important;
}
.hero-text{
  max-width:min(560px,42%)!important;
}

/* Corrige página/lista de canais: categorias não podem ficar amontoadas */
#grid.grid-by-category,
.grid.grid-by-category{
  display:block!important;
  width:100%!important;
  max-width:100%!important;
  gap:0!important;
}

#grid.grid-by-category .category-block,
.grid.grid-by-category .category-block{
  display:block!important;
  width:100%!important;
  margin:0 0 22px!important;
  padding:0!important;
  clear:both!important;
  overflow:visible!important;
}

#grid.grid-by-category .category-block-head,
.grid.grid-by-category .category-block-head{
  display:flex!important;
  align-items:center!important;
  justify-content:space-between!important;
  gap:12px!important;
  min-height:34px!important;
  height:auto!important;
  margin:0 0 10px!important;
  padding:0 2px!important;
  position:relative!important;
  z-index:1!important;
}

#grid.grid-by-category .category-block-head h2,
.grid.grid-by-category .category-block-head h2{
  font-size:clamp(18px,1.25vw,24px)!important;
  line-height:1.15!important;
  margin:0!important;
  padding:0!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  max-width:calc(100% - 120px)!important;
}

#grid.grid-by-category .category-block-head button,
.grid.grid-by-category .category-block-head button{
  position:static!important;
  width:auto!important;
  height:32px!important;
  min-width:92px!important;
  border-radius:999px!important;
  padding:0 12px!important;
  font-size:13px!important;
  flex:0 0 auto!important;
  transform:none!important;
  margin:0!important;
  z-index:2!important;
}

#grid.grid-by-category .category-row,
.grid.grid-by-category .category-row{
  display:grid!important;
  grid-template-columns:repeat(auto-fill,minmax(150px,1fr))!important;
  gap:10px!important;
  width:100%!important;
  height:auto!important;
  max-height:none!important;
  min-height:0!important;
  overflow:visible!important;
  padding:0!important;
  align-items:stretch!important;
}

/* Cards de canais padronizados e sem sobreposição */
#grid.grid-by-category .category-row .card,
.grid.grid-by-category .category-row .card,
.card.channel-card,
.channel-row .card{
  position:relative!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  height:138px!important;
  min-height:138px!important;
  max-height:138px!important;
  border-radius:12px!important;
  overflow:hidden!important;
  padding:0!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
}

#grid.grid-by-category .category-row .card img,
.grid.grid-by-category .category-row .card img,
.card.channel-card img,
.channel-row .card img{
  width:100%!important;
  height:62px!important;
  max-height:62px!important;
  object-fit:contain!important;
  padding:10px 28px 4px!important;
  margin:0 auto!important;
  display:block!important;
}

#grid.grid-by-category .category-row .card div,
.grid.grid-by-category .category-row .card div,
.card.channel-card div,
.channel-row .card div{
  position:static!important;
  padding:6px 10px 10px!important;
  text-align:center!important;
  min-height:44px!important;
  display:block!important;
}

#grid.grid-by-category .category-row .card b,
.grid.grid-by-category .category-row .card b,
.card.channel-card b,
.channel-row .card b{
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  font-size:12px!important;
  line-height:1.15!important;
  text-align:center!important;
}

#grid.grid-by-category .category-row .card small,
.grid.grid-by-category .category-row .card small,
.card.channel-card small,
.channel-row .card small{
  display:block!important;
  font-size:10px!important;
  line-height:1.1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  margin-top:4px!important;
  text-align:center!important;
}

/* Remove bolhas/posições antigas que estavam causando amontoamento visual */
#grid.grid-by-category .category-block-head:before,
#grid.grid-by-category .category-block-head:after,
.grid.grid-by-category .category-block-head:before,
.grid.grid-by-category .category-block-head:after{
  display:none!important;
  content:none!important;
}

/* Categorias superiores mais compactas */
.cats{
  display:flex!important;
  gap:8px!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  padding:0 0 10px!important;
  margin-bottom:10px!important;
  scrollbar-width:thin!important;
}
.cats button{
  height:36px!important;
  padding:0 14px!important;
  border-radius:999px!important;
  font-size:13px!important;
  line-height:1!important;
  flex:0 0 auto!important;
  white-space:nowrap!important;
}

@media(max-width:1280px){
  .topbar .search,.search{width:min(280px,25vw)!important;min-width:210px!important;}
  .hero{height:clamp(230px,30vh,340px)!important;min-height:230px!important;}
  #grid.grid-by-category .category-row,.grid.grid-by-category .category-row{grid-template-columns:repeat(auto-fill,minmax(135px,1fr))!important;gap:8px!important;}
  #grid.grid-by-category .category-row .card,.grid.grid-by-category .category-row .card{height:124px!important;min-height:124px!important;max-height:124px!important;}
}

@media(max-width:900px){
  .topbar .search,.search{width:100%!important;max-width:none!important;}
  .hero{height:220px!important;min-height:220px!important;}
  #grid.grid-by-category .category-row,.grid.grid-by-category .category-row{display:grid!important;grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}

/* =========================================================
   FINAL LIMPO SEM BUGS VISUAIS - grid, banner e responsivo
   ========================================================= */
html, body{
  overflow:hidden!important;
}
.tv-shell{
  height:100vh!important;
  grid-template-columns:clamp(220px,18vw,290px) minmax(0,1fr)!important;
  padding:clamp(14px,1.35vw,24px)!important;
  gap:clamp(14px,1.25vw,22px)!important;
}
.main{
  min-width:0!important;
  width:100%!important;
  overflow:hidden!important;
}
.topbar{
  height:58px!important;
  gap:12px!important;
  margin-bottom:14px!important;
}
.topbar .search,
.search{
  width:clamp(260px,30vw,430px)!important;
  max-width:430px!important;
  min-width:240px!important;
  flex:0 1 430px!important;
  height:48px!important;
}
.top-actions{
  margin-left:auto!important;
  flex:0 0 auto!important;
  gap:10px!important;
}
.top-profile-wrap{
  max-width:360px!important;
}
.top-profile-wrap select{
  max-width:250px!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
}

/* Banner deve ocupar o container inteiro, sem ficar pequeno no meio */
.hero{
  width:100%!important;
  height:clamp(235px,31vh,360px)!important;
  min-height:235px!important;
  max-height:360px!important;
  border-radius:16px!important;
  position:relative!important;
  overflow:hidden!important;
  background-color:#050814!important;
  background-size:cover!important;
  background-position:center!important;
}
.hero:before{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  z-index:1!important;
  background:linear-gradient(90deg,rgba(3,7,19,.96) 0%,rgba(3,7,19,.78) 32%,rgba(3,7,19,.20) 70%,rgba(3,7,19,.65) 100%)!important;
  pointer-events:none!important;
}
.hero-banner-img,
#heroBannerImg{
  position:absolute!important;
  inset:0!important;
  z-index:0!important;
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  object-position:center!important;
  display:block!important;
  opacity:1!important;
}
.hero-text{
  position:absolute!important;
  z-index:2!important;
  left:clamp(26px,3vw,48px)!important;
  top:50%!important;
  transform:translateY(-50%)!important;
  max-width:min(520px,46%)!important;
}
.hero h1{font-size:clamp(30px,2.6vw,48px)!important;line-height:1.05!important;}
.hero p{font-size:clamp(15px,1.15vw,20px)!important;}

/* Cards da home bem espaçados e sem amontoar */
.section{margin-top:14px!important;}
.section-head{height:28px!important;margin-bottom:8px!important;}
.section-head h2{font-size:clamp(18px,1.35vw,24px)!important;line-height:1!important;}
.channel-row{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(170px,1fr))!important;
  gap:10px!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
}
.channel-row .card{
  height:112px!important;
  min-height:112px!important;
  max-height:112px!important;
  display:flex!important;
  flex-direction:column!important;
  justify-content:center!important;
  padding:0!important;
}
.channel-row .card img{
  height:56px!important;
  width:100%!important;
  object-fit:contain!important;
  padding:8px 28px 2px!important;
}
.channel-row .card div{
  position:static!important;
  min-height:34px!important;
  padding:3px 10px 9px!important;
}
.channel-row .card b{font-size:12px!important;line-height:1.15!important;}
.poster-row{
  display:grid!important;
  grid-template-columns:repeat(auto-fit,minmax(95px,1fr))!important;
  gap:8px!important;
  height:auto!important;
  max-height:none!important;
  overflow:visible!important;
}
.poster-row .card{
  height:145px!important;
  min-height:145px!important;
  max-height:145px!important;
}
.poster-row .card img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  padding:0!important;
}
.dual{gap:18px!important;}

/* Página de listagem: grid único, sem cabeçalhos sobrepostos */
.list-view,
.episodes-view{
  height:calc(100vh - 92px)!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding-right:10px!important;
  scrollbar-width:thin!important;
}
.list-head{
  margin-bottom:10px!important;
}
.list-head h1{
  font-size:clamp(28px,2.2vw,40px)!important;
}
.cats{
  display:flex!important;
  flex-wrap:nowrap!important;
  overflow-x:auto!important;
  overflow-y:hidden!important;
  gap:8px!important;
  margin-bottom:12px!important;
  padding-bottom:8px!important;
}
.cats button{
  flex:0 0 auto!important;
  height:36px!important;
  padding:0 14px!important;
  font-size:13px!important;
  border-radius:999px!important;
  white-space:nowrap!important;
}
.grid,
#grid,
#favoritesGrid,
#episodes{
  display:grid!important;
  grid-template-columns:repeat(auto-fill,minmax(150px,1fr))!important;
  gap:12px!important;
  width:100%!important;
  align-items:start!important;
  overflow:visible!important;
}
.grid.grid-by-category,
#grid.grid-by-category{
  display:grid!important;
  grid-template-columns:repeat(auto-fill,minmax(150px,1fr))!important;
  gap:12px!important;
}
.category-block,
.category-block-head,
.category-row{
  display:contents!important;
}
.category-block-head h2,
.category-block-head button{
  display:none!important;
}
.grid .card{
  position:relative!important;
  width:100%!important;
  min-width:0!important;
  max-width:none!important;
  margin:0!important;
  overflow:hidden!important;
  border-radius:12px!important;
  display:flex!important;
  flex-direction:column!important;
}
.grid .card:not(.poster){
  height:142px!important;
  min-height:142px!important;
  max-height:142px!important;
  justify-content:center!important;
}
.grid .card:not(.poster) img{
  width:100%!important;
  height:72px!important;
  object-fit:contain!important;
  background:#060a18!important;
  padding:10px 24px 4px!important;
  flex:0 0 auto!important;
}
.grid .card:not(.poster) div{
  position:static!important;
  padding:6px 10px 10px!important;
  min-height:48px!important;
  text-align:center!important;
}
.grid .card:not(.poster) b{
  font-size:13px!important;
  line-height:1.15!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
  text-align:center!important;
}
.grid .card:not(.poster) small{
  font-size:10px!important;
  line-height:1.1!important;
  white-space:nowrap!important;
  overflow:hidden!important;
  text-overflow:ellipsis!important;
  display:block!important;
  text-align:center!important;
  margin-top:4px!important;
}
.grid .card.poster{
  height:245px!important;
  min-height:245px!important;
  max-height:245px!important;
}
.grid .card.poster img{
  width:100%!important;
  height:100%!important;
  object-fit:cover!important;
  padding:0!important;
  background:#060a18!important;
}
.grid .card.poster div{
  position:absolute!important;
  left:0!important;
  right:0!important;
  bottom:0!important;
  z-index:2!important;
  padding:32px 10px 10px!important;
  background:linear-gradient(180deg,transparent,rgba(0,0,0,.86))!important;
}
.grid .card.poster b{
  font-size:13px!important;
  line-height:1.15!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}
.grid .card.poster small{font-size:10px!important;}
.fav-btn{
  top:8px!important;
  right:8px!important;
  width:30px!important;
  height:30px!important;
  font-size:16px!important;
}

/* remove qualquer resíduo visual que possa criar círculos/títulos flutuantes */
.category-block:before,.category-block:after,
.category-row:before,.category-row:after,
.grid:before,.grid:after{
  display:none!important;
  content:none!important;
}

@media(max-width:1366px){
  .tv-shell{grid-template-columns:220px minmax(0,1fr)!important;padding:16px!important;}
  .menu-item{height:48px!important;font-size:18px!important;}
  .brand-name{font-size:26px!important;}
  .hero{height:245px!important;min-height:245px!important;}
  .channel-row{grid-template-columns:repeat(auto-fit,minmax(150px,1fr))!important;}
  .poster-row{grid-template-columns:repeat(auto-fit,minmax(86px,1fr))!important;}
  .grid,#grid,#favoritesGrid,#episodes{grid-template-columns:repeat(auto-fill,minmax(132px,1fr))!important;gap:10px!important;}
  .grid .card:not(.poster){height:128px!important;min-height:128px!important;max-height:128px!important;}
  .grid .card.poster{height:218px!important;min-height:218px!important;max-height:218px!important;}
}
@media(max-width:900px){
  html,body{overflow:auto!important;}
  .tv-shell{display:block!important;height:auto!important;padding:14px!important;}
  .sidebar{border-right:0!important;padding-right:0!important;}
  .topbar{height:auto!important;flex-direction:column!important;align-items:stretch!important;}
  .topbar .search,.search{width:100%!important;max-width:none!important;}
  .top-actions{margin-left:0!important;flex-wrap:wrap!important;}
  .hero{height:230px!important;min-height:230px!important;}
  .hero-text{left:20px!important;max-width:70%!important;}
  .dual{grid-template-columns:1fr!important;}
  .grid,#grid,#favoritesGrid,#episodes{grid-template-columns:repeat(2,minmax(0,1fr))!important;}
}

/* ==========================================================
   REBRAND PROFISSIONAL FINAL - sem alterar a reprodução
   - robô apenas visual
   - detalhes de filmes/séries estilo premium
   - cards padronizados
   - adultos fora das áreas públicas via JS
========================================================== */
:root{
  --rb-bg:#020611;
  --rb-panel:rgba(9,14,31,.92);
  --rb-panel2:rgba(15,22,43,.96);
  --rb-border:rgba(255,255,255,.10);
  --rb-text:#f7fbff;
  --rb-muted:#9ca8c8;
  --rb-purple:#7b35ff;
  --rb-purple2:#a653ff;
  --rb-green:#21ff87;
}
body{background:radial-gradient(circle at 72% 0%,rgba(106,44,255,.20),transparent 38%),var(--rb-bg)!important;color:var(--rb-text)!important;}
.tv-shell{grid-template-columns:230px minmax(0,1fr)!important;gap:20px!important;padding:20px 22px 26px!important;height:100vh!important;}
.sidebar{padding-right:18px!important;}
.main{min-width:0!important;overflow:auto!important;padding:0 4px 0 10px!important;}
.topbar{height:62px!important;gap:16px!important;margin-bottom:14px!important;align-items:center!important;}
.search{width:min(380px,32vw)!important;max-width:380px!important;min-width:260px!important;height:48px!important;border-radius:16px!important;background:rgba(10,16,33,.90)!important;}
.top-actions{display:flex!important;align-items:center!important;gap:10px!important;margin-left:auto!important;}
.top-profile-wrap{height:46px!important;border-radius:16px!important;background:rgba(13,20,42,.88)!important;border:1px solid rgba(123,53,255,.38)!important;padding:0 10px!important;display:flex!important;align-items:center!important;gap:9px!important;}
.top-profile-wrap label{font-size:15px!important;font-weight:900!important;color:#fff!important;}
.top-profile-wrap select{height:34px!important;max-width:230px!important;border:0!important;border-radius:11px!important;background:rgba(31,255,135,.13)!important;color:var(--rb-green)!important;font-weight:1000!important;padding:0 12px!important;outline:none!important;}
.chatbot-mini.top-chatbot{position:static!important;width:44px!important;height:44px!important;display:inline-grid!important;place-items:center!important;border-radius:50%!important;border:1px solid rgba(31,255,135,.38)!important;background:rgba(31,255,135,.08)!important;font-size:22px!important;line-height:1!important;box-shadow:0 0 20px rgba(31,255,135,.12)!important;cursor:default!important;pointer-events:none!important;user-select:none!important;text-decoration:none!important;}
.chatbot-mini.top-chatbot.hidden{display:none!important;}
.top-icon-btn,.round{width:44px!important;height:44px!important;border-radius:14px!important;background:rgba(13,20,42,.86)!important;border:1px solid var(--rb-border)!important;color:#fff!important;display:inline-grid!important;place-items:center!important;font-size:18px!important;box-shadow:none!important;}
.pill{height:46px!important;border-radius:14px!important;background:rgba(13,20,42,.94)!important;border:1px solid rgba(255,255,255,.08)!important;padding:0 18px!important;font-weight:900!important;white-space:nowrap!important;}
.pill i{background:var(--rb-green)!important;box-shadow:0 0 18px var(--rb-green)!important;}

/* Banner hero: ocupa largura, sem ficar como imagem pequena no centro */
.hero{width:100%!important;height:clamp(250px,32vh,360px)!important;border-radius:18px!important;overflow:hidden!important;background:#070b18!important;border:1px solid rgba(255,255,255,.09)!important;box-shadow:0 26px 80px rgba(0,0,0,.34)!important;position:relative!important;display:block!important;}
.hero-banner-img{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;object-fit:cover!important;object-position:center!important;display:block!important;opacity:.98!important;filter:saturate(1.06) contrast(1.02)!important;}
.hero:after{display:none!important;}
.hero-text{position:absolute!important;z-index:3!important;left:34px!important;top:50%!important;transform:translateY(-50%)!important;padding:0!important;max-width:520px!important;}
.hero .live{padding:8px 13px!important;border-radius:10px!important;margin-bottom:20px!important;font-size:12px!important;background:#dc2738!important;box-shadow:0 12px 30px rgba(220,39,56,.22)!important;}
.hero h1{font-size:clamp(30px,3vw,48px)!important;line-height:1.02!important;letter-spacing:-.02em!important;text-shadow:0 6px 32px rgba(0,0,0,.70)!important;}
.hero p{font-size:16px!important;color:#e6edff!important;text-shadow:0 5px 22px rgba(0,0,0,.68)!important;}
.hero button{height:50px!important;border-radius:12px!important;padding:0 24px!important;background:linear-gradient(135deg,var(--rb-purple),var(--rb-purple2))!important;box-shadow:0 18px 42px rgba(123,53,255,.32)!important;}
.dots{display:none!important;}

/* Canais (Live Experience) */
.section{margin-top:18px!important;}
.section-head{height:30px!important;margin-bottom:10px!important;}
.section-head h2{font-size:20px!important;letter-spacing:-.02em!important;}
.section-head h2:before{content:'•';color:var(--rb-purple);margin-right:8px;}
.section-head button{font-size:14px!important;color:#a865ff!important;}
.channel-row{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(156px,1fr))!important;gap:12px!important;height:auto!important;max-height:none!important;overflow:visible!important;}
.channel-row .card{min-height:132px!important;border-radius:14px!important;padding:14px!important;display:flex!important;flex-direction:column!important;align-items:center!important;justify-content:center!important;background:linear-gradient(180deg,rgba(17,26,51,.96),rgba(8,13,27,.96))!important;border:1px solid rgba(255,255,255,.09)!important;}
.channel-row .card:before{content:''!important;display:none!important;}
.channel-row .card img{width:78px!important;height:58px!important;object-fit:contain!important;padding:0!important;margin:0 0 10px!important;background:transparent!important;}
.channel-row .card div{padding:0!important;text-align:center!important;width:100%!important;}
.channel-row .card b{font-size:13px!important;line-height:1.15!important;white-space:normal!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;min-height:30px!important;}
.channel-row .card small{display:block!important;margin-top:5px!important;font-size:11px!important;color:#a768ff!important;white-space:nowrap!important;overflow:hidden!important;text-overflow:ellipsis!important;}
.channel-row .card small:after{display:none!important;}

/* Filmes e Séries (Netflix Style Posters) */
.poster-row{display:grid!important;grid-template-columns:repeat(auto-fit,minmax(110px,1fr))!important;gap:12px!important;height:auto!important;max-height:none!important;overflow:visible!important;}
.poster-row .card, .grid .card.poster {
    transition: transform 0.3s cubic-bezier(0.25, 0.46, 0.45, 0.94), box-shadow 0.3s ease!important;
}
.poster-row .card{aspect-ratio:2/3!important;min-height:0!important;border-radius:12px!important;}
.poster-row .card img{width:100%!important;height:100%!important;object-fit:cover!important;padding:0!important;}
.dual{display:grid!important;grid-template-columns:1fr 1fr!important;gap:20px!important;align-items:start!important;}

/* Listagem geral: sem sobreposição e com proporção padronizada */
.list-view,.favoritesView,.episodes-view{min-width:0!important;}
.cats{display:flex!important;gap:8px!important;overflow-x:auto!important;overflow-y:hidden!important;padding:0 0 10px!important;margin-bottom:10px!important;scrollbar-width:thin!important;}
.cats button{flex:0 0 auto!important;border-radius:999px!important;height:38px!important;padding:0 16px!important;white-space:nowrap!important;font-size:13px!important;background:rgba(17,26,51,.94)!important;border:1px solid rgba(255,255,255,.10)!important;color:#fff!important;}
.cats button.active{background:linear-gradient(135deg,var(--rb-purple),var(--rb-purple2))!important;}
.grid{display:grid!important;grid-template-columns:repeat(auto-fill,minmax(150px,1fr))!important;gap:14px!important;align-items:start!important;overflow:visible!important;}
.grid .card{border-radius:14px!important;background:linear-gradient(180deg,rgba(17,26,51,.96),rgba(8,13,27,.96))!important;border:1px solid rgba(255,255,255,.09)!important;min-width:0!important;position:relative!important;}
.grid .card img{width:100%!important;height:88px!important;object-fit:contain!important;padding:10px!important;background:#060a18!important;display:block!important;}
.grid .card.poster{aspect-ratio:2/3!important;display:block!important;overflow:hidden!important;}
.grid .card.poster img{height:100%!important;object-fit:cover!important;padding:0!important;background:#060a18!important;}
.grid .card div{padding:10px!important;}
.grid .card b{font-size:13px!important;line-height:1.18!important;display:-webkit-box!important;-webkit-line-clamp:2!important;-webkit-box-orient:vertical!important;overflow:hidden!important;}
.grid .card small{font-size:11px!important;color:#9faad0!important;}
.fav-btn{width:34px!important;height:34px!important;border-radius:50%!important;right:10px!important;top:10px!important;background:rgba(5,8,18,.70)!important;border:1px solid rgba(255,255,255,.16)!important;backdrop-filter:blur(10px)!important;}

/* Efeito Netflix ao passar o mouse */
.poster-row .card:hover, .grid .card.poster:hover {
    transform: scale(1.08)!important;
    z-index: 10;
    box-shadow: 0 10px 25px rgba(0,0,0,0.6)!important;
}

/* Tela de detalhes: rebrand premium, mais profissional e proporcional */
.details-view{padding:10px 0 28px!important;overflow:auto!important;}
.details-view .back{height:42px!important;border-radius:12px!important;background:rgba(17,26,51,.96)!important;border:1px solid rgba(255,255,255,.08)!important;color:#fff!important;font-weight:900!important;margin-bottom:16px!important;}
.details-hero{position:relative!important;isolation:isolate!important;min-height:clamp(330px,48vh,520px)!important;border-radius:24px!important;overflow:hidden!important;border:1px solid rgba(255,255,255,.10)!important;background:linear-gradient(135deg,rgba(18,22,48,.96),rgba(13,7,44,.94))!important;box-shadow:0 32px 90px rgba(0,0,0,.35)!important;display:grid!important;grid-template-columns:minmax(210px,310px) minmax(0,1fr)!important;gap:34px!important;align-items:center!important;padding:38px!important;}
.details-hero:before{content:""!important;position:absolute!important;inset:-18px!important;background:var(--details-bg) center/cover no-repeat!important;filter:blur(28px) brightness(.42) saturate(1.12)!important;opacity:.55!important;z-index:-2!important;}
.details-hero:after{content:""!important;position:absolute!important;inset:0!important;background:linear-gradient(90deg,rgba(5,9,21,.92),rgba(11,8,38,.80),rgba(12,7,45,.72))!important;z-index:-1!important;}
.details-poster{width:100%!important;max-width:310px!important;justify-self:center!important;}
.details-poster img{width:100%!important;aspect-ratio:2/3!important;height:auto!important;max-height:420px!important;object-fit:cover!important;border-radius:18px!important;box-shadow:0 24px 70px rgba(0,0,0,.48)!important;background:#070b18!important;}
.details-info{min-width:0!important;}
.details-badge{display:inline-flex!important;align-items:center!important;height:34px!important;border-radius:999px!important;background:rgba(123,53,255,.25)!important;border:1px solid rgba(166,83,255,.48)!important;color:#fff!important;padding:0 16px!important;font-weight:1000!important;margin-bottom:18px!important;}
.details-info h1{font-size:clamp(34px,4.4vw,74px)!important;line-height:.98!important;letter-spacing:-.04em!important;margin:0 0 18px!important;text-shadow:0 8px 34px rgba(0,0,0,.55)!important;}
.details-info p{font-size:17px!important;color:#d4dcf5!important;max-width:760px!important;line-height:1.55!important;}
#detailsMeta{color:#aeb8d7!important;text-transform:uppercase!important;letter-spacing:.02em!important;}
.details-actions{display:flex!important;gap:12px!important;flex-wrap:wrap!important;margin-top:22px!important;}
.details-actions button{height:48px!important;border-radius:13px!important;padding:0 20px!important;border:0!important;background:linear-gradient(135deg,var(--rb-purple),var(--rb-purple2))!important;color:#fff!important;font-weight:1000!important;box-shadow:0 18px 42px rgba(123,53,255,.25)!important;}
.details-actions button:nth-child(2){background:rgba(255,255,255,.08)!important;border:1px solid rgba(255,255,255,.10)!important;box-shadow:none!important;}
.details-actions .fav-action{background:linear-gradient(135deg,#ffba08,#ff4d6d)!important;}

/* Desktop/TV: evitar necessidade de zoom 67% */
@media (min-width:1300px){
  .grid{grid-template-columns:repeat(auto-fill,minmax(142px,1fr))!important;}
  .channel-row{grid-template-columns:repeat(6,minmax(150px,1fr))!important;}
  .poster-row{grid-template-columns:repeat(6,minmax(88px,1fr))!important;}
}
@media (max-width:1200px){
  .tv-shell{grid-template-columns:190px 1fr!important;padding:14px!important;}
  .brand-name{font-size:25px!important;}
  .menu-item{height:50px!important;font-size:15px!important;}
  .dual{grid-template-columns:1fr!important;}
  .search{width:min(330px,42vw)!important;min-width:220px!important;}
  .details-hero{grid-template-columns:220px 1fr!important;padding:28px!important;}
}
@media (max-width:800px){
  .tv-shell{display:block!important;height:auto!important;overflow:auto!important;}
  .sidebar{border:0!important;padding:10px 0!important;}
  .menu{display:grid!important;grid-template-columns:repeat(3,1fr)!important;gap:8px!important;}
  .topbar{height:auto!important;flex-wrap:wrap!important;}
  .search{width:100%!important;max-width:none!important;}
  .top-actions{width:100%!important;flex-wrap:wrap!important;justify-content:flex-start!important;}
  .hero{height:300px!important;}
  .hero-text{left:22px!important;right:22px!important;}
  .details-hero{grid-template-columns:1fr!important;padding:22px!important;}
  .details-poster{max-width:210px!important;}
}

/* =========================================================
   AJUSTE FINAL - DETALHES NIVEL APP PROFISSIONAL TOTAL
   Mantém JS/player intactos. Corrige proporção da tela de filme/série.
   ========================================================= */
.chatbot-mini.top-chatbot{
  cursor:default!important;
  pointer-events:none!important;
  user-select:none!important;
  opacity:.95!important;
  transform:none!important;
}
.top-chatbot:hover{transform:none!important;filter:none!important;}

.details-view{
  height:calc(100vh - 122px)!important;
  min-height:0!important;
  overflow-y:auto!important;
  overflow-x:hidden!important;
  padding:8px 10px 24px!important;
}
.details-view .back{
  height:40px!important;
  padding:0 16px!important;
  margin:4px 0 14px!important;
  border-radius:12px!important;
  font-size:14px!important;
}
.details-hero{
  width:100%!important;
  min-height:0!important;
  height:auto!important;
  max-height:none!important;
  display:grid!important;
  grid-template-columns:clamp(210px,22vw,310px) minmax(0,1fr)!important;
  gap:clamp(22px,2.6vw,44px)!important;
  align-items:center!important;
  padding:clamp(22px,3vw,42px)!important;
  border-radius:24px!important;
  overflow:hidden!important;
  background:linear-gradient(135deg,rgba(14,19,42,.96),rgba(13,8,45,.94))!important;
}
.details-hero:before{
  content:""!important;
  position:absolute!important;
  inset:-24px!important;
  background:var(--details-bg) center/cover no-repeat!important;
  filter:blur(34px) brightness(.34) saturate(1.1)!important;
  opacity:.58!important;
  z-index:-2!important;
}
.details-hero:after{
  content:""!important;
  position:absolute!important;
  inset:0!important;
  background:linear-gradient(90deg,rgba(3,7,18,.94) 0%,rgba(8,10,31,.86) 45%,rgba(22,10,62,.76) 100%)!important;
  z-index:-1!important;
}
.details-poster{
  width:100%!important;
  max-width:clamp(210px,22vw,310px)!important;
  justify-self:center!important;
  align-self:center!important;
}
.details-poster img{
  width:100%!important;
  aspect-ratio:2/3!important;
  height:auto!important;
  max-height:min(58vh,430px)!important;
  object-fit:cover!important;
  object-position:center!important;
  border-radius:18px!important;
  display:block!important;
  box-shadow:0 24px 70px rgba(0,0,0,.55)!important;
}
.details-info{
  min-width:0!important;
  max-width:860px!important;
  align-self:center!important;
}
.details-badge{
  height:30px!important;
  padding:0 14px!important;
  margin-bottom:14px!important;
  font-size:12px!important;
  letter-spacing:.02em!important;
}
.details-info h1,
#detailsTitle{
  font-size:clamp(28px,3.2vw,52px)!important;
  line-height:1.05!important;
  letter-spacing:-.035em!important;
  margin:0 0 14px!important;
  max-width:820px!important;
  display:-webkit-box!important;
  -webkit-line-clamp:2!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}
#detailsMeta{
  font-size:clamp(13px,1.15vw,16px)!important;
  line-height:1.35!important;
  margin:0 0 14px!important;
  color:#aeb8d7!important;
  text-transform:uppercase!important;
}
#detailsPlot{
  font-size:clamp(14px,1.18vw,17px)!important;
  line-height:1.55!important;
  color:#d5dcf1!important;
  max-width:780px!important;
  margin:0!important;
  display:-webkit-box!important;
  -webkit-line-clamp:4!important;
  -webkit-box-orient:vertical!important;
  overflow:hidden!important;
}
.details-actions{
  margin-top:20px!important;
  gap:10px!important;
}
.details-actions button{
  height:44px!important;
  min-width:150px!important;
  padding:0 18px!important;
  border-radius:12px!important;
  font-size:14px!important;
}

/* Desktop 100%: aproveita largura sem criar zoom artificial */
@media (min-width:1366px){
  .details-view{height:calc(100vh - 118px)!important;}
  .details-hero{grid-template-columns:clamp(220px,20vw,300px) 1fr!important;}
  .details-info h1,#detailsTitle{font-size:clamp(32px,3vw,50px)!important;}
}
@media (max-width:980px){
  .details-view{height:auto!important;overflow:visible!important;}
  .details-hero{grid-template-columns:1fr!important;text-align:left!important;}
  .details-poster{max-width:220px!important;justify-self:start!important;}
  .details-info h1,#detailsTitle{font-size:32px!important;-webkit-line-clamp:3!important;}
}

/* Tela de saída profissional com Pix e suporte */
.activation:has(.logout-pro-wrap){
    height:calc(100vh - 88px)!important;
    align-items:center!important;
    justify-items:center!important;
    overflow:auto!important;
    padding:18px 12px!important;
}
.logout-pro-wrap{
    width:min(1120px,96%);
    display:grid;
    grid-template-columns:1.05fr .95fr;
    gap:18px;
    align-items:stretch;
}
.logout-pro-card,
.logout-action-card{
    border:1px solid rgba(255,255,255,.10);
    background:
        radial-gradient(circle at 20% 0%,rgba(91,44,255,.18),transparent 34%),
        linear-gradient(145deg,rgba(16,24,50,.96),rgba(7,11,24,.98));
    border-radius:24px;
    box-shadow:0 22px 70px rgba(0,0,0,.42);
}
.logout-pro-card{
    padding:30px;
    text-align:left;
    display:flex;
    flex-direction:column;
    justify-content:center;
    min-height:390px;
}
.logout-kicker{
    color:#29ff78!important;
    font-weight:1000;
    font-size:13px;
    letter-spacing:.12em;
}
.logout-pro-card h1{
    margin:14px 0 10px;
    font-size:42px;
    line-height:1.05;
}
.logout-pro-card p{
    color:#cfd7ee;
    line-height:1.5;
    margin:0 0 18px;
    max-width:560px;
}
.logout-mac-box{
    border:1px dashed rgba(0,200,255,.70);
    background:rgba(0,0,0,.34);
    border-radius:18px;
    padding:18px;
    margin:6px 0 18px;
}
.logout-mac-box small{
    display:block;
    color:#8e9abd;
    margin-bottom:5px;
    font-size:12px;
    text-transform:uppercase;
    letter-spacing:.08em;
}
.logout-mac-box b{
    color:#fff;
    font-size:34px;
    letter-spacing:2px;
    line-height:1;
}
.logout-main-actions{
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
}
.logout-secondary,
.logout-action-card a,
.logout-action-card button{
    text-decoration:none;
    border:1px solid rgba(255,255,255,.12);
    background:rgba(255,255,255,.06);
    color:#fff;
    border-radius:12px;
    padding:12px 14px;
    font-weight:900;
    cursor:pointer;
    display:inline-flex;
    justify-content:center;
}
.logout-actions-grid{
    display:grid;
    grid-template-columns:1fr 1fr;
    gap:14px;
}
.logout-action-card{
    min-height:390px;
    padding:18px;
    text-align:center;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
}
.logout-action-icon{
    width:44px;
    height:44px;
    display:grid;
    place-items:center;
    border-radius:16px;
    background:rgba(41,255,120,.10);
    border:1px solid rgba(41,255,120,.24);
    margin-bottom:10px;
    font-size:22px;
}
.logout-action-card h3{
    margin:0 0 12px;
    font-size:18px;
}
.logout-action-card img{
    width:180px;
    height:180px;
    object-fit:contain;
    background:#fff;
    border-radius:16px;
    padding:8px;
    margin-bottom:12px;
}
.logout-action-card p{
    color:#cfd7ee;
    font-size:13px;
    line-height:1.35;
    margin:0 0 12px;
}
.logout-action-empty{
    opacity:.76;
}
.logout-action-empty img{display:none}
@media(max-width:1100px){
    .logout-pro-wrap{grid-template-columns:1fr;max-width:760px}
    .logout-pro-card{min-height:auto}
    .logout-actions-grid{grid-template-columns:1fr 1fr}
}
@media(max-width:680px){
    .logout-actions-grid{grid-template-columns:1fr}
    .logout-pro-card h1{font-size:32px}
    .logout-mac-box b{font-size:23px}
}

/* ==========================================================
   RESPONSIVO FINAL - CELULAR / TABLET / NOTEBOOK / ANDROID TV
   Mantém JS/player original. Apenas ajustes visuais seguros.
   ========================================================== */
:root{
  --safe-bottom: env(safe-area-inset-bottom, 0px);
}
*{box-sizing:border-box}
html,body{max-width:100%;overflow-x:hidden}
body{min-height:100vh}
img{max-width:100%;height:auto}
.tv-shell{width:100%;max-width:100vw}
.main{min-width:0}
.topbar,.top-actions{min-width:0}
.search{min-width:220px;max-width:520px;width:clamp(260px,34vw,520px)}
.search input{min-width:0;width:100%}
.top-actions{display:flex;align-items:center;justify-content:flex-end;gap:10px;flex-wrap:wrap}
.top-profile-wrap{max-width:min(420px,42vw)}
.top-profile-wrap select{max-width:100%;text-overflow:ellipsis}
.chatbot-mini{pointer-events:none;user-select:none;cursor:default}
.hero{width:100%;height:clamp(210px,26vh,340px)}
.hero-banner-img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;object-position:center;border-radius:inherit}
.hero::after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(3,6,14,.92) 0%,rgba(3,6,14,.58) 40%,rgba(3,6,14,.12) 100%);pointer-events:none}
.hero-text{z-index:2;max-width:min(560px,58%)}
.channel-row,.poster-row{width:100%}
.channel-row{grid-template-columns:repeat(auto-fit,minmax(150px,1fr));height:auto;max-height:none;overflow:visible}
.poster-row{grid-template-columns:repeat(auto-fit,minmax(92px,1fr));height:auto;max-height:none;overflow:visible}
.dual{align-items:start}
.grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr));align-items:start}
.grid .card{min-width:0}
.grid .card img{display:block}
.grid .card.poster img{aspect-ratio:2/3;height:auto;object-fit:cover}
.channel-row .card{min-height:86px}
.channel-row .card img{height:54px;display:block}
.card b,.card small{word-break:normal;overflow-wrap:anywhere}
.list-view,.episodes-view,.details-view{height:calc(100vh - 150px);max-height:none;overflow:auto;scrollbar-gutter:stable}
.details-hero{grid-template-columns:minmax(210px,280px) minmax(0,1fr);gap:24px;min-height:auto}
.details-info h1{font-size:clamp(28px,3.4vw,48px);line-height:1.05;max-width:900px}
.details-info p{font-size:clamp(14px,1.1vw,17px)}
.details-poster img{aspect-ratio:2/3;height:auto;max-height:min(430px,58vh);object-fit:cover}
.player-overlay{left:clamp(8px,2vw,24px);right:clamp(8px,2vw,24px);top:clamp(8px,2vw,24px);bottom:clamp(8px,2vw,24px)}
.player-overlay video{max-height:calc(100vh - 120px);background:#000}
.settings-box{width:min(920px,94vw);max-height:92vh;overflow:auto}
.settings-grid{grid-template-columns:repeat(auto-fit,minmax(180px,1fr))}
.logout-pro-wrap{width:min(1180px,94vw)}
.logout-mac-box{align-items:center;text-align:center;justify-content:center}
.logout-mac-box b{font-family:ui-monospace,SFMono-Regular,Consolas,monospace;letter-spacing:clamp(1px,.35vw,4px);font-size:clamp(22px,3vw,34px);line-height:1.15;text-align:center;display:block;width:100%}
.logout-mac-box small{display:block;text-align:center;width:100%;letter-spacing:1.4px;color:#70dfff}

/* Notebook menor e tablets em paisagem */
@media (max-width:1366px){
  .sidebar{width:210px}
  .main{padding-left:18px;padding-right:18px}
  .brand-name{font-size:24px}
  .menu-item{height:56px;font-size:15px}
  .search{width:34vw;max-width:430px}
  .top-profile-wrap{max-width:360px}
  .hero{height:clamp(190px,24vh,290px)}
  .hero h1{font-size:clamp(28px,3vw,42px)}
  .channel-row{grid-template-columns:repeat(auto-fit,minmax(138px,1fr));gap:9px}
  .poster-row{grid-template-columns:repeat(auto-fit,minmax(84px,1fr));gap:8px}
  .grid{grid-template-columns:repeat(auto-fill,minmax(138px,1fr));gap:12px}
}

/* Tablet */
@media (max-width:1100px){
  .tv-shell{display:block;min-height:100vh;padding-bottom:0}
  .sidebar{position:sticky;top:0;z-index:40;width:100%;height:auto;border-right:0;border-bottom:1px solid rgba(255,255,255,.08);padding:10px 14px;background:rgba(4,7,17,.96);backdrop-filter:blur(18px)}
  .brand{height:42px;justify-content:center;margin-bottom:8px}
  .brand-name{font-size:22px}
  .menu{display:flex;gap:8px;overflow-x:auto;padding-bottom:4px;scrollbar-width:none}
  .menu::-webkit-scrollbar{display:none}
  .menu-item{flex:0 0 auto;height:42px;padding:0 14px;border-radius:13px;font-size:14px}
  .main{padding:12px 14px 24px;overflow:visible;min-height:auto}
  .topbar{height:auto;display:flex;align-items:center;gap:10px;flex-wrap:wrap;margin-bottom:14px}
  .search{order:1;width:100%;max-width:none;height:48px}
  .top-actions{order:2;width:100%;justify-content:flex-start;gap:8px}
  .top-profile-wrap{max-width:100%;flex:1 1 260px}
  .pill{height:42px}
  .top-icon-btn,.round{width:42px;height:42px;flex:0 0 auto}
  .hero{height:230px;border-radius:18px}
  .hero-text{left:24px;top:24px;max-width:78%}
  .hero h1{font-size:34px}
  .dual{grid-template-columns:1fr}
  .poster-row{grid-template-columns:repeat(auto-fit,minmax(120px,1fr))}
  .grid{grid-template-columns:repeat(auto-fill,minmax(150px,1fr))}
  .list-view,.episodes-view,.details-view{height:auto;min-height:55vh;overflow:visible;padding-right:0}
  .list-head{flex-wrap:wrap}
  .list-head h1{font-size:30px}
  .details-hero{grid-template-columns:220px 1fr;padding:20px;border-radius:18px}
  .details-poster img{max-height:330px}
  .logout-pro-wrap{grid-template-columns:1fr;gap:14px;margin:18px auto}
  .logout-actions-grid{grid-template-columns:1fr 1fr}
}

/* Celular */
@media (max-width:760px){
  body{font-size:14px;background:#050816}
  .tv-shell{padding-bottom:76px}
  .sidebar{position:fixed;left:0;right:0;bottom:0;top:auto;z-index:80;height:66px;padding:6px 8px;border:0;border-top:1px solid rgba(255,255,255,.1);background:rgba(5,8,20,.94);box-shadow:0 -12px 30px rgba(0,0,0,.42)}
  .brand{display:none}
  .menu{height:100%;display:grid;grid-template-columns:repeat(5,1fr);gap:4px;overflow:visible;padding:0}
  .menu-item{height:54px;min-width:0;justify-content:center;flex-direction:column;gap:2px;padding:0 4px;border-radius:12px;font-size:17px;background:transparent}
  .menu-item span{font-size:10px;line-height:1;max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .menu-item[data-type="refresh"]{display:none}
  .main{padding:10px 10px 90px}
  .topbar{gap:8px;margin-bottom:10px}
  .search{height:46px;border-radius:14px;font-size:14px}
  .search span{font-size:22px}
  .top-actions{display:grid;grid-template-columns:1fr auto auto auto;align-items:center;gap:6px}
  .top-profile-wrap{min-width:0;max-width:100%;height:42px;padding:4px 8px;border-radius:14px}
  .top-profile-wrap label{font-size:12px}
  .top-profile-wrap select{font-size:12px;height:32px;padding:0 8px;min-width:0}
  .chatbot-mini{width:38px;height:38px;font-size:18px;display:grid;place-items:center}
  .pill{height:40px;padding:0 10px;font-size:11px;min-width:0;white-space:nowrap}
  .pill span{max-width:90px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}
  .top-icon-btn,.round{width:40px;height:40px;font-size:15px}
  .hero{height:175px;border-radius:16px;margin-top:4px}
  .hero-text{left:16px;right:16px;top:16px;max-width:none}
  .live{font-size:10px;padding:5px 8px;margin-bottom:10px}
  .hero h1{font-size:24px;margin-bottom:6px}
  .hero p{font-size:12px;margin-bottom:12px;max-width:78%}
  .hero button{height:38px;padding:0 14px;font-size:13px;border-radius:10px}
  .dots{display:none}
  .section{margin-top:14px}
  .section-head{height:auto;margin-bottom:8px}
  .section-head h2{font-size:18px}
  .section-head button{font-size:13px}
  .channel-row{grid-template-columns:repeat(2,minmax(0,1fr));gap:8px}
  .channel-row .card{min-height:96px;border-radius:14px}
  .channel-row .card img{height:58px;padding:8px 10px}
  .channel-row .card b{font-size:11px}
  .poster-row{grid-template-columns:repeat(3,minmax(0,1fr));gap:8px}
  .poster-row .card{aspect-ratio:2/3;border-radius:12px}
  .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}
  .grid .card.poster img{aspect-ratio:2/3;height:auto}
  .grid .card img{height:92px;padding:8px}
  .grid .card div{padding:9px}
  .grid .card b{font-size:12px}
  .grid .card small{font-size:10px}
  .cats{gap:7px;padding-bottom:10px}
  .cats button{padding:8px 10px;font-size:12px}
  .list-head{gap:8px;margin-bottom:10px}
  .list-head h1{font-size:24px;line-height:1.1}
  .list-head span{font-size:13px}
  .back{padding:10px 12px;border-radius:12px}
  .details-hero{grid-template-columns:1fr;gap:14px;padding:16px;text-align:left;border-radius:18px}
  .details-poster{display:flex;justify-content:center}
  .details-poster img{width:min(210px,62vw);max-height:none}
  .details-info h1{font-size:28px;line-height:1.08;margin:10px 0 8px}
  .details-info p{font-size:14px;line-height:1.45}
  .details-actions{gap:8px}
  .details-actions button{width:100%;justify-content:center;padding:12px 14px}
  .series-info-box{grid-template-columns:1fr;text-align:center}
  .series-info-box img{margin:auto}
  .settings-modal{padding:10px}
  .settings-box{width:100%;max-height:92vh;border-radius:18px;padding:14px}
  .settings-head h2{font-size:18px}
  .settings-grid{grid-template-columns:1fr;gap:8px}
  .pin-row{flex-direction:column}
  .pin-row input,.pin-row button{width:100%}
  .player-overlay{inset:0;border-radius:0;padding:8px}
  .player-overlay-head{gap:8px;align-items:flex-start}
  .player-overlay-head button{height:38px}
  .player-overlay video{height:auto;max-height:58vh}
  .logout-pro-wrap{grid-template-columns:1fr;width:100%;gap:10px;margin:8px auto}
  .activation:has(.logout-pro-wrap){padding:8px;align-items:start}
  .logout-pro-card,.logout-action-card{padding:16px;border-radius:18px;min-height:auto}
  .logout-pro-card h1{font-size:30px}
  .logout-pro-card p{font-size:14px}
  .logout-actions-grid{grid-template-columns:1fr;gap:10px}
  .logout-action-card img{width:150px;height:150px}
  .logout-mac-box{padding:14px}
  .logout-mac-box b{font-size:22px;letter-spacing:1.4px;word-break:break-all}
}

/* Celulares muito pequenos */
@media (max-width:380px){
  .poster-row{grid-template-columns:repeat(2,minmax(0,1fr))}
  .grid{grid-template-columns:repeat(2,minmax(0,1fr))}
  .hero h1{font-size:21px}
  .top-actions{grid-template-columns:1fr auto auto}
  .pill{grid-column:1 / -1;justify-content:center}
}

/* Novo Carrossel de Logos no Hero */
.hero-logo-display {
    width: 100%;
    height: 100%;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    transition: opacity 0.4s ease;
    text-align: center;
    background: radial-gradient(circle at center, rgba(123, 53, 255, 0.12) 0%, transparent 75%);
}
.hero-logo-display img {
    height: clamp(100px, 18vh, 170px);
    max-width: 80%;
    object-fit: contain;
    margin-bottom: 15px;
    filter: drop-shadow(0 10px 25px rgba(0,0,0,0.6));
}
.hero-logo-display h2 {
    font-size: clamp(20px, 2.2vw, 32px);
    font-weight: 900;
    margin: 0;
    text-shadow: 0 4px 15px rgba(0,0,0,0.8);
}

/* TV e telas grandes */
@media (min-width:1600px){
  .main{padding-right:30px}
  .search{max-width:620px}
  .hero{height:360px}
  .channel-row{grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}
  .poster-row{grid-template-columns:repeat(auto-fit,minmax(120px,1fr));gap:12px}
  .grid{grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:18px}
  .grid .card.poster img{aspect-ratio:2/3;height:auto}
}

/* ==========================================================
   RESPONSIVO PREMIUM FINAL - desktop, notebook, tablet e celular
   Ajuste visual seguro: não altera JS nem lógica do player.
   ========================================================== */
html, body{
    max-width:100%;
    min-height:100%;
    overflow-x:hidden!important;
}
body{
    font-size:clamp(13px,.9vw,16px);
}
.tv-shell{
    width:100%;
    max-width:100vw;
    min-height:100vh;
    overflow:hidden;
}
.main{
    width:100%;
    max-width:100%;
    min-width:0;
}
.topbar{
    gap:12px;
    width:100%;
}
.search{
    width:min(430px,36vw);
    max-width:100%;
    flex:0 1 auto;
}
.top-actions{
    min-width:0;
    flex-wrap:nowrap;
}
.pill{
    white-space:nowrap;
}
.hero{
    width:100%;
    max-width:100%;
}
.grid{
    grid-template-columns:repeat(auto-fill,minmax(132px,1fr));
    gap:12px;
}
.grid .card.poster img{
    height:auto;
    aspect-ratio:2/3;
}
.channel-row{
    grid-template-columns:repeat(auto-fit,minmax(150px,1fr));
}
.poster-row{
    grid-template-columns:repeat(auto-fit,minmax(84px,1fr));
}
/* Tela de saída / acesso pausado: corrige proporção, MAC e cards */
.activation{
    width:100%;
    min-height:calc(100vh - 110px);
    height:auto;
    overflow:auto;
    padding:clamp(10px,2vw,24px);
    display:flex!important;
    align-items:center;
    justify-content:center;
}
.activation:has(.logout-pro-wrap){
    place-items:unset;
}
.logout-pro-wrap{
    width:min(1040px,100%);
    max-width:100%;
    display:grid;
    grid-template-columns:minmax(380px,1.15fr) minmax(180px,.55fr) minmax(180px,.55fr);
    gap:16px;
    align-items:stretch;
    margin:0 auto;
}
.logout-pro-card,
.logout-action-card{
    min-width:0;
    min-height:0;
    border-radius:20px;
}
.logout-pro-card{
    padding:clamp(18px,2.4vw,28px);
}
.logout-pro-card h1{
    font-size:clamp(28px,3.1vw,42px);
    line-height:1.05;
    margin:12px 0 12px;
}
.logout-pro-card p{
    max-width:46ch;
    font-size:clamp(13px,1vw,16px);
    line-height:1.55;
}
.logout-mac-box{
    width:100%;
    margin:18px 0 18px;
    padding:clamp(14px,1.7vw,20px);
    align-items:center!important;
    justify-content:center!important;
    text-align:center!important;
}
.logout-mac-box small{
    font-size:clamp(10px,.9vw,12px);
    text-align:center!important;
    letter-spacing:1.2px!important;
    margin-bottom:8px;
}
.logout-mac-box b{
    font-size:clamp(19px,2.2vw,30px)!important;
    letter-spacing:clamp(1px,.22vw,3px)!important;
    line-height:1.1!important;
    white-space:nowrap;
    word-break:normal!important;
    overflow-wrap:normal!important;
}
.logout-main-actions{
    gap:10px;
    flex-wrap:wrap;
}
.logout-main-actions button,
.logout-secondary,
.logout-action-card a,
.logout-action-card button{
    min-height:42px;
    border-radius:12px;
}
.logout-actions-grid{
    display:contents!important;
}
.logout-action-card{
    padding:clamp(16px,2vw,22px);
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    text-align:center;
}
.logout-action-card h3{
    font-size:clamp(16px,1.2vw,20px);
    margin:12px 0 8px;
}
.logout-action-card p{
    font-size:clamp(12px,.9vw,14px);
    line-height:1.4;
    max-width:22ch;
}
.logout-action-icon{
    width:44px;
    height:44px;
    font-size:22px;
}
.logout-action-card img{
    width:clamp(120px,12vw,170px)!important;
    height:clamp(120px,12vw,170px)!important;
    object-fit:contain;
}
/* Notebook menor / tablet horizontal */
@media (max-width:1280px){
    .tv-shell{grid-template-columns:220px 1fr;padding:18px 18px 92px;gap:16px}
    .brand-name{font-size:26px}
    .menu-item{height:48px;font-size:18px}
    .search{width:min(360px,34vw)}
    .logout-pro-wrap{grid-template-columns:minmax(340px,1fr) minmax(170px,.55fr) minmax(170px,.55fr);gap:14px}
    .logout-mac-box b{font-size:clamp(18px,2vw,26px)!important;letter-spacing:1.6px!important}
}
/* Tablet */
@media (max-width:1024px){
    html,body{overflow:auto!important}
    .tv-shell{display:flex;min-height:100vh;height:auto;padding:14px;gap:14px}
    .sidebar{width:88px;flex:0 0 88px;padding-right:10px}
    .brand{justify-content:center;margin-bottom:18px}
    .brand-name{display:none}
    .menu{gap:9px;display:flex!important}
    .menu-item{height:52px;padding:0;justify-content:center;border-radius:14px}
    .menu-item span:not(:first-child), .menu-item .label{display:none!important}
    .main{flex:1;overflow:visible}
    .topbar{height:auto;align-items:flex-start;flex-wrap:wrap;margin-bottom:12px}
    .search{order:1;width:100%;height:48px}
    .top-actions{order:2;width:100%;justify-content:flex-start;gap:8px;overflow-x:auto;padding-bottom:4px}
    .pill{height:38px;padding:0 12px;font-size:13px}
    .round{width:40px;height:40px;flex:0 0 auto}
    .hero{height:220px;border-radius:16px}
    .hero-text{left:22px;top:20px}.hero h1{font-size:30px}.hero button{height:42px}
    .dual{grid-template-columns:1fr}.poster-row{height:134px}.channel-row{height:92px}
    .list-view,.episodes-view,.details-view{height:auto;min-height:calc(100vh - 150px);overflow:visible}
    .logout-pro-wrap{grid-template-columns:1fr 1fr;gap:12px;align-items:stretch}
    .logout-pro-card{grid-column:1/-1}
    .activation{align-items:flex-start;padding-top:18px}
}
/* Celular */
@media (max-width:720px){
    html,body{overflow:auto!important;background:#030713}
    .tv-shell{display:block;padding:10px 10px 84px;min-height:100vh}
    .sidebar{
        width:100%;height:auto;border-right:0;padding:0;margin:0 0 10px;
        position:sticky;top:0;z-index:50;background:rgba(3,7,19,.96);backdrop-filter:blur(14px);
        border-bottom:1px solid rgba(255,255,255,.06);
    }
    .brand{height:38px;margin:0 0 8px;justify-content:flex-start}.brand-name{display:block;font-size:22px}.tv-icon{width:32px;height:28px;border-width:3px}
    .menu{display:grid!important;grid-template-columns:repeat(5,1fr);gap:6px;overflow-x:auto;padding-bottom:8px}
    .menu-item{height:42px;min-width:58px;border-radius:12px;font-size:18px;justify-content:center;padding:0}
    .menu-item span:not(:first-child),.menu-item .label{display:none!important}
    .mac-card{display:none}
    .topbar{gap:8px;margin-bottom:10px}
    .search{width:100%;height:44px;border-radius:12px;padding:0 12px}.search span{font-size:20px}.search input{font-size:14px}
    .top-actions{width:100%;gap:6px;overflow-x:auto;flex-wrap:nowrap}.pill{height:36px;padding:0 10px;font-size:12px}.round{width:38px;height:38px;font-size:15px}
    .hero{height:170px;border-radius:14px}.hero-text{left:16px;top:16px}.live{font-size:11px;padding:6px 9px;margin-bottom:12px}.hero h1{font-size:24px}.hero p{font-size:13px}.hero button{height:38px;font-size:14px;padding:0 16px}.dots{display:none}
    .section{margin-top:12px}.section-head h2{font-size:15px}
    .channel-row{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));height:auto;overflow:visible;gap:8px}.channel-row .card{min-height:84px}
    .poster-row{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));height:auto;overflow:visible;gap:8px}.poster-row .card{aspect-ratio:2/3}
    .dual{gap:12px}
    .grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px}.grid .card.poster img{aspect-ratio:2/3;height:auto}.grid .card div{padding:10px}.grid .card b{font-size:13px}
    .list-head{gap:10px;flex-wrap:wrap}.list-head h1{font-size:26px}.list-head span{margin-left:0;width:100%;font-size:13px}.cats{gap:7px}.cats button{padding:8px 11px;font-size:12px}
    .details-hero{grid-template-columns:1fr;min-height:auto;padding:16px;gap:16px;border-radius:18px}.details-poster img{max-height:310px;width:min(210px,70vw);margin:0 auto;display:block}.details-info h1{font-size:30px}.details-info p{font-size:14px}.details-actions button{width:100%;padding:13px 16px}
    .activation{min-height:auto;padding:10px;display:block!important}.logout-pro-wrap{width:100%;display:grid;grid-template-columns:1fr;gap:10px;margin:0 auto}.logout-pro-card,.logout-action-card{padding:16px;border-radius:18px}.logout-pro-card h1{font-size:28px}.logout-pro-card p{font-size:13px}.logout-mac-box{padding:13px;margin:14px 0}.logout-mac-box b{font-size:18px!important;letter-spacing:.8px!important;white-space:normal;word-break:break-all!important}.logout-main-actions button,.logout-secondary{width:100%;text-align:center}.logout-action-card img{width:140px!important;height:140px!important}.logout-action-card p{max-width:28ch}
    .player{left:8px;right:8px;bottom:8px;height:auto;min-height:70px;gap:8px;padding:8px}.video-mini{width:86px;height:50px}.now{width:110px}.now b{font-size:14px}.time{display:none}.controls{gap:8px}.controls .pause{width:40px;height:40px}.progress{min-width:50px}
}
/* Celular pequeno */
@media (max-width:420px){
    .grid{grid-template-columns:repeat(2,minmax(0,1fr))}.poster-row{grid-template-columns:repeat(2,minmax(0,1fr))}.channel-row{grid-template-columns:1fr 1fr}.brand-name{font-size:19px}.logout-pro-card h1{font-size:25px}.logout-mac-box b{font-size:16px!important}.hero{height:150px}.details-info h1{font-size:26px}
}


/* ===== FIX HERO ESPORTIVO DINÂMICO CLEAN ===== */
#heroBannerImg:not([src]),
#heroBannerImg[src=""]{
    display:none!important;
}
.hero .hero-banner-img.hidden{
    display:none!important;
}

/* ==========================================================
   DNS SELECTOR - Ao lado de Perfil (sem alterar layout geral)
   ========================================================== */
.top-dns-wrap{
    height:46px!important;
    border-radius:16px!important;
    background:rgba(13,20,42,.88)!important;
    border:1px solid rgba(56,189,248,.30)!important;
    padding:0 10px!important;
    display:flex!important;
    align-items:center!important;
    gap:9px!important;
    white-space:nowrap!important;
    box-shadow:0 0 18px rgba(56,189,248,.08)!important;
    flex:0 0 auto!important;
}
.top-dns-wrap label{
    font-size:14px!important;
    font-weight:900!important;
    color:#dbeafe!important;
    line-height:1!important;
}
.top-dns-wrap select{
    height:34px!important;
    min-width:118px!important;
    max-width:150px!important;
    border:0!important;
    border-radius:11px!important;
    background:rgba(56,189,248,.12)!important;
    color:#7dd3fc!important;
    font-weight:1000!important;
    padding:0 10px!important;
    outline:none!important;
}


/* ==========================================================
   AJUSTE USUÁRIO/SENHA - sem alterar visual base
========================================================== */
.login-userpass-box{
    display:grid!important;
    grid-template-columns:1fr 1fr;
    gap:10px!important;
    width:100%!important;
    max-width:520px!important;
    margin:14px auto 8px!important;
}
.login-input-user{
    height:46px!important;
    border-radius:12px!important;
    border:1px solid rgba(255,255,255,.14)!important;
    background:rgba(4,8,22,.78)!important;
    color:#fff!important;
    outline:none!important;
    padding:0 14px!important;
    font-size:15px!important;
}
.login-input-user:focus{
    border-color:#7c3aed!important;
    box-shadow:0 0 0 4px rgba(124,58,237,.16)!important;
}
.user-pass-box{
    font-size:24px!important;
    letter-spacing:0!important;
}
.unified-mac-box small{
    margin-top:5px!important;
}
@media(max-width:700px){
    .login-userpass-box{grid-template-columns:1fr!important;}
}

/* ==========================================================
   LOGIN CLIENTE ULTRA CLEAN - usuário/senha
   Mantém visual geral do app e não altera player/conteúdos
========================================================== */
:root{
    --login-bg-image:none;
}

.activation.clean-login-screen{
    position:relative!important;
    width:100%!important;
    min-height:calc(100vh - 104px)!important;
    height:auto!important;
    overflow:hidden!important;
    padding:24px!important;
    display:grid!important;
    place-items:center!important;
    text-align:center!important;
    isolation:isolate!important;
    background:
        linear-gradient(90deg,rgba(2,6,17,.96),rgba(2,6,17,.78),rgba(2,6,17,.96)),
        var(--login-bg-image)!important;
    background-size:cover!important;
    background-position:center!important;
    background-repeat:no-repeat!important;
    border-radius:0!important;
}

.activation.clean-login-screen::before{
    content:"";
    position:absolute;
    inset:0;
    z-index:-2;
    background:
        radial-gradient(circle at 50% 15%,rgba(108,44,255,.26),transparent 34%),
        radial-gradient(circle at 80% 80%,rgba(0,168,255,.13),transparent 30%);
    pointer-events:none;
}

.activation.clean-login-screen::after{
    content:"";
    position:absolute;
    inset:0;
    z-index:-1;
    background:rgba(2,6,17,.38);
    backdrop-filter:blur(3px);
    pointer-events:none;
}

.clean-login-card{
    width:min(430px,100%)!important;
    min-height:auto!important;
    border:1px solid rgba(255,255,255,.11)!important;
    border-radius:28px!important;
    padding:34px!important;
    background:linear-gradient(180deg,rgba(14,21,43,.88),rgba(5,9,22,.86))!important;
    box-shadow:0 30px 100px rgba(0,0,0,.56),0 0 54px rgba(108,44,255,.14)!important;
    backdrop-filter:blur(20px)!important;
    display:block!important;
}

.clean-login-mark{
    display:inline-flex!important;
    align-items:center!important;
    justify-content:center!important;
    gap:5px!important;
    margin:0 auto 18px!important;
    color:#fff!important;
    font-size:28px!important;
    line-height:1!important;
    font-weight:1000!important;
    font-style:italic!important;
    letter-spacing:.2px!important;
}

.clean-login-mark span{
    color:#9b4dff!important;
    font-size:14px!important;
    letter-spacing:.6px!important;
}

.clean-login-card h1{
    margin:0 0 8px!important;
    color:#fff!important;
    font-size:42px!important;
    line-height:1!important;
    font-weight:1000!important;
    letter-spacing:-1px!important;
}

.clean-login-card p{
    margin:0 auto 24px!important;
    max-width:34ch!important;
    color:#b8c1dc!important;
    font-size:14px!important;
    line-height:1.5!important;
}

.clean-login-fields{
    width:100%!important;
    display:grid!important;
    gap:9px!important;
    margin:0 0 18px!important;
    text-align:left!important;
}

.clean-login-fields label{
    color:#97a3c2!important;
    font-size:11px!important;
    line-height:1!important;
    font-weight:1000!important;
    letter-spacing:1.4px!important;
    text-transform:uppercase!important;
    margin:4px 0 0 2px!important;
}

.clean-login-fields .login-input-user,
.clean-login-screen .login-input-user{
    width:100%!important;
    height:54px!important;
    border-radius:16px!important;
    border:1px solid rgba(255,255,255,.11)!important;
    background:rgba(2,6,17,.76)!important;
    color:#fff!important;
    outline:none!important;
    padding:0 16px!important;
    font-size:16px!important;
    font-weight:700!important;
    box-shadow:inset 0 0 0 1px rgba(255,255,255,.02)!important;
}

.clean-login-fields .login-input-user:focus,
.clean-login-screen .login-input-user:focus{
    border-color:rgba(124,58,237,.86)!important;
    box-shadow:0 0 0 4px rgba(124,58,237,.18),0 0 30px rgba(124,58,237,.12)!important;
}

.clean-login-btn{
    width:100%!important;
    height:56px!important;
    margin:2px 0 12px!important;
    border:0!important;
    border-radius:16px!important;
    background:linear-gradient(135deg,#5b2cff,#00a8ff)!important;
    color:#fff!important;
    font-size:16px!important;
    font-weight:1000!important;
    box-shadow:0 18px 44px rgba(52,116,255,.34)!important;
}

.clean-login-msg{
    display:block!important;
    min-height:18px!important;
    color:#9ea9c9!important;
    font-size:12px!important;
    line-height:1.35!important;
}

@media(max-width:900px){
    .activation.clean-login-screen{
        min-height:calc(100vh - 170px)!important;
        padding:18px!important;
        overflow:visible!important;
    }
    .clean-login-card{
        width:min(420px,100%)!important;
        padding:28px!important;
        border-radius:24px!important;
    }
    .clean-login-card h1{
        font-size:34px!important;
    }
}

@media(max-width:520px){
    .activation.clean-login-screen{
        padding:12px!important;
        min-height:auto!important;
    }
    .clean-login-card{
        padding:22px!important;
        border-radius:22px!important;
    }
    .clean-login-mark{
        font-size:24px!important;
    }
    .clean-login-card h1{
        font-size:30px!important;
    }
    .clean-login-fields .login-input-user,
    .clean-login-screen .login-input-user{
        height:50px!important;
        border-radius:14px!important;
        font-size:15px!important;
    }
    .clean-login-btn{
        height:52px!important;
    }
}


/* ==========================================================
   LOGIN ISOLADO - remove tudo ao redor antes do cliente logar
   Mostra sidebar/topbar/conteúdos somente depois do login ativo
========================================================== */
body.login-mode{
    overflow:hidden!important;
}

body.login-mode .tv-shell{
    display:block!important;
    width:100vw!important;
    height:100vh!important;
    padding:0!important;
    margin:0!important;
}

body.login-mode .sidebar,
body.login-mode .topbar,
body.login-mode #home,
body.login-mode #listView,
body.login-mode #detailsView,
body.login-mode #favoritesView,
body.login-mode #episodesView,
body.login-mode #profilesBar,
body.login-mode #playerBox,
body.login-mode .player,
body.login-mode .chatbot-mini,
body.login-mode #safePlayerOverlay,
body.login-mode #adultPinModal{
    display:none!important;
}

body.login-mode .main{
    width:100vw!important;
    height:100vh!important;
    min-height:100vh!important;
    padding:0!important;
    margin:0!important;
    overflow:hidden!important;
}

body.login-mode .activation.clean-login-screen{
    display:grid!important;
    width:100vw!important;
    min-height:100vh!important;
    height:100vh!important;
    padding:24px!important;
    border-radius:0!important;
}

body.login-mode .clean-login-card{
    margin:auto!important;
}

body.app-mode .activation.clean-login-screen.hidden{
    display:none!important;
}

@media(max-width:560px){
    body.login-mode .activation.clean-login-screen{
        padding:16px!important;
        min-height:100vh!important;
        height:100vh!important;
    }
}

/* Video.js universal player fix */
.video-js{width:100%!important;height:100%!important;background:#000!important;}
.video-js .vjs-tech{object-fit:contain!important;}
.player-overlay .video-js,.safe-player-overlay .video-js{width:100%!important;min-height:320px;}
.universal-player-error{position:absolute;left:50%;bottom:24px;transform:translateX(-50%);z-index:50;max-width:780px;width:calc(100% - 32px);background:rgba(8,12,22,.92);border:1px solid rgba(255,80,80,.35);box-shadow:0 18px 50px rgba(0,0,0,.45);color:#fff;border-radius:16px;padding:14px 16px;text-align:center;font-family:Arial,sans-serif;}
.universal-player-error b{display:block;color:#ff6b6b;margin-bottom:4px;font-size:15px;}
.universal-player-error span{font-size:13px;color:#d7dde8;}
.safe-player-overlay,.player-overlay{position:fixed;}

/* Correção: botão Fechar do player principal sempre clicável */
.player-overlay-head{position:relative!important;z-index:1000002!important;pointer-events:auto!important;}
.player-overlay-head button{position:relative!important;z-index:1000003!important;pointer-events:auto!important;}
#playerBox .video-js{position:relative!important;z-index:1!important;}
