/* =========================
   Core GGF feed layout
   ========================= */

.ggf-feed {
  display: flex;
  flex-direction: column;
  gap: 16px;
  margin: 0 auto;
}

.ggf-item {
  margin: 0;
}

/* Player box */
.ggf-player {
  position: relative;
  width: 100%;
  max-width: 720px;
  margin: 0 auto;
  background: #000;
  border-radius: 12px;
  overflow: hidden;
}

.ggf-player video {
  width: 100%;
  height: auto;
  display: block;
  aspect-ratio: 9 / 16;
  object-fit: cover;
}

/* =========================
   Model Swipe / Stream pages only – fullscreen
   ========================= */

/* Only on single model or single short_video views do we want fullscreen behavior. */
body.single-ggf_model .ggf-feed.fullscreen .ggf-player,
body.single-short_video .ggf-feed.fullscreen .ggf-player {
  max-width: none;
  height: 100vh;
}

body.single-ggf_model .ggf-feed.fullscreen .ggf-player video,
body.single-short_video .ggf-feed.fullscreen .ggf-player video {
  height: 100vh;
  aspect-ratio: auto;
}

/* =========================
   GottaGF TikTok-style UI – overlays
   ========================= */

.model-feed-swipe .ggf-item {
  position: relative;
}

/* Heart overlay */
.model-feed-swipe .ggf-player,
.model-feed-stream .ggf-player {
  position: relative;
  overflow: visible;
}

.model-feed-swipe .ggf-player::after {
  content: "♥";
  position: absolute;
  bottom: 22%;
  width: 40px;
  height: 40px;
  border-radius: 999px;
  background: rgba(255, 105, 180, 0.9);
  display: flex;
  align-items: center;
  justify-content: center;
  font-size: 18px;
  color: #fff;
  z-index: 5;
}

/* Desktop heart position */
@media (min-width: 900px) {
  .model-feed-swipe .ggf-player::after {
    right: -48px;
  }
}

/* Mobile heart position */
@media (max-width: 899px) {
  .model-feed-swipe .ggf-player::after {
    right: 16px;
  }
}

/* =========================
   PG13 Homepage Overrides
   ========================= */

/* On PG13 homepage, never fullscreen; card-style feed */
.ggf-global-wrapper--pg13 .ggf-feed.fullscreen {
  height: auto !important;
  overflow: visible !important;
}

.ggf-global-wrapper--pg13 .ggf-feed.fullscreen .ggf-player {
  height: auto !important;
  max-width: 480px !important;
  margin: 0 auto 32px auto !important;
  border-radius: 24px !important;
  overflow: hidden !important;
  background: #000 !important;
  box-shadow: 0 10px 30px rgba(0, 0, 0, 0.35) !important;
}

.ggf-global-wrapper--pg13 .ggf-feed.fullscreen .ggf-player video {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 9 / 16 !important;
  object-fit: cover !important;
}
