:root{
  --green:#7BCF44;
  --green-dark:#63B033;
  --yellow:#DFBC28;

  --green:#22c55e;
  --green-dark:#16a34a;

  --bg:#EAEAEA;
  --card:#FFFFFF;
  --text:#1E1E1E;
  --muted:#6B6B6B;
  --line:#DCDCDC;
  --header-bg:#FFFFFF;
  --poster-bg:#111111;
}

body.filmdeck-dark{
  --bg:#121216;
  --card:#1B1B20;
  --text:#EDEDF2;
  --muted:#9A9AA6;
  --line:#2A2A32;
  --header-bg:#17171C;
  --poster-bg:#08080A;
}

/* =========================================================
   RESET
   ========================================================= */

*{
  margin:0;
  padding:0;
  box-sizing:border-box;
}

html{
  width:100%;
  max-width:100%;
  overflow-x:hidden;
}

body{
  width:100%;
  max-width:100%;
  overflow-x:hidden;

  font-family:'Inter',-apple-system,BlinkMacSystemFont,sans-serif;
  background:var(--bg);
  color:var(--text);

  transition:
    background .2s ease,
    color .2s ease;
}

a{
  color:inherit;
  text-decoration:none;
}

img{
  display:block;
  max-width:100%;
}

ul{
  list-style:none;
}

h1,
h2,
h3,
h4{
  font-family:'Poppins',sans-serif;
}


/* =========================================================
   MAIN 1100px CONTAINER
   ========================================================= */

.wrap{
  width:100%;
  max-width:100%;

  margin-left:auto;
  margin-right:auto;

  padding-left:16px;
  padding-right:16px;

  box-sizing:border-box;
}


/* =========================================================
   HEADER
   ========================================================= */

.site-header{
  width:100%;
  background:var(--header-bg);

  border-bottom:1px solid var(--line);

  position:sticky;
  top:0;
  z-index:60;
}

.header-inner{
  width:1100px;
  max-width:calc(100% - 32px);

  margin-left:auto;
  margin-right:auto;

  padding:14px 16px;

  display:flex;
  align-items:center;

  gap:22px;

  box-sizing:border-box;
}


/* LOGO */

.logo{
  display:flex;
  flex-direction:column;

  line-height:1.05;

  flex:0 0 auto;
  min-width:0;
}

.logo-name{
  font-family:'Poppins',sans-serif;

  font-weight:800;
  font-size:1.6rem;

  letter-spacing:-.5px;

  white-space:nowrap;
}

.logo-name .accent{
  color:var(--green);
}

.logo-tag{
  font-size:.66rem;
  color:var(--muted);

  letter-spacing:.2px;

  white-space:nowrap;
}

.logo img.custom-logo{
  max-height:46px;
  width:auto;
}


/* NAVIGATION */

.main-nav{
  flex:0 1 auto;
  min-width:0;
}

.main-nav ul{
  display:flex;
  align-items:center;

  gap:3px;
}

.main-nav a{
  position:relative;

  display:inline-block;

  padding:10px 11px;

  color:var(--text);

  font-size:.88rem;
  font-weight:600;

  letter-spacing:.2px;
  text-transform:uppercase;

  transition:color .2s ease;
}

.main-nav a::after{
  content:"";

  position:absolute;

  left:11px;
  right:11px;

  bottom:3px;

  height:2px;

  border-radius:10px;

  background:var(--green);

  transform:scaleX(0);
  transform-origin:center;

  transition:transform .25s ease;
}

.main-nav a:hover{
  color:var(--green);
}

.main-nav a:hover::after,
.main-nav li.current-menu-item > a::after{
  transform:scaleX(1);
}

.main-nav li.current-menu-item > a,
.main-nav li.fd-active > a{
  color:var(--green);
}

.main-nav li.fd-active > a::after{
  transform:scaleX(1);
}


/* =========================================================
   HEADER SEARCH
   ========================================================= */

.header-search{
  margin-left:auto;

  position:relative;

  flex:0 0 auto;
}

.header-search input{
  width:250px;
  height:40px;

  padding:0 16px 0 42px;

  background:var(--card);

  border:1px solid var(--line);
  border-radius:25px;

  color:var(--text);

  font-family:inherit;
  font-size:.88rem;

  outline:none;

  transition:
    border-color .2s ease,
    box-shadow .2s ease;
}

.header-search input::placeholder{
  color:var(--muted);
}

.header-search input:focus{
  border-color:var(--green);

  box-shadow:
    0 0 0 3px rgba(34,197,94,.10);
}


/* SEARCH ICON */

.search-icon{
  position:absolute;

  left:14px;
  top:50%;

  width:14px;
  height:14px;

  border:2px solid #777;
  border-radius:50%;

  transform:translateY(-60%);

  pointer-events:none;
}

.search-icon::after{
  content:"";

  position:absolute;

  width:6px;
  height:2px;

  background:#777;

  right:-5px;
  bottom:-3px;

  transform:rotate(45deg);

  border-radius:2px;
}

body.filmdeck-dark .search-icon{
  border-color:#aaa;
}

body.filmdeck-dark .search-icon::after{
  background:#aaa;
}

body.filmdeck-dark .header-search input{
  background:#1B1B22;
  border-color:#30303A;
  color:#fff;
}


/* =========================================================
   HEADER ICONS
   ========================================================= */

.header-icons{
  display:flex;
  align-items:center;

  gap:9px;

  flex:0 0 auto;
}

.header-icons button{
  background:none;
  border:0;

  cursor:pointer;

  color:var(--muted);
}

.header-icons button:hover{
  color:var(--green);
}


/* =========================================================
   THEME TOGGLE
   ========================================================= */

#filmdeckThemeToggle{
  position:relative;

  width:52px !important;
  height:30px !important;

  padding:0 !important;

  border:1px solid #D8D8DC !important;
  border-radius:30px !important;

  background:#EEEEF1 !important;

  display:block !important;

  flex:0 0 52px;

  overflow:hidden;

  cursor:pointer;

  transition:all .25s ease;
}

#filmdeckThemeToggle .theme-icon{
  position:absolute;

  width:24px;
  height:24px;

  left:3px;
  top:2px;

  border-radius:50%;

  background:#fff;

  box-shadow:
    0 1px 4px rgba(0,0,0,.18);

  transition:left .25s ease;
}

#filmdeckThemeToggle .theme-icon::after{
  content:"";

  position:absolute;

  width:11px;
  height:11px;

  left:7px;
  top:7px;

  background:#B8B8BD;

  border-radius:50%;
}

body.filmdeck-dark #filmdeckThemeToggle{
  background:var(--green) !important;
  border-color:var(--green) !important;
}

body.filmdeck-dark #filmdeckThemeToggle .theme-icon{
  left:25px;
}

body.filmdeck-dark #filmdeckThemeToggle .theme-icon::after{
  background:var(--green);
}

#filmdeckThemeToggle:hover{
  box-shadow:
    0 3px 12px rgba(34,197,94,.25);
}


/* =========================================================
   HAMBURGER
   ========================================================= */

.menu-toggle{
  display:none;

  width:36px;
  height:36px;

  min-width:36px;

  align-items:center;
  justify-content:center;

  padding:0;
  margin:0;

  border:0;
  background:none;

  cursor:pointer;
}


/* =========================================================
   HERO
   ========================================================= */

.hero{
  position:relative;

  width:1100px;
  max-width:calc(100% - 32px);

  margin:18px auto 0;

  overflow:hidden;

  background:#000;

  border-radius:14px;

  box-shadow:
    0 10px 30px rgba(0,0,0,.14);
}

.hero-track{
  display:flex;

  transition:
    transform .5s ease;
}

.hero-slide{
  min-width:100%;

  position:relative;

  aspect-ratio:21/8;

  background-size:cover;
  background-position:center;

  display:flex;
  align-items:center;
}

.hero-slide svg{
  position:absolute;

  inset:0;

  width:100%;
  height:100%;
}

.hero-slide::after{
  content:"";

  position:absolute;

  inset:0;

  background:
    linear-gradient(
      90deg,
      rgba(0,0,0,.65),
      rgba(0,0,0,.08)
    );
}

.hero-caption{
  position:relative;

  z-index:2;

  max-width:620px;

  margin-left:5%;

  padding:25px 28px;

  color:#fff;

  background:rgba(0,0,0,.42);

  border-radius:10px;
}

.hero-caption h2{
  font-size:2rem;

  font-weight:700;

  margin-bottom:10px;
}

.hero-caption p{
  font-size:.95rem;

  line-height:1.55;

  color:#E4E4E4;

  margin-bottom:18px;
}

.btn-green{
  display:inline-block;

  background:var(--green);

  color:#fff;

  font-family:'Poppins',sans-serif;

  font-weight:600;

  font-size:.92rem;

  padding:11px 24px;

  border-radius:7px;

  border:0;

  cursor:pointer;

  transition:
    background .2s ease,
    transform .2s ease;
}

.btn-green:hover{
  background:var(--green-dark);

  transform:translateY(-1px);
}

.hero-dots{
  position:absolute;

  bottom:16px;
  left:0;
  right:0;

  display:flex;
  justify-content:center;

  gap:8px;

  z-index:3;
}

.hero-dots button{
  width:34px;
  height:3px;

  border:0;

  background:rgba(255,255,255,.45);

  cursor:pointer;
}

.hero-dots button.active{
  background:#fff;
}


/* =========================================================
   NOTICE
   ========================================================= */

.notice-strip{
  width:1100px;
  max-width:calc(100% - 32px);

  margin:12px auto 0;

  padding:14px 18px;

  background:var(--card);

  color:var(--text);

  font-size:.92rem;

  border:1px solid var(--line);

  border-radius:9px;

  box-sizing:border-box;
}


/* =========================================================
   SECTION
   ========================================================= */

.section-header{
  display:flex;

  align-items:center;
  justify-content:space-between;

  margin:28px 0 16px;
}

.section-label{
  display:inline-block;

  background:var(--green);

  color:#fff;

  font-family:'Poppins',sans-serif;

  font-weight:600;

  font-size:.95rem;

  padding:9px 18px;

  border-radius:6px;

  margin:26px 0 16px;
}

.section-header .section-label{
  margin:0;
}

.section-header .view-more{
  color:var(--green);

  font-family:'Poppins',sans-serif;

  font-weight:600;

  font-size:.9rem;

  transition:color .2s ease;
}

.section-header .view-more:hover{
  color:var(--green-dark);

  text-decoration:underline;
}


/* =========================================================
   POSTER GRID
   ========================================================= */

.poster-grid{
  width:100%;

  display:grid;

  grid-template-columns:repeat(6,1fr);

  gap:16px;
}


/* POSTER CARD */

.poster-card{
  position:relative;

  display:block;

  overflow:hidden;

  background:var(--poster-bg);

  aspect-ratio:2/3;

  border-radius:9px;

  box-shadow:
    0 5px 15px rgba(0,0,0,.10);

  transition:
    transform .25s ease,
    box-shadow .25s ease;
}

.poster-card img{
  width:100%;
  height:100%;

  object-fit:cover;

  transition:
    transform .35s ease;
}

.poster-card:hover{
  transform:translateY(-6px);

  box-shadow:
    0 12px 28px rgba(0,0,0,.20);
}

.poster-card:hover img{
  transform:scale(1.045);
}


/* HOVER OVERLAY */

.poster-card::after{
  content:"";

  position:absolute;

  inset:0;

  pointer-events:none;

  background:
    linear-gradient(
      180deg,
      rgba(34,197,94,0),
      rgba(34,197,94,.16)
    );

  opacity:0;

  transition:opacity .25s ease;

  z-index:2;
}

.poster-card:hover::after{
  opacity:1;
}


/* PLAY BUTTON */

.poster-play{
  position:absolute;

  inset:0;

  display:flex;

  align-items:center;
  justify-content:center;

  opacity:0;

  transition:opacity .2s ease;

  z-index:4;
}

.poster-card:hover .poster-play{
  opacity:1;
}

.poster-play span{
  width:58px;
  height:58px;

  display:flex;

  align-items:center;
  justify-content:center;

  border-radius:50%;

  background:var(--green);

  color:#fff;

  font-size:1.35rem;

  padding-left:4px;

  box-shadow:
    0 8px 25px rgba(0,0,0,.28);
}


/* TITLE */

.poster-title{
  position:absolute;

  left:0;
  right:0;
  bottom:0;

  z-index:5;

  padding:28px 7px 10px;

  color:#fff;

  text-align:center;

  font-size:.82rem;

  font-weight:600;

  line-height:1.25;

  background:
    linear-gradient(
      0deg,
      rgba(0,0,0,.94),
      rgba(0,0,0,0)
    );
}


/* QUALITY */

.badge-quality{
  position:absolute;

  top:8px;
  right:8px;

  z-index:6;

  background:var(--yellow);

  color:#1E1E1E;

  font-size:.68rem;

  font-weight:800;

  padding:4px 7px;

  border-radius:4px;
}


/* EPISODES */

.badge-eps{
  position:absolute;

  top:8px;
  right:8px;

  z-index:6;

  width:35px;
  height:35px;

  display:flex;

  flex-direction:column;

  align-items:center;
  justify-content:center;

  background:var(--green);

  color:#fff;

  font-size:.64rem;

  font-weight:700;

  line-height:1;

  border-radius:50%;
}

.badge-eps small{
  font-size:.5rem;

  opacity:.85;
}


/* =========================================================
   PAGINATION
   ========================================================= */

.load-more-wrap{
  text-align:center;

  padding:26px 0 10px;
}

.load-more,
.filmdeck-pagination a,
.filmdeck-pagination span{
  display:inline-block;

  background:var(--green);

  color:#fff;

  font-family:'Poppins',sans-serif;

  font-weight:600;

  font-size:.9rem;

  padding:10px 25px;

  border-radius:6px;

  border:0;

  cursor:pointer;

  margin:0 3px;

  transition:
    background .2s ease,
    transform .2s ease;
}

.load-more:hover,
.filmdeck-pagination a:hover{
  background:var(--green-dark);

  transform:translateY(-1px);
}

.filmdeck-pagination{
  text-align:center;

  padding:25px 0;
}

.filmdeck-pagination span.current{
  background:var(--green-dark);
}


/* =========================================================
   BREADCRUMB
   ========================================================= */

.breadcrumb{
  padding:16px 0 10px;

  font-size:.88rem;

  color:var(--muted);
}

.breadcrumb a{
  color:var(--text);

  transition:color .2s ease;
}

.breadcrumb a:hover{
  color:var(--green);
}


/* =========================================================
   SINGLE MOVIE PAGE
   ========================================================= */

.wrap > h1{
  font-size:clamp(28px,3.4vw,42px);

  line-height:1.15;

  font-weight:800;

  letter-spacing:-.5px;

  margin:4px 0 22px;
}


/* MAIN MOVIE CARD */

.movie-main-section{
  width:100%;

  margin:0 0 32px;

  padding:0;

  background:var(--card);

  border:1px solid var(--line);

  border-radius:14px;

  overflow:hidden;

  box-shadow:
    0 10px 35px rgba(0,0,0,.10);
}


/* VIDEO */

.movie-main-section > .trailer-embed{
  position:relative;

  width:100%;

  margin:0 0 22px;

  padding:0;

  overflow:hidden;

  background:#000;

  border-radius:12px;

  line-height:0;
}

.movie-main-section >
.trailer-embed:not(.trailer-custom){
  aspect-ratio:16/9;
}

.movie-main-section >
.trailer-embed:not(.trailer-custom) iframe{
  position:absolute;

  inset:0;

  width:100%;
  height:100%;

  border:0;

  display:block;
}


/* CUSTOM VIDEO */

.movie-main-section >
.trailer-embed.trailer-custom{
  height:auto !important;

  min-height:0 !important;

  padding:0 !important;

  margin:0 0 22px !important;
}

.movie-main-section >
.trailer-embed.trailer-custom > div,
.movie-main-section >
.trailer-embed.trailer-custom > p{
  width:100% !important;

  max-width:100% !important;

  height:auto !important;

  min-height:0 !important;

  margin:0 !important;

  padding:0 !important;

  line-height:0 !important;
}

.movie-main-section >
.trailer-embed.trailer-custom iframe{
  position:relative !important;

  inset:auto !important;

  display:block !important;

  width:100% !important;

  max-width:100% !important;

  height:538px !important;

  min-height:0 !important;

  margin:0 !important;

  padding:0 !important;

  border:0 !important;

  vertical-align:top !important;
}


/* =========================================================
   MOVIE INFORMATION
   ========================================================= */

.movie-main-section > .movie-info-section{
  width:100%;

  padding:26px;

  background:var(--card);

  border-top:1px solid var(--line);

  box-sizing:border-box;
}

.movie-info-flex{
  display:flex;

  flex-direction:row;

  align-items:flex-start;

  gap:26px;

  width:100%;
}


/* POSTER */

.movie-poster-box{
  width:190px;

  flex:0 0 190px;

  max-width:190px;

  overflow:hidden;

  border-radius:11px;

  background:var(--poster-bg);

  box-shadow:
    0 10px 28px rgba(0,0,0,.16);
}

.movie-poster-box img{
  display:block;

  width:100%;
  height:auto;

  transition:transform .3s ease;
}

.movie-poster-box:hover img{
  transform:scale(1.025);
}


/* DETAILS */

.movie-details-content{
  flex:1 1 auto;

  min-width:0;
}

.movie-description{
  margin:0 0 18px;

  padding:0 0 18px;

  color:var(--muted);

  font-size:15px;

  line-height:1.8;

  border-bottom:1px solid var(--line);
}

.movie-description p{
  margin:0 0 12px;
}

.movie-description p:last-child{
  margin-bottom:0;
}


/* META */

.movie-meta-list{
  list-style:none !important;

  margin:0 0 18px !important;

  padding:0 !important;
}

.movie-meta-list li{
  margin:0 0 8px !important;

  padding:0 0 8px !important;

  color:var(--muted);

  font-size:14px;

  line-height:1.6;

  border-bottom:1px solid var(--line);
}

.movie-meta-list li:last-child{
  border-bottom:0;
}

.movie-meta-list strong{
  color:var(--text);

  font-weight:700;
}


/* WATCH BUTTON */

.movie-watch-button{
  display:inline-flex !important;

  align-items:center;
  justify-content:center;

  min-height:46px;

  margin-top:5px;

  padding:0 24px;

  background:var(--green);

  border:1px solid var(--green);

  border-radius:9px;

  color:#fff !important;

  font-size:14px;

  font-weight:700;

  box-shadow:
    0 7px 20px rgba(34,197,94,.25);

  transition:
    background .2s ease,
    transform .2s ease,
    box-shadow .2s ease;
}

.movie-watch-button:hover{
  background:var(--green-dark);

  border-color:var(--green-dark);

  transform:translateY(-2px);

  box-shadow:
    0 10px 25px rgba(22,163,74,.32);
}


/* =========================================================
   RELATED MOVIES
   ========================================================= */

.movie-related-section{
  width:100%;

  margin:30px 0 40px;

  padding:0;

  clear:both;
}

.movie-related-section .section-label{
  display:block;

  position:relative;

  width:max-content;

  max-width:100%;

  background:transparent;

  color:var(--text);

  padding:0 0 0 13px;

  margin:8px 0 18px;

  font-size:21px;

  font-weight:800;

  line-height:1.35;
}

.movie-related-section .section-label::before{
  content:"";

  position:absolute;

  left:0;
  top:2px;
  bottom:2px;

  width:4px;

  border-radius:5px;

  background:var(--green);
}


/* =========================================================
   OLD TITLE HERO / DETAIL SUPPORT
   ========================================================= */

.title-hero{
  position:relative;

  width:100%;

  overflow:hidden;

  background:#000;

  border-radius:10px;

  aspect-ratio:16/7;

  background-size:cover;

  background-position:center;
}

.title-hero img{
  width:100%;
  height:100%;

  object-fit:cover;
}

.detail-card{
  background:var(--card);

  border:1px solid var(--line);

  border-radius:10px;

  padding:24px;

  margin-top:0;
}

.detail-grid{
  display:grid;

  grid-template-columns:180px 1fr 230px;

  gap:24px;

  align-items:start;
}

.detail-poster{
  overflow:hidden;

  border-radius:8px;

  background:var(--poster-bg);

  aspect-ratio:2/3;
}

.detail-poster img{
  width:100%;
  height:100%;

  object-fit:cover;
}

.detail-main h1{
  font-size:1.75rem;

  margin-bottom:10px;
}

.detail-synopsis{
  font-size:.95rem;

  line-height:1.65;

  color:var(--text);

  margin-bottom:16px;
}

.detail-facts li{
  font-size:.94rem;

  margin-bottom:8px;
}

.detail-facts a{
  color:var(--green);
}

.detail-side{
  display:flex;

  flex-direction:column;

  gap:10px;
}

.entry-body{
  background:var(--card);

  border:1px solid var(--line);

  border-radius:10px;

  padding:24px;

  margin-top:18px;

  line-height:1.8;
}

.entry-body p{
  margin-bottom:16px;
}

.entry-body h2,
.entry-body h3{
  margin:24px 0 12px;
}

.entry-body ul{
  list-style:disc;

  padding-left:22px;

  margin-bottom:16px;
}

.entry-body img{
  border-radius:7px;

  margin:8px 0;
}


/* =========================================================
   FOOTER
   ========================================================= */

.site-footer{
  width:100%;

  background:var(--card);

  border-top:3px solid var(--green);

  margin-top:40px;
}

.footer-inner{
  width:1100px;

  max-width:calc(100% - 32px);

  margin-left:auto;
  margin-right:auto;

  padding:36px 16px 44px;

  display:grid;

  grid-template-columns:2fr 1fr;

  gap:36px;

  box-sizing:border-box;
}

.site-footer h4{
  font-size:.95rem;

  margin-bottom:12px;

  display:inline-block;

  border-bottom:2px solid var(--green);

  padding-bottom:5px;
}

.site-footer p{
  color:var(--muted);

  font-size:.88rem;

  line-height:1.7;
}

.footer-credits{
  border-top:1px solid var(--line);

  padding:16px;

  text-align:center;

  color:var(--muted);

  font-size:.82rem;
}


/* =========================================================
   DARK MODE
   ========================================================= */

body.filmdeck-dark .poster-card{
  box-shadow:
    0 7px 20px rgba(0,0,0,.30);
}

body.filmdeck-dark .movie-main-section{
  border-color:rgba(34,197,94,.18);

  box-shadow:
    0 12px 35px rgba(0,0,0,.30);
}

body.filmdeck-dark .notice-strip{
  border-color:#2A2A32;
}


/* =========================================================
   TABLET
   ========================================================= */

@media (max-width:1100px){

  .poster-grid{
    grid-template-columns:repeat(6, 1fr);
  }

  .header-inner{
    gap:14px;
  }

  .header-search input{
    width:210px;
  }

  .main-nav a{
    padding-left:8px;
    padding-right:8px;
    font-size:.82rem;
  }
}


/* =========================================================
   900px
   ========================================================= */

@media (max-width:900px){

  .main-nav{
    display:none;
  }

  .menu-toggle{
    display:flex;
  }

  .header-search{
    margin-left:auto;
  }

  .header-search input{
    width:180px;
  }

  .poster-grid{
    grid-template-columns:repeat(4,1fr);
  }

  .detail-grid{
    grid-template-columns:140px 1fr;
  }

  .detail-side{
    grid-column:1 / -1;
  }

  .footer-inner{
    grid-template-columns:1fr;
  }

  .hero-slide{
    aspect-ratio:16/9;
  }

  .hero-caption{
    margin-left:4%;

    max-width:55%;

    padding:18px 20px;
  }

  .hero-caption h2{
    font-size:1.35rem;
  }
}


/* =========================================================
   700px MOBILE
   ========================================================= */

@media (max-width:700px){

  .wrap{
    width:calc(100% - 20px);

    max-width:none;

    padding-left:10px;
    padding-right:10px;
  }

  /* HEADER */

  .header-inner{
    width:100%;

    max-width:100%;

    padding:9px 10px;

    gap:7px;
  }

  .logo{
    flex:1 1 auto;

    min-width:0;
  }

  .logo-name{
    font-size:1.25rem;

    white-space:nowrap;

    overflow:hidden;

    text-overflow:ellipsis;
  }

  .logo-tag{
    font-size:.55rem;

    white-space:nowrap;

    overflow:hidden;
  }

  .header-search{
    margin-left:auto;

    flex:0 0 auto;
  }

  .header-search input{
    width:36px !important;
    height:36px !important;

    padding:0 !important;

    font-size:0;

    border-radius:50% !important;
  }

  .search-icon{
    left:50%;

    transform:translate(-50%,-60%);
  }

  .header-icons{
    gap:5px;

    flex:0 0 auto;
  }

  #filmdeckThemeToggle{
    width:40px !important;
    min-width:40px !important;
    max-width:40px !important;

    height:24px !important;

    flex:0 0 40px;
  }

  #filmdeckThemeToggle .theme-icon{
    width:18px;
    height:18px;

    left:3px;
    top:2px;
  }

  body.filmdeck-dark #filmdeckThemeToggle .theme-icon{
    left:19px;
  }

  #filmdeckThemeToggle .theme-icon::after{
    width:9px;
    height:9px;

    left:5px;
    top:5px;
  }

  .menu-toggle{
    display:flex;

    width:34px;
    height:34px;

    min-width:34px;
  }


  /* HERO */

  .hero{
    width:calc(100% - 20px);

    max-width:none;

    margin-top:10px;

    border-radius:10px;
  }

  .hero-slide{
    aspect-ratio:16/10;
  }

  .hero-caption{
    max-width:72%;

    margin-left:3%;

    padding:13px 15px;

    border-radius:7px;
  }

  .hero-caption h2{
    font-size:1.1rem;

    margin-bottom:6px;
  }

  .hero-caption p{
    font-size:.75rem;

    margin-bottom:10px;

    line-height:1.4;
  }

  .btn-green{
    font-size:.75rem;

    padding:8px 14px;
  }


  /* NOTICE */

  .notice-strip{
    width:calc(100% - 20px);

    max-width:none;

    margin-top:10px;

    padding:11px 13px;

    font-size:.82rem;
  }


  /* SECTIONS */

  .section-label{
    font-size:.88rem;

    padding:8px 14px;

    margin:20px 0 13px;
  }

  .section-header{
    margin:20px 0 13px;
  }

  .section-header .view-more{
    font-size:.78rem;
  }


  /* POSTERS */

  .poster-grid{
    grid-template-columns:repeat(3,1fr);

    gap:11px;
  }

  .poster-card{
    border-radius:7px;
  }

  .poster-title{
    font-size:.72rem;

    padding:23px 5px 7px;
  }

  .poster-play span{
    width:45px;
    height:45px;

    font-size:1.1rem;
  }


  /* MOVIE PAGE */

  .wrap > h1{
    font-size:27px;

    margin-bottom:17px;
  }

  .movie-main-section{
    border-radius:10px;

    margin-bottom:25px;
  }

  .movie-main-section >
  .trailer-embed{
    margin-bottom:16px;

    border-radius:9px;
  }

  .movie-main-section >
  .trailer-embed.trailer-custom iframe{
    height:56.25vw !important;

    min-height:210px !important;

    max-height:420px !important;
  }

  .movie-main-section >
  .movie-info-section{
    padding:20px;
  }

  .movie-info-flex{
    flex-direction:column;

    gap:20px;
  }

  .movie-poster-box{
    width:170px;

    max-width:170px;

    flex:0 0 auto;

    margin:0 auto;
  }

  .movie-details-content{
    width:100%;
  }

  .movie-description{
    font-size:14px;

    line-height:1.75;
  }

  .movie-watch-button{
    width:100%;
  }

  .movie-related-section .section-label{
    font-size:19px;
  }


  /* OLD DETAIL PAGE */

  .detail-grid{
    grid-template-columns:1fr;
  }

  .detail-poster{
    width:170px;

    margin:0 auto;
  }

  .detail-side{
    grid-column:auto;
  }


  /* FOOTER */

  .footer-inner{
    width:100%;

    max-width:100%;

    padding:28px 20px 34px;

    grid-template-columns:1fr;

    gap:25px;
  }
}


/* =========================================================
   VERY SMALL PHONES
   ========================================================= */

@media (max-width:430px){

  .wrap{
    width:calc(100% - 16px);

    padding-left:8px;
    padding-right:8px;
  }

  .header-inner{
    padding-left:8px;
    padding-right:8px;

    gap:5px;
  }

  .logo-name{
    font-size:1.12rem;
  }

  .logo-tag{
    display:none;
  }

  .header-search input{
    width:33px !important;
    height:33px !important;
  }

  .header-icons{
    gap:4px;
  }

  #filmdeckThemeToggle{
    width:38px !important;
    min-width:38px !important;
    max-width:38px !important;

    height:23px !important;

    flex-basis:38px;
  }

  #filmdeckThemeToggle .theme-icon{
    width:17px;
    height:17px;

    left:3px;
    top:3px;
  }

  body.filmdeck-dark #filmdeckThemeToggle .theme-icon{
    left:18px;
  }

  .menu-toggle{
    width:32px;
    height:32px;

    min-width:32px;
  }

  .hero{
    width:calc(100% - 16px);
  }

  .hero-caption{
    max-width:78%;

    padding:10px 12px;
  }

  .hero-caption h2{
    font-size:.95rem;
  }

  .hero-caption p{
    display:none;
  }

  .poster-grid{
    grid-template-columns:repeat(2,1fr);

    gap:10px;
  }

  .movie-main-section >
  .movie-info-section{
    padding:17px;
  }

  .movie-poster-box{
    width:165px;

    max-width:165px;
  }
}


/* =========================================================
   PREVENT HORIZONTAL OVERFLOW
   ========================================================= */

.site-header,
.site-footer,
.hero,
.notice-strip,
.wrap,
.header-inner,
.footer-inner{
  box-sizing:border-box;
}
.sr-only{
  position:absolute;width:1px;height:1px;padding:0;margin:-1px;
  overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;
}

/* Homepage only: use the full desktop width instead of the site's
   normal 1100px-capped container. Other pages (single post, category,
   suggestions, search) are untouched. */
.fd-home-page{
  width:100%;
  max-width:100%;
  padding-left:32px;
  padding-right:32px;
  box-sizing:border-box;
}
@media(max-width:768px){
  .fd-home-page{
    padding-left:14px;
    padding-right:14px;
  }
}

/* FINAL USER WIDTH/STYLE FIX */
.fd-home-page,.fd-category-page{width:100%!important;max-width:100%!important;box-sizing:border-box!important}
.fd-home-page .section-label,.fd-category-page .section-label{font-size:18px!important;line-height:1.3!important;font-weight:700!important;padding:7px 14px!important;margin:18px 0 14px!important}
.fd-movie-page{width:1000px!important;max-width:calc(100% - 48px)!important;margin-left:auto!important;margin-right:auto!important;box-sizing:border-box!important}
.fd-movie-page>*{max-width:100%!important;box-sizing:border-box!important}
:root{--accent:#22c55e!important;--accent-2:#16a34a!important;--accent-dark:#15803d!important}
.main-nav a:hover,.nav-links a:hover{color:#22c55e!important}
.main-nav a::after,.nav-links a::after{background:#22c55e!important}
.section-label,.badge,.category-pill{background:#22c55e!important;border-color:#22c55e!important}
button:hover,.fd-btn:hover,.download-button:hover,.search-submit:hover,.pagination a:hover,.pagination .current{background:#22c55e!important;border-color:#22c55e!important}
@media(max-width:1048px){.fd-movie-page{width:calc(100% - 48px)!important;max-width:calc(100% - 48px)!important}}
@media(max-width:700px){.fd-movie-page{width:calc(100% - 24px)!important;max-width:calc(100% - 24px)!important}.fd-home-page .section-label,.fd-category-page .section-label{font-size:17px!important}}


/* Category pages: true full-width layout on desktop and mobile */
.wrap.fd-category-page {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 16px !important;
  padding-right: 16px !important;
  box-sizing: border-box !important;
}
@media (max-width: 700px) {
  .wrap.fd-category-page {
    width: 100% !important;
    max-width: 100% !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
}


/* FINAL FIX: full-width layout + green theme */
.wrap,
.wrap.fd-category-page {
  width: 100% !important;
  max-width: 100% !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  box-sizing: border-box !important;
}

@media (max-width: 700px) {
  .wrap,
  .wrap.fd-category-page {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 10px !important;
    padding-right: 10px !important;
  }
}

@media (max-width: 430px) {
  .wrap,
  .wrap.fd-category-page {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 8px !important;
    padding-right: 8px !important;
  }
}


/* FINAL POSTER SIZE ADJUSTMENT */
.poster-grid {
  gap: 14px !important;
}

.poster-card,
.poster-item {
  min-width: 0;
}

.poster-card img,
.poster-item img {
  width: 100%;
  height: auto;
}


/* =========================================================
   FINAL LAYOUT SIZE ADJUSTMENTS
   ========================================================= */

/* Posters: smaller width + height */
.poster-card img,
.poster-item img {
  aspect-ratio: 2 / 3 !important;
  height: auto !important;
}

/* Keep the poster grid compact */
.poster-grid {
  gap: 12px !important;
}

/* Make section labels a little larger */
.fd-home-page .section-label,
.fd-category-page .section-label {
  font-size: 20px !important;
  line-height: 1.25 !important;
  padding: 10px 14px !important;
}

/* Single post/movie page: reduce the content area's maximum width */
.fd-movie-page {
  width: 900px !important;
  max-width: calc(100% - 32px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

@media (max-width: 700px) {
  .fd-movie-page {
    width: 100% !important;
    max-width: calc(100% - 20px) !important;
  }

  .fd-home-page .section-label,
  .fd-category-page .section-label {
    font-size: 18px !important;
    padding: 9px 12px !important;
  }
}

@media (max-width: 430px) {
  .fd-movie-page {
    max-width: calc(100% - 16px) !important;
  }
}


/* =========================================================
   FINAL V2 SIZE ADJUSTMENT
   ========================================================= */

/* Posters: smaller than previous version */
.poster-grid {
  gap: 10px !important;
}

.poster-card img,
.poster-item img {
  max-width: 100% !important;
  aspect-ratio: 2 / 3 !important;
}

/* Single post page: wider than the previous 900px,
   but still contained rather than full-screen */
.fd-movie-page {
  width: 1020px !important;
  max-width: calc(100% - 32px) !important;
  margin-left: auto !important;
  margin-right: auto !important;
  box-sizing: border-box !important;
}

@media (max-width: 700px) {
  .fd-movie-page {
    width: 100% !important;
    max-width: calc(100% - 20px) !important;
  }
}

@media (max-width: 430px) {
  .fd-movie-page {
    max-width: calc(100% - 16px) !important;
  }
}


/* =========================================================
   POSTER SIZE V3 — noticeably smaller
   ========================================================= */

/* Desktop: 8 posters per row instead of 6 */
.poster-grid {
  grid-template-columns: repeat(8, minmax(0, 1fr)) !important;
  gap: 10px !important;
}

.poster-card {
  width: 100% !important;
  aspect-ratio: 2 / 3 !important;
}

.poster-card img,
.poster-item img {
  width: 100% !important;
  height: 100% !important;
  aspect-ratio: 2 / 3 !important;
  object-fit: cover !important;
}

/* Tablet: 6 per row */
@media (max-width: 1100px) and (min-width: 701px) {
  .poster-grid {
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    gap: 9px !important;
  }
}

/* Mobile: keep existing responsive sizes */
@media (max-width: 700px) {
  .poster-grid {
    grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
    gap: 9px !important;
  }
}

@media (max-width: 520px) {
  .poster-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 9px !important;
  }
}

@media (max-width: 430px) {
  .poster-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 8px !important;
  }
}


/* =========================================================
   YOU MAY ALSO LIKE — LARGER POSTERS
   ========================================================= */

.fd-movie-page .related-posts .poster-grid,
.fd-movie-page .you-may-also-like .poster-grid,
.fd-movie-page .related-grid {
  grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
  gap: 14px !important;
}

.fd-movie-page .related-posts .poster-card,
.fd-movie-page .you-may-also-like .poster-card,
.fd-movie-page .related-grid .poster-card {
  width: 100% !important;
}

@media (max-width: 700px) {
  .fd-movie-page .related-posts .poster-grid,
  .fd-movie-page .you-may-also-like .poster-grid,
  .fd-movie-page .related-grid {
    grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
    gap: 10px !important;
  }
}


/* =========================================================
   SINGLE POST FINAL ADJUSTMENT
   Breadcrumb = fixed green
   Single post content = slightly wider
   ========================================================= */

/* Breadcrumb links/text */
.fd-movie-page .post-breadcrumb,
.fd-movie-page .post-breadcrumb a,
.fd-movie-page .breadcrumb,
.fd-movie-page .breadcrumb a {
    color: #22c55e !important;
}

.fd-movie-page .post-breadcrumb a:hover,
.fd-movie-page .breadcrumb a:hover {
    color: #16a34a !important;
}

/* Single post area: wider than the previous 950px,
   but still clearly contained rather than full-screen. */
.fd-movie-page {
    width: 1050px !important;
    max-width: calc(100% - 48px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

@media (max-width: 1098px) {
    .fd-movie-page {
        width: calc(100% - 48px) !important;
        max-width: calc(100% - 48px) !important;
    }
}

@media (max-width: 700px) {
    .fd-movie-page {
        width: calc(100% - 24px) !important;
        max-width: calc(100% - 24px) !important;
    }
}


/* =========================================================
   YOU MAY ALSO LIKE — LARGER POSTERS
   Only the related-movie posters are affected.
   ========================================================= */

.fd-movie-page .fd-movie-related .poster-grid {
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 20px !important;
}

.fd-movie-page .fd-movie-related .poster-card img,
.fd-movie-page .fd-movie-related .poster-card .poster-thumb {
    width: 100% !important;
    height: auto !important;
    min-height: 0 !important;
    object-fit: cover !important;
}

@media (max-width: 900px) {
    .fd-movie-page .fd-movie-related .poster-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 16px !important;
    }
}

@media (max-width: 650px) {
    .fd-movie-page .fd-movie-related .poster-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 14px !important;
    }
}

@media (max-width: 430px) {
    .fd-movie-page .fd-movie-related .poster-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
    }
}


/* Suggestions page — smaller heading */
.fd-suggestions-page .section-label,
.fd-suggestions-page h1.section-label,
.fd-suggestions-page h2.section-label {
    font-size: 18px !important;
    line-height: 1.3 !important;
    padding: 7px 14px !important;
    margin: 18px 0 14px !important;
    font-weight: 700 !important;
}

@media (max-width: 600px) {
    .fd-suggestions-page .section-label,
    .fd-suggestions-page h1.section-label,
    .fd-suggestions-page h2.section-label {
        font-size: 17px !important;
        padding: 6px 12px !important;
    }
}

/* FINAL: You May Also Like stays full-width, but keep the
   previous poster size. The section remains full browser width;
   only the related poster grid is kept at the previous content width. */
.fd-movie-page .fd-movie-related .poster-grid {
    width: 1050px !important;
    max-width: 1050px !important;
    grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    gap: 20px !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}

@media (max-width: 1098px) {
    .fd-movie-page .fd-movie-related .poster-grid {
        width: 100% !important;
        max-width: 100% !important;
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 900px) {
    .fd-movie-page .fd-movie-related .poster-grid {
        grid-template-columns: repeat(4, minmax(0, 1fr)) !important;
        gap: 16px !important;
    }
}

@media (max-width: 650px) {
    .fd-movie-page .fd-movie-related .poster-grid {
        grid-template-columns: repeat(3, minmax(0, 1fr)) !important;
        gap: 14px !important;
    }
}

@media (max-width: 430px) {
    .fd-movie-page .fd-movie-related .poster-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 12px !important;
    }
}


/* ===== ChatGPT Upgrade ===== */
/* Single post slightly wider */
.fd-movie-page{
    width:1100px !important;
    max-width:calc(100% - 32px) !important;
}

/* Keep You May Also Like section unchanged, only make posters a bit smaller */
.fd-movie-page .fd-movie-related .poster-grid{
    width:950px !important;
    max-width:950px !important;
    grid-template-columns:repeat(6,minmax(0,1fr)) !important;
    gap:14px !important;
}
@media (max-width:1098px){
    .fd-movie-page .fd-movie-related .poster-grid{
        width:100% !important;
        max-width:100% !important;
        grid-template-columns:repeat(5,minmax(0,1fr)) !important;
    }
}

/* =========================================================
   MOBILE — YOU MAY ALSO LIKE POSTERS
   Keep related posters comfortably large on phones.
   ========================================================= */
@media (max-width: 700px) {
    .fd-movie-page .fd-movie-related .poster-grid {
        width: 100% !important;
        max-width: 100% !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 14px !important;
    }

    .fd-movie-page .fd-movie-related .poster-card {
        width: 100% !important;
        min-width: 0 !important;
    }

    .fd-movie-page .fd-movie-related .poster-card img,
    .fd-movie-page .fd-movie-related .poster-card .poster-thumb {
        width: 100% !important;
        height: auto !important;
        aspect-ratio: 2 / 3 !important;
        object-fit: cover !important;
        display: block !important;
    }
}

@media (max-width: 380px) {
    .fd-movie-page .fd-movie-related .poster-grid {
        gap: 12px !important;
    }
}


/* ===== FINAL MOVIE PLAYER + RELATED SECTION POLISH ===== */
.fd-movie-related {
    text-align:center !important;
}
.fd-movie-related .section-label {
    display:inline-block !important;
    margin-left:auto !important;
    margin-right:auto !important;
}
.fd-movie-related .poster-grid {
    margin-left:auto !important;
    margin-right:auto !important;
}

/* Responsive video frame: no fixed 538px blank space */
.fd-movie-video.fd-normal-video,
.fd-movie-video.fd-custom-video,
.fd-movie-video .fd-player {
    aspect-ratio:16 / 9 !important;
}
.fd-movie-video.fd-custom-video {
    height:auto !important;
    min-height:0 !important;
}
.fd-movie-video.fd-custom-video iframe {
    height:auto !important;
    min-height:0 !important;
    aspect-ratio:16 / 9 !important;
}
.fd-movie-video .fd-player {
    height:auto !important;
    min-height:0 !important;
}
@media (max-width:700px){
    .fd-movie-video.fd-custom-video iframe {
        height:auto !important;
        min-height:0 !important;
    }
}

/* FINAL: center the You May Also Like POSTER GROUP only.
   Keep the section heading in its normal position. */
.fd-movie-related {
    text-align: initial !important;
}
.fd-movie-related .section-label {
    display: inline-block !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.fd-movie-related .poster-grid {
    width: 100% !important;
    max-width: 1050px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    justify-content: center !important;
    justify-items: center !important;
}
.fd-movie-related .poster-card {
    width: 100% !important;
    max-width: 165px !important;
}
@media (max-width: 700px) {
    .fd-movie-related .poster-grid {
        width: 100% !important;
        max-width: 100% !important;
        justify-content: center !important;
    }
    .fd-movie-related .poster-card {
        max-width: none !important;
    }
}

/* FINAL: center the single-post movie info box like the video player */
.fd-movie-info {
    width: 100% !important;
    max-width: 1050px !important;
    margin-left: auto !important;
    margin-right: auto !important;
    box-sizing: border-box !important;
}

@media (max-width: 700px) {
    .fd-movie-info {
        width: 100% !important;
        max-width: 100% !important;
    }
}

/* FINAL FIX: center the You May Also Like poster grid itself.
   Keep the section heading on the left. */
.fd-movie-page .fd-movie-related .poster-grid {
    margin-left: auto !important;
    margin-right: auto !important;
    justify-content: center !important;
    justify-items: center !important;
}

@media (max-width: 1098px) {
    .fd-movie-page .fd-movie-related .poster-grid {
        margin-left: auto !important;
        margin-right: auto !important;
    }
}

/* FINAL: You May Also Like matches the video player width and is fully centered */
.fd-movie-related {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    padding-left: 0 !important;
    padding-right: 0 !important;
    text-align: center !important;
    box-sizing: border-box !important;
}
.fd-movie-related .section-label {
    display: block !important;
    width: 100% !important;
    text-align: center !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
}
.fd-movie-related .poster-grid {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: 0 !important;
    margin-right: 0 !important;
    justify-content: center !important;
    justify-items: center !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    gap: 14px !important;
}
.fd-movie-related .poster-card {
    width: 100% !important;
    max-width: 165px !important;
    justify-self: center !important;
}
@media (max-width: 1098px) {
    .fd-movie-related .poster-grid {
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    }
}
@media (max-width: 700px) {
    .fd-movie-related .poster-grid {
        width: 100% !important;
        max-width: 100% !important;
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 14px !important;
    }
    .fd-movie-related .poster-card {
        max-width: none !important;
    }
}

/* FINAL: reduce the gap between the video player and movie info */
.movie-main-section > .trailer-embed,
.movie-main-section > .trailer-embed.trailer-custom {
    margin-bottom: 8px !important;
}


/* FINAL: You May Also Like heading directly above the poster area */
.fd-movie-related {
    margin-top: 8px !important;
    padding-top: 0 !important;
    text-align: center !important;
}
.fd-movie-related .section-label {
    display: block !important;
    width: max-content !important;
    max-width: 100% !important;
    margin: 0 auto 12px !important;
}
.fd-movie-related .poster-grid {
    margin-top: 0 !important;
}
@media (max-width:700px) {
    .fd-movie-related {
        margin-top: 6px !important;
    }
    .fd-movie-related .section-label {
        margin-bottom: 10px !important;
    }
}

/* FINAL POLISH: align You May Also Like heading with the poster grid.
   Keep the whole related area the same width as the video/info area. */
.fd-movie-related {
    width: 100% !important;
    max-width: 1050px !important;
    margin: 8px auto 40px !important;
    padding: 0 !important;
    box-sizing: border-box !important;
    text-align: left !important;
}
.fd-movie-related .section-label {
    display: block !important;
    width: max-content !important;
    max-width: 100% !important;
    margin: 0 0 12px 0 !important;
    text-align: left !important;
}
.fd-movie-related .poster-grid {
    width: 100% !important;
    max-width: 100% !important;
    margin: 0 !important;
    justify-content: start !important;
    justify-items: center !important;
}

/* Tighten the actual player -> info transition. */
.fd-movie-video,
.fd-movie-video.fd-custom-video,
.fd-movie-video.fd-normal-video {
    margin-bottom: 2px !important;
}
.fd-movie-info {
    margin-top: 0 !important;
}

@media (max-width: 700px) {
    .fd-movie-related {
        width: 100% !important;
        max-width: 100% !important;
        margin-top: 6px !important;
    }
    .fd-movie-related .section-label {
        margin-bottom: 10px !important;
    }
    .fd-movie-video,
    .fd-movie-video.fd-custom-video,
    .fd-movie-video.fd-normal-video {
        margin-bottom: 2px !important;
    }
}


/* FINAL LAYOUT GUARD: single-post custom player + related section */
.fd-movie-video.fd-custom-video iframe {
  height:auto !important;
  min-height:0 !important;
  aspect-ratio:16 / 9 !important;
  width:100% !important;
  display:block !important;
}
.fd-movie-video.fd-custom-video,
.fd-movie-video.fd-normal-video { margin-bottom:2px !important; }
.fd-movie-info { margin-top:0 !important; }
.fd-movie-related {
  width:100% !important;
  max-width:1050px !important;
  margin:8px auto 40px !important;
  padding:0 !important;
  text-align:left !important;
  box-sizing:border-box !important;
}
.fd-movie-related .section-label {
  display:block !important;
  width:max-content !important;
  max-width:100% !important;
  margin:0 0 12px 0 !important;
  text-align:left !important;
}
.fd-movie-related .poster-grid {
  width:100% !important;
  max-width:100% !important;
  margin:0 auto !important;
  justify-content:center !important;
  justify-items:center !important;
}

/* FINAL USER TUNING: slightly taller player + related area same width */
.fd-movie-video.fd-custom-video,
.fd-movie-video.fd-normal-video,
.fd-movie-video .fd-player {
    aspect-ratio: 16 / 9.5 !important;
}

.fd-movie-video.fd-custom-video iframe {
    width: 100% !important;
    height: 100% !important;
    min-height: 0 !important;
    aspect-ratio: 16 / 9.5 !important;
    display: block !important;
}

/* You May Also Like uses the same 1050px content width as movie info.
   Six posters share the full area instead of being squeezed into 950px. */
.fd-movie-related {
    width: 1050px !important;
    max-width: calc(100% - 32px) !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
    text-align: left !important;
    box-sizing: border-box !important;
}
.fd-movie-related .section-label {
    display: block !important;
    width: max-content !important;
    max-width: 100% !important;
    margin: 0 0 12px 0 !important;
    text-align: left !important;
}
.fd-movie-related .poster-grid {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    gap: 14px !important;
    justify-content: center !important;
    justify-items: stretch !important;
}
.fd-movie-related .poster-card {
    width: 100% !important;
    max-width: none !important;
    justify-self: stretch !important;
}
.fd-movie-related .poster-card img,
.fd-movie-related .poster-card .poster-thumb {
    width: 100% !important;
    aspect-ratio: 2 / 3 !important;
    height: auto !important;
    object-fit: cover !important;
}

@media (max-width: 1098px) {
    .fd-movie-related {
        width: calc(100% - 32px) !important;
        max-width: calc(100% - 32px) !important;
    }
    .fd-movie-related .poster-grid {
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 700px) {
    .fd-movie-video.fd-custom-video,
    .fd-movie-video.fd-normal-video,
    .fd-movie-video .fd-player {
        aspect-ratio: 16 / 9.5 !important;
    }
    .fd-movie-related {
        width: 100% !important;
        max-width: 100% !important;
    }
    .fd-movie-related .poster-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 14px !important;
    }
}

/* FINAL OVERRIDE: match video width and make player slightly taller */
.fd-movie-video .fd-player,
.fd-movie-video.fd-custom-video,
.fd-movie-video.fd-normal-video {
    width: 100% !important;
    max-width: 100% !important;
    aspect-ratio: 16 / 9.3 !important;
    height: auto !important;
    min-height: 0 !important;
    margin-bottom: 2px !important;
}

.fd-movie-related {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    padding: 0 !important;
    text-align: left !important;
    box-sizing: border-box !important;
}

.fd-movie-related .section-label {
    display: block !important;
    width: max-content !important;
    margin: 0 0 12px 0 !important;
    text-align: left !important;
}

.fd-movie-related .poster-grid {
    width: 100% !important;
    max-width: 100% !important;
    margin-left: auto !important;
    margin-right: auto !important;
    grid-template-columns: repeat(6, minmax(0, 1fr)) !important;
    gap: 14px !important;
    justify-content: stretch !important;
    justify-items: stretch !important;
}

.fd-movie-related .poster-card {
    width: 100% !important;
    max-width: none !important;
    justify-self: stretch !important;
}

.fd-movie-related .poster-card img,
.fd-movie-related .poster-card .poster-thumb {
    width: 100% !important;
    aspect-ratio: 2 / 3 !important;
    height: auto !important;
    object-fit: cover !important;
}

@media (max-width: 1098px) {
    .fd-movie-related .poster-grid {
        grid-template-columns: repeat(5, minmax(0, 1fr)) !important;
    }
}

@media (max-width: 700px) {
    .fd-movie-video .fd-player,
    .fd-movie-video.fd-custom-video,
    .fd-movie-video.fd-normal-video {
        aspect-ratio: 16 / 9.3 !important;
    }
    .fd-movie-related {
        width: 100% !important;
        max-width: 100% !important;
    }
    .fd-movie-related .poster-grid {
        grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
        gap: 14px !important;
    }
}


/* Search results heading: keep it compact without changing other section headings. */
.search-results-heading {
  font-size: 18px !important;
  line-height: 1.3 !important;
  padding: 7px 14px !important;
}


/* PLAYER CONTROL FIX — mobile/touch */
.fd-player-controls { touch-action: manipulation; }
.fd-player-btn,
.fd-player-seek,
.fd-player-volume,
.fd-player-speed-btn { -webkit-tap-highlight-color: transparent; touch-action: manipulation; }

@media (max-width:700px){
    .fd-player-controls {
        opacity:1 !important;
        transform:translateY(0) !important;
        padding:7px 8px 10px !important;
        background:linear-gradient(to top, rgba(0,0,0,.94), rgba(0,0,0,.12) 85%, transparent) !important;
    }
    .fd-player-row { gap:4px !important; }
    .fd-player-btn {
        width:40px !important;
        height:40px !important;
        min-width:40px !important;
        font-size:14px !important;
    }
    .fd-player-skip { font-weight:800 !important; }
    .fd-player-skip::after {
        font-size:9px;
        line-height:1;
    }
    .fd-player-seek {
        height:6px !important;
        margin-bottom:7px !important;
    }
    .fd-player-seek::-webkit-slider-thumb {
        width:16px !important;
        height:16px !important;
        margin-top:-5px !important;
    }
    .fd-player-seek::-moz-range-thumb {
        width:16px !important;
        height:16px !important;
    }
}

@media (max-width:430px){
    .fd-player-controls { padding-left:5px !important; padding-right:5px !important; }
    .fd-player-btn {
        width:38px !important;
        min-width:38px !important;
        height:38px !important;
    }
    .fd-player-time { display:inline-block !important; font-size:10px !important; margin-left:0 !important; }
    .fd-player-volume { display:none !important; }
    .fd-player-speed-btn { width:auto !important; min-width:42px !important; padding:0 7px !important; }
}

/* FINAL: clear 10-second seek controls */
.fd-player .fd-player-rewind,.fd-player .fd-player-forward{min-width:66px!important;width:auto!important;height:38px!important;padding:0 6px!important;gap:4px!important;display:inline-flex!important;align-items:center!important;justify-content:center!important;flex:0 0 auto!important;font-size:11px!important;font-weight:700!important;line-height:1!important;white-space:nowrap!important;touch-action:manipulation!important}
.fd-player .fd-player-rewind::before,.fd-player .fd-player-rewind::after,@media(max-width:700px){.fd-player .fd-player-rewind,.fd-player .fd-player-forward{min-width:70px!important;height:40px!important;padding:0 8px!important;font-size:12px!important}.fd-player .fd-player-rewind::before,}
@media(max-width:430px){.fd-player .fd-player-rewind,.fd-player .fd-player-forward{min-width:66px!important;height:38px!important;padding:0 6px!important;font-size:11px!important}.fd-player .fd-player-rewind::before,}
