:root{--bg:#08070b;--card:#14121b;--muted:#a9a4b6;--txt:#f7f1ff;--red:#e5093f;--red2:#871132;--line:#282231;--gold:#ffc857}*{box-sizing:border-box}body{margin:0;background:radial-gradient(circle at 20% 0,#31101b 0,#08070b 34%,#050407 100%);color:var(--txt);font-family:Inter,system-ui,Segoe UI,Arial,sans-serif}a{color:inherit;text-decoration:none}.top{position:sticky;top:0;z-index:9;background:rgba(8,7,11,.82);backdrop-filter:blur(14px);border-bottom:1px solid var(--line);display:flex;align-items:center;justify-content:space-between;padding:14px 5vw}.brand{font-weight:900;font-size:1.25rem;letter-spacing:.3px}.top nav{display:flex;align-items:center;gap:18px}.top nav a{color:#ddd}.hamb{display:none;background:none;color:#fff;border:0;font-size:1.6rem}.btn,button.primary{display:inline-flex;align-items:center;justify-content:center;background:linear-gradient(135deg,var(--red),var(--red2));border:0;color:#fff;border-radius:999px;padding:12px 20px;font-weight:800;box-shadow:0 10px 30px rgba(229,9,63,.23);cursor:pointer}.btn.small{padding:8px 14px}.hero{min-height:480px;display:grid;grid-template-columns:1.2fr .8fr;gap:30px;align-items:center;padding:58px 5vw}.hero h1{font-size:clamp(2.2rem,6vw,5rem);line-height:.95;margin:0}.hero p{color:var(--muted);font-size:1.12rem;max-width:720px}.hero-card{background:linear-gradient(180deg,rgba(255,255,255,.06),rgba(255,255,255,.02));border:1px solid var(--line);border-radius:28px;padding:22px}.grid{display:grid;grid-template-columns:repeat(5,1fr);gap:20px;padding:20px 5vw 60px}.section-title{padding:12px 5vw 0;font-size:1.8rem}.movie{background:var(--card);border:1px solid var(--line);border-radius:20px;overflow:hidden;transition:.2s}.movie:hover{transform:translateY(-4px);border-color:#573142}.movie img{width:100%;aspect-ratio:2/3;object-fit:cover;display:block}.movie .p{padding:12px}.movie h3{font-size:1rem;margin:0 0 8px}.meta{color:var(--muted);font-size:.9rem}.score{color:var(--gold);font-weight:900}.wrap{padding:34px 5vw}.details{display:grid;grid-template-columns:300px 1fr;gap:34px}.poster{width:100%;border-radius:24px;border:1px solid var(--line)}.panel{background:rgba(20,18,27,.84);border:1px solid var(--line);border-radius:24px;padding:22px;margin:16px 0}.form{max-width:520px;margin:40px auto}.form input,.form textarea,.form select,.searchbar input{width:100%;padding:14px 16px;background:#0e0c13;color:#fff;border:1px solid var(--line);border-radius:14px;margin:8px 0}.stars{display:flex;gap:6px}.stars input{display:none}.stars label{font-size:2rem;color:#51485f;cursor:pointer}.stars input:checked~label,.stars label:hover,.stars label:hover~label{color:var(--gold)}.review{border-top:1px solid var(--line);padding:14px 0}.admin-table{width:100%;border-collapse:collapse}.admin-table th,.admin-table td{padding:12px;border-bottom:1px solid var(--line);text-align:left}.foot{border-top:1px solid var(--line);padding:28px 5vw;color:var(--muted);background:#07060a}.searchbar{display:flex;gap:10px}.badge{display:inline-block;padding:5px 9px;border-radius:999px;background:#26131b;color:#ffb3c7;margin:3px}@media(max-width:1000px){.grid{grid-template-columns:repeat(3,1fr)}.hero,.details{grid-template-columns:1fr}}@media(max-width:700px){.hamb{display:block}.top nav{display:none;position:absolute;left:0;right:0;top:60px;background:#09070c;padding:18px 5vw;flex-direction:column;align-items:flex-start}.menu-open .top nav{display:flex}.grid{grid-template-columns:repeat(2,1fr);gap:13px}.hero{padding-top:36px}.hero-card{display:none}.searchbar{flex-direction:column}.details{gap:18px}.poster{max-width:260px}.top{padding:12px 4vw}}
.movie-hero{background-size:cover;background-position:center;margin:-20px -20px 22px;padding:36px 20px;border-bottom:1px solid rgba(255,255,255,.08)}
.movie-hero .details{align-items:end;margin-top:0}
.tagline{font-size:1.05rem;color:#ffd1d1;font-style:italic;margin-top:-4px}
.after-details{margin-top:0}

.season-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;margin-top:14px}
.season-card{display:grid;grid-template-columns:72px 1fr;gap:12px;padding:12px;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.045);border-radius:18px;color:inherit;text-decoration:none;transition:.2s ease}
.season-card:hover{transform:translateY(-2px);background:rgba(255,255,255,.075)}
.season-card img{width:72px;height:108px;object-fit:cover;border-radius:12px;background:#15151c}
.season-card h3{margin:0 0 6px;font-size:1rem}
.season-card p{margin:4px 0;font-size:.9rem}
.episode-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(280px,1fr));gap:18px}
.episode-card{display:block;overflow:hidden;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.045);border-radius:22px;color:inherit;text-decoration:none;transition:.2s ease}
.episode-card:hover{transform:translateY(-3px);background:rgba(255,255,255,.075)}
.episode-card img{width:100%;aspect-ratio:16/9;object-fit:cover;background:#15151c}
.episode-card .p{padding:14px}
.episode-card h3{margin:8px 0 6px}
.episode-still{width:100%;max-width:520px;border-radius:22px;box-shadow:0 24px 70px rgba(0,0,0,.55);object-fit:cover;aspect-ratio:16/9;background:#15151c}
.episode-details{grid-template-columns:minmax(280px,520px) 1fr}
@media(max-width:780px){.episode-details{grid-template-columns:1fr}.season-card{grid-template-columns:58px 1fr}.season-card img{width:58px;height:86px}.episode-grid{grid-template-columns:1fr}}

.library-actions{display:flex;gap:10px;flex-wrap:wrap;margin-top:18px}.library-actions form{margin:0}.ghost-btn{display:inline-flex;align-items:center;justify-content:center;gap:6px;background:rgba(255,255,255,.075);color:#fff;border:1px solid rgba(255,255,255,.14);border-radius:999px;padding:10px 15px;font-weight:800;cursor:pointer;transition:.18s ease}.ghost-btn:hover,.ghost-btn.active{background:linear-gradient(135deg,var(--red),var(--red2));border-color:rgba(255,255,255,.20);box-shadow:0 10px 30px rgba(229,9,63,.20)}.library-head{display:flex;align-items:center;justify-content:space-between;gap:20px;margin-bottom:18px}.tabs{display:flex;gap:10px;flex-wrap:wrap;margin:18px 0 28px}.tab{border:1px solid var(--line);background:rgba(255,255,255,.045);border-radius:999px;padding:11px 16px;font-weight:800}.tab span{display:inline-flex;align-items:center;justify-content:center;min-width:24px;height:24px;margin-left:8px;border-radius:999px;background:#24151d;color:#ffb3c7;font-size:.85rem}.tab.active{background:linear-gradient(135deg,var(--red),var(--red2));border-color:transparent}.tab.active span{background:rgba(255,255,255,.20);color:#fff}.library-grid{padding-left:0;padding-right:0}.library-card{position:relative}.library-card>a{display:block}.library-remove{padding:0 12px 12px}.library-remove .ghost-btn{width:100%;padding:9px 12px}.empty-state{text-align:center;padding:36px}.profile-stats{display:grid;grid-template-columns:repeat(3,1fr);gap:16px;margin:18px 0 24px}.stat-card{background:linear-gradient(180deg,rgba(255,255,255,.07),rgba(255,255,255,.035));border:1px solid var(--line);border-radius:22px;padding:22px}.stat-card strong{display:block;font-size:2.2rem;color:#fff}.stat-card span{color:var(--muted);font-weight:700}.profile-card{background:linear-gradient(135deg,rgba(229,9,63,.16),rgba(255,255,255,.035))}@media(max-width:760px){.library-head{align-items:flex-start;flex-direction:column}.profile-stats{grid-template-columns:1fr}.library-actions{gap:8px}.ghost-btn{width:100%;}.library-actions form{flex:1 1 100%}}

.title-extra{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:-6px 0 12px;color:var(--muted)}
.original-title{font-size:.95rem;line-height:1.4;color:#c9c2d8}
.credit-line{font-size:.95rem;line-height:1.4;color:#eee}
.credit-line strong{color:#fff}
.cast-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(135px,1fr));gap:14px;margin-top:14px}
.cast-card{overflow:hidden;border:1px solid rgba(255,255,255,.10);background:rgba(255,255,255,.045);border-radius:18px;min-width:0}
.cast-card img{width:100%;aspect-ratio:2/3;object-fit:cover;display:block;background:#15151c}
.cast-card div{padding:11px}
.cast-card h3{margin:0 0 4px;font-size:.98rem;line-height:1.2}
.cast-card p{margin:0;color:var(--muted);font-size:.86rem;line-height:1.35;overflow-wrap:anywhere}
.video-frame{position:relative;width:100%;aspect-ratio:16/9;border-radius:18px;overflow:hidden;background:#08070b}
.video-frame iframe{position:absolute;inset:0;width:100%;height:100%;border:0}
@media(max-width:700px){.title-extra{align-items:flex-start;flex-direction:column;gap:5px}.cast-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.cast-card h3{font-size:.92rem}.cast-card p{font-size:.8rem}}

/* Cast horizontal/responsive layout fix */
.cast-grid{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  gap:14px !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  padding:4px 2px 14px !important;
  margin-top:14px !important;
  scroll-snap-type:x proximity;
  -webkit-overflow-scrolling:touch;
}
.cast-grid::-webkit-scrollbar{height:8px}
.cast-grid::-webkit-scrollbar-track{background:rgba(255,255,255,.04);border-radius:999px}
.cast-grid::-webkit-scrollbar-thumb{background:rgba(255,255,255,.18);border-radius:999px}
.cast-card{
  flex:0 0 clamp(124px, 14vw, 158px) !important;
  width:clamp(124px, 14vw, 158px) !important;
  max-width:158px !important;
  min-width:124px !important;
  scroll-snap-align:start;
}
.cast-card img{
  width:100% !important;
  height:auto !important;
  aspect-ratio:2/3 !important;
  object-fit:cover !important;
  display:block !important;
}
.cast-card div{padding:10px !important}
.cast-card h3{font-size:.9rem !important;line-height:1.18 !important}
.cast-card p{font-size:.78rem !important;line-height:1.25 !important}
@media(max-width:700px){
  .cast-grid{gap:11px !important;padding-bottom:12px !important}
  .cast-card{flex-basis:118px !important;width:118px !important;min-width:118px !important;max-width:118px !important}
}


/* Final cast layout fix: scoped to movie.php cast block */
.panel .cast-strip,
section.cast-strip,
.cast-strip.cast-grid{
  display:flex !important;
  flex-direction:row !important;
  flex-wrap:nowrap !important;
  align-items:stretch !important;
  gap:14px !important;
  width:100% !important;
  max-width:100% !important;
  overflow-x:auto !important;
  overflow-y:hidden !important;
  padding:4px 2px 16px !important;
  margin-top:14px !important;
  grid-template-columns:none !important;
  scroll-snap-type:x proximity;
  -webkit-overflow-scrolling:touch;
}
.panel .cast-strip > .cast-person-card,
.cast-strip > .cast-person-card,
.cast-strip > .cast-card{
  flex:0 0 140px !important;
  width:140px !important;
  min-width:140px !important;
  max-width:140px !important;
  display:block !important;
  overflow:hidden !important;
  scroll-snap-align:start;
}
.panel .cast-strip > .cast-person-card img,
.cast-strip > .cast-person-card img,
.cast-strip > .cast-card img{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  height:auto !important;
  aspect-ratio:2/3 !important;
  object-fit:cover !important;
}
.cast-strip::-webkit-scrollbar{height:8px}
.cast-strip::-webkit-scrollbar-track{background:rgba(255,255,255,.04);border-radius:999px}
.cast-strip::-webkit-scrollbar-thumb{background:rgba(255,255,255,.22);border-radius:999px}
@media(max-width:700px){
  .panel .cast-strip,
  section.cast-strip,
  .cast-strip.cast-grid{gap:11px !important;padding-bottom:14px !important}
  .panel .cast-strip > .cast-person-card,
  .cast-strip > .cast-person-card,
  .cast-strip > .cast-card{
    flex-basis:118px !important;
    width:118px !important;
    min-width:118px !important;
    max-width:118px !important;
  }
}

/* User public/private lists */
.lists-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(220px,1fr));gap:14px;margin-top:14px}
.list-card{display:block;min-height:150px;padding:18px;border:1px solid var(--line);border-radius:22px;background:linear-gradient(180deg,rgba(255,255,255,.075),rgba(255,255,255,.035));color:inherit;text-decoration:none;transition:.18s ease;position:relative;overflow:hidden}
.list-card:before{content:"";position:absolute;inset:auto -20% -40% -20%;height:90px;background:radial-gradient(circle,rgba(229,9,63,.22),transparent 70%);pointer-events:none}
.list-card:hover{transform:translateY(-3px);border-color:rgba(255,255,255,.22);background:linear-gradient(180deg,rgba(255,255,255,.10),rgba(255,255,255,.045))}
.list-card.private{background:linear-gradient(180deg,rgba(111,66,193,.18),rgba(255,255,255,.035))}
.list-card h3{margin:14px 0 10px;font-size:1.15rem;line-height:1.2}.list-card p{margin:0}.list-card .badge{position:relative;z-index:1}
.list-modal{display:none;position:fixed;inset:0;z-index:1000;padding:20px;align-items:center;justify-content:center}.list-modal-open .list-modal,.create-list-modal-open .create-list-modal{display:flex}.list-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.72);backdrop-filter:blur(8px)}.list-modal-card{position:relative;width:min(620px,100%);max-height:calc(100vh - 40px);overflow:auto;background:#111018;border:1px solid rgba(255,255,255,.14);box-shadow:0 30px 100px rgba(0,0,0,.65);border-radius:28px;padding:24px}.modal-close{position:absolute;right:16px;top:14px;width:36px;height:36px;border:0;border-radius:999px;background:rgba(255,255,255,.08);color:#fff;font-size:1.5rem;cursor:pointer}.modal-form{padding-top:16px;margin-top:16px;border-top:1px solid var(--line)}.modal-form label{display:block;font-weight:800;margin:8px 0 6px}.modal-form input[type=text],.modal-form textarea,.modal-form select{width:100%;padding:13px 14px;background:#0e0c13;color:#fff;border:1px solid var(--line);border-radius:14px}.visibility-options{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0}.visibility-options label{display:inline-flex;align-items:center;gap:7px;margin:0;padding:10px 13px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.045);font-weight:800}.visibility-options input{accent-color:#e5093f}@media(max-width:700px){.lists-grid{grid-template-columns:1fr}.list-modal{padding:12px;align-items:flex-end}.list-modal-card{border-radius:24px 24px 0 0;max-height:88vh}.modal-form .primary{width:100%}}


/* Trailer size fix after list modal upgrade */
.movie-content-wide{
  display:block !important;
}
.movie-content-main{
  width:100%;
  max-width:1180px;
  margin:0 auto;
}
.trailer-panel{
  width:100%;
  max-width:1100px;
  margin:22px auto;
  padding:24px;
}
.trailer-panel h2{
  margin-top:0;
}
.video-frame-large,
.trailer-panel .video-frame{
  width:100% !important;
  max-width:100% !important;
  min-height:auto !important;
  aspect-ratio:16 / 9 !important;
  border-radius:22px;
  box-shadow:0 26px 80px rgba(0,0,0,.45);
}
.video-frame-large iframe,
.trailer-panel .video-frame iframe{
  width:100% !important;
  height:100% !important;
}
@media(max-width:700px){
  .movie-content-wide{padding-left:4vw;padding-right:4vw}
  .trailer-panel{padding:14px;margin:16px auto;border-radius:20px}
  .video-frame-large,
  .trailer-panel .video-frame{border-radius:16px}
}

/* Trailer final enlargement: keep page content centered, but let the trailer use a wider cinematic area */
.movie-content-main > .trailer-panel{
  width:min(1280px, calc(100vw - 10vw)) !important;
  max-width:none !important;
  margin:28px 0 28px 50% !important;
  transform:translateX(-50%) !important;
  padding:26px !important;
}
.movie-content-main > .trailer-panel .video-frame,
.movie-content-main > .trailer-panel .video-frame-large{
  display:block !important;
  width:100% !important;
  max-width:none !important;
  aspect-ratio:16 / 9 !important;
  min-height:420px !important;
  height:auto !important;
}
.movie-content-main > .trailer-panel iframe{
  width:100% !important;
  height:100% !important;
}
@media(max-width:900px){
  .movie-content-main > .trailer-panel{
    width:calc(100vw - 8vw) !important;
    padding:16px !important;
    margin-top:20px !important;
    margin-bottom:20px !important;
  }
  .movie-content-main > .trailer-panel .video-frame,
  .movie-content-main > .trailer-panel .video-frame-large{
    min-height:0 !important;
  }
}
@media(max-width:520px){
  .movie-content-main > .trailer-panel{
    width:calc(100vw - 24px) !important;
    padding:12px !important;
    border-radius:18px !important;
  }
}


/* Definitive large responsive trailer block */
.movie-content-main > .tmdb-trailer-section,
.tmdb-trailer-section{
  position:relative !important;
  left:50% !important;
  right:auto !important;
  width:96vw !important;
  max-width:1500px !important;
  margin:34px 0 34px 0 !important;
  transform:translateX(-50%) !important;
  padding:0 18px !important;
  box-sizing:border-box !important;
  clear:both !important;
}
.tmdb-trailer-inner{
  width:100% !important;
  max-width:1500px !important;
  margin:0 auto !important;
  padding:26px !important;
  border:1px solid var(--line) !important;
  border-radius:28px !important;
  background:rgba(20,18,27,.84) !important;
  box-shadow:0 28px 90px rgba(0,0,0,.40) !important;
}
.tmdb-trailer-inner h2{
  margin:0 0 18px !important;
  font-size:clamp(1.35rem,2vw,2rem) !important;
}
.tmdb-trailer-frame{
  position:relative !important;
  display:block !important;
  width:100% !important;
  max-width:none !important;
  aspect-ratio:16 / 9 !important;
  min-height:520px !important;
  overflow:hidden !important;
  border-radius:24px !important;
  background:#050407 !important;
  box-shadow:0 24px 75px rgba(0,0,0,.55) !important;
}
.tmdb-trailer-frame iframe{
  position:absolute !important;
  inset:0 !important;
  display:block !important;
  width:100% !important;
  height:100% !important;
  min-height:100% !important;
  border:0 !important;
}
@media(max-width:1180px){
  .tmdb-trailer-frame{min-height:0 !important;}
  .tmdb-trailer-section{width:94vw !important;padding:0 !important;}
}
@media(max-width:700px){
  .movie-content-main > .tmdb-trailer-section,
  .tmdb-trailer-section{width:100vw !important;max-width:100vw !important;margin:24px 0 !important;padding:0 12px !important;}
  .tmdb-trailer-inner{padding:14px !important;border-radius:22px !important;}
  .tmdb-trailer-frame{border-radius:18px !important;}
}


/* Hard trailer fix: intentionally very specific and duplicated outside style cache fallback */
.movie-content-main .tmdb-trailer-hard-section,
.tmdb-trailer-hard-section{display:block!important;width:min(1500px,96vw)!important;max-width:96vw!important;margin:34px 0 34px 50%!important;transform:translateX(-50%)!important;clear:both!important;box-sizing:border-box!important}
.tmdb-trailer-hard-box{display:block!important;width:100%!important;max-width:none!important;padding:26px!important;border:1px solid var(--line)!important;border-radius:28px!important;background:rgba(20,18,27,.84)!important;box-shadow:0 28px 90px rgba(0,0,0,.40)!important;box-sizing:border-box!important}
.tmdb-trailer-hard-frame{position:relative!important;display:block!important;width:100%!important;max-width:none!important;aspect-ratio:16/9!important;min-height:520px!important;height:auto!important;overflow:hidden!important;border-radius:24px!important;background:#050407!important;box-shadow:0 24px 75px rgba(0,0,0,.55)!important;box-sizing:border-box!important}
.tmdb-trailer-hard-frame iframe{position:absolute!important;inset:0!important;display:block!important;width:100%!important;max-width:none!important;height:100%!important;min-height:100%!important;border:0!important}
@media(max-width:1180px){.tmdb-trailer-hard-frame{min-height:0!important}.tmdb-trailer-hard-section{width:96vw!important;max-width:96vw!important}}
@media(max-width:700px){.tmdb-trailer-hard-section{width:100vw!important;max-width:100vw!important;margin:24px 0 24px 50%!important;padding:0 12px!important}.tmdb-trailer-hard-box{padding:14px!important;border-radius:22px!important}.tmdb-trailer-hard-frame{border-radius:18px!important}}

/* Person / actor pages */
.cast-card-link{color:inherit;text-decoration:none;transition:transform .18s ease,border-color .18s ease,background .18s ease}
.cast-card-link:hover{transform:translateY(-3px);border-color:rgba(229,9,20,.48);background:rgba(229,9,20,.08)}
.person-hero{padding:48px 0 30px;background:radial-gradient(circle at 18% 10%,rgba(229,9,20,.24),transparent 34%),linear-gradient(135deg,rgba(12,10,16,.98),rgba(22,18,28,.96))}
.person-detail-grid{display:grid;grid-template-columns:280px minmax(0,1fr);gap:30px;align-items:start;max-width:1180px;margin-inline:auto}
.person-photo-box{border:1px solid var(--line);border-radius:28px;padding:12px;background:rgba(255,255,255,.045);box-shadow:0 24px 80px rgba(0,0,0,.35)}
.person-photo{display:block;width:100%;aspect-ratio:2/3;object-fit:cover;border-radius:20px;background:#111018}
.person-info h1{font-size:clamp(2.1rem,5vw,4.8rem);line-height:.95;margin:12px 0 14px}
.person-info h2{margin-top:24px}.person-info p{font-size:1.02rem;line-height:1.75;color:#e8e1ea}.person-facts{display:flex;flex-wrap:wrap;gap:9px;margin:16px 0 8px}.person-facts span{display:inline-flex;gap:5px;border:1px solid var(--line);border-radius:999px;background:rgba(255,255,255,.055);padding:8px 12px;color:var(--muted);font-size:.92rem}.section-head{display:flex;align-items:flex-end;justify-content:space-between;gap:18px;margin-bottom:18px}.section-head h2{margin:8px 0 0}.person-credits-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:16px}.person-credit-card{display:block;overflow:hidden;border:1px solid var(--line);border-radius:22px;background:rgba(255,255,255,.045);color:inherit;text-decoration:none;transition:transform .18s ease,border-color .18s ease,background .18s ease}.person-credit-card:hover{transform:translateY(-4px);border-color:rgba(229,9,20,.5);background:rgba(229,9,20,.08)}.person-credit-card img{display:block;width:100%;aspect-ratio:2/3;object-fit:cover;background:#111018}.person-credit-card div{padding:13px}.person-credit-card h3{margin:8px 0 6px;font-size:1rem;line-height:1.22}.person-credit-card p{margin:0;color:var(--muted);font-size:.88rem;line-height:1.42;overflow-wrap:anywhere}
@media(max-width:780px){.person-hero{padding:28px 0 20px}.person-detail-grid{grid-template-columns:1fr;gap:18px}.person-photo-box{max-width:230px;margin-inline:auto}.person-info{text-align:center}.person-facts{justify-content:center}.section-head{display:block}.person-credits-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:12px}.person-credit-card div{padding:10px}.person-credit-card h3{font-size:.92rem}.person-credit-card p{font-size:.8rem}}


/* Person page responsive adjustment */
.person-page-fix .person-detail-grid{
  display:grid !important;
  grid-template-columns:minmax(160px,240px) minmax(0,1fr) !important;
  gap:28px !important;
  align-items:start !important;
}
.person-page-fix .person-photo-box{
  width:100% !important;
  max-width:240px !important;
  margin:0 !important;
  box-sizing:border-box !important;
}
.person-page-fix .person-photo{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  height:auto !important;
  aspect-ratio:2/3 !important;
  object-fit:cover !important;
}
.person-page-fix .person-credits-grid,
.person-page-fix .person-filmography-grid{
  display:grid !important;
  grid-template-columns:repeat(auto-fill,minmax(155px,1fr)) !important;
  gap:16px !important;
  align-items:stretch !important;
  width:100% !important;
}
.person-page-fix .person-credit-card,
.person-page-fix .person-filmography-card{
  display:flex !important;
  flex-direction:column !important;
  width:100% !important;
  min-width:0 !important;
  overflow:hidden !important;
  text-decoration:none !important;
}
.person-page-fix .person-credit-card img,
.person-page-fix .person-filmography-card img{
  display:block !important;
  width:100% !important;
  max-width:100% !important;
  height:auto !important;
  aspect-ratio:2/3 !important;
  object-fit:cover !important;
}
.person-page-fix .person-credit-card > div,
.person-page-fix .person-filmography-card > div{
  flex:1 !important;
  min-width:0 !important;
}
@media(max-width:900px){
  .person-page-fix .person-detail-grid{grid-template-columns:minmax(140px,200px) minmax(0,1fr) !important;gap:20px !important;}
  .person-page-fix .person-photo-box{max-width:200px !important;}
}
@media(max-width:700px){
  .person-page-fix .person-detail-grid{grid-template-columns:1fr !important;}
  .person-page-fix .person-photo-box{max-width:180px !important;margin:0 auto !important;}
  .person-page-fix .person-info{text-align:center !important;}
  .person-page-fix .person-facts{justify-content:center !important;}
  .person-page-fix .person-credits-grid,
  .person-page-fix .person-filmography-grid{grid-template-columns:repeat(2,minmax(0,1fr)) !important;gap:12px !important;}
}

/* AdSense/admin ad slots */
.ad-slot{
  width:100%;
  margin:28px auto;
  box-sizing:border-box;
}
.ad-slot-inner{
  width:100%;
  min-height:92px;
  display:flex;
  align-items:center;
  justify-content:center;
  overflow:hidden;
  border:1px dashed rgba(255,255,255,.16);
  border-radius:22px;
  background:rgba(255,255,255,.035);
  box-sizing:border-box;
}
.ad-slot iframe,
.ad-slot ins,
.ad-slot script + ins{
  max-width:100%!important;
}
.ad-slot-movie_below_trailer{
  width:min(1200px,96vw);
  max-width:96vw;
  margin-left:50%;
  transform:translateX(-50%);
}
.adsense-admin-form textarea{
  width:100%;
  min-height:180px;
  box-sizing:border-box;
  font-family:ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
  font-size:.9rem;
  line-height:1.45;
}
.adsense-slot-editor-head{
  display:flex;
  justify-content:space-between;
  gap:18px;
  align-items:flex-start;
  margin-bottom:16px;
}
.toggle-line{
  display:flex;
  align-items:center;
  gap:8px;
  white-space:nowrap;
  font-weight:700;
}
.success-panel{
  border-color:rgba(70,255,150,.32)!important;
  background:rgba(70,255,150,.08)!important;
}
@media(max-width:760px){
  .ad-slot{margin:22px auto;}
  .ad-slot-inner{min-height:72px;border-radius:18px;}
  .adsense-slot-editor-head{display:block;}
  .toggle-line{margin-top:12px;}
}


/* Home hero centralizado */
.home-hero-centered{
  min-height:auto;
  display:flex!important;
  align-items:center;
  justify-content:center;
  text-align:center;
  padding:34px 5vw 28px!important;
}
.home-hero-centered .home-hero-content{
  width:min(980px,100%);
  margin:0 auto;
  display:flex;
  flex-direction:column;
  align-items:center;
}
.home-hero-centered h1{
  max-width:960px;
  margin-left:auto!important;
  margin-right:auto!important;
}
.home-hero-centered p{
  max-width:760px;
  margin-left:auto!important;
  margin-right:auto!important;
}
.home-hero-centered .home-search-centered{
  width:min(760px,100%);
  margin:16px auto 0;
  justify-content:center;
}
.home-hero-centered .home-search-centered input{
  flex:1;
  min-width:0;
}
.hero-card{display:none!important;}
@media(max-width:700px){
  .home-hero-centered{
    min-height:auto;
    padding:24px 5vw 18px!important;
  }
  .home-hero-centered .home-search-centered{
    width:100%;
    margin-top:14px;
  }
}


/* Home hero centralizado — reforço externo do patch inline */
.hero.home-hero-centered {
    width: min(1120px, calc(100% - 32px));
    margin: 16px auto 22px;
    padding: clamp(22px, 4vw, 42px) clamp(18px, 5vw, 72px);
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    text-align: center;
    grid-template-columns: 1fr;
}
.home-hero-content {
    width: 100%;
    max-width: 900px;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-align: center;
}
.searchbar.home-search-centered {
    width: min(760px, 100%);
    margin: 18px auto 0;
}
.hero-card { display: none; }
@media (max-width: 700px) {
    .searchbar.home-search-centered { flex-direction: column; }
}

/* Páginas SEO automáticas por gênero/nicho */
.niche-hero{width:min(1180px,calc(100% - 32px));margin:28px auto 8px;padding:clamp(28px,6vw,70px);border:1px solid var(--line);border-radius:32px;background:radial-gradient(circle at 20% 0,rgba(229,9,63,.30),transparent 36%),linear-gradient(135deg,rgba(255,255,255,.075),rgba(255,255,255,.025));box-shadow:0 30px 100px rgba(0,0,0,.28);text-align:center;overflow:hidden;position:relative}.niche-hero:after{content:"";position:absolute;inset:auto -15% -55% -15%;height:190px;background:radial-gradient(circle,rgba(229,9,63,.22),transparent 70%);pointer-events:none}.niche-hero>div{position:relative;z-index:1;max-width:900px;margin:0 auto}.niche-hero h1{font-size:clamp(2.2rem,6vw,4.7rem);line-height:.95;margin:14px 0}.niche-hero p{font-size:1.08rem;line-height:1.75;color:var(--muted);margin:0 auto;max-width:780px}.niche-seo-copy .panel{max-width:1120px;margin-inline:auto}.niche-seo-copy p{color:#ddd;line-height:1.75}.niche-tags{display:flex;flex-wrap:wrap;gap:9px;margin-top:18px}.niche-tags span{display:inline-flex;border:1px solid rgba(255,255,255,.12);background:rgba(255,255,255,.055);border-radius:999px;padding:8px 12px;color:#ffd9e2;font-weight:800;font-size:.9rem}.niche-links-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:14px;padding:18px 5vw 34px}.niche-link-card{display:block;min-height:170px;border:1px solid var(--line);border-radius:24px;padding:18px;background:linear-gradient(135deg,rgba(229,9,63,.14),rgba(255,255,255,.04));transition:.18s ease;position:relative;overflow:hidden}.niche-link-card:before{content:"";position:absolute;right:-44px;bottom:-52px;width:150px;height:150px;border-radius:50%;background:radial-gradient(circle,rgba(229,9,63,.30),transparent 70%)}.niche-link-card:hover{transform:translateY(-3px);border-color:rgba(229,9,63,.38);background:linear-gradient(135deg,rgba(229,9,63,.22),rgba(255,255,255,.055))}.niche-link-card span{display:inline-flex;margin-bottom:12px;color:#ffb3c7;font-size:.78rem;text-transform:uppercase;letter-spacing:.08em;font-weight:900}.niche-link-card strong{display:block;font-size:1.16rem;line-height:1.18;margin-bottom:10px}.niche-link-card small{display:block;color:var(--muted);line-height:1.45}.niche-grid{padding-top:14px}.niche-faq details{border-top:1px solid var(--line);padding:14px 0}.niche-faq details:first-of-type{border-top:0}.niche-faq summary{cursor:pointer;font-weight:900}.niche-faq p{color:var(--muted);line-height:1.65;margin-bottom:0}@media(max-width:700px){.niche-hero{margin-top:16px;border-radius:24px;padding:28px 20px}.niche-links-grid{grid-template-columns:1fr;padding-left:4vw;padding-right:4vw}.niche-link-card{min-height:auto}.niche-tags span{font-size:.82rem}.niche-grid.grid{grid-template-columns:repeat(2,minmax(0,1fr))}}

/* Admin — páginas SEO por nicho */
.admin-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:18px;margin:24px 0}.admin-page-head h1{margin:8px 0 6px}.admin-alert{border-color:rgba(57,217,138,.35)!important;background:rgba(57,217,138,.08)!important;color:#dcffe9}.admin-toolbar{display:flex;align-items:center;justify-content:space-between;gap:14px;margin-bottom:16px}.admin-toolbar>div,.admin-inline-form{display:flex;align-items:center;gap:10px;flex-wrap:wrap}.admin-inline-form input{min-width:min(430px,100%)}.admin-table-wrap{overflow:auto}.admin-niche-table small{color:var(--muted);display:block;margin-top:5px;line-height:1.35}.admin-niche-table .is-muted{opacity:.55}.badge.soft{background:rgba(255,255,255,.08);color:#d9d9d9;border-color:rgba(255,255,255,.10)}.btn.danger{background:linear-gradient(135deg,#7a111d,#d61f38);color:white}.admin-editor-form label{display:flex;flex-direction:column;gap:8px;font-weight:900;color:#fff;margin-bottom:14px}.admin-editor-form input,.admin-editor-form select,.admin-editor-form textarea,.admin-inline-form input,.admin-toolbar select{width:100%;border:1px solid var(--line);background:rgba(255,255,255,.06);border-radius:14px;padding:12px 14px;color:#fff;outline:none}.admin-editor-form textarea{resize:vertical;line-height:1.5}.admin-editor-form small{font-weight:600;color:var(--muted)}.admin-form-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(180px,1fr));gap:14px}.admin-form-grid.three{grid-template-columns:repeat(3,minmax(0,1fr))}.admin-mini-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(230px,1fr));gap:12px}.admin-movie-chip{display:grid;grid-template-columns:48px 1fr auto;align-items:center;gap:10px;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.045);padding:8px}.admin-movie-chip img{width:48px;height:72px;object-fit:cover;border-radius:10px;background:#111}.admin-movie-chip strong{display:block;font-size:.95rem;line-height:1.2}.admin-movie-chip small{display:block;color:var(--muted);margin-top:4px}.mini-danger{width:30px;height:30px;border:0;border-radius:999px;background:rgba(229,9,63,.20);color:#fff;font-size:1.2rem;cursor:pointer}.mini-danger:hover{background:#e5093f}.admin-select-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(180px,1fr));gap:12px;margin:16px 0}.admin-select-card{display:flex;gap:10px;align-items:center;border:1px solid var(--line);border-radius:16px;background:rgba(255,255,255,.045);padding:10px;cursor:pointer}.admin-select-card:hover{border-color:rgba(229,9,63,.40)}.admin-select-card input{width:auto}.admin-select-card img{width:42px;height:62px;object-fit:cover;border-radius:9px}.admin-select-card span{font-weight:900;line-height:1.2}.admin-select-card small{display:block;color:var(--muted);font-weight:700;margin-top:4px}.check-inline{display:flex!important;flex-direction:row!important;align-items:center!important;gap:8px!important;margin:0!important;color:var(--muted)!important}.check-inline input{width:auto!important}.admin-niches-page .panel,.admin-niche-edit .panel{margin-bottom:18px}@media(max-width:800px){.admin-page-head,.admin-toolbar{flex-direction:column;align-items:stretch}.admin-form-grid.three{grid-template-columns:1fr}.admin-inline-form input{min-width:0}.admin-mini-grid,.admin-select-grid{grid-template-columns:1fr}.admin-movie-chip{grid-template-columns:42px 1fr auto}.admin-movie-chip img{width:42px;height:62px}}


/* Admin páginas SEO: posters compactos e responsivos na edição de nichos */
.admin-niche-edit .admin-mini-grid,
.admin-niche-edit .admin-select-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(220px,1fr));
    gap:12px;
    align-items:stretch;
}
.admin-niche-edit .admin-select-grid{grid-template-columns:repeat(auto-fill,minmax(190px,1fr));}
.admin-niche-edit .admin-movie-chip,
.admin-niche-edit .admin-select-card{
    min-width:0;
    max-width:100%;
    overflow:hidden;
    box-sizing:border-box;
}
.admin-niche-edit .admin-movie-chip{
    display:grid;
    grid-template-columns:46px minmax(0,1fr) 32px;
    align-items:center;
    gap:10px;
}
.admin-niche-edit .admin-select-card{
    display:grid;
    grid-template-columns:auto 44px minmax(0,1fr);
    align-items:center;
    gap:10px;
}
.admin-niche-edit .admin-movie-chip img,
.admin-niche-edit .admin-select-card img{
    width:44px;
    min-width:44px;
    max-width:44px;
    height:66px;
    max-height:66px;
    object-fit:cover;
    border-radius:9px;
    display:block;
}
.admin-niche-edit .admin-movie-chip strong,
.admin-niche-edit .admin-select-card span{
    min-width:0;
    overflow-wrap:anywhere;
    word-break:break-word;
}
.admin-niche-edit .admin-select-card input{width:16px;min-width:16px;}
@media(max-width:700px){
    .admin-niche-edit .admin-mini-grid,
    .admin-niche-edit .admin-select-grid{grid-template-columns:1fr;}
}

/* Admin páginas SEO: exclusão em massa dos títulos da página */
.admin-niche-edit .admin-movie-chip{
    grid-template-columns:22px 46px minmax(0,1fr) 32px;
}
.admin-niche-edit .admin-movie-chip.no-bulk-check{
    grid-template-columns:46px minmax(0,1fr) 32px;
}
.admin-niche-edit .admin-bulk-bar{
    display:flex;
    flex-wrap:wrap;
    align-items:center;
    justify-content:space-between;
    gap:12px;
    margin:14px 0 16px;
}
.admin-niche-edit .admin-bulk-actions{
    display:flex;
    align-items:center;
    gap:10px;
    flex-wrap:wrap;
}
.admin-niche-edit .admin-check-all{
    display:inline-flex;
    align-items:center;
    gap:8px;
    color:var(--muted,#a7adbb);
    font-size:.92rem;
    cursor:pointer;
}
.admin-niche-edit .admin-movie-chip .bulk-movie-check{
    width:18px;
    height:18px;
    min-width:18px;
    accent-color:#e11d48;
}
@media(max-width:700px){
    .admin-niche-edit .admin-bulk-bar{align-items:flex-start;}
}


/* Admin SEO pages cleanup controls */
.admin-danger-zone{
    border:1px solid rgba(225,29,72,.35);
    background:linear-gradient(135deg,rgba(225,29,72,.10),rgba(15,23,42,.72));
}
.admin-danger-zone h2{margin-top:0;}
.admin-danger-zone .admin-inline-form{align-items:center;}

/* Niches com imagem de fundo configurável */
.niche-hero.has-bg{
    background-image:
        linear-gradient(135deg,rgba(4,7,14,.86),rgba(10,12,20,.64) 48%,rgba(229,9,63,.32)),
        var(--niche-hero-bg) !important;
    background-size:cover !important;
    background-position:center !important;
    border-color:rgba(255,255,255,.13) !important;
    min-height:340px;
    display:flex;
    align-items:center;
    justify-content:center;
    box-shadow:inset 0 -120px 120px rgba(0,0,0,.55),0 34px 110px rgba(0,0,0,.38);
}
.niche-hero.has-bg:before{
    content:"";
    position:absolute;
    inset:0;
    background:radial-gradient(circle at 50% 20%,rgba(255,255,255,.13),transparent 34%),linear-gradient(180deg,rgba(0,0,0,.06),rgba(0,0,0,.52));
    pointer-events:none;
}
.niche-hero.has-bg>div{position:relative;z-index:2;}
.niche-hero.has-bg .badge{background:rgba(0,0,0,.48);backdrop-filter:blur(10px);border-color:rgba(255,255,255,.22);}
.niche-hero.has-bg h1{text-shadow:0 6px 36px rgba(0,0,0,.72);}
.niche-hero.has-bg p{color:#f3f5fb;text-shadow:0 3px 18px rgba(0,0,0,.78);}

.niche-link-card.has-bg{
    min-height:190px;
    display:flex;
    flex-direction:column;
    justify-content:flex-end;
    background-image:
        linear-gradient(180deg,rgba(8,10,18,.22),rgba(8,10,18,.58) 42%,rgba(8,10,18,.92)),
        var(--niche-card-bg) !important;
    background-size:cover !important;
    background-position:center !important;
    border-color:rgba(255,255,255,.14) !important;
    box-shadow:0 18px 45px rgba(0,0,0,.25);
}
.niche-link-card.has-bg:before{display:none;}
.niche-link-card.has-bg:hover{
    transform:translateY(-4px) scale(1.01);
    border-color:rgba(255,255,255,.28) !important;
    box-shadow:0 24px 70px rgba(0,0,0,.42);
}
.niche-link-card.has-bg span{
    width:max-content;
    max-width:100%;
    padding:6px 10px;
    border-radius:999px;
    background:rgba(229,9,63,.72);
    color:#fff;
    box-shadow:0 8px 22px rgba(229,9,63,.22);
}
.niche-link-card.has-bg strong,
.niche-link-card.has-bg small{
    position:relative;
    z-index:1;
    text-shadow:0 3px 16px rgba(0,0,0,.75);
}
.niche-link-card.has-bg small{color:#eef2ff;}

/* Admin: imagem de fundo das páginas SEO */
.admin-bg-preview{
    min-height:120px;
    border:1px solid var(--line,#2a3140);
    border-radius:18px;
    background-size:cover;
    background-position:center;
    overflow:hidden;
    display:flex;
    align-items:flex-end;
    padding:14px;
    margin:6px 0 14px;
    box-shadow:inset 0 -80px 70px rgba(0,0,0,.62);
}
.admin-bg-preview span{
    font-size:.86rem;
    color:#fff;
    font-weight:900;
    text-shadow:0 2px 12px rgba(0,0,0,.8);
}
.admin-bg-preview.is-empty{
    background:linear-gradient(135deg,rgba(225,29,72,.14),rgba(255,255,255,.045));
    box-shadow:none;
}
.admin-editor-form .admin-upload-note{color:var(--muted,#a7adbb);font-size:.86rem;font-weight:700;margin-top:-8px;display:block;}

@media(max-width:700px){
    .niche-hero.has-bg{min-height:260px;padding:32px 20px;}
    .niche-link-card.has-bg{min-height:165px;}
}


/* Correção forte: imagens de fundo de nichos aplicadas direto via style inline */
.niche-hero.has-bg[style],
.niche-link-card.has-bg[style]{
    background-repeat:no-repeat !important;
}
.niche-hero.has-bg[style]{
    background-size:cover !important;
    background-position:center !important;
}
.niche-link-card.has-bg[style]{
    background-size:cover !important;
    background-position:center !important;
}

/* Home featured curation/admin */
.home-featured-grid {
    align-items: stretch;
}
.admin-page-head {
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
    gap: 18px;
    margin-bottom: 22px;
}
.feature-tabs {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    margin: 18px 0;
}
.notice {
    border-radius: 16px;
    padding: 12px 14px;
    margin: 12px 0;
    border: 1px solid rgba(255,255,255,.12);
    background: rgba(255,255,255,.06);
}
.notice.success { border-color: rgba(52, 211, 153, .35); background: rgba(16, 185, 129, .12); }
.notice.danger { border-color: rgba(248, 113, 113, .40); background: rgba(220, 38, 38, .13); }
.home-feature-toolbar,
.admin-search-row {
    display: flex;
    gap: 10px;
    flex-wrap: wrap;
    align-items: center;
    margin: 12px 0 18px;
}
.admin-search-row input {
    flex: 1 1 260px;
    min-width: min(100%, 260px);
}
.admin-feature-grid,
.admin-tmdb-results {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(260px, 1fr));
    gap: 14px;
}
.admin-feature-card,
.admin-tmdb-card,
.admin-local-pick {
    border: 1px solid rgba(255,255,255,.10);
    background: rgba(255,255,255,.045);
    border-radius: 18px;
    overflow: hidden;
}
.admin-feature-card {
    position: relative;
    display: grid;
    grid-template-columns: 82px 1fr;
    gap: 12px;
    padding: 12px;
}
.admin-feature-card img,
.admin-tmdb-card img,
.admin-local-pick img {
    width: 100%;
    max-width: 90px;
    aspect-ratio: 2/3;
    object-fit: cover;
    border-radius: 12px;
    background: rgba(255,255,255,.06);
}
.admin-feature-check {
    position: absolute;
    top: 8px;
    left: 8px;
    padding: 5px 7px;
    border-radius: 999px;
    background: rgba(0,0,0,.72);
    font-size: .75rem;
}
.admin-feature-info {
    display: flex;
    flex-direction: column;
    gap: 8px;
    min-width: 0;
}
.admin-feature-info strong,
.admin-local-pick span,
.admin-tmdb-card strong {
    word-break: break-word;
}
.admin-feature-info input[type="number"] {
    width: 92px;
    padding: 8px 10px;
}
.inline-check {
    display: inline-flex;
    align-items: center;
    gap: 6px;
}
.admin-local-pick-grid {
    display: grid;
    grid-template-columns: repeat(auto-fill, minmax(150px, 1fr));
    gap: 12px;
    margin: 16px 0;
}
.admin-local-pick {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 10px;
    cursor: pointer;
}
.admin-local-pick input { align-self: flex-start; }
.admin-local-pick img { max-width: 100%; width: 100%; }
.admin-tmdb-card {
    display: grid;
    grid-template-columns: 82px 1fr;
    gap: 12px;
    padding: 12px;
}
.admin-tmdb-card form { margin-top: 10px; }
@media (max-width: 720px) {
    .admin-page-head { flex-direction: column; }
    .admin-feature-grid,
    .admin-tmdb-results { grid-template-columns: 1fr; }
    .admin-feature-card,
    .admin-tmdb-card { grid-template-columns: 76px 1fr; }
    .admin-local-pick-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); }
}

/* Admin: curadoria da página de lançamentos */
.admin-upcoming .admin-local-pick-grid{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(145px,1fr));
    gap:12px;
    margin:16px 0;
}
.admin-upcoming .admin-local-pick{
    overflow:hidden;
    min-width:0;
}
.admin-upcoming .admin-local-pick img{
    width:100%;
    max-width:100%;
    aspect-ratio:2/3;
    object-fit:cover;
    border-radius:12px;
}
.admin-upcoming .admin-feature-card img,
.admin-upcoming .admin-tmdb-card img{
    width:82px;
    max-width:82px;
    height:123px;
    object-fit:cover;
}
.admin-upcoming .admin-feature-grid,
.admin-upcoming .admin-tmdb-results{
    display:grid;
    grid-template-columns:repeat(auto-fill,minmax(270px,1fr));
    gap:14px;
}
.upcoming-hero{
    text-align:center;
    padding:34px 24px;
    background:radial-gradient(circle at top,rgba(229,9,63,.16),rgba(255,255,255,.045));
}
.upcoming-hero h1{margin-bottom:8px;}
@media(max-width:720px){
    .admin-upcoming .admin-local-pick-grid{grid-template-columns:repeat(2,minmax(0,1fr));}
    .admin-upcoming .admin-feature-grid,
    .admin-upcoming .admin-tmdb-results{grid-template-columns:1fr;}
}

/* Avaliação com estrelas PNG */
.rating-review-form{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:14px!important;width:100%!important;max-width:760px!important;margin-top:12px!important}
.rating-stars-wrap{display:flex!important;flex-direction:column!important;align-items:flex-start!important;gap:8px!important;width:100%!important}
.rating-help{margin:0!important;color:var(--muted)!important;font-weight:800!important}
.rating-stars-png{display:flex!important;align-items:center!important;gap:9px!important;flex-wrap:nowrap!important;width:auto!important}
.rating-star-png{width:52px!important;height:52px!important;padding:0!important;border:0!important;background:transparent!important;box-shadow:none!important;border-radius:14px!important;cursor:pointer!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;transition:transform .16s ease,filter .16s ease,opacity .16s ease!important}
.rating-star-png img{display:block!important;width:100%!important;height:100%!important;object-fit:contain!important;filter:grayscale(1) brightness(.58) opacity(.44)!important;transition:filter .16s ease,transform .16s ease!important}
.rating-star-png.is-active img,.rating-star-png.is-hover img{filter:none!important}
.rating-star-png:hover,.rating-star-png:focus-visible{transform:translateY(-2px) scale(1.08)!important;outline:none!important}
.rating-star-png:hover img,.rating-star-png:focus-visible img{filter:none!important}
.rating-selected-text{color:#ffd66e!important;font-weight:900!important;text-shadow:0 0 16px rgba(255,200,87,.32)!important}
.rating-comment-label{font-weight:900!important;color:#fff!important;margin-top:4px!important}
.rating-review-form textarea{display:block!important;width:100%!important;max-width:760px!important;min-height:130px!important;margin:0!important;resize:vertical!important;box-sizing:border-box!important}
.rating-submit-btn{margin-top:2px!important;align-self:flex-start!important}
.rating-submit-status{min-height:20px!important;color:var(--muted)!important;font-size:.9rem!important;font-weight:800!important}
.rating-submit-btn:disabled{opacity:.75!important;cursor:wait!important}
@media(max-width:700px){.rating-stars-png{gap:6px!important}.rating-star-png{width:42px!important;height:42px!important}.rating-review-form textarea{min-height:120px!important}}


/* Header MedoPlay centralizado */
.top.medoplay-header{
    display:grid !important;
    grid-template-columns:1fr auto 1fr !important;
    grid-template-rows:auto auto !important;
    align-items:center !important;
    justify-content:center !important;
    gap:8px 18px !important;
    padding:10px 5vw 12px !important;
    min-height:118px !important;
}
.top.medoplay-header .brand{
    grid-column:2 !important;
    grid-row:1 !important;
    justify-self:center !important;
    display:flex !important;
    align-items:center !important;
    justify-content:center !important;
    line-height:0 !important;
    font-size:0 !important;
}
.top.medoplay-header .brand .site-logo{
    display:block !important;
    width:auto !important;
    height:78px !important;
    max-width:min(720px,76vw) !important;
    object-fit:contain !important;
    filter:drop-shadow(0 10px 26px rgba(229,9,63,.28)) drop-shadow(0 8px 22px rgba(68,198,255,.16));
}
.top.medoplay-header .hamb{
    grid-column:3 !important;
    grid-row:1 !important;
    justify-self:end !important;
}
.top.medoplay-header nav{
    grid-column:1 / -1 !important;
    grid-row:2 !important;
    justify-self:center !important;
    justify-content:center !important;
    flex-wrap:wrap !important;
    gap:16px !important;
}
@media(max-width:900px){
    .top.medoplay-header{min-height:104px !important;padding:8px 4vw 10px !important;}
    .top.medoplay-header .brand .site-logo{height:66px !important;max-width:72vw !important;}
}
@media(max-width:700px){
    .top.medoplay-header{
        grid-template-columns:44px 1fr 44px !important;
        grid-template-rows:auto !important;
        min-height:78px !important;
        padding:8px 4vw !important;
    }
    .top.medoplay-header .brand{grid-column:2 !important;grid-row:1 !important;}
    .top.medoplay-header .brand .site-logo{height:54px !important;max-width:70vw !important;}
    .top.medoplay-header .hamb{grid-column:3 !important;grid-row:1 !important;}
    .top.medoplay-header nav{top:78px !important;}
}

/* Outros Gêneros — cards, hero e admin */
.genre-index-hero,.genre-public-hero{width:min(1180px,calc(100% - 32px));margin:22px auto 28px;padding:clamp(42px,7vw,86px) clamp(22px,5vw,70px);border:1px solid rgba(255,255,255,.10);border-radius:32px;background:radial-gradient(circle at 20% 15%,rgba(229,9,63,.24),transparent 36%),linear-gradient(135deg,rgba(32,11,32,.94),rgba(7,8,14,.96));box-shadow:0 24px 80px rgba(0,0,0,.35);text-align:center;overflow:hidden;position:relative}.genre-index-hero h1,.genre-public-hero h1{font-size:clamp(2.4rem,7vw,5.2rem);margin:.25rem 0 .55rem}.genre-index-hero p,.genre-public-hero p{max-width:820px;margin:0 auto;color:rgba(255,255,255,.78);font-size:1.05rem;line-height:1.65}.genre-card-grid{width:min(1180px,calc(100% - 32px));margin:0 auto 34px;display:grid;grid-template-columns:repeat(auto-fill,minmax(190px,1fr));gap:16px}.genre-card-grid-home{margin-top:4px}.genre-card{min-height:160px;border:1px solid rgba(255,255,255,.10);border-radius:24px;padding:18px;display:flex;flex-direction:column;justify-content:flex-end;gap:8px;text-decoration:none;color:#fff;background:radial-gradient(circle at 18% 18%,rgba(255,255,255,.12),transparent 30%),linear-gradient(135deg,rgba(229,9,63,.30),rgba(31,177,255,.16) 54%,rgba(16,14,24,.95));box-shadow:0 18px 50px rgba(0,0,0,.24);overflow:hidden;position:relative;transition:.2s ease}.genre-card:before{content:"";position:absolute;inset:0;background:linear-gradient(180deg,transparent,rgba(0,0,0,.22));pointer-events:none}.genre-card:hover{transform:translateY(-4px);box-shadow:0 22px 70px rgba(0,0,0,.36);border-color:rgba(255,255,255,.24)}.genre-card span,.genre-card small{position:relative;z-index:1}.genre-card span{font-weight:900;font-size:1.18rem;letter-spacing:.01em;text-shadow:0 8px 18px rgba(0,0,0,.55)}.genre-card small{color:rgba(255,255,255,.78);font-size:.86rem;line-height:1.35;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.genre-results-head{margin-top:4px}.genre-results-head h2{font-size:clamp(1.7rem,4vw,2.6rem);margin-bottom:4px}.genre-movie-grid{padding-top:0}.admin-genre-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:16px}.admin-genre-card{padding:0;overflow:hidden}.admin-genre-thumb{height:130px;background:linear-gradient(135deg,rgba(229,9,63,.32),rgba(31,177,255,.15)),#12101a;background-size:cover;background-position:center;display:flex;align-items:flex-end;padding:16px}.admin-genre-thumb strong{font-size:1.35rem;text-shadow:0 8px 20px rgba(0,0,0,.7)}.admin-genre-body{padding:16px}.admin-genre-actions{display:flex;flex-wrap:wrap;gap:8px;margin:12px 0}.admin-form-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px}.admin-form-grid label{display:flex;flex-direction:column;gap:8px}.admin-form-grid .full{grid-column:1/-1}.admin-genre-preview{min-height:190px;border-radius:24px;background-size:cover;background-position:center;padding:18px;display:flex;align-items:flex-end;justify-content:space-between;gap:16px;overflow:hidden}.admin-genre-preview strong{text-shadow:0 8px 24px #000;font-size:1.3rem}
@media(max-width:700px){.genre-card-grid{grid-template-columns:repeat(2,minmax(0,1fr));width:calc(100% - 20px);gap:10px}.genre-card{min-height:132px;border-radius:18px;padding:14px}.genre-card small{display:none}.genre-index-hero,.genre-public-hero{width:calc(100% - 20px);border-radius:22px;padding:34px 18px}.admin-form-grid{grid-template-columns:1fr}.admin-genre-grid{grid-template-columns:1fr}}

/* Admin genre sync controls */
.genre-sync-safe-grid{display:grid;grid-template-columns:repeat(6,minmax(105px,1fr));gap:10px;align-items:end}
.genre-sync-safe-grid label,.genre-sync-settings label{font-size:.86rem;color:rgba(255,255,255,.72)}
.genre-sync-safe-grid input,.genre-sync-safe-grid select,.genre-sync-settings input,.genre-sync-settings select{width:100%;margin-top:5px}
.genre-sync-report{border:1px solid rgba(255,200,90,.25);background:linear-gradient(135deg,rgba(255,185,60,.12),rgba(20,20,28,.85))}
.genre-sync-settings{display:grid;grid-template-columns:repeat(4,minmax(150px,1fr));gap:12px}
.genre-sync-checks{display:flex;gap:14px;flex-wrap:wrap;margin:12px 0}
.genre-sync-checks label{display:flex;align-items:center;gap:7px;color:rgba(255,255,255,.78)}
.genre-safe-note{border:1px solid rgba(255,190,90,.24);background:rgba(255,190,90,.08);border-radius:16px;padding:12px 14px;margin:12px 0;color:rgba(255,255,255,.78)}
.admin-genre-actions .mini-sync{display:flex;gap:8px;align-items:center;flex-wrap:wrap;margin-top:8px}
.admin-genre-actions .mini-sync input{max-width:85px;padding:9px 10px}
.sync-help-list{margin:10px 0 0;padding-left:18px;color:rgba(255,255,255,.7);font-size:.92rem}
@media(max-width:900px){.genre-sync-safe-grid,.genre-sync-settings{grid-template-columns:repeat(2,minmax(120px,1fr))}}
@media(max-width:560px){.genre-sync-safe-grid,.genre-sync-settings{grid-template-columns:1fr}}

/* === Restaurado: Filmes Grátis + CTA MedoPlay === */
/* Filmes grátis / MedoPlay */
.movie{position:relative;overflow:hidden}.free-title-badge{position:absolute;top:10px;left:10px;z-index:4;display:inline-flex;align-items:center;gap:6px;padding:7px 10px;border-radius:999px;background:linear-gradient(135deg,#00f0a8,#00a8ff);color:#03100d;font-size:.72rem;font-weight:1000;text-transform:uppercase;letter-spacing:.06em;box-shadow:0 12px 34px rgba(0,240,168,.34),0 8px 20px rgba(0,0,0,.32);border:1px solid rgba(255,255,255,.35)}.free-title-badge:before{content:"▶";font-size:.72rem}.free-badge{background:linear-gradient(135deg,#00f0a8,#00a8ff)!important;color:#04120f!important;border-color:rgba(255,255,255,.38)!important}.free-hero{width:min(1180px,calc(100% - 32px));margin:24px auto 12px;padding:clamp(28px,6vw,72px);border:1px solid var(--line);border-radius:34px;background:radial-gradient(circle at 20% 0,rgba(0,240,168,.20),transparent 34%),radial-gradient(circle at 80% 20%,rgba(0,168,255,.16),transparent 30%),linear-gradient(135deg,rgba(255,255,255,.065),rgba(255,255,255,.025));display:grid;grid-template-columns:minmax(0,1.05fr) minmax(320px,.95fr);gap:24px;align-items:center;box-shadow:0 30px 100px rgba(0,0,0,.30);overflow:hidden}.free-hero-copy{max-width:760px}.free-hero h1{font-size:clamp(2.3rem,6vw,5rem);line-height:.95;margin:12px 0}.free-hero p{color:#e9f4f1;line-height:1.75}.free-hero .lead{font-size:1.15rem;color:#fff}.free-hero-video{min-width:0}.free-player-frame{position:relative;width:100%;aspect-ratio:16/9;border-radius:24px;overflow:hidden;background:#050508;border:1px solid rgba(255,255,255,.13);box-shadow:0 24px 90px rgba(0,0,0,.52)}.free-player-frame iframe,.free-player-frame video,.free-player-frame embed{position:absolute;inset:0;width:100%;height:100%;border:0}.free-movies-grid .movie .p{min-height:132px}.free-watch-small{margin-top:10px;display:inline-flex!important;background:linear-gradient(135deg,#00f0a8,#00a8ff)!important;color:#03100d!important}.provider-brand-free{background:linear-gradient(135deg,#00f0a8,#00a8ff)!important;color:#03100d!important;border-color:rgba(255,255,255,.36)!important;box-shadow:0 16px 38px rgba(0,240,168,.24)!important}.free-provider-icon{width:34px;height:34px;border-radius:999px;display:grid;place-items:center;background:rgba(0,0,0,.18);color:#03100d;font-weight:1000}.free-provider-card .watch-provider-type{color:#b9fff1!important}.free-watch-page{padding-bottom:42px}.free-watch-head{width:min(1100px,calc(100% - 32px));margin:24px auto 16px;text-align:center}.free-watch-head h1{font-size:clamp(2rem,5vw,4rem);line-height:1;margin:14px auto 8px}.free-player-shell{width:min(1160px,calc(100% - 24px));margin:0 auto}.free-watch-info{margin-top:22px}@media(max-width:850px){.free-hero{grid-template-columns:1fr;border-radius:26px;padding:28px 20px}.free-hero h1{font-size:clamp(2.1rem,10vw,3.7rem)}.free-player-frame{border-radius:18px}.free-title-badge{font-size:.64rem;padding:6px 8px;top:8px;left:8px}}

/* Admin Filmes Grátis */
.admin-free-movies .admin-feature-grid,.admin-free-movies .admin-tmdb-results{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:14px}.admin-free-movies .admin-feature-card,.admin-free-movies .admin-tmdb-card{display:grid;grid-template-columns:82px 1fr;gap:12px;border:1px solid var(--line);border-radius:18px;background:rgba(255,255,255,.045);padding:12px}.admin-free-movies .admin-feature-check{grid-column:1/-1;color:var(--muted);font-size:.86rem}.admin-free-movies .admin-feature-info label{display:block;margin-top:8px}.admin-free-edit .free-player-frame{max-width:980px;margin:auto}@media(max-width:620px){.admin-free-movies .admin-feature-grid,.admin-free-movies .admin-tmdb-results{grid-template-columns:1fr}.admin-free-movies .admin-feature-card,.admin-free-movies .admin-tmdb-card{grid-template-columns:70px 1fr}.admin-free-movies .admin-feature-card img,.admin-free-movies .admin-tmdb-card img{width:70px!important;height:105px!important}.admin-free-edit .movie-edit-hero{grid-template-columns:1fr!important}.admin-free-edit .movie-edit-hero img{width:90px!important;height:135px!important}}

/* Traduções automáticas de sinopse */
.translation-notice{
  display:inline-flex;
  align-items:center;
  gap:7px;
  margin-top:10px;
  padding:8px 11px;
  border:1px solid rgba(255,255,255,.12);
  border-radius:999px;
  background:rgba(255,255,255,.06);
  color:rgba(255,255,255,.72);
  font-size:.82rem;
  line-height:1.25;
}
.translation-notice:before{content:'✨'; font-size:.9rem;}
.admin-translation-grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(290px,1fr));gap:16px;margin-top:16px;}
.admin-translation-card{border:1px solid rgba(255,255,255,.1);background:rgba(255,255,255,.045);border-radius:18px;padding:14px;overflow:hidden;}
.admin-translation-card h3{margin:0 0 8px;font-size:1rem;}
.admin-translation-meta{font-size:.82rem;color:rgba(255,255,255,.62);margin-bottom:10px;}
.admin-translation-card textarea{width:100%;min-height:130px;resize:vertical;}
.admin-translation-original{max-height:120px;overflow:auto;font-size:.86rem;color:rgba(255,255,255,.72);background:rgba(0,0,0,.22);border-radius:12px;padding:10px;margin:10px 0;}
.admin-translation-actions{display:flex;flex-wrap:wrap;gap:8px;margin-top:10px;align-items:center;}

/* MedoPlay grátis no bloco Onde assistir */
.watch-provider-card.medoplay-free-provider-card{
  align-items:center !important;
  gap:9px !important;
}
.medoplay-free-provider-logo.provider-brand-free,
.medoplay-free-provider-logo{
  width:150px !important;
  max-width:150px !important;
  min-height:86px !important;
  height:86px !important;
  padding:0 !important;
  overflow:hidden !important;
  border-radius:18px !important;
  background:linear-gradient(135deg,#160106,#420013 48%,#071c35) !important;
  border:1px solid rgba(255,255,255,.22) !important;
  box-shadow:0 18px 46px rgba(229,9,63,.28),0 0 0 1px rgba(255,255,255,.04) inset !important;
}
.medoplay-free-provider-logo:hover{
  transform:translateY(-3px) scale(1.025) !important;
  box-shadow:0 24px 58px rgba(229,9,63,.38),0 0 26px rgba(255,199,55,.20) !important;
}
.medoplay-provider-logo-img{
  display:block !important;
  width:100% !important;
  height:100% !important;
  max-width:100% !important;
  object-fit:cover !important;
  border-radius:18px !important;
}
.free-watch-provider-cta{
  display:inline-flex !important;
  align-items:center !important;
  justify-content:center !important;
  width:150px !important;
  min-height:34px !important;
  padding:8px 12px !important;
  border-radius:999px !important;
  background:linear-gradient(135deg,#fff2a6 0%,#ffd43b 38%,#ff9f1a 68%,#ff5c00 100%) !important;
  color:#220b00 !important;
  border:1px solid rgba(255,255,255,.48) !important;
  box-shadow:0 12px 30px rgba(255,178,0,.32),0 0 0 1px rgba(110,37,0,.08) inset !important;
  font-size:.82rem !important;
  font-weight:1000 !important;
  letter-spacing:.02em !important;
  line-height:1 !important;
  text-transform:none !important;
  text-decoration:none !important;
  text-align:center !important;
  transition:transform .18s ease,box-shadow .18s ease,filter .18s ease !important;
}
.free-watch-provider-cta:hover{
  transform:translateY(-2px) !important;
  filter:saturate(1.12) brightness(1.04) !important;
  box-shadow:0 17px 42px rgba(255,178,0,.45),0 0 24px rgba(255,230,120,.25) !important;
}
@media(max-width:520px){
  .medoplay-free-provider-logo.provider-brand-free,
  .medoplay-free-provider-logo,
  .free-watch-provider-cta{
    width:142px !important;
    max-width:142px !important;
  }
  .medoplay-free-provider-logo.provider-brand-free,
  .medoplay-free-provider-logo{height:80px !important;min-height:80px !important;}
  .free-watch-provider-cta{font-size:.78rem !important;padding:8px 10px !important;}
}


/* === Correção final: Filmes Grátis / player grande / badge chamativa === */
.free-watch-page.medoplay-free-watch-page{width:100%!important;padding:18px 0 56px!important;}
.free-watch-page .free-watch-head{width:min(1180px,calc(100vw - 32px))!important;margin:18px auto 18px!important;text-align:center!important;}
.free-watch-page .free-watch-head h1{max-width:1100px!important;margin:14px auto 10px!important;font-size:clamp(2rem,4.6vw,4.8rem)!important;line-height:1.02!important;}
.free-watch-page .free-player-shell{display:block!important;width:min(1480px,calc(100vw - 28px))!important;max-width:none!important;margin:0 auto 26px!important;padding:0!important;}
.free-watch-page .free-player-frame{display:block!important;position:relative!important;width:100%!important;max-width:none!important;aspect-ratio:16/9!important;min-height:420px!important;margin:0 auto!important;border-radius:28px!important;overflow:hidden!important;background:#030306!important;border:1px solid rgba(255,255,255,.14)!important;box-shadow:0 32px 110px rgba(0,0,0,.58),0 0 45px rgba(229,9,63,.14)!important;}
.free-watch-page .free-player-frame iframe,.free-watch-page .free-player-frame video,.free-watch-page .free-player-frame embed,.free-watch-page .free-player-frame object{position:absolute!important;inset:0!important;width:100%!important;height:100%!important;max-width:none!important;min-width:100%!important;border:0!important;display:block!important;}
.free-watch-page .free-watch-info{width:min(1180px,calc(100vw - 32px))!important;margin:22px auto 0!important;}
.movie{position:relative!important;overflow:hidden!important;}
.free-title-badge,.movie .free-title-badge,.has-free-badge .free-title-badge{position:absolute!important;top:10px!important;left:10px!important;z-index:20!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;gap:6px!important;width:auto!important;max-width:calc(100% - 20px)!important;padding:7px 11px!important;border-radius:999px!important;background:linear-gradient(135deg,#fff2a6 0%,#ffd43b 36%,#ff9f1a 68%,#ff5c00 100%)!important;color:#230800!important;border:1px solid rgba(255,255,255,.55)!important;box-shadow:0 14px 34px rgba(255,178,0,.35),0 0 0 1px rgba(80,20,0,.12) inset!important;font-size:.72rem!important;font-weight:1000!important;line-height:1!important;letter-spacing:.055em!important;text-transform:uppercase!important;text-shadow:none!important;}
.free-title-badge::before{content:"▶"!important;font-size:.7rem!important;line-height:1!important;}
@media(max-width:900px){.free-watch-page .free-player-frame{min-height:0!important;border-radius:20px!important;}.free-watch-page .free-player-shell{width:min(100%,calc(100vw - 16px))!important;}}
@media(max-width:520px){.free-watch-page.medoplay-free-watch-page{padding-top:10px!important;}.free-watch-page .free-watch-head{width:calc(100vw - 22px)!important;}.free-watch-page .free-player-shell{width:100vw!important;}.free-watch-page .free-player-frame{border-radius:0!important;border-left:0!important;border-right:0!important;}.free-title-badge,.movie .free-title-badge,.has-free-badge .free-title-badge{font-size:.64rem!important;padding:6px 9px!important;top:8px!important;left:8px!important;}}

/* Reporte de filme grátis indisponível */
.free-watch-page .free-report-wrap{
  width:min(1180px, calc(100vw - 32px));
  margin:8px auto 22px;
}
.free-report-card{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:18px;
  padding:18px 20px;
  border-radius:22px;
  border:1px solid rgba(255,255,255,.12);
  background:linear-gradient(135deg, rgba(255,255,255,.075), rgba(255,255,255,.035));
  box-shadow:0 18px 55px rgba(0,0,0,.32);
}
.free-report-card h2{margin:0 0 5px;font-size:1.22rem;}
.free-report-open,.free-report-submit{
  background:linear-gradient(135deg,#ff3d61 0%,#b3052f 48%,#4d0015 100%);
  border:1px solid rgba(255,255,255,.18);
  color:#fff;
  box-shadow:0 14px 34px rgba(229,9,63,.28);
  white-space:nowrap;
}
.free-report-modal{display:none;position:fixed;inset:0;z-index:99999;align-items:center;justify-content:center;padding:18px;}
body.free-report-modal-open{overflow:hidden;}
body.free-report-modal-open .free-report-modal{display:flex;}
.free-report-modal-backdrop{position:absolute;inset:0;background:rgba(0,0,0,.74);backdrop-filter:blur(7px);}
.free-report-modal-box{position:relative;z-index:2;width:min(560px, calc(100vw - 28px));border-radius:26px;padding:24px;background:linear-gradient(145deg,#15151d,#09090d);border:1px solid rgba(255,255,255,.14);box-shadow:0 35px 110px rgba(0,0,0,.7),0 0 45px rgba(229,9,63,.18);}
.free-report-close{position:absolute;top:12px;right:14px;width:38px;height:38px;border-radius:999px;border:1px solid rgba(255,255,255,.14);background:rgba(255,255,255,.08);color:#fff;font-size:1.7rem;line-height:1;cursor:pointer;}
.free-report-form{display:flex;flex-direction:column;gap:10px;margin-top:14px;}
.free-report-form label{font-weight:800;color:#fff;}
.free-report-form textarea{width:100%;box-sizing:border-box;resize:vertical;min-height:120px;border-radius:18px;border:1px solid rgba(255,255,255,.13);background:rgba(0,0,0,.34);color:#fff;padding:14px;font:inherit;outline:none;}
.free-report-form textarea:focus{border-color:rgba(255,208,67,.55);box-shadow:0 0 0 4px rgba(255,208,67,.12);}
.free-report-alert{margin:12px 0 0;}
.admin-free-reports .admin-page-head{display:flex;align-items:flex-start;justify-content:space-between;gap:16px;margin-bottom:18px;}
.report-filter-tabs{display:flex;gap:10px;flex-wrap:wrap;margin:12px 0 18px;}
.report-filter-tabs .active{filter:brightness(1.16);box-shadow:0 0 0 1px rgba(255,255,255,.2) inset;}
.report-bulk-bar{display:flex;align-items:center;gap:12px;flex-wrap:wrap;margin:0 0 16px;}
.report-bulk-bar select{border-radius:999px;border:1px solid rgba(255,255,255,.14);background:#121218;color:#fff;padding:10px 12px;}
.report-list-admin{display:grid;gap:12px;}
.report-admin-card{display:grid;grid-template-columns:auto 1fr;gap:14px;padding:16px;border-radius:22px;border:1px solid rgba(255,255,255,.11);background:linear-gradient(135deg,rgba(255,255,255,.07),rgba(255,255,255,.025));}
.report-admin-card.resolved{opacity:.72;}
.report-select{padding-top:7px;}
.report-title-row{display:flex;align-items:center;justify-content:space-between;gap:12px;}
.report-title-row h2{margin:0;font-size:1.12rem;}
.report-reason-admin{margin:12px 0;padding:12px 14px;border-radius:16px;background:rgba(0,0,0,.28);border:1px solid rgba(255,255,255,.08);}
.report-links-admin{display:flex;align-items:center;gap:12px;flex-wrap:wrap;}
@media(max-width:760px){.free-report-card{align-items:stretch;flex-direction:column;text-align:center}.free-report-open{width:100%;white-space:normal}.admin-free-reports .admin-page-head{flex-direction:column}.report-title-row{align-items:flex-start;flex-direction:column}.report-admin-card{grid-template-columns:1fr}.report-select{padding-top:0}}

/* Assistir Grátis — correção de cabeçalho fixo e tela cheia */
.free-watch-page.medoplay-free-watch-page{
  padding-top:var(--free-watch-top-offset,22px)!important;
  scroll-margin-top:140px!important;
}
body.free-watch-fixed-header .free-watch-page.medoplay-free-watch-page{
  padding-top:var(--free-watch-top-offset,142px)!important;
}
.free-watch-page .free-player-frame{position:relative!important;}
.free-watch-page .free-player-controls{
  position:absolute!important;
  right:14px!important;
  bottom:14px!important;
  z-index:6!important;
  display:flex!important;
  justify-content:flex-end!important;
  pointer-events:none!important;
}
.free-watch-page .free-fullscreen-btn{
  pointer-events:auto!important;
  display:inline-flex!important;
  align-items:center!important;
  justify-content:center!important;
  gap:8px!important;
  min-height:40px!important;
  padding:10px 14px!important;
  border-radius:999px!important;
  border:1px solid rgba(255,255,255,.18)!important;
  background:linear-gradient(135deg,rgba(255,255,255,.16),rgba(255,255,255,.07))!important;
  color:#fff!important;
  font-weight:900!important;
  font-size:.82rem!important;
  box-shadow:0 14px 36px rgba(0,0,0,.44),0 0 0 1px rgba(0,0,0,.22) inset!important;
  backdrop-filter:blur(10px)!important;
  cursor:pointer!important;
  transition:transform .16s ease,background .16s ease,box-shadow .16s ease!important;
}
.free-watch-page .free-fullscreen-btn:hover,
.free-watch-page .free-fullscreen-btn:focus-visible{
  transform:translateY(-2px)!important;
  background:linear-gradient(135deg,#ffd966,#ff9f1a 56%,#e5093f)!important;
  color:#210700!important;
  box-shadow:0 16px 42px rgba(255,176,0,.32),0 0 0 1px rgba(255,255,255,.2) inset!important;
  outline:none!important;
}
.free-watch-page .free-player-frame:fullscreen,
.free-watch-page .free-player-frame:-webkit-full-screen{
  width:100vw!important;
  height:100vh!important;
  max-width:none!important;
  border-radius:0!important;
  border:0!important;
  background:#000!important;
}
.free-watch-page .free-player-frame:fullscreen iframe,
.free-watch-page .free-player-frame:-webkit-full-screen iframe{
  width:100vw!important;
  height:100vh!important;
}
.free-watch-page .free-player-frame:fullscreen .free-player-controls,
.free-watch-page .free-player-frame:-webkit-full-screen .free-player-controls{
  top:14px!important;
  right:14px!important;
  bottom:auto!important;
  opacity:.28!important;
  transition:opacity .18s ease,transform .18s ease!important;
}
.free-watch-page .free-player-frame:fullscreen .free-player-controls:hover,
.free-watch-page .free-player-frame:-webkit-full-screen .free-player-controls:hover{opacity:1!important;}
.free-watch-page .free-player-frame:fullscreen .free-fullscreen-btn,
.free-watch-page .free-player-frame:-webkit-full-screen .free-fullscreen-btn{
  min-height:34px!important;
  padding:8px 12px!important;
  font-size:.76rem!important;
  background:rgba(0,0,0,.58)!important;
  color:#fff!important;
  box-shadow:0 10px 26px rgba(0,0,0,.42)!important;
}
@media(max-width:520px){
  .free-watch-page .free-player-controls{right:10px!important;bottom:10px!important;}
  .free-watch-page .free-fullscreen-btn{min-height:36px!important;padding:8px 11px!important;font-size:.74rem!important;}
}
