/* CR_COLLECTIVE_V175CW_HOME_CONTENT_DENSITY_PLAYER_SAFE_POLISH
   Home-only premium content density polish after v175cv.
   Purpose:
   - Keep v175ct rail/layout and v175cv visual polish.
   - Improve Home content rhythm: card density, member row balance, hero readability.
   - Add safer bottom space so the fixed player does not cover lower Home sections.
   - Preserve stable hover: no transform/translate/scale hover.
*/

body.cr-v175cw-home-content-density {
  --cr-v175cw-panel-gap: 16px;
  --cr-v175cw-bottom-player-safe: 210px;
}

@media (min-width: 1180px) {
  body.cr-v175cw-home-content-density .cr-v175bm-home-page {
    padding-bottom: var(--cr-v175cw-bottom-player-safe) !important;
  }
}

/* Hero typography: premium but less awkward on wide screens */
@media (min-width: 1180px) {
  body.cr-v175cw-home-content-density .cr-v175bm-home-page h1 {
    max-width: 980px !important;
    line-height: .96 !important;
    letter-spacing: -.055em !important;
  }

  body.cr-v175cw-home-content-density .cr-v175bm-home-page .cr-v175bm-hero p,
  body.cr-v175cw-home-content-density .cr-v175bm-home-page [class*="hero"] p {
    max-width: 720px !important;
  }
}

/* Dashboard section rhythm */
body.cr-v175cw-home-content-density .cr-v175bm-home-page section,
body.cr-v175cw-home-content-density .cr-v175bm-home-page article,
body.cr-v175cw-home-content-density .cr-v175bm-home-page [class*="panel"] {
  overflow: hidden;
}

/* Card rows should feel intentional and not too empty */
@media (min-width: 1180px) {
  body.cr-v175cw-home-content-density .cr-v175bm-release-grid {
    gap: var(--cr-v175cw-panel-gap) !important;
    align-items: stretch !important;
  }

  body.cr-v175cw-home-content-density .cr-v175bm-preview-grid {
    gap: var(--cr-v175cw-panel-gap) !important;
    align-items: stretch !important;
  }

  body.cr-v175cw-home-content-density .cr-v175bm-members-row {
    gap: var(--cr-v175cw-panel-gap) !important;
    align-items: stretch !important;
  }
}

/* Release cards: stronger hierarchy, stable sizes */
body.cr-v175cw-home-content-density .cr-v175bm-release-card,
body.cr-v175cw-home-content-density [class*="release-card"] {
  min-height: 224px !important;
  transform: none !important;
  translate: none !important;
  scale: 1 !important;
}

body.cr-v175cw-home-content-density .cr-v175bm-release-card img,
body.cr-v175cw-home-content-density [class*="release-card"] img {
  width: 100% !important;
  min-height: 116px !important;
  aspect-ratio: 16 / 10 !important;
  object-fit: cover !important;
}

/* Preview/explore cards: cleaner dashboard blocks */
body.cr-v175cw-home-content-density .cr-v175bm-preview-card,
body.cr-v175cw-home-content-density [class*="preview-card"] {
  min-height: 132px !important;
  transform: none !important;
  translate: none !important;
  scale: 1 !important;
}

/* Member cards: balanced row, less random-looking spacing */
body.cr-v175cw-home-content-density .cr-v175bm-member-card,
body.cr-v175cw-home-content-density [class*="member-card"] {
  min-height: 128px !important;
  justify-content: center !important;
  transform: none !important;
  translate: none !important;
  scale: 1 !important;
}

body.cr-v175cw-home-content-density .cr-v175bm-member-card img,
body.cr-v175cw-home-content-density [class*="member-card"] img {
  width: 56px !important;
  height: 56px !important;
  object-fit: cover !important;
}

/* Live now / upcoming cards should look like a premium status panel */
body.cr-v175cw-home-content-density .cr-v175bm-mini-event,
body.cr-v175cw-home-content-density [class*="mini-event"] {
  min-height: 58px !important;
  border-color: rgba(34,211,238,.16) !important;
  background:
    radial-gradient(circle at 0% 0%, rgba(34,211,238,.10), transparent 38%),
    linear-gradient(180deg, rgba(15,23,42,.78), rgba(5,10,22,.88)) !important;
  transform: none !important;
}

/* More precise stable hover after v175cv */
body.cr-v175cw-home-content-density .cr-v175bm-release-card:hover,
body.cr-v175cw-home-content-density .cr-v175bm-member-card:hover,
body.cr-v175cw-home-content-density .cr-v175bm-preview-card:hover,
body.cr-v175cw-home-content-density .cr-v175bm-mini-event:hover,
body.cr-v175cw-home-content-density [class*="release-card"]:hover,
body.cr-v175cw-home-content-density [class*="member-card"]:hover,
body.cr-v175cw-home-content-density [class*="preview-card"]:hover {
  transform: none !important;
  translate: none !important;
  scale: 1 !important;
}

/* Make lower sections readable above the bottom player */
body.cr-v175cw-home-content-density .cr-v175bm-home-page > *:last-child {
  margin-bottom: 90px !important;
}

/* Mobile/tablet: keep previous responsive behavior, only add player-safe spacing */
@media (max-width: 1179px) {
  body.cr-v175cw-home-content-density .cr-v175bm-home-page {
    padding-bottom: 180px !important;
  }
}

/* Player intentionally not styled here. */
html::before {
  content: "CR_COLLECTIVE_V175CW_HOME_CONTENT_DENSITY_PLAYER_SAFE_POLISH";
  display: none;
}

/* ==== MODERN_HOME_DESKTOP (OPTION_A): guaranteed bottom-player clearance.
   Measured player band height is 123px at 1600x1024; reserve it plus margin so the
   single global player never covers Home content or controls. Route-scoped via the
   home-only body class. ==== */
body.cr-v175cw-home-content-density { --cr-mh-player-clearance: 150px; }
body.cr-v175cw-home-content-density .cr-v175bm-home-page,
body.cr-v175cw-home-content-density .cr-mh-r1-page { padding-bottom: var(--cr-mh-player-clearance) !important; }

@media (min-width: 1180px) {
  /* MODERN_HOME_DESKTOP_R2_PLAYER_WIDTH: align the single fixed player with the
     approved Home canvas while retaining the shell's narrower left gutter. */
  body.cr-v175cw-home-content-density {
    --cr-mh-r2-player-width: min(1500px, calc(100vw - 32px));
  }

  body.cr-v175cw-home-content-density #cr-standard-player-v174gj[data-cr-standard-player] {
    left: max(
      calc(clamp(16px, calc((100vw - 1540px) / 2 + 18px), 64px) + 20px),
      calc((100% - var(--cr-mh-r2-player-width)) / 2)
    ) !important;
    right: auto !important;
    width: var(--cr-mh-r2-player-width) !important;
    max-width: none !important;
  }
}
