/*
Theme Name: Turma do Padre Dudu Play
Theme URI: https://example.com
Author: Grupo A Rede
Description: Tema WordPress estilo streaming com Filmes, Clipes, Séries, Temporadas e Episódios. Suporte YouTube/Vimeo, autoplay inteligente e ADM organizado.
Version: 1.3.12
License: GPL v2 or later
Text Domain: streamflix
*/

:root{
  --sf-bg:#050505;
  --sf-card:#181818;
  --sf-hover:#232323;
  --sf-text:#fff;
  --sf-muted:#b3b3b3;
  --sf-red:#e50914;
}

*{box-sizing:border-box}
body{margin:0;background:var(--sf-bg);color:var(--sf-text);font-family:Arial,Helvetica,sans-serif}
a{color:inherit;text-decoration:none}
img{max-width:100%;display:block}

.sf-header{
  position:fixed;top:0;left:0;right:0;height:72px;z-index:999;
  display:flex;align-items:center;justify-content:space-between;
  padding:0 48px;
  background:linear-gradient(to bottom,rgba(0,0,0,.96),rgba(0,0,0,.12));
  backdrop-filter:blur(8px);
}
.sf-logo{font-size:28px;font-weight:900;color:var(--sf-red);letter-spacing:-1px}
.sf-nav{display:flex;gap:22px;color:#e5e5e5;font-size:14px}
.sf-nav a:hover{color:#fff}




.sf-main{min-height:100vh}

.sf-hero{
  min-height:82vh;padding:150px 60px 90px;display:flex;align-items:flex-end;
  position:relative;background-size:cover;background-position:center;
}
.sf-hero:before{
  content:"";position:absolute;inset:0;
  background:linear-gradient(to top,var(--sf-bg) 5%,rgba(0,0,0,.25) 45%,rgba(0,0,0,.18)),
             linear-gradient(to right,rgba(0,0,0,.88),rgba(0,0,0,.2) 55%,rgba(0,0,0,.04));
}
.sf-hero-content{position:relative;z-index:2;max-width:760px}
.sf-hero h1{font-size:clamp(42px,7vw,86px);line-height:.95;margin:0 0 20px;font-weight:900;letter-spacing:-3px}
.sf-hero p{font-size:20px;color:#e5e5e5;line-height:1.55;margin:0;max-width:650px}
.sf-buttons{display:flex;gap:14px;margin-top:28px;flex-wrap:wrap}
.sf-btn{border:0;border-radius:5px;padding:14px 28px;display:inline-flex;align-items:center;justify-content:center;font-weight:800;font-size:16px;cursor:pointer}
.sf-btn-primary{background:#fff;color:#000}
.sf-btn-secondary{background:rgba(109,109,110,.75);color:#fff}
.sf-btn-red{background:var(--sf-red);color:#fff}
.sf-btn:hover{opacity:.88}

.sf-section{padding:0 50px;margin:-25px 0 52px;position:relative;z-index:5}
.sf-section + .sf-section{margin-top:0}
.sf-section-title{font-size:26px;font-weight:900;margin:0 0 16px}
.sf-row{display:flex;gap:12px;overflow-x:auto;overflow-y:visible;padding:12px 0 34px;scroll-behavior:smooth}
.sf-row-wrap{display:flex;gap:18px;flex-wrap:wrap;overflow:visible}
.sf-row::-webkit-scrollbar{height:8px}
.sf-row::-webkit-scrollbar-thumb{background:#333;border-radius:999px}

.sf-card{
  min-width:270px;width:270px;background:var(--sf-card);border-radius:8px;overflow:hidden;position:relative;
  transition:transform .25s ease,box-shadow .25s ease,background .25s ease;
}
.sf-card:hover{transform:scale(1.08);background:var(--sf-hover);box-shadow:0 18px 45px rgba(0,0,0,.65);z-index:20}

.sf-thumb-wrap{position:relative;aspect-ratio:16/9;background:#111;overflow:hidden}
.sf-card-poster .sf-thumb-wrap{aspect-ratio:2/3}
.sf-thumb-wrap img{width:100%;height:100%;object-fit:cover;transition:opacity .25s ease}
.sf-trailer-preview{position:absolute;inset:0;display:none;background:#000}
.sf-card:hover .sf-trailer-preview{display:block}
.sf-card:hover .sf-thumb-wrap.has-trailer img{opacity:0}
.sf-trailer-preview iframe{width:100%;height:100%;border:0;pointer-events:none}
.sf-badge,.sf-type-badge{
  position:absolute;top:10px;z-index:3;color:#fff;padding:5px 9px;border-radius:4px;font-size:11px;font-weight:900;text-transform:uppercase
}
.sf-badge{right:10px;background:var(--sf-red)}
.sf-type-badge{left:10px;background:rgba(0,0,0,.72)}
.sf-card-body{padding:13px 14px 15px}
.sf-card h3{font-size:16px;line-height:1.25;margin:0 0 8px;font-weight:800}
.sf-meta{color:var(--sf-muted);font-size:13px}


.sf-player-hero{max-width:1500px;margin:0 auto;padding:34px 44px 10px}
.sf-player-frame{position:relative;aspect-ratio:16/9;background:#000;border-radius:16px;overflow:hidden;box-shadow:0 22px 80px rgba(0,0,0,.75)}
.sf-player-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}









#sf-next-overlay{
  position:fixed;inset:0;background:rgba(0,0,0,.94);display:none;align-items:center;justify-content:center;
  z-index:99999;color:#fff;text-align:center;padding:30px;
}
.sf-next-box{max-width:620px}
.sf-next-box h2{font-size:44px;margin:0 0 12px}
.sf-next-box p{color:#ddd;font-size:22px}
.sf-next-actions{display:flex;gap:14px;justify-content:center;flex-wrap:wrap;margin-top:24px}




.sf-season-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:0 0 24px}
.sf-season-tab{padding:10px 16px;background:#222;border-radius:5px;font-weight:800;color:#fff}
.sf-season-tab:hover{background:var(--sf-red)}
.sf-episode-list{max-width:1100px}


.sf-episode-thumb{aspect-ratio:16/9;overflow:hidden;border-radius:8px;background:#111}
.sf-episode-thumb img{width:100%;height:100%;object-fit:cover}



.sf-footer{color:#777;text-align:center;padding:50px 20px;background:#050505}

@media(max-width:900px){
  .sf-header{padding:0 18px;height:64px}
  .sf-nav{display:none}
  .sf-hero{min-height:68vh;padding:120px 24px 70px}
  .sf-section{padding:0 18px}
  .sf-card{min-width:205px;width:205px}
  
  .sf-player-hero{padding:22px 16px 8px}
  
  
  
  
  
  .sf-episode .sf-btn{grid-column:1 / -1}
}


/* V8 Fullscreen Netflix-like player improvements */
.sf-player-frame{
  background:#000;
}

.sf-player-frame:fullscreen,
.sf-player-frame:-webkit-full-screen{
  width:100vw;
  height:100vh;
  aspect-ratio:auto;
  border-radius:0;
}

.sf-player-frame:fullscreen iframe,
.sf-player-frame:-webkit-full-screen iframe{
  width:100vw;
  height:100vh;
}



#sf-next-overlay.sf-player-overlay{
  position:absolute;
  inset:0;
  background:linear-gradient(to top,rgba(0,0,0,.96),rgba(0,0,0,.72));
  z-index:50;
}

.sf-player-frame:fullscreen #sf-next-overlay,
.sf-player-frame:-webkit-full-screen #sf-next-overlay{
  display:none;
}

.sf-player-frame #sf-next-overlay{
  border-radius:16px;
}








@media (hover: none), (pointer: coarse){
  .sf-trailer-preview{
    display:none !important;
  }
  .sf-card:hover .sf-thumb-wrap.has-trailer img{
    opacity:1;
  }
}


/* V15: duração substitui o tipo do vídeo na badge superior */
.sf-type-badge{
  color:#d1d5db;
  background:rgba(0,0,0,.72);
}


/* V17: badge de episódios para séries */
.sf-type-badge{
  min-width:auto;
}


/* V18: botões estilo streaming premium */
.sf-buttons{
  align-items:center;
}

.sf-btn-play{
  background:linear-gradient(135deg,#6f7df6,#9b5cf6) !important;
  color:#fff !important;
  border-radius:16px !important;
  padding:18px 34px !important;
  min-width:260px;
  min-height:64px;
  gap:14px;
  box-shadow:0 14px 38px rgba(126,90,246,.32);
}

.sf-btn-play:hover{
  transform:translateY(-1px);
  box-shadow:0 18px 46px rgba(126,90,246,.42);
  opacity:1;
}

.sf-play-icon{
  width:34px;
  height:34px;
  border:3px solid rgba(255,255,255,.95);
  border-radius:50%;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:14px;
  line-height:1;
  padding-left:2px;
}

.sf-btn-list{
  gap:10px;
}

.sf-list-icon{
  width:28px;
  height:28px;
  border-radius:50%;
  border:2px solid rgba(255,255,255,.85);
  display:inline-flex;
  align-items:center;
  justify-content:center;
  font-size:20px;
  line-height:1;
  font-weight:700;
}



@media(max-width:900px){
  .sf-btn-play{
    min-width:100%;
    justify-content:center;
  }
}


/* V19: duração estilo YouTube/Vimeo */
.sf-type-badge{
  position:absolute;
  right:10px;
  bottom:10px;
  top:auto !important;
  left:auto !important;
  background:rgba(0,0,0,.82);
  color:#fff;
  font-size:15px;
  font-weight:700;
  border-radius:8px;
  padding:5px 10px;
  letter-spacing:.2px;
  backdrop-filter:blur(3px);
  box-shadow:0 2px 10px rgba(0,0,0,.25);
}

.sf-thumb-wrap{
  position:relative;
}


/* V20 Header premium */

.sf-header{
  position:sticky;
  top:0;
  z-index:999;
  background:linear-gradient(to bottom,rgba(0,0,0,.92),rgba(0,0,0,.55));
  backdrop-filter:blur(12px);
  padding:18px 0;
}

.sf-header-inner{
  width:min(1400px,92%);
  margin:0 auto;
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:28px;
}

.sf-logo{
  font-size:34px;
  font-weight:900;
  color:#fff;
  text-decoration:none;
}

.sf-nav{
  display:flex;
  align-items:center;
  gap:24px;
}

.sf-nav a{
  color:#d1d5db;
  text-decoration:none;
  font-weight:600;
  transition:.2s;
}

.sf-nav a:hover{
  color:#fff;
}

.sf-header-actions{
  display:flex;
  align-items:center;
  gap:22px;
}









.sf-profile-btn{
  width:58px;
  height:58px;
  border-radius:50%;
  border:2px solid rgba(255,255,255,.82);
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  text-decoration:none;
  transition:.2s;
}

.sf-profile-btn:hover{
  transform:scale(1.05);
}

.sf-profile-icon{
  font-size:28px;
}

.sf-header-subscribe{
  min-width:290px;
  min-height:72px;
  border-radius:22px !important;
  background:linear-gradient(135deg,#6d7cf6,#9b5cf6) !important;
  color:#fff !important;
  font-size:24px;
  font-weight:800;
  display:flex;
  align-items:center;
  justify-content:center;
  text-decoration:none;
  box-shadow:0 12px 34px rgba(126,90,246,.35);
}

@media(max-width:980px){

  .sf-header-inner{
    flex-wrap:wrap;
  }

  .sf-nav{
    width:100%;
    order:3;
    overflow:auto;
    padding-bottom:6px;
  }

  .sf-header-actions{
    width:100%;
    justify-content:space-between;
  }

  

  

  .sf-header-subscribe{
    min-width:180px;
    min-height:60px;
    font-size:20px;
  }
}


/* V21: ajustes play branco e header subscription */
.sf-play-icon{
  width:34px;
  height:34px;
  border:3px solid rgba(255,255,255,.96);
  border-radius:50%;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  font-size:14px;
  color:#fff !important;
  background:transparent !important;
  padding-left:2px;
  line-height:1;
}

.sf-btn-play i,
.sf-play-icon:before{
  color:#fff !important;
}

.sf-list-icon{
  width:34px;
  height:34px;
  border:3px solid rgba(255,255,255,.92);
  border-radius:50%;
  display:inline-flex !important;
  align-items:center;
  justify-content:center;
  color:#fff !important;
  font-size:15px;
  background:transparent !important;
}

.sf-profile-icon{
  font-size:32px;
  color:#fff;
}

.sf-header-subscribe{
  font-size:22px;
}

/* remove qualquer azul herdado no ícone */
.sf-btn-play *,
.sf-btn-play i,
.sf-btn-play svg{
  color:#fff !important;
  fill:#fff !important;
}


/* V22 Header refinado */

.sf-header{
  background:linear-gradient(
    to bottom,
    rgba(5,5,15,.88),
    rgba(5,5,15,.55),
    rgba(5,5,15,.18)
  ) !important;
  backdrop-filter:blur(14px);
  border-bottom:1px solid rgba(255,255,255,.06);
  padding:10px 0 !important;
}

.sf-header-inner{
  gap:18px;
}

.sf-logo{
  font-size:28px !important;
  letter-spacing:-1px;
}

.sf-nav{
  gap:18px !important;
}

.sf-nav a{
  font-size:15px;
  color:#f3f4f6;
  opacity:.9;
}

.sf-header-actions{
  gap:16px !important;
}









.sf-profile-btn{
  width:48px !important;
  height:48px !important;
  border:1px solid rgba(255,255,255,.24) !important;
  background:rgba(255,255,255,.04);
}

.sf-profile-btn:hover{
  background:rgba(255,255,255,.08);
}

.sf-profile-icon{
  font-size:24px !important;
}

.sf-header-subscribe{
  min-width:170px !important;
  min-height:54px !important;
  border-radius:18px !important;
  font-size:18px !important;
  background:linear-gradient(135deg,#6f7df6,#9b5cf6) !important;
  box-shadow:0 10px 28px rgba(126,90,246,.22) !important;
}

.sf-header-subscribe:hover{
  transform:translateY(-1px);
  box-shadow:0 14px 34px rgba(126,90,246,.28) !important;
}

@media(max-width:980px){

  .sf-logo{
    font-size:22px !important;
  }

  

  

  .sf-profile-btn{
    width:44px !important;
    height:44px !important;
  }

  .sf-header-subscribe{
    min-width:140px !important;
    min-height:48px !important;
    font-size:16px !important;
  }
}


/* V23: header vidro/transparente */

.sf-header{
  background:linear-gradient(
    to bottom,
    rgba(5,5,15,.58),
    rgba(5,5,15,.34),
    rgba(5,5,15,.10)
  ) !important;

  -webkit-backdrop-filter:blur(18px) saturate(140%);
  backdrop-filter:blur(18px) saturate(140%);

  border-bottom:1px solid rgba(255,255,255,.05) !important;
  box-shadow:0 8px 32px rgba(0,0,0,.18);
}



.sf-profile-btn{
  background:rgba(255,255,255,.03) !important;
  backdrop-filter:blur(10px);
}

.sf-header::after{
  content:"";
  position:absolute;
  left:0;
  right:0;
  bottom:0;
  height:1px;
  background:linear-gradient(
    90deg,
    transparent,
    rgba(255,255,255,.12),
    transparent
  );
}


/* V25: reduz espaço abaixo do header */

main,
.sf-main,
.site-main{
  padding-top:35px !important;
}

.sf-hero{
  margin-top:0 !important;
  padding-top:35px !important;
}

.sf-section{
  margin-top:35px !important;
}

.single-filmes .sf-player-page,
.single-clipes .sf-player-page,
.single-episodios .sf-player-page,
.single-series .sf-series-page{
  padding-top:35px !important;
}

body{
  overflow-x:hidden;
}


/* V26: alinhamento da lista de episódios */



.sf-episode-row .sf-episode-content,
.sf-episode-item .sf-episode-content,
.sf-episode-card .sf-episode-content{
  display:flex !important;
  flex-direction:column;
  justify-content:center !important;
}

.sf-episode-row .sf-btn,
.sf-episode-item .sf-btn,
.sf-episode-card .sf-btn{
  align-self:center !important;
}



@media(max-width:900px){

  

  .sf-episode-row .sf-btn,
  .sf-episode-item .sf-btn,
  .sf-episode-card .sf-btn{
    width:100%;
  }
}


/* V27 Episódios estilo streaming */

.sf-episode-netflix{
  display:grid !important;
  grid-template-columns:70px 240px 1fr auto auto !important;
  align-items:center !important;
  gap:26px !important;
  background:rgba(255,255,255,.04);
  border:1px solid rgba(255,255,255,.05);
  border-radius:18px;
  padding:22px;
  margin-bottom:18px;
  transition:.22s ease;
}

.sf-episode-netflix:hover{
  background:rgba(255,255,255,.065);
  border-color:rgba(255,255,255,.08);
}

.sf-episode-netflix .sf-episode-number{
  font-size:52px;
  font-weight:800;
  color:rgba(255,255,255,.82);
  text-align:center;
}

.sf-episode-netflix .sf-episode-thumb{
  position:relative;
  overflow:hidden;
  border-radius:14px;
  aspect-ratio:16/9;
}

.sf-episode-netflix .sf-episode-thumb img{
  width:100%;
  height:100%;
  object-fit:cover;
  display:block;
}

.sf-episode-netflix .sf-episode-thumb::after{
  content:"";
  font-family:"Font Awesome 6 Free";
  font-weight:900;
  position:absolute;
  inset:0;
  display:flex;
  align-items:center;
  justify-content:center;
  font-size:42px;
  color:#fff;
  background:rgba(0,0,0,.18);
  opacity:.95;
}

.sf-episode-netflix .sf-episode-content{
  display:flex;
  flex-direction:column;
  justify-content:center;
  gap:10px;
}

.sf-episode-netflix .sf-episode-title{
  font-size:22px;
  font-weight:800;
  color:#fff;
  line-height:1.2;
}

.sf-episode-netflix .sf-episode-description{
  color:rgba(255,255,255,.72);
  line-height:1.5;
  font-size:17px;
}

.sf-episode-netflix .sf-episode-duration{
  font-size:20px;
  font-weight:700;
  color:rgba(255,255,255,.88);
  min-width:80px;
  text-align:right;
}

.sf-episode-netflix .sf-btn{
  min-width:160px;
  min-height:54px;
  border-radius:14px !important;
  background:linear-gradient(135deg,#6f7df6,#9b5cf6) !important;
  color:#fff !important;
  display:flex;
  align-items:center;
  justify-content:center;
  gap:10px;
  font-size:18px;
  font-weight:700;
  box-shadow:0 10px 28px rgba(126,90,246,.22);
}

.sf-episode-netflix .sf-btn i{
  font-size:15px;
}

@media(max-width:1100px){

  .sf-episode-netflix{
    grid-template-columns:1fr !important;
    gap:18px !important;
  }

  .sf-episode-netflix .sf-episode-number{
    display:none;
  }

  .sf-episode-netflix .sf-episode-duration{
    text-align:left;
  }

  .sf-episode-netflix .sf-btn{
    width:100%;
  }
}


/* V28: header sempre glass/transparente */

.sf-header,
.sf-header.is-top,
.sf-header.scrolled,
.site-header,
.site-header.is-top,
.site-header.scrolled{
  background:linear-gradient(
    to bottom,
    rgba(5,5,15,.50),
    rgba(5,5,15,.32),
    rgba(5,5,15,.12)
  ) !important;

  -webkit-backdrop-filter:blur(18px) saturate(145%) !important;
  backdrop-filter:blur(18px) saturate(145%) !important;

  border-bottom:1px solid rgba(255,255,255,.07) !important;
  box-shadow:0 10px 34px rgba(0,0,0,.18) !important;
}

.sf-header::before,
.site-header::before{
  content:"";
  position:absolute;
  inset:0;
  background:linear-gradient(
    90deg,
    rgba(0,0,0,.18),
    rgba(255,255,255,.03),
    rgba(0,0,0,.14)
  );
  pointer-events:none;
  z-index:-1;
}

.sf-header-inner{
  position:relative;
  z-index:2;
}

.sf-search-form,
.sf-profile-btn{
  background:rgba(255,255,255,.055) !important;
  -webkit-backdrop-filter:blur(12px) !important;
  backdrop-filter:blur(12px) !important;
}


/* V29: reduz espaço entre header e player/conteúdo */

.sf-header + *,
.sf-header + main,
.sf-header + .site-content,
.site-header + *{
  margin-top:0 !important;
}

main,
.site-main,
.sf-main{
  padding-top:12px !important;
}

.sf-player-page,
.sf-video-page,
.sf-series-page,
.sf-hero,
.sf-content{
  padding-top:12px !important;
  margin-top:0 !important;
}

.single-filmes .sf-player-wrap,
.single-clipes .sf-player-wrap,
.single-episodios .sf-player-wrap{
  margin-top:8px !important;
}

.sf-video-player,
.sf-player-container{
  margin-top:0 !important;
}

body.admin-bar .sf-header{
  top:32px;
}


/* V30: correção visual dos botões */

.sf-btn-play{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:16px !important;
}

.sf-btn-play .sf-play-icon,
.sf-btn-play i.fa-play{
  width:44px !important;
  height:44px !important;
  min-width:44px !important;
  min-height:44px !important;

  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;

  border:3px solid rgba(255,255,255,.96) !important;
  border-radius:50% !important;

  color:#fff !important;
  fill:#fff !important;

  background:transparent !important;
  box-shadow:none !important;

  font-size:15px !important;
  line-height:1 !important;

  padding-left:3px !important;
}

.sf-btn-play *{
  color:#fff !important;
}

.sf-btn-play svg{
  fill:#fff !important;
}

.sf-episode-netflix .sf-btn{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:12px !important;
}

.sf-episode-netflix .sf-btn i{
  margin:0 !important;
  padding:0 !important;
  font-size:14px !important;
  line-height:1 !important;
}

.sf-episode-netflix .sf-btn span{
  display:inline-flex;
  align-items:center;
}

.sf-btn{
  letter-spacing:-.2px;
}


/* V31: remoção forte do espaço grande abaixo do header */

html,
body{
  margin-top:0 !important;
  padding-top:0 !important;
}

.sf-header{
  margin-bottom:0 !important;
}

.sf-main,
main.sf-main,
main,
.site-main,
.site-content,
#content,
#primary{
  padding-top:0 !important;
  margin-top:0 !important;
}

.sf-header + .sf-main,
.sf-header + main,
.sf-header + section,
.sf-header + div{
  margin-top:0 !important;
  padding-top:0 !important;
}

/* Páginas de arquivo/listagem */
.post-type-archive-filmes .sf-section,
.post-type-archive-clipes .sf-section,
.post-type-archive-series .sf-section,
.archive .sf-section{
  padding-top:0 !important;
  margin-top:16px !important;
}

/* Home */
.home .sf-section:first-of-type,
.front-page .sf-section:first-of-type{
  margin-top:16px !important;
  padding-top:0 !important;
}

/* Páginas single com player */
.single-filmes .sf-single,
.single-clipes .sf-single,
.single-episodios .sf-single,
.single-series .sf-single{
  padding-top:0 !important;
  margin-top:0 !important;
}

.sf-player-hero{
  padding-top:16px !important;
  margin-top:0 !important;
}

/* Hero de séries/home */
.sf-hero{
  margin-top:0 !important;
  padding-top:96px !important;
}

/* Caso o navegador esteja logado e admin bar visível */
body.admin-bar .sf-header{
  top:32px !important;
}

body.admin-bar .sf-main,
body.admin-bar main{
  padding-top:0 !important;
}





/* V33: continuar assistindo igual assistir agora */

.sf-btn-continue,
.sf-continue-btn,
a[href*="continuar"]{
  background:linear-gradient(135deg,#6f7df6,#9b5cf6) !important;
  color:#fff !important;
  border-radius:24px !important;
  min-height:88px !important;
  padding:18px 38px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:18px !important;
  box-shadow:0 18px 46px rgba(126,90,246,.34) !important;
}

.sf-btn-continue i,
.sf-continue-btn i,
a[href*="continuar"] i{
  width:56px !important;
  height:56px !important;
  min-width:56px !important;
  border:4px solid rgba(255,255,255,.96) !important;
  border-radius:50% !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  color:#fff !important;
  font-size:18px !important;
  padding-left:3px !important;
}

.sf-btn-continue span,
.sf-continue-btn span,
a[href*="continuar"] span{
  font-size:26px !important;
  font-weight:800 !important;
  color:#fff !important;
}


/* V34 correção botão continuar */

.sf-btn-continue{
  font-size:26px !important;
  font-weight:800 !important;
}

.sf-btn-continue .fa-play{
  color:#fff !important;
}





/* V36: player tenta iniciar com áudio ativo */
.sf-player-frame iframe{
  background:#000;
}


/* V38: header responsivo, logo, busca overlay e favoritos */
.sf-logo{display:flex;align-items:center;color:#fff;text-decoration:none}
.sf-logo img,.sf-logo .custom-logo{max-height:58px;width:auto;display:block}
.sf-menu-toggle{display:none;width:46px;height:46px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.06);color:#fff;align-items:center;justify-content:center;font-size:20px;cursor:pointer}

.sf-search-trigger{width:48px;height:48px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.055);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;-webkit-backdrop-filter:blur(12px);backdrop-filter:blur(12px);transition:.2s ease}
.sf-search-trigger:hover{background:rgba(255,255,255,.10);transform:translateY(-1px)}
.sf-search-trigger i{font-size:18px;color:#fff}
.sf-search-overlay{position:fixed;inset:0;z-index:999999;background:rgba(0,0,0,.84);-webkit-backdrop-filter:blur(14px);backdrop-filter:blur(14px);display:none;align-items:flex-start;justify-content:center;padding:140px 24px 24px}
.sf-search-overlay.is-open{display:flex}
.sf-search-overlay-form{width:min(900px,94vw);min-height:86px;background:rgba(255,255,255,.08);border:1px solid rgba(255,255,255,.14);border-radius:28px;display:flex;align-items:center;gap:16px;padding:0 22px;box-shadow:0 24px 80px rgba(0,0,0,.38)}
.sf-search-overlay-input{flex:1;background:transparent;border:0;outline:0;color:#fff;font-size:30px;font-weight:700}
.sf-search-overlay-input::placeholder{color:rgba(255,255,255,.68)}

.sf-search-close{position:absolute;top:34px;right:42px;width:54px;height:54px;border:0;border-radius:50%;background:rgba(255,255,255,.10);color:#fff;font-size:34px;line-height:1;cursor:pointer}
.sf-favorite-btn{border:0}
.sf-favorite-btn.is-active{background:rgba(255,255,255,.18)!important}
.sf-favorite-btn.is-loading{opacity:.65;pointer-events:none}
.sf-header-actions{gap:14px!important}
@media(max-width:900px){
  .sf-header{padding:8px 0!important}
  .sf-header-inner{width:94%;display:grid!important;grid-template-columns:auto 1fr auto auto auto;gap:10px!important}
  .sf-logo img,.sf-logo .custom-logo{max-height:42px}
  .sf-logo{font-size:20px!important;min-width:0;order:2}
  .sf-menu-toggle{display:flex;order:1}
  .sf-header-actions{order:3;width:auto!important;gap:8px!important;justify-content:flex-end!important}
  .sf-nav{order:6;grid-column:1/-1;display:none!important;width:100%;flex-direction:column;gap:0!important;background:rgba(8,8,12,.92);border:1px solid rgba(255,255,255,.08);border-radius:18px;overflow:hidden;margin-top:8px}
  .sf-nav.is-open{display:flex!important}
  .sf-nav a{padding:16px 18px;border-bottom:1px solid rgba(255,255,255,.06);font-size:16px}
  .sf-search-trigger,.sf-profile-btn{width:42px!important;height:42px!important}
  .sf-profile-icon{font-size:22px!important}
  .sf-header-subscribe{min-width:auto!important;min-height:42px!important;height:42px!important;padding:0 14px!important;border-radius:14px!important;font-size:14px!important}
  .sf-search-overlay{padding-top:110px}
  .sf-search-overlay-form{min-height:72px;border-radius:22px}
  .sf-search-overlay-input{font-size:20px}
  
  .sf-search-close{top:22px;right:22px;width:46px;height:46px}
}
@media(max-width:520px){.sf-header-subscribe{display:none!important}.sf-header-inner{grid-template-columns:auto 1fr auto auto}}


/* V39: logo do header ajustada */

.sf-header{
  min-height:72px !important;
  overflow:visible !important;
}

.sf-header-inner{
  min-height:72px !important;
  align-items:center !important;
}

.sf-logo{
  max-width:220px !important;
  height:64px !important;
  display:flex !important;
  align-items:center !important;
  overflow:visible !important;
}

.sf-logo img,
.sf-logo .custom-logo{
  max-height:54px !important;
  width:auto !important;
  max-width:220px !important;
  object-fit:contain !important;
  display:block !important;
}

@media(max-width:900px){

  .sf-header{
    min-height:56px !important;
    padding:6px 0 !important;
  }

  .sf-header-inner{
    min-height:56px !important;
  }

  .sf-logo{
    max-width:68px !important;
    height:46px !important;
  }

  .sf-logo img,
  .sf-logo .custom-logo{
    max-height:42px !important;
    max-width:68px !important;
  }

  .sf-menu-toggle,
  .sf-search-trigger,
  .sf-profile-btn{
    width:38px !important;
    height:38px !important;
  }

  .sf-header-subscribe{
    height:38px !important;
    min-height:38px !important;
    padding:0 12px !important;
    font-size:13px !important;
  }
}

@media(min-width:901px){
  .sf-logo img,
  .sf-logo .custom-logo{
    transform:none !important;
  }
}


/* V40: aproximação Netflix - menu perfil, filas e cards padronizados */

.sf-profile-menu-wrap{
  position:relative;
  display:flex;
  align-items:center;
}

.sf-profile-menu{
  position:absolute;
  top:calc(100% + 16px);
  right:0;
  width:260px;
  background:rgba(0,0,0,.86);
  border:1px solid rgba(255,255,255,.18);
  border-radius:6px;
  padding:12px 0;
  display:none;
  z-index:99999;
  -webkit-backdrop-filter:blur(14px);
  backdrop-filter:blur(14px);
  box-shadow:0 22px 70px rgba(0,0,0,.55);
}

.sf-profile-menu.is-open{
  display:block;
}

.sf-profile-menu::before{
  content:"";
  position:absolute;
  top:-10px;
  right:26px;
  width:18px;
  height:18px;
  background:rgba(0,0,0,.86);
  border-left:1px solid rgba(255,255,255,.18);
  border-top:1px solid rgba(255,255,255,.18);
  transform:rotate(45deg);
}

.sf-profile-menu a{
  display:flex;
  align-items:center;
  gap:14px;
  color:#fff;
  text-decoration:none;
  padding:14px 20px;
  font-size:16px;
  font-weight:600;
}

.sf-profile-menu a:hover{
  background:rgba(255,255,255,.10);
}

.sf-profile-menu i{
  width:22px;
  color:rgba(255,255,255,.82);
  text-align:center;
}

/* Cards padronizados */
.sf-card,
.sf-card-poster{
  min-width:300px !important;
  width:300px !important;
}

.sf-card .sf-thumb-wrap,
.sf-card-poster .sf-thumb-wrap{
  aspect-ratio:16/9 !important;
}

.sf-card .sf-thumb-wrap img,
.sf-card-poster .sf-thumb-wrap img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}

.sf-card-body{
  min-height:86px;
}

.sf-netflix-row{
  margin-top:18px !important;
  margin-bottom:34px !important;
}

.sf-section-title{
  font-size:24px !important;
  margin-bottom:12px !important;
}

.sf-row{
  gap:12px !important;
  padding-bottom:22px !important;
}

/* Badge de duração/episódios no padrão */
.sf-type-badge{
  right:10px !important;
  bottom:10px !important;
  top:auto !important;
  left:auto !important;
  background:rgba(0,0,0,.82) !important;
  color:#fff !important;
  font-size:14px !important;
  border-radius:7px !important;
  padding:4px 8px !important;
}

/* header logo estilo app/site */
.sf-logo img,
.sf-logo .custom-logo{
  object-fit:contain !important;
}

@media(max-width:900px){
  .sf-card,
  .sf-card-poster{
    min-width:185px !important;
    width:185px !important;
  }

  .sf-card-body{
    min-height:78px;
    padding:10px 10px 12px !important;
  }

  .sf-card h3{
    font-size:15px !important;
    line-height:1.25 !important;
  }

  .sf-section-title{
    font-size:20px !important;
  }

  .sf-profile-menu{
    width:230px;
    right:-4px;
  }
}

@media(min-width:1200px){
  .sf-card,
  .sf-card-poster{
    min-width:320px !important;
    width:320px !important;
  }
}


/* V41 - home visitante igual home logado */
.logged-out .sf-home,
body:not(.logged-in) .sf-home{
  opacity:1;
}

.logged-out .sf-mylist-btn,
body:not(.logged-in) .sf-mylist-btn{
  display:none !important;
}


/* V42: páginas de lista com 4 vídeos por linha e largura total */

.archive .sf-section,
.post-type-archive-filmes .sf-section,
.post-type-archive-clipes .sf-section,
.post-type-archive-series .sf-section,
.post-type-archive-episodios .sf-section{
  width:100% !important;
  max-width:none !important;
  padding-left:3vw !important;
  padding-right:3vw !important;
  box-sizing:border-box;
}

.archive .sf-row-wrap,
.post-type-archive-filmes .sf-row-wrap,
.post-type-archive-clipes .sf-row-wrap,
.post-type-archive-series .sf-row-wrap,
.post-type-archive-episodios .sf-row-wrap{
  display:grid !important;
  grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  gap:28px !important;
  width:100% !important;
  max-width:none !important;
  align-items:stretch !important;
}

.archive .sf-row-wrap .sf-card,
.post-type-archive-filmes .sf-row-wrap .sf-card,
.post-type-archive-clipes .sf-row-wrap .sf-card,
.post-type-archive-series .sf-row-wrap .sf-card,
.post-type-archive-episodios .sf-row-wrap .sf-card{
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
}

.archive .sf-row-wrap .sf-card .sf-thumb-wrap,
.post-type-archive-filmes .sf-row-wrap .sf-card .sf-thumb-wrap,
.post-type-archive-clipes .sf-row-wrap .sf-card .sf-thumb-wrap,
.post-type-archive-series .sf-row-wrap .sf-card .sf-thumb-wrap,
.post-type-archive-episodios .sf-row-wrap .sf-card .sf-thumb-wrap{
  aspect-ratio:16/9 !important;
}

.archive .sf-section-title,
.post-type-archive-filmes .sf-section-title,
.post-type-archive-clipes .sf-section-title,
.post-type-archive-series .sf-section-title,
.post-type-archive-episodios .sf-section-title{
  margin-left:0 !important;
  font-size:34px !important;
}

@media(max-width:1200px){
  .archive .sf-row-wrap,
  .post-type-archive-filmes .sf-row-wrap,
  .post-type-archive-clipes .sf-row-wrap,
  .post-type-archive-series .sf-row-wrap,
  .post-type-archive-episodios .sf-row-wrap{
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  }
}

@media(max-width:800px){
  .archive .sf-row-wrap,
  .post-type-archive-filmes .sf-row-wrap,
  .post-type-archive-clipes .sf-row-wrap,
  .post-type-archive-series .sf-row-wrap,
  .post-type-archive-episodios .sf-row-wrap{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:16px !important;
  }

  .archive .sf-section,
  .post-type-archive-filmes .sf-section,
  .post-type-archive-clipes .sf-section,
  .post-type-archive-series .sf-section,
  .post-type-archive-episodios .sf-section{
    padding-left:16px !important;
    padding-right:16px !important;
  }
}

@media(max-width:480px){
  .archive .sf-row-wrap,
  .post-type-archive-filmes .sf-row-wrap,
  .post-type-archive-clipes .sf-row-wrap,
  .post-type-archive-series .sf-row-wrap,
  .post-type-archive-episodios .sf-row-wrap{
    grid-template-columns:1fr !important;
  }
}


/* V43: Ver na TV + Próximo vídeo */


.sf-cast-btn{
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.08);
  color:#fff;
  border-radius:14px;
  padding:12px 18px;
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:15px;
  font-weight:800;
  cursor:pointer;
  backdrop-filter:blur(12px);
  transition:.2s ease;
}

.sf-cast-btn:hover{
  background:rgba(255,255,255,.14);
  transform:translateY(-1px);
}



.sf-cast-modal.is-open{
  display:flex;
}















#sf-next-overlay{
  position:fixed;
  inset:0;
  background:rgba(0,0,0,.88);
  display:none;
  align-items:center;
  justify-content:center;
  z-index:99998;
  color:#fff;
  text-align:center;
  padding:28px;
  backdrop-filter:blur(10px);
}

.sf-next-box{
  width:min(620px,100%);
  background:linear-gradient(135deg,rgba(28,28,32,.96),rgba(8,8,10,.96));
  border:1px solid rgba(255,255,255,.10);
  border-radius:26px;
  padding:38px;
  box-shadow:0 28px 90px rgba(0,0,0,.55);
}

.sf-next-box h2{
  font-size:38px;
  margin:0 0 12px;
}

.sf-next-box p{
  color:rgba(255,255,255,.78);
  font-size:20px;
}

.sf-next-actions{
  display:flex;
  gap:14px;
  justify-content:center;
  flex-wrap:wrap;
  margin-top:24px;
}

@media(max-width:900px){
  

  .sf-cast-btn{
    width:100%;
    justify-content:center;
  }

  .sf-next-box{
    padding:28px 20px;
  }
}


/* V44: Header Netflix padronizado com logo pequena */

.sf-header,
.site-header,
.netflix-header{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  width:100% !important;
  height:78px !important;
  min-height:78px !important;
  z-index:9999 !important;

  display:flex !important;
  align-items:center !important;

  background:rgba(5,5,5,.55) !important;
  -webkit-backdrop-filter:blur(18px) saturate(140%) !important;
  backdrop-filter:blur(18px) saturate(140%) !important;

  border-bottom:1px solid rgba(255,255,255,.06) !important;
  box-shadow:0 8px 28px rgba(0,0,0,.18) !important;

  padding:0 !important;
  margin:0 !important;
  overflow:visible !important;
}

body.admin-bar .sf-header,
body.admin-bar .site-header,
body.admin-bar .netflix-header{
  top:32px !important;
}

.sf-header-inner{
  width:100% !important;
  max-width:none !important;
  min-height:78px !important;
  height:78px !important;
  margin:0 !important;
  padding:0 32px !important;

  display:grid !important;
  grid-template-columns:minmax(140px, 260px) 1fr auto !important;
  align-items:center !important;
  gap:24px !important;
}

.sf-logo{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  height:42px !important;
  max-height:42px !important;
  max-width:220px !important;
  overflow:visible !important;

  color:#fff !important;
  font-size:28px !important;
  font-weight:900 !important;
  text-decoration:none !important;
  line-height:1 !important;
  letter-spacing:-.6px !important;

  transform:none !important;
  padding:0 !important;
  margin:0 !important;
}

.sf-logo .custom-logo-link,
.sf-logo img,
.sf-logo .custom-logo,
.custom-logo-link img,
.site-logo img{
  max-height:42px !important;
  height:auto !important;
  width:auto !important;
  max-width:220px !important;
  object-fit:contain !important;
  display:block !important;

  transform:none !important;
  padding:0 !important;
  margin:0 !important;
}

.sf-nav{
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  gap:34px !important;
  width:auto !important;
  margin:0 !important;
  padding:0 !important;
}

.sf-nav a{
  color:#fff !important;
  text-decoration:none !important;
  font-size:17px !important;
  font-weight:700 !important;
  opacity:.88 !important;
  transition:opacity .2s ease !important;
}

.sf-nav a:hover{
  opacity:1 !important;
}

.sf-header-actions{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:14px !important;
  width:auto !important;
  margin:0 !important;
  padding:0 !important;
}

.sf-search-trigger,
.sf-profile-btn{
  width:54px !important;
  height:54px !important;
  min-width:54px !important;
  min-height:54px !important;

  border-radius:50% !important;
  border:1px solid rgba(255,255,255,.16) !important;
  background:rgba(255,255,255,.06) !important;
  color:#fff !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  -webkit-backdrop-filter:blur(12px) !important;
  backdrop-filter:blur(12px) !important;

  padding:0 !important;
  margin:0 !important;
  cursor:pointer !important;
}

.sf-search-trigger i,
.sf-profile-btn i,
.sf-profile-icon{
  color:#fff !important;
  font-size:22px !important;
  line-height:1 !important;
}

.sf-header-subscribe{
  height:54px !important;
  min-height:54px !important;
  padding:0 34px !important;
  border-radius:18px !important;

  background:linear-gradient(135deg,#6d5cff,#9c6bff) !important;
  color:#fff !important;

  border:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  font-size:20px !important;
  font-weight:800 !important;
  text-decoration:none !important;

  box-shadow:0 10px 30px rgba(132,96,255,.35) !important;
}

.sf-header-subscribe:hover{
  transform:translateY(-1px) !important;
  box-shadow:0 14px 34px rgba(132,96,255,.42) !important;
}

/* Espaçamento global para header fixo */
body{
  padding-top:78px !important;
}

body.admin-bar{
  padding-top:110px !important;
}

.sf-main,
main,
.site-main,
.site-content{
  margin-top:0 !important;
}

/* Evita que o hero empurre ou invada o header */
.sf-hero{
  margin-top:-78px !important;
  padding-top:150px !important;
}

/* Mobile */
@media(max-width:900px){

  .sf-header,
  .site-header,
  .netflix-header{
    height:64px !important;
    min-height:64px !important;
  }

  .sf-header-inner{
    height:64px !important;
    min-height:64px !important;
    padding:0 14px !important;
    grid-template-columns:auto 1fr auto !important;
    gap:10px !important;
  }

  body{
    padding-top:64px !important;
  }

  body.admin-bar{
    padding-top:110px !important;
  }

  .sf-menu-toggle{
    display:flex !important;
    order:1 !important;
    width:42px !important;
    height:42px !important;
    border-radius:50% !important;
    border:1px solid rgba(255,255,255,.16) !important;
    background:rgba(255,255,255,.06) !important;
    color:#fff !important;
    align-items:center !important;
    justify-content:center !important;
  }

  .sf-logo{
    order:2 !important;
    height:36px !important;
    max-height:36px !important;
    max-width:74px !important;
    justify-content:flex-start !important;
    font-size:0 !important;
  }

  .sf-logo .custom-logo-link,
  .sf-logo img,
  .sf-logo .custom-logo,
  .custom-logo-link img,
  .site-logo img{
    max-height:34px !important;
    max-width:74px !important;
  }

  .sf-header-actions{
    order:3 !important;
    gap:8px !important;
  }

  .sf-search-trigger,
  .sf-profile-btn{
    width:42px !important;
    height:42px !important;
    min-width:42px !important;
    min-height:42px !important;
  }

  .sf-search-trigger i,
  .sf-profile-btn i,
  .sf-profile-icon{
    font-size:19px !important;
  }

  .sf-header-subscribe{
    height:42px !important;
    min-height:42px !important;
    padding:0 13px !important;
    border-radius:14px !important;
    font-size:13px !important;
  }

  .sf-nav{
    order:5 !important;
    grid-column:1 / -1 !important;
    display:none !important;
    flex-direction:column !important;
    gap:0 !important;
    background:rgba(0,0,0,.92) !important;
    border:1px solid rgba(255,255,255,.10) !important;
    border-radius:18px !important;
    overflow:hidden !important;
    margin-top:8px !important;
    width:100% !important;
  }

  .sf-nav.is-open{
    display:flex !important;
  }

  .sf-nav a{
    width:100% !important;
    padding:15px 18px !important;
    border-bottom:1px solid rgba(255,255,255,.06) !important;
    font-size:16px !important;
    text-align:left !important;
  }

  .sf-hero{
    margin-top:-64px !important;
    padding-top:118px !important;
  }
}

@media(max-width:520px){
  .sf-header-subscribe{
    display:none !important;
  }

  .sf-logo{
    max-width:62px !important;
  }

  .sf-logo .custom-logo-link,
  .sf-logo img,
  .sf-logo .custom-logo,
  .custom-logo-link img,
  .site-logo img{
    max-width:62px !important;
  }
}


/* V45: HEADER CORRIGIDO - layout fixo sem bug */
.sf-header{
  position:fixed !important;
  top:0 !important;
  left:0 !important;
  right:0 !important;
  z-index:99999 !important;
  height:76px !important;
  min-height:76px !important;
  padding:0 !important;
  margin:0 !important;
  display:block !important;
  background:rgba(5,5,8,.62) !important;
  -webkit-backdrop-filter:blur(18px) saturate(145%) !important;
  backdrop-filter:blur(18px) saturate(145%) !important;
  border-bottom:1px solid rgba(255,255,255,.07) !important;
  box-shadow:0 10px 34px rgba(0,0,0,.20) !important;
  overflow:visible !important;
}

body.admin-bar .sf-header{
  top:32px !important;
}

.sf-header-inner{
  width:100% !important;
  height:76px !important;
  min-height:76px !important;
  padding:0 34px !important;
  margin:0 !important;
  display:grid !important;
  grid-template-columns:240px 1fr auto !important;
  align-items:center !important;
  gap:24px !important;
  box-sizing:border-box !important;
}

.sf-header-left{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  height:76px !important;
  min-width:0 !important;
}

.sf-logo{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  height:44px !important;
  max-height:44px !important;
  max-width:210px !important;
  overflow:hidden !important;
  color:#fff !important;
  font-size:27px !important;
  font-weight:900 !important;
  line-height:1 !important;
  text-decoration:none !important;
  white-space:nowrap !important;
  transform:none !important;
  margin:0 !important;
  padding:0 !important;
}

.sf-logo .custom-logo-link,
.sf-logo img,
.sf-logo .custom-logo,
.custom-logo-link img{
  display:block !important;
  max-height:44px !important;
  max-width:210px !important;
  height:auto !important;
  width:auto !important;
  object-fit:contain !important;
  transform:none !important;
  margin:0 !important;
  padding:0 !important;
}

.sf-nav{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:34px !important;
  height:76px !important;
  width:auto !important;
  margin:0 !important;
  padding:0 !important;
  position:static !important;
  background:transparent !important;
  border:0 !important;
}

.sf-nav a{
  color:#fff !important;
  font-size:17px !important;
  font-weight:800 !important;
  text-decoration:none !important;
  opacity:.88 !important;
  padding:0 !important;
  margin:0 !important;
  line-height:1 !important;
}

.sf-nav a:hover{
  opacity:1 !important;
}

.sf-header-actions{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  gap:14px !important;
  height:76px !important;
  width:auto !important;
  margin:0 !important;
  padding:0 !important;
  position:relative !important;
}

.sf-search-trigger,
.sf-profile-btn{
  width:50px !important;
  height:50px !important;
  min-width:50px !important;
  min-height:50px !important;
  border-radius:50% !important;
  border:1px solid rgba(255,255,255,.18) !important;
  background:rgba(255,255,255,.065) !important;
  color:#fff !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 !important;
  margin:0 !important;
  cursor:pointer !important;
  -webkit-backdrop-filter:blur(12px) !important;
  backdrop-filter:blur(12px) !important;
}

.sf-search-trigger i,
.sf-profile-btn i,
.sf-profile-icon{
  color:#fff !important;
  font-size:21px !important;
  line-height:1 !important;
}

.sf-header-subscribe{
  height:50px !important;
  min-height:50px !important;
  padding:0 28px !important;
  border-radius:17px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border:0 !important;
  background:linear-gradient(135deg,#6d5cff,#9c6bff) !important;
  color:#fff !important;
  font-size:18px !important;
  font-weight:900 !important;
  text-decoration:none !important;
  white-space:nowrap !important;
  box-shadow:0 10px 28px rgba(132,96,255,.34) !important;
}

.sf-menu-toggle{
  display:none !important;
}

/* conteúdo abaixo do header fixo */
body{
  padding-top:76px !important;
}

body.admin-bar{
  padding-top:108px !important;
}

.sf-main,
main.sf-main{
  margin-top:0 !important;
  padding-top:0 !important;
}

/* hero encaixa atrás do header de forma controlada */
.sf-hero{
  margin-top:-76px !important;
  padding-top:142px !important;
}

/* dropdown perfil */
.sf-profile-menu-wrap{
  position:relative !important;
  display:flex !important;
  align-items:center !important;
}

.sf-profile-menu{
  position:absolute !important;
  top:calc(100% + 14px) !important;
  right:0 !important;
  width:240px !important;
  background:rgba(0,0,0,.88) !important;
  border:1px solid rgba(255,255,255,.16) !important;
  border-radius:8px !important;
  padding:10px 0 !important;
  display:none !important;
  z-index:100000 !important;
  -webkit-backdrop-filter:blur(14px) !important;
  backdrop-filter:blur(14px) !important;
  box-shadow:0 22px 70px rgba(0,0,0,.55) !important;
}

.sf-profile-menu.is-open{
  display:block !important;
}

.sf-profile-menu a{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  color:#fff !important;
  text-decoration:none !important;
  padding:13px 18px !important;
  font-size:15px !important;
  font-weight:700 !important;
}

.sf-profile-menu a:hover{
  background:rgba(255,255,255,.10) !important;
}

/* mobile */
@media(max-width:900px){
  .sf-header{
    height:62px !important;
    min-height:62px !important;
  }

  .sf-header-inner{
    height:62px !important;
    min-height:62px !important;
    padding:0 12px !important;
    grid-template-columns:auto 1fr auto !important;
    gap:10px !important;
  }

  .sf-menu-toggle{
    display:flex !important;
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    border-radius:50% !important;
    border:1px solid rgba(255,255,255,.18) !important;
    background:rgba(255,255,255,.065) !important;
    color:#fff !important;
    align-items:center !important;
    justify-content:center !important;
    padding:0 !important;
    margin:0 !important;
    order:1 !important;
  }

  .sf-header-left{
    height:62px !important;
    justify-content:flex-start !important;
    order:2 !important;
  }

  .sf-logo{
    height:38px !important;
    max-height:38px !important;
    max-width:74px !important;
    font-size:0 !important;
    overflow:hidden !important;
  }

  .sf-logo .custom-logo-link,
  .sf-logo img,
  .sf-logo .custom-logo,
  .custom-logo-link img{
    max-height:36px !important;
    max-width:74px !important;
  }

  .sf-header-actions{
    height:62px !important;
    gap:8px !important;
    order:3 !important;
  }

  .sf-search-trigger,
  .sf-profile-btn{
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    min-height:40px !important;
  }

  .sf-search-trigger i,
  .sf-profile-btn i,
  .sf-profile-icon{
    font-size:18px !important;
  }

  .sf-header-subscribe{
    height:40px !important;
    min-height:40px !important;
    padding:0 12px !important;
    border-radius:13px !important;
    font-size:13px !important;
  }

  .sf-nav{
    display:none !important;
    position:absolute !important;
    top:62px !important;
    left:12px !important;
    right:12px !important;
    height:auto !important;
    flex-direction:column !important;
    justify-content:flex-start !important;
    align-items:stretch !important;
    gap:0 !important;
    background:rgba(0,0,0,.94) !important;
    border:1px solid rgba(255,255,255,.10) !important;
    border-radius:16px !important;
    overflow:hidden !important;
    z-index:100000 !important;
  }

  .sf-nav.is-open{
    display:flex !important;
  }

  .sf-nav a{
    padding:16px 18px !important;
    border-bottom:1px solid rgba(255,255,255,.06) !important;
    font-size:16px !important;
    line-height:1.2 !important;
    text-align:left !important;
  }

  body{
    padding-top:62px !important;
  }

  body.admin-bar{
    padding-top:108px !important;
  }

  .sf-hero{
    margin-top:-62px !important;
    padding-top:116px !important;
  }
}

@media(max-width:520px){
  .sf-header-subscribe{
    display:none !important;
  }
}


/* V46 - botão continuar assistir igual ao botão assistir */

.sf-continue-btn,
.sf-btn-continue,
.continue-watching-btn{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:18px !important;

    min-width:520px !important;
    height:110px !important;

    padding:0 42px !important;

    border-radius:30px !important;
    border:0 !important;

    background:linear-gradient(135deg,#7c7cff,#a56dff) !important;

    color:#fff !important;
    text-decoration:none !important;

    font-size:34px !important;
    font-weight:900 !important;

    box-shadow:0 25px 55px rgba(118,92,255,.35) !important;

    transition:all .2s ease !important;
}

.sf-continue-btn:hover,
.sf-btn-continue:hover,
.continue-watching-btn:hover{
    transform:translateY(-2px) scale(1.01) !important;
}

.sf-continue-btn i,
.sf-btn-continue i,
.continue-watching-btn i{
    width:68px !important;
    height:68px !important;

    border-radius:50% !important;
    border:4px solid rgba(255,255,255,.9) !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    font-size:30px !important;
    color:#fff !important;
}

/* força texto correto */
.sf-continue-btn span,
.sf-btn-continue span,
.continue-watching-btn span{
    font-size:inherit !important;
    font-weight:900 !important;
}

/* mobile */
@media(max-width:768px){

    .sf-continue-btn,
    .sf-btn-continue,
    .continue-watching-btn{
        min-width:auto !important;
        width:100% !important;
        max-width:100% !important;

        height:84px !important;

        font-size:24px !important;

        border-radius:24px !important;

        gap:14px !important;
    }

    .sf-continue-btn i,
    .sf-btn-continue i,
    .continue-watching-btn i{
        width:54px !important;
        height:54px !important;
        font-size:22px !important;
    }
}


/* V47: botão continuar na página da série igual ao Assistir da home */
.sf-hero .sf-btn-continue,
.sf-hero .sf-continue-btn,
.sf-hero a.sf-btn-play,
.sf-hero .sf-btn-play.sf-btn-continue{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:22px !important;

  min-width:520px !important;
  width:auto !important;
  height:110px !important;
  min-height:110px !important;

  padding:0 56px !important;
  border:0 !important;
  border-radius:30px !important;

  background:linear-gradient(135deg,#7778ff,#9d6bff) !important;
  color:#fff !important;

  font-size:42px !important;
  font-weight:900 !important;
  line-height:1 !important;
  text-decoration:none !important;

  box-shadow:0 25px 60px rgba(118,92,255,.36) !important;
}

.sf-hero .sf-btn-continue:hover,
.sf-hero .sf-continue-btn:hover,
.sf-hero a.sf-btn-play:hover,
.sf-hero .sf-btn-play.sf-btn-continue:hover{
  transform:translateY(-2px) scale(1.01) !important;
  opacity:1 !important;
}

.sf-hero .sf-btn-continue i,
.sf-hero .sf-continue-btn i,
.sf-hero a.sf-btn-play i,
.sf-hero .sf-btn-play.sf-btn-continue i{
  width:72px !important;
  height:72px !important;
  min-width:72px !important;
  min-height:72px !important;

  border:5px solid rgba(255,255,255,.95) !important;
  border-radius:50% !important;

  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;

  color:#fff !important;
  background:transparent !important;

  font-size:25px !important;
  line-height:1 !important;
  padding-left:4px !important;
}

.sf-hero .sf-btn-continue span,
.sf-hero .sf-continue-btn span,
.sf-hero a.sf-btn-play span,
.sf-hero .sf-btn-play.sf-btn-continue span{
  color:#fff !important;
  font-size:42px !important;
  font-weight:900 !important;
  line-height:1 !important;
}

/* V47: remove preview automático no hover para evitar thumb preta */
.sf-trailer-preview{
  display:none !important;
  opacity:0 !important;
  visibility:hidden !important;
  pointer-events:none !important;
}

.sf-card:hover .sf-trailer-preview{
  display:none !important;
}

.sf-card:hover .sf-thumb-wrap.has-trailer img,
.sf-card:hover .sf-thumb-wrap img{
  opacity:1 !important;
  visibility:visible !important;
}

.sf-card:hover .sf-thumb-wrap{
  background:transparent !important;
}

/* mantém apenas o zoom/sombra do card, sem trocar imagem por iframe */
.sf-card:hover{
  transform:scale(1.04) !important;
}

@media(max-width:900px){
  .sf-hero .sf-btn-continue,
  .sf-hero .sf-continue-btn,
  .sf-hero a.sf-btn-play,
  .sf-hero .sf-btn-play.sf-btn-continue{
    min-width:0 !important;
    width:100% !important;
    height:78px !important;
    min-height:78px !important;
    padding:0 24px !important;
    border-radius:22px !important;
    gap:14px !important;
    font-size:24px !important;
  }

  .sf-hero .sf-btn-continue i,
  .sf-hero .sf-continue-btn i,
  .sf-hero a.sf-btn-play i,
  .sf-hero .sf-btn-play.sf-btn-continue i{
    width:52px !important;
    height:52px !important;
    min-width:52px !important;
    min-height:52px !important;
    font-size:18px !important;
    border-width:3px !important;
  }

  .sf-hero .sf-btn-continue span,
  .sf-hero .sf-continue-btn span,
  .sf-hero a.sf-btn-play span,
  .sf-hero .sf-btn-play.sf-btn-continue span{
    font-size:24px !important;
  }
}


/* V48: Breadcrumbs no episódio da série */
.sf-breadcrumbs{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin:0 0 28px;
  font-size:18px;
  font-weight:800;
  color:rgba(255,255,255,.68);
}

.sf-breadcrumbs a{
  color:rgba(255,255,255,.78);
  text-decoration:none;
  transition:.2s ease;
}

.sf-breadcrumbs a:hover{
  color:#fff;
}

.sf-breadcrumbs .sf-sep{
  color:#e50914;
  font-size:30px;
  line-height:1;
  font-weight:900;
  transform:translateY(-1px);
}

@media(max-width:768px){
  .sf-breadcrumbs{
    font-size:14px;
    gap:7px;
    margin-bottom:18px;
  }

  .sf-breadcrumbs .sf-sep{
    font-size:22px;
  }
}


/* V1.0.1 - Botões da página da série iguais à home */

.sf-series-hero .sf-actions,
.sf-series-banner .sf-actions,
.sf-hero-series .sf-actions{
    display:flex !important;
    align-items:center !important;
    gap:22px !important;
    flex-wrap:wrap !important;
    margin-top:40px !important;
}

.sf-series-hero .sf-btn-play,
.sf-series-banner .sf-btn-play,
.sf-hero-series .sf-btn-play,
.sf-series-hero .sf-btn-continue,
.sf-series-banner .sf-btn-continue,
.sf-hero-series .sf-btn-continue{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:20px !important;

    height:88px !important;
    padding:0 42px !important;

    border-radius:26px !important;
    border:none !important;

    background:linear-gradient(135deg,#7778ff,#9d6bff) !important;
    color:#fff !important;

    font-size:28px !important;
    font-weight:900 !important;
    text-decoration:none !important;

    box-shadow:0 18px 45px rgba(118,92,255,.35) !important;

    transition:.25s ease !important;
}

.sf-series-hero .sf-btn-play:hover,
.sf-series-banner .sf-btn-play:hover,
.sf-hero-series .sf-btn-play:hover,
.sf-series-hero .sf-btn-continue:hover,
.sf-series-banner .sf-btn-continue:hover,
.sf-hero-series .sf-btn-continue:hover{
    transform:translateY(-2px) scale(1.02) !important;
}

.sf-series-hero .sf-btn-play i,
.sf-series-banner .sf-btn-play i,
.sf-hero-series .sf-btn-play i,
.sf-series-hero .sf-btn-continue i,
.sf-series-banner .sf-btn-continue i,
.sf-hero-series .sf-btn-continue i{
    width:58px !important;
    height:58px !important;

    border:4px solid rgba(255,255,255,.95) !important;
    border-radius:50% !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    color:#fff !important;
    background:transparent !important;

    font-size:20px !important;
    padding-left:4px !important;
}

.sf-series-hero .sf-btn-list,
.sf-series-banner .sf-btn-list,
.sf-hero-series .sf-btn-list{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:16px !important;

    height:88px !important;
    padding:0 36px !important;

    border-radius:26px !important;
    border:1px solid rgba(255,255,255,.18) !important;

    background:rgba(255,255,255,.18) !important;
    backdrop-filter:blur(12px) !important;

    color:#fff !important;

    font-size:24px !important;
    font-weight:800 !important;
    text-decoration:none !important;
}

.sf-series-hero .sf-btn-list i,
.sf-series-banner .sf-btn-list i,
.sf-hero-series .sf-btn-list i{
    width:48px !important;
    height:48px !important;

    border:4px solid rgba(255,255,255,.9) !important;
    border-radius:50% !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    font-size:18px !important;
}

@media(max-width:768px){

    .sf-series-hero .sf-actions,
    .sf-series-banner .sf-actions,
    .sf-hero-series .sf-actions{
        gap:14px !important;
    }

    .sf-series-hero .sf-btn-play,
    .sf-series-banner .sf-btn-play,
    .sf-hero-series .sf-btn-play,
    .sf-series-hero .sf-btn-continue,
    .sf-series-banner .sf-btn-continue,
    .sf-hero-series .sf-btn-continue{
        width:100% !important;
        height:72px !important;
        padding:0 24px !important;
        font-size:22px !important;
        border-radius:22px !important;
    }

    .sf-series-hero .sf-btn-play i,
    .sf-series-banner .sf-btn-play i,
    .sf-hero-series .sf-btn-play i,
    .sf-series-hero .sf-btn-continue i,
    .sf-series-banner .sf-btn-continue i,
    .sf-hero-series .sf-btn-continue i{
        width:48px !important;
        height:48px !important;
        font-size:16px !important;
    }

    .sf-series-hero .sf-btn-list,
    .sf-series-banner .sf-btn-list,
    .sf-hero-series .sf-btn-list{
        width:100% !important;
        height:70px !important;
        font-size:20px !important;
        border-radius:22px !important;
    }
}


/* V1.0.2 - Overlay próximo vídeo */
#sf-next-overlay{
  position:fixed;
  inset:0;
  z-index:99998;
  display:none;
  align-items:center;
  justify-content:center;
  padding:28px;
  background:rgba(0,0,0,.86);
  color:#fff;
  text-align:center;
  -webkit-backdrop-filter:blur(10px);
  backdrop-filter:blur(10px);
}

.sf-next-box{
  width:min(620px,100%);
  background:linear-gradient(135deg,rgba(28,28,32,.96),rgba(8,8,10,.96));
  border:1px solid rgba(255,255,255,.10);
  border-radius:26px;
  padding:38px;
  box-shadow:0 28px 90px rgba(0,0,0,.55);
}

.sf-next-box h2{
  font-size:38px;
  margin:0 0 12px;
}

.sf-next-box p{
  color:rgba(255,255,255,.78);
  font-size:20px;
}

.sf-next-actions{
  display:flex;
  gap:14px;
  justify-content:center;
  flex-wrap:wrap;
  margin-top:24px;
}


/* V1.0.4 - Breadcrumb, Ver na TV e Próximo episódio */
.sf-breadcrumbs{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin:0 0 28px;
  font-size:18px;
  font-weight:800;
  color:rgba(255,255,255,.68);
}

.sf-breadcrumbs a{
  color:rgba(255,255,255,.78);
  text-decoration:none;
}

.sf-breadcrumbs a:hover{
  color:#fff;
}

.sf-breadcrumbs .sf-sep{
  color:#e50914;
  font-size:30px;
  line-height:1;
  font-weight:900;
}



.sf-cast-btn{
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.08);
  color:#fff;
  border-radius:14px;
  padding:12px 18px;
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:15px;
  font-weight:800;
  cursor:pointer;
  backdrop-filter:blur(12px);
}



.sf-cast-modal.is-open{
  display:flex;
}









#sf-next-overlay{
  position:fixed;
  inset:0;
  z-index:99998;
  display:none;
  align-items:center;
  justify-content:center;
  padding:28px;
  background:rgba(0,0,0,.86);
  color:#fff;
  text-align:center;
  backdrop-filter:blur(10px);
}

.sf-next-box{
  width:min(620px,100%);
  background:linear-gradient(135deg,rgba(28,28,32,.96),rgba(8,8,10,.96));
  border:1px solid rgba(255,255,255,.10);
  border-radius:26px;
  padding:38px;
  box-shadow:0 28px 90px rgba(0,0,0,.55);
}

.sf-next-box h2{
  font-size:38px;
  margin:0 0 12px;
}

.sf-next-box p{
  color:rgba(255,255,255,.78);
  font-size:20px;
}

.sf-next-actions{
  display:flex;
  gap:14px;
  justify-content:center;
  flex-wrap:wrap;
  margin-top:24px;
}


/* V1.0.5 - Singles seguros, breadcrumb, Ver na TV e próximo vídeo */
.sf-player-container{
  width:min(1500px,94%);
  margin:0 auto;
}

.sf-player-frame{
  position:relative;
  width:100%;
  aspect-ratio:16/9;
  background:#000;
  border-radius:24px;
  overflow:hidden;
}

.sf-player-frame iframe{
  width:100%;
  height:100%;
  border:0;
  display:block;
}

.sf-player-error{
  width:100%;
  height:100%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-weight:800;
}

.sf-breadcrumbs{
  display:flex;
  align-items:center;
  flex-wrap:wrap;
  gap:10px;
  margin:0 0 28px;
  font-size:18px;
  font-weight:800;
  color:rgba(255,255,255,.68);
}

.sf-breadcrumbs a{
  color:rgba(255,255,255,.78);
  text-decoration:none;
}

.sf-breadcrumbs a:hover{
  color:#fff;
}

.sf-breadcrumbs .sf-sep{
  color:#e50914;
  font-size:30px;
  line-height:1;
  font-weight:900;
}



.sf-cast-btn{
  border:1px solid rgba(255,255,255,.14);
  background:rgba(255,255,255,.08);
  color:#fff;
  border-radius:14px;
  padding:12px 18px;
  display:inline-flex;
  align-items:center;
  gap:10px;
  font-size:15px;
  font-weight:800;
  cursor:pointer;
  backdrop-filter:blur(12px);
}



.sf-cast-modal.is-open{
  display:flex;
}









#sf-next-overlay{
  position:fixed;
  inset:0;
  z-index:99998;
  display:none;
  align-items:center;
  justify-content:center;
  padding:28px;
  background:rgba(0,0,0,.86);
  color:#fff;
  text-align:center;
  backdrop-filter:blur(10px);
}

.sf-next-box{
  width:min(620px,100%);
  background:linear-gradient(135deg,rgba(28,28,32,.96),rgba(8,8,10,.96));
  border:1px solid rgba(255,255,255,.10);
  border-radius:26px;
  padding:38px;
  box-shadow:0 28px 90px rgba(0,0,0,.55);
}

.sf-next-box h2{
  font-size:38px;
  margin:0 0 12px;
}

.sf-next-box p{
  color:rgba(255,255,255,.78);
  font-size:20px;
}

.sf-next-actions{
  display:flex;
  gap:14px;
  justify-content:center;
  flex-wrap:wrap;
  margin-top:24px;
}


/* V1.0.6 - Player antes do título nos singles */
.sf-player-info{
  margin-top:28px;
}

.sf-player-info .sf-player-title{
  margin-top:0;
}

.sf-player-description{
  color:rgba(255,255,255,.74);
  font-size:18px;
  line-height:1.65;
  max-width:980px;
  margin-top:16px;
}

.sf-player-actions-top{
  margin:18px 0 0;
}

.sf-player-page .sf-player-frame{
  margin-top:0 !important;
}


/* V1.0.7 - Modal Ver na TV corrigido */


.sf-cast-modal.is-open{
  display:flex !important;
}















.sf-modal-open{
  overflow:hidden !important;
}


/* V1.0.8 - Overlay próximo vídeo reforçado */
#sf-next-overlay{
  position:fixed !important;
  inset:0 !important;
  z-index:999998 !important;
  display:none;
  align-items:center !important;
  justify-content:center !important;
  padding:28px !important;
  background:rgba(0,0,0,.88) !important;
  color:#fff !important;
  text-align:center !important;
  -webkit-backdrop-filter:blur(10px) !important;
  backdrop-filter:blur(10px) !important;
}

.sf-next-box{
  width:min(620px,100%) !important;
  background:linear-gradient(135deg,rgba(28,28,32,.98),rgba(8,8,10,.98)) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:26px !important;
  padding:38px !important;
  box-shadow:0 28px 90px rgba(0,0,0,.60) !important;
}

.sf-next-box h2{
  font-size:38px !important;
  margin:0 0 12px !important;
}

.sf-next-box p{
  color:rgba(255,255,255,.78) !important;
  font-size:20px !important;
}

.sf-next-actions{
  display:flex !important;
  gap:14px !important;
  justify-content:center !important;
  flex-wrap:wrap !important;
  margin-top:24px !important;
}


/* V1.0.9 - single série seguro */




.sf-episode-list{
  display:grid;
  gap:18px;
}

.sf-empty-message{
  color:rgba(255,255,255,.72);
  font-size:18px;
}

.sf-series-hero .sf-actions,
.sf-series-hero .sf-buttons{
  display:flex;
  align-items:center;
  gap:18px;
  flex-wrap:wrap;
}

@media(max-width:900px){
  .sf-series-hero .sf-actions,
  .sf-series-hero .sf-buttons{
    align-items:stretch;
  }
}


/* V1.1.1 - Próximo vídeo funcionando sem jQuery */
#sf-next-overlay{
  position:fixed !important;
  inset:0 !important;
  z-index:999999 !important;
  display:none;
  align-items:center !important;
  justify-content:center !important;
  padding:28px !important;
  background:rgba(0,0,0,.88) !important;
  color:#fff !important;
  text-align:center !important;
  -webkit-backdrop-filter:blur(10px) !important;
  backdrop-filter:blur(10px) !important;
}

.sf-next-box{
  width:min(620px,100%) !important;
  background:linear-gradient(135deg,rgba(28,28,32,.98),rgba(8,8,10,.98)) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:26px !important;
  padding:38px !important;
  box-shadow:0 28px 90px rgba(0,0,0,.60) !important;
}

.sf-next-actions{
  display:flex !important;
  gap:14px !important;
  justify-content:center !important;
  flex-wrap:wrap !important;
  margin-top:24px !important;
}


/* V1.1.2 - Botão Ver na TV alinhado ao título */
.sf-player-info-header{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:24px !important;
  margin-top:28px !important;
  margin-bottom:16px !important;
}

.sf-player-info-header .sf-player-title{
  margin:0 !important;
  flex:1 !important;
  min-width:0 !important;
}

.sf-player-info-header .sf-cast-btn{
  flex:0 0 auto !important;
}



.sf-cast-btn{
  border:1px solid rgba(255,255,255,.16) !important;
  background:rgba(255,255,255,.08) !important;
  color:#fff !important;
  border-radius:16px !important;
  padding:14px 22px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:12px !important;
  font-size:17px !important;
  font-weight:900 !important;
  cursor:pointer !important;
  -webkit-backdrop-filter:blur(12px) !important;
  backdrop-filter:blur(12px) !important;
  transition:.2s ease !important;
  white-space:nowrap !important;
}

.sf-cast-btn:hover{
  background:rgba(255,255,255,.14) !important;
  transform:translateY(-1px) !important;
}

.sf-cast-btn i{
  color:#fff !important;
  font-size:19px !important;
}



.sf-cast-modal.is-open{
  display:flex !important;
}















.sf-modal-open{
  overflow:hidden !important;
}

@media(max-width:800px){
  .sf-player-info-header{
    flex-direction:column !important;
    align-items:stretch !important;
    gap:14px !important;
  }

  .sf-cast-btn{
    width:100% !important;
  }
}


/* V1.1.3 - Modal Ver na TV com fallback inline */


.sf-cast-modal.is-open{
  display:flex !important;
}





.sf-modal-open{
  overflow:hidden !important;
}


/* V1.1.4 - Modal global Ver na TV */
.sf-global-cast-modal{
  position:fixed !important;
  inset:0 !important;
  z-index:2147483647 !important;
  display:none;
  align-items:center !important;
  justify-content:center !important;
  padding:24px !important;
}

.sf-global-cast-backdrop{
  position:absolute !important;
  inset:0 !important;
  background:rgba(0,0,0,.82) !important;
  -webkit-backdrop-filter:blur(12px) !important;
  backdrop-filter:blur(12px) !important;
}

.sf-global-cast-card{
  position:relative !important;
  z-index:2 !important;
  width:min(780px,100%) !important;
  max-height:88vh !important;
  overflow:auto !important;
  background:#101014 !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.16) !important;
  border-radius:26px !important;
  padding:36px !important;
  box-shadow:0 30px 100px rgba(0,0,0,.75) !important;
}

.sf-global-cast-card h2{
  margin:0 0 24px !important;
  font-size:32px !important;
  color:#fff !important;
}

.sf-global-cast-content{
  display:grid !important;
  gap:18px !important;
}

.sf-global-cast-content div{
  background:rgba(255,255,255,.065) !important;
  border:1px solid rgba(255,255,255,.10) !important;
  border-radius:18px !important;
  padding:18px !important;
}

.sf-global-cast-content h3{
  margin:0 0 8px !important;
  font-size:20px !important;
  color:#fff !important;
}

.sf-global-cast-content p{
  margin:0 !important;
  color:rgba(255,255,255,.78) !important;
  font-size:16px !important;
  line-height:1.6 !important;
}

.sf-global-cast-close{
  position:absolute !important;
  top:16px !important;
  right:16px !important;
  width:44px !important;
  height:44px !important;
  border-radius:50% !important;
  border:0 !important;
  background:rgba(255,255,255,.14) !important;
  color:#fff !important;
  font-size:30px !important;
  cursor:pointer !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
}

html.sf-cast-open,
body.sf-cast-open{
  overflow:hidden !important;
}


/* V1.1.5 - Hero buttons padronizados */

.hero-buttons{
    display:flex;
    gap:20px;
    align-items:center;
    flex-wrap:wrap;
}

.hero-buttons .btn-play,
.hero-buttons .btn-list{
    height:92px;
    padding:0 34px;
    border-radius:24px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:20px;
    font-size:28px;
    font-weight:700;
    line-height:1;
    transition:.25s ease;
    text-decoration:none;
    box-sizing:border-box;
}

.hero-buttons .btn-play{
    background:linear-gradient(135deg,#7b7cf6,#a56df5);
    color:#fff;
    border:none;
    box-shadow:0 10px 30px rgba(123,124,246,.35);
}

.hero-buttons .btn-list{
    background:rgba(255,255,255,.16);
    border:1px solid rgba(255,255,255,.22);
    color:#fff;
    backdrop-filter:blur(10px);
}

.hero-buttons .btn-play:hover,
.hero-buttons .btn-list:hover{
    transform:scale(1.03);
}

.hero-buttons .btn-play i,
.hero-buttons .btn-list i{
    width:54px;
    height:54px;
    border-radius:50%;
    border:3px solid rgba(255,255,255,.9);
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:22px;
    flex-shrink:0;
}

@media(max-width:768px){

    .hero-buttons{
        width:100%;
        flex-direction:column;
        align-items:stretch;
    }

    .hero-buttons .btn-play,
    .hero-buttons .btn-list{
        width:100%;
        height:78px;
        font-size:22px;
        border-radius:22px;
    }

    .hero-buttons .btn-play i,
    .hero-buttons .btn-list i{
        width:46px;
        height:46px;
        font-size:18px;
    }
}


/* V1.1.6 - Menu hamburger mobile corrigido */
@media(max-width:900px){
  .sf-menu-toggle{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    cursor:pointer !important;
    z-index:100001 !important;
    pointer-events:auto !important;
  }

  .sf-nav{
    display:none !important;
  }

  .sf-nav.is-open{
    display:flex !important;
    position:absolute !important;
    top:calc(100% + 8px) !important;
    left:12px !important;
    right:12px !important;
    width:auto !important;
    height:auto !important;
    flex-direction:column !important;
    align-items:stretch !important;
    justify-content:flex-start !important;
    gap:0 !important;
    background:rgba(0,0,0,.95) !important;
    border:1px solid rgba(255,255,255,.12) !important;
    border-radius:18px !important;
    overflow:hidden !important;
    z-index:100000 !important;
    box-shadow:0 24px 70px rgba(0,0,0,.55) !important;
  }

  .sf-nav.is-open a{
    display:block !important;
    width:100% !important;
    padding:17px 20px !important;
    border-bottom:1px solid rgba(255,255,255,.07) !important;
    color:#fff !important;
    text-align:left !important;
  }

  .sf-nav.is-open a:last-child{
    border-bottom:0 !important;
  }
}


/* V1.1.8 - Busca corrigida */
.sf-search-overlay{position:fixed!important;inset:0!important;z-index:2147483646!important;display:none;align-items:flex-start!important;justify-content:center!important;padding:130px 24px 24px!important;background:rgba(0,0,0,.86)!important;-webkit-backdrop-filter:blur(14px)!important;backdrop-filter:blur(14px)!important}
.sf-search-overlay.is-open{display:flex!important}
.sf-search-overlay-form{width:min(920px,94vw)!important;min-height:86px!important;background:rgba(255,255,255,.09)!important;border:1px solid rgba(255,255,255,.16)!important;border-radius:28px!important;display:flex!important;align-items:center!important;gap:16px!important;padding:0 22px!important;box-shadow:0 24px 80px rgba(0,0,0,.46)!important}
.sf-search-overlay-input{flex:1!important;background:transparent!important;border:0!important;outline:0!important;color:#fff!important;font-size:30px!important;font-weight:800!important;min-width:0!important}
.sf-search-overlay-input::placeholder{color:rgba(255,255,255,.62)!important}
.sf-search-overlay-submit{width:62px!important;height:62px!important;border-radius:50%!important;border:0!important;background:linear-gradient(135deg,#6f7df6,#9b5cf6)!important;color:#fff!important;font-size:22px!important;cursor:pointer!important;display:flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important}
.sf-search-close{position:absolute!important;top:32px!important;right:38px!important;width:54px!important;height:54px!important;border-radius:50%!important;border:0!important;background:rgba(255,255,255,.12)!important;color:#fff!important;font-size:34px!important;cursor:pointer!important;display:flex!important;align-items:center!important;justify-content:center!important}
body.sf-search-open{overflow:hidden!important}
.sf-search-results-page{padding-top:50px!important}
.sf-search-grid{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))!important;gap:24px!important}
.sf-search-grid .sf-card{width:100%!important;min-width:0!important}
@media(max-width:1000px){.sf-search-grid{grid-template-columns:repeat(3,minmax(0,1fr))!important}}
@media(max-width:760px){.sf-search-overlay{padding-top:100px!important}.sf-search-overlay-form{min-height:72px!important;border-radius:22px!important}.sf-search-overlay-input{font-size:20px!important}.sf-search-overlay-submit{width:50px!important;height:50px!important;font-size:18px!important}.sf-search-close{top:20px!important;right:20px!important;width:46px!important;height:46px!important}.sf-search-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important}}
@media(max-width:480px){.sf-search-grid{grid-template-columns:1fr!important}}


/* V1.1.9 - Header links e menu usuário corrigidos */
.sf-profile-menu-wrap{
  position:relative !important;
}

.sf-profile-menu{
  position:absolute !important;
  top:calc(100% + 14px) !important;
  right:0 !important;
  width:250px !important;
  background:rgba(0,0,0,.92) !important;
  border:1px solid rgba(255,255,255,.14) !important;
  border-radius:12px !important;
  padding:10px 0 !important;
  display:none !important;
  z-index:2147483000 !important;
  box-shadow:0 22px 70px rgba(0,0,0,.55) !important;
  -webkit-backdrop-filter:blur(14px) !important;
  backdrop-filter:blur(14px) !important;
}

.sf-profile-menu.is-open{
  display:block !important;
}

.sf-profile-menu a{
  display:flex !important;
  align-items:center !important;
  gap:12px !important;
  padding:14px 18px !important;
  color:#fff !important;
  text-decoration:none !important;
  font-size:15px !important;
  font-weight:700 !important;
}

.sf-profile-menu a:hover{
  background:rgba(255,255,255,.10) !important;
}

.sf-profile-menu i{
  width:20px !important;
  text-align:center !important;
}


/* V1.1.16 - Menu de Usuário WordPress */
.sf-user-menu-items,
.sf-user-menu-items ul{
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}

.sf-user-menu-items li{
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
}

.sf-user-menu-items a{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  width:100% !important;
}


/* V1.1.17 - Correção final das áreas de menu */
.sf-nav ul,
.sf-user-menu-items{
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
}

.sf-nav li,
.sf-user-menu-items li{
  list-style:none !important;
  margin:0 !important;
  padding:0 !important;
}

.sf-user-menu-items a{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  width:100% !important;
}


/* V1.1.18 - Menus reais no header */
.sf-nav-menu,
.sf-user-menu-items{
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
}

.sf-nav-menu{
    display:flex !important;
    align-items:center !important;
    gap:34px !important;
}

.sf-nav-menu li,
.sf-user-menu-items li{
    list-style:none !important;
    margin:0 !important;
    padding:0 !important;
}

.sf-nav-menu a{
    display:flex !important;
    align-items:center !important;
    gap:8px !important;
    color:#fff !important;
    text-decoration:none !important;
    font-weight:700 !important;
}

.sf-user-menu-items a{
    display:flex !important;
    align-items:center !important;
    width:100% !important;
}


/* V1.1.19 - Ícones Font Awesome no Menu de Usuário */
.sf-user-menu-items a,
.sf-profile-menu a{
  display:flex !important;
  align-items:center !important;
  gap:18px !important;
}

.sf-user-menu-items a i,
.sf-profile-menu a i{
  width:28px !important;
  min-width:28px !important;
  text-align:center !important;
  font-size:22px !important;
  color:rgba(255,255,255,.86) !important;
  line-height:1 !important;
}

.sf-user-menu-items a span,
.sf-profile-menu a span{
  display:inline-block !important;
}


/* V1.1.20 - Item fixo Desconectar */
.menu-item-logout-fixed{
  border-top:1px solid rgba(255,255,255,.08);
  margin-top:10px !important;
  padding-top:10px !important;
}


/* V1.1.22 - Header simplificado para visitante */
.sf-header-connect{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-decoration:none !important;
}

body:not(.logged-in) .sf-profile-menu-wrap,
body:not(.logged-in) .sf-profile-btn{
  display:none !important;
}

@media(max-width:768px){
  .sf-header-connect{
    padding:0 22px !important;
    min-width:auto !important;
    height:48px !important;
    font-size:15px !important;
    border-radius:12px !important;
  }
}


/* V1.1.23 - Selo de acesso Assinantes com ícone de cadeado */
.sf-badge-premium,
.sf-access-badge,
.sf-badge-lock,
.sf-card-badge.premium,
.sf-card-badge.assinantes,
.sf-card-badge.subscribers{
  width:54px !important;
  height:50px !important;
  min-width:54px !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#e12828 !important;
  color:#fff !important;
  border-radius:8px !important;
  font-size:0 !important;
  line-height:1 !important;
  text-indent:0 !important;
  overflow:hidden !important;
}

.sf-badge-premium i,
.sf-access-badge i,
.sf-badge-lock i,
.sf-card-badge.premium i,
.sf-card-badge.assinantes i,
.sf-card-badge.subscribers i{
  font-size:22px !important;
  color:#fff !important;
  line-height:1 !important;
  text-indent:0 !important;
}

.sf-badge-premium::before,
.sf-access-badge::before,
.sf-badge-lock::before,
.sf-card-badge.premium::before,
.sf-card-badge.assinantes::before,
.sf-card-badge.subscribers::before{
  content:"" !important;
  font-family:"Font Awesome 6 Free" !important;
  font-weight:900 !important;
  font-size:22px !important;
  color:#fff !important;
  line-height:1 !important;
}

.sf-badge-premium i + *,
.sf-access-badge i + *,
.sf-badge-lock i + *,
.sf-card-badge.premium i + *,
.sf-card-badge.assinantes i + *,
.sf-card-badge.subscribers i + *{
  display:none !important;
}


/* V1.1.25 - Série com abas de temporadas */
.sf-series-tabs-section{
  padding-top:42px !important;
}

.sf-series-tabs-wrap{
  width:min(1500px,94vw) !important;
  margin:0 auto !important;
}

.sf-season-tabs{
  display:flex !important;
  align-items:center !important;
  gap:14px !important;
  flex-wrap:wrap !important;
  margin:22px 0 28px !important;
}

.sf-season-tab{
  border:0 !important;
  background:rgba(255,255,255,.12) !important;
  color:#fff !important;
  padding:15px 24px !important;
  border-radius:10px !important;
  font-size:18px !important;
  font-weight:900 !important;
  cursor:pointer !important;
  transition:.2s ease !important;
}

.sf-season-tab:hover,
.sf-season-tab.is-active{
  background:#fff !important;
  color:#000 !important;
}

.sf-season-panel{
  display:none !important;
}

.sf-season-panel.is-active{
  display:block !important;
}

.sf-episode-list-centered{
  width:100% !important;
  max-width:1500px !important;
  margin:0 auto !important;
  display:grid !important;
  gap:22px !important;
}

.sf-episode-row-tabbed{
  width:100% !important;
  margin-left:auto !important;
  margin-right:auto !important;
  display:grid !important;
  grid-template-columns:90px 310px minmax(0,1fr) 110px 210px !important;
  align-items:center !important;
  gap:34px !important;
  padding:44px 48px !important;
}

.sf-episode-thumb.no-play-overlay:before,
.sf-episode-thumb.no-play-overlay:after,
.sf-episode-thumb.no-play-overlay .fa-play,
.sf-episode-thumb.no-play-overlay i{
  display:none !important;
  content:none !important;
}

.sf-episode-thumb.no-play-overlay img{
  display:block !important;
}

.sf-episode-watch-btn{
  justify-self:end !important;
  min-width:190px !important;
  height:70px !important;
  border-radius:18px !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:12px !important;
}

@media(max-width:1100px){
  .sf-episode-row-tabbed{
    grid-template-columns:60px 220px minmax(0,1fr) !important;
    gap:20px !important;
  }

  .sf-episode-duration{
    grid-column:3 !important;
  }

  .sf-episode-watch-btn{
    grid-column:3 !important;
    justify-self:start !important;
    margin-top:12px !important;
  }
}

@media(max-width:760px){
  .sf-season-tabs{
    overflow-x:auto !important;
    flex-wrap:nowrap !important;
    padding-bottom:8px !important;
  }

  .sf-season-tab{
    flex:0 0 auto !important;
    font-size:15px !important;
    padding:13px 18px !important;
  }

  .sf-episode-row-tabbed{
    grid-template-columns:44px 1fr !important;
    padding:22px !important;
    gap:16px !important;
  }

  .sf-episode-thumb{
    grid-column:2 !important;
    width:100% !important;
  }

  .sf-episode-content,
  .sf-episode-duration,
  .sf-episode-watch-btn{
    grid-column:2 !important;
  }

  .sf-episode-watch-btn{
    width:100% !important;
    justify-self:stretch !important;
  }
}



/* =========================================================
   PATCH CSS - 19/05/2026
   Base: tema 1.1.25
   Ajustes:
   - busca com margem superior
   - botões hero em 2 colunas
   - hero menos exagerado
   - fontes mais suaves
   - hover do menu usuário corrigido
========================================================= */

/* 1) Fonte geral mais suave */
body{
  -webkit-font-smoothing:antialiased !important;
  -moz-osx-font-smoothing:grayscale !important;
  font-weight:400 !important;
}

/* Reduz o aspecto "black/negrito pesado" sem tirar destaque */
.sf-hero h1,
.sf-series-hero h1{
  font-weight:800 !important;
  font-size:clamp(42px, 5.8vw, 92px) !important;
  line-height:.96 !important;
  letter-spacing:-2.4px !important;
  max-width:980px !important;
  margin-bottom:26px !important;
}

.sf-section-title,
.sf-page-title,
.sf-video-info h1,
.sf-player-title{
  font-weight:750 !important;
  letter-spacing:-1.1px !important;
}

.sf-card h3,
.sf-episode-title{
  font-weight:700 !important;
}

.sf-nav a,
.sf-profile-menu a,
.sf-user-menu-items a{
  font-weight:600 !important;
}

.sf-btn,
.sf-btn span,
.sf-btn-play,
.sf-btn-play span,
.btn-play,
.btn-play span,
.sf-btn-list,
.sf-btn-list span,
.btn-list,
.btn-list span,
.sf-btn-mylist,
.sf-btn-mylist span,
.sf-header-subscribe,
.sf-header-connect{
  font-weight:700 !important;
}

.sf-meta,
.sf-duration,
.sf-info-meta,
.sf-episode-description,
.sf-video-info p,
.sf-hero p,
.sf-hero-text{
  font-weight:400 !important;
}

/* 2) Busca com respiro no topo */
.sf-search-overlay{
  padding-top:40px !important;
}

.sf-search-overlay-form{
  margin-top:20px !important;
}

/* 3) Botões do hero em 2 colunas, menores e padronizados */
.sf-hero .sf-buttons,
.sf-hero .hero-buttons,
.sf-hero .sf-actions,
.sf-series-hero .sf-buttons,
.sf-series-hero .hero-buttons,
.sf-series-hero .sf-actions{
  display:grid !important;
  grid-template-columns:minmax(0, 1fr) minmax(0, 1fr) !important;
  gap:18px !important;
  width:min(940px, 100%) !important;
  max-width:940px !important;
  margin-top:28px !important;
  align-items:stretch !important;
}

/* Reset forte para não herdar min-width ou width antigo */
.sf-hero .sf-buttons > *,
.sf-hero .hero-buttons > *,
.sf-hero .sf-actions > *,
.sf-series-hero .sf-buttons > *,
.sf-series-hero .hero-buttons > *,
.sf-series-hero .sf-actions > *{
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  flex:none !important;
  box-sizing:border-box !important;
}

/* Todos os botões do hero com o mesmo tamanho */
.sf-hero .sf-btn,
.sf-hero .btn,
.sf-hero .btn-play,
.sf-hero .btn-list,
.sf-hero .sf-btn-play,
.sf-hero .sf-btn-list,
.sf-hero .sf-btn-mylist,
.sf-series-hero .sf-btn,
.sf-series-hero .btn,
.sf-series-hero .btn-play,
.sf-series-hero .btn-list,
.sf-series-hero .sf-btn-play,
.sf-series-hero .sf-btn-list,
.sf-series-hero .sf-btn-mylist{
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;

  height:74px !important;
  min-height:74px !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:14px !important;

  border-radius:22px !important;
  padding:0 26px !important;

  font-size:clamp(20px, 1.65vw, 30px) !important;
  font-weight:700 !important;
  line-height:1 !important;
  letter-spacing:-.4px !important;

  text-decoration:none !important;
  cursor:pointer !important;
  transition:transform .22s ease, box-shadow .22s ease, background .22s ease !important;
}

/* Assistir continua roxo */
.sf-hero .sf-btn-play,
.sf-hero .btn-play,
.sf-hero .btn-primary,
.sf-series-hero .sf-btn-play,
.sf-series-hero .btn-play,
.sf-series-hero .btn-primary{
  background:linear-gradient(135deg,#7067ff,#a879ff) !important;
  color:#fff !important;
  border:0 !important;
  box-shadow:
    0 12px 32px rgba(132,108,255,.28),
    inset 0 1px 0 rgba(255,255,255,.18) !important;
}

/* Minha Lista escuro */
.sf-hero .sf-btn-list,
.sf-hero .btn-list,
.sf-hero .sf-btn-mylist,
.sf-hero .sf-btn-secondary,
.sf-series-hero .sf-btn-list,
.sf-series-hero .btn-list,
.sf-series-hero .sf-btn-mylist,
.sf-series-hero .sf-btn-secondary{
  background:rgba(45,45,54,.82) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.16) !important;
  box-shadow:0 14px 34px rgba(0,0,0,.18) !important;
  -webkit-backdrop-filter:blur(14px) !important;
  backdrop-filter:blur(14px) !important;
}

/* Hover */
.sf-hero .sf-btn:hover,
.sf-hero .btn:hover,
.sf-series-hero .sf-btn:hover,
.sf-series-hero .btn:hover{
  transform:translateY(-2px) !important;
  opacity:1 !important;
}

/* Ícones dos botões */
.sf-hero .sf-btn i,
.sf-hero .btn i,
.sf-series-hero .sf-btn i,
.sf-series-hero .btn i{
  color:#fff !important;
  fill:#fff !important;
  line-height:1 !important;
  margin:0 !important;
  padding:0 !important;
}

/* Círculo dos ícones */
.sf-hero .sf-play-icon,
.sf-hero .sf-btn-play i.fa-play,
.sf-hero .btn-play i.fa-play,
.sf-hero .sf-btn-list i,
.sf-hero .btn-list i,
.sf-hero .sf-btn-mylist i,
.sf-series-hero .sf-play-icon,
.sf-series-hero .sf-btn-play i.fa-play,
.sf-series-hero .btn-play i.fa-play,
.sf-series-hero .sf-btn-list i,
.sf-series-hero .btn-list i,
.sf-series-hero .sf-btn-mylist i{
  width:46px !important;
  height:46px !important;
  min-width:46px !important;
  min-height:46px !important;

  border:3px solid rgba(255,255,255,.94) !important;
  border-radius:999px !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  background:transparent !important;
  box-shadow:none !important;
  font-size:20px !important;
}

.sf-hero .sf-btn-play i.fa-play,
.sf-hero .btn-play i.fa-play,
.sf-series-hero .sf-btn-play i.fa-play,
.sf-series-hero .btn-play i.fa-play{
  font-size:17px !important;
  padding-left:3px !important;
}

/* Texto dos botões */
.sf-hero .sf-btn span,
.sf-hero .btn span,
.sf-series-hero .sf-btn span,
.sf-series-hero .btn span{
  color:#fff !important;
  display:inline-block !important;
  white-space:nowrap !important;
}

/* 4) Correção do hover do menu de usuário no header */
.sf-profile-menu-wrap{
  position:relative !important;
}

/* Ponte invisível entre ícone e dropdown */
.sf-profile-menu-wrap::after{
  content:"" !important;
  position:absolute !important;
  left:-24px !important;
  right:-24px !important;
  top:100% !important;
  height:36px !important;
  background:transparent !important;
  z-index:100001 !important;
}

.sf-profile-menu{
  top:calc(100% + 8px) !important;
  transform:translateY(6px);
  transition:opacity .18s ease, visibility .18s ease, transform .18s ease !important;
}

.sf-profile-menu-wrap:hover .sf-profile-menu,
.sf-profile-menu-wrap:focus-within .sf-profile-menu,
.sf-profile-menu:hover,
.sf-profile-menu.is-open{
  opacity:1 !important;
  visibility:visible !important;
  pointer-events:auto !important;
  transform:translateY(0) !important;
}

.sf-profile-menu,
.sf-profile-menu *{
  z-index:100002 !important;
}

/* 5) Mobile */
@media(max-width:900px){
  .sf-hero h1,
  .sf-series-hero h1{
    font-size:clamp(34px, 10vw, 56px) !important;
    letter-spacing:-1.5px !important;
    max-width:100% !important;
    margin-bottom:22px !important;
  }

  .sf-hero .sf-buttons,
  .sf-hero .hero-buttons,
  .sf-hero .sf-actions,
  .sf-series-hero .sf-buttons,
  .sf-series-hero .hero-buttons,
  .sf-series-hero .sf-actions{
    grid-template-columns:1fr !important;
    gap:12px !important;
    width:100% !important;
    max-width:100% !important;
    margin-top:22px !important;
  }

  .sf-hero .sf-btn,
  .sf-hero .btn,
  .sf-hero .btn-play,
  .sf-hero .btn-list,
  .sf-hero .sf-btn-play,
  .sf-hero .sf-btn-list,
  .sf-hero .sf-btn-mylist,
  .sf-series-hero .sf-btn,
  .sf-series-hero .btn,
  .sf-series-hero .btn-play,
  .sf-series-hero .btn-list,
  .sf-series-hero .sf-btn-play,
  .sf-series-hero .sf-btn-list,
  .sf-series-hero .sf-btn-mylist{
    height:64px !important;
    min-height:64px !important;
    border-radius:18px !important;
    font-size:18px !important;
    padding:0 18px !important;
  }

  .sf-hero .sf-play-icon,
  .sf-hero .sf-btn-play i.fa-play,
  .sf-hero .btn-play i.fa-play,
  .sf-hero .sf-btn-list i,
  .sf-hero .btn-list i,
  .sf-hero .sf-btn-mylist i,
  .sf-series-hero .sf-play-icon,
  .sf-series-hero .sf-btn-play i.fa-play,
  .sf-series-hero .btn-play i.fa-play,
  .sf-series-hero .sf-btn-list i,
  .sf-series-hero .btn-list i,
  .sf-series-hero .sf-btn-mylist i{
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    min-height:40px !important;
    font-size:16px !important;
  }

  .sf-search-overlay{
    padding-top:28px !important;
  }

  .sf-search-overlay-form{
    margin-top:20px !important;
  }
}



/* =========================================================
   PATCH HERO FIX - Títulos e botões mais equilibrados
   Base: 1.1.25
   Aplicado após todos os estilos anteriores para corrigir conflitos.
========================================================= */

/* HERO: layout mais estável */
.sf-hero,
.sf-series-hero{
  min-height:78vh !important;
  padding-top:128px !important;
  padding-bottom:78px !important;
  align-items:flex-end !important;
}

.sf-hero-content{
  width:min(1120px,94vw) !important;
  max-width:1120px !important;
}

/* Títulos: menor e negrito normal, não black */
.sf-hero h1,
.sf-series-hero h1{
  font-size:clamp(44px,5.2vw,82px) !important;
  line-height:1.02 !important;
  letter-spacing:-1.8px !important;
  font-weight:700 !important;
  max-width:980px !important;
  margin:0 0 24px !important;
}

/* Página de série: título um pouco menor ainda */
.single-series .sf-hero h1,
.single-series .sf-series-hero h1{
  font-size:clamp(42px,4.8vw,76px) !important;
  max-width:900px !important;
}

/* Subtextos */
.sf-hero p,
.sf-hero-text,
.sf-series-hero p{
  font-size:18px !important;
  line-height:1.55 !important;
  font-weight:400 !important;
}

/* Container dos botões: 2 colunas sem sobrepor */
.sf-hero .sf-buttons,
.sf-hero .hero-buttons,
.sf-hero .sf-actions,
.sf-series-hero .sf-buttons,
.sf-series-hero .hero-buttons,
.sf-series-hero .sf-actions{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
  gap:18px !important;
  width:min(900px,100%) !important;
  max-width:900px !important;
  margin-top:26px !important;
  align-items:stretch !important;
}

/* Impede que classes antigas forcem tamanho gigante */
.sf-hero .sf-buttons > *,
.sf-hero .hero-buttons > *,
.sf-hero .sf-actions > *,
.sf-series-hero .sf-buttons > *,
.sf-series-hero .hero-buttons > *,
.sf-series-hero .sf-actions > *{
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  flex:0 1 auto !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
}

/* Todos os botões do hero */
.sf-hero .sf-btn,
.sf-hero .btn,
.sf-hero .btn-play,
.sf-hero .btn-list,
.sf-hero .sf-btn-play,
.sf-hero .sf-btn-list,
.sf-hero .sf-btn-mylist,
.sf-series-hero .sf-btn,
.sf-series-hero .btn,
.sf-series-hero .btn-play,
.sf-series-hero .btn-list,
.sf-series-hero .sf-btn-play,
.sf-series-hero .sf-btn-list,
.sf-series-hero .sf-btn-mylist{
  height:68px !important;
  min-height:68px !important;
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  border-radius:20px !important;
  padding:0 24px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:13px !important;
  font-size:clamp(18px,1.45vw,25px) !important;
  font-weight:700 !important;
  line-height:1 !important;
  letter-spacing:-.2px !important;
  white-space:nowrap !important;
  text-decoration:none !important;
}

/* Assistir / Continuar roxo */
.sf-hero .sf-btn-play,
.sf-hero .btn-play,
.sf-hero .btn-primary,
.sf-series-hero .sf-btn-play,
.sf-series-hero .btn-play,
.sf-series-hero .btn-primary{
  background:linear-gradient(135deg,#7067ff,#9c6bff) !important;
  color:#fff !important;
  border:0 !important;
  box-shadow:0 12px 30px rgba(126,90,246,.24) !important;
}

/* Minha lista escuro */
.sf-hero .sf-btn-list,
.sf-hero .btn-list,
.sf-hero .sf-btn-mylist,
.sf-hero .sf-btn-secondary,
.sf-series-hero .sf-btn-list,
.sf-series-hero .btn-list,
.sf-series-hero .sf-btn-mylist,
.sf-series-hero .sf-btn-secondary{
  background:rgba(46,46,56,.78) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.15) !important;
  box-shadow:0 12px 30px rgba(0,0,0,.16) !important;
  -webkit-backdrop-filter:blur(12px) !important;
  backdrop-filter:blur(12px) !important;
}

/* Ícones menores */
.sf-hero .sf-play-icon,
.sf-hero .sf-btn-play i.fa-play,
.sf-hero .btn-play i.fa-play,
.sf-hero .sf-btn-list i,
.sf-hero .btn-list i,
.sf-hero .sf-btn-mylist i,
.sf-series-hero .sf-play-icon,
.sf-series-hero .sf-btn-play i.fa-play,
.sf-series-hero .btn-play i.fa-play,
.sf-series-hero .sf-btn-list i,
.sf-series-hero .btn-list i,
.sf-series-hero .sf-btn-mylist i{
  width:42px !important;
  height:42px !important;
  min-width:42px !important;
  min-height:42px !important;
  border:3px solid rgba(255,255,255,.92) !important;
  border-radius:999px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:transparent !important;
  box-shadow:none !important;
  font-size:17px !important;
  line-height:1 !important;
}

.sf-hero .sf-btn-play i.fa-play,
.sf-hero .btn-play i.fa-play,
.sf-series-hero .sf-btn-play i.fa-play,
.sf-series-hero .btn-play i.fa-play{
  padding-left:3px !important;
  font-size:15px !important;
}

/* Texto dos botões */
.sf-hero .sf-btn span,
.sf-hero .btn span,
.sf-series-hero .sf-btn span,
.sf-series-hero .btn span{
  font-weight:700 !important;
  white-space:nowrap !important;
}

/* Evita que "Continuar assistindo" estoure o botão na série */
.sf-btn-continue span,
.sf-continue-btn span,
a[href*="continuar"] span{
  font-size:inherit !important;
  font-weight:700 !important;
  white-space:nowrap !important;
}

/* Mobile */
@media(max-width:900px){
  .sf-hero,
  .sf-series-hero{
    min-height:70vh !important;
    padding-top:112px !important;
    padding-bottom:56px !important;
  }

  .sf-hero h1,
  .sf-series-hero h1,
  .single-series .sf-hero h1,
  .single-series .sf-series-hero h1{
    font-size:clamp(34px,9vw,52px) !important;
    line-height:1.04 !important;
    letter-spacing:-1px !important;
    font-weight:700 !important;
    max-width:100% !important;
    margin-bottom:20px !important;
  }

  .sf-hero .sf-buttons,
  .sf-hero .hero-buttons,
  .sf-hero .sf-actions,
  .sf-series-hero .sf-buttons,
  .sf-series-hero .hero-buttons,
  .sf-series-hero .sf-actions{
    grid-template-columns:1fr !important;
    width:100% !important;
    max-width:100% !important;
    gap:12px !important;
    margin-top:20px !important;
  }

  .sf-hero .sf-btn,
  .sf-hero .btn,
  .sf-hero .btn-play,
  .sf-hero .btn-list,
  .sf-hero .sf-btn-play,
  .sf-hero .sf-btn-list,
  .sf-hero .sf-btn-mylist,
  .sf-series-hero .sf-btn,
  .sf-series-hero .btn,
  .sf-series-hero .btn-play,
  .sf-series-hero .btn-list,
  .sf-series-hero .sf-btn-play,
  .sf-series-hero .sf-btn-list,
  .sf-series-hero .sf-btn-mylist{
    height:60px !important;
    min-height:60px !important;
    border-radius:17px !important;
    font-size:17px !important;
    padding:0 18px !important;
  }

  .sf-hero .sf-play-icon,
  .sf-hero .sf-btn-play i.fa-play,
  .sf-hero .btn-play i.fa-play,
  .sf-hero .sf-btn-list i,
  .sf-hero .btn-list i,
  .sf-hero .sf-btn-mylist i,
  .sf-series-hero .sf-play-icon,
  .sf-series-hero .sf-btn-play i.fa-play,
  .sf-series-hero .btn-play i.fa-play,
  .sf-series-hero .sf-btn-list i,
  .sf-series-hero .btn-list i,
  .sf-series-hero .sf-btn-mylist i{
    width:38px !important;
    height:38px !important;
    min-width:38px !important;
    min-height:38px !important;
    font-size:15px !important;
  }
}



/* =========================================================
   PATCH CARD TITLES
   Aumenta títulos dos cards para aproximar do padrão dos episódios.
========================================================= */

.sf-card-title,
.sf-card h3,
.sf-card h3 a,
.sf-video-card-title,
.sf-video-card h3,
.sf-video-card h3 a,
.sf-loop-card h3,
.sf-loop-card h3 a,
.sf-item-title,
.sf-carousel-card h3,
.sf-carousel-card h3 a{
  font-size:21px !important;
  line-height:1.25 !important;
  font-weight:700 !important;
  letter-spacing:-0.4px !important;
}

@media(min-width:1600px){
  .sf-card-title,
  .sf-card h3,
  .sf-card h3 a,
  .sf-video-card-title,
  .sf-video-card h3,
  .sf-video-card h3 a,
  .sf-loop-card h3,
  .sf-loop-card h3 a,
  .sf-item-title,
  .sf-carousel-card h3,
  .sf-carousel-card h3 a{
    font-size:23px !important;
  }
}

@media(max-width:768px){
  .sf-card-title,
  .sf-card h3,
  .sf-card h3 a,
  .sf-video-card-title,
  .sf-video-card h3,
  .sf-video-card h3 a,
  .sf-loop-card h3,
  .sf-loop-card h3 a,
  .sf-item-title,
  .sf-carousel-card h3,
  .sf-carousel-card h3 a{
    font-size:18px !important;
    line-height:1.3 !important;
  }
}



/* =========================================================
   STRUCTURAL MOBILE FIX
   Corrige busca mobile e menu hamburger definitivamente.
========================================================= */

/* ---------- BUSCA: X fora do campo, lado direito ---------- */

.sf-search-overlay{
  box-sizing:border-box !important;
}

.sf-search-overlay-box{
  width:min(980px, calc(100vw - 40px)) !important;
  display:flex !important;
  align-items:center !important;
  gap:16px !important;
  margin:0 auto !important;
}

.sf-search-overlay-box .sf-search-overlay-form{
  flex:1 1 auto !important;
  min-width:0 !important;
}

.sf-search-overlay-box .sf-search-close{
  flex:0 0 auto !important;
}

@media(max-width:900px){

  .sf-search-overlay{
    align-items:flex-start !important;
    justify-content:center !important;
    padding:28px 14px !important;
  }

  .sf-search-overlay-box{
    width:100% !important;
    max-width:100% !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:12px !important;
    margin:18px 0 0 !important;
  }

  .sf-search-overlay-box .sf-search-overlay-form,
  .sf-search-overlay-form{
    flex:1 1 auto !important;
    min-width:0 !important;
    width:auto !important;
    max-width:none !important;
    height:72px !important;
    min-height:72px !important;
    padding:0 78px 0 20px !important;
    margin:0 !important;
    border-radius:24px !important;
    position:relative !important;
    overflow:hidden !important;
    display:flex !important;
    align-items:center !important;
  }

  .sf-search-overlay-input{
    flex:1 1 auto !important;
    min-width:0 !important;
    width:100% !important;
    padding:0 !important;
    font-size:20px !important;
    line-height:1.15 !important;
  }

  .sf-search-overlay-btn,
  .sf-search-overlay-submit{
    position:absolute !important;
    right:8px !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    width:56px !important;
    height:56px !important;
    min-width:56px !important;
    min-height:56px !important;
    margin:0 !important;
    z-index:2 !important;
  }

  .sf-search-overlay-box .sf-search-close,
  .sf-search-close{
    position:relative !important;
    inset:auto !important;
    top:auto !important;
    right:auto !important;
    bottom:auto !important;
    left:auto !important;
    transform:none !important;

    flex:0 0 56px !important;
    width:56px !important;
    height:56px !important;
    min-width:56px !important;
    min-height:56px !important;

    margin:0 !important;
    padding:0 !important;

    border-radius:50% !important;
    background:rgba(255,255,255,.13) !important;

    display:flex !important;
    align-items:center !important;
    justify-content:center !important;

    font-size:34px !important;
    line-height:1 !important;
    z-index:3 !important;
  }
}

/* ---------- MENU MOBILE: vertical, nunca horizontal ---------- */

@media(max-width:900px){

  .sf-header,
  .sf-header-inner{
    overflow:visible !important;
  }

  .sf-nav,
  nav.sf-nav,
  [data-mobile-menu]{
    display:none !important;
  }

  .sf-nav.is-open,
  nav.sf-nav.is-open,
  [data-mobile-menu].is-open{
    display:block !important;
  }

  .sf-nav,
  nav.sf-nav,
  [data-mobile-menu],
  .sf-nav.is-open,
  nav.sf-nav.is-open,
  [data-mobile-menu].is-open{
    position:absolute !important;
    top:calc(100% + 12px) !important;
    left:14px !important;
    right:14px !important;
    width:auto !important;
    height:auto !important;
    max-height:calc(100vh - 140px) !important;
    padding:8px 0 !important;
    margin:0 !important;
    background:rgba(0,0,0,.95) !important;
    border:1px solid rgba(255,255,255,.14) !important;
    border-radius:18px !important;
    box-shadow:0 24px 70px rgba(0,0,0,.62) !important;
    overflow-y:auto !important;
    overflow-x:hidden !important;
    z-index:999999 !important;
  }

  .sf-nav ul,
  .sf-nav-menu,
  .sf-nav .menu,
  [data-mobile-menu] ul,
  [data-mobile-menu] .menu{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
    float:none !important;
    white-space:normal !important;
  }

  .sf-nav li,
  .sf-nav-menu li,
  .sf-nav .menu li,
  [data-mobile-menu] li{
    display:block !important;
    float:none !important;
    clear:both !important;
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    list-style:none !important;
    white-space:normal !important;
  }

  .sf-nav a,
  .sf-nav-menu a,
  .sf-nav .menu a,
  [data-mobile-menu] a{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    padding:17px 22px !important;
    margin:0 !important;
    border-bottom:1px solid rgba(255,255,255,.08) !important;
    color:#fff !important;
    font-size:18px !important;
    font-weight:600 !important;
    line-height:1.25 !important;
    text-align:left !important;
    white-space:normal !important;
    box-sizing:border-box !important;
  }

  .sf-nav li:last-child > a,
  .sf-nav-menu li:last-child > a,
  .sf-nav .menu li:last-child > a,
  [data-mobile-menu] li:last-child > a{
    border-bottom:0 !important;
  }
}



/* =========================================================
   MINHA LISTA FINAL - CSS
========================================================= */

.tpd-mylist-btn.is-loading,
.sf-btn-mylist.is-loading{
  opacity:.72 !important;
  pointer-events:none !important;
}

.tpd-mylist-btn.is-added i,
.sf-btn-mylist.is-added i,
.tpd-mylist-btn.is-active i,
.sf-btn-mylist.is-active i{
  background:#7d63ff !important;
  border-color:#7d63ff !important;
  color:#fff !important;
}















@media(max-width:1200px){
  
}

@media(max-width:760px){
  

  
}

@media(max-width:520px){
  
}



/* =========================================================
   MINHA LISTA FUNCIONAL - cards e página
========================================================= */

.sf-card{
  position:relative !important;
}

.sf-card-link{
  display:block !important;
  color:inherit !important;
  text-decoration:none !important;
}

.sf-card-favorite-btn{
  position:absolute !important;
  left:14px !important;
  bottom:14px !important;
  z-index:12 !important;

  width:44px !important;
  height:44px !important;
  min-width:44px !important;
  min-height:44px !important;

  border-radius:50% !important;
  border:2px solid rgba(255,255,255,.72) !important;
  background:rgba(0,0,0,.54) !important;
  color:#fff !important;

  display:flex !important;
  align-items:center !important;
  justify-content:center !important;

  padding:0 !important;
  margin:0 !important;

  cursor:pointer !important;
  backdrop-filter:blur(10px) !important;
  -webkit-backdrop-filter:blur(10px) !important;
  transition:.18s ease !important;
}

.sf-card-favorite-btn:hover{
  transform:scale(1.08) !important;
  background:rgba(255,255,255,.16) !important;
}

.sf-card-favorite-btn i{
  font-size:19px !important;
  line-height:1 !important;
}

.sf-card-favorite-btn.is-active{
  background:#7d63ff !important;
  border-color:#7d63ff !important;
  box-shadow:0 10px 24px rgba(125,99,255,.34) !important;
}

.sf-favorite-btn.is-loading{
  opacity:.72 !important;
  pointer-events:none !important;
}

.sf-btn-list.is-active .sf-list-icon,
.sf-favorite-btn.is-active .sf-list-icon{
  background:#7d63ff !important;
  border-color:#7d63ff !important;
  color:#fff !important;
}

.sf-mylist-page{
  padding-top:110px !important;
  min-height:70vh !important;
}

.sf-mylist-page .sf-page-title{
  margin-bottom:30px !important;
}

.sf-mylist-grid{
  display:grid !important;
  grid-template-columns:repeat(4,minmax(0,1fr)) !important;
  gap:28px !important;
}

.sf-mylist-empty{
  min-height:50vh !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  text-align:center !important;
  color:#fff !important;
}

.sf-mylist-empty h1{
  font-size:clamp(34px,4.6vw,58px) !important;
  font-weight:700 !important;
  margin:0 0 12px !important;
}

.sf-mylist-empty p{
  color:rgba(255,255,255,.72) !important;
  font-size:20px !important;
  margin:0 0 24px !important;
}

@media(max-width:1200px){
  .sf-mylist-grid{
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  }
}

@media(max-width:760px){
  .sf-card-favorite-btn{
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    min-height:40px !important;
    left:10px !important;
    bottom:10px !important;
  }

  .sf-mylist-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
    gap:16px !important;
  }
}

@media(max-width:520px){
  .sf-mylist-grid{
    grid-template-columns:1fr !important;
  }
}



/* MINHA LISTA ONLY FIX - visual */
.sf-favorite-btn.is-loading,
.sf-card-favorite-btn.is-loading{
  opacity:.72 !important;
  pointer-events:none !important;
}

.sf-favorite-btn.is-active .sf-list-icon,
.sf-favorite-btn.is-active i,
.sf-card-favorite-btn.is-active{
  background:#7d63ff !important;
  border-color:#7d63ff !important;
  color:#fff !important;
}

.sf-card-favorite-btn.is-active i{
  color:#fff !important;
}



/* =========================================================
   MINHA LISTA - layout fix
========================================================= */

.sf-mylist-page{
    padding-top: 20px !important;
}

.sf-mylist-page .sf-section-title,
.sf-mylist-page .sf-page-title{
    margin-bottom: 28px !important;
}

.sf-mylist-grid,
.sf-mylist-page .sf-row-wrap{
    display:grid !important;
    grid-template-columns:repeat(auto-fill,minmax(320px,1fr)) !important;
    gap:32px !important;
    align-items:start !important;
}

.sf-mylist-grid .sf-card,
.sf-mylist-page .sf-card{
    width:100% !important;
    margin:0 !important;
}

.sf-mylist-grid .sf-card-body,
.sf-mylist-page .sf-card-body{
    padding-bottom:88px !important;
    position:relative !important;
}

.sf-mylist-grid .sf-card-favorite-btn,
.sf-mylist-page .sf-card-favorite-btn{
    position:absolute !important;
    left:22px !important;
    bottom:22px !important;
    z-index:5 !important;
}

@media (max-width: 768px){

    .sf-mylist-grid,
    .sf-mylist-page .sf-row-wrap{
        grid-template-columns:1fr !important;
        gap:24px !important;
    }

    .sf-mylist-page{
        padding-left:16px !important;
        padding-right:16px !important;
    }
}



/* =========================================================
   MINHA LISTA - 4 colunas + limpar lista
========================================================= */

.sf-mylist-page .sf-mylist-actions{
    display:flex !important;
    justify-content:flex-end !important;
    align-items:center !important;
    width:100% !important;
    margin:0 0 28px !important;
}

.sf-mylist-clear-btn{
    height:48px !important;
    min-height:48px !important;
    padding:0 20px !important;
    border-radius:14px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:10px !important;
    font-size:15px !important;
    font-weight:700 !important;
    background:rgba(255,255,255,.12) !important;
    color:#fff !important;
    border:1px solid rgba(255,255,255,.16) !important;
    cursor:pointer !important;
}

.sf-mylist-clear-btn:hover{
    background:rgba(255,255,255,.18) !important;
}

.sf-mylist-clear-btn.is-loading{
    opacity:.65 !important;
    pointer-events:none !important;
}

.sf-mylist-grid,
.sf-mylist-page .sf-row-wrap{
    display:grid !important;
    grid-template-columns:repeat(4,minmax(0,1fr)) !important;
    gap:28px !important;
    align-items:start !important;
}

@media (max-width:1200px){
    .sf-mylist-grid,
    .sf-mylist-page .sf-row-wrap{
        grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    }
}

@media (max-width:900px){
    .sf-mylist-grid,
    .sf-mylist-page .sf-row-wrap{
        grid-template-columns:repeat(2,minmax(0,1fr)) !important;
        gap:20px !important;
    }

    .sf-mylist-page .sf-mylist-actions{
        justify-content:flex-start !important;
    }
}

@media (max-width:560px){
    .sf-mylist-grid,
    .sf-mylist-page .sf-row-wrap{
        grid-template-columns:1fr !important;
        gap:18px !important;
    }

    .sf-mylist-clear-btn{
        width:100% !important;
    }
}



/* =========================================================
   CARD ACTIONS - Assistir / Minha Lista / Curtir
========================================================= */

.sf-card{
    position:relative !important;
}

.sf-card-body{
    padding-bottom:18px !important;
}

.sf-card-actions{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:12px !important;

    padding:0 18px 20px !important;
    margin-top:0 !important;

    position:relative !important;
    z-index:20 !important;
}

.sf-card-action-btn,
.sf-card .sf-card-action-btn,
.sf-card-favorite-btn,
.sf-card-like-btn,
.sf-card-play-btn{
    position:static !important;
    left:auto !important;
    right:auto !important;
    top:auto !important;
    bottom:auto !important;

    width:44px !important;
    height:44px !important;
    min-width:44px !important;
    min-height:44px !important;

    padding:0 !important;
    margin:0 !important;

    border-radius:50% !important;
    border:2px solid rgba(255,255,255,.72) !important;
    background:rgba(0,0,0,.42) !important;
    color:#fff !important;

    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;

    cursor:pointer !important;
    text-decoration:none !important;
    line-height:1 !important;

    -webkit-backdrop-filter:blur(10px) !important;
    backdrop-filter:blur(10px) !important;

    transition:transform .18s ease, background .18s ease, border-color .18s ease !important;
}

.sf-card-action-btn:hover,
.sf-card .sf-card-action-btn:hover{
    transform:scale(1.08) !important;
    background:rgba(255,255,255,.16) !important;
    color:#fff !important;
}

.sf-card-action-btn i{
    font-size:17px !important;
    line-height:1 !important;
    color:inherit !important;
}

.sf-card-play-btn i{
    margin-left:2px !important;
    font-size:15px !important;
}

.sf-card-favorite-btn.is-active,
.sf-card-favorite-btn.is-added{
    background:#7d63ff !important;
    border-color:#7d63ff !important;
    color:#fff !important;
    box-shadow:0 10px 24px rgba(125,99,255,.34) !important;
}

.sf-card-like-btn.is-active{
    background:#e1285b !important;
    border-color:#e1285b !important;
    color:#fff !important;
}

@media(max-width:768px){
    .sf-card-actions{
        padding:0 14px 16px !important;
        gap:10px !important;
    }

    .sf-card-action-btn,
    .sf-card .sf-card-action-btn,
    .sf-card-favorite-btn,
    .sf-card-like-btn,
    .sf-card-play-btn{
        width:40px !important;
        height:40px !important;
        min-width:40px !important;
        min-height:40px !important;
    }
}



/* =========================================================
   MINHA LISTA - full width + grade corrigida
========================================================= */

/* A página já tem o título automático do WordPress. O conteúdo abaixo ocupa largura total. */
.sf-mylist-page{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 48px 80px !important;
    box-sizing:border-box !important;
}

/* Alinha o botão limpar na mesma "linha visual" do título automático da página */
.sf-mylist-page .sf-mylist-actions{
    width:100% !important;
    max-width:none !important;
    margin:-72px 0 42px !important;
    padding:0 !important;

    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;

    box-sizing:border-box !important;
}

/* Botão limpar */
.sf-mylist-clear-btn{
    height:52px !important;
    min-height:52px !important;
    padding:0 22px !important;
    border-radius:15px !important;

    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:10px !important;

    font-size:16px !important;
    font-weight:700 !important;
    line-height:1 !important;

    color:#fff !important;
    background:rgba(255,255,255,.12) !important;
    border:1px solid rgba(255,255,255,.18) !important;

    cursor:pointer !important;
}

/* Grade: exatamente como listagens, full e sem encavalar */
.sf-mylist-page .sf-mylist-grid,
.sf-mylist-page .sf-row-wrap.sf-mylist-grid,
.sf-mylist-page .sf-row-wrap{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;

    display:grid !important;
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    gap:32px !important;

    margin:0 !important;
    padding:0 !important;

    overflow:visible !important;
    align-items:start !important;
    box-sizing:border-box !important;
}

/* Card ocupa a coluna inteira e não usa largura fixa de carrossel */
.sf-mylist-page .sf-card{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
    transform:none !important;
}

/* Evita sobreposição vertical dentro do card */
.sf-mylist-page .sf-card-body{
    min-height:0 !important;
    padding:18px 18px 8px !important;
}

.sf-mylist-page .sf-card-actions{
    position:relative !important;
    display:flex !important;
    padding:0 18px 20px !important;
    margin:0 !important;
    gap:12px !important;
}

/* Mensagem vazia sem segundo título */
.sf-mylist-page .sf-mylist-empty{
    width:100% !important;
    min-height:46vh !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    padding:80px 20px !important;
}

.sf-mylist-page .sf-mylist-empty h1{
    display:none !important;
}

.sf-mylist-page .sf-mylist-empty p{
    margin:0 !important;
    color:rgba(255,255,255,.68) !important;
    font-size:22px !important;
    line-height:1.45 !important;
    font-weight:500 !important;
}

@media(max-width:1300px){
    .sf-mylist-page .sf-mylist-grid,
    .sf-mylist-page .sf-row-wrap.sf-mylist-grid,
    .sf-mylist-page .sf-row-wrap{
        grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
        gap:28px !important;
    }
}

@media(max-width:900px){
    .sf-mylist-page{
        padding:0 22px 60px !important;
    }

    .sf-mylist-page .sf-mylist-actions{
        margin:0 0 24px !important;
        justify-content:flex-start !important;
    }

    .sf-mylist-page .sf-mylist-grid,
    .sf-mylist-page .sf-row-wrap.sf-mylist-grid,
    .sf-mylist-page .sf-row-wrap{
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
        gap:20px !important;
    }
}

@media(max-width:560px){
    .sf-mylist-page .sf-mylist-grid,
    .sf-mylist-page .sf-row-wrap.sf-mylist-grid,
    .sf-mylist-page .sf-row-wrap{
        grid-template-columns:1fr !important;
        gap:18px !important;
    }

    .sf-mylist-clear-btn{
        width:100% !important;
    }
}



/* =========================================================
   MINHA LISTA - AJUSTE FINAL DO PEDIDO
   - full como as outras listas
   - 4 colunas
   - limpar lista na altura do título
   - sem título duplicado quando vazia
========================================================= */

.sf-mylist-page{
    width:100% !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 48px 80px !important;
    box-sizing:border-box !important;
}

/* O título da página vem automaticamente pelo WordPress.
   Esta toolbar fica no topo do conteúdo, alinhada à direita. */
.sf-mylist-toolbar{
    width:100% !important;
    max-width:none !important;

    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;

    margin:0 0 30px !important;
    padding:0 !important;
    box-sizing:border-box !important;
}

.sf-mylist-clear-btn{
    height:52px !important;
    min-height:52px !important;
    width:auto !important;
    min-width:0 !important;

    padding:0 22px !important;
    border-radius:15px !important;

    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:10px !important;

    font-size:16px !important;
    font-weight:700 !important;
    line-height:1 !important;

    color:#fff !important;
    background:rgba(255,255,255,.12) !important;
    border:1px solid rgba(255,255,255,.18) !important;

    cursor:pointer !important;
}

.sf-mylist-clear-btn:hover{
    background:rgba(255,255,255,.18) !important;
}

.sf-mylist-clear-btn.is-loading{
    opacity:.65 !important;
    pointer-events:none !important;
}

/* Grade full, igual listagem de vídeos */
.sf-mylist-grid{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;

    display:grid !important;
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
    gap:32px !important;

    margin:0 !important;
    padding:0 !important;

    overflow:visible !important;
    align-items:start !important;
    box-sizing:border-box !important;
}

/* Remove qualquer comportamento herdado de carrossel */
.sf-mylist-grid .sf-card{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
    transform:none !important;
    position:relative !important;
}

.sf-mylist-grid .sf-card-body{
    padding:18px 18px 8px !important;
    min-height:auto !important;
}

.sf-mylist-grid .sf-card-actions{
    display:flex !important;
    position:relative !important;
    padding:0 18px 20px !important;
    margin:0 !important;
    gap:12px !important;
}

/* vazio sem duplicar título */
.sf-mylist-empty{
    width:100% !important;
    min-height:46vh !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    text-align:center !important;
    padding:80px 20px !important;
}

.sf-mylist-empty h1{
    display:none !important;
}

.sf-mylist-empty p{
    margin:0 !important;
    color:rgba(255,255,255,.68) !important;
    font-size:22px !important;
    line-height:1.45 !important;
    font-weight:500 !important;
}

@media(max-width:1300px){
    .sf-mylist-grid{
        grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
        gap:28px !important;
    }
}

@media(max-width:900px){
    .sf-mylist-page{
        padding:0 22px 60px !important;
    }

    .sf-mylist-toolbar{
        justify-content:flex-start !important;
        margin:0 0 24px !important;
    }

    .sf-mylist-grid{
        grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
        gap:20px !important;
    }
}

@media(max-width:560px){
    .sf-mylist-grid{
        grid-template-columns:1fr !important;
        gap:18px !important;
    }

    .sf-mylist-clear-btn{
        width:100% !important;
    }
}



/* =========================================================
   CURTIR + TOP 3 MAIS CURTIDOS / MAIS VISTOS
========================================================= */

.sf-card-like-btn.is-active{
    background:#e1285b !important;
    border-color:#e1285b !important;
    color:#fff !important;
    box-shadow:0 10px 24px rgba(225,40,91,.30) !important;
}

.sf-card-like-btn.is-loading{
    opacity:.72 !important;
    pointer-events:none !important;
}

.sf-top-section{
    margin-top:46px !important;
    margin-bottom:56px !important;
}

.sf-top-grid{
    display:grid !important;
    grid-template-columns:repeat(3,minmax(0,1fr)) !important;
    gap:34px !important;
    width:100% !important;
    max-width:none !important;
}

.sf-top-item{
    position:relative !important;
    display:grid !important;
    grid-template-columns:92px minmax(0,1fr) !important;
    align-items:end !important;
    gap:10px !important;
    min-width:0 !important;
}

.sf-top-number{
    font-size:clamp(92px,9vw,170px) !important;
    line-height:.78 !important;
    font-weight:900 !important;
    color:transparent !important;
    -webkit-text-stroke:3px rgba(255,255,255,.88) !important;
    text-stroke:3px rgba(255,255,255,.88) !important;
    letter-spacing:-8px !important;
    user-select:none !important;
    margin-bottom:38px !important;
}

.sf-top-item .sf-card{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
}

@media(max-width:1200px){
    .sf-top-grid{
        grid-template-columns:1fr !important;
        gap:28px !important;
    }

    .sf-top-item{
        grid-template-columns:82px minmax(0,420px) !important;
        justify-content:start !important;
    }
}

@media(max-width:640px){
    .sf-top-item{
        grid-template-columns:56px minmax(0,1fr) !important;
        gap:8px !important;
    }

    .sf-top-number{
        font-size:82px !important;
        -webkit-text-stroke-width:2px !important;
        letter-spacing:-4px !important;
        margin-bottom:34px !important;
    }
}



/* =========================================================
   HOME - TOP 3 EM 2 COLUNAS NO FINAL
========================================================= */







.sf-home-top3-col .sf-top-section{
    margin:0 !important;
    padding:0 !important;
}

.sf-home-top3-col .sf-section-title{
    font-size:clamp(28px,2.8vw,46px) !important;
    margin-bottom:26px !important;
}

/* Dentro das colunas, o ranking fica vertical para caber bem */
.sf-home-top3-col .sf-top-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:24px !important;
}

.sf-home-top3-col .sf-top-item{
    display:grid !important;
    grid-template-columns:72px minmax(0,1fr) !important;
    gap:14px !important;
    align-items:end !important;
}

.sf-home-top3-col .sf-top-number{
    font-size:clamp(72px,6vw,120px) !important;
    line-height:.8 !important;
    margin-bottom:38px !important;
    letter-spacing:-5px !important;
}

.sf-home-top3-col .sf-card{
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
}

@media(max-width:1100px){
    
}

@media(max-width:640px){
    

    .sf-home-top3-col .sf-top-item{
        grid-template-columns:52px minmax(0,1fr) !important;
        gap:10px !important;
    }

    .sf-home-top3-col .sf-top-number{
        font-size:72px !important;
        -webkit-text-stroke-width:2px !important;
        letter-spacing:-4px !important;
        margin-bottom:34px !important;
    }
}



/* FIX TOP 3 HOME */
.sf-top-item{
    position:relative !important;
    overflow:hidden !important;
    padding-left:90px !important;
}

.sf-top-number{
    position:absolute !important;
    left:0 !important;
    top:20px !important;
    font-size:120px !important;
    line-height:1 !important;
    font-weight:900 !important;
    color:rgba(255,255,255,.08) !important;
    -webkit-text-stroke:2px rgba(255,255,255,.55) !important;
    z-index:1 !important;
    pointer-events:none !important;
}

.sf-top-item .sf-card{
    position:relative !important;
    z-index:2 !important;
}

.sf-home-top3-col .sf-top-grid{
    gap:28px !important;
}

@media(max-width:768px){
    .sf-top-item{
        padding-left:56px !important;
    }

    .sf-top-number{
        font-size:72px !important;
        top:10px !important;
    }
}



/* =========================================================
   HOME - SOMENTE TOP 3 MAIS VISTOS
   Ranking em 1 item por linha
========================================================= */

.sf-home-top-views-only{
    margin-top:64px !important;
    margin-bottom:90px !important;
}

.sf-home-top-views-only .sf-top-section{
    margin:0 !important;
    padding:0 !important;
}

.sf-home-top-views-only .sf-section-title{
    font-size:clamp(30px,3vw,52px) !important;
    margin-bottom:34px !important;
}

.sf-home-top-views-only .sf-top-grid{
    display:grid !important;
    grid-template-columns:1fr !important;
    gap:34px !important;
    width:100% !important;
    max-width:none !important;
}

.sf-home-top-views-only .sf-top-item{
    position:relative !important;
    display:grid !important;
    grid-template-columns:160px minmax(0,520px) !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:28px !important;
    min-height:260px !important;
    padding:0 !important;
    overflow:visible !important;
}

.sf-home-top-views-only .sf-top-number{
    position:relative !important;
    left:auto !important;
    top:auto !important;
    z-index:1 !important;

    font-size:clamp(150px,16vw,260px) !important;
    line-height:.8 !important;
    font-weight:900 !important;
    letter-spacing:-14px !important;

    color:transparent !important;
    -webkit-text-stroke:4px rgba(255,255,255,.46) !important;
    text-stroke:4px rgba(255,255,255,.46) !important;

    margin:0 !important;
    pointer-events:none !important;
}

.sf-home-top-views-only .sf-card{
    position:relative !important;
    z-index:2 !important;
    width:100% !important;
    max-width:520px !important;
    min-width:0 !important;
    margin:0 !important;
}

@media(max-width:900px){
    .sf-home-top-views-only .sf-top-item{
        grid-template-columns:86px minmax(0,1fr) !important;
        gap:16px !important;
        min-height:0 !important;
    }

    .sf-home-top-views-only .sf-top-number{
        font-size:110px !important;
        letter-spacing:-7px !important;
        -webkit-text-stroke-width:3px !important;
    }

    .sf-home-top-views-only .sf-card{
        max-width:none !important;
    }
}

@media(max-width:560px){
    .sf-home-top-views-only .sf-top-item{
        grid-template-columns:58px minmax(0,1fr) !important;
        gap:10px !important;
    }

    .sf-home-top-views-only .sf-top-number{
        font-size:76px !important;
        letter-spacing:-4px !important;
        -webkit-text-stroke-width:2px !important;
    }
}



/* =========================================================
   LIVROS / AUDIOBOOK
========================================================= */

.sf-book-single{
    padding:120px 40px 80px !important;
}

.sf-book-single-inner{
    width:min(1500px,96vw) !important;
    margin:0 auto !important;
}

.sf-book-title{
    margin-bottom:24px !important;
}

.sf-book-description{
    color:rgba(255,255,255,.72) !important;
    font-size:18px !important;
    line-height:1.7 !important;
    max-width:900px !important;
    margin:0 0 34px !important;
}

.sf-book-reader{
    position:relative !important;
    width:100% !important;
    min-height:680px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:30px 80px 90px !important;
    user-select:none !important;
    -webkit-user-select:none !important;
}

.sf-book-stage{
    width:100% !important;
    max-width:1180px !important;
    display:grid !important;
    gap:18px !important;
    align-items:center !important;
    justify-content:center !important;
    perspective:1600px !important;
}

.sf-book-stage.is-cover-mode{
    grid-template-columns:minmax(0,520px) !important;
}

.sf-book-stage.is-spread-mode{
    grid-template-columns:repeat(2,minmax(0,520px)) !important;
}

.sf-book-page{
    display:none !important;
    position:relative !important;
    background:#111 !important;
    border-radius:18px !important;
    overflow:hidden !important;
    box-shadow:0 28px 80px rgba(0,0,0,.52) !important;
    min-height:620px !important;
    transform-origin:left center !important;
    backface-visibility:hidden !important;
}

.sf-book-page.is-visible{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
}

.sf-book-page.is-cover{
    justify-self:center !important;
}

.sf-book-page img{
    width:100% !important;
    height:100% !important;
    min-height:620px !important;
    object-fit:contain !important;
    display:block !important;
    pointer-events:none !important;
    -webkit-user-drag:none !important;
    user-drag:none !important;
}

.sf-book-stage.turn-next .sf-book-page.is-visible{
    animation:sfBookTurnNext .42s ease both;
}

.sf-book-stage.turn-prev .sf-book-page.is-visible{
    animation:sfBookTurnPrev .42s ease both;
}

@keyframes sfBookTurnNext{
    from{opacity:.65;transform:rotateY(-8deg) translateX(18px);}
    to{opacity:1;transform:rotateY(0) translateX(0);}
}

@keyframes sfBookTurnPrev{
    from{opacity:.65;transform:rotateY(8deg) translateX(-18px);}
    to{opacity:1;transform:rotateY(0) translateX(0);}
}

.sf-book-arrow{
    position:absolute !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    z-index:5 !important;
    width:58px !important;
    height:58px !important;
    border-radius:50% !important;
    border:1px solid rgba(255,255,255,.18) !important;
    background:rgba(255,255,255,.10) !important;
    color:#fff !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    cursor:pointer !important;
    -webkit-backdrop-filter:blur(12px) !important;
    backdrop-filter:blur(12px) !important;
}

.sf-book-arrow:disabled{
    opacity:.25 !important;
    pointer-events:none !important;
}

.sf-book-prev{
    left:18px !important;
}

.sf-book-next{
    right:18px !important;
}

.sf-book-audio-btn{
    position:absolute !important;
    left:50% !important;
    bottom:18px !important;
    transform:translateX(-50%) !important;
    z-index:4 !important;
    height:48px !important;
    padding:0 18px !important;
    border:0 !important;
    border-radius:999px !important;
    background:linear-gradient(135deg,#7067ff,#9c6bff) !important;
    color:#fff !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:9px !important;
    font-weight:700 !important;
    cursor:pointer !important;
    box-shadow:0 12px 30px rgba(126,90,246,.25) !important;
}

.sf-book-reader audio{
    position:absolute !important;
    left:50% !important;
    bottom:18px !important;
    transform:translateX(-50%) !important;
    width:min(560px,80%) !important;
    opacity:.001 !important;
    pointer-events:none !important;
}

.sf-book-locked,
.sf-book-empty{
    width:min(720px,94vw) !important;
    margin:60px auto !important;
    padding:44px !important;
    border-radius:24px !important;
    background:rgba(255,255,255,.06) !important;
    border:1px solid rgba(255,255,255,.12) !important;
    text-align:center !important;
    color:#fff !important;
}

.sf-book-locked i{
    font-size:42px !important;
    color:#9c6bff !important;
    margin-bottom:18px !important;
}

.sf-book-type-badge{
    display:inline-flex !important;
    align-items:center !important;
    gap:6px !important;
}

.sf-book-card .sf-card-read-btn{
    background:rgba(255,255,255,.10) !important;
}

@media(max-width:760px){
    .sf-book-single{
        padding:96px 18px 54px !important;
    }

    .sf-book-reader{
        min-height:0 !important;
        padding:20px 0 90px !important;
    }

    .sf-book-stage,
    .sf-book-stage.is-cover-mode,
    .sf-book-stage.is-spread-mode,
    .sf-book-stage.is-mobile-mode{
        grid-template-columns:1fr !important;
        max-width:100% !important;
    }

    .sf-book-page{
        min-height:0 !important;
        border-radius:14px !important;
    }

    .sf-book-page img{
        min-height:0 !important;
        height:auto !important;
    }

    .sf-book-arrow{
        top:auto !important;
        bottom:18px !important;
        transform:none !important;
    }

    .sf-book-prev{
        left:24px !important;
    }

    .sf-book-next{
        right:24px !important;
    }

    .sf-book-audio-btn{
        bottom:86px !important;
        height:44px !important;
        font-size:14px !important;
    }
}



/* =========================================================
   LIVROS SINGLE - FIX DEFINITIVO
========================================================= */

.single-livros .sf-book-single{
    padding:120px 40px 80px !important;
    background:#000 !important;
    color:#fff !important;
}

.single-livros .sf-book-single-inner{
    width:min(1500px,96vw) !important;
    margin:0 auto !important;
}

.single-livros .sf-book-title{
    font-size:clamp(38px,5vw,76px) !important;
    line-height:0.95 !important;
    font-weight:800 !important;
    letter-spacing:-3px !important;
    margin:0 0 8px !important;
    padding:0 !important;
}

.single-livros .sf-book-description{
    max-width:900px !important;
    margin:0 0 34px !important;
    color:rgba(255,255,255,.72) !important;
    font-size:18px !important;
    line-height:1.7 !important;
}

.single-livros .sf-book-reader{
    position:relative !important;
    width:100% !important;
    min-height:680px !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    padding:30px 86px 90px !important;
    user-select:none !important;
    -webkit-user-select:none !important;
    box-sizing:border-box !important;
}

.single-livros .sf-book-stage{
    width:100% !important;
    max-width:1180px !important;
    display:grid !important;
    gap:20px !important;
    align-items:center !important;
    justify-content:center !important;
    perspective:1600px !important;
}

.single-livros .sf-book-stage.is-cover-mode{
    grid-template-columns:minmax(0,520px) !important;
}

.single-livros .sf-book-stage.is-spread-mode{
    grid-template-columns:repeat(2,minmax(0,520px)) !important;
}

.single-livros .sf-book-page{
    display:none !important;
    position:relative !important;
    background:#111 !important;
    border-radius:18px !important;
    overflow:hidden !important;
    box-shadow:0 28px 80px rgba(0,0,0,.52) !important;
    min-height:620px !important;
    transform-origin:left center !important;
    backface-visibility:hidden !important;
}

.single-livros .sf-book-page.is-visible{
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
}

.single-livros .sf-book-page img{
    width:100% !important;
    height:100% !important;
    min-height:620px !important;
    object-fit:contain !important;
    display:block !important;
    pointer-events:none !important;
    -webkit-user-drag:none !important;
    user-drag:none !important;
}

.single-livros .sf-book-stage.turn-next .sf-book-page.is-visible{
    animation:sfBookTurnNext .42s ease both;
}

.single-livros .sf-book-stage.turn-prev .sf-book-page.is-visible{
    animation:sfBookTurnPrev .42s ease both;
}

@keyframes sfBookTurnNext{
    from{opacity:.65;transform:rotateY(-8deg) translateX(18px);}
    to{opacity:1;transform:rotateY(0) translateX(0);}
}

@keyframes sfBookTurnPrev{
    from{opacity:.65;transform:rotateY(8deg) translateX(-18px);}
    to{opacity:1;transform:rotateY(0) translateX(0);}
}

.single-livros .sf-book-arrow{
    position:absolute !important;
    top:50% !important;
    transform:translateY(-50%) !important;
    z-index:10 !important;
    width:58px !important;
    height:58px !important;
    border-radius:50% !important;
    border:1px solid rgba(255,255,255,.18) !important;
    background:rgba(255,255,255,.10) !important;
    color:#fff !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    cursor:pointer !important;
    -webkit-backdrop-filter:blur(12px) !important;
    backdrop-filter:blur(12px) !important;
}

.single-livros .sf-book-arrow:disabled{
    opacity:.25 !important;
    pointer-events:none !important;
}

.single-livros .sf-book-prev{
    left:18px !important;
}

.single-livros .sf-book-next{
    right:18px !important;
}

.single-livros .sf-book-audio-btn{
    position:absolute !important;
    left:50% !important;
    bottom:18px !important;
    transform:translateX(-50%) !important;
    z-index:12 !important;
    height:48px !important;
    padding:0 18px !important;
    border:0 !important;
    border-radius:999px !important;
    background:linear-gradient(135deg,#7067ff,#9c6bff) !important;
    color:#fff !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:9px !important;
    font-weight:700 !important;
    font-size:15px !important;
    cursor:pointer !important;
    box-shadow:0 12px 30px rgba(126,90,246,.25) !important;
}

.single-livros .sf-book-reader audio{
    position:absolute !important;
    left:50% !important;
    bottom:20px !important;
    transform:translateX(-50%) !important;
    width:1px !important;
    height:1px !important;
    opacity:.001 !important;
    pointer-events:none !important;
}

.single-livros .sf-book-locked,
.single-livros .sf-book-empty{
    width:min(720px,94vw) !important;
    margin:60px auto !important;
    padding:44px !important;
    border-radius:24px !important;
    background:rgba(255,255,255,.06) !important;
    border:1px solid rgba(255,255,255,.12) !important;
    text-align:center !important;
    color:#fff !important;
}

@media(max-width:760px){
    .single-livros .sf-book-single{
        padding:96px 18px 54px !important;
    }

    .single-livros .sf-book-reader{
        min-height:0 !important;
        padding:20px 0 90px !important;
    }

    .single-livros .sf-book-stage,
    .single-livros .sf-book-stage.is-cover-mode,
    .single-livros .sf-book-stage.is-spread-mode,
    .single-livros .sf-book-stage.is-mobile-mode{
        grid-template-columns:1fr !important;
        max-width:100% !important;
    }

    .single-livros .sf-book-page{
        min-height:0 !important;
        border-radius:14px !important;
    }

    .single-livros .sf-book-page img{
        min-height:0 !important;
        height:auto !important;
    }

    .single-livros .sf-book-arrow{
        top:auto !important;
        bottom:18px !important;
        transform:none !important;
    }

    .single-livros .sf-book-prev{
        left:24px !important;
    }

    .single-livros .sf-book-next{
        right:24px !important;
    }

    .single-livros .sf-book-audio-btn{
        bottom:86px !important;
        height:44px !important;
        font-size:14px !important;
    }
}


.single-livros .sf-book-description:empty{
    display:none !important;
}

.single-livros .sf-book-single-inner > p:first-of-type{
    display:none !important;
}



/* =========================================================
   LIVROS SINGLE - título abaixo + setas na página
========================================================= */

/* remove o título antigo acima caso algum CSS/markup anterior permaneça */
.single-livros .sf-book-single-inner > .sf-book-title:not(.sf-book-title-bottom){
    display:none !important;
}

/* título abaixo do livro, padrão menor como single de vídeo */
.single-livros .sf-book-title-bottom{
    display:block !important;
    max-width:1180px !important;
    margin:22px auto 0 !important;
    padding:0 0 0 !important;

    font-size:clamp(26px,2.4vw,42px) !important;
    line-height:1.12 !important;
    font-weight:700 !important;
    letter-spacing:-0.8px !important;

    color:#fff !important;
    text-align:left !important;
}

/* o reader vira referência para posicionar setas na altura da imagem */
.single-livros .sf-book-reader{
    padding:30px 72px 74px !important;
}

/* setas no meio da altura visual da página */
.single-livros .sf-book-arrow{
    top:50% !important;
    transform:translateY(-50%) !important;
    z-index:30 !important;
}

/* encosta cerca de metade da bolinha na imagem/página */
.single-livros .sf-book-prev{
    left:calc(50% - 590px - 29px) !important;
}

.single-livros .sf-book-next{
    right:calc(50% - 590px - 29px) !important;
}

/* se tela for menor que o livro, usa cantos do reader */
@media(max-width:1320px){
    .single-livros .sf-book-prev{
        left:44px !important;
    }

    .single-livros .sf-book-next{
        right:44px !important;
    }
}

@media(max-width:760px){
    .single-livros .sf-book-reader{
        padding:20px 34px 76px !important;
    }

    .single-livros .sf-book-title-bottom{
        margin-top:18px !important;
        font-size:clamp(24px,7vw,34px) !important;
        line-height:1.12 !important;
    }

    .single-livros .sf-book-arrow{
        top:50% !important;
        bottom:auto !important;
        transform:translateY(-50%) !important;
        width:48px !important;
        height:48px !important;
    }

    .single-livros .sf-book-prev{
        left:10px !important;
    }

    .single-livros .sf-book-next{
        right:10px !important;
    }
}



/* =========================================
   LIVROS - remove espaço gigante do topo
========================================= */

.single-livros .sf-book-single{
    padding-top:24px !important;
    margin-top:0 !important;
}

.single-livros .sf-book-single-inner{
    padding-top:0 !important;
    margin-top:0 !important;
}

.single-livros .sf-book-reader{
    margin-top:0 !important;
    padding-top:10px !important;
}

/* remove qualquer bloco vazio acima do livro */
.single-livros .sf-book-single-inner > p,
.single-livros .sf-book-single-inner > .sf-book-description,
.single-livros .sf-book-single-inner > .entry-content{
    display:none !important;
}

/* corrige alinhamento geral igual single dos vídeos */
.single-livros .site-main,
.single-livros .content-area{
    padding-top:0 !important;
    margin-top:0 !important;
}



/* botão narração tocando */
.sf-book-audio-btn.playing{
    background:#7c5cff !important;
    color:#fff !important;
    border-color:#7c5cff !important;
}



/* =========================================================
   LIVROS MOBILE - botão narração e espaçamentos
========================================================= */

.single-livros .sf-book-reader{
    padding-bottom:28px !important;
}

.single-livros .sf-book-title-bottom{
    margin-top:12px !important;
}

/* Desktop: botão fica dentro da página, na base da imagem */
.single-livros .sf-book-audio-btn{
    bottom:22px !important;
}

/* reduz espaço vago abaixo do livro */
.single-livros .sf-book-stage{
    margin-bottom:0 !important;
}

@media(max-width:760px){

    .single-livros .sf-book-single{
        padding-top:18px !important;
        padding-bottom:34px !important;
    }

    .single-livros .sf-book-reader{
        padding:10px 20px 16px !important;
        margin:0 !important;
        min-height:0 !important;
    }

    .single-livros .sf-book-stage{
        margin:0 !important;
        gap:0 !important;
    }

    .single-livros .sf-book-page{
        position:relative !important;
        margin:0 auto !important;
        overflow:hidden !important;
    }

    .single-livros .sf-book-page img{
        display:block !important;
        width:100% !important;
        height:auto !important;
    }

    /* botão grudado na parte inferior da imagem/página */
    .single-livros .sf-book-audio-btn{
        position:absolute !important;
        left:50% !important;
        bottom:18px !important;
        transform:translateX(-50%) !important;

        height:44px !important;
        min-height:44px !important;
        padding:0 18px !important;

        font-size:15px !important;
        border-radius:999px !important;
        z-index:20 !important;
    }

    /* setas continuam no meio da página */
    .single-livros .sf-book-arrow{
        top:50% !important;
        bottom:auto !important;
        transform:translateY(-50%) !important;
    }

    /* título mais próximo do livro */
    .single-livros .sf-book-title-bottom{
        margin:12px 0 0 !important;
        padding:0 4px !important;

        font-size:clamp(26px,8vw,38px) !important;
        line-height:1.08 !important;
        letter-spacing:-0.8px !important;
    }
}

@media(max-width:480px){

    .single-livros .sf-book-reader{
        padding-left:12px !important;
        padding-right:12px !important;
    }

    .single-livros .sf-book-audio-btn{
        bottom:14px !important;
        height:42px !important;
        min-height:42px !important;
        padding:0 15px !important;
        font-size:14px !important;
    }
}



/* =========================================================
   LIVROS - LOADING, CONTADOR E FOLHEAR
========================================================= */

.single-livros .sf-book-single{
    padding-top:0 !important;
    padding-bottom:18px !important;
}

.single-livros .sf-book-single-inner{
    width:min(1500px,98vw) !important;
}

.single-livros .sf-book-reader{
    padding-top:0 !important;
    padding-bottom:18px !important;
    margin-top:0 !important;
    min-height:0 !important;
}

.single-livros .sf-book-stage{
    margin:0 !important;
}

.single-livros .sf-book-page{
    isolation:isolate !important;
}

.single-livros .sf-book-page-loader{
    position:absolute !important;
    inset:0 !important;
    z-index:40 !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:center !important;
    justify-content:center !important;
    gap:12px !important;
    background:#111 !important;
    color:#fff !important;
    opacity:1 !important;
    pointer-events:none !important;
    transition:opacity .25s ease, visibility .25s ease !important;
}

.single-livros .sf-book-page.is-loaded .sf-book-page-loader{
    opacity:0 !important;
    visibility:hidden !important;
}

.single-livros .sf-book-page-loader span{
    width:42px !important;
    height:42px !important;
    border-radius:50% !important;
    border:4px solid rgba(255,255,255,.2) !important;
    border-top-color:#8d73ff !important;
    animation:sfBookLoaderSpin .8s linear infinite !important;
}

.single-livros .sf-book-page-loader em{
    font-style:normal !important;
    color:rgba(255,255,255,.72) !important;
    font-size:14px !important;
    font-weight:600 !important;
}

@keyframes sfBookLoaderSpin{
    to{transform:rotate(360deg);}
}

.single-livros .sf-book-counter{
    position:absolute !important;
    left:50% !important;
    bottom:0 !important;
    transform:translateX(-50%) !important;
    z-index:18 !important;
    color:rgba(255,255,255,.78) !important;
    background:rgba(255,255,255,.08) !important;
    border:1px solid rgba(255,255,255,.14) !important;
    border-radius:999px !important;
    padding:8px 16px !important;
    font-size:14px !important;
    font-weight:700 !important;
    line-height:1 !important;
    -webkit-backdrop-filter:blur(12px) !important;
    backdrop-filter:blur(12px) !important;
}

.single-livros .sf-book-title-bottom{
    margin-top:10px !important;
}

.single-livros .sf-book-stage.first-zoom .sf-book-page.is-visible{
    animation:sfBookFirstZoom .52s cubic-bezier(.2,.8,.2,1) both !important;
}

.single-livros .sf-book-stage.turn-next .sf-book-page.is-visible{
    animation:sfBookPageFlipNext .56s cubic-bezier(.22,.72,.2,1) both !important;
}

.single-livros .sf-book-stage.turn-prev .sf-book-page.is-visible{
    animation:sfBookPageFlipPrev .56s cubic-bezier(.22,.72,.2,1) both !important;
}

@keyframes sfBookFirstZoom{
    0%{
        opacity:0;
        transform:scale(.72);
        filter:blur(3px);
    }
    100%{
        opacity:1;
        transform:scale(1);
        filter:blur(0);
    }
}

@keyframes sfBookPageFlipNext{
    0%{
        opacity:.18;
        transform:perspective(1200px) rotateY(-48deg) translateX(30px) scale(.985);
        filter:brightness(.82);
    }
    55%{
        opacity:1;
        transform:perspective(1200px) rotateY(6deg) translateX(0) scale(1);
        filter:brightness(1.08);
    }
    100%{
        opacity:1;
        transform:perspective(1200px) rotateY(0deg) translateX(0) scale(1);
        filter:brightness(1);
    }
}

@keyframes sfBookPageFlipPrev{
    0%{
        opacity:.18;
        transform:perspective(1200px) rotateY(48deg) translateX(-30px) scale(.985);
        filter:brightness(.82);
    }
    55%{
        opacity:1;
        transform:perspective(1200px) rotateY(-6deg) translateX(0) scale(1);
        filter:brightness(1.08);
    }
    100%{
        opacity:1;
        transform:perspective(1200px) rotateY(0deg) translateX(0) scale(1);
        filter:brightness(1);
    }
}

@media(max-width:760px){
    .single-livros .sf-book-single{
        padding-top:0 !important;
        padding-bottom:14px !important;
    }

    .single-livros .sf-book-reader{
        padding-top:0 !important;
        padding-bottom:34px !important;
    }

    .single-livros .sf-book-counter{
        bottom:0 !important;
        font-size:13px !important;
        padding:7px 13px !important;
    }

    .single-livros .sf-book-title-bottom{
        margin-top:8px !important;
    }
}



/* =========================================================
   LIVROS - FOLHEAR DUPLO E ATALHOS PRIMEIRA/ÚLTIMA
========================================================= */

.single-livros .sf-book-pagination-bar{
    position:absolute !important;
    left:50% !important;
    bottom:0 !important;
    transform:translateX(-50%) !important;
    z-index:30 !important;

    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px !important;

    padding:0 !important;
    background:transparent !important;
}

.single-livros .sf-book-pagination-bar .sf-book-counter{
    position:static !important;
    left:auto !important;
    bottom:auto !important;
    transform:none !important;
    white-space:nowrap !important;
}

.single-livros .sf-book-jump-btn{
    width:38px !important;
    height:38px !important;
    border-radius:50% !important;
    border:1px solid rgba(255,255,255,.14) !important;
    background:rgba(255,255,255,.08) !important;
    color:#fff !important;

    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;

    cursor:pointer !important;
    -webkit-backdrop-filter:blur(12px) !important;
    backdrop-filter:blur(12px) !important;
}

.single-livros .sf-book-jump-btn:hover{
    background:rgba(255,255,255,.16) !important;
}

.single-livros .sf-book-jump-btn:disabled{
    opacity:.28 !important;
    pointer-events:none !important;
}

/* eixo correto de abertura: páginas viram em sentidos opostos */
.single-livros .sf-book-page.is-left-page{
    transform-origin:right center !important;
}

.single-livros .sf-book-page.is-right-page{
    transform-origin:left center !important;
}

.single-livros .sf-book-stage.turn-next.is-spread-mode .sf-book-page.is-left-page{
    animation:sfBookOpenLeftNext .62s cubic-bezier(.22,.72,.2,1) both !important;
}

.single-livros .sf-book-stage.turn-next.is-spread-mode .sf-book-page.is-right-page{
    animation:sfBookOpenRightNext .62s cubic-bezier(.22,.72,.2,1) both !important;
}

.single-livros .sf-book-stage.turn-prev.is-spread-mode .sf-book-page.is-left-page{
    animation:sfBookOpenLeftPrev .62s cubic-bezier(.22,.72,.2,1) both !important;
}

.single-livros .sf-book-stage.turn-prev.is-spread-mode .sf-book-page.is-right-page{
    animation:sfBookOpenRightPrev .62s cubic-bezier(.22,.72,.2,1) both !important;
}

@keyframes sfBookOpenLeftNext{
    0%{
        opacity:.15;
        transform:perspective(1400px) rotateY(54deg) translateX(36px) scale(.985);
        filter:brightness(.75);
    }
    62%{
        opacity:1;
        transform:perspective(1400px) rotateY(-4deg) translateX(0) scale(1);
        filter:brightness(1.06);
    }
    100%{
        opacity:1;
        transform:perspective(1400px) rotateY(0deg) translateX(0) scale(1);
        filter:brightness(1);
    }
}

@keyframes sfBookOpenRightNext{
    0%{
        opacity:.15;
        transform:perspective(1400px) rotateY(-54deg) translateX(-36px) scale(.985);
        filter:brightness(.75);
    }
    62%{
        opacity:1;
        transform:perspective(1400px) rotateY(4deg) translateX(0) scale(1);
        filter:brightness(1.06);
    }
    100%{
        opacity:1;
        transform:perspective(1400px) rotateY(0deg) translateX(0) scale(1);
        filter:brightness(1);
    }
}

@keyframes sfBookOpenLeftPrev{
    0%{
        opacity:.15;
        transform:perspective(1400px) rotateY(-48deg) translateX(28px) scale(.985);
        filter:brightness(.78);
    }
    62%{
        opacity:1;
        transform:perspective(1400px) rotateY(4deg) translateX(0) scale(1);
        filter:brightness(1.05);
    }
    100%{
        opacity:1;
        transform:perspective(1400px) rotateY(0deg) translateX(0) scale(1);
        filter:brightness(1);
    }
}

@keyframes sfBookOpenRightPrev{
    0%{
        opacity:.15;
        transform:perspective(1400px) rotateY(48deg) translateX(-28px) scale(.985);
        filter:brightness(.78);
    }
    62%{
        opacity:1;
        transform:perspective(1400px) rotateY(-4deg) translateX(0) scale(1);
        filter:brightness(1.05);
    }
    100%{
        opacity:1;
        transform:perspective(1400px) rotateY(0deg) translateX(0) scale(1);
        filter:brightness(1);
    }
}

@media(max-width:760px){
    .single-livros .sf-book-pagination-bar{
        bottom:0 !important;
        gap:6px !important;
    }

    .single-livros .sf-book-jump-btn{
        width:34px !important;
        height:34px !important;
        font-size:13px !important;
    }
}


/* =========================================================
   LIVROS MOBILE - AJUSTES SETAS E BOTÃO ÁUDIO
========================================================= */

@media(max-width:760px){

    .single-livros .sf-book-nav{
        width:62px !important;
        height:62px !important;
        background:rgba(255,255,255,.92) !important;
        border:1px solid rgba(0,0,0,.08) !important;
        color:#111 !important;
        box-shadow:0 8px 30px rgba(0,0,0,.25) !important;
    }

    .single-livros .sf-book-nav i,
    .single-livros .sf-book-nav svg{
        color:#111 !important;
        fill:#111 !important;
        font-size:24px !important;
    }

    .single-livros .sf-book-nav-prev{
        left:-10px !important;
    }

    .single-livros .sf-book-nav-next{
        right:-10px !important;
    }

    .single-livros .sf-book-page-audio{
        position:absolute !important;
        left:50% !important;
        bottom:18px !important;
        transform:translateX(-50%) !important;
        z-index:25 !important;
    }

    .single-livros .sf-book-page-audio .sf-book-audio-btn{
        padding:14px 22px !important;
        border-radius:999px !important;
        box-shadow:0 10px 30px rgba(114,92,255,.35) !important;
    }

    .single-livros .sf-book-page-content{
        padding-bottom:86px !important;
    }
}


/* =========================================================
   SINGLE ACTIONS - LIKE + MINHA LISTA
========================================================= */

.single-post .sf-single-actions,
.single-videos .sf-single-actions,
.single-livros .sf-single-actions{
    display:flex !important;
    align-items:center !important;
    gap:12px !important;
    margin-left:auto !important;
}

.single-post .sf-title-row,
.single-videos .sf-title-row,
.single-livros .sf-title-row{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:20px !important;
    flex-wrap:wrap !important;
}

.sf-action-icon-btn{
    width:52px !important;
    height:52px !important;
    border-radius:50% !important;
    border:1px solid rgba(255,255,255,.14) !important;
    background:rgba(255,255,255,.08) !important;
    color:#fff !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    cursor:pointer !important;
    transition:all .25s ease !important;
    backdrop-filter:blur(10px) !important;
}

.sf-action-icon-btn:hover{
    transform:translateY(-2px) scale(1.04) !important;
    background:rgba(255,255,255,.14) !important;
}

.sf-action-icon-btn.is-active{
    background:linear-gradient(135deg,#7b61ff,#9b7bff) !important;
    border-color:rgba(123,97,255,.7) !important;
    box-shadow:0 0 20px rgba(123,97,255,.45) !important;
}

.sf-action-icon-btn i{
    font-size:22px !important;
}

.sf-action-icon-btn.like-active{
    background:linear-gradient(135deg,#ff4d6d,#ff758f) !important;
    border-color:rgba(255,77,109,.7) !important;
    box-shadow:0 0 20px rgba(255,77,109,.4) !important;
}

@media(max-width:760px){
    .single-post .sf-title-row,
    .single-videos .sf-title-row,
    .single-livros .sf-title-row{
        align-items:flex-start !important;
    }

    .single-post .sf-single-actions,
    .single-videos .sf-single-actions,
    .single-livros .sf-single-actions{
        width:100% !important;
        justify-content:flex-end !important;
        margin-top:6px !important;
    }

    .sf-action-icon-btn{
        width:46px !important;
        height:46px !important;
    }
}



/* =========================================================
   LIVROS MOBILE - viewport estático
   Corrige tremedeira/arrasto lateral no celular
========================================================= */

@media(max-width:760px){

    html,
    body{
        max-width:100% !important;
        overflow-x:hidden !important;
    }

    body.single-livros{
        width:100% !important;
        max-width:100% !important;
        overflow-x:hidden !important;
        overscroll-behavior-x:none !important;
    }

    .single-livros #page,
    .single-livros .site,
    .single-livros main,
    .single-livros .sf-book-single,
    .single-livros .sf-book-single-inner{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        overflow-x:hidden !important;
        box-sizing:border-box !important;
    }

    .single-livros .sf-book-single{
        padding-left:0 !important;
        padding-right:0 !important;
    }

    .single-livros .sf-book-single-inner{
        padding-left:0 !important;
        padding-right:0 !important;
    }

    .single-livros .sf-book-reader{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        overflow:hidden !important;
        box-sizing:border-box !important;
        contain:layout paint !important;
        touch-action:pan-y !important;
        padding-left:14px !important;
        padding-right:14px !important;
    }

    .single-livros .sf-book-stage{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        overflow:visible !important;
        box-sizing:border-box !important;
        transform:none;
    }

    .single-livros .sf-book-page{
        width:100% !important;
        max-width:100% !important;
        min-width:0 !important;
        box-sizing:border-box !important;
        transform-origin:center center !important;
    }

    .single-livros .sf-book-page img{
        width:100% !important;
        max-width:100% !important;
        height:auto !important;
        display:block !important;
        box-sizing:border-box !important;
    }

    /* setas visíveis, mas sem criar largura fora do viewport */
    .single-livros .sf-book-arrow,
    .single-livros .sf-book-nav{
        position:absolute !important;
        z-index:40 !important;
        max-width:52px !important;
        max-height:52px !important;
        transform:translateY(-50%) !important;
    }

    .single-livros .sf-book-prev,
    .single-livros .sf-book-nav-prev{
        left:2px !important;
        right:auto !important;
    }

    .single-livros .sf-book-next,
    .single-livros .sf-book-nav-next{
        right:2px !important;
        left:auto !important;
    }

    .single-livros .sf-book-pagination-bar{
        max-width:calc(100vw - 28px) !important;
        left:50% !important;
        right:auto !important;
        transform:translateX(-50%) !important;
        box-sizing:border-box !important;
    }

    .single-livros .sf-book-counter{
        max-width:calc(100vw - 128px) !important;
        overflow:hidden !important;
        text-overflow:ellipsis !important;
        white-space:nowrap !important;
    }

    .single-livros .sf-book-title-bottom{
        width:100% !important;
        max-width:100% !important;
        box-sizing:border-box !important;
        padding-left:18px !important;
        padding-right:18px !important;
        overflow-wrap:anywhere !important;
    }

    .single-livros .sf-title-row{
        width:100% !important;
        max-width:100% !important;
        overflow:hidden !important;
        box-sizing:border-box !important;
    }
}


/* =========================================================
   SINGLE ACTIONS - corrigir like e preservar Ver na TV
========================================================= */

/* Like ativo igual às listas: coração simples */
.sf-action-icon-btn.like-active i,
.sf-card-like-btn.is-active i{
    color:#fff !important;
}

/* Ver na TV volta ao padrão original, com texto */
.sf-tv-button,
.sf-watch-tv,
.btn-tv,
a[href*="tv"],
button[data-tv],
button[data-open-tv],
button[data-tv-modal]{
    width:auto !important;
    min-width:auto !important;
    height:52px !important;
    min-height:52px !important;
    border-radius:18px !important;
    padding:0 22px !important;
    gap:10px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    white-space:nowrap !important;
}

/* Não aplicar formato circular do single-actions no botão de TV */
.sf-single-actions .sf-tv-button,
.sf-single-actions .sf-watch-tv,
.sf-single-actions .btn-tv,
.sf-single-actions a[href*="tv"],
.sf-single-actions button[data-tv],
.sf-single-actions button[data-open-tv],
.sf-single-actions button[data-tv-modal]{
    width:auto !important;
    min-width:auto !important;
    border-radius:18px !important;
    padding:0 22px !important;
}

/* Garante que Minha Lista e Curtir continuam bolinhas */
.sf-single-mylist,
.sf-single-like{
    width:52px !important;
    min-width:52px !important;
    height:52px !important;
    min-height:52px !important;
    border-radius:50% !important;
    padding:0 !important;
}

@media(max-width:760px){
    .sf-single-mylist,
    .sf-single-like{
        width:46px !important;
        min-width:46px !important;
        height:46px !important;
        min-height:46px !important;
    }

    .sf-tv-button,
    .sf-watch-tv,
    .btn-tv,
    a[href*="tv"],
    button[data-tv],
    button[data-open-tv],
    button[data-tv-modal]{
        height:46px !important;
        min-height:46px !important;
        padding:0 16px !important;
        border-radius:16px !important;
    }
}



/* =========================================================
   LIVROS SINGLE - layout dos botões do título
========================================================= */

/* A linha do título dos livros fica limitada à largura do leitor, não ao viewport inteiro */
.single-livros .sf-title-row{
    width:min(1180px,100%) !important;
    max-width:1180px !important;
    margin:14px auto 0 !important;

    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:18px !important;

    box-sizing:border-box !important;
}

/* O título ocupa a área disponível e os ícones ficam do lado contrário, sem ir para o canto da tela */
.single-livros .sf-title-row .sf-book-title-bottom{
    flex:1 1 auto !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
}

.single-livros .sf-title-row .sf-single-actions{
    flex:0 0 auto !important;
    width:auto !important;
    margin:0 !important;
    display:flex !important;
    justify-content:flex-end !important;
    align-items:center !important;
    gap:12px !important;
}

/* Em mobile: título primeiro, botões na linha debaixo */
@media(max-width:760px){
    .single-livros .sf-title-row{
        width:100% !important;
        max-width:100% !important;
        margin:12px 0 0 !important;
        padding:0 18px !important;

        display:flex !important;
        flex-direction:column !important;
        align-items:flex-start !important;
        justify-content:flex-start !important;
        gap:12px !important;

        overflow:visible !important;
    }

    .single-livros .sf-title-row .sf-book-title-bottom{
        width:100% !important;
        max-width:100% !important;
        order:1 !important;
        padding:0 !important;
        margin:0 !important;
    }

    .single-livros .sf-title-row .sf-single-actions{
        order:2 !important;
        width:100% !important;
        margin:0 !important;
        justify-content:flex-start !important;
        gap:12px !important;
    }
}



/* =====================================================
   SINGLE VÍDEO - botão Ver na TV restaurado
===================================================== */

.single-video-actions,
.single-movies-actions,
.single-serie-actions{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:18px !important;
    flex-wrap:wrap !important;
}

.single-video-actions .watch-on-tv,
.single-movies-actions .watch-on-tv,
.single-serie-actions .watch-on-tv{
    display:flex !important;
    flex-direction:column !important;
    align-items:flex-start !important;
    justify-content:center !important;
    gap:8px !important;
    margin-right:auto !important;
}

.single-video-actions .watch-on-tv .tv-button,
.single-movies-actions .watch-on-tv .tv-button,
.single-serie-actions .watch-on-tv .tv-button{
    order:1 !important;
}

.single-video-actions .watch-on-tv .tv-label,
.single-movies-actions .watch-on-tv .tv-label,
.single-serie-actions .watch-on-tv .tv-label{
    order:2 !important;
    font-size:14px !important;
    color:#fff !important;
    opacity:.9 !important;
}

.single-video-actions .sf-single-actions,
.single-movies-actions .sf-single-actions,
.single-serie-actions .sf-single-actions{
    margin-left:auto !important;
    display:flex !important;
    align-items:center !important;
    gap:14px !important;
}

@media(max-width:760px){

    .single-video-actions,
    .single-movies-actions,
    .single-serie-actions{
        flex-direction:column !important;
        align-items:flex-start !important;
    }

    .single-video-actions .watch-on-tv,
    .single-movies-actions .watch-on-tv,
    .single-serie-actions .watch-on-tv{
        margin-right:0 !important;
    }

    .single-video-actions .sf-single-actions,
    .single-movies-actions .sf-single-actions,
    .single-serie-actions .sf-single-actions{
        margin-left:0 !important;
    }
}




/* =====================================================
   SINGLE VÍDEO - Ver na TV como botão único
===================================================== */

/* remove a tentativa anterior de separar texto e ícone */
.single-video-actions .watch-on-tv,
.single-movies-actions .watch-on-tv,
.single-serie-actions .watch-on-tv,
.sf-watch-tv-wrap,
.sf-tv-wrap{
    display:inline-flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:center !important;
    gap:0 !important;
    margin:0 !important;
}

/* botão único: ícone + texto juntos */
.watch-on-tv,
.sf-watch-tv,
.sf-tv-button,
.tv-button,
button[data-tv],
button[data-open-tv],
button[data-tv-modal],
a[data-tv],
a[data-open-tv],
a[data-tv-modal]{
    width:auto !important;
    min-width:150px !important;
    height:58px !important;
    min-height:58px !important;

    padding:0 24px !important;
    border-radius:18px !important;

    display:inline-flex !important;
    flex-direction:row !important;
    align-items:center !important;
    justify-content:center !important;
    gap:12px !important;

    background:rgba(255,255,255,.08) !important;
    border:1px solid rgba(255,255,255,.18) !important;
    color:#fff !important;

    font-size:17px !important;
    font-weight:700 !important;
    line-height:1 !important;
    white-space:nowrap !important;
    text-decoration:none !important;

    cursor:pointer !important;
    -webkit-backdrop-filter:blur(12px) !important;
    backdrop-filter:blur(12px) !important;
}

/* garante que o texto não fique como label separado embaixo */


/* caso o markup tenha texto solto depois do ícone, mantém na mesma linha */


/* ícone da TV dentro do botão */


/* linha do título/ações: Minha Lista, Curtir e depois Ver na TV */
.single-video-actions,
.single-movies-actions,
.single-serie-actions,
.sf-single-video-actions{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:16px !important;
    flex-wrap:wrap !important;
}

.single-video-actions .sf-single-actions,
.single-movies-actions .sf-single-actions,
.single-serie-actions .sf-single-actions,
.sf-single-video-actions .sf-single-actions{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:12px !important;
    margin-left:auto !important;
}

/* Ver na TV não vira círculo */
.sf-single-actions .watch-on-tv,
.sf-single-actions .sf-watch-tv,
.sf-single-actions .sf-tv-button,
.sf-single-actions .tv-button,
.sf-single-actions button[data-tv],
.sf-single-actions button[data-open-tv],
.sf-single-actions button[data-tv-modal]{
    width:auto !important;
    min-width:150px !important;
    border-radius:18px !important;
    padding:0 24px !important;
}

/* só Minha Lista e Curtir são bolinhas */
.sf-single-mylist,
.sf-single-like{
    width:52px !important;
    min-width:52px !important;
    height:52px !important;
    min-height:52px !important;
    border-radius:50% !important;
    padding:0 !important;
}

@media(max-width:760px){
    .watch-on-tv,
    .sf-watch-tv,
    .sf-tv-button,
    .tv-button,
    button[data-tv],
    button[data-open-tv],
    button[data-tv-modal],
    a[data-tv],
    a[data-open-tv],
    a[data-tv-modal]{
        height:50px !important;
        min-height:50px !important;
        min-width:136px !important;
        padding:0 18px !important;
        border-radius:16px !important;
        font-size:15px !important;
        gap:10px !important;
    }

    

    .sf-single-mylist,
    .sf-single-like{
        width:46px !important;
        min-width:46px !important;
        height:46px !important;
        min-height:46px !important;
    }
}



/* =====================================================
   SINGLE VÍDEO - ações corretas no título
===================================================== */

.sf-player-info-header{
    display:flex !important;
    align-items:center !important;
    justify-content:space-between !important;
    gap:18px !important;
    flex-wrap:wrap !important;
}

.sf-player-info-header .sf-player-title{
    flex:1 1 auto !important;
    min-width:240px !important;
    margin:0 !important;
}

.sf-player-header-actions{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:12px !important;
    flex:0 0 auto !important;
    margin-left:auto !important;
}

.sf-player-header-actions .sf-single-actions{
    display:inline-flex !important;
    align-items:center !important;
    justify-content:flex-end !important;
    gap:12px !important;
    margin:0 !important;
    width:auto !important;
}

.sf-player-header-actions .sf-cast-btn,
.sf-cast-btn{
    width:auto !important;
    min-width:150px !important;
    height:56px !important;
    min-height:56px !important;
    padding:0 22px !important;
    border-radius:18px !important;

    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    flex-direction:row !important;
    gap:10px !important;

    background:rgba(255,255,255,.08) !important;
    border:1px solid rgba(255,255,255,.18) !important;
    color:#fff !important;

    font-size:16px !important;
    font-weight:700 !important;
    line-height:1 !important;
    white-space:nowrap !important;
    text-decoration:none !important;
}

.sf-player-header-actions .sf-cast-btn i,
.sf-cast-btn i{
    font-size:21px !important;
    line-height:1 !important;
}

.sf-player-header-actions .sf-cast-btn span,
.sf-cast-btn span{
    display:inline !important;
    color:inherit !important;
    font-size:inherit !important;
    font-weight:inherit !important;
    line-height:1 !important;
    margin:0 !important;
    padding:0 !important;
}

.sf-player-header-actions .sf-single-mylist,
.sf-player-header-actions .sf-single-like{
    width:52px !important;
    min-width:52px !important;
    height:52px !important;
    min-height:52px !important;
    border-radius:50% !important;
    padding:0 !important;
}

@media(max-width:760px){
    .sf-player-info-header{
        align-items:flex-start !important;
    }

    .sf-player-info-header .sf-player-title{
        width:100% !important;
        flex:0 0 100% !important;
    }

    .sf-player-header-actions{
        width:100% !important;
        justify-content:flex-start !important;
        margin-left:0 !important;
        flex-wrap:wrap !important;
    }

    .sf-player-header-actions .sf-cast-btn,
    .sf-cast-btn{
        height:50px !important;
        min-height:50px !important;
        min-width:136px !important;
        padding:0 18px !important;
        border-radius:16px !important;
        font-size:15px !important;
    }

    .sf-player-header-actions .sf-single-mylist,
    .sf-player-header-actions .sf-single-like{
        width:46px !important;
        min-width:46px !important;
        height:46px !important;
        min-height:46px !important;
    }
}



/* =====================================================
   LIVROS MOBILE - botão narração mais abaixo
===================================================== */

@media(max-width: 760px){

  .sf-book-page{
      padding-bottom: 120px !important;
      position: relative !important;
  }

  .sf-book-audio-btn,
  .sf-page-audio-btn,
  .sf-audio-button{
      position: absolute !important;
      left: 50% !important;
      bottom: 22px !important;
      transform: translateX(-50%) !important;
      z-index: 50 !important;
  }

  .sf-book-page img{
      margin-bottom: 26px !important;
  }

  .sf-book-page p,
  .sf-book-page .page-text{
      padding-bottom: 40px !important;
  }
}




/* =====================================================
   BUSCA MOBILE AJUSTADA
===================================================== */

@media(max-width: 760px){

  

  

  

  
}




/* =====================================================
   HOME HERO BUTTONS MOBILE
===================================================== */

@media(max-width: 760px){

  .hero-buttons,
  .featured-buttons,
  .banner-buttons{
      display:grid !important;
      grid-template-columns:1fr 1fr !important;
      gap:14px !important;
      width:100% !important;
      align-items:stretch !important;
  }

  .hero-buttons .btn,
  .featured-buttons .btn,
  .banner-buttons .btn{
      width:100% !important;
      min-width:0 !important;
      margin:0 !important;
  }

  .hero-buttons .btn-primary,
  .featured-buttons .btn-primary,
  .banner-buttons .btn-primary,
  .hero-buttons .btn-secondary,
  .featured-buttons .btn-secondary,
  .banner-buttons .btn-secondary{
      height:74px !important;
      border-radius:24px !important;
      font-size:18px !important;
  }
}




/* =====================================================
   TOP 3 MAIS VISTOS - 3 COLUNAS EM LINHA
===================================================== */





@media(max-width: 900px){

    
}




/* =====================================================
   HERO BUTTONS BALANCED SIZE
===================================================== */

.hero-buttons,
.featured-buttons,
.banner-buttons{
    display:flex !important;
    gap:24px !important;
    align-items:center !important;
    flex-wrap:wrap !important;
}

.hero-buttons .btn,
.featured-buttons .btn,
.banner-buttons .btn{
    width:auto !important;
    min-width:auto !important;
    flex:none !important;
    padding:0 42px !important;
    height:96px !important;
    border-radius:28px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:20px !important;
    font-size:26px !important;
    font-weight:700 !important;
}

.hero-buttons .btn .icon,
.featured-buttons .btn .icon,
.banner-buttons .btn .icon{
    margin:0 !important;
}

@media(max-width:760px){

    .hero-buttons,
    .featured-buttons,
    .banner-buttons{
        display:grid !important;
        grid-template-columns:1fr 1fr !important;
        gap:14px !important;
    }

    .hero-buttons .btn,
    .featured-buttons .btn,
    .banner-buttons .btn{
        width:100% !important;
        height:74px !important;
        padding:0 18px !important;
        border-radius:22px !important;
        font-size:18px !important;
        gap:12px !important;
    }
}




/* =========================================================
   HOME HERO - BOTÕES MARKUP NOVO v2026
========================================================= */

.sfh-actions-v2026{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:22px !important;
    flex-wrap:wrap !important;
    width:auto !important;
    max-width:100% !important;
    margin-top:28px !important;
}

.sfh-action-v2026{
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    height:78px !important;
    min-height:78px !important;

    padding:0 34px !important;
    border-radius:24px !important;

    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:16px !important;

    font-size:26px !important;
    font-weight:700 !important;
    line-height:1 !important;
    white-space:nowrap !important;
    text-decoration:none !important;

    border:1px solid rgba(255,255,255,.16) !important;
    cursor:pointer !important;
}

.sfh-action-play-v2026{
    background:linear-gradient(135deg,#756cff,#9b6cff) !important;
    color:#fff !important;
    box-shadow:0 18px 42px rgba(119,94,255,.28) !important;
}

.sfh-action-list-v2026{
    background:rgba(42,42,48,.88) !important;
    color:#fff !important;
    box-shadow:none !important;
}

.sfh-action-icon-v2026{
    width:48px !important;
    height:48px !important;
    min-width:48px !important;
    border-radius:50% !important;
    border:3px solid rgba(255,255,255,.9) !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    line-height:1 !important;
}

.sfh-action-icon-v2026 i{
    font-size:20px !important;
    line-height:1 !important;
}

.sfh-action-play-v2026 .sfh-action-icon-v2026 i{
    margin-left:3px !important;
}

.sfh-action-list-v2026.is-active .sfh-action-icon-v2026,
.sfh-action-list-v2026.sf-favorite-btn.is-active .sfh-action-icon-v2026{
    background:#7b61ff !important;
    border-color:#7b61ff !important;
}

/* mata largura antiga gigante quando o HTML antigo ainda aparece por cache parcial */
.hero-buttons .btn,
.featured-buttons .btn,
.banner-buttons .btn,
.sf-hero-actions .sf-btn,
.sf-hero-actions a,
.sf-hero-actions button{
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    flex:0 0 auto !important;
    height:78px !important;
    min-height:78px !important;
    padding:0 34px !important;
    border-radius:24px !important;
    font-size:26px !important;
    gap:16px !important;
}

@media(max-width:760px){
    .sfh-actions-v2026{
        display:grid !important;
        grid-template-columns:1fr 1fr !important;
        gap:12px !important;
        width:100% !important;
        margin-top:22px !important;
    }

    .sfh-action-v2026{
        width:100% !important;
        height:64px !important;
        min-height:64px !important;
        padding:0 14px !important;
        border-radius:20px !important;
        font-size:17px !important;
        gap:10px !important;
    }

    .sfh-action-icon-v2026{
        width:38px !important;
        height:38px !important;
        min-width:38px !important;
        border-width:2px !important;
    }

    .sfh-action-icon-v2026 i{
        font-size:16px !important;
    }

    .hero-buttons,
    .featured-buttons,
    .banner-buttons,
    .sf-hero-actions{
        display:grid !important;
        grid-template-columns:1fr 1fr !important;
        gap:12px !important;
        width:100% !important;
    }

    .hero-buttons .btn,
    .featured-buttons .btn,
    .banner-buttons .btn,
    .sf-hero-actions .sf-btn,
    .sf-hero-actions a,
    .sf-hero-actions button{
        width:100% !important;
        height:64px !important;
        min-height:64px !important;
        padding:0 14px !important;
        border-radius:20px !important;
        font-size:17px !important;
        gap:10px !important;
    }
}



/* =====================================================
   FIX BOTÃO HERO - tamanho correto
===================================================== */

.sf-hero .sf-buttons {
  flex-wrap: nowrap !important;
}

.sf-hero .sf-btn-play.sf-btn-continue {
  min-width: 0 !important;
  width: auto !important;
  max-width: none !important;
  padding: 14px 26px !important;
  min-height: 0 !important;
  height: auto !important;
  flex: 0 0 auto !important;
  font-size: 16px !important;
}

.sf-hero .sf-btn-list {
  flex: 0 0 auto !important;
  width: auto !important;
}


/* =====================================================
   FIX TOP 3 - grid 3 colunas correto
===================================================== */

.sf-top-section .sf-top-grid {
  display: grid !important;
  grid-template-columns: repeat(3, 1fr) !important;
  gap: 24px !important;
  align-items: start !important;
}

.sf-top-section .sf-top-item {
  position: relative !important;
  width: 100% !important;
  padding-left: 28px !important;
}

.sf-top-section .sf-top-number {
  position: absolute !important;
  top: auto !important;
  bottom: 0 !important;
  left: -16px !important;
  font-size: 110px !important;
  font-weight: 900 !important;
  color: rgba(255,255,255,0.07) !important;
  line-height: 1 !important;
  z-index: 0 !important;
  pointer-events: none !important;
  user-select: none !important;
  display: block !important;
}

.sf-top-section .sf-top-item .sf-card {
  width: 100% !important;
  min-width: 0 !important;
  position: relative !important;
  z-index: 1 !important;
}

@media (max-width: 900px) {
  .sf-top-section .sf-top-grid {
    grid-template-columns: 1fr !important;
  }
}

/* =====================================================
   AJUSTE HOME - TOP 3 MAIS VISTOS
   Mantém os três cards alinhados, com o número ao fundo
   e sem cortes/empilhamentos irregulares.
===================================================== */
.sf-home-top-views-only{
  margin-top:64px !important;
  margin-bottom:96px !important;
  overflow:visible !important;
}

.sf-home-top-views-only .sf-top-section{
  margin:0 !important;
  padding:0 !important;
  overflow:visible !important;
}

.sf-home-top-views-only .sf-top-grid{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(220px, 1fr)) !important;
  gap:clamp(28px, 5vw, 96px) !important;
  align-items:end !important;
  width:100% !important;
  max-width:none !important;
  overflow:visible !important;
}

.sf-home-top-views-only .sf-top-item{
  position:relative !important;
  display:flex !important;
  justify-content:center !important;
  align-items:flex-end !important;
  min-height:340px !important;
  width:100% !important;
  padding:0 !important;
  overflow:visible !important;
}

.sf-home-top-views-only .sf-top-number{
  position:absolute !important;
  left:50% !important;
  bottom:4px !important;
  transform:translateX(-92%) !important;
  z-index:0 !important;
  display:block !important;
  margin:0 !important;
  font-size:clamp(150px, 13vw, 230px) !important;
  line-height:.78 !important;
  font-weight:900 !important;
  letter-spacing:-10px !important;
  color:transparent !important;
  -webkit-text-stroke:4px rgba(255,255,255,.36) !important;
  text-stroke:4px rgba(255,255,255,.36) !important;
  pointer-events:none !important;
  user-select:none !important;
}

.sf-home-top-views-only .sf-top-item .sf-card{
  position:relative !important;
  z-index:2 !important;
  width:min(230px, 100%) !important;
  max-width:230px !important;
  min-width:0 !important;
  margin:0 !important;
}

@media(max-width:900px){
  .sf-home-top-views-only .sf-top-grid{
    grid-template-columns:1fr !important;
    gap:32px !important;
  }

  .sf-home-top-views-only .sf-top-item{
    justify-content:flex-start !important;
    min-height:230px !important;
    padding-left:72px !important;
  }

  .sf-home-top-views-only .sf-top-number{
    left:0 !important;
    bottom:8px !important;
    transform:none !important;
    font-size:120px !important;
    letter-spacing:-6px !important;
    -webkit-text-stroke-width:3px !important;
  }

  .sf-home-top-views-only .sf-top-item .sf-card{
    width:min(230px, calc(100vw - 120px)) !important;
    max-width:230px !important;
  }
}

@media(max-width:560px){
  .sf-home-top-views-only .sf-top-item{
    min-height:205px !important;
    padding-left:54px !important;
  }

  .sf-home-top-views-only .sf-top-number{
    font-size:88px !important;
    letter-spacing:-4px !important;
    -webkit-text-stroke-width:2px !important;
  }
}

/* =====================================================
   AJUSTE HOME - BOTÕES DO HERO E TOP 3
   21/05/2026
===================================================== */

/* Botões principais do hero com a mesma largura e altura */
.sf-hero .sfh-actions-v2026{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:24px !important;
  width:min(1180px, 100%) !important;
  max-width:100% !important;
  align-items:stretch !important;
  margin-top:28px !important;
}

.sf-hero .sfh-action-v2026{
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
  height:86px !important;
  min-height:86px !important;
  padding:0 32px !important;
  border-radius:24px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  box-sizing:border-box !important;
}

.sf-hero .sfh-action-play-v2026,
.sf-hero .sfh-action-list-v2026{
  flex:1 1 0 !important;
}

@media(max-width:760px){
  .sf-hero .sfh-actions-v2026{
    grid-template-columns:1fr !important;
    gap:12px !important;
    width:100% !important;
  }

  .sf-hero .sfh-action-v2026{
    height:64px !important;
    min-height:64px !important;
    padding:0 16px !important;
    font-size:18px !important;
    border-radius:20px !important;
  }
}

/* Título do Top 3 no mesmo padrão dos outros títulos da home */
.sf-home-top-views-only .sf-section-title{
  font-size:24px !important;
  line-height:1.15 !important;
  letter-spacing:0 !important;
  margin-bottom:24px !important;
}

/* Números do ranking com a mesma altura visual do card */
.sf-home-top-views-only .sf-top-grid{
  display:grid !important;
  grid-template-columns:repeat(3, minmax(220px, 1fr)) !important;
  gap:clamp(28px, 5vw, 76px) !important;
  align-items:stretch !important;
}

.sf-home-top-views-only .sf-top-item{
  display:grid !important;
  grid-template-columns:72px minmax(0, 230px) !important;
  gap:12px !important;
  align-items:stretch !important;
  justify-content:center !important;
  min-height:0 !important;
  padding:0 !important;
  overflow:visible !important;
}

.sf-home-top-views-only .sf-top-number{
  position:relative !important;
  left:auto !important;
  top:auto !important;
  bottom:auto !important;
  transform:none !important;
  z-index:1 !important;
  height:auto !important;
  min-height:100% !important;
  align-self:stretch !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  font-size:clamp(90px, 9vw, 150px) !important;
  line-height:1 !important;
  letter-spacing:-6px !important;
  color:transparent !important;
  -webkit-text-stroke:3px rgba(255,255,255,.42) !important;
  text-stroke:3px rgba(255,255,255,.42) !important;
  margin:0 !important;
}

.sf-home-top-views-only .sf-top-item .sf-card{
  align-self:stretch !important;
  width:100% !important;
  max-width:230px !important;
  margin:0 !important;
}

@media(max-width:900px){
  .sf-home-top-views-only .sf-top-grid{
    grid-template-columns:1fr !important;
    gap:28px !important;
  }

  .sf-home-top-views-only .sf-top-item{
    grid-template-columns:62px minmax(0, 230px) !important;
    justify-content:flex-start !important;
  }

  .sf-home-top-views-only .sf-top-number{
    font-size:96px !important;
    letter-spacing:-5px !important;
    -webkit-text-stroke-width:2.5px !important;
  }
}

@media(max-width:560px){
  .sf-home-top-views-only .sf-top-item{
    grid-template-columns:46px minmax(0, 1fr) !important;
    gap:10px !important;
  }

  .sf-home-top-views-only .sf-top-number{
    font-size:72px !important;
    letter-spacing:-3px !important;
    -webkit-text-stroke-width:2px !important;
  }
}

/* =====================================================
   FIX V49 - Botões do hero iguais em tamanho
   O botão roxo usa as mesmas medidas do botão Minha lista.
===================================================== */
.sf-hero .sf-buttons,
.sf-hero .hero-buttons,
.sf-hero .sf-actions,
.sf-series-hero .sf-buttons,
.sf-series-hero .hero-buttons,
.sf-series-hero .sf-actions{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:24px !important;
  width:min(980px, 100%) !important;
  max-width:980px !important;
  align-items:stretch !important;
  flex-wrap:unset !important;
}

.sf-hero .sf-buttons > *,
.sf-hero .hero-buttons > *,
.sf-hero .sf-actions > *,
.sf-series-hero .sf-buttons > *,
.sf-series-hero .hero-buttons > *,
.sf-series-hero .sf-actions > *{
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  height:72px !important;
  min-height:72px !important;
  max-height:72px !important;
  box-sizing:border-box !important;
  flex:none !important;
  overflow:hidden !important;
}

.sf-hero .sf-btn,
.sf-hero .btn,
.sf-hero .btn-play,
.sf-hero .sf-btn-play,
.sf-hero .sf-btn-continue,
.sf-hero .sf-continue-btn,
.sf-hero .continue-watching-btn,
.sf-hero .sf-btn-list,
.sf-hero .sf-btn-secondary,
.sf-series-hero .sf-btn,
.sf-series-hero .btn,
.sf-series-hero .btn-play,
.sf-series-hero .sf-btn-play,
.sf-series-hero .sf-btn-continue,
.sf-series-hero .sf-continue-btn,
.sf-series-hero .continue-watching-btn,
.sf-series-hero .sf-btn-list,
.sf-series-hero .sf-btn-secondary{
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:14px !important;
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  height:72px !important;
  min-height:72px !important;
  max-height:72px !important;
  padding:0 26px !important;
  border-radius:22px !important;
  font-size:clamp(20px, 1.55vw, 26px) !important;
  font-weight:800 !important;
  line-height:1 !important;
  letter-spacing:-.25px !important;
  white-space:nowrap !important;
  text-decoration:none !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
}

.sf-hero .sf-btn-play,
.sf-hero .btn-play,
.sf-hero .sf-btn-continue,
.sf-hero .sf-continue-btn,
.sf-hero .continue-watching-btn,
.sf-series-hero .sf-btn-play,
.sf-series-hero .btn-play,
.sf-series-hero .sf-btn-continue,
.sf-series-hero .sf-continue-btn,
.sf-series-hero .continue-watching-btn{
  background:linear-gradient(135deg,#7067ff,#9c6bff) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:0 12px 30px rgba(126,90,246,.24) !important;
}

.sf-hero .sf-btn-list,
.sf-hero .sf-btn-secondary,
.sf-series-hero .sf-btn-list,
.sf-series-hero .sf-btn-secondary{
  background:rgba(46,46,56,.78) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.15) !important;
  box-shadow:0 12px 30px rgba(0,0,0,.16) !important;
  -webkit-backdrop-filter:blur(12px) !important;
  backdrop-filter:blur(12px) !important;
}

.sf-hero .sf-btn span,
.sf-hero .btn span,
.sf-series-hero .sf-btn span,
.sf-series-hero .btn span{
  display:block !important;
  min-width:0 !important;
  max-width:100% !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  font-size:inherit !important;
  font-weight:800 !important;
  line-height:1 !important;
}

.sf-hero .sf-play-icon,
.sf-hero .sf-list-icon,
.sf-hero .sf-btn i,
.sf-hero .btn i,
.sf-series-hero .sf-play-icon,
.sf-series-hero .sf-list-icon,
.sf-series-hero .sf-btn i,
.sf-series-hero .btn i{
  width:44px !important;
  height:44px !important;
  min-width:44px !important;
  min-height:44px !important;
  max-width:44px !important;
  max-height:44px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:999px !important;
  border:3px solid rgba(255,255,255,.92) !important;
  background:transparent !important;
  color:#fff !important;
  font-size:17px !important;
  line-height:1 !important;
  padding:0 !important;
  margin:0 !important;
  box-sizing:border-box !important;
  flex:0 0 44px !important;
}

.sf-hero .sf-btn-play i.fa-play,
.sf-hero .btn-play i.fa-play,
.sf-series-hero .sf-btn-play i.fa-play,
.sf-series-hero .btn-play i.fa-play{
  padding-left:3px !important;
}

@media(max-width:900px){
  .sf-hero .sf-buttons,
  .sf-hero .hero-buttons,
  .sf-hero .sf-actions,
  .sf-series-hero .sf-buttons,
  .sf-series-hero .hero-buttons,
  .sf-series-hero .sf-actions{
    grid-template-columns:1fr !important;
    gap:12px !important;
    width:100% !important;
    max-width:100% !important;
  }

  .sf-hero .sf-buttons > *,
  .sf-hero .hero-buttons > *,
  .sf-hero .sf-actions > *,
  .sf-series-hero .sf-buttons > *,
  .sf-series-hero .hero-buttons > *,
  .sf-series-hero .sf-actions > *,
  .sf-hero .sf-btn,
  .sf-hero .btn,
  .sf-hero .btn-play,
  .sf-hero .sf-btn-play,
  .sf-hero .sf-btn-continue,
  .sf-hero .sf-continue-btn,
  .sf-hero .continue-watching-btn,
  .sf-hero .sf-btn-list,
  .sf-hero .sf-btn-secondary,
  .sf-series-hero .sf-btn,
  .sf-series-hero .btn,
  .sf-series-hero .btn-play,
  .sf-series-hero .sf-btn-play,
  .sf-series-hero .sf-btn-continue,
  .sf-series-hero .sf-continue-btn,
  .sf-series-hero .continue-watching-btn,
  .sf-series-hero .sf-btn-list,
  .sf-series-hero .sf-btn-secondary{
    height:62px !important;
    min-height:62px !important;
    max-height:62px !important;
    border-radius:18px !important;
    padding:0 18px !important;
    font-size:18px !important;
  }

  .sf-hero .sf-play-icon,
  .sf-hero .sf-list-icon,
  .sf-hero .sf-btn i,
  .sf-hero .btn i,
  .sf-series-hero .sf-play-icon,
  .sf-series-hero .sf-list-icon,
  .sf-series-hero .sf-btn i,
  .sf-series-hero .btn i{
    width:38px !important;
    height:38px !important;
    min-width:38px !important;
    min-height:38px !important;
    max-width:38px !important;
    max-height:38px !important;
    flex-basis:38px !important;
    font-size:15px !important;
  }
}

/* =====================================================
   FIX V50 - Botões do hero na página da série
   Mantém o botão roxo igual ao Minha lista, sem texto estourado.
===================================================== */
.sf-series-hero .hero-buttons,
.sf-series-hero .sf-actions,
.sf-series-hero .sf-buttons{
  display:grid !important;
  grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
  gap:24px !important;
  width:min(980px, 100%) !important;
  max-width:980px !important;
  align-items:stretch !important;
}

.sf-series-hero .hero-buttons > *,
.sf-series-hero .sf-actions > *,
.sf-series-hero .sf-buttons > *,
.sf-series-hero .hero-buttons a.sf-btn-play.sf-btn-continue,
.sf-series-hero .sf-actions a.sf-btn-play.sf-btn-continue,
.sf-series-hero .sf-buttons a.sf-btn-play.sf-btn-continue,
.sf-series-hero .hero-buttons .sf-btn-list,
.sf-series-hero .sf-actions .sf-btn-list,
.sf-series-hero .sf-buttons .sf-btn-list{
  width:100% !important;
  min-width:0 !important;
  max-width:100% !important;
  height:72px !important;
  min-height:72px !important;
  max-height:72px !important;
  padding:0 26px !important;
  border-radius:22px !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:14px !important;
  font-size:clamp(20px, 1.55vw, 26px) !important;
  font-weight:800 !important;
  line-height:1 !important;
  white-space:nowrap !important;
}

.sf-series-hero .hero-buttons a.sf-btn-play.sf-btn-continue,
.sf-series-hero .sf-actions a.sf-btn-play.sf-btn-continue,
.sf-series-hero .sf-buttons a.sf-btn-play.sf-btn-continue{
  background:linear-gradient(135deg,#7067ff,#9c6bff) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.12) !important;
  box-shadow:0 12px 30px rgba(126,90,246,.24) !important;
}

.sf-series-hero .hero-buttons .sf-btn-list,
.sf-series-hero .sf-actions .sf-btn-list,
.sf-series-hero .sf-buttons .sf-btn-list{
  background:rgba(46,46,56,.78) !important;
  color:#fff !important;
  border:1px solid rgba(255,255,255,.15) !important;
  box-shadow:0 12px 30px rgba(0,0,0,.16) !important;
}

.sf-series-hero .hero-buttons a.sf-btn-play.sf-btn-continue span,
.sf-series-hero .sf-actions a.sf-btn-play.sf-btn-continue span,
.sf-series-hero .sf-buttons a.sf-btn-play.sf-btn-continue span,
.sf-series-hero .hero-buttons .sf-btn-list span,
.sf-series-hero .sf-actions .sf-btn-list span,
.sf-series-hero .sf-buttons .sf-btn-list span{
  display:block !important;
  min-width:0 !important;
  max-width:100% !important;
  overflow:hidden !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
  font-size:clamp(20px, 1.55vw, 26px) !important;
  font-weight:800 !important;
  line-height:1 !important;
}

.sf-series-hero .hero-buttons a.sf-btn-play.sf-btn-continue i,
.sf-series-hero .sf-actions a.sf-btn-play.sf-btn-continue i,
.sf-series-hero .sf-buttons a.sf-btn-play.sf-btn-continue i,
.sf-series-hero .hero-buttons .sf-btn-list i,
.sf-series-hero .sf-actions .sf-btn-list i,
.sf-series-hero .sf-buttons .sf-btn-list i{
  width:44px !important;
  height:44px !important;
  min-width:44px !important;
  min-height:44px !important;
  max-width:44px !important;
  max-height:44px !important;
  flex:0 0 44px !important;
  border:3px solid rgba(255,255,255,.92) !important;
  border-radius:999px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:transparent !important;
  color:#fff !important;
  font-size:17px !important;
  line-height:1 !important;
  padding:0 !important;
  margin:0 !important;
  box-sizing:border-box !important;
}

.sf-series-hero .hero-buttons a.sf-btn-play.sf-btn-continue i.fa-play,
.sf-series-hero .sf-actions a.sf-btn-play.sf-btn-continue i.fa-play,
.sf-series-hero .sf-buttons a.sf-btn-play.sf-btn-continue i.fa-play{
  padding-left:3px !important;
}

@media(max-width:900px){
  .sf-series-hero .hero-buttons,
  .sf-series-hero .sf-actions,
  .sf-series-hero .sf-buttons{
    grid-template-columns:1fr !important;
    gap:12px !important;
    width:100% !important;
    max-width:100% !important;
  }

  .sf-series-hero .hero-buttons > *,
  .sf-series-hero .sf-actions > *,
  .sf-series-hero .sf-buttons > *,
  .sf-series-hero .hero-buttons a.sf-btn-play.sf-btn-continue,
  .sf-series-hero .sf-actions a.sf-btn-play.sf-btn-continue,
  .sf-series-hero .sf-buttons a.sf-btn-play.sf-btn-continue,
  .sf-series-hero .hero-buttons .sf-btn-list,
  .sf-series-hero .sf-actions .sf-btn-list,
  .sf-series-hero .sf-buttons .sf-btn-list{
    height:62px !important;
    min-height:62px !important;
    max-height:62px !important;
    border-radius:18px !important;
    padding:0 18px !important;
    font-size:18px !important;
  }

  .sf-series-hero .hero-buttons a.sf-btn-play.sf-btn-continue span,
  .sf-series-hero .sf-actions a.sf-btn-play.sf-btn-continue span,
  .sf-series-hero .sf-buttons a.sf-btn-play.sf-btn-continue span,
  .sf-series-hero .hero-buttons .sf-btn-list span,
  .sf-series-hero .sf-actions .sf-btn-list span,
  .sf-series-hero .sf-buttons .sf-btn-list span{
    font-size:18px !important;
  }

  .sf-series-hero .hero-buttons a.sf-btn-play.sf-btn-continue i,
  .sf-series-hero .sf-actions a.sf-btn-play.sf-btn-continue i,
  .sf-series-hero .sf-buttons a.sf-btn-play.sf-btn-continue i,
  .sf-series-hero .hero-buttons .sf-btn-list i,
  .sf-series-hero .sf-actions .sf-btn-list i,
  .sf-series-hero .sf-buttons .sf-btn-list i{
    width:38px !important;
    height:38px !important;
    min-width:38px !important;
    min-height:38px !important;
    max-width:38px !important;
    max-height:38px !important;
    flex-basis:38px !important;
    font-size:15px !important;
  }
}

/* Ajuste hero: mantém sombra somente na parte inferior, sem escurecer as laterais da thumbnail */
.sf-hero:before{
  background:linear-gradient(
    to top,
    var(--sf-bg) 0%,
    rgba(0,0,0,.78) 12%,
    rgba(0,0,0,.42) 30%,
    rgba(0,0,0,.14) 52%,
    rgba(0,0,0,0) 75%
  ) !important;
}


/* Ajuste final da busca: campo ocupa 90% da área e o botão fechar ocupa 10%, no desktop e no responsivo */
.sf-search-overlay{
  padding:40px 32px 24px !important;
  align-items:flex-start !important;
  justify-content:center !important;
}

.sf-search-overlay.is-open{
  display:flex !important;
}

.sf-search-overlay-box{
  width:min(1320px, calc(100vw - 64px)) !important;
  max-width:none !important;
  display:grid !important;
  grid-template-columns:minmax(70px, 10%) minmax(0, 90%) !important;
  align-items:center !important;
  gap:18px !important;
  margin:0 auto !important;
  box-sizing:border-box !important;
}

.sf-search-overlay-box .sf-search-close,
.sf-search-close{
  position:static !important;
  inset:auto !important;
  transform:none !important;
  width:72px !important;
  height:72px !important;
  min-width:72px !important;
  min-height:72px !important;
  justify-self:center !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  border-radius:50% !important;
  border:0 !important;
  background:rgba(255,255,255,.10) !important;
  color:#fff !important;
  font-size:42px !important;
  line-height:1 !important;
  cursor:pointer !important;
  z-index:2 !important;
  padding:0 !important;
  margin:0 !important;
}

.sf-search-overlay-box .sf-search-overlay-form,
.sf-search-overlay-form{
  width:100% !important;
  max-width:none !important;
  height:88px !important;
  min-height:88px !important;
  margin:0 !important;
  padding:0 18px 0 34px !important;
  border-radius:30px !important;
  display:flex !important;
  align-items:center !important;
  gap:18px !important;
  box-sizing:border-box !important;
  overflow:hidden !important;
}

.sf-search-overlay-input{
  min-width:0 !important;
  width:100% !important;
  flex:1 1 auto !important;
  font-size:30px !important;
  line-height:1.15 !important;
  white-space:nowrap !important;
  text-overflow:ellipsis !important;
}

.sf-search-overlay-submit{
  position:static !important;
  transform:none !important;
  flex:0 0 68px !important;
  width:68px !important;
  height:68px !important;
  min-width:68px !important;
  min-height:68px !important;
  margin:0 !important;
}

@media(max-width:900px){
  .sf-search-overlay{
    padding:28px 14px 20px !important;
  }

  .sf-search-overlay-box{
    width:100% !important;
    grid-template-columns:minmax(52px, 10%) minmax(0, 90%) !important;
    gap:10px !important;
    margin:0 auto !important;
  }

  .sf-search-overlay-box .sf-search-close,
  .sf-search-close{
    width:56px !important;
    height:56px !important;
    min-width:56px !important;
    min-height:56px !important;
    font-size:34px !important;
  }

  .sf-search-overlay-box .sf-search-overlay-form,
  .sf-search-overlay-form{
    height:70px !important;
    min-height:70px !important;
    border-radius:24px !important;
    padding:0 10px 0 22px !important;
    gap:10px !important;
  }

  .sf-search-overlay-input{
    font-size:20px !important;
  }

  .sf-search-overlay-submit{
    position:static !important;
    transform:none !important;
    flex:0 0 54px !important;
    width:54px !important;
    height:54px !important;
    min-width:54px !important;
    min-height:54px !important;
  }
}

@media(max-width:420px){
  .sf-search-overlay-box{
    grid-template-columns:52px minmax(0, 1fr) !important;
    gap:8px !important;
  }

  .sf-search-overlay-box .sf-search-overlay-form,
  .sf-search-overlay-form{
    padding-left:16px !important;
  }

  .sf-search-overlay-input{
    font-size:18px !important;
  }
}


/* Correção final: remove o escurecimento lateral do banner hero da página da série.
   A imagem fica visível nas laterais e a sombra permanece apenas embaixo para ligar com o fundo preto. */
.sf-series-hero:before{
  background:linear-gradient(
    to top,
    var(--sf-bg) 0%,
    rgba(0,0,0,.82) 10%,
    rgba(0,0,0,.48) 28%,
    rgba(0,0,0,.18) 48%,
    rgba(0,0,0,0) 72%
  ) !important;
}

/* Ajuste: margem superior da busca */
.sf-search-overlay-box{
  margin-top:20px !important;
}

@media(max-width:900px){
  .sf-search-overlay-box{
    margin-top:20px !important;
  }
}

/* =====================================================
   LIVROS MOBILE - reduzir espaço entre página e narração
===================================================== */
@media(max-width: 760px){
    body.single-livros .sf-book-page{
        padding-bottom:72px !important;
    }

    body.single-livros .sf-book-page img{
        margin-bottom:0 !important;
    }

    body.single-livros .sf-book-audio-btn,
    body.single-livros .sf-page-audio-btn,
    body.single-livros .sf-audio-button{
        bottom:16px !important;
    }

    body.single-livros .sf-book-reader{
        padding-bottom:18px !important;
    }
}

@media(max-width: 480px){
    body.single-livros .sf-book-page{
        padding-bottom:64px !important;
    }

    body.single-livros .sf-book-audio-btn,
    body.single-livros .sf-page-audio-btn,
    body.single-livros .sf-audio-button{
        bottom:12px !important;
    }
}

/* =========================================================
   LIVROS MOBILE - ajuste fino narração e setas
   Pedido: 10px entre botão de narração e paginação + setas pretas no mobile
========================================================= */
@media(max-width:760px){
    .single-livros .sf-book-reader{
        padding-bottom:44px !important;
    }

    .single-livros .sf-book-audio-btn{
        bottom:28px !important;
    }

    .single-livros .sf-book-pagination-bar{
        bottom:0 !important;
    }

    .single-livros .sf-book-arrow,
    .single-livros .sf-book-arrow i,
    .single-livros .sf-book-arrow svg,
    .single-livros .sf-book-arrow svg path{
        color:#000 !important;
        fill:#000 !important;
        stroke:#000 !important;
    }
}

@media(max-width:480px){
    .single-livros .sf-book-reader{
        padding-bottom:44px !important;
    }

    .single-livros .sf-book-audio-btn{
        bottom:24px !important;
    }
}

/* V54: hero mobile com os dois botões na mesma linha */
@media (max-width: 768px){
  .sf-hero .sf-buttons,
  .sf-series-hero .sf-buttons,
  .sf-series-hero .hero-buttons{
    display:grid !important;
    grid-template-columns:minmax(0, 1fr) minmax(0, 1fr) !important;
    gap:12px !important;
    width:100% !important;
    max-width:100% !important;
    align-items:stretch !important;
  }

  .sf-hero .sf-buttons .sf-btn,
  .sf-series-hero .sf-buttons .sf-btn,
  .sf-series-hero .hero-buttons .sf-btn,
  .sf-hero .sf-btn-continue,
  .sf-hero .sf-continue-btn,
  .sf-hero a.sf-btn-play,
  .sf-hero .sf-btn-play.sf-btn-continue,
  .sf-hero .sf-btn-list,
  .sf-hero .sf-favorite-btn{
    width:100% !important;
    min-width:0 !important;
    max-width:100% !important;
    height:64px !important;
    min-height:64px !important;
    padding:0 10px !important;
    border-radius:20px !important;
    gap:8px !important;
    font-size:16px !important;
    line-height:1.05 !important;
    justify-content:center !important;
    white-space:normal !important;
    text-align:center !important;
  }

  .sf-hero .sf-btn-continue i,
  .sf-hero .sf-continue-btn i,
  .sf-hero a.sf-btn-play i,
  .sf-hero .sf-btn-play.sf-btn-continue i,
  .sf-hero .sf-btn-list .sf-list-icon,
  .sf-hero .sf-favorite-btn .sf-list-icon{
    width:38px !important;
    height:38px !important;
    min-width:38px !important;
    min-height:38px !important;
    border-width:3px !important;
    font-size:16px !important;
    flex:0 0 38px !important;
  }

  .sf-hero .sf-btn-continue span,
  .sf-hero .sf-continue-btn span,
  .sf-hero a.sf-btn-play span,
  .sf-hero .sf-btn-play.sf-btn-continue span,
  .sf-hero .sf-btn-list span,
  .sf-hero .sf-favorite-btn span{
    font-size:16px !important;
    line-height:1.05 !important;
    font-weight:900 !important;
    min-width:0 !important;
  }
}

@media (max-width: 420px){
  .sf-hero .sf-buttons,
  .sf-series-hero .sf-buttons,
  .sf-series-hero .hero-buttons{
    gap:10px !important;
  }

  .sf-hero .sf-buttons .sf-btn,
  .sf-series-hero .sf-buttons .sf-btn,
  .sf-series-hero .hero-buttons .sf-btn,
  .sf-hero .sf-btn-continue,
  .sf-hero .sf-continue-btn,
  .sf-hero a.sf-btn-play,
  .sf-hero .sf-btn-play.sf-btn-continue,
  .sf-hero .sf-btn-list,
  .sf-hero .sf-favorite-btn{
    height:60px !important;
    min-height:60px !important;
    padding:0 8px !important;
    border-radius:18px !important;
    gap:6px !important;
  }

  .sf-hero .sf-btn-continue i,
  .sf-hero .sf-continue-btn i,
  .sf-hero a.sf-btn-play i,
  .sf-hero .sf-btn-play.sf-btn-continue i,
  .sf-hero .sf-btn-list .sf-list-icon,
  .sf-hero .sf-favorite-btn .sf-list-icon{
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
    min-height:34px !important;
    flex-basis:34px !important;
    font-size:14px !important;
  }

  .sf-hero .sf-btn-continue span,
  .sf-hero .sf-continue-btn span,
  .sf-hero a.sf-btn-play span,
  .sf-hero .sf-btn-play.sf-btn-continue span,
  .sf-hero .sf-btn-list span,
  .sf-hero .sf-favorite-btn span{
    font-size:14px !important;
  }
}

/* V55: reduz espaço entre o hero da página de série e a lista de episódios */
.single-series .sf-series-episodes,
.single-series .sf-series-tabs-section{
  padding-top:12px !important;
  margin-top:0 !important;
}

.single-series .sf-series-tabs-wrap{
  margin-top:0 !important;
}

.single-series .sf-series-hero{
  margin-bottom:0 !important;
}

@media (max-width:768px){
  .single-series .sf-series-episodes,
  .single-series .sf-series-tabs-section{
    padding-top:8px !important;
    margin-top:0 !important;
  }
}

/* =====================================================
   FIX V56 - Top 3 mais vistos mais compacto e largo
   Aumenta os números, aproxima número/card e amplia os cards
   para ficarem mais próximos da largura dos itens normais.
===================================================== */
.sf-home-top-views-only .sf-top-grid{
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  gap:clamp(22px, 3vw, 56px) !important;
  align-items:stretch !important;
}

.sf-home-top-views-only .sf-top-item{
  display:grid !important;
  grid-template-columns:clamp(96px, 7vw, 150px) minmax(280px, 360px) !important;
  gap:0 !important;
  align-items:stretch !important;
  justify-content:center !important;
  min-height:0 !important;
  padding:0 !important;
}

.sf-home-top-views-only .sf-top-number{
  position:relative !important;
  inset:auto !important;
  transform:none !important;
  align-self:stretch !important;
  width:100% !important;
  min-height:100% !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-end !important;
  padding-right:10px !important;
  font-size:clamp(150px, 11vw, 230px) !important;
  line-height:.85 !important;
  letter-spacing:-10px !important;
  -webkit-text-stroke:4px rgba(255,255,255,.38) !important;
  text-stroke:4px rgba(255,255,255,.38) !important;
}

.sf-home-top-views-only .sf-top-item .sf-card{
  width:100% !important;
  max-width:360px !important;
  min-width:280px !important;
  align-self:stretch !important;
}

@media(max-width:1200px){
  .sf-home-top-views-only .sf-top-item{
    grid-template-columns:clamp(82px, 7vw, 120px) minmax(250px, 320px) !important;
  }

  .sf-home-top-views-only .sf-top-item .sf-card{
    max-width:320px !important;
    min-width:250px !important;
  }

  .sf-home-top-views-only .sf-top-number{
    font-size:clamp(128px, 11vw, 190px) !important;
    letter-spacing:-8px !important;
  }
}

@media(max-width:900px){
  .sf-home-top-views-only .sf-top-grid{
    grid-template-columns:1fr !important;
    gap:24px !important;
  }

  .sf-home-top-views-only .sf-top-item{
    grid-template-columns:72px minmax(0, 1fr) !important;
    justify-content:stretch !important;
  }

  .sf-home-top-views-only .sf-top-number{
    justify-content:center !important;
    padding-right:6px !important;
    font-size:112px !important;
    letter-spacing:-6px !important;
    -webkit-text-stroke-width:3px !important;
  }

  .sf-home-top-views-only .sf-top-item .sf-card{
    max-width:360px !important;
    min-width:0 !important;
  }
}

@media(max-width:560px){
  .sf-home-top-views-only .sf-top-item{
    grid-template-columns:50px minmax(0, 1fr) !important;
    gap:6px !important;
  }

  .sf-home-top-views-only .sf-top-number{
    font-size:78px !important;
    letter-spacing:-3px !important;
    -webkit-text-stroke-width:2px !important;
  }
}

/* =====================================================
   FIX V57 - Top 3 full no mobile
   Remove limite de largura dos cards no responsivo para
   ocupar toda a área disponível ao lado do número.
===================================================== */
@media (max-width:900px){
  .sf-home-top-views-only{
    width:100% !important;
    overflow:hidden !important;
  }

  .sf-home-top-views-only .sf-top-grid{
    width:100% !important;
    max-width:none !important;
    gap:22px !important;
  }

  .sf-home-top-views-only .sf-top-item{
    width:100% !important;
    max-width:none !important;
    grid-template-columns:72px minmax(0, 1fr) !important;
    justify-content:stretch !important;
    align-items:stretch !important;
  }

  .sf-home-top-views-only .sf-top-item .sf-card{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    justify-self:stretch !important;
  }
}

@media (max-width:560px){
  .sf-home-top-views-only .sf-top-grid{
    gap:20px !important;
  }

  .sf-home-top-views-only .sf-top-item{
    grid-template-columns:54px minmax(0, 1fr) !important;
    gap:4px !important;
  }

  .sf-home-top-views-only .sf-top-number{
    font-size:86px !important;
    justify-content:flex-end !important;
    padding-right:4px !important;
  }
}

/* Sistema de pontos, conquistas e quizzes */
.sf-quiz-archive,
.sf-points-page,
.sf-redeem-page {
    background:#000;
    color:#fff;
    min-height:70vh;
}
.sf-quiz-hero {
    min-height:620px;
    background-size:cover;
    background-position:center;
    display:flex;
    align-items:flex-end;
    padding:140px 5vw 70px;
    color:#fff;
}
.sf-quiz-hero-inner { max-width:980px; }
.sf-quiz-kicker { display:inline-flex; align-items:center; gap:10px; font-weight:800; color:#cfcfcf; margin-bottom:14px; }
.sf-quiz-hero h1 { font-size:clamp(46px,7vw,96px); line-height:1; margin:0 0 18px; }
.sf-quiz-description { max-width:720px; font-size:20px; color:#e8e8e8; margin-bottom:26px; }
.sf-quiz-mode-buttons { display:flex; gap:22px; flex-wrap:wrap; }
.sf-quiz-mode-buttons .sf-btn { min-width:310px; justify-content:center; }
.sf-quiz-mode-buttons small { font-size:14px; opacity:.78; margin-left:8px; }
.sf-quiz-repeat-warning,
.sf-quiz-error { background:rgba(126,104,246,.18); border:1px solid rgba(126,104,246,.45); border-radius:18px; padding:14px 18px; max-width:720px; }
.sf-quiz-play-section { padding-top:26px; }
.sf-quiz-app { max-width:880px; margin:0 auto 80px; background:#171717; border:1px solid rgba(255,255,255,.12); border-radius:28px; padding:34px; box-shadow:0 24px 60px rgba(0,0,0,.35); }
.sf-quiz-progress { height:8px; background:#292929; border-radius:99px; overflow:hidden; margin-bottom:18px; }
.sf-quiz-progress span { display:block; width:0; height:100%; background:linear-gradient(90deg,#7b61ff,#22c55e); transition:width .25s ease; }
.sf-quiz-counter { color:#b7b7b7; font-weight:800; margin-bottom:8px; }
.sf-quiz-question { font-size:clamp(28px,4vw,44px); margin:0 0 22px; }
.sf-quiz-timer { height:10px; background:#292929; border-radius:99px; overflow:hidden; margin:0 0 22px; }
.sf-quiz-timer span { display:block; height:100%; width:100%; background:#7e68f6; }
.sf-quiz-answers { display:grid; gap:14px; }
.sf-quiz-answer { width:100%; text-align:left; padding:18px 20px; border-radius:18px; border:2px solid rgba(255,255,255,.18); background:#232329; color:#fff; font-size:20px; font-weight:800; cursor:pointer; }
.sf-quiz-answer.is-selected { border-color:#7e68f6; box-shadow:0 0 0 4px rgba(126,104,246,.18); }
.sf-quiz-answer.is-correct { border-color:#36c275; background:rgba(54,194,117,.18); }
.sf-quiz-answer.is-wrong { border-color:#d23d64; background:rgba(210,61,100,.18); }
.sf-quiz-actions { display:flex; gap:16px; margin-top:24px; flex-wrap:wrap; }
.sf-quiz-feedback { margin-top:24px; background:#0f0f10; border-radius:22px; padding:24px; }
.sf-quiz-feedback h3 { margin-top:0; font-size:28px; }
.sf-quiz-result-card h3 { font-size:58px; margin:0 0 10px; }
.sf-quiz-earned { display:flex; gap:14px; flex-wrap:wrap; margin:12px 0 22px; }
.sf-quiz-earned span { display:flex; align-items:center; gap:10px; background:#1d1d1f; border-radius:16px; padding:10px 14px; }
.sf-quiz-earned img { width:44px; height:44px; object-fit:cover; border-radius:50%; }
.sf-points-head { display:flex; justify-content:space-between; align-items:center; gap:20px; margin-bottom:30px; }
.sf-points-total { font-size:28px; color:#dcdcdc; }
.sf-points-total strong { font-size:64px; color:#fff; }
.sf-subsection-title { font-size:34px; margin:42px 0 18px; }
.sf-achievements-grid { display:grid; grid-template-columns:repeat(auto-fill,minmax(260px,1fr)); gap:18px; }
.sf-achievement-card { display:flex; gap:16px; align-items:center; background:#171717; border:1px solid rgba(255,255,255,.1); border-radius:24px; padding:18px; }
.sf-achievement-card img { width:82px; height:82px; border-radius:18px; object-fit:cover; }
.sf-achievement-card h3 { margin:0 0 6px; font-size:20px; }
.sf-achievement-card p { margin:0 0 4px; color:#dcdcdc; }
.sf-achievement-card small { color:#aaa; }
.sf-points-history { display:grid; gap:8px; max-width:900px; }
.sf-points-history div { display:grid; grid-template-columns:170px 90px 1fr; gap:14px; align-items:center; background:#151515; border-radius:14px; padding:12px 14px; }
.sf-points-history span { color:#aaa; }
.sf-points-history em { color:#ddd; font-style:normal; }
.sf-redeem-box { max-width:760px; margin:40px auto; background:#171717; border:1px solid rgba(255,255,255,.12); border-radius:34px; padding:42px; text-align:center; }
.sf-redeem-box h1 { font-size:clamp(40px,6vw,72px); margin:0 0 12px; }
.sf-redeem-form { display:grid; grid-template-columns:1fr auto; gap:14px; margin-top:24px; }
.sf-redeem-form input { border-radius:999px; border:1px solid rgba(255,255,255,.18); background:#25252b; color:#fff; font-size:24px; font-weight:800; padding:18px 24px; outline:0; }
.sf-redeem-seal { width:150px; height:150px; border-radius:32px; object-fit:cover; margin:18px auto; display:block; }
.sf-quiz-card .sf-meta { display:-webkit-box; -webkit-line-clamp:2; -webkit-box-orient:vertical; overflow:hidden; }

@media (max-width: 768px) {
    .sf-quiz-hero { min-height:560px; padding:120px 28px 48px; }
    .sf-quiz-hero h1 { font-size:52px; }
    .sf-quiz-mode-buttons { display:grid; grid-template-columns:1fr 1fr; gap:12px; }
    .sf-quiz-mode-buttons .sf-btn { min-width:0; padding-left:12px; padding-right:12px; font-size:18px; }
    .sf-quiz-mode-buttons .sf-btn small { display:none; }
    .sf-quiz-app { margin:0 20px 50px; padding:24px; border-radius:24px; }
    .sf-points-head { align-items:flex-start; flex-direction:column; }
    .sf-points-total strong { font-size:48px; }
    .sf-points-history div { grid-template-columns:1fr; gap:4px; }
    .sf-redeem-box { margin:24px 18px; padding:28px; }
    .sf-redeem-form { grid-template-columns:1fr; }
}


/* V62 - Botão de pontos no header */
.sf-header-points-btn{
  height:50px !important;
  min-width:92px !important;
  padding:0 18px !important;
  border-radius:999px !important;
  border:1px solid rgba(255,255,255,.20) !important;
  background:linear-gradient(135deg,rgba(124,124,255,.95),rgba(165,109,255,.95)) !important;
  color:#fff !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:9px !important;
  text-decoration:none !important;
  font-size:17px !important;
  font-weight:900 !important;
  line-height:1 !important;
  white-space:nowrap !important;
  box-shadow:0 12px 28px rgba(132,96,255,.32) !important;
  -webkit-backdrop-filter:blur(12px) !important;
  backdrop-filter:blur(12px) !important;
  transition:transform .2s ease, box-shadow .2s ease, opacity .2s ease !important;
}

.sf-header-points-btn:hover{
  transform:translateY(-1px) !important;
  box-shadow:0 16px 34px rgba(132,96,255,.42) !important;
  opacity:.96 !important;
}

.sf-header-points-btn i{
  color:#fff !important;
  font-size:17px !important;
  line-height:1 !important;
}

.sf-header-points-number{
  color:#fff !important;
  font-size:17px !important;
  font-weight:900 !important;
  line-height:1 !important;
}

@media(max-width:900px){
  .sf-header-points-btn{
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    min-height:40px !important;
    padding:0 !important;
    border-radius:50% !important;
    gap:0 !important;
  }

  .sf-header-points-btn i{
    font-size:16px !important;
  }

  .sf-header-points-number{
    position:absolute !important;
    right:-4px !important;
    top:-5px !important;
    min-width:18px !important;
    height:18px !important;
    padding:0 4px !important;
    border-radius:999px !important;
    background:#fff !important;
    color:#6d5cff !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    font-size:10px !important;
    font-weight:900 !important;
    border:1px solid rgba(0,0,0,.18) !important;
  }
}

@media(max-width:380px){
  .sf-header-actions{
    gap:6px !important;
  }

  .sf-search-trigger,
  .sf-profile-btn,
  .sf-header-points-btn{
    width:38px !important;
    height:38px !important;
    min-width:38px !important;
    min-height:38px !important;
  }
}

/* V64 - Badge de pontos nos cards de quiz */
.sf-quiz-card .sf-quiz-points-badge{
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
  right:10px !important;
  bottom:10px !important;
  top:auto !important;
  left:auto !important;
  padding:8px 12px !important;
  border-radius:10px !important;
  background:rgba(0,0,0,.82) !important;
  color:#fff !important;
  font-size:15px !important;
  font-weight:900 !important;
  line-height:1 !important;
  text-transform:uppercase !important;
}

.sf-quiz-card .sf-quiz-points-badge i{
  color:#fff !important;
  font-size:14px !important;
}

/* =====================================================
   DUDUFLIX - HERO CONFIGURÁVEL DA HOME
   Ajuste isolado para conteúdo selecionado/customizado.
===================================================== */
.sf-hero .sfh-actions-v2026.sfh-actions-has-like-v2026{
  grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  width:min(1260px, 100%) !important;
}

.sf-hero .sfh-actions-custom-v2026{
  display:flex !important;
  width:auto !important;
  max-width:100% !important;
}

.sf-hero .sfh-actions-custom-v2026 .sfh-action-v2026{
  width:auto !important;
  min-width:280px !important;
}

.sfh-action-like-v2026{
  background:rgba(42,42,48,.88) !important;
  color:#fff !important;
  box-shadow:none !important;
}

.sfh-action-like-v2026.is-active .sfh-action-icon-v2026{
  background:#d13d63 !important;
  border-color:#d13d63 !important;
}

@media(max-width:760px){
  .sf-hero .sfh-actions-v2026.sfh-actions-has-like-v2026{
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
    gap:10px !important;
  }

  .sf-hero .sfh-actions-v2026.sfh-actions-has-like-v2026 .sfh-action-v2026{
    min-width:0 !important;
    padding:0 8px !important;
    gap:7px !important;
    font-size:14px !important;
  }

  .sf-hero .sfh-actions-v2026.sfh-actions-has-like-v2026 .sfh-action-icon-v2026{
    width:34px !important;
    height:34px !important;
    min-width:34px !important;
  }

  .sf-hero .sfh-actions-custom-v2026{
    display:grid !important;
    grid-template-columns:1fr !important;
    width:100% !important;
  }

  .sf-hero .sfh-actions-custom-v2026 .sfh-action-v2026{
    width:100% !important;
    min-width:0 !important;
  }
}

/* Home: Livros + Jogos em 2 colunas */
.sf-home-livros-quizzes{
  overflow:visible;
}
.sf-home-split-grid{
  display:grid;
  grid-template-columns:minmax(260px,.55fr) minmax(0,1.45fr);
  gap:28px;
  align-items:start;
}
.sf-home-split-col{
  min-width:0;
  overflow:visible;
}
.sf-home-split-items{
  display:grid;
  grid-template-columns:repeat(2,minmax(0,1fr));
  gap:18px;
  overflow:visible;
  padding:12px 0 34px;
}

.sf-home-livros-items{
  grid-template-columns:1fr;
  max-width:520px;
}
.sf-home-jogos-items{
  grid-template-columns:repeat(3,minmax(0,1fr));
  gap:14px !important;
  column-gap:14px !important;
  row-gap:14px !important;
}
.sf-home-split-items .sf-card{
  width:100% !important;
  min-width:0 !important;
}
.sf-home-jogos-items .sf-card{
  width:100% !important;
  min-width:0 !important;
  max-width:none !important;
}
.sf-home-split-items .sf-card:hover{
  transform:scale(1.035);
}
@media (max-width:1100px){
  .sf-home-split-grid{
    grid-template-columns:1fr;
    gap:10px;
  }
  .sf-home-jogos-items{
    grid-template-columns:repeat(2,minmax(0,1fr));
  }
}
@media (max-width:640px){
  .sf-home-split-items,
  .sf-home-jogos-items{
    grid-template-columns:1fr;
    gap:16px;
    padding-bottom:22px;
  }
}

/* =========================================================
   PATCH HERO ACTIONS - botão principal + ícones circulares
   Mantém os botões de Minha Lista e Curtir no padrão dos cards.
========================================================= */
.sf-hero .sfh-actions-compact-icons-v2026,
.sf-series-hero .sfh-actions-compact-icons-v2026,
.sf-series-hero .hero-buttons.sfh-actions-compact-icons-v2026,
.sf-series-hero .sf-actions.sfh-actions-compact-icons-v2026{
  display:flex !important;
  flex-direction:row !important;
  align-items:center !important;
  justify-content:flex-start !important;
  flex-wrap:nowrap !important;
  gap:18px !important;
  width:min(880px, 100%) !important;
  max-width:100% !important;
  margin-top:26px !important;
  grid-template-columns:none !important;
  overflow:visible !important;
}

.sf-hero .sfh-actions-compact-icons-v2026 > *,
.sf-series-hero .sfh-actions-compact-icons-v2026 > *{
  width:auto !important;
  max-width:none !important;
  flex:none !important;
  overflow:visible !important;
}

.sf-hero .sfh-actions-compact-icons-v2026 .sfh-action-play-v2026,
.sf-series-hero .sfh-actions-compact-icons-v2026 .sf-btn-play,
.sf-series-hero .sfh-actions-compact-icons-v2026 .btn-play,
.sf-series-hero .sfh-actions-compact-icons-v2026 .sf-btn-continue{
  width:auto !important;
  min-width:320px !important;
  max-width:560px !important;
  flex:1 1 460px !important;
  height:72px !important;
  min-height:72px !important;
  border-radius:22px !important;
  padding:0 34px !important;
}

.sfh-hero-icon-actions-v2026{
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:14px !important;
  width:auto !important;
  min-width:auto !important;
  max-width:none !important;
  flex:0 0 auto !important;
  overflow:visible !important;
}

.sf-hero .sfh-hero-icon-actions-v2026 .sfh-hero-icon-btn-v2026,
.sf-series-hero .sfh-hero-icon-actions-v2026 .sfh-hero-icon-btn-v2026{
  width:64px !important;
  height:64px !important;
  min-width:64px !important;
  min-height:64px !important;
  max-width:64px !important;
  max-height:64px !important;
  flex:0 0 64px !important;
  border-radius:999px !important;
  padding:0 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:0 !important;
  background:transparent !important;
  border:3px solid rgba(255,255,255,.78) !important;
  box-shadow:none !important;
  -webkit-backdrop-filter:none !important;
  backdrop-filter:none !important;
}

.sf-hero .sfh-hero-icon-actions-v2026 .sfh-hero-icon-btn-v2026 i,
.sf-series-hero .sfh-hero-icon-actions-v2026 .sfh-hero-icon-btn-v2026 i{
  width:auto !important;
  height:auto !important;
  min-width:0 !important;
  min-height:0 !important;
  border:0 !important;
  border-radius:0 !important;
  background:transparent !important;
  box-shadow:none !important;
  color:#fff !important;
  font-size:25px !important;
  line-height:1 !important;
  padding:0 !important;
}

.sf-hero .sfh-hero-icon-actions-v2026 .sfh-hero-icon-btn-v2026.is-active,
.sf-series-hero .sfh-hero-icon-actions-v2026 .sfh-hero-icon-btn-v2026.is-active{
  background:linear-gradient(135deg,#7067ff,#9c6bff) !important;
  border-color:transparent !important;
  box-shadow:0 12px 30px rgba(126,90,246,.24) !important;
}

.sf-hero .sfh-hero-icon-actions-v2026 .sf-card-like-btn.is-active,
.sf-series-hero .sfh-hero-icon-actions-v2026 .sf-card-like-btn.is-active{
  background:#d13d63 !important;
  border-color:#d13d63 !important;
  box-shadow:0 12px 28px rgba(209,61,99,.26) !important;
}

@media(max-width:760px){
  .sf-hero .sfh-actions-compact-icons-v2026,
  .sf-series-hero .sfh-actions-compact-icons-v2026,
  .sf-series-hero .hero-buttons.sfh-actions-compact-icons-v2026,
  .sf-series-hero .sf-actions.sfh-actions-compact-icons-v2026{
    display:flex !important;
    flex-direction:row !important;
    grid-template-columns:none !important;
    gap:10px !important;
    width:100% !important;
    max-width:100% !important;
    align-items:center !important;
  }

  .sf-hero .sfh-actions-compact-icons-v2026 .sfh-action-play-v2026,
  .sf-series-hero .sfh-actions-compact-icons-v2026 .sf-btn-play,
  .sf-series-hero .sfh-actions-compact-icons-v2026 .btn-play,
  .sf-series-hero .sfh-actions-compact-icons-v2026 .sf-btn-continue{
    min-width:0 !important;
    width:auto !important;
    max-width:none !important;
    flex:1 1 auto !important;
    height:58px !important;
    min-height:58px !important;
    border-radius:18px !important;
    padding:0 14px !important;
    font-size:16px !important;
    gap:9px !important;
  }

  .sf-hero .sfh-actions-compact-icons-v2026 .sfh-action-text-v2026,
  .sf-series-hero .sfh-actions-compact-icons-v2026 .sf-btn-play span,
  .sf-series-hero .sfh-actions-compact-icons-v2026 .btn-play span,
  .sf-series-hero .sfh-actions-compact-icons-v2026 .sf-btn-continue span{
    overflow:hidden !important;
    text-overflow:ellipsis !important;
    white-space:nowrap !important;
  }

  .sf-hero .sfh-actions-compact-icons-v2026 .sfh-action-icon-v2026,
  .sf-series-hero .sfh-actions-compact-icons-v2026 .sf-play-icon,
  .sf-series-hero .sfh-actions-compact-icons-v2026 .sf-btn-play i.fa-play,
  .sf-series-hero .sfh-actions-compact-icons-v2026 .btn-play i.fa-play{
    width:36px !important;
    height:36px !important;
    min-width:36px !important;
    min-height:36px !important;
    font-size:14px !important;
  }

  .sfh-hero-icon-actions-v2026{
    gap:8px !important;
    flex:0 0 auto !important;
  }

  .sf-hero .sfh-hero-icon-actions-v2026 .sfh-hero-icon-btn-v2026,
  .sf-series-hero .sfh-hero-icon-actions-v2026 .sfh-hero-icon-btn-v2026{
    width:52px !important;
    height:52px !important;
    min-width:52px !important;
    min-height:52px !important;
    max-width:52px !important;
    max-height:52px !important;
    flex-basis:52px !important;
    border-width:3px !important;
  }

  .sf-hero .sfh-hero-icon-actions-v2026 .sfh-hero-icon-btn-v2026 i,
  .sf-series-hero .sfh-hero-icon-actions-v2026 .sfh-hero-icon-btn-v2026 i{
    font-size:20px !important;
  }
}

/* V73 - Ajustes quiz: espaçamento, conquistas e pontos de repetição */
.sf-quiz-mode-buttons .sf-btn,
.sf-quiz-actions .sf-btn,
.sf-quiz-feedback .sf-btn,
.sf-redeem-form .sf-btn,
.sf-points-head .sf-btn{
  gap:10px;
}

.sf-quiz-mode-buttons .sf-btn i,
.sf-quiz-actions .sf-btn i,
.sf-quiz-feedback .sf-btn i,
.sf-redeem-form .sf-btn i,
.sf-points-head .sf-btn i{
  margin-right:0 !important;
  flex:0 0 auto;
}

.sf-achievements-grid{
  grid-template-columns:repeat(auto-fill, minmax(220px, 260px)) !important;
  align-items:stretch;
}

.sf-achievement-card{
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:flex-start !important;
  text-align:center !important;
  min-height:270px;
  padding:26px 22px !important;
}

.sf-achievement-card img{
  width:132px !important;
  height:132px !important;
  border-radius:26px !important;
  margin-bottom:16px;
}

.sf-achievement-card h3{
  font-size:24px !important;
  line-height:1.15;
  margin:0 0 8px !important;
}

.sf-achievement-card small{
  display:block;
  font-size:14px;
  line-height:1.35;
  color:#aaa;
}

@media (max-width:768px){
  .sf-achievements-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:14px !important;
  }

  .sf-achievement-card{
    min-height:230px;
    padding:20px 14px !important;
  }

  .sf-achievement-card img{
    width:110px !important;
    height:110px !important;
  }

  .sf-achievement-card h3{
    font-size:20px !important;
  }
}

/* V74 - Meus Pontos: cards de conquistas no padrão visual solicitado */
.sf-points-page .sf-achievements-grid{
  display:grid !important;
  grid-template-columns:repeat(auto-fill, minmax(320px, 380px)) !important;
  gap:24px !important;
  align-items:start !important;
  justify-content:start !important;
}

.sf-points-page .sf-achievement-card{
  width:100% !important;
  max-width:380px !important;
  min-height:0 !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
  justify-content:flex-start !important;
  text-align:left !important;
  background:#171717 !important;
  border:1px solid rgba(255,255,255,.12) !important;
  border-radius:34px !important;
  padding:22px !important;
  box-shadow:none !important;
  overflow:hidden !important;
}

.sf-points-page .sf-achievement-card img{
  width:100% !important;
  max-width:290px !important;
  height:auto !important;
  aspect-ratio:1 / 1 !important;
  object-fit:cover !important;
  border-radius:30px !important;
  margin:0 auto 16px !important;
  display:block !important;
}

.sf-points-page .sf-achievement-card > div{
  width:100% !important;
  display:block !important;
}

.sf-points-page .sf-achievement-card h3{
  font-size:24px !important;
  line-height:1.12 !important;
  margin:0 0 8px !important;
  color:#fff !important;
  font-weight:800 !important;
}

.sf-points-page .sf-achievement-card p{
  display:none !important;
}

.sf-points-page .sf-achievement-card small{
  display:block !important;
  font-size:15px !important;
  line-height:1.35 !important;
  color:#aaa !important;
  margin:0 !important;
}

@media (max-width:768px){
  .sf-points-page .sf-achievements-grid{
    grid-template-columns:minmax(0, 1fr) !important;
    gap:18px !important;
  }

  .sf-points-page .sf-achievement-card{
    max-width:100% !important;
    border-radius:28px !important;
    padding:18px !important;
  }

  .sf-points-page .sf-achievement-card img{
    max-width:260px !important;
    border-radius:26px !important;
  }

  .sf-points-page .sf-achievement-card h3{
    font-size:22px !important;
  }
}


/* V78 - Ajustes finais do quiz */
.sf-quiz-answer{
  font-weight:600 !important;
}
.sf-quiz-points-badge,
.sf-quiz-card .sf-quiz-points-badge{
  text-transform:none !important;
}
.sf-quiz-actions .sf-btn,
.sf-quiz-start-actions .sf-btn,
.sf-quiz-mode-btn,
.sf-quiz-submit,
.sf-quiz-skip{
  display:inline-flex;
  align-items:center;
  gap:12px !important;
}


/* V79 - Minha Lista em verde */
.sf-favorite-btn.is-active .sf-list-icon,
.sf-favorite-btn.is-active i,
.sf-card-favorite-btn.is-active,
.sfh-hero-icon-btn-v2026.sf-favorite-btn.is-active,
.sf-hero .sf-favorite-btn.is-active,
.sf-series-hero .sf-favorite-btn.is-active{
  background:#31c96b !important;
  border-color:#31c96b !important;
  color:#fff !important;
  box-shadow:0 10px 26px rgba(49,201,107,.34) !important;
}

.sf-card-favorite-btn.is-active i,
.sf-favorite-btn.is-active .sf-list-icon,
.sf-favorite-btn.is-active i.fa-check{
  color:#fff !important;
}

.sf-favorite-btn.is-active:hover .sf-list-icon,
.sf-card-favorite-btn.is-active:hover,
.sfh-hero-icon-btn-v2026.sf-favorite-btn.is-active:hover{
  background:#29b95f !important;
  border-color:#29b95f !important;
}

/* V80 - Hero: Minha Lista verde e botão principal mais compacto */
.sf-hero .sfh-hero-icon-actions-v2026 .sfh-hero-icon-btn-v2026.sf-favorite-btn.is-active,
.sf-series-hero .sfh-hero-icon-actions-v2026 .sfh-hero-icon-btn-v2026.sf-favorite-btn.is-active{
  background:#31c96b !important;
  border-color:#31c96b !important;
  color:#fff !important;
  box-shadow:0 12px 28px rgba(49,201,107,.32) !important;
}

.sf-hero .sfh-hero-icon-actions-v2026 .sfh-hero-icon-btn-v2026.sf-favorite-btn.is-active:hover,
.sf-series-hero .sfh-hero-icon-actions-v2026 .sfh-hero-icon-btn-v2026.sf-favorite-btn.is-active:hover{
  background:#29b95f !important;
  border-color:#29b95f !important;
}

.sf-hero .sfh-hero-icon-actions-v2026 .sfh-hero-icon-btn-v2026.sf-favorite-btn.is-active i,
.sf-series-hero .sfh-hero-icon-actions-v2026 .sfh-hero-icon-btn-v2026.sf-favorite-btn.is-active i{
  color:#fff !important;
}

.sf-hero .sfh-actions-compact-icons-v2026 .sfh-action-play-v2026,
.sf-series-hero .sfh-actions-compact-icons-v2026 .sf-btn-play,
.sf-series-hero .sfh-actions-compact-icons-v2026 .btn-play,
.sf-series-hero .sfh-actions-compact-icons-v2026 .sf-btn-continue{
  flex:0 0 auto !important;
  width:auto !important;
  min-width:0 !important;
  max-width:max-content !important;
  padding-left:42px !important;
  padding-right:42px !important;
}

.sf-hero .sfh-actions-compact-icons-v2026 .sfh-action-play-v2026 .sfh-action-text-v2026,
.sf-series-hero .sfh-actions-compact-icons-v2026 .sf-btn-play span,
.sf-series-hero .sfh-actions-compact-icons-v2026 .btn-play span,
.sf-series-hero .sfh-actions-compact-icons-v2026 .sf-btn-continue span{
  white-space:nowrap !important;
}

@media(max-width:760px){
  .sf-hero .sfh-actions-compact-icons-v2026 .sfh-action-play-v2026,
  .sf-series-hero .sfh-actions-compact-icons-v2026 .sf-btn-play,
  .sf-series-hero .sfh-actions-compact-icons-v2026 .btn-play,
  .sf-series-hero .sfh-actions-compact-icons-v2026 .sf-btn-continue{
    flex:1 1 auto !important;
    min-width:0 !important;
    max-width:none !important;
    padding-left:18px !important;
    padding-right:18px !important;
  }
}


/* V81 - Botão roxo compacto também na página da série */
.sf-series-hero .sfh-actions-compact-icons-v2026{
  display:flex !important;
  align-items:center !important;
  gap:22px !important;
  width:auto !important;
}

.sf-series-hero .sfh-actions-compact-icons-v2026 > .btn-play.sf-btn,
.sf-series-hero .sfh-actions-compact-icons-v2026 > .sf-btn-play,
.sf-series-hero .sfh-actions-compact-icons-v2026 > .sf-btn-continue,
.sf-series-hero .hero-buttons > .btn-play.sf-btn,
.sf-series-hero .hero-buttons > .sf-btn-play,
.sf-series-hero .hero-buttons > .sf-btn-continue{
  flex:0 0 auto !important;
  width:auto !important;
  min-width:0 !important;
  max-width:max-content !important;
  padding-left:42px !important;
  padding-right:42px !important;
}

.sf-series-hero .sfh-actions-compact-icons-v2026 > .btn-play.sf-btn span,
.sf-series-hero .sfh-actions-compact-icons-v2026 > .sf-btn-play span,
.sf-series-hero .sfh-actions-compact-icons-v2026 > .sf-btn-continue span{
  white-space:nowrap !important;
}

@media(max-width:760px){
  .sf-series-hero .sfh-actions-compact-icons-v2026{
    gap:14px !important;
  }

  .sf-series-hero .sfh-actions-compact-icons-v2026 > .btn-play.sf-btn,
  .sf-series-hero .sfh-actions-compact-icons-v2026 > .sf-btn-play,
  .sf-series-hero .sfh-actions-compact-icons-v2026 > .sf-btn-continue,
  .sf-series-hero .hero-buttons > .btn-play.sf-btn,
  .sf-series-hero .hero-buttons > .sf-btn-play,
  .sf-series-hero .hero-buttons > .sf-btn-continue{
    flex:0 0 auto !important;
    width:auto !important;
    min-width:0 !important;
    max-width:calc(100vw - 170px) !important;
    padding-left:22px !important;
    padding-right:22px !important;
  }
}

/* V82 - Força botão principal do hero da série a ficar compacto */
body.single-series .sf-series-hero .sf-actions.hero-buttons > a.sf-btn-primary,
body.single-series .sf-series-hero .sf-actions.hero-buttons > .sf-btn-primary,
body.single-series .sf-series-hero .sfh-actions-compact-icons-v2026 > a.sf-btn-primary,
body.single-series .sf-series-hero .sfh-actions-compact-icons-v2026 > .sf-btn-primary,
.single-series .sf-series-hero .sf-actions.hero-buttons > a.sf-btn-primary,
.single-series .sf-series-hero .sf-actions.hero-buttons > .sf-btn-primary,
.single-series .sf-series-hero .sfh-actions-compact-icons-v2026 > a.sf-btn-primary,
.single-series .sf-series-hero .sfh-actions-compact-icons-v2026 > .sf-btn-primary,
.sf-series-hero .sf-actions.hero-buttons > a.sf-btn-primary.btn-play,
.sf-series-hero .sf-actions.hero-buttons > a.sf-btn-primary.sf-btn-play,
.sf-series-hero .sf-actions.hero-buttons > a.sf-btn-primary.sf-btn-continue{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  flex:0 0 auto !important;
  flex-grow:0 !important;
  flex-shrink:0 !important;
  width:max-content !important;
  min-width:0 !important;
  max-width:max-content !important;
  padding-left:42px !important;
  padding-right:42px !important;
  box-sizing:border-box !important;
}

body.single-series .sf-series-hero .sf-actions.hero-buttons > a.sf-btn-primary span,
.single-series .sf-series-hero .sf-actions.hero-buttons > a.sf-btn-primary span,
.sf-series-hero .sf-actions.hero-buttons > a.sf-btn-primary.btn-play span,
.sf-series-hero .sf-actions.hero-buttons > a.sf-btn-primary.sf-btn-play span,
.sf-series-hero .sf-actions.hero-buttons > a.sf-btn-primary.sf-btn-continue span{
  display:inline-block !important;
  white-space:nowrap !important;
  flex:0 0 auto !important;
  width:auto !important;
}

@media(max-width:760px){
  body.single-series .sf-series-hero .sf-actions.hero-buttons > a.sf-btn-primary,
  body.single-series .sf-series-hero .sf-actions.hero-buttons > .sf-btn-primary,
  body.single-series .sf-series-hero .sfh-actions-compact-icons-v2026 > a.sf-btn-primary,
  body.single-series .sf-series-hero .sfh-actions-compact-icons-v2026 > .sf-btn-primary,
  .single-series .sf-series-hero .sf-actions.hero-buttons > a.sf-btn-primary,
  .single-series .sf-series-hero .sf-actions.hero-buttons > .sf-btn-primary,
  .single-series .sf-series-hero .sfh-actions-compact-icons-v2026 > a.sf-btn-primary,
  .single-series .sf-series-hero .sfh-actions-compact-icons-v2026 > .sf-btn-primary,
  .sf-series-hero .sf-actions.hero-buttons > a.sf-btn-primary.btn-play,
  .sf-series-hero .sf-actions.hero-buttons > a.sf-btn-primary.sf-btn-play,
  .sf-series-hero .sf-actions.hero-buttons > a.sf-btn-primary.sf-btn-continue{
    width:max-content !important;
    min-width:0 !important;
    max-width:calc(100vw - 180px) !important;
    padding-left:22px !important;
    padding-right:22px !important;
  }
}



/* =====================================================
   QUIZ FEEDBACK MODAL
===================================================== */

.sf-quiz-modal{
    position:fixed;
    inset:0;
    z-index:999999;
    display:none;
    align-items:center;
    justify-content:center;
    padding:24px;
}

.sf-quiz-modal[aria-hidden="false"]{
    display:flex;
}

.sf-quiz-modal-backdrop{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.78);
    -webkit-backdrop-filter:blur(10px);
    backdrop-filter:blur(10px);
}

.sf-quiz-modal-card{
    position:relative;
    z-index:2;
    width:min(560px,94vw);
    padding:34px;
    border-radius:26px;
    background:linear-gradient(180deg,rgba(32,32,38,.98),rgba(18,18,22,.98));
    border:1px solid rgba(255,255,255,.14);
    color:#fff;
    text-align:center;
    box-shadow:0 28px 90px rgba(0,0,0,.62);
    transform:scale(.96);
    animation:sfQuizModalIn .2s ease forwards;
}

@keyframes sfQuizModalIn{
    to{transform:scale(1);}
}

.sf-quiz-modal-icon{
    width:78px;
    height:78px;
    margin:0 auto 18px;
    border-radius:50%;
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:34px;
    color:#fff;
}

.sf-quiz-modal.is-correct .sf-quiz-modal-icon{
    background:linear-gradient(135deg,#22c55e,#16a34a);
    box-shadow:0 16px 38px rgba(34,197,94,.28);
}

.sf-quiz-modal.is-wrong .sf-quiz-modal-icon{
    background:linear-gradient(135deg,#ef4444,#dc2626);
    box-shadow:0 16px 38px rgba(239,68,68,.28);
}

.sf-quiz-modal-title{
    margin:0 0 16px;
    font-size:34px;
    line-height:1.08;
    font-weight:900;
    color:#fff;
}

.sf-quiz-modal-body{
    display:grid;
    gap:12px;
    margin:0 0 24px;
    color:rgba(255,255,255,.84);
    font-size:18px;
    line-height:1.55;
}

.sf-quiz-modal-body p{
    margin:0;
}

.sf-quiz-modal-body strong{
    color:#fff;
}

.sf-quiz-modal-actions{
    display:flex;
    align-items:center;
    justify-content:center;
}

.sf-quiz-modal-next{
    min-width:210px;
    border-radius:18px !important;
    background:linear-gradient(135deg,#7b61ff,#9f7cff) !important;
    color:#fff !important;
    gap:10px;
}

body.sf-quiz-modal-open{
    overflow:hidden;
}

@media(max-width:760px){
    .sf-quiz-modal{
        padding:18px;
    }

    .sf-quiz-modal-card{
        padding:28px 22px;
        border-radius:22px;
    }

    .sf-quiz-modal-icon{
        width:66px;
        height:66px;
        font-size:28px;
    }

    .sf-quiz-modal-title{
        font-size:28px;
    }

    .sf-quiz-modal-body{
        font-size:16px;
    }

    .sf-quiz-modal-next{
        width:100%;
    }
}

/* Puzzles */
.sf-puzzle-hero{
    min-height:620px;
    background-size:cover;
    background-position:center;
    display:flex;
    align-items:flex-end;
    padding:160px 60px 90px;
}
.sf-puzzle-hero-inner{
    width:min(1100px,100%);
}
.sf-puzzle-kicker{
    display:inline-flex;
    align-items:center;
    gap:8px;
    padding:8px 13px;
    border-radius:999px;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.16);
    color:#fff;
    font-weight:800;
    margin-bottom:18px;
}
.sf-puzzle-hero h1{
    margin:0 0 18px;
    max-width:980px;
    font-size:clamp(46px,6.4vw,86px);
    line-height:1.03;
    font-weight:700;
    letter-spacing:normal;
    color:#fff;
}
.sf-puzzle-description{
    max-width:860px;
    color:rgba(255,255,255,.88);
    font-size:20px;
    line-height:1.55;
    margin-bottom:24px;
}
.sf-puzzle-description p{margin:0 0 12px;}
.sf-puzzle-options{
    display:grid;
    grid-template-columns:auto auto minmax(240px,1fr);
    align-items:end;
    gap:18px 24px;
    max-width:1040px;
}
.sf-puzzle-option-group{
    display:grid;
    gap:10px;
}
.sf-puzzle-option-label{
    margin:0;
    color:rgba(255,255,255,.74);
    font-weight:800;
    font-size:14px;
    text-transform:uppercase;
    letter-spacing:.08em;
}
.sf-puzzle-piece-buttons,
.sf-puzzle-mode-buttons{
    display:flex;
    align-items:center;
    gap:12px;
    flex-wrap:wrap;
}
.sf-puzzle-piece-btn{
    width:58px;
    height:58px;
    border-radius:50%;
    border:2px solid rgba(255,255,255,.28);
    background:rgba(255,255,255,.12);
    color:#fff;
    font-size:20px;
    font-weight:950;
    cursor:pointer;
    transition:transform .18s ease, background .18s ease, border-color .18s ease;
}
.sf-puzzle-piece-btn:hover,
.sf-puzzle-piece-btn.is-active{
    transform:translateY(-2px);
    background:#fff;
    color:#000;
    border-color:#fff;
}
.sf-puzzle-mode-btn{
    min-width:150px;
    justify-content:center;
}
.sf-puzzle-mode-btn.is-active{
    outline:3px solid rgba(255,255,255,.3);
    outline-offset:3px;
}
.sf-puzzle-selection-summary{
    display:flex;
    align-items:center;
    gap:14px;
    flex-wrap:wrap;
    min-height:58px;
    padding:14px 18px;
    border:1px solid rgba(255,255,255,.16);
    border-radius:18px;
    background:rgba(0,0,0,.44);
    color:#fff;
    font-size:16px;
    font-weight:800;
}
.sf-puzzle-selection-summary span{
    display:inline-flex;
    align-items:center;
    gap:8px;
}
.sf-puzzle-start{
    width:max-content;
    min-width:220px;
    justify-content:center;
    grid-column:1 / -1;
}
.sf-puzzle-app-modal,
body .sf-puzzle-app-modal{
    position:fixed !important;
    inset:0 !important;
    z-index:999990 !important;
    display:none !important;
    align-items:center !important;
    justify-content:center !important;
    width:100vw !important;
    height:100vh !important;
    margin:0 !important;
    padding:24px !important;
    background:transparent !important;
}
.sf-puzzle-app-modal.is-open:not([hidden]),
.sf-puzzle-app-modal:not([hidden]){
    display:flex !important;
}
.sf-puzzle-app-backdrop{
    position:absolute;
    inset:0;
    background:rgba(0,0,0,.86);
    -webkit-backdrop-filter:blur(10px);
    backdrop-filter:blur(10px);
}
.sf-puzzle-app-card{
    position:relative;
    z-index:2;
    width:min(1180px,96vw);
    max-height:calc(100vh - 48px);
    overflow:auto;
    padding:30px;
    border-radius:28px;
    background:#171717;
    border:1px solid rgba(255,255,255,.14);
    color:#fff;
    box-shadow:0 28px 90px rgba(0,0,0,.62);
}
.sf-puzzle-app-close{
    position:absolute;
    top:18px;
    right:18px;
    width:42px;
    height:42px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:50%;
    border:1px solid rgba(255,255,255,.16);
    background:rgba(255,255,255,.08);
    color:#fff;
    cursor:pointer;
    z-index:4;
}
.sf-puzzle-game-head{
    display:flex;
    justify-content:space-between;
    gap:24px;
    padding-right:58px;
    margin-bottom:18px;
}
.sf-puzzle-game-kicker{
    margin:0 0 6px;
    color:rgba(255,255,255,.62);
    text-transform:uppercase;
    letter-spacing:.1em;
    font-size:13px;
    font-weight:900;
}
.sf-puzzle-game-title{
    margin:0;
    font-size:34px;
    line-height:1.05;
    font-weight:950;
    color:#fff;
}
.sf-puzzle-game-stats{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:10px;
    flex-wrap:wrap;
}
.sf-puzzle-game-stats span{
    display:inline-flex;
    align-items:center;
    gap:7px;
    padding:9px 12px;
    border-radius:999px;
    background:rgba(255,255,255,.1);
    color:#fff;
    font-weight:850;
    white-space:nowrap;
}
.sf-puzzle-progress-line{
    height:10px;
    border-radius:999px;
    background:rgba(255,255,255,.12);
    overflow:hidden;
    margin-bottom:13px;
}
.sf-puzzle-progress-line span{
    display:block;
    width:0;
    height:100%;
    border-radius:999px;
    background:linear-gradient(90deg,#7b61ff,#22c55e);
    transition:width .2s ease;
}
.sf-puzzle-status{
    margin:0 0 18px;
    color:rgba(255,255,255,.78);
    font-weight:750;
}
.sf-puzzle-board-layout{
    display:grid;
    grid-template-columns:minmax(320px,1fr) minmax(240px,330px);
    gap:22px;
    align-items:start;
}
.sf-puzzle-board{
    display:grid;
    grid-template-columns:repeat(var(--sf-puzzle-cols,3),1fr);
    grid-template-rows:repeat(var(--sf-puzzle-rows,2),1fr);
    gap:6px;
    width:100%;
    aspect-ratio:calc(var(--sf-puzzle-cols,3)) / calc(var(--sf-puzzle-rows,2));
    padding:8px;
    border-radius:22px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.14);
}
.sf-puzzle-slot{
    position:relative;
    min-height:72px;
    border-radius:12px;
    background:rgba(0,0,0,.38);
    outline:1px dashed rgba(255,255,255,.2);
    overflow:hidden;
}
.sf-puzzle-slot.is-over{
    outline-color:#fff;
    background:rgba(255,255,255,.12);
}
.sf-puzzle-slot.is-correct{
    outline:2px solid rgba(34,197,94,.65);
}
.sf-puzzle-tray{
    display:grid;
    grid-template-columns:repeat(2,minmax(0,1fr));
    grid-auto-rows:auto;
    gap:10px;
    min-height:320px;
    padding:12px;
    border-radius:22px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.14);
    align-content:start;
    align-items:start;
}
.sf-puzzle-tray.is-over{
    background:rgba(255,255,255,.14);
}
.sf-puzzle-piece{
    display:block;
    width:100%;
    height:100%;
    min-height:74px;
    border:0;
    border-radius:10px;
    background-repeat:no-repeat;
    background-color:#222;
    cursor:grab;
    box-shadow:0 10px 24px rgba(0,0,0,.28);
    transition:transform .15s ease, outline .15s ease, box-shadow .15s ease;
}
.sf-puzzle-tray .sf-puzzle-piece{
    height:auto;
    min-height:0;
    aspect-ratio:1.35 / 1;
}
.sf-puzzle-piece:active{
    cursor:grabbing;
}
.sf-puzzle-piece.is-dragging{
    opacity:.65;
    transform:scale(.98);
}
.sf-puzzle-piece.is-selected{
    outline:4px solid #fff;
    box-shadow:0 0 0 6px rgba(123,97,255,.45),0 14px 34px rgba(0,0,0,.42);
}

.sf-puzzle-game-timer{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:9px;
    min-height:44px;
    padding:11px 16px;
    border-radius:14px;
    background:rgba(255,255,255,.12);
    border:1px solid rgba(255,255,255,.14);
    color:#fff;
    font-size:16px;
    font-weight:900;
    white-space:nowrap;
}
.sf-puzzle-game-timer[hidden]{
    display:none !important;
}
.sf-puzzle-game-timer i{
    font-size:16px;
}
.sf-puzzle-game-timer strong{
    font-weight:950;
}

.sf-puzzle-game-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:12px;
    flex-wrap:wrap;
    margin-top:20px;
}
.sf-puzzle-result-modal .sf-quiz-modal-card{
    max-width:520px;
    padding-top:58px;
}

.sf-puzzle-result-modal .sf-puzzle-result-x{
    position:absolute;
    top:18px;
    right:18px;
    width:44px;
    height:44px;
    padding:0;
    border:1px solid rgba(255,255,255,.18);
    border-radius:999px;
    background:rgba(255,255,255,.08);
    color:#fff;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    font-size:18px;
}

.sf-puzzle-result-modal .sf-puzzle-result-x:hover{
    background:rgba(255,255,255,.16);
}

.sf-puzzle-result-modal .sf-puzzle-result-icon{
    background:linear-gradient(135deg,#6b7280,#4b5563) !important;
    box-shadow:0 16px 38px rgba(107,114,128,.28) !important;
    color:#fff;
}

.sf-puzzle-result-modal.is-right .sf-puzzle-result-icon{
    background:linear-gradient(135deg,#34d399,#16a34a) !important;
    box-shadow:0 16px 38px rgba(34,197,94,.34) !important;
}

.sf-puzzle-result-modal .sf-puzzle-result-close:not(.sf-puzzle-result-x){
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    gap:12px !important;
}

.sf-puzzle-result-modal .sf-puzzle-result-close:not(.sf-puzzle-result-x) i{
    margin-right:0 !important;
}
html.sf-puzzle-app-modal-open,
body.sf-puzzle-app-modal-open{
    overflow:hidden !important;
}
@media(max-width:900px){
    .sf-puzzle-hero{
        padding:130px 24px 70px;
        min-height:560px;
    }
    .sf-puzzle-options{
        grid-template-columns:1fr;
    }
    .sf-puzzle-start{
        grid-column:auto;
        width:100%;
    }
    .sf-puzzle-board-layout{
        grid-template-columns:1fr;
    }
    .sf-puzzle-tray{
        grid-template-columns:repeat(3,1fr);
        min-height:0;
    }
    .sf-puzzle-game-head{
        display:grid;
        padding-right:48px;
    }
}
@media(max-width:620px){
    .sf-puzzle-hero h1{
        font-size:42px;
        line-height:1.04;
    }
    .sf-puzzle-description{
        font-size:16px;
    }
    .sf-puzzle-app-modal{
        padding:12px !important;
        align-items:flex-start !important;
    }
    .sf-puzzle-app-card{
        width:100%;
        max-height:calc(100vh - 24px);
        padding:22px 14px;
        border-radius:22px;
    }
    .sf-puzzle-game-title{
        font-size:25px;
    }
    .sf-puzzle-board{
        gap:4px;
        padding:5px;
        border-radius:16px;
    }
    .sf-puzzle-slot{
        min-height:48px;
        border-radius:8px;
    }
    .sf-puzzle-tray{
        grid-template-columns:repeat(2,1fr);
        gap:8px;
        padding:8px;
    }
    .sf-puzzle-piece{
        min-height:58px;
        border-radius:8px;
    }
    .sf-puzzle-game-actions .sf-btn{
        width:100%;
        justify-content:center;
    }
}

/* Ajustes de seleção dos Puzzles */
.sf-puzzle-selection-summary [hidden],
.sf-puzzle-game-stats [hidden]{
    display:none !important;
}
.sf-puzzle-mode-btn,
.sf-puzzle-start,
.sf-puzzle-game-actions .sf-btn{
    display:inline-flex;
    align-items:center;
    gap:10px;
}
.sf-puzzle-mode-btn i,
.sf-puzzle-start i,
.sf-puzzle-game-actions .sf-btn i{
    flex:0 0 auto;
}


/* Ajuste: estado ativo dos botões de modo dos Puzzles */
.sf-puzzle-mode-btn:not(.is-active){
    background:rgba(109,109,110,.75) !important;
    color:#fff !important;
    border-color:rgba(255,255,255,.18) !important;
    outline:none !important;
}
.sf-puzzle-mode-btn.is-active{
    background:#fff !important;
    color:#000 !important;
    border-color:#fff !important;
}
.sf-puzzle-mode-btn.is-active i,
.sf-puzzle-mode-btn.is-active span{
    color:#000 !important;
}
.sf-puzzle-mode-btn:not(.is-active) i,
.sf-puzzle-mode-btn:not(.is-active) span{
    color:#fff !important;
}


/* Ajuste de layout do modal dos Puzzles: ações no topo e bandeja com 3 colunas */
.sf-puzzle-game-head .sf-puzzle-game-actions{
    margin-top:0;
    justify-content:flex-end;
    flex-wrap:nowrap;
}
.sf-puzzle-game-head .sf-puzzle-game-actions .sf-btn{
    white-space:nowrap;
}
.sf-puzzle-app-modal[data-puzzle-pieces="12"] .sf-puzzle-tray,
.sf-puzzle-app-modal[data-puzzle-pieces="24"] .sf-puzzle-tray{
    grid-template-columns:repeat(3,minmax(0,1fr));
    gap:8px;
}
.sf-puzzle-app-modal[data-puzzle-pieces="12"] .sf-puzzle-tray .sf-puzzle-piece,
.sf-puzzle-app-modal[data-puzzle-pieces="24"] .sf-puzzle-tray .sf-puzzle-piece{
    aspect-ratio:1 / 1;
}
@media(max-width:900px){
    .sf-puzzle-game-head .sf-puzzle-game-actions{
        justify-content:flex-start;
        flex-wrap:wrap;
    }
}


/* V1.1.34 - Submenus do header principal e menu do usuário */
@media (min-width:901px){
  .sf-header,
  .sf-header-inner,
  .sf-nav,
  .sf-nav-menu,
  .sf-profile-menu-wrap,
  .sf-profile-menu{
    overflow:visible !important;
  }

  .sf-nav-menu li,
  .sf-user-menu-items li{
    position:relative !important;
  }

  .sf-nav-menu > li > .sub-menu{
    position:absolute !important;
    top:calc(100% + 14px) !important;
    left:50% !important;
    transform:translateX(-50%) translateY(8px) !important;
    min-width:220px !important;
    margin:0 !important;
    padding:10px 0 !important;
    list-style:none !important;
    background:rgba(0,0,0,.92) !important;
    border:1px solid rgba(255,255,255,.14) !important;
    border-radius:14px !important;
    box-shadow:0 22px 70px rgba(0,0,0,.55) !important;
    -webkit-backdrop-filter:blur(14px) !important;
    backdrop-filter:blur(14px) !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    z-index:2147483000 !important;
    transition:opacity .18s ease, visibility .18s ease, transform .18s ease !important;
  }

  .sf-nav-menu > li > .sub-menu::before{
    content:"" !important;
    position:absolute !important;
    left:0 !important;
    right:0 !important;
    top:-16px !important;
    height:16px !important;
    background:transparent !important;
  }

  .sf-nav-menu > li:hover > .sub-menu,
  .sf-nav-menu > li:focus-within > .sub-menu{
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:translateX(-50%) translateY(0) !important;
  }

  .sf-nav-menu .sub-menu li,
  .sf-nav-menu .sub-menu a{
    display:block !important;
    width:100% !important;
  }

  .sf-nav-menu .sub-menu a{
    padding:13px 18px !important;
    font-size:15px !important;
    line-height:1.25 !important;
    color:#fff !important;
    white-space:nowrap !important;
    text-decoration:none !important;
    box-sizing:border-box !important;
  }

  .sf-nav-menu .sub-menu a:hover,
  .sf-nav-menu .sub-menu a:focus{
    background:rgba(255,255,255,.10) !important;
  }

  .sf-profile-menu-wrap:hover .sf-profile-menu,
  .sf-profile-menu-wrap:focus-within .sf-profile-menu,
  .sf-profile-menu:hover,
  .sf-profile-menu.is-open{
    display:block !important;
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
  }

  .sf-user-menu-items .sub-menu{
    position:absolute !important;
    top:0 !important;
    right:calc(100% + 8px) !important;
    min-width:220px !important;
    margin:0 !important;
    padding:10px 0 !important;
    list-style:none !important;
    background:rgba(0,0,0,.92) !important;
    border:1px solid rgba(255,255,255,.14) !important;
    border-radius:14px !important;
    box-shadow:0 22px 70px rgba(0,0,0,.55) !important;
    -webkit-backdrop-filter:blur(14px) !important;
    backdrop-filter:blur(14px) !important;
    opacity:0 !important;
    visibility:hidden !important;
    pointer-events:none !important;
    z-index:2147483001 !important;
    transform:translateX(8px) !important;
    transition:opacity .18s ease, visibility .18s ease, transform .18s ease !important;
  }

  .sf-user-menu-items .sub-menu::before{
    content:"" !important;
    position:absolute !important;
    top:0 !important;
    bottom:0 !important;
    right:-10px !important;
    width:10px !important;
    background:transparent !important;
  }

  .sf-user-menu-items li:hover > .sub-menu,
  .sf-user-menu-items li:focus-within > .sub-menu{
    opacity:1 !important;
    visibility:visible !important;
    pointer-events:auto !important;
    transform:translateX(0) !important;
  }

  .sf-user-menu-items .sub-menu a{
    padding:13px 18px !important;
    white-space:nowrap !important;
  }
}

@media (max-width:900px){
  .sf-nav-menu .sub-menu,
  .sf-user-menu-items .sub-menu{
    display:block !important;
    position:static !important;
    margin:0 !important;
    padding:0 0 0 14px !important;
    list-style:none !important;
    background:rgba(255,255,255,.04) !important;
    border:0 !important;
    box-shadow:none !important;
  }

  .sf-nav-menu .sub-menu a,
  .sf-user-menu-items .sub-menu a{
    font-size:16px !important;
    opacity:.9 !important;
  }
}

/* V1.1.35 - Submenu principal no mesmo padrão do menu de usuário */
@media (min-width:901px){
  .sf-nav-menu > li > .sub-menu{
    top:calc(100% + 18px) !important;
    left:50% !important;
    transform:translateX(-50%) translateY(8px) !important;
    min-width:300px !important;
    padding:18px 0 !important;
    background:rgba(0,0,0,.96) !important;
    border:1px solid rgba(255,255,255,.16) !important;
    border-radius:22px !important;
    box-shadow:0 24px 80px rgba(0,0,0,.72) !important;
    -webkit-backdrop-filter:blur(16px) !important;
    backdrop-filter:blur(16px) !important;
  }

  .sf-nav-menu > li > .sub-menu::after{
    content:"" !important;
    position:absolute !important;
    top:-10px !important;
    left:50% !important;
    width:20px !important;
    height:20px !important;
    background:rgba(0,0,0,.96) !important;
    border-left:1px solid rgba(255,255,255,.16) !important;
    border-top:1px solid rgba(255,255,255,.16) !important;
    transform:translateX(-50%) rotate(45deg) !important;
  }

  .sf-nav-menu > li:hover > .sub-menu,
  .sf-nav-menu > li:focus-within > .sub-menu{
    transform:translateX(-50%) translateY(0) !important;
  }

  .sf-nav-menu .sub-menu li{
    display:block !important;
    width:100% !important;
    margin:0 !important;
    padding:0 !important;
  }

  .sf-nav-menu .sub-menu a{
    display:flex !important;
    align-items:center !important;
    justify-content:flex-start !important;
    gap:18px !important;
    width:100% !important;
    padding:18px 26px !important;
    color:#fff !important;
    font-size:20px !important;
    font-weight:800 !important;
    line-height:1.2 !important;
    letter-spacing:0 !important;
    text-decoration:none !important;
    white-space:nowrap !important;
    box-sizing:border-box !important;
  }

  .sf-nav-menu .sub-menu a:hover,
  .sf-nav-menu .sub-menu a:focus{
    background:rgba(255,255,255,.10) !important;
  }

  .sf-nav-menu .sub-menu a i{
    flex:0 0 34px !important;
    width:34px !important;
    min-width:34px !important;
    text-align:center !important;
    font-size:26px !important;
    color:rgba(255,255,255,.92) !important;
    line-height:1 !important;
  }

  .sf-nav-menu .sub-menu a span{
    display:inline-block !important;
  }
}

/* V1.1.37 - Submenu principal alinhado ao tamanho do menu de usuário */
@media (min-width:901px){
  .sf-nav-menu > li > .sub-menu{
    top:calc(100% + 14px) !important;
    min-width:250px !important;
    width:250px !important;
    padding:10px 0 !important;
    border-radius:12px !important;
    background:rgba(0,0,0,.92) !important;
    border:1px solid rgba(255,255,255,.14) !important;
    box-shadow:0 22px 70px rgba(0,0,0,.55) !important;
    -webkit-backdrop-filter:blur(14px) !important;
    backdrop-filter:blur(14px) !important;
  }

  .sf-nav-menu > li > .sub-menu::after{
    top:-8px !important;
    width:16px !important;
    height:16px !important;
    background:rgba(0,0,0,.92) !important;
    border-left:1px solid rgba(255,255,255,.14) !important;
    border-top:1px solid rgba(255,255,255,.14) !important;
  }

  .sf-nav-menu .sub-menu a{
    gap:12px !important;
    padding:14px 18px !important;
    font-size:15px !important;
    font-weight:700 !important;
    line-height:1.25 !important;
  }

  .sf-nav-menu .sub-menu a i{
    flex:0 0 20px !important;
    width:20px !important;
    min-width:20px !important;
    font-size:20px !important;
  }
}

/* V84 - Meus Pontos: 6 conquistas por linha e botão principal no padrão hero */
.sf-points-page .sf-points-head{
  align-items:center !important;
  gap:28px !important;
}

.sf-points-page .sf-points-head > .sf-btn.sf-btn-primary{
  min-height:86px !important;
  padding:0 44px !important;
  border:0 !important;
  border-radius:32px !important;
  background:linear-gradient(135deg,#7b61ff 0%,#9b6dff 100%) !important;
  color:#fff !important;
  box-shadow:0 18px 42px rgba(123,97,255,.34) !important;
  font-size:28px !important;
  line-height:1 !important;
  font-weight:800 !important;
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:18px !important;
  text-decoration:none !important;
}

.sf-points-page .sf-points-head > .sf-btn.sf-btn-primary i{
  font-size:28px !important;
  line-height:1 !important;
  margin:0 !important;
  color:#fff !important;
}

.sf-points-page .sf-points-head > .sf-btn.sf-btn-primary span{
  color:#fff !important;
}

.sf-points-page .sf-points-head > .sf-btn.sf-btn-primary:hover{
  transform:translateY(-2px) !important;
  box-shadow:0 24px 54px rgba(123,97,255,.44) !important;
}

.sf-points-page .sf-achievements-grid{
  grid-template-columns:repeat(6, minmax(0, 1fr)) !important;
  gap:16px !important;
  align-items:stretch !important;
  justify-content:stretch !important;
}

.sf-points-page .sf-achievement-card{
  max-width:none !important;
  padding:14px !important;
  border-radius:24px !important;
}

.sf-points-page .sf-achievement-card img{
  max-width:none !important;
  width:100% !important;
  border-radius:20px !important;
  margin:0 0 12px !important;
}

.sf-points-page .sf-achievement-card h3{
  font-size:16px !important;
  line-height:1.15 !important;
  margin-bottom:6px !important;
}

.sf-points-page .sf-achievement-card small{
  font-size:12px !important;
  line-height:1.25 !important;
}

@media (max-width:1500px){
  .sf-points-page .sf-achievements-grid{
    grid-template-columns:repeat(5, minmax(0, 1fr)) !important;
  }
}

@media (max-width:1200px){
  .sf-points-page .sf-achievements-grid{
    grid-template-columns:repeat(4, minmax(0, 1fr)) !important;
  }
}

@media (max-width:900px){
  .sf-points-page .sf-points-head{
    align-items:flex-start !important;
  }

  .sf-points-page .sf-points-head > .sf-btn.sf-btn-primary{
    width:100% !important;
    min-height:74px !important;
    padding:0 28px !important;
    border-radius:26px !important;
    font-size:24px !important;
  }

  .sf-points-page .sf-achievements-grid{
    grid-template-columns:repeat(3, minmax(0, 1fr)) !important;
  }
}

@media (max-width:640px){
  .sf-points-page .sf-achievements-grid{
    grid-template-columns:repeat(2, minmax(0, 1fr)) !important;
    gap:12px !important;
  }

  .sf-points-page .sf-achievement-card{
    padding:12px !important;
    border-radius:20px !important;
  }

  .sf-points-page .sf-achievement-card h3{
    font-size:15px !important;
  }
}


/* V1.50 - Ajuste definitivo /meus-pontos: 6 conquistas por linha e botão no padrão hero */
.sf-points-page .sf-points-head{
    display:flex !important;
    align-items:flex-start !important;
    justify-content:space-between !important;
    gap:24px !important;
}
.sf-points-page .sf-points-head > .sf-btn.sf-btn-primary{
    min-height:78px !important;
    padding:0 42px !important;
    border-radius:28px !important;
    border:0 !important;
    background:linear-gradient(135deg,#7567ff 0%,#9b6cff 100%) !important;
    color:#fff !important;
    font-size:24px !important;
    font-weight:900 !important;
    line-height:1 !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:16px !important;
    box-shadow:0 22px 54px rgba(123,97,255,.28) !important;
    text-decoration:none !important;
    white-space:nowrap !important;
}
.sf-points-page .sf-points-head > .sf-btn.sf-btn-primary i{
    margin:0 !important;
    font-size:24px !important;
    line-height:1 !important;
    color:#fff !important;
}
.sf-points-page .sf-points-head > .sf-btn.sf-btn-primary span{
    display:inline-block !important;
    color:#fff !important;
}
.sf-points-page .sf-points-head > .sf-btn.sf-btn-primary:hover{
    transform:translateY(-2px) !important;
    filter:brightness(1.05) !important;
}
.sf-points-page .sf-achievements-grid{
    display:grid !important;
    grid-template-columns:repeat(6,minmax(0,1fr)) !important;
    gap:18px !important;
    align-items:stretch !important;
}
.sf-points-page .sf-achievement-card{
    min-width:0 !important;
    padding:16px !important;
    border-radius:22px !important;
}
.sf-points-page .sf-achievement-card img{
    width:100% !important;
    aspect-ratio:1 / 1 !important;
    height:auto !important;
    object-fit:cover !important;
    border-radius:18px !important;
}
.sf-points-page .sf-achievement-card h3{
    font-size:16px !important;
    line-height:1.15 !important;
    margin:12px 0 4px !important;
}
.sf-points-page .sf-achievement-card small{
    font-size:12px !important;
    line-height:1.25 !important;
}
@media(max-width:1500px){
  .sf-points-page .sf-achievements-grid{grid-template-columns:repeat(5,minmax(0,1fr)) !important;}
}
@media(max-width:1200px){
  .sf-points-page .sf-achievements-grid{grid-template-columns:repeat(4,minmax(0,1fr)) !important;}
}
@media(max-width:900px){
  .sf-points-page .sf-points-head{flex-direction:column !important;align-items:flex-start !important;}
  .sf-points-page .sf-achievements-grid{grid-template-columns:repeat(3,minmax(0,1fr)) !important;}
}
@media(max-width:640px){
  .sf-points-page .sf-points-head > .sf-btn.sf-btn-primary{
      width:100% !important;
      min-height:66px !important;
      padding:0 24px !important;
      font-size:19px !important;
      border-radius:22px !important;
  }
  .sf-points-page .sf-achievements-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:12px !important;}
}


/* V1.51 - Home: espaçamento dos cards de Jogos no mesmo padrão das outras listas */
.sf-home-jogos-items{
  gap:14px !important;
  column-gap:14px !important;
  row-gap:14px !important;
}

/* V1.52 - Cards de Puzzles usam selo de pontos no mesmo padrão dos Quizzes */
.sf-puzzle-card .sf-puzzle-points-badge{
  display:inline-flex !important;
  align-items:center !important;
  gap:7px !important;
  right:10px !important;
  bottom:10px !important;
  top:auto !important;
  left:auto !important;
  padding:8px 12px !important;
  border-radius:10px !important;
  background:rgba(0,0,0,.82) !important;
  color:#fff !important;
  font-size:15px !important;
  font-weight:900 !important;
  line-height:1 !important;
  text-transform:uppercase !important;
}

.sf-puzzle-card .sf-puzzle-points-badge i{
  color:#fff !important;
  font-size:14px !important;
}


/* V1.54 - Barra de progresso do Quiz com gradiente igual ao Puzzle */
.sf-quiz-progress span{
    background:linear-gradient(90deg,#7b61ff,#22c55e) !important;
    border-radius:999px;
}


/* v1.56 - Ações nos singles de Quiz e Puzzle */
.sf-quiz-hero-actions,
.sf-puzzle-hero-actions{
    display:flex;
    align-items:center;
    gap:12px;
    margin-top:18px;
}
.sf-quiz-hero-actions .sf-single-actions,
.sf-puzzle-hero-actions .sf-single-actions{
    display:inline-flex;
    align-items:center;
    gap:12px;
    margin:0;
}
.sf-quiz-hero-actions .sf-action-icon-btn,
.sf-puzzle-hero-actions .sf-action-icon-btn{
    width:58px !important;
    min-width:58px !important;
    height:58px !important;
    min-height:58px !important;
    border-radius:50% !important;
    background:rgba(0,0,0,.38) !important;
    border:2px solid rgba(255,255,255,.72) !important;
    color:#fff !important;
}
.sf-quiz-hero-actions .sf-action-icon-btn:hover,
.sf-puzzle-hero-actions .sf-action-icon-btn:hover{
    background:rgba(255,255,255,.14) !important;
    border-color:#fff !important;
}
.sf-quiz-hero-actions .sf-action-icon-btn.is-active,
.sf-puzzle-hero-actions .sf-action-icon-btn.is-active{
    background:linear-gradient(135deg,#7b61ff,#9b7bff) !important;
    border-color:rgba(255,255,255,.88) !important;
}
.sf-quiz-hero-actions .sf-action-icon-btn.like-active,
.sf-puzzle-hero-actions .sf-action-icon-btn.like-active{
    background:linear-gradient(135deg,#ff4d6d,#ff758f) !important;
    border-color:rgba(255,255,255,.88) !important;
}
.sf-quiz-hero-actions .sf-action-icon-btn i,
.sf-puzzle-hero-actions .sf-action-icon-btn i{
    font-size:22px !important;
}
@media(max-width:760px){
    .sf-quiz-hero-actions,
    .sf-puzzle-hero-actions{
        margin-top:14px;
    }
    .sf-quiz-hero-actions .sf-action-icon-btn,
    .sf-puzzle-hero-actions .sf-action-icon-btn{
        width:52px !important;
        min-width:52px !important;
        height:52px !important;
        min-height:52px !important;
    }
}


/* V1.57 - Singles usam Minha Lista/Curtir oficiais do tema */
.sf-single-mylist.sf-favorite-btn.is-active{
    background:#31c96b !important;
    border-color:#31c96b !important;
    color:#fff !important;
    box-shadow:0 10px 26px rgba(49,201,107,.34) !important;
}
.sf-single-mylist.sf-favorite-btn.is-active:hover{
    background:#29b95f !important;
    border-color:#29b95f !important;
}
.sf-single-mylist.sf-favorite-btn.is-active i{
    color:#fff !important;
    background:transparent !important;
    box-shadow:none !important;
}
.sf-single-like.is-active,
.sf-single-like.like-active{
    background:#e1285b !important;
    border-color:#e1285b !important;
    color:#fff !important;
    box-shadow:0 10px 26px rgba(225,40,91,.34) !important;
}
.sf-single-like.is-active:hover,
.sf-single-like.like-active:hover{
    background:#c91f4e !important;
    border-color:#c91f4e !important;
}
.sf-single-like.is-active i,
.sf-single-like.like-active i{
    color:#fff !important;
}

/* =========================================================
   V1.58 - Minha Lista dividida e playlist de vídeos
========================================================= */
.sf-mylist-page-v158{
    padding-top:120px;
}
.sf-mylist-group{
    margin-bottom:58px;
}
.sf-mylist-group-header{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:18px;
    margin-bottom:22px;
}
.sf-mylist-group-header h2{
    margin:0;
    font-size:clamp(30px,3vw,48px);
    line-height:1.05;
    font-weight:800;
    letter-spacing:-.035em;
    color:#fff;
}
.sf-mylist-group-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:12px;
    flex-wrap:wrap;
}
.sf-mylist-watch-all-btn,
.sf-mylist-page .sf-mylist-clear-btn{
    min-height:52px;
    padding:0 22px;
    border-radius:14px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    font-size:16px;
    font-weight:800;
    white-space:nowrap;
}
.sf-mylist-watch-all-btn{
    background:linear-gradient(135deg,#7b61ff,#9b6dff);
    color:#fff;
    border:0;
    box-shadow:0 18px 34px rgba(123,97,255,.28);
}
.sf-mylist-page .sf-mylist-clear-btn{
    background:rgba(255,255,255,.08);
    color:#fff;
    border:1px solid rgba(255,255,255,.18);
}
.sf-mylist-page .sf-mylist-clear-btn:hover{
    background:rgba(255,255,255,.14);
}
.sf-mylist-page-v158 .sf-mylist-grid{
    gap:22px !important;
}
.sf-mylist-watch-page{
    min-height:100vh;
    background:#050505;
    padding:20px 44px 70px;
    color:#fff;
}
.sf-mylist-watch-container{
    width:min(1280px,100%);
    margin:0 auto;
}
.sf-mylist-watch-info{
    display:flex;
    align-items:flex-start;
    justify-content:space-between;
    gap:20px;
    margin:0 0 24px;
}
.sf-mylist-watch-info h1{
    margin:0;
    font-size:clamp(30px,4.4vw,58px);
    line-height:1.02;
    letter-spacing:-.045em;
    font-weight:850;
    max-width:820px;
}
.sf-mylist-watch-actions{
    display:flex;
    align-items:center;
    justify-content:flex-end;
    gap:12px;
    flex-wrap:wrap;
}
.sf-mylist-back,
.sf-mylist-watch-info a{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:46px;
    padding:0 18px;
    border-radius:999px;
    background:rgba(255,255,255,.08);
    border:1px solid rgba(255,255,255,.14);
    color:#fff;
    font-size:16px;
    font-weight:800;
    white-space:nowrap;
    gap:10px;
}
.sf-mylist-back:hover,
.sf-mylist-watch-info a:hover{
    background:rgba(255,255,255,.14);
}
.sf-mylist-watch-player{
    position:relative;
    width:100%;
    aspect-ratio:16/9;
    background:#111;
    border-radius:22px;
    overflow:hidden;
    border:1px solid rgba(255,255,255,.12);
    box-shadow:0 24px 70px rgba(0,0,0,.42);
}
.sf-mylist-watch-player iframe{
    width:100%;
    height:100%;
    border:0;
    display:block;
}
.sf-mylist-watch-topbar,
.sf-mylist-watch-label{
    display:none !important;
}
.sf-mylist-playlist-panel{
    position:relative;
    background:#171717;
    border:1px solid rgba(255,255,255,.12);
    border-radius:24px;
    padding:24px;
    margin-top:28px;
}
.sf-mylist-playlist-heading{
    display:flex;
    align-items:flex-end;
    justify-content:space-between;
    gap:18px;
    margin-bottom:18px;
}
.sf-mylist-playlist-heading h2{
    margin:0;
    font-size:28px;
    letter-spacing:-.03em;
}
.sf-mylist-playlist-heading p{
    margin:0;
    color:rgba(255,255,255,.66);
    font-size:15px;
    font-weight:700;
}
.sf-mylist-playlist-carousel{
    position:relative;
}
.sf-mylist-playlist-viewport{
    overflow:hidden;
}
.sf-mylist-playlist-list{
    display:flex;
    gap:22px;
    overflow-x:auto;
    scroll-behavior:smooth;
    scroll-snap-type:x mandatory;
    padding:2px 4px 12px;
    scrollbar-width:none;
}
.sf-mylist-playlist-list::-webkit-scrollbar{
    display:none;
}
.sf-mylist-playlist-item{
    flex:0 0 clamp(240px,24vw,330px);
    width:clamp(240px,24vw,330px);
    display:flex;
    flex-direction:column;
    align-items:stretch;
    gap:0;
    padding:0;
    border:1px solid rgba(255,255,255,.1);
    border-radius:16px;
    background:#101010;
    color:#fff;
    cursor:pointer;
    text-align:left;
    overflow:hidden;
    scroll-snap-align:start;
    transition:background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease;
}
.sf-mylist-playlist-item:hover{
    transform:translateY(-2px);
    background:#1d1d1d;
    border-color:rgba(255,255,255,.2);
}
.sf-mylist-playlist-item.is-active{
    background:#303030;
    border-color:rgba(123,97,255,.65);
    box-shadow:0 0 0 1px rgba(123,97,255,.22) inset;
}
.sf-mylist-playlist-thumb{
    position:relative;
    display:block;
    flex:0 0 auto;
    width:100%;
    aspect-ratio:16/9;
    border-radius:0;
    background:#0b0b0b;
    overflow:hidden;
}
.sf-mylist-playlist-thumb img{
    width:100%;
    height:100%;
    object-fit:cover;
    display:block;
}
.sf-mylist-playlist-thumb small{
    position:absolute;
    right:10px;
    bottom:10px;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:28px;
    padding:0 9px;
    border-radius:8px;
    background:rgba(0,0,0,.78);
    color:#fff;
    font-size:14px;
    font-weight:850;
}
.sf-mylist-playlist-meta{
    min-width:0;
    min-height:96px;
    display:flex;
    flex-direction:column;
    justify-content:flex-start;
    padding:16px;
}
.sf-mylist-playlist-meta strong{
    display:-webkit-box;
    -webkit-line-clamp:2;
    -webkit-box-orient:vertical;
    overflow:hidden;
    font-size:20px;
    line-height:1.16;
    letter-spacing:-.02em;
}
.sf-mylist-playlist-meta small{
    display:none;
}
.sf-mylist-carousel-arrow{
    position:absolute;
    top:50%;
    z-index:3;
    width:48px;
    height:48px;
    border-radius:999px;
    border:1px solid rgba(255,255,255,.18);
    background:rgba(0,0,0,.72);
    color:#fff;
    display:flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    transform:translateY(-50%);
    box-shadow:0 10px 28px rgba(0,0,0,.35);
}
.sf-mylist-carousel-arrow:hover{
    background:rgba(123,97,255,.9);
}
.sf-mylist-carousel-prev{
    left:-18px;
}
.sf-mylist-carousel-next{
    right:-18px;
}
.sf-mylist-next-modal[hidden]{
    display:none !important;
}
.sf-mylist-next-modal{
    position:fixed;
    inset:0;
    z-index:9999;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:24px;
    background:rgba(0,0,0,.68);
    backdrop-filter:blur(10px);
}
.sf-mylist-next-modal-card{
    width:min(520px,100%);
    padding:34px;
    border-radius:26px;
    background:#19191f;
    border:1px solid rgba(255,255,255,.14);
    box-shadow:0 24px 80px rgba(0,0,0,.48);
    text-align:center;
}
.sf-mylist-next-modal-icon{
    width:78px;
    height:78px;
    margin:0 auto 18px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    background:linear-gradient(135deg,#7b61ff,#66c76f);
    color:#fff;
    font-size:26px;
}
.sf-mylist-next-modal-card h3{
    margin:0 0 10px;
    font-size:34px;
    line-height:1.05;
}
.sf-mylist-next-modal-card p{
    margin:0;
    color:rgba(255,255,255,.76);
    font-size:18px;
    line-height:1.45;
}
.sf-mylist-next-modal-card p strong,
.sf-mylist-next-modal-card p span{
    color:#fff;
}
.sf-mylist-next-modal-actions{
    display:flex;
    justify-content:center;
    gap:12px;
    margin-top:24px;
}
.sf-mylist-next-modal-actions button{
    min-height:44px;
    padding:0 18px;
    border-radius:999px;
    border:1px solid rgba(255,255,255,.16);
    font-weight:850;
    cursor:pointer;
}
.sf-mylist-next-modal-actions button:first-child{
    background:rgba(255,255,255,.08);
    color:#fff;
}
.sf-mylist-next-modal-actions button:last-child{
    background:#fff;
    color:#050505;
}
@media(max-width:1000px){
    .sf-mylist-playlist-item{
        flex-basis:clamp(230px,42vw,320px);
        width:clamp(230px,42vw,320px);
    }
}
@media(max-width:760px){
    .sf-mylist-page-v158,
    .sf-mylist-watch-page{
        padding-left:22px;
        padding-right:22px;
    }
    .sf-mylist-group-header,
    .sf-mylist-watch-info,
    .sf-mylist-playlist-heading{
        align-items:flex-start;
        flex-direction:column;
    }
    .sf-mylist-group-actions{
        width:100%;
        justify-content:flex-start;
    }
    .sf-mylist-watch-all-btn,
    .sf-mylist-page .sf-mylist-clear-btn{
        width:100%;
    }
    .sf-mylist-watch-actions{
        width:100%;
        justify-content:flex-start;
    }
    .sf-mylist-playlist-item{
        flex-basis:78vw;
        width:78vw;
    }
    .sf-mylist-carousel-prev{
        left:4px;
    }
    .sf-mylist-carousel-next{
        right:4px;
    }
}

/* v1.58 - episódios da série em carrossel horizontal */
.sf-series-episodes-carousel{
    position:relative !important;
    width:100% !important;
    max-width:1500px !important;
    margin:0 auto !important;
}

.sf-series-episodes-viewport{
    overflow:hidden !important;
    width:100% !important;
}

.sf-series-episodes-track{
    display:flex !important;
    gap:24px !important;
    overflow-x:auto !important;
    scroll-behavior:smooth !important;
    scroll-snap-type:x mandatory !important;
    padding:2px 4px 14px !important;
    scrollbar-width:none !important;
}

.sf-series-episodes-track::-webkit-scrollbar{
    display:none !important;
}

.sf-series-episode-card{
    flex:0 0 clamp(280px,24vw,390px) !important;
    width:clamp(280px,24vw,390px) !important;
    min-width:clamp(280px,24vw,390px) !important;
    border-radius:18px !important;
    background:#101010 !important;
    border:1px solid rgba(255,255,255,.10) !important;
    overflow:hidden !important;
    scroll-snap-align:start !important;
    transition:background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease !important;
}

.sf-series-episode-card:hover{
    transform:translateY(-2px) !important;
    background:#1d1d1d !important;
    border-color:rgba(255,255,255,.20) !important;
}

.sf-series-episode-card-link{
    display:flex !important;
    flex-direction:column !important;
    height:100% !important;
    color:#fff !important;
    text-decoration:none !important;
}

.sf-series-episode-card-thumb{
    position:relative !important;
    display:block !important;
    width:100% !important;
    aspect-ratio:16/9 !important;
    background:#050505 !important;
    overflow:hidden !important;
}

.sf-series-episode-card-thumb img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    display:block !important;
}

.sf-series-episode-card-duration{
    position:absolute !important;
    right:10px !important;
    bottom:10px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:28px !important;
    padding:0 9px !important;
    border-radius:8px !important;
    background:rgba(0,0,0,.78) !important;
    color:#fff !important;
    font-size:14px !important;
    font-weight:850 !important;
}

.sf-series-episode-card-body{
    display:flex !important;
    flex-direction:column !important;
    gap:8px !important;
    min-height:118px !important;
    padding:18px 18px 20px !important;
}

.sf-series-episode-card-title{
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
    color:#fff !important;
    font-size:22px !important;
    line-height:1.18 !important;
    font-weight:850 !important;
    letter-spacing:-.03em !important;
}

.sf-series-episode-card-number{
    color:rgba(255,255,255,.62) !important;
    font-size:14px !important;
    line-height:1.2 !important;
    font-weight:800 !important;
    text-transform:uppercase !important;
    letter-spacing:.04em !important;
}

.sf-series-carousel-arrow{
    position:absolute !important;
    top:42% !important;
    z-index:5 !important;
    width:54px !important;
    height:54px !important;
    border-radius:999px !important;
    border:1px solid rgba(255,255,255,.18) !important;
    background:rgba(0,0,0,.72) !important;
    color:#fff !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    cursor:pointer !important;
    transform:translateY(-50%) !important;
    box-shadow:0 10px 28px rgba(0,0,0,.35) !important;
}

.sf-series-carousel-arrow:hover{
    background:rgba(123,97,255,.92) !important;
}

.sf-series-carousel-prev{
    left:-22px !important;
}

.sf-series-carousel-next{
    right:-22px !important;
}

@media(max-width:1100px){
    .sf-series-episode-card{
        flex-basis:clamp(250px,42vw,340px) !important;
        width:clamp(250px,42vw,340px) !important;
        min-width:clamp(250px,42vw,340px) !important;
    }
}

@media(max-width:760px){
    .sf-series-tabs-section{
        padding-top:28px !important;
    }

    .sf-series-episodes-track{
        gap:16px !important;
    }

    .sf-series-episode-card{
        flex-basis:78vw !important;
        width:78vw !important;
        min-width:78vw !important;
    }

    .sf-series-episode-card-title{
        font-size:20px !important;
    }

    .sf-series-carousel-prev{
        left:4px !important;
    }

    .sf-series-carousel-next{
        right:4px !important;
    }
}

/* v1.58.6 - Padronização do modal de próximo vídeo/episódio */
#sf-next-overlay{
    position:fixed !important;
    inset:0 !important;
    z-index:99999 !important;
    display:none;
    align-items:center !important;
    justify-content:center !important;
    padding:24px !important;
    background:rgba(0,0,0,.68) !important;
    backdrop-filter:blur(12px) !important;
    -webkit-backdrop-filter:blur(12px) !important;
}
#sf-next-overlay .sf-next-box,
#sf-next-overlay .sf-next-box-standard{
    width:min(560px,100%) !important;
    max-width:560px !important;
    padding:38px 34px !important;
    border-radius:28px !important;
    background:#19191f !important;
    border:1px solid rgba(255,255,255,.14) !important;
    box-shadow:0 24px 80px rgba(0,0,0,.48) !important;
    text-align:center !important;
}
#sf-next-overlay .sf-next-play-icon{
    width:82px;
    height:82px;
    margin:0 auto 20px;
    display:flex;
    align-items:center;
    justify-content:center;
    border-radius:999px;
    background:linear-gradient(135deg,#7b61ff,#66c76f);
    color:#fff;
    font-size:28px;
    box-shadow:0 18px 50px rgba(123,97,255,.24);
}
#sf-next-overlay .sf-next-play-icon i{
    transform:translateX(2px);
}
#sf-next-overlay .sf-next-box h2{
    margin:0 0 12px !important;
    font-size:clamp(38px,5vw,58px) !important;
    line-height:1.04 !important;
    color:#fff !important;
    font-weight:900 !important;
}
#sf-next-overlay .sf-next-box p{
    margin:0 !important;
    color:rgba(255,255,255,.76) !important;
    font-size:clamp(20px,2.5vw,28px) !important;
    line-height:1.45 !important;
}
#sf-next-overlay .sf-next-box p span{
    color:#fff !important;
    font-weight:850 !important;
}
#sf-next-overlay .sf-next-actions{
    display:flex !important;
    justify-content:center !important;
    align-items:center !important;
    gap:16px !important;
    margin-top:30px !important;
    flex-wrap:wrap !important;
}
#sf-next-overlay .sf-next-actions .sf-btn,
#sf-next-overlay .sf-next-actions a,
#sf-next-overlay .sf-next-actions button{
    min-width:180px !important;
    min-height:58px !important;
    padding:0 26px !important;
    border-radius:999px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    font-size:19px !important;
    font-weight:900 !important;
    text-decoration:none !important;
    cursor:pointer !important;
}
#sf-next-overlay .sf-next-actions button,
#sf-next-overlay .sf-next-actions .sf-btn-secondary{
    background:rgba(255,255,255,.08) !important;
    border:2px solid rgba(255,255,255,.16) !important;
    color:#fff !important;
}
#sf-next-overlay .sf-next-actions a,
#sf-next-overlay .sf-next-actions .sf-btn-primary,
#sf-next-overlay .sf-next-actions .sf-btn-red{
    background:#fff !important;
    border:2px solid #fff !important;
    color:#050505 !important;
    box-shadow:none !important;
}
@media(max-width:760px){
    #sf-next-overlay .sf-next-box,
    #sf-next-overlay .sf-next-box-standard{
        padding:30px 22px !important;
        border-radius:24px !important;
    }
    #sf-next-overlay .sf-next-actions .sf-btn,
    #sf-next-overlay .sf-next-actions a,
    #sf-next-overlay .sf-next-actions button{
        width:100% !important;
    }
}

/* v1.58.4 - Carrossel de episódios no single do episódio */
.sf-player-actions-with-episodes{
    margin-bottom:22px !important;
}
.sf-current-episode-playlist{
    position:relative !important;
    width:100% !important;
    margin:22px 0 0 !important;
    padding:22px !important;
    border-radius:24px !important;
    background:#171717 !important;
    border:1px solid rgba(255,255,255,.12) !important;
}
.sf-current-episode-playlist-heading{
    display:flex !important;
    align-items:flex-end !important;
    justify-content:space-between !important;
    gap:18px !important;
    margin-bottom:18px !important;
}
.sf-current-episode-playlist-heading h2{
    margin:0 !important;
    color:#fff !important;
    font-size:28px !important;
    line-height:1.05 !important;
    letter-spacing:-.03em !important;
    font-weight:850 !important;
}
.sf-current-episode-playlist-heading p{
    margin:0 !important;
    color:rgba(255,255,255,.66) !important;
    font-size:15px !important;
    line-height:1.35 !important;
    font-weight:700 !important;
}
.sf-current-episode-carousel{
    position:relative !important;
}
.sf-current-episode-viewport{
    overflow:hidden !important;
    width:100% !important;
}
.sf-current-episode-track{
    display:flex !important;
    gap:22px !important;
    overflow-x:auto !important;
    scroll-behavior:smooth !important;
    scroll-snap-type:x mandatory !important;
    padding:2px 4px 12px !important;
    scrollbar-width:none !important;
}
.sf-current-episode-track::-webkit-scrollbar{
    display:none !important;
}
.sf-current-episode-card{
    flex:0 0 clamp(240px,24vw,330px) !important;
    width:clamp(240px,24vw,330px) !important;
    min-width:clamp(240px,24vw,330px) !important;
    display:flex !important;
    flex-direction:column !important;
    align-items:stretch !important;
    gap:0 !important;
    padding:0 !important;
    border:1px solid rgba(255,255,255,.10) !important;
    border-radius:16px !important;
    background:#101010 !important;
    color:#fff !important;
    text-decoration:none !important;
    text-align:left !important;
    overflow:hidden !important;
    scroll-snap-align:start !important;
    transition:background .18s ease,border-color .18s ease,transform .18s ease,box-shadow .18s ease !important;
}
.sf-current-episode-card:hover{
    transform:translateY(-2px) !important;
    background:#1d1d1d !important;
    border-color:rgba(255,255,255,.20) !important;
    color:#fff !important;
}
.sf-current-episode-card.is-active{
    background:#303030 !important;
    border-color:rgba(123,97,255,.72) !important;
    box-shadow:0 0 0 1px rgba(123,97,255,.25) inset !important;
}
.sf-current-episode-thumb{
    position:relative !important;
    display:block !important;
    width:100% !important;
    aspect-ratio:16/9 !important;
    background:#0b0b0b !important;
    overflow:hidden !important;
}
.sf-current-episode-thumb img{
    width:100% !important;
    height:100% !important;
    object-fit:cover !important;
    display:block !important;
}
.sf-current-episode-thumb small{
    position:absolute !important;
    right:10px !important;
    bottom:10px !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    min-height:28px !important;
    padding:0 9px !important;
    border-radius:8px !important;
    background:rgba(0,0,0,.78) !important;
    color:#fff !important;
    font-size:14px !important;
    font-weight:850 !important;
}
.sf-current-episode-meta{
    min-width:0 !important;
    min-height:112px !important;
    display:flex !important;
    flex-direction:column !important;
    justify-content:flex-start !important;
    gap:9px !important;
    padding:16px !important;
}
.sf-current-episode-meta strong{
    display:-webkit-box !important;
    -webkit-line-clamp:2 !important;
    -webkit-box-orient:vertical !important;
    overflow:hidden !important;
    color:#fff !important;
    font-size:20px !important;
    line-height:1.16 !important;
    letter-spacing:-.02em !important;
    font-weight:850 !important;
}
.sf-current-episode-meta small{
    display:block !important;
    color:rgba(255,255,255,.62) !important;
    font-size:13px !important;
    line-height:1.25 !important;
    font-weight:800 !important;
    text-transform:uppercase !important;
    letter-spacing:.04em !important;
}
.sf-current-episode-arrow{
    position:absolute !important;
    top:50% !important;
    z-index:4 !important;
    width:48px !important;
    height:48px !important;
    border-radius:999px !important;
    border:1px solid rgba(255,255,255,.18) !important;
    background:rgba(0,0,0,.72) !important;
    color:#fff !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    cursor:pointer !important;
    transform:translateY(-50%) !important;
    box-shadow:0 10px 28px rgba(0,0,0,.35) !important;
}
.sf-current-episode-arrow:hover{
    background:rgba(123,97,255,.90) !important;
}
.sf-current-episode-prev{
    left:-18px !important;
}
.sf-current-episode-next{
    right:-18px !important;
}
@media(max-width:1000px){
    .sf-current-episode-card{
        flex-basis:clamp(230px,42vw,320px) !important;
        width:clamp(230px,42vw,320px) !important;
        min-width:clamp(230px,42vw,320px) !important;
    }
}
@media(max-width:760px){
    .sf-current-episode-playlist{
        padding:18px !important;
    }
    .sf-current-episode-playlist-heading{
        align-items:flex-start !important;
        flex-direction:column !important;
    }
    .sf-current-episode-card{
        flex-basis:78vw !important;
        width:78vw !important;
        min-width:78vw !important;
    }
    .sf-current-episode-prev{
        left:4px !important;
    }
    .sf-current-episode-next{
        right:4px !important;
    }
}

/* v1.58.5 - Layout do single de episódio e playlist por temporada */
.sf-episode-player-info{
    display:block !important;
}
.sf-episode-meta-row{
    width:100% !important;
    display:grid !important;
    grid-template-columns:minmax(0,1fr) minmax(0,1fr) !important;
    align-items:center !important;
    gap:22px !important;
    margin:22px 0 26px !important;
}
.sf-episode-breadcrumbs{
    width:100% !important;
    margin:0 !important;
    min-width:0 !important;
}
.sf-episode-header-actions{
    width:100% !important;
    justify-content:flex-end !important;
    margin:0 !important;
    min-width:0 !important;
}
.sf-episode-title-row{
    width:100% !important;
    display:block !important;
    margin:0 0 18px !important;
}
.sf-episode-title-row .sf-player-title{
    width:100% !important;
    margin:0 !important;
}
.sf-episode-player-info .sf-player-description{
    width:100% !important;
    margin:0 0 24px !important;
}
.sf-episode-player-info .sf-current-episode-playlist{
    width:100% !important;
    clear:both !important;
    margin-top:28px !important;
}
.sf-episode-player-info .sf-current-episode-playlist-heading h2{
    max-width:50% !important;
}
.sf-episode-player-info .sf-current-episode-playlist-heading p{
    max-width:50% !important;
    text-align:right !important;
}
@media(max-width:900px){
    .sf-episode-meta-row{
        grid-template-columns:1fr !important;
        gap:16px !important;
        margin:18px 0 22px !important;
    }
    .sf-episode-header-actions{
        justify-content:flex-start !important;
    }
    .sf-episode-player-info .sf-current-episode-playlist-heading h2,
    .sf-episode-player-info .sf-current-episode-playlist-heading p{
        max-width:100% !important;
        text-align:left !important;
    }
}


/* v1.58.14 - Modal de conquista desbloqueada e confete especial */
.sf-achievement-unlocked-trigger{
    display:none !important;
}
.sf-achievement-modal-overlay{
    position:fixed;
    inset:0;
    z-index:1000000;
    display:flex;
    align-items:center;
    justify-content:center;
    padding:24px;
    background:rgba(0,0,0,.52);
    backdrop-filter:blur(18px);
    opacity:0;
    visibility:hidden;
    transition:opacity .26s ease, visibility .26s ease;
}
.sf-achievement-modal-overlay.is-visible{
    opacity:1;
    visibility:visible;
}
.sf-achievement-modal{
    width:min(720px, 94vw);
    position:relative;
    overflow:hidden;
    text-align:center;
    color:#fff;
    padding:46px 38px 40px;
    border-radius:34px;
    background:linear-gradient(145deg, rgba(31,31,38,.96), rgba(12,12,17,.98));
    border:1px solid rgba(255,255,255,.14);
    box-shadow:0 38px 120px rgba(0,0,0,.62), 0 0 90px rgba(123,97,255,.22);
    transform:translateY(18px) scale(.96);
    transition:transform .28s ease;
}
.sf-achievement-modal-overlay.is-visible .sf-achievement-modal{
    transform:translateY(0) scale(1);
}
.sf-achievement-modal-glow{
    position:absolute;
    width:360px;
    height:360px;
    border-radius:999px;
    top:-170px;
    left:50%;
    transform:translateX(-50%);
    background:radial-gradient(circle, rgba(123,97,255,.46), rgba(97,231,178,.18) 42%, transparent 70%);
    pointer-events:none;
}
.sf-achievement-modal-close{
    position:absolute;
    top:18px;
    right:18px;
    width:48px;
    height:48px;
    border-radius:999px;
    border:1px solid rgba(255,255,255,.16);
    background:rgba(255,255,255,.06);
    color:#fff;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    cursor:pointer;
    z-index:2;
}
.sf-achievement-modal-kicker{
    position:relative;
    z-index:1;
    display:inline-flex;
    align-items:center;
    gap:9px;
    padding:10px 16px;
    border-radius:999px;
    background:rgba(123,97,255,.18);
    border:1px solid rgba(155,123,255,.38);
    font-weight:900;
    color:#dcd4ff;
    margin-bottom:22px;
}
.sf-achievement-modal-image{
    position:relative;
    z-index:1;
    display:block;
    width:170px;
    height:170px;
    object-fit:contain;
    margin:0 auto 20px;
    border-radius:28px;
    filter:drop-shadow(0 20px 35px rgba(0,0,0,.45));
}
.sf-achievement-modal-image-empty{
    display:flex;
    align-items:center;
    justify-content:center;
    font-size:72px;
    background:linear-gradient(135deg,#7b61ff,#61e7b2);
}
.sf-achievement-modal h2{
    position:relative;
    z-index:1;
    margin:0 0 12px;
    font-size:clamp(34px,5vw,62px);
    line-height:.98;
    letter-spacing:-.04em;
    font-weight:1000;
}
.sf-achievement-modal p{
    position:relative;
    z-index:1;
    margin:0 auto 28px;
    max-width:520px;
    color:rgba(255,255,255,.74);
    font-size:22px;
    line-height:1.35;
    font-weight:800;
}
.sf-achievement-modal-actions{
    position:relative;
    z-index:1;
    display:flex;
    justify-content:center;
    align-items:center;
    gap:16px;
    flex-wrap:wrap;
}
.sf-achievement-modal-primary,
.sf-achievement-modal-secondary{
    min-height:58px;
    padding:0 26px;
    border-radius:999px;
    border:0;
    text-decoration:none;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    gap:10px;
    font-weight:1000;
    font-size:18px;
    cursor:pointer;
}
.sf-achievement-modal-primary{
    background:linear-gradient(135deg,#7b61ff,#9b7bff 52%,#61e7b2);
    color:#fff;
    box-shadow:0 20px 42px rgba(123,97,255,.34);
}
.sf-achievement-modal-secondary{
    background:rgba(255,255,255,.08);
    color:#fff;
    border:1px solid rgba(255,255,255,.18);
}
.sf-confetti-achievement{
    z-index:1000001 !important;
}
@media(max-width:640px){
    .sf-achievement-modal{
        padding:38px 22px 28px;
        border-radius:28px;
    }
    .sf-achievement-modal-image{
        width:138px;
        height:138px;
    }
    .sf-achievement-modal p{
        font-size:18px;
    }
    .sf-achievement-modal-primary,
    .sf-achievement-modal-secondary{
        width:100%;
    }
}


/* v1.58.14 - Animação do contador de pontos no header */
.sf-header-points-btn{
    transition: transform .22s ease, filter .22s ease, box-shadow .22s ease, background .22s ease;
}
.sf-header-points-btn.is-points-updated{
    animation: sfHeaderPointsPop .82s cubic-bezier(.2,1.25,.35,1);
}
.sf-header-points-btn.is-points-increased{
    background:linear-gradient(135deg,#5ff0a0,#7b61ff,#b68cff) !important;
    box-shadow:0 0 0 8px rgba(123,97,255,.12),0 16px 42px rgba(123,97,255,.48) !important;
    filter:saturate(1.25) brightness(1.08);
}
.sf-header-points-btn.is-points-increased .sf-header-points-number{
    animation: sfHeaderPointsNumber .82s ease;
}
.sf-header-points-btn.is-points-increased i{
    animation: sfHeaderPointsStar .82s ease;
}
@keyframes sfHeaderPointsPop{
    0%{transform:scale(1)}
    35%{transform:scale(1.13)}
    62%{transform:scale(.97)}
    100%{transform:scale(1)}
}
@keyframes sfHeaderPointsNumber{
    0%{transform:translateY(0);opacity:1}
    28%{transform:translateY(-3px);opacity:1}
    100%{transform:translateY(0);opacity:1}
}
@keyframes sfHeaderPointsStar{
    0%{transform:rotate(0deg) scale(1)}
    40%{transform:rotate(-12deg) scale(1.18)}
    100%{transform:rotate(0deg) scale(1)}
}

/* v1.58.14 - Confete sem modal na página Adicionar conquista */
.sf-achievement-confetti-trigger{
    display:none !important;
}

/* v1.58.15 - Atualização real dos pontos no header após jogos */

/* v1.58.16 - Caça-palavras */
.sf-wordsearch-hero{
    min-height: 72vh;
    display:flex;
    align-items:flex-end;
    padding:140px 48px 76px;
    background-size:cover;
    background-position:center;
    position:relative;
}
.sf-wordsearch-hero-inner{width:min(920px,100%);position:relative;z-index:2;}
.sf-wordsearch-kicker{
    display:inline-flex;align-items:center;gap:10px;
    color:#fff;font-weight:900;text-transform:uppercase;letter-spacing:.08em;
    margin-bottom:18px;font-size:14px;
}
.sf-wordsearch-kicker strong,.sf-wordsearch-letter-btn strong,.sf-wordsearch-result-icon strong{
    font-weight:950;line-height:1;
}
.sf-wordsearch-hero h1{font-size:clamp(42px,6vw,82px);line-height:.98;margin:0 0 18px;color:#fff;max-width:980px;}
.sf-wordsearch-description{max-width:720px;color:rgba(255,255,255,.86);font-size:18px;line-height:1.55;margin-bottom:24px;}
.sf-wordsearch-mode-buttons{display:flex;flex-wrap:wrap;gap:14px;margin-top:18px;}
.sf-wordsearch-mode-buttons .sf-btn{min-width:220px;justify-content:center;gap:10px;}
.sf-wordsearch-mode-buttons small{display:block;opacity:.82;font-weight:800;margin-left:6px;}
.sf-wordsearch-repeat-warning{display:inline-flex;padding:12px 16px;border-radius:16px;background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.14);color:#fff;margin:0 0 4px;}
.sf-wordsearch-hero-actions{display:flex;align-items:center;gap:12px;margin-top:18px;}
.sf-wordsearch-hero-actions .sf-single-actions{display:inline-flex;align-items:center;gap:12px;margin:0;}
.sf-wordsearch-hero-actions .sf-action-icon-btn{width:58px!important;min-width:58px!important;height:58px!important;min-height:58px!important;border-radius:50%!important;background:rgba(0,0,0,.38)!important;border:2px solid rgba(255,255,255,.72)!important;color:#fff!important;}
.sf-wordsearch-hero-actions .sf-action-icon-btn.is-active{background:linear-gradient(135deg,#24c974,#70e29f)!important;border-color:rgba(255,255,255,.88)!important;}
.sf-wordsearch-hero-actions .sf-action-icon-btn.like-active{background:linear-gradient(135deg,#ff4d6d,#ff758f)!important;border-color:rgba(255,255,255,.88)!important;}
.sf-wordsearch-app-modal{position:fixed;inset:0;z-index:999990;display:none;align-items:center;justify-content:center;padding:24px;}
.sf-wordsearch-app-modal.is-open:not([hidden]){display:flex;}
.sf-wordsearch-app-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.84);backdrop-filter:blur(10px);}
.sf-wordsearch-app-card{position:relative;z-index:2;width:min(1280px,96vw);max-height:calc(100vh - 48px);overflow:auto;border:1px solid rgba(255,255,255,.16);border-radius:34px;background:#151515;color:#fff;padding:42px 48px;box-shadow:0 28px 90px rgba(0,0,0,.62);}
.sf-wordsearch-app-close{position:absolute;top:26px;right:26px;width:56px;height:56px;border-radius:50%;border:1px solid rgba(255,255,255,.18);background:rgba(255,255,255,.08);color:#fff;display:flex;align-items:center;justify-content:center;cursor:pointer;z-index:4;font-size:20px;}
.sf-wordsearch-game-head{display:flex;justify-content:space-between;gap:24px;align-items:flex-start;margin-bottom:24px;padding-right:74px;}
.sf-wordsearch-game-title{margin:0;color:#fff;font-size:clamp(34px,5vw,62px);line-height:1.02;max-width:880px;}
.sf-wordsearch-game-actions{display:flex;align-items:center;gap:14px;flex-wrap:wrap;justify-content:flex-end;}
.sf-wordsearch-game-timer{display:inline-flex;align-items:center;gap:9px;padding:14px 18px;border-radius:999px;background:linear-gradient(135deg,#7b61ff,#71d39b);font-weight:950;box-shadow:0 12px 34px rgba(123,97,255,.24);}
.sf-wordsearch-game-timer[hidden]{display:none!important;}
.sf-wordsearch-progress-line{height:10px;border-radius:99px;background:rgba(255,255,255,.12);overflow:hidden;margin:12px 0 18px;}
.sf-wordsearch-progress-line span{display:block;height:100%;width:0;background:linear-gradient(90deg,#7b61ff,#71d39b);border-radius:inherit;transition:width .25s ease;}
.sf-wordsearch-status{color:rgba(255,255,255,.78);font-weight:900;margin:0 0 22px;font-size:18px;}
.sf-wordsearch-layout{display:grid;grid-template-columns:minmax(0,1fr) 310px;gap:26px;align-items:start;}
.sf-wordsearch-board{display:grid;grid-template-columns:repeat(var(--sf-wordsearch-size,14),minmax(0,1fr));gap:5px;padding:18px;border-radius:26px;background:#101010;border:1px solid rgba(255,255,255,.12);user-select:none;touch-action:none;}
.sf-wordsearch-cell{aspect-ratio:1/1;border:1px solid rgba(255,255,255,.1);border-radius:10px;background:#1f1f1f;color:#fff;font-weight:950;font-size:clamp(14px,1.7vw,22px);display:flex;align-items:center;justify-content:center;cursor:pointer;transition:transform .12s ease, background .12s ease, border-color .12s ease;}
.sf-wordsearch-cell:hover{transform:translateY(-1px);background:#292929;border-color:rgba(255,255,255,.22);}
.sf-wordsearch-cell.is-selecting{background:linear-gradient(135deg,#7b61ff,#9b7bff);border-color:#b8a8ff;box-shadow:0 0 0 2px rgba(123,97,255,.24) inset;}
.sf-wordsearch-cell.is-found{background:linear-gradient(135deg,#21c775,#66e29b);border-color:#a6f5c4;color:#07130c;}
.sf-wordsearch-list-wrap{border:1px solid rgba(255,255,255,.12);border-radius:24px;background:#101010;padding:22px;position:sticky;top:20px;}
.sf-wordsearch-list-wrap h3{margin:0 0 14px;font-size:24px;color:#fff;}
.sf-wordsearch-list{display:flex;flex-wrap:wrap;gap:10px;}
.sf-wordsearch-word-chip{display:inline-flex;align-items:center;justify-content:center;padding:10px 12px;border-radius:999px;background:#242424;border:1px solid rgba(255,255,255,.12);color:#fff;font-weight:900;letter-spacing:.04em;}
.sf-wordsearch-word-chip.is-found{background:linear-gradient(135deg,#21c775,#66e29b);color:#07130c;border-color:transparent;text-decoration:line-through;}
.sf-wordsearch-result-modal .sf-wordsearch-result-icon{background:linear-gradient(135deg,#7b61ff,#71d39b)!important;color:#fff!important;}
.sf-wordsearch-letter-btn{font-size:20px;text-decoration:none;}
.sf-wordsearch-card .sf-card-play-btn strong{font-size:18px;}
@media(max-width:900px){
    .sf-wordsearch-hero{padding:120px 22px 56px;min-height:66vh;}
    .sf-wordsearch-layout{grid-template-columns:1fr;}
    .sf-wordsearch-list-wrap{position:static;}
    .sf-wordsearch-board{gap:3px;padding:10px;border-radius:18px;}
    .sf-wordsearch-cell{border-radius:7px;font-size:12px;}
    .sf-wordsearch-app-card{padding:30px 22px;}
    .sf-wordsearch-game-head{display:block;padding-right:56px;}
    .sf-wordsearch-game-title{font-size:clamp(30px,10vw,44px);}
    .sf-wordsearch-game-actions{justify-content:flex-start;margin-top:16px;}
    .sf-wordsearch-mode-buttons .sf-btn{width:100%;min-width:0;}
}


/* v1.58.17 - Ícone ABC do Caça-palavras */
.sf-wordsearch-letter-btn{
    overflow:hidden;
}
.sf-wordsearch-abc-icon{
    width:100%;
    height:100%;
    display:flex;
    flex-direction:column;
    align-items:center;
    justify-content:center;
    gap:2px;
    line-height:1;
}
.sf-wordsearch-abc-icon strong{
    font-size:13px!important;
    font-weight:950;
    letter-spacing:.02em;
    line-height:1;
}
.sf-wordsearch-abc-icon i{
    font-size:17px!important;
    line-height:1;
    transform:translateY(-1px);
}
.sf-wordsearch-card .sf-card-play-btn .sf-wordsearch-abc-icon strong{
    font-size:13px!important;
}


/* v1.58.20 - Caça-palavras: seleção por clique e lista de palavras menor */
.sf-wordsearch-list-wrap{padding:18px !important;}
.sf-wordsearch-list-wrap h3{font-size:20px !important;margin-bottom:12px !important;}
.sf-wordsearch-list{gap:8px !important;}
.sf-wordsearch-word-chip{font-size:13px !important;line-height:1.1 !important;padding:7px 10px !important;letter-spacing:.03em !important;}
.sf-wordsearch-cell{user-select:none;-webkit-user-select:none;}


/* v1.58.21 - Ícone Font Awesome do Caça-palavras */
.sf-wordsearch-letter-btn i.fa-spell-check{
    font-size:24px!important;
    line-height:1;
}
.sf-wordsearch-kicker i.fa-spell-check{
    color:#9b7bff;
    font-size:18px;
}
#adminmenu .menu-icon-caca_palavras div.wp-menu-image:before{
    font-family:"Font Awesome 6 Free"!important;
    content:"\f891"!important;
    font-weight:900!important;
    font-size:16px!important;
}

/* v1.58.22 - Jogo Memória */
.sf-memory-kicker i.fa-brain,
.sf-memory-letter-btn i.fa-brain{font-size:20px;}
.sf-memory-app-card{width:min(1280px,96vw);}
.sf-memory-game-subtitle{margin:10px 0 0;color:rgba(255,255,255,.76);font-size:18px;font-weight:800;}
.sf-memory-board-wrap{border:1px solid rgba(255,255,255,.12);border-radius:28px;background:#101010;padding:22px;}
.sf-memory-board{display:grid;grid-template-columns:repeat(var(--sf-memory-cols,4),minmax(0,1fr));gap:14px;}
.sf-memory-card-tile{aspect-ratio:1/1;border:0;background:transparent;padding:0;perspective:900px;cursor:pointer;}
.sf-memory-card-inner{position:relative;display:block;width:100%;height:100%;transform-style:preserve-3d;transition:transform .36s ease;}
.sf-memory-card-tile.is-flipped .sf-memory-card-inner,
.sf-memory-card-tile.is-matched .sf-memory-card-inner{transform:rotateY(180deg);}
.sf-memory-card-face{position:absolute;inset:0;border-radius:20px;overflow:hidden;backface-visibility:hidden;border:2px solid rgba(255,255,255,.13);box-shadow:0 14px 34px rgba(0,0,0,.25);}
.sf-memory-card-front{display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#23232b,#151515);color:#fff;}
.sf-memory-card-front i{width:72px;height:72px;border-radius:50%;display:flex;align-items:center;justify-content:center;background:linear-gradient(135deg,#7b61ff,#71d39b);font-size:30px;box-shadow:0 14px 34px rgba(123,97,255,.26);}
.sf-memory-card-back{transform:rotateY(180deg);background:#222;}
.sf-memory-card-back img{width:100%;height:100%;object-fit:cover;display:block;}
.sf-memory-card-tile.is-matched .sf-memory-card-face{border-color:#71d39b;box-shadow:0 0 0 3px rgba(113,211,155,.26),0 14px 34px rgba(0,0,0,.25);}
.sf-memory-result-icon{background:linear-gradient(135deg,#7b61ff,#71d39b)!important;color:#fff!important;}
.sf-memory-result-icon i{font-size:32px;}
.sf-memory-letter-btn{font-size:20px;text-decoration:none;}
.sf-memory-points-badge{background:rgba(0,0,0,.78);}
.sf-memory-card .sf-card-play-btn i.fa-brain{font-size:20px;}
@media(max-width:760px){
    .sf-memory-board{gap:8px;grid-template-columns:repeat(3,minmax(0,1fr))!important;}
    .sf-memory-board-wrap{padding:12px;border-radius:20px;}
    .sf-memory-card-face{border-radius:14px;}
    .sf-memory-card-front i{width:54px;height:54px;font-size:23px;}
}


/* v1.58.24 - Modais de resultado dos jogos Memória e Caça-palavras */
.sf-memory-result-modal .sf-quiz-modal-card,
.sf-wordsearch-result-modal .sf-quiz-modal-card{
    padding-top:72px !important;
}
.sf-memory-result-modal .sf-puzzle-result-x,
.sf-wordsearch-result-modal .sf-puzzle-result-x{
    display:none !important;
}
.sf-memory-result-modal .sf-memory-result-icon,
.sf-wordsearch-result-modal .sf-wordsearch-result-icon{
    background:linear-gradient(135deg,#6b7280,#4b5563) !important;
    box-shadow:0 16px 38px rgba(107,114,128,.28) !important;
    color:#fff !important;
}
.sf-memory-result-modal.is-success .sf-memory-result-icon,
.sf-wordsearch-result-modal.is-success .sf-wordsearch-result-icon,
.sf-wordsearch-result-modal.is-right .sf-wordsearch-result-icon{
    background:linear-gradient(135deg,#34d399,#16a34a) !important;
    box-shadow:0 16px 38px rgba(34,197,94,.34) !important;
}
.sf-memory-result-modal.is-fail .sf-memory-result-icon,
.sf-wordsearch-result-modal.is-fail .sf-wordsearch-result-icon{
    background:linear-gradient(135deg,#ef4444,#b91c1c) !important;
    box-shadow:0 16px 38px rgba(239,68,68,.30) !important;
}
.sf-memory-result-modal.is-exit .sf-memory-result-icon,
.sf-wordsearch-result-modal.is-exit .sf-wordsearch-result-icon{
    background:linear-gradient(135deg,#6b7280,#4b5563) !important;
    box-shadow:0 16px 38px rgba(107,114,128,.28) !important;
}
.sf-wordsearch-result-icon i.fa-spell-check{font-size:32px;}


/* v1.58.24 - Proporção dos modais de Memória e Caça-palavras */
@media (min-width: 901px){
    .sf-wordsearch-app-card,
    .sf-memory-app-card{
        width:min(1420px,96vw) !important;
        height:calc(100vh - 48px) !important;
        max-height:calc(100vh - 48px) !important;
        overflow:hidden !important;
        padding:28px 36px !important;
        display:flex !important;
        flex-direction:column !important;
        border-radius:28px !important;
    }
    .sf-wordsearch-app-close,
    .sf-memory-app-close{
        top:22px !important;
        right:22px !important;
        width:50px !important;
        height:50px !important;
    }
    .sf-wordsearch-game-head,
    .sf-memory-game-head{
        margin-bottom:14px !important;
        padding-right:68px !important;
        gap:18px !important;
        flex:0 0 auto !important;
    }
    .sf-wordsearch-game-title,
    .sf-memory-game-title{
        font-size:clamp(34px,4vw,54px) !important;
        line-height:1.02 !important;
        max-width:820px !important;
    }
    .sf-memory-game-subtitle{
        margin-top:6px !important;
        font-size:15px !important;
    }
    .sf-wordsearch-progress-line{
        height:8px !important;
        margin:8px 0 12px !important;
        flex:0 0 auto !important;
    }
    .sf-wordsearch-status{
        margin:0 0 14px !important;
        font-size:15px !important;
        flex:0 0 auto !important;
    }

    /* Caça-palavras: a tabela deve caber na altura da tela */
    .sf-wordsearch-layout{
        flex:1 1 auto !important;
        min-height:0 !important;
        display:grid !important;
        grid-template-columns:minmax(0,auto) minmax(240px,300px) !important;
        align-items:start !important;
        justify-content:start !important;
        gap:24px !important;
        overflow:hidden !important;
    }
    .sf-wordsearch-board{
        width:min(100%,62vh,720px) !important;
        max-width:720px !important;
        gap:4px !important;
        padding:12px !important;
        border-radius:22px !important;
        align-self:start !important;
    }
    .sf-wordsearch-cell{
        border-radius:8px !important;
        font-size:clamp(12px,1.2vw,18px) !important;
        min-width:0 !important;
    }
    .sf-wordsearch-list-wrap{
        position:static !important;
        max-height:62vh !important;
        overflow:auto !important;
        padding:18px !important;
        border-radius:22px !important;
    }
    .sf-wordsearch-list-wrap h3{
        font-size:20px !important;
    }
    .sf-wordsearch-word-chip{
        font-size:12px !important;
        padding:7px 10px !important;
    }

    /* Memória: todos os cards visíveis sem rolar a página */
    .sf-memory-board-wrap{
        flex:1 1 auto !important;
        min-height:0 !important;
        height:auto !important;
        max-height:none !important;
        overflow:hidden !important;
        padding:16px !important;
        border-radius:24px !important;
    }
    .sf-memory-board{
        height:100% !important;
        min-height:0 !important;
        gap:12px !important;
        grid-auto-rows:minmax(0,1fr) !important;
    }
    .sf-memory-card-tile{
        aspect-ratio:auto !important;
        min-height:0 !important;
        height:100% !important;
    }
    .sf-memory-card-face{
        border-radius:16px !important;
    }
    .sf-memory-card-front i{
        width:58px !important;
        height:58px !important;
        font-size:25px !important;
    }
}

@media (max-width: 900px){
    .sf-wordsearch-app-card,
    .sf-memory-app-card{
        max-height:calc(100vh - 24px) !important;
        padding:24px 18px !important;
    }
    .sf-wordsearch-game-title,
    .sf-memory-game-title{
        font-size:clamp(28px,8vw,40px) !important;
    }
}


/* v1.58.26 - Topos mais harmônicos, caça-palavras 10x8 e memória quadrada */
.sf-wordsearch-board{
    grid-template-columns:repeat(var(--sf-wordsearch-cols,10),minmax(0,1fr)) !important;
}
@media (min-width: 901px){
    .sf-wordsearch-app-card,
    .sf-memory-app-card{
        padding:26px 34px !important;
    }
    .sf-wordsearch-game-head,
    .sf-memory-game-head{
        margin-bottom:12px !important;
        align-items:flex-start !important;
    }
    .sf-wordsearch-game-title,
    .sf-memory-game-title{
        font-size:clamp(30px,3.2vw,46px) !important;
        line-height:1.06 !important;
        max-width:760px !important;
        letter-spacing:-.02em !important;
    }
    .sf-memory-game-subtitle{
        font-size:14px !important;
        margin-top:5px !important;
    }
    .sf-wordsearch-game-actions .sf-btn,
    .sf-memory-game-actions .sf-btn{
        min-height:54px !important;
        padding:14px 22px !important;
        font-size:16px !important;
    }
    .sf-wordsearch-game-timer,
    .sf-memory-game-timer{
        min-height:54px !important;
        padding:12px 16px !important;
        font-size:16px !important;
    }
    .sf-wordsearch-progress-line,
    .sf-memory-progress-line{
        height:8px !important;
        margin:8px 0 12px !important;
    }
    .sf-wordsearch-status,
    .sf-memory-status{
        font-size:15px !important;
        margin:0 0 12px !important;
    }
    .sf-wordsearch-layout{
        grid-template-columns:minmax(0,auto) minmax(230px,300px) !important;
        gap:22px !important;
    }
    .sf-wordsearch-board{
        width:min(100%,calc((100vh - 280px) * 1.25),760px) !important;
        max-width:760px !important;
        grid-template-columns:repeat(10,minmax(0,1fr)) !important;
        gap:4px !important;
        padding:12px !important;
    }
    .sf-wordsearch-cell{
        border-radius:8px !important;
        font-size:clamp(13px,1.05vw,18px) !important;
    }
    .sf-wordsearch-list-wrap{
        max-height:calc(100vh - 300px) !important;
        padding:16px !important;
    }
    .sf-wordsearch-list-wrap h3{
        font-size:19px !important;
    }
    .sf-memory-board-wrap{
        display:flex !important;
        align-items:flex-start !important;
        justify-content:center !important;
        padding:14px !important;
    }
    .sf-memory-board{
        width:min(100%, calc(100vh - 300px), 760px) !important;
        height:auto !important;
        grid-auto-rows:auto !important;
        align-content:start !important;
        justify-content:center !important;
        gap:10px !important;
    }
    .sf-memory-card-tile{
        aspect-ratio:1/1 !important;
        height:auto !important;
        min-height:0 !important;
    }
    .sf-memory-card-face{
        border-radius:14px !important;
    }
    .sf-memory-card-front i{
        width:54px !important;
        height:54px !important;
        font-size:24px !important;
    }
}
@media (max-width: 900px){
    .sf-wordsearch-board{
        grid-template-columns:repeat(10,minmax(0,1fr)) !important;
    }
    .sf-memory-card-tile{
        aspect-ratio:1/1 !important;
        height:auto !important;
    }
}

/* v1.58.26 - Caça-palavras com layout lateral como referência enviada */
@media (min-width: 901px){
    .sf-wordsearch-app-card{
        width:min(1420px,96vw) !important;
        height:calc(100vh - 48px) !important;
        max-height:calc(100vh - 48px) !important;
        padding:30px 42px 26px !important;
        overflow:hidden !important;
        display:flex !important;
        flex-direction:column !important;
        border-radius:28px !important;
    }
    .sf-wordsearch-game-head{
        align-items:flex-start !important;
        justify-content:space-between !important;
        gap:22px !important;
        margin-bottom:12px !important;
        padding-right:84px !important;
        flex:0 0 auto !important;
    }
    .sf-wordsearch-game-title{
        font-size:clamp(36px,3.8vw,56px) !important;
        line-height:1.02 !important;
        letter-spacing:-.03em !important;
        max-width:920px !important;
    }
    .sf-wordsearch-game-actions .sf-btn{
        min-height:54px !important;
        padding:13px 24px !important;
        font-size:16px !important;
        border-radius:8px !important;
    }
    .sf-wordsearch-app-close{
        top:28px !important;
        right:28px !important;
        width:54px !important;
        height:54px !important;
    }
    .sf-wordsearch-progress-line{
        height:8px !important;
        margin:8px 0 18px !important;
        flex:0 0 auto !important;
    }
    .sf-wordsearch-layout{
        flex:1 1 auto !important;
        min-height:0 !important;
        display:grid !important;
        grid-template-columns:330px minmax(0,auto) !important;
        gap:34px !important;
        align-items:start !important;
        justify-content:start !important;
        overflow:hidden !important;
    }
    .sf-wordsearch-list-wrap{
        order:1 !important;
        position:static !important;
        max-height:none !important;
        overflow:visible !important;
        padding:22px !important;
        border-radius:22px !important;
        align-self:start !important;
        background:#101010 !important;
    }
    .sf-wordsearch-list-wrap h3{
        font-size:22px !important;
        line-height:1.1 !important;
        margin:0 0 16px !important;
    }
    .sf-wordsearch-list{
        gap:10px !important;
    }
    .sf-wordsearch-word-chip{
        font-size:12px !important;
        padding:8px 11px !important;
        letter-spacing:.04em !important;
    }
    .sf-wordsearch-play-area{
        order:2 !important;
        min-width:0 !important;
        align-self:start !important;
    }
    .sf-wordsearch-status{
        margin:0 0 16px !important;
        font-size:16px !important;
        line-height:1.2 !important;
        font-weight:950 !important;
    }
    .sf-wordsearch-board{
        width:min(calc((100vh - 300px) * 1.25),820px,58vw) !important;
        max-width:820px !important;
        min-width:560px !important;
        grid-template-columns:repeat(10,minmax(0,1fr)) !important;
        gap:5px !important;
        padding:18px !important;
        border-radius:28px !important;
        align-self:start !important;
    }
    .sf-wordsearch-cell{
        border-radius:10px !important;
        font-size:clamp(16px,1.45vw,24px) !important;
        line-height:1 !important;
    }
}
@media (max-width: 900px){
    .sf-wordsearch-layout{
        display:flex !important;
        flex-direction:column !important;
    }
    .sf-wordsearch-list-wrap{
        order:1 !important;
    }
    .sf-wordsearch-play-area{
        order:2 !important;
        width:100% !important;
    }
}


/* v1.58.27 - Memória sempre em 2 linhas, colunas conforme cards anexados */
.sf-memory-board{
    grid-template-columns:repeat(var(--sf-memory-cols,3), minmax(0,1fr)) !important;
    grid-template-rows:repeat(2, minmax(0,1fr)) !important;
    grid-auto-flow:row !important;
}
.sf-memory-card-tile{
    aspect-ratio:1/1 !important;
    height:auto !important;
}
@media (min-width: 901px){
    .sf-memory-board-wrap{
        display:flex !important;
        align-items:center !important;
        justify-content:center !important;
        overflow:hidden !important;
    }
    .sf-memory-board{
        width:100% !important;
        max-width:min(100%, calc((100vh - 300px) * var(--sf-memory-cols,3) / 2)) !important;
        height:auto !important;
        align-content:center !important;
        justify-content:center !important;
        gap:10px !important;
    }
}
@media (max-width: 900px){
    .sf-memory-board{
        grid-template-columns:repeat(var(--sf-memory-cols,3), minmax(72px,1fr)) !important;
        grid-template-rows:repeat(2, minmax(72px,1fr)) !important;
        overflow-x:auto !important;
        padding-bottom:6px !important;
    }
}


/* V1.0.3 - Carinhas do perfil */
.sf-profile-carinha,
.tpd-carinha-img{
  width:42px;
  height:42px;
  border-radius:50%;
  object-fit:cover;
  display:block;
}

.sf-profile-btn .sf-profile-carinha{
  width:100%;
  height:100%;
}

.tpd-carinha-form,
.pmpro_member_profile_edit-fields .tpd-carinhas-profile-table,
.tpd-carinhas-profile-table{
  width:100%;
}

.tpd-carinha-form{
  margin-top:32px;
  padding:0;
}

.tpd-carinha-form h2,
.pmpro_member_profile_edit-fields h2 + .tpd-carinhas-profile-table,
.tpd-carinhas-profile-table{
  color:#fff;
}

.tpd-carinha-form h2{
  margin:0 0 18px;
  font-size:28px;
  line-height:1.15;
  font-weight:800;
}

.tpd-carinhas-profile-table,
.tpd-carinhas-profile-table tbody,
.tpd-carinhas-profile-table tr,
.tpd-carinhas-profile-table th,
.tpd-carinhas-profile-table td{
  display:block;
  width:100%;
  margin:0;
  padding:0;
  border:0;
}

.tpd-carinhas-profile-table th label{
  display:block;
  margin:0 0 14px;
  color:#fff;
  font-size:18px;
  font-weight:800;
}

.tpd-carinhas-grid{
  display:grid;
  grid-template-columns:repeat(auto-fill, minmax(132px, 1fr));
  gap:16px;
  width:100%;
  max-width:760px;
}

.tpd-carinha-option{
  position:relative;
  display:flex;
  min-height:142px;
  flex-direction:column;
  align-items:center;
  justify-content:center;
  gap:10px;
  padding:16px 14px;
  border:1px solid rgba(255,255,255,.14);
  border-radius:24px;
  background:linear-gradient(180deg, rgba(255,255,255,.08), rgba(255,255,255,.035));
  box-shadow:inset 0 1px 0 rgba(255,255,255,.08), 0 16px 34px rgba(0,0,0,.24);
  cursor:pointer;
  text-align:center;
  color:#fff;
  overflow:hidden;
  transition:border-color .2s ease, transform .2s ease, background .2s ease, box-shadow .2s ease;
}

.tpd-carinha-option:hover{
  transform:translateY(-2px);
  border-color:rgba(139,113,246,.72);
  background:linear-gradient(180deg, rgba(139,113,246,.18), rgba(255,255,255,.055));
}

.tpd-carinha-option.is-selected{
  border-color:#8b71f6;
  background:linear-gradient(180deg, rgba(139,113,246,.28), rgba(139,113,246,.08));
  box-shadow:0 0 0 3px rgba(139,113,246,.22), 0 18px 42px rgba(139,113,246,.20);
}

.tpd-carinha-option:has(input:checked):not(.is-selected){
  border-color:#52c878;
  background:linear-gradient(180deg, rgba(82,200,120,.28), rgba(82,200,120,.08));
  box-shadow:0 0 0 3px rgba(82,200,120,.22), 0 18px 42px rgba(82,200,120,.20);
}

.tpd-carinha-option.is-selected::after,
.tpd-carinha-option:has(input:checked):not(.is-selected)::after{
  content:'✓';
  position:absolute;
  top:10px;
  right:10px;
  width:24px;
  height:24px;
  border-radius:50%;
  display:flex;
  align-items:center;
  justify-content:center;
  color:#fff;
  font-size:14px;
  font-weight:900;
}

.tpd-carinha-option.is-selected::after{
  background:#8b71f6;
  box-shadow:0 8px 20px rgba(139,113,246,.42);
}

.tpd-carinha-option:has(input:checked):not(.is-selected)::after{
  background:#52c878;
  box-shadow:0 8px 20px rgba(82,200,120,.42);
}

.tpd-carinha-option input{
  position:absolute;
  opacity:0;
  pointer-events:none;
}

.tpd-carinha-option img,
.tpd-carinha-empty{
  width:78px;
  height:78px;
  border-radius:50%;
  object-fit:cover;
  display:flex;
  align-items:center;
  justify-content:center;
  background:rgba(255,255,255,.10);
  color:#fff;
  font-size:42px;
  box-shadow:0 10px 28px rgba(0,0,0,.28);
}

.tpd-carinha-title{
  color:#fff;
  font-weight:800;
  font-size:14px;
  line-height:1.25;
}

.tpd-carinhas-profile-table .description,
.tpd-carinha-form .description{
  max-width:760px;
  margin:16px 0 0;
  color:rgba(255,255,255,.72);
  font-size:16px;
  line-height:1.5;
}

.tpd-carinha-form .button,
.tpd-carinha-form .button-primary{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  min-height:58px;
  padding:0 34px;
  border:0 !important;
  border-radius:16px;
  background:linear-gradient(135deg,#6f62f2,#9277ff) !important;
  box-shadow:0 18px 42px rgba(111,98,242,.32);
  color:#fff !important;
  font-size:17px;
  font-weight:800;
  text-decoration:none;
  cursor:pointer;
}

.tpd-carinha-form .button:hover,
.tpd-carinha-form .button-primary:hover{
  transform:translateY(-1px);
  filter:brightness(1.05);
}

@media (max-width: 700px){
  .tpd-carinhas-grid{
    grid-template-columns:repeat(2, minmax(0,1fr));
    gap:12px;
  }

  .tpd-carinha-option{
    min-height:132px;
    border-radius:20px;
    padding:14px 10px;
  }
}


/* =========================================================
   PUBLICAÇÕES / EBOOKS - V1.0.5
   - slug público /ebooks/
   - arquivos e categorias em masonry
   - thumbnails verticais sem recorte
========================================================= */
.post-type-archive-livros .sf-section,
.tax-categoria_livro .sf-section{
    width:100% !important;
    max-width:none !important;
    padding-left:3vw !important;
    padding-right:3vw !important;
    box-sizing:border-box !important;
}

.post-type-archive-livros .sf-section-title,
.tax-categoria_livro .sf-section-title{
    margin-left:0 !important;
    font-size:34px !important;
}

.sf-publications-masonry,
.post-type-archive-livros .sf-row-wrap,
.tax-categoria_livro .sf-row-wrap{
    display:block !important;
    column-count:4 !important;
    column-gap:28px !important;
    width:100% !important;
    max-width:none !important;
    overflow:visible !important;
}

.sf-publications-masonry .sf-book-card,
.post-type-archive-livros .sf-row-wrap .sf-book-card,
.tax-categoria_livro .sf-row-wrap .sf-book-card{
    display:inline-block !important;
    width:100% !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 0 28px !important;
    break-inside:avoid !important;
    page-break-inside:avoid !important;
    overflow:hidden !important;
}

.sf-publications-masonry .sf-book-card .sf-thumb-wrap,
.post-type-archive-livros .sf-row-wrap .sf-book-card .sf-thumb-wrap,
.tax-categoria_livro .sf-row-wrap .sf-book-card .sf-thumb-wrap,
.sf-mylist-group[data-mylist-group="livros"] .sf-book-card .sf-thumb-wrap{
    aspect-ratio:auto !important;
    height:auto !important;
    min-height:0 !important;
    background:#111 !important;
    overflow:hidden !important;
}

.sf-publications-masonry .sf-book-card .sf-thumb-wrap img,
.post-type-archive-livros .sf-row-wrap .sf-book-card .sf-thumb-wrap img,
.tax-categoria_livro .sf-row-wrap .sf-book-card .sf-thumb-wrap img,
.sf-mylist-group[data-mylist-group="livros"] .sf-book-card .sf-thumb-wrap img{
    display:block !important;
    width:100% !important;
    height:auto !important;
    object-fit:contain !important;
}

.sf-mylist-group[data-mylist-group="livros"] .sf-mylist-grid{
    display:block !important;
    column-count:4 !important;
    column-gap:32px !important;
}

.sf-mylist-group[data-mylist-group="livros"] .sf-book-card{
    display:inline-block !important;
    width:100% !important;
    margin:0 0 32px !important;
    break-inside:avoid !important;
    page-break-inside:avoid !important;
}

@media(max-width:1300px){
    .sf-publications-masonry,
    .post-type-archive-livros .sf-row-wrap,
    .tax-categoria_livro .sf-row-wrap,
    .sf-mylist-group[data-mylist-group="livros"] .sf-mylist-grid{
        column-count:3 !important;
    }
}

@media(max-width:900px){
    .sf-publications-masonry,
    .post-type-archive-livros .sf-row-wrap,
    .tax-categoria_livro .sf-row-wrap,
    .sf-mylist-group[data-mylist-group="livros"] .sf-mylist-grid{
        column-count:2 !important;
        column-gap:20px !important;
    }
}

@media(max-width:560px){
    .sf-publications-masonry,
    .post-type-archive-livros .sf-row-wrap,
    .tax-categoria_livro .sf-row-wrap,
    .sf-mylist-group[data-mylist-group="livros"] .sf-mylist-grid{
        column-count:1 !important;
    }
}


/* V1.0.6 - Etiqueta Áudio Book nas publicações apenas quando há áudio anexado. */


/* V1.0.7 - Minha Lista: Publicações em colunas lado a lado.
   Mantém os cards de ebooks com imagem vertical sem recorte e evita que o segundo item desça para a linha seguinte. */
.sf-mylist-group[data-mylist-group="livros"] .sf-mylist-grid{
    display:grid !important;
    grid-template-columns:repeat(auto-fill, minmax(230px, 304px)) !important;
    gap:32px !important;
    align-items:start !important;
    justify-content:start !important;
    column-count:initial !important;
    column-gap:initial !important;
}

.sf-mylist-group[data-mylist-group="livros"] .sf-book-card{
    display:block !important;
    width:100% !important;
    max-width:304px !important;
    margin:0 !important;
    break-inside:avoid !important;
    page-break-inside:avoid !important;
}

.sf-mylist-group[data-mylist-group="livros"] .sf-book-card .sf-thumb-wrap{
    aspect-ratio:auto !important;
    height:auto !important;
    min-height:0 !important;
}

.sf-mylist-group[data-mylist-group="livros"] .sf-book-card .sf-thumb-wrap img{
    width:100% !important;
    height:auto !important;
    object-fit:contain !important;
}

@media(max-width:560px){
    .sf-mylist-group[data-mylist-group="livros"] .sf-mylist-grid{
        grid-template-columns:1fr !important;
    }

    .sf-mylist-group[data-mylist-group="livros"] .sf-book-card{
        max-width:none !important;
    }
}


/* V1.1.1 - Curtinhos */
.post-type-archive-curtinhos .sf-section{padding-top:32px;}
.tpd-curtinhos-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:24px;align-items:start;}
.tpd-curtinho-card{max-width:240px;width:100%;}
.tpd-curtinho-card .sf-thumb-wrap{aspect-ratio:9/16;height:auto;background:#111;border-radius:14px;overflow:hidden;}
.tpd-curtinho-card .sf-thumb-wrap img{width:100%;height:100%;object-fit:cover;display:block;}
.tpd-curtinho-card .sf-card-body h3{font-size:17px;line-height:1.2;}
.single-curtinhos .sf-main{padding:0!important;}
.tpd-curtinho-view{position:fixed;inset:0;z-index:9999;background:#000;display:flex;align-items:center;justify-content:center;overflow:hidden;}
.admin-bar .tpd-curtinho-view{top:32px;}
.tpd-curtinho-frame{position:relative;height:100vh;max-height:100vh;aspect-ratio:9/16;width:auto;max-width:100vw;background:#050505;box-shadow:0 0 60px rgba(0,0,0,.75);}
.admin-bar .tpd-curtinho-frame{height:calc(100vh - 32px);}
.tpd-curtinho-frame iframe{width:100%;height:100%;border:0;display:block;}
.tpd-curtinho-back{position:fixed;top:22px;left:22px;z-index:10002;width:46px;height:46px;border-radius:999px;background:rgba(0,0,0,.48);color:#fff;display:flex;align-items:center;justify-content:center;text-decoration:none;border:1px solid rgba(255,255,255,.18);backdrop-filter:blur(12px);}
.admin-bar .tpd-curtinho-back{top:54px;}
.tpd-curtinho-overlay{position:absolute;left:0;right:0;bottom:0;z-index:10001;padding:90px 18px 22px;background:linear-gradient(to top,rgba(0,0,0,.82),rgba(0,0,0,.28),transparent);opacity:0;transform:translateY(18px);transition:.22s ease;pointer-events:none;}
.tpd-curtinho-view:hover .tpd-curtinho-overlay,.tpd-curtinho-view:focus-within .tpd-curtinho-overlay{opacity:1;transform:translateY(0);pointer-events:auto;}
.tpd-curtinho-title{color:#fff;font-size:22px;font-weight:900;line-height:1.15;margin:0 0 14px;text-shadow:0 2px 12px rgba(0,0,0,.7);}
.tpd-curtinho-actions{display:flex;align-items:center;gap:12px;}
.tpd-curtinho-actions .sf-card-action-btn{background:rgba(255,255,255,.13);border-color:rgba(255,255,255,.55);color:#fff;}
.tpd-curtinho-next{position:fixed;right:28px;top:50%;z-index:10002;transform:translateY(-50%);width:54px;height:54px;border-radius:999px;background:rgba(0,0,0,.45);color:#fff;border:1px solid rgba(255,255,255,.2);display:flex;align-items:center;justify-content:center;text-decoration:none;font-size:24px;backdrop-filter:blur(12px);}
.tpd-curtinho-next:hover,.tpd-curtinho-back:hover{background:rgba(124,101,246,.75);color:#fff;}
@media(max-width:782px){.admin-bar .tpd-curtinho-view{top:46px}.admin-bar .tpd-curtinho-frame{height:calc(100vh - 46px)}.tpd-curtinho-frame{width:100vw;height:100vh;aspect-ratio:auto}.tpd-curtinho-back{top:14px;left:14px}.admin-bar .tpd-curtinho-back{top:60px}.tpd-curtinho-next{right:14px;width:46px;height:46px}.tpd-curtinho-overlay{opacity:1;transform:none;pointer-events:auto}.tpd-curtinhos-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.tpd-curtinho-card{max-width:none}}


/* v1.1.6 - Curtinhos: lista corrigida e player limpo em tela cheia */
.tpd-curtinhos-grid{
    display:grid!important;
    grid-template-columns:repeat(auto-fill,minmax(190px,220px))!important;
    gap:28px!important;
    align-items:start!important;
    justify-content:start!important;
}
.tpd-curtinho-card{
    width:100%!important;
    max-width:220px!important;
    overflow:hidden!important;
}
.tpd-curtinho-card .sf-card-link,
.tpd-curtinho-card .sf-card-body{
    display:block!important;
    width:100%!important;
}
.tpd-curtinho-card .sf-thumb-wrap{
    width:100%!important;
    aspect-ratio:9/16!important;
    height:auto!important;
    min-height:0!important;
    border-radius:14px!important;
    overflow:hidden!important;
}
.tpd-curtinho-card .sf-thumb-wrap img{
    width:100%!important;
    height:100%!important;
    object-fit:cover!important;
    display:block!important;
}
.tpd-curtinho-card .sf-type-badge{display:none!important;}
.tpd-curtinho-card .sf-card-body h3{
    min-height:44px!important;
    margin-bottom:0!important;
}
.single-curtinhos .sf-main,
.single-curtinhos main,
.single-curtinhos .site-main{
    padding:0!important;
    margin:0!important;
}
.single-curtinhos header,
.single-curtinhos footer{
    display:none!important;
}
.tpd-curtinho-view{
    position:fixed!important;
    inset:0!important;
    z-index:999999!important;
    background:#000!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    overflow:hidden!important;
}
.admin-bar .tpd-curtinho-view{top:32px!important;}
.tpd-curtinho-frame{
    position:relative!important;
    height:100vh!important;
    max-height:100vh!important;
    aspect-ratio:9/16!important;
    width:auto!important;
    max-width:100vw!important;
    background:#000!important;
    box-shadow:none!important;
}
.admin-bar .tpd-curtinho-frame{height:calc(100vh - 32px)!important;}
.tpd-curtinho-frame iframe{
    width:100%!important;
    height:100%!important;
    border:0!important;
    display:block!important;
    background:#000!important;
}
.tpd-curtinho-overlay,
.tpd-curtinho-back,
.tpd-curtinho-next{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
    transition:opacity .22s ease, visibility .22s ease, transform .22s ease!important;
}
.tpd-curtinho-view:hover .tpd-curtinho-overlay,
.tpd-curtinho-view:focus-within .tpd-curtinho-overlay,
.tpd-curtinho-view:hover .tpd-curtinho-back,
.tpd-curtinho-view:focus-within .tpd-curtinho-back,
.tpd-curtinho-view:hover .tpd-curtinho-next,
.tpd-curtinho-view:focus-within .tpd-curtinho-next{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
}
.tpd-curtinho-overlay{
    transform:translateY(16px)!important;
}
.tpd-curtinho-view:hover .tpd-curtinho-overlay,
.tpd-curtinho-view:focus-within .tpd-curtinho-overlay{
    transform:translateY(0)!important;
}
@media(max-width:782px){
    .tpd-curtinhos-grid{grid-template-columns:repeat(2,minmax(0,1fr))!important;gap:16px!important;}
    .tpd-curtinho-card{max-width:none!important;}
    .admin-bar .tpd-curtinho-view{top:46px!important;}
    .admin-bar .tpd-curtinho-frame{height:calc(100vh - 46px)!important;}
    .tpd-curtinho-frame{width:100vw!important;height:100vh!important;aspect-ratio:auto!important;}
}


/* v1.1.8 - Curtinhos: grid com 5 colunas no desktop e 2 no celular */
.post-type-archive-curtinhos .sf-section{
    width:100% !important;
    max-width:1320px !important;
    margin:0 auto !important;
    padding-left:32px !important;
    padding-right:32px !important;
}
.tpd-curtinhos-grid{
    display:grid !important;
    grid-template-columns:repeat(5, minmax(0, 1fr)) !important;
    gap:28px !important;
    align-items:start !important;
    justify-content:stretch !important;
}
.tpd-curtinho-card{
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
}
.tpd-curtinho-card .sf-card-link,
.tpd-curtinho-card .sf-card-body{
    width:100% !important;
}
.tpd-curtinho-card .sf-thumb-wrap{
    width:100% !important;
    aspect-ratio:9/16 !important;
}
.tpd-curtinho-card .sf-card-body h3{
    font-size:18px !important;
    line-height:1.18 !important;
}
@media(max-width:1180px){
    .tpd-curtinhos-grid{grid-template-columns:repeat(4, minmax(0, 1fr)) !important;}
}
@media(max-width:920px){
    .tpd-curtinhos-grid{grid-template-columns:repeat(3, minmax(0, 1fr)) !important;}
}
@media(max-width:640px){
    .post-type-archive-curtinhos .sf-section{padding-left:16px !important;padding-right:16px !important;}
    .tpd-curtinhos-grid{grid-template-columns:repeat(2, minmax(0, 1fr)) !important;gap:16px !important;}
    .tpd-curtinho-card .sf-card-body h3{font-size:15px !important;min-height:38px !important;}
}

/* v1.1.8 - Curtinhos: autoplay reforçado, fechar sempre visível e informações apenas por hover/tap */
.single-curtinhos .tpd-curtinho-overlay,
.single-curtinhos .tpd-curtinho-next{
    opacity:0!important;
    visibility:hidden!important;
    pointer-events:none!important;
}
.single-curtinhos .tpd-curtinho-view:hover .tpd-curtinho-overlay,
.single-curtinhos .tpd-curtinho-view:focus-within .tpd-curtinho-overlay,
.single-curtinhos .tpd-curtinho-view.is-ui-visible .tpd-curtinho-overlay,
.single-curtinhos .tpd-curtinho-view:hover .tpd-curtinho-next,
.single-curtinhos .tpd-curtinho-view:focus-within .tpd-curtinho-next,
.single-curtinhos .tpd-curtinho-view.is-ui-visible .tpd-curtinho-next{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
}
.single-curtinhos .tpd-curtinho-back,
.single-curtinhos .tpd-curtinho-close{
    opacity:1!important;
    visibility:visible!important;
    pointer-events:auto!important;
    position:fixed!important;
    top:22px!important;
    left:22px!important;
    z-index:100005!important;
    width:50px!important;
    height:50px!important;
    border-radius:999px!important;
    background:rgba(0,0,0,.62)!important;
    color:#fff!important;
    display:flex!important;
    align-items:center!important;
    justify-content:center!important;
    text-decoration:none!important;
    border:1px solid rgba(255,255,255,.28)!important;
    box-shadow:0 12px 34px rgba(0,0,0,.45)!important;
    backdrop-filter:blur(14px)!important;
}
.single-curtinhos .tpd-curtinho-back:hover,
.single-curtinhos .tpd-curtinho-close:hover{
    background:rgba(124,101,246,.88)!important;
    color:#fff!important;
}
.admin-bar.single-curtinhos .tpd-curtinho-back,
.admin-bar.single-curtinhos .tpd-curtinho-close{top:54px!important;}
@media(max-width:782px){
    .single-curtinhos .tpd-curtinho-overlay,
    .single-curtinhos .tpd-curtinho-next{
        opacity:0!important;
        visibility:hidden!important;
        pointer-events:none!important;
    }
    .single-curtinhos .tpd-curtinho-view.is-ui-visible .tpd-curtinho-overlay,
    .single-curtinhos .tpd-curtinho-view.is-ui-visible .tpd-curtinho-next{
        opacity:1!important;
        visibility:visible!important;
        pointer-events:auto!important;
    }
    .single-curtinhos .tpd-curtinho-back,
    .single-curtinhos .tpd-curtinho-close{top:14px!important;left:14px!important;width:46px!important;height:46px!important;}
    .admin-bar.single-curtinhos .tpd-curtinho-back,
    .admin-bar.single-curtinhos .tpd-curtinho-close{top:60px!important;}
}


/* =========================================================
   PAIS — arquivo e conteúdo individual | v1.2.2
   ========================================================= */
.tpd-pai-section{padding-top:32px;}
.tpd-pai-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;align-items:start;}
.tpd-pai-card{background:#1b1b1b;border-radius:14px;overflow:hidden;min-width:0;box-shadow:0 10px 30px rgba(0,0,0,.22);}
.tpd-pai-card__link{display:block;color:#fff;text-decoration:none;}
.tpd-pai-card__thumb{aspect-ratio:16/9;background:#111;overflow:hidden;}
.tpd-pai-card__thumb img{display:block;width:100%;height:100%;object-fit:cover;}
.tpd-pai-card__placeholder{display:grid;place-items:center;width:100%;height:100%;font-size:42px;color:#8d7af7;background:linear-gradient(135deg,#191825,#27233d);}
.tpd-pai-card__body{padding:18px;}
.tpd-pai-card__title{font-size:1.2rem;line-height:1.25;margin:0 0 10px;color:#fff;}
.tpd-pai-card__excerpt{margin:0;color:#c9c9ce;line-height:1.55;font-size:.95rem;}
.tpd-pai-card__cats{display:flex;flex-wrap:wrap;gap:7px;margin-top:14px;}
.tpd-pai-card__cat{font-size:.76rem;font-weight:700;color:#fff;background:#6758d7;border-radius:999px;padding:5px 9px;}
.tpd-pai-single{max-width:980px;margin:0 auto;padding:36px 28px 64px;}
.tpd-pai-single__title{font-size:clamp(2rem,5vw,3.4rem);line-height:1.08;margin:0 0 18px;}
.tpd-pai-single__thumb{margin:0 0 28px;border-radius:18px;overflow:hidden;}
.tpd-pai-single__thumb img{display:block;width:100%;height:auto;}
.tpd-pai-single__video{position:relative;aspect-ratio:16/9;margin:0 0 30px;border-radius:18px;overflow:hidden;background:#000;}
.tpd-pai-single__video iframe{position:absolute;inset:0;width:100%;height:100%;border:0;}
.tpd-pai-single__content{font-size:1.08rem;line-height:1.75;color:#ededf0;}
.tpd-pai-single__content > :first-child{margin-top:0;}
.tpd-pai-single__content img{max-width:100%;height:auto;}
@media(max-width:1100px){.tpd-pai-grid{grid-template-columns:repeat(3,minmax(0,1fr));}}
@media(max-width:760px){.tpd-pai-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.tpd-pai-single{padding:26px 16px 50px}.tpd-pai-card__body{padding:14px}.tpd-pai-card__excerpt{display:none;}}
@media(max-width:420px){.tpd-pai-grid{grid-template-columns:1fr;}}

/* v1.2.3 - Botão Pais no cabeçalho */
.sf-pais-header-btn{
    width:50px;
    height:50px;
    min-width:50px;
    border-radius:50%;
    display:inline-flex;
    align-items:center;
    justify-content:center;
    color:#fff;
    background:rgba(255,255,255,.06);
    border:1px solid rgba(255,255,255,.18);
    text-decoration:none;
    font-size:21px;
    transition:transform .2s ease, background .2s ease;
}
.sf-pais-header-btn:hover{
    color:#fff;
    background:rgba(255,255,255,.12);
    transform:translateY(-1px);
}

/* v1.2.4 - Remocao definitiva dos cadeados visuais */
.lock-badge,
.access-lock,
.video-lock,
.sf-lock,
.content-lock,
.sf-card-lock,
.video-card-lock,
.thumbnail-lock,
[class*="lock-badge"],
[class*="video-lock"],
[class*="content-lock"] {
    display: none !important;
}
.sf-pais-header-btn,
.sf-pais-header-btn i {
    color: #fff !important;
}

/* v1.2.7 - Icone Pais branco */
.sf-pais-header-btn,
.sf-pais-header-btn:link,
.sf-pais-header-btn:visited,
.sf-pais-header-btn:hover,
.sf-pais-header-btn:focus,
.sf-pais-header-btn i,
.sf-pais-header-btn svg {
    color: #fff !important;
}
.sf-pais-header-btn svg {
    stroke: #fff !important;
}
.sf-pais-header-btn i::before {
    color: #fff !important;
}

/* v1.2.8 - Botao Pais visivel para conectado e desconectado */
.sf-header-actions .sf-pais-header-btn{
    display:inline-flex !important;
    align-items:center;
    justify-content:center;
    flex:0 0 50px;
    width:50px;
    height:50px;
    color:#fff !important;
}
.sf-header-actions .sf-pais-header-icon{
    display:block !important;
    width:22px;
    height:22px;
    color:#fff !important;
    stroke:#fff !important;
    opacity:1 !important;
}

/* v1.3.0 - Logo A Rede no rodape */
.tpd-footer-arede {
    display: inline-block;
    margin-top: 12px;
    line-height: 0;
}
.tpd-footer-arede img {
    display: block;
    width: auto;
    max-width: 120px;
    height: auto;
    opacity: .9;
    transition: opacity .2s ease;
}
.tpd-footer-arede:hover img {
    opacity: 1;
}

/* v1.3.1 - Logo A Rede em nova linha centralizada */
.tpd-footer-arede {
    display: block !important;
    width: 100% !important;
    margin: 16px auto 0 !important;
    text-align: center !important;
    clear: both !important;
}
.tpd-footer-arede img {
    display: inline-block !important;
    margin: 0 auto !important;
    width: auto;
    max-width: 120px;
    height: auto;
}

/* v1.3.2 - Rodape em duas linhas, logo abaixo e centralizada */
.sf-footer {
    display: flex !important;
    flex-direction: column !important;
    align-items: center !important;
    justify-content: center !important;
    gap: 14px !important;
    text-align: center !important;
}
.tpd-footer-copy {
    display: block;
    width: 100%;
    text-align: center;
}
.sf-footer .tpd-footer-arede {
    display: block !important;
    width: auto !important;
    margin: 0 auto !important;
    clear: none !important;
    text-align: center !important;
}
.sf-footer .tpd-footer-arede img {
    display: block !important;
    margin: 0 auto !important;
    max-width: 120px;
    height: auto;
}

/* v1.3.4 - Grade e filtros de categorias do arquivo Pais */
.tpd-pai-archive-header{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:18px 28px;
    margin-bottom:20px;
}
.tpd-pai-archive-header .sf-section-title{
    margin:0;
}
.tpd-pai-filters{
    display:flex;
    align-items:center;
    flex-wrap:wrap;
    gap:12px;
}
.tpd-pai-filter{
    display:inline-flex;
    align-items:center;
    justify-content:center;
    min-height:48px;
    padding:10px 24px;
    border:2px solid rgba(255,255,255,.09);
    border-radius:999px;
    background:#1b1b1b;
    color:#aaa;
    font-size:1rem;
    font-weight:700;
    line-height:1;
    text-decoration:none;
    transition:background .2s ease,color .2s ease,border-color .2s ease;
}
.tpd-pai-filter:hover,
.tpd-pai-filter:focus,
.tpd-pai-filter.is-active{
    background:#7040ca;
    border-color:#7040ca;
    color:#fff;
}
.tpd-pai-card__body{
    padding:14px 16px 16px;
}
.tpd-pai-card__title{
    margin:0;
}
@media(max-width:760px){
    .tpd-pai-archive-header{align-items:flex-start;gap:14px;margin-bottom:18px;}
    .tpd-pai-filters{width:100%;flex-wrap:nowrap;overflow-x:auto;padding-bottom:4px;scrollbar-width:none;}
    .tpd-pai-filters::-webkit-scrollbar{display:none;}
    .tpd-pai-filter{flex:0 0 auto;min-height:44px;padding:9px 20px;}
}


/* v1.3.9 - Cores padrao das acoes nos singles de jogos */
.sf-quiz-hero-actions .sf-single-mylist.is-active,
.sf-puzzle-hero-actions .sf-single-mylist.is-active,
.sf-wordsearch-hero-actions .sf-single-mylist.is-active,
.sf-memory-hero-actions .sf-single-mylist.is-active{
    background:linear-gradient(135deg,#24c974,#70e29f) !important;
    border-color:rgba(255,255,255,.88) !important;
    box-shadow:0 0 20px rgba(36,201,116,.38) !important;
}
.sf-quiz-hero-actions .sf-single-like.is-active,
.sf-quiz-hero-actions .sf-single-like.like-active,
.sf-puzzle-hero-actions .sf-single-like.is-active,
.sf-puzzle-hero-actions .sf-single-like.like-active,
.sf-wordsearch-hero-actions .sf-single-like.is-active,
.sf-wordsearch-hero-actions .sf-single-like.like-active,
.sf-memory-hero-actions .sf-single-like.is-active,
.sf-memory-hero-actions .sf-single-like.like-active{
    background:linear-gradient(135deg,#d92f58,#ff5f7f) !important;
    border-color:rgba(255,255,255,.88) !important;
    box-shadow:0 0 20px rgba(217,47,88,.4) !important;
}


/* v1.3.9 - Jogos: remove contorno branco dos botoes de adicionar e curtir */
body.single-quiz .game-action-btn,
body.single-caca-palavras .game-action-btn,
body.single-puzzle .game-action-btn,
body.single-memoria .game-action-btn,
body.single-quizzes .game-action-btn,
body.single-puzzles .game-action-btn,
body.single-memory .game-action-btn {
    border: none !important;
    outline: none !important;
    box-shadow: none !important;
}

body.single .sf-memory-game-actions,
body.single .sf-memory-hero-actions,
body.single .sf-puzzle-game-actions,
body.single .sf-puzzle-hero-actions,
body.single .sf-quiz-actions,
body.single .sf-quiz-hero-actions,
body.single .sf-quiz-modal-actions,
body.single .sf-wordsearch-game-actions,
body.single .sf-wordsearch-hero-actions,
body.single .sf-wordsearch-list,
body.single .sf-wordsearch-list-wrap {
    border: none !important;
    outline: none !important;
}

/* v1.3.9 - Jogos: botoes de adicionar e curtir sem contorno branco */
.sf-quiz-hero-actions .sf-action-icon-btn,
.sf-puzzle-hero-actions .sf-action-icon-btn,
.sf-wordsearch-hero-actions .sf-action-icon-btn,
.sf-memory-hero-actions .sf-action-icon-btn,
.sf-quiz-hero-actions .sf-action-icon-btn:hover,
.sf-puzzle-hero-actions .sf-action-icon-btn:hover,
.sf-wordsearch-hero-actions .sf-action-icon-btn:hover,
.sf-memory-hero-actions .sf-action-icon-btn:hover,
.sf-quiz-hero-actions .sf-action-icon-btn.is-active,
.sf-puzzle-hero-actions .sf-action-icon-btn.is-active,
.sf-wordsearch-hero-actions .sf-action-icon-btn.is-active,
.sf-memory-hero-actions .sf-action-icon-btn.is-active,
.sf-quiz-hero-actions .sf-action-icon-btn.like-active,
.sf-puzzle-hero-actions .sf-action-icon-btn.like-active,
.sf-wordsearch-hero-actions .sf-action-icon-btn.like-active,
.sf-memory-hero-actions .sf-action-icon-btn.like-active {
    border: 0 !important;
    outline: 0 !important;
}

/* v1.3.9 - Single Pais no padrão dos players de vídeo */
.tpd-pai-single{
    width:min(1500px,94%);
    max-width:none;
    margin:0 auto;
    padding:34px 0 64px;
}

.tpd-pai-single__media-row{
    display:flex;
    align-items:flex-start;
    gap:22px;
}

.tpd-pai-single__media{
    flex:1 1 auto;
    min-width:0;
}

.tpd-pai-single__video,
.tpd-pai-single__thumb{
    width:100%;
    margin:0;
    border-radius:24px;
    overflow:hidden;
    background:#000;
}

.tpd-pai-single__video{
    position:relative;
    aspect-ratio:16/9;
}

.tpd-pai-single__video iframe{
    position:absolute;
    inset:0;
    width:100%;
    height:100%;
    border:0;
}

.tpd-pai-single__thumb img{
    display:block;
    width:100%;
    height:auto;
}

.tpd-pai-single__back-wrap{
    flex:0 0 250px;
}

.tpd-pai-single__back{
    width:100% !important;
    min-width:0 !important;
    height:auto !important;
    min-height:56px !important;
    padding:16px 20px !important;
    white-space:normal !important;
    text-align:left !important;
    line-height:1.25 !important;
}

.tpd-pai-single__title{
    font-size:clamp(2rem,4vw,3.4rem);
    line-height:1.08;
    margin:28px 0 18px;
}

.tpd-pai-single__content{
    font-size:1.08rem;
    line-height:1.75;
    color:#ededf0;
}

@media(max-width:900px){
    .tpd-pai-single__media-row{
        flex-direction:column;
    }

    .tpd-pai-single__back-wrap{
        flex:0 0 auto;
        width:100%;
    }

    .tpd-pai-single__back{
        width:auto !important;
    }
}

@media(max-width:760px){
    .tpd-pai-single{
        width:calc(100% - 28px);
        padding:22px 0 48px;
    }

    .tpd-pai-single__video,
    .tpd-pai-single__thumb{
        border-radius:18px;
    }
}


/* v1.3.12 - Minha Carinha: instrução acima e nova escolha em verde */
.tpd-carinhas-profile-table .tpd-carinhas-instruction,
.tpd-carinha-form .tpd-carinhas-instruction{
  margin:0 0 16px;
}


/* v1.3.12 - Single Pais: player em uma coluna e botao ao lado do titulo */
.single-pai .tpd-pai-single-layout,
.single-pais .tpd-pai-single-layout,
.single-pai .tpd-pai-player-row,
.single-pais .tpd-pai-player-row {
    display: block !important;
    grid-template-columns: none !important;
}

.single-pai .tpd-pai-title-row,
.single-pais .tpd-pai-title-row {
    display: flex;
    align-items: center;
    justify-content: space-between;
    gap: 24px;
    margin-top: 24px;
}

.single-pai .tpd-pai-title-row h1,
.single-pais .tpd-pai-title-row h1 {
    margin: 0 !important;
    flex: 1 1 auto;
}

.single-pai .tpd-pai-title-row .tpd-pai-back-button,
.single-pais .tpd-pai-title-row .tpd-pai-back-button {
    flex: 0 0 auto;
}

@media (max-width: 767px) {
    .single-pai .tpd-pai-title-row,
    .single-pais .tpd-pai-title-row {
        align-items: flex-start;
        flex-direction: column;
    }
}

/* v1.3.12 - Single Pais: vídeo em largura total e botão ao lado do título */
.tpd-pai-single__media{
    width:100%;
}

.tpd-pai-single__title-row{
    display:flex;
    align-items:center;
    justify-content:space-between;
    gap:24px;
    margin-top:28px;
}

.tpd-pai-single__title-row .tpd-pai-single__title{
    flex:1 1 auto;
    min-width:0;
    margin:0;
}

.tpd-pai-single__title-row .tpd-pai-single__back{
    flex:0 0 auto;
    width:auto !important;
    min-width:250px !important;
    min-height:56px !important;
    padding:14px 20px !important;
    white-space:normal !important;
}

@media(max-width:760px){
    .tpd-pai-single__title-row{
        flex-direction:column;
        align-items:flex-start;
        gap:16px;
    }

    .tpd-pai-single__title-row .tpd-pai-single__back{
        min-width:0 !important;
        width:100% !important;
    }
}
