/* ===== Insta Viral MMS4u - Main Design ===== */

* {
  box-sizing: border-box;
  }

body {
margin: 0;
background: #000;
color: #fff;
font-family: Arial, Helvetica, sans-serif;
}

header {
text-align: center;
padding: 22px 10px 14px;
border-bottom: 1px solid #252525;
}

.brand {
font-weight: 900;
font-size: clamp(23px, 5vw, 36px);
text-decoration: none;
color: #fff;
}

.brand span {
background: linear-gradient(90deg, #ff2878, #a855f7, #00d9ff);
-webkit-background-clip: text;
background-clip: text;
color: transparent;
}

/* ===== Search Bar: Below Website Name ===== */
#searchForm {
display: flex;
gap: 0;
width: calc(100% - 32px);
max-width: 1000px;
margin: 20px auto;
border-radius: 50px;
overflow: hidden;
background: #fff;
min-height: 56px;
}

#searchForm input {
flex: 1;
width: 0;
min-width: 0;
padding: 14px 20px;
border: 0;
outline: none;
border-radius: 0;
background: #fff;
color: #111;
font-family: Arial, Helvetica, sans-serif;
font-size: 16px;
}

#searchForm input::placeholder {
color: #777;
opacity: 1;
}

#searchForm button {
flex: 0 0 auto;
padding: 12px 20px;
border: 0;
border-radius: 0;
background: #c6ff00;
color: #000;
font-size: 15px;
font-weight: 800;
cursor: pointer;
}

/* ===== MENU + TELEGRAM ===== */
.actions {
display: flex;
justify-content: space-between;
align-items: center;
gap: 16px;
padding: 12px 20px 18px;
max-width: 1000px;
margin: 0 auto;
}

.actions button,
.actions a {
display: inline-flex;
justify-content: center;
align-items: center;
min-height: 54px;
padding: 12px 22px;
border: 0;
border-radius: 50px;
background: #c6ff00;
color: #000;
font-family: Arial, Helvetica, sans-serif;
font-size: 17px;
font-weight: 800;
text-align: center;
text-decoration: none;
cursor: pointer;
}

.actions .telegram {
background: #079fe3;
color: #000;
}

/* ===== Category Buttons ===== */
#siteNav {
display: block;
padding: 8px 12px 18px;
background: #000;
}

.category-buttons {
display: flex;
flex-wrap: wrap;
justify-content: center;
align-items: center;
gap: 8px;
}

.category-btn {
display: inline-flex;
justify-content: center;
align-items: center;
padding: 8px 12px;
min-height: 36px;
border: 2px solid #ed008c;
border-radius: 24px;
background: #000;
color: #fff;
font-family: Arial, Helvetica, sans-serif;
font-size: 13px;
font-weight: 700;
line-height: 1.2;
text-align: center;
text-decoration: none;
cursor: pointer;
}

.category-btn:first-child,
.category-btn.active {
background: #ed008c;
color: #fff;
}

.category-btn:hover,
.category-btn:focus-visible {
background: #ed008c;
color: #fff;
outline: none;
}

/* ===== Latest Titles Heading ===== */
.heading {
margin: 8px 12px 15px;
padding: 14px;
background: #222;
border-radius: 12px;
font-size: 18px;
line-height: 1.35;
}

/* ===== Movie Grid ===== */
.grid {
display: grid;
grid-template-columns: repeat(2, minmax(0, 1fr));
gap: 13px;
padding: 0 12px 25px;
}

/* Thin, square pink frame */
.grid .card {
display: block;
min-width: 0;
padding: 2px;
border: 2px solid #ed008c;
border-radius: 0;
background: #ed008c;
color: #fff;
text-decoration: none;
overflow: hidden;
}

.grid .card .inner {
display: block;
width: 100%;
height: 100%;
overflow: hidden;
border-radius: 0;
background: #090909;
}

.poster,
.placeholder {
display: block;
width: 100%;
aspect-ratio: 2 / 3;
background: #151515;
}

.poster {
object-fit: cover;
}

.placeholder {
display: grid;
place-items: center;
color: #666;
font-size: 28px;
font-weight: 900;
}

.grid .card .info {
padding: 10px 8px;
text-align: center;
}

.grid .card .info h3 {
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 4;
overflow: hidden;
overflow-wrap: anywhere;
margin: 0;
color: #fff;
font-family: Arial, Helvetica, sans-serif;
font-size: 15px;
font-weight: 400;
line-height: 1.5;
text-align: center;
}

.grid .card .meta[hidden] {
display: none !important;
}

#emptyState {
text-align: center;
color: #aaa;
padding: 24px 12px;
}

footer {
text-align: center;
padding: 22px 12px;
border-top: 1px solid #252525;
color: #999;
font-size: 12px;
}

/* ===== Mobile ===== */
@media (max-width: 480px) {
header {
padding: 22px 8px 14px;
}

#searchForm {
width: calc(100% - 32px);
min-height: 54px;
margin: 18px auto;
}

#searchForm input {
padding: 12px 14px;
font-size: 15px;
}

#searchForm button {
padding: 10px 14px;
font-size: 14px;
}

.actions {
gap: 12px;
padding: 8px 20px 16px;
}

.actions button,
.actions a {
min-height: 48px;
padding: 10px 17px;
font-size: 15px;
}

.category-buttons {
gap: 7px;
}

.category-btn {
min-height: 34px;
padding: 7px 10px;
border-radius: 20px;
font-size: 12px;
}

.heading {
font-size: 17px;
}

.grid {
gap: 12px;
padding-right: 12px;
padding-left: 12px;
}

.grid .card .info h3 {
font-size: 15px;
line-height: 1.5;
}
}

/* ===== Tablet ===== */
@media (min-width: 650px) {
.grid {
grid-template-columns: repeat(4, minmax(0, 1fr));
}

.category-btn {
font-size: 14px;
}
}

/* ===== Desktop ===== */
@media (min-width: 1000px) {
.grid {
grid-template-columns: repeat(5, minmax(0, 1fr));
}
}
/* MENU Left - TELEGRAM Right */
.actions {
display: flex !important;
justify-content: space-between !important;
align-items: center !important;
width: 100% !important;
padding-left: 12px !important;
padding-right: 12px !important;
gap: 10px !important;
}

.actions #menuToggle {
margin-right: auto !important;
}

.actions .telegram {
margin-left: auto !important;
}
/* Restore original category button colors */
.category-btn {
background: #ed008c !important;
color: #fff !important;
border-color: #ed008c !important;
}

.category-btn:first-child,
.category-btn.active,
.category-btn:hover,
.category-btn:focus-visible {
background: #ed008c !important;
color: #fff !important;
border-color: #ed008c !important;
}
/* MENU aur SEARCH button - Dark Pink */
#menuToggle,
#searchForm button {
  background: #c90070 !important;
  color: #ffffff !important;
}
/* Latest Release - Stylish Font */
.latest-release {
  font-family: "Trebuchet MS", Arial, sans-serif;
  font-size: 21px;
  font-weight: 800;
  letter-spacing: 0.5px;
  color: #ffffff;
}
/* Bright Pink MENU and SEARCH Buttons */
#menuToggle,
#searchForm button {
  background: #ff008c !important;
  color: #ffffff !important;
  border: none !important;
}
/* Desktop & Tablet: Categories always visible */
#siteNav {
  display: block !important;
}

/* Phone: Categories open only after MENU click */
@media (max-width: 649px) {
  #siteNav {
    display: none !important;
    padding-top: 8px;
  }

  #siteNav.menu-open {
    display: block !important;
  }
}
/* Video logo - keep existing website design */
.brand:has(.video-logo) {
  display: inline-block;
  width: 100%;
  max-width: 600px;
  line-height: 0;
}

.video-logo {
  display: block;
  width: 100%;
  height: auto;
  max-height: 150px;
  object-fit: contain;
  background: #000;
}
/* Fix video logo visibility and header spacing */
header {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px !important;
  min-height: 0 !important;
}

.brand:has(video.video-logo) {
  display: block !important;
  width: 100% !important;
  max-width: 600px !important;
  margin: 0 auto !important;
  font-size: 0 !important;
  line-height: 0 !important;
}

video.video-logo {
  display: block !important;
  width: 100% !important;
  height: auto !important;
  max-height: 180px !important;
  min-height: 0 !important;
  object-fit: contain !important;
  background: #000 !important;
}
/* Remove line below video logo */
header {
  border-bottom: none !important;
  padding-bottom: 0 !important;
  margin-bottom: 0 !important;
}

/* Move search bar up and make it thinner */
#searchForm {
  margin-top: 8px !important;
  margin-bottom: 16px !important;
  min-height: 46px !important;
  height: 46px !important;
}

/* Keep search text centered */
#searchForm input {
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}

/* Make SEARCH button thinner */
#searchForm button {
  padding-top: 8px !important;
  padding-bottom: 8px !important;
}
@media (max-width: 649px) {
  #siteNav {
    display: none;
  }

  #siteNav.menu-open {
    display: block;
  }

  #siteNav .category-buttons {
    display: flex;
    flex-direction: column;
    gap: 8px;
    padding: 12px;
  }

  #siteNav .category-btn {
    display: block;
    width: 100%;
    box-sizing: border-box;
    text-align: center;
  }
}

@media (min-width: 650px) {
  #siteNav {
    display: block;
  }
}
/* ===== Video Details: Bigger Title + Full Width Screenshots ===== */

/* Video details page title */
.details-wrap h1,
.details-wrap .title,
.video-title,
#videoTitle {
  font-family: Arial, Helvetica, sans-serif !important;
  font-size: clamp(26px, 6vw, 36px) !important;
  font-weight: 800 !important;
  line-height: 1.35 !important;
  letter-spacing: -0.4px;
  overflow-wrap: anywhere;
}

/* Make detail page content use more screen width */
.details-wrap,
.details-container,
.video-details {
  max-width: 100% !important;
}

/* Screenshot section: remove narrow outer box */
.screenshots,
#screenshots,
.screenshot-section {
  width: 100% !important;
  max-width: none !important;
  margin-left: 0 !important;
  margin-right: 0 !important;
  padding-left: 0 !important;
  padding-right: 0 !important;
  box-sizing: border-box !important;
}

/* Screenshot images fill the available width */
.screenshots img,
#screenshots img,
.screenshot-section img {
  display: block;
  width: 100% !important;
  max-width: 100% !important;
  height: auto !important;
  object-fit: contain !important;
  margin: 0 auto !important;
}

/* Make screenshot grid full width */
.screenshot-grid {
  display: grid;
  grid-template-columns: repeat(2, minmax(0, 1fr));
  gap: 2px !important;
  width: 100% !important;
  max-width: none !important;
  margin: 0 !important;
  padding: 0 !important;
}

/* Reduce space around screenshot cards */
.screenshot-grid img {
  width: 100% !important;
  height: 100% !important;
  object-fit: cover !important;
  border-radius: 0 !important;
}

/* Mobile adjustments */
@media (max-width: 649px) {
  .details-wrap h1,
  .details-wrap .title,
  .video-title,
  #videoTitle {
    font-size: 28px !important;
    line-height: 1.4 !important;
  }

  .screenshots,
  #screenshots,
  .screenshot-section {
    padding: 0 !important;
    margin: 0 !important;
  }

  .screenshot-grid {
    gap: 2px !important;
  }
}
