/* User-facing detail cleanup. Source provenance remains stored internally. */
.detail dl dt:last-of-type,
.detail dl dt:last-of-type + dd{display:none}
.sample-media-section>.section-heading{display:none}

/* Keep detail titles closer to the compact marketplace style on every provider. */
.detail h1{font-size:clamp(22px,2.5vw,30px);line-height:1.46;letter-spacing:-.02em}

/* The embedded players already expose their own fullscreen controls. */
.sample-expand-button{display:none!important}
.sample-video-close{display:none!important}

/*
 * FC2 public media
 * ----------------
 * Product-level quarantine is enforced server-side through visibility_class.
 * FC2_UNCENSORED products never reach public list/detail/search/sitemap routes.
 * Therefore media on a reachable FC2 product is rendered normally, while the
 * separate authenticated quarantine UI remains available for restricted items.
 */
.card.is-fc2-card .product-media{background:#f7f8fa;border-bottom:1px solid var(--line)}
.card.is-fc2-card .product-media img{display:block}

/* FC2 detail keeps the compact marketplace ordering but renders real media. */
main:has(.detail.is-fc2-detail){display:flex;flex-direction:column}
.sample-media-section.is-fc2-sample{order:-1;margin:0 0 28px;padding:0;border:0;background:transparent;box-shadow:none}
.fc2-media-header{max-width:960px;margin:0 auto 18px}
.fc2-media-profile{width:120px;height:120px;max-width:120px;margin:0 auto 18px;padding:0;border:1px solid var(--line);border-radius:14px;background:#f4f6fa;box-shadow:0 6px 18px rgba(16,22,43,.08);overflow:hidden}
.fc2-media-profile .detail-media-link{display:grid;width:100%;height:100%;place-items:center;text-decoration:none;color:var(--text)}
.fc2-media-profile .detail-image{display:block!important;width:100%;height:100%;object-fit:cover}
.fc2-media-profile .detail-media-note{display:none}
.fc2-media-title{margin:0;padding:0 2px}
.fc2-media-title .product-id-kicker{margin:0 0 8px;color:var(--muted)}
.fc2-media-title h1{margin:0;font-size:clamp(20px,2.4vw,28px);line-height:1.42;letter-spacing:-.015em}
.fc2-media-title .original-title{margin:8px 0 0;color:var(--muted)}

/* Do not collapse the FC2 gallery to block: preserve the common grid layout. */
.sample-media-section.is-fc2-sample .sample-video-shell{display:block!important}
.sample-media-section.is-fc2-sample .sample-gallery{display:grid!important;grid-template-columns:repeat(4,minmax(0,1fr))}
.sample-media-section.is-fc2-sample .sample-media-cta{display:block;max-width:960px;margin:14px auto 0}

.detail.is-fc2-detail{grid-template-columns:1fr;align-items:start;gap:18px;padding-top:0}
.is-fc2-detail .detail-media{width:120px;height:120px;max-width:120px;justify-self:center;padding:0;border:1px solid var(--line);border-radius:12px;background:#f4f6fa;box-shadow:0 6px 18px rgba(16,22,43,.08);overflow:hidden}
.is-fc2-detail .detail-media-link{display:grid;width:100%;height:100%;place-items:center;text-decoration:none;color:var(--text)}
.is-fc2-detail .detail-image{display:block!important;width:100%;height:100%;object-fit:cover}
.is-fc2-detail .detail-media-note{display:none}

@media(max-width:820px){
  .detail h1{font-size:21px;line-height:1.48}
  .fc2-media-header{width:100%;max-width:none;margin:0 0 14px}
  .fc2-media-profile{width:112px;height:112px;max-width:112px;margin-bottom:14px;border-radius:13px}
  .fc2-media-title{width:100%;max-width:none;padding:0 2px}
  .fc2-media-title .product-id-kicker{margin-bottom:7px;font-size:14px}
  .fc2-media-title h1{font-size:20px;line-height:1.42}
  .detail.is-fc2-detail{grid-template-columns:1fr;gap:16px}
  .is-fc2-detail .detail-media{width:112px;height:112px;max-width:112px}
  .sample-media-section.is-fc2-sample .sample-gallery{grid-template-columns:repeat(2,minmax(0,1fr))}
  /* FANZA/DMM keeps the extra vertical room needed for its mobile controls. */
  .sample-media-section:not(.is-fc2-sample) .sample-video-shell{aspect-ratio:5/4}
}
