
/* ============================================================
   FLIX2WATCH V18 — SINGLE HEADER SOURCE OF TRUTH + CLEAN MODALS
   This file intentionally loads LAST and overrides old per-page
   header sizing/layout rules.
   ============================================================ */

:root{
  --v18-header-h:82px;
  --v18-header-bg:rgba(2,8,19,.965);
  --v18-header-border:color-mix(in srgb,var(--accent) 16%,#26384d);
}

/* ---------- SAME DESKTOP HEADER ON EVERY PAGE ---------- */
@media (min-width:821px){
  html,
  body{
    scroll-padding-top:calc(var(--v18-header-h) + 10px);
  }

  body.f2w-main-page > header{
    position:sticky !important;
    inset:auto !important;
    top:0 !important;
    left:auto !important;
    right:auto !important;
    z-index:100000 !important;

    display:flex !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    align-content:center !important;
    justify-content:flex-start !important;

    width:100% !important;
    max-width:none !important;
    height:var(--v18-header-h) !important;
    min-height:var(--v18-header-h) !important;
    max-height:var(--v18-header-h) !important;
    margin:0 !important;
    padding:10px 15px !important;
    gap:16px !important;

    overflow:visible !important;
    transform:none !important;
    translate:none !important;
    scale:1 !important;

    background:var(--v18-header-bg) !important;
    border:0 !important;
    border-bottom:1px solid var(--v18-header-border) !important;
    border-radius:0 !important;
    box-shadow:0 8px 26px rgba(0,0,0,.28) !important;
    backdrop-filter:blur(18px) !important;
    -webkit-backdrop-filter:blur(18px) !important;
  }

  body.f2w-main-page > header::before,
  body.f2w-main-page > header::after{
    display:none !important;
    content:none !important;
  }

  body.f2w-main-page > header > .logo{
    position:relative !important;
    inset:auto !important;
    grid-column:auto !important;
    grid-row:auto !important;

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

    flex:0 0 160px !important;
    width:160px !important;
    max-width:160px !important;
    min-width:160px !important;

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

  body.f2w-main-page > header > .logo .logo-image{
    display:block !important;
    width:160px !important;
    max-width:160px !important;
    min-width:0 !important;
    height:auto !important;
    max-height:58px !important;
    margin:0 !important;
    padding:0 !important;
    object-fit:contain !important;
    transform:none !important;
  }

  body.f2w-main-page > header > .f2w-mobile-nav-toggle{
    display:none !important;
  }

  body.f2w-main-page > header > .header-tools{
    position:static !important;
    inset:auto !important;

    display:flex !important;
    flex:1 1 auto !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    align-content:center !important;
    justify-content:flex-start !important;

    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    height:100% !important;
    min-height:0 !important;
    max-height:none !important;

    margin:0 !important;
    padding:0 !important;
    gap:8px !important;

    overflow:visible !important;
    border:0 !important;
    border-radius:0 !important;
    background:transparent !important;
    box-shadow:none !important;
    transform:none !important;
  }

  body.f2w-main-page > header .f2w-primary-nav{
    position:static !important;
    display:flex !important;
    flex:0 0 auto !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;
    gap:2px !important;

    width:auto !important;
    max-width:none !important;
    margin:0 !important;
    padding:0 !important;
    overflow:visible !important;
  }

  body.f2w-main-page > header .f2w-nav-link,
  body.f2w-main-page > header .f2w-nav-button{
    position:relative !important;
    display:inline-flex !important;
    align-items:center !important;
    justify-content:center !important;
    gap:6px !important;

    width:auto !important;
    min-width:0 !important;
    height:40px !important;
    min-height:40px !important;
    max-height:40px !important;

    margin:0 !important;
    padding:7px 9px !important;

    border:1px solid transparent !important;
    border-radius:7px !important;
    background:transparent !important;
    box-shadow:none !important;

    color:#d7dee8 !important;
    font-size:.70rem !important;
    font-weight:700 !important;
    line-height:1 !important;
    white-space:nowrap !important;
    transform:none !important;
  }

  body.f2w-main-page > header .f2w-nav-link:hover,
  body.f2w-main-page > header .f2w-nav-button:hover{
    color:#fff !important;
    background:rgba(255,255,255,.035) !important;
  }

  body.f2w-main-page > header .f2w-nav-link.active{
    color:var(--accent) !important;
  }

  body.f2w-main-page > header .f2w-nav-link.active::after{
    content:"" !important;
    display:block !important;
    position:absolute !important;
    left:8px !important;
    right:8px !important;
    bottom:-11px !important;
    height:2px !important;
    border-radius:999px !important;
    background:var(--accent) !important;
    box-shadow:0 0 8px rgba(var(--f2w-accent-rgb),.25) !important;
  }

  body.f2w-main-page > header .f2w-genre-wrap{
    position:relative !important;
    width:auto !important;
    margin:0 !important;
    padding:0 !important;
  }

  body.f2w-main-page > header .f2w-genre-menu{
    position:absolute !important;
    top:calc(100% + 8px) !important;
    left:0 !important;
    right:auto !important;
    z-index:100020 !important;

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

    width:330px !important;
    max-width:calc(100vw - 24px) !important;
    max-height:390px !important;
    margin:0 !important;
    padding:7px !important;

    overflow:auto !important;
    border:1px solid #2a3d55 !important;
    border-radius:9px !important;
    background:#07111d !important;
    box-shadow:0 18px 50px rgba(0,0,0,.58) !important;
  }

  body.f2w-main-page > header .f2w-genre-menu.show{
    display:grid !important;
  }

  body.f2w-main-page > header .f2w-genre-menu a{
    min-height:31px !important;
    display:flex !important;
    align-items:center !important;
    padding:6px 7px !important;
    border-radius:6px !important;
    color:#aab5c4 !important;
    font-size:.60rem !important;
    font-weight:650 !important;
    text-decoration:none !important;
  }

  body.f2w-main-page > header .f2w-genre-menu a:hover{
    color:#fff !important;
    background:rgba(var(--f2w-accent-rgb),.08) !important;
  }

  body.f2w-main-page > header .f2w-search-pair{
    position:static !important;

    display:flex !important;
    flex:1 1 390px !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;

    min-width:280px !important;
    max-width:610px !important;
    width:auto !important;
    height:40px !important;
    margin:0 4px !important;
    padding:0 !important;
    gap:8px !important;
  }

  body.f2w-main-page > header .search-container,
  body.f2w-main-page > header .user-search-container{
    position:relative !important;
    display:flex !important;
    align-items:center !important;
    flex:1 1 0 !important;

    width:auto !important;
    min-width:120px !important;
    max-width:none !important;
    height:40px !important;
    margin:0 !important;
    padding:0 !important;
  }

  body.f2w-main-page > header .search-bar,
  body.f2w-main-page > header .user-search-bar{
    display:block !important;
    width:100% !important;
    max-width:none !important;
    min-width:0 !important;
    height:40px !important;
    min-height:40px !important;
    max-height:40px !important;
    margin:0 !important;
    padding:8px 34px 8px 34px !important;

    border:1px solid #2a3e56 !important;
    border-radius:8px !important;
    background:#07111d !important;
    box-shadow:none !important;

    color:#eef2f7 !important;
    font-size:.68rem !important;
    line-height:1 !important;
  }

  body.f2w-main-page > header .search-container > i,
  body.f2w-main-page > header .user-search-container > i{
    position:absolute !important;
    left:12px !important;
    top:50% !important;
    z-index:2 !important;
    transform:translateY(-50%) !important;
    color:#8290a4 !important;
    font-size:.67rem !important;
    pointer-events:none !important;
  }

  body.f2w-main-page > header .user-search-submit{
    position:absolute !important;
    right:5px !important;
    top:50% !important;
    z-index:3 !important;
    transform:translateY(-50%) !important;

    width:28px !important;
    height:28px !important;
    min-width:28px !important;
    min-height:28px !important;
    padding:0 !important;

    display:grid !important;
    place-items:center !important;

    border:0 !important;
    border-radius:6px !important;
    background:transparent !important;
    color:#8f9caf !important;
    box-shadow:none !important;
  }

  body.f2w-main-page > header .user-search-submit:hover{
    color:var(--accent) !important;
    background:rgba(var(--f2w-accent-rgb),.07) !important;
  }

  body.f2w-main-page > header .user-search-results{
    position:absolute !important;
    top:calc(100% + 7px) !important;
    left:0 !important;
    right:0 !important;
    z-index:100030 !important;
  }

  body.f2w-main-page > header .f2w-action-cluster{
    position:static !important;
    display:flex !important;
    flex:0 0 auto !important;
    flex-direction:row !important;
    flex-wrap:nowrap !important;
    align-items:center !important;

    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    height:40px !important;

    margin:0 0 0 auto !important;
    padding:0 !important;
    gap:7px !important;
  }

  body.f2w-main-page > header .f2w-action-cluster > *,
  body.f2w-main-page > header .f2w-action-cluster .dropdown-wrapper,
  body.f2w-main-page > header .v17-notification-wrap{
    position:relative !important;
    width:auto !important;
    min-width:0 !important;
    max-width:none !important;
    margin:0 !important;
  }

  body.f2w-main-page > header .tool-btn,
  body.f2w-main-page > header .f2w-auth-top-btn,
  body.f2w-main-page > header #staff-control-nav{
    align-items:center !important;
    justify-content:center !important;
    gap:6px !important;

    width:auto !important;
    min-width:0 !important;
    height:40px !important;
    min-height:40px !important;
    max-height:40px !important;

    margin:0 !important;
    padding:7px 9px !important;

    border:1px solid #2a3d55 !important;
    border-radius:8px !important;
    background:#07111d !important;
    box-shadow:none !important;

    color:#f3f6fa !important;
    font-size:.66rem !important;
    font-weight:720 !important;
    line-height:1 !important;
    white-space:nowrap !important;
    transform:none !important;
  }

  body.f2w-main-page > header .tool-btn:hover,
  body.f2w-main-page > header .f2w-auth-top-btn:hover{
    border-color:color-mix(in srgb,var(--accent) 35%,#51647b) !important;
    background:#0a1624 !important;
  }

  body.f2w-main-page > header .dropdown-wrapper{
    position:relative !important;
  }

  body.f2w-main-page > header .dropdown-menu{
    position:absolute !important;
    top:calc(100% + 8px) !important;
    right:0 !important;
    left:auto !important;
    z-index:100040 !important;

    display:none !important;
    width:190px !important;
    max-height:420px !important;
    margin:0 !important;
    padding:6px !important;

    overflow:auto !important;
    border:1px solid #2a3d55 !important;
    border-radius:9px !important;
    background:#07111d !important;
    box-shadow:0 18px 50px rgba(0,0,0,.62) !important;
  }

  body.f2w-main-page > header .dropdown-menu.show{
    display:block !important;
  }

  body.f2w-main-page > header .dropdown-item{
    min-height:30px !important;
    display:flex !important;
    align-items:center !important;
    gap:7px !important;
    padding:6px 7px !important;
    border-radius:6px !important;
    color:#aeb9c7 !important;
    font-size:.59rem !important;
    line-height:1 !important;
    white-space:nowrap !important;
  }

  body.f2w-main-page > header .dropdown-item:hover{
    color:#fff !important;
    background:rgba(var(--f2w-accent-rgb),.075) !important;
  }

  /* Old/removed top-right navigator surfaces must never reappear. */
  body.f2w-main-page > header .f2w-discover-wrap,
  body.f2w-main-page > header #f2w-discover-menu,
  body.f2w-main-page > header [onclick*="toggleUltraDiscover"],
  body.f2w-main-page > header [onclick*="openUltraCommand"]{
    display:none !important;
  }

  /* Page-specific legacy header rules cannot move content down anymore. */
  body.f2w-watch-page > header,
  body.f2w-users-page > header,
  body.f2w-support-page > header,
  body.f2w-profile-page > header,
  body.f2w-favorites-page > header,
  body.f2w-staff-page > header{
    position:sticky !important;
    top:0 !important;
    height:var(--v18-header-h) !important;
    min-height:var(--v18-header-h) !important;
    max-height:var(--v18-header-h) !important;
    margin:0 !important;
    padding:10px 15px !important;
    transform:none !important;
  }
}

/* ---------- MOBILE/IPAD: keep V14 hamburger, but clean ---------- */
@media (max-width:820px), (max-width:1366px) and (pointer:coarse){
  body.f2w-main-page > header{
    position:sticky !important;
    top:0 !important;
    z-index:100000 !important;
    min-height:62px !important;
    height:62px !important;
    max-height:62px !important;
    margin:0 !important;
    padding:8px 10px !important;
    background:var(--v18-header-bg) !important;
    border:0 !important;
    border-bottom:1px solid var(--v18-header-border) !important;
    box-shadow:0 7px 22px rgba(0,0,0,.28) !important;
  }

  body.f2w-main-page > header > .logo .logo-image{
    width:145px !important;
    max-width:145px !important;
    max-height:48px !important;
  }

  body.f2w-main-page > header > .f2w-mobile-nav-toggle{
    width:40px !important;
    height:40px !important;
    min-width:40px !important;
    min-height:40px !important;
    border:1px solid #2a3e56 !important;
    border-radius:8px !important;
    background:#07111d !important;
  }

  body.f2w-main-page > header > .header-tools{
    top:68px !important;
    left:9px !important;
    right:9px !important;
    max-height:calc(100dvh - 82px) !important;
    padding:9px !important;
    gap:7px !important;
    border:1px solid #2a3e56 !important;
    border-radius:10px !important;
    background:#06101c !important;
    box-shadow:0 20px 60px rgba(0,0,0,.68) !important;
  }

  body.f2w-main-page > header .dropdown-menu,
  body.f2w-main-page > header .f2w-genre-menu{
    position:static !important;
    width:100% !important;
    max-width:none !important;
    box-shadow:none !important;
  }

  body.f2w-main-page > header .f2w-discover-wrap,
  body.f2w-main-page > header #f2w-discover-menu,
  body.f2w-main-page > header [onclick*="toggleUltraDiscover"],
  body.f2w-main-page > header [onclick*="openUltraCommand"]{
    display:none !important;
  }
}

/* ---------- USER SEARCH PAGE: same visual language as Home ---------- */
body.f2w-users-page{
  background:
    radial-gradient(circle at 88% 10%,rgba(var(--f2w-accent-rgb),.055),transparent 24%),
    #020813 !important;
}

body.f2w-users-page .f2w-users-main{
  width:min(100% - 28px,1545px) !important;
  max-width:none !important;
  margin:14px auto 56px !important;
  padding:0 !important;
}

body.f2w-users-page .f2w-users-hero{
  margin:0 0 12px !important;
  padding:16px 18px !important;
  border:1px solid #263a53 !important;
  border-radius:9px !important;
  background:linear-gradient(180deg,#07111d,#06101c) !important;
  box-shadow:0 13px 34px rgba(0,0,0,.22) !important;
}

body.f2w-users-page .f2w-users-hero h1{
  margin:0 !important;
  color:#fff !important;
  font-size:1rem !important;
  line-height:1.15 !important;
}

body.f2w-users-page .f2w-users-hero p{
  margin:6px 0 0 !important;
  max-width:780px !important;
  color:#7f8da1 !important;
  font-size:.59rem !important;
  line-height:1.48 !important;
}

body.f2w-users-page .f2w-users-summary{
  margin:0 0 9px !important;
  color:#77869a !important;
  font-size:.56rem !important;
}

body.f2w-users-page .f2w-users-grid{
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:9px !important;
}

body.f2w-users-page .f2w-user-card{
  min-height:82px !important;
  display:grid !important;
  grid-template-columns:48px minmax(0,1fr) !important;
  align-items:center !important;
  gap:10px !important;

  padding:10px !important;
  border:1px solid #263a53 !important;
  border-radius:9px !important;
  background:#07111d !important;
  box-shadow:none !important;

  color:#fff !important;
  text-decoration:none !important;
  transition:.15s ease !important;
}

body.f2w-users-page .f2w-user-card:hover{
  border-color:color-mix(in srgb,var(--accent) 35%,#445a73) !important;
  background:#091522 !important;
  transform:translateY(-1px) !important;
  box-shadow:0 8px 22px rgba(0,0,0,.18) !important;
}

body.f2w-users-page .f2w-user-avatar{
  width:48px !important;
  height:48px !important;
  display:grid !important;
  place-items:center !important;
  overflow:hidden !important;
  border:1px solid #2a3e56 !important;
  border-radius:50% !important;
  background:#0a1624 !important;
  color:#d8e0ea !important;
  font-size:.65rem !important;
  font-weight:800 !important;
}

body.f2w-users-page .f2w-user-avatar img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}

body.f2w-users-page .f2w-user-display{
  overflow:hidden !important;
  color:#f3f6fa !important;
  font-size:.66rem !important;
  font-weight:800 !important;
  text-overflow:ellipsis !important;
  white-space:nowrap !important;
}

body.f2w-users-page .f2w-user-handle{
  margin-top:2px !important;
  color:var(--accent) !important;
  font-size:.53rem !important;
  font-weight:650 !important;
}

body.f2w-users-page .f2w-user-bio{
  display:-webkit-box !important;
  margin-top:4px !important;
  overflow:hidden !important;
  color:#748196 !important;
  font-size:.49rem !important;
  line-height:1.35 !important;
  -webkit-box-orient:vertical !important;
  -webkit-line-clamp:2 !important;
}

body.f2w-users-page .f2w-users-pagination{
  display:flex !important;
  flex-wrap:wrap !important;
  gap:5px !important;
  margin-top:13px !important;
}

body.f2w-users-page .f2w-users-pagination button{
  min-width:31px !important;
  min-height:31px !important;
  padding:5px 8px !important;
  border:1px solid #2a3e56 !important;
  border-radius:6px !important;
  background:#07111d !important;
  color:#9ba7b7 !important;
  font-size:.55rem !important;
}

body.f2w-users-page .f2w-users-pagination button.active{
  border-color:var(--accent) !important;
  background:rgba(var(--f2w-accent-rgb),.10) !important;
  color:#fff !important;
}

/* ---------- PROFILE REPORT: true viewport modal ---------- */
body.f2w-profile-page .report-modal,
body.f2w-profile-page #report-modal{
  position:fixed !important;
  inset:0 !important;
  z-index:2147483000 !important;

  display:grid !important;
  place-items:center !important;

  width:100vw !important;
  height:100dvh !important;
  min-height:100vh !important;
  margin:0 !important;
  padding:18px !important;

  overflow:auto !important;
  background:rgba(0,4,11,.78) !important;
  backdrop-filter:blur(6px) !important;
  -webkit-backdrop-filter:blur(6px) !important;

  border:0 !important;
  border-radius:0 !important;
  box-shadow:none !important;
  transform:none !important;
}

body.f2w-profile-page .report-modal[hidden],
body.f2w-profile-page #report-modal[hidden]{
  display:none !important;
}

body.f2w-profile-page .report-modal .report-card,
body.f2w-profile-page #report-modal .report-card{
  position:relative !important;
  inset:auto !important;

  width:min(510px,calc(100vw - 28px)) !important;
  max-width:510px !important;
  max-height:calc(100dvh - 36px) !important;
  margin:auto !important;
  padding:15px !important;

  overflow:auto !important;

  border:1px solid color-mix(in srgb,var(--accent) 24%,#2a3e56) !important;
  border-radius:10px !important;
  background:
    radial-gradient(circle at 100% 0%,rgba(var(--f2w-accent-rgb),.07),transparent 28%),
    #07111d !important;
  box-shadow:
    0 25px 80px rgba(0,0,0,.68),
    0 0 16px rgba(var(--f2w-accent-rgb),.05) !important;

  transform:none !important;
}

body.f2w-profile-page .report-head{
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  gap:10px !important;
  margin:0 0 10px !important;
  padding:0 0 10px !important;
  border-bottom:1px solid #22354b !important;
}

body.f2w-profile-page .report-head strong{
  color:#fff !important;
  font-size:.75rem !important;
}

body.f2w-profile-page .report-head strong i{
  color:var(--accent) !important;
}

body.f2w-profile-page .report-close{
  width:29px !important;
  height:29px !important;
  min-width:29px !important;
  min-height:29px !important;
  display:grid !important;
  place-items:center !important;
  padding:0 !important;
  border:1px solid #2a3e56 !important;
  border-radius:6px !important;
  background:#091522 !important;
  color:#9aa7b8 !important;
  font-size:.64rem !important;
}

body.f2w-profile-page .profile-report-context{
  margin-bottom:10px !important;
  padding:9px !important;
  border:1px solid #22354b !important;
  border-radius:7px !important;
  background:#06101c !important;
  color:#8d9aad !important;
  font-size:.56rem !important;
  line-height:1.45 !important;
}

body.f2w-profile-page .report-card label{
  display:block !important;
  margin:9px 0 5px !important;
  color:#748196 !important;
  font-size:.50rem !important;
  font-weight:800 !important;
  letter-spacing:.2px !important;
}

body.f2w-profile-page .report-card select,
body.f2w-profile-page .report-card input,
body.f2w-profile-page .report-card textarea{
  width:100% !important;
  min-height:37px !important;
  padding:8px 9px !important;
  border:1px solid #2a3e56 !important;
  border-radius:7px !important;
  background:#06101c !important;
  color:#eef2f7 !important;
  box-shadow:none !important;
  font-size:.62rem !important;
}

body.f2w-profile-page .report-card textarea{
  min-height:110px !important;
  resize:vertical !important;
}

body.f2w-profile-page .report-card select:focus,
body.f2w-profile-page .report-card input:focus,
body.f2w-profile-page .report-card textarea:focus{
  outline:none !important;
  border:1px solid color-mix(in srgb,var(--accent) 60%,#52667e) !important;
  box-shadow:0 0 0 1px rgba(var(--f2w-accent-rgb),.08),0 0 8px rgba(var(--f2w-accent-rgb),.13) !important;
}

body.f2w-profile-page .report-actions{
  display:flex !important;
  justify-content:flex-end !important;
  gap:7px !important;
  margin-top:11px !important;
}

body.f2w-profile-page .report-actions button{
  min-height:32px !important;
  padding:5px 9px !important;
  border:1px solid #2a3e56 !important;
  border-radius:6px !important;
  background:#0a1624 !important;
  color:#dce3ec !important;
  font-size:.56rem !important;
  font-weight:700 !important;
}

body.f2w-profile-page .report-actions .submit{
  border-color:var(--accent) !important;
  background:var(--accent) !important;
  color:#fff !important;
}

/* Never let the announcement bar sit above a report modal. */
body.v18-report-open .site-announcement,
body.v18-report-open .announcement-bar{
  z-index:1000 !important;
}

body.v18-report-open{
  overflow:hidden !important;
}

/* ---------- Responsive user cards/report ---------- */
@media(max-width:980px){
  body.f2w-users-page .f2w-users-grid{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}

@media(max-width:620px){
  body.f2w-users-page .f2w-users-main{
    width:calc(100% - 20px) !important;
    margin-top:10px !important;
  }

  body.f2w-users-page .f2w-users-grid{
    grid-template-columns:1fr !important;
  }

  body.f2w-profile-page .profile-report-grid{
    grid-template-columns:1fr !important;
  }

  body.f2w-profile-page .report-modal,
  body.f2w-profile-page #report-modal{
    align-items:center !important;
    padding:10px !important;
  }

  body.f2w-profile-page .report-modal .report-card,
  body.f2w-profile-page #report-modal .report-card{
    width:100% !important;
    max-height:calc(100dvh - 20px) !important;
  }
}
